ERRO DATAFIELD\DATAREPORT

FRU1 14/08/2007 16:00:52
#230875
Pessoal to com problema na hora de listar no DataReport tenho um loop que vai imprimir o usuario escolhido, esse usuario escolhido pode estar no Usuario como no Usuario2 o problema que a propriedade DataField parece pegar apenas uma opcao por exemplo imprimiu o Usuario depois o loop achou o o mesmo nome no Usuario2 é ai que ta o problema ele imprime o Usuario novamente, nao pegando o Usuario2 abaixo segue o codigo

Sub ImprimeSessoes()
If mkeDtini = "" Or mkeDtTerm = "" Then Exit Sub
'BuscaSessoes
Dim Total As Double
Dim TotalProf As Double
Dim TotalClin As Double
Dim DataIni As String, DataTerm As String

On Error Resume Next
DataIni = Format(mkeDtini, "yyyy/mm/dd")
DataTerm = Format(mkeDtTerm, "yyyy/mm/dd")
Verifica_Conexao
Set rst = New ADODB.Recordset
If txtCodigo <> "" Then
SQL = "Select * from Agenda where Data Between #" & DataIni & "# and #" & DataTerm & "# and (Usuario = '" & txtProf & "' or Usuario2 = '" & txtProf & "') and Presenca IN ('Sim','Não*') order by Data, Hora"
rst.Open SQL, cnn, adOpenKeyset, adLockOptimistic
With dtrSessoes

While Not rst.EOF
If rst("Usuario") = rst("Usuario2") And rst("Usuario") = txtProf Then
.Sections("Section1").Controls("Text1").DataField = "Usuario"
.Sections("Section1").Controls("Text2").DataField = "Paciente"
.Sections("Section1").Controls("Text3").DataField = "Hora"
.Sections("Section1").Controls("Text4").DataField = "HoraTerm"
.Sections("Section1").Controls("Text5").DataField = "Data"
.Sections("Section1").Controls("Text6").DataField = "ValorSessao"
.Sections("Section1").Controls("Text7").DataField = "PercProf"
.Sections("Section1").Controls("Text8").DataField = "ValorProf"
.Sections("Section1").Controls("Text9") = "ValorClinica"
ElseIf rst("Usuario") <> rst("Usuario2") And rst("Usuario2") = txtProf Then
.Sections("Section1").Controls("Text1").DataField = "Usuario2" '& "\" & "(Atendente)"
.Sections("Section1").Controls("Text2").DataField = "Paciente"
.Sections("Section1").Controls("Text3").DataField = "Hora"
.Sections("Section1").Controls("Text4").DataField = "HoraTerm"
.Sections("Section1").Controls("Text5").DataField = "Data"
.Sections("Section1").Controls("Text6").DataField = "ValorSessao"
.Sections("Section1").Controls("Text7").DataField = "PercProf2"
.Sections("Section1").Controls("Text8").DataField = "ValorProf2"
.Sections("Section1").Controls("Text9").DataField = "ValorClinica"
ElseIf rst("Usuario") <> rst("Usuario2") And rst("Usuario") = txtProf Then
.Sections("Section1").Controls("Text1").DataField = "Usuario" '& "\" & "(Responsável)"
.Sections("Section1").Controls("Text2").DataField = "Paciente"
.Sections("Section1").Controls("Text3").DataField = "Hora"
.Sections("Section1").Controls("Text4").DataField = "HoraTerm"
.Sections("Section1").Controls("Text5").DataField = "Data"
.Sections("Section1").Controls("Text6").DataField = "ValorSessao"
.Sections("Section1").Controls("Text7").DataField = "PercProf"
.Sections("Section1").Controls("Text8").DataField = "ValorProf"
.Sections("Section1").Controls("Text9").DataField = "ValorClinica"
End If
rst.MoveNext
Wend
'.Sections("Section4").Controls("label8").Caption = "Agenda" & " " & Label23
.Sections("Section5").Controls("label12").Caption = txtSessoes
.Sections("Section5").Controls("label14").Caption = txtTotalClin
.Sections("Section5").Controls("label15").Caption = txtTotalProf
.Sections("Section5").Controls("label16").Caption = txtTotal
Set .DataSource = rst
.Show vbModal
Fecha_Recordset rst
End With
FRU1 14/08/2007 18:07:09
#230908
Pessoal ao inves de usar o DataField tem outra propriedade para usar no lugar
porque nesse campo as vezes vai Usuario e as vezes vai Usuario2 e o DataField nao permite isso
Sections("Section1").Controls("Text1").DataField = "Usuario"
Sections("Section1").Controls("Text1").DataField = "Usuario2"
Tópico encerrado , respostas não são mais permitidas