Listar nomes de um subformulário em um relatório
Nota importante: para ter acesso aos vídeos e arquivos exemplos deste site, adquira um dos planos apresentados abaixo. Você pode comprar em até 5x no Cartão de Crédito.
Veja como comprar e saiba mais sobre o material oferecido, clicando aqui.
Usuário Silva:
Boa noite!
Tenho uma relação de nomes dos funcionários da equipe que faz atendimento de manutenção e que aparecem no subformulário da Ordem de Serviço.
Exemplo:
OS 1234 , Cliente: Casa e Video (tabela OS)
Subformulário Equipe (tabela Equipe)
João (registro 1)
Pedro (registro 2)
Francisco (registro 3)
Gostaria que fosse feito um loop nos nomes dos funcionários, na tabela Equipe e que o campo Funcionário fosse preenchido desta maneira:
João, Pedro e Francisco em Relatório de pesquisa, sem que eu precisasse fazer um subRelatório.
Suporte:
Silva, segue um exemplo, usando programação direto no relatório. Utilizei o evento "ao imprimir" da seção Detalhe.
Private Sub Detalhe_Print(Cancel As Integer, PrintCount As Integer)
Dim rs As DAO.Recordset
Dim strSql$
Dim j%
strSql = "SELECT * FROM tblEquipes WHERE idos = " & Me!Id & " ORDER BY Funcionário;"
Set rs = CurrentDb.OpenRecordset(strSql)
Me!ListaFuncionarios = ""
rs.MoveLast: rs.MoveFirst
Do While Not rs.EOF
If j = rs.RecordCount - 1 Then
Me!ListaFuncionarios = Me!ListaFuncionarios & " e " & rs!funcionário
ElseIf j > 0 Then
Me!ListaFuncionarios = Me!ListaFuncionarios & ", " & rs!funcionário
Else
Me!ListaFuncionarios = rs!funcionário
End If
j = j + 1
rs.MoveNext
Loop
rs.Close
Set rs = Nothing
End Sub
Nota: Para se aprimorar na programação em relatórios é fundamental que assista ESTE meu vídeo:
Usuário Silva:
Terminei de fazer a implementação hoje, com 100% de sucesso.
Obrigado, Avelino.
Download
Não há comentário |