Postada em 04/06/2008 10:24 hs
Num post anterior, coloquei uma dúvida que eu mesmo já resolvi. Agora tenho outra.
Antes quero esclarecer que é a primeira vez que uso o DR. Peguei artigo do macoratti e uma dica aqui no VBWEB.
Queria entender como é feito o avanço no Recordset usado como DataSource. Vejam o código abaixo:
---------------------------- Private Sub cmdImprimir_Click()
Dim csLivro As String, ContaRegistro As Integer
csL = "Select Anoefetivo,Nome,Bolsista,Nascto,Naturalidade,Endereço,Bairro,Pai,DataMatri " csL = csL & "From tblAlunos Where Mid(Anoefetivo,3,1)='" & PosiAnoEfetivo & "' And Bolsista <> 'R' Order By Serie"
Set rsA = New ADODB.Recordset rsA.CursorLocation = adUseClient rsA.Open csL, cnCMM, adOpenKeyset, adLockOptimistic, adCmdText
With rptLivroMat Set .DataSource = Nothing .DataMember = ""
Set .DataSource = rsA.DataSource
ContaRegistro = 1
With .Sections("Section1").Controls conta = 0
For i = 1 To .Count If TypeOf .item(i) Is RptTextBox Then Debug.Print .item(i).Name conta = conta + 1 .item(i).DataMember = "" .item(i).DataField = rsA.Fields(conta - 1).Name End If Next i
.item("lbResidencia").Caption = "Teste: " & rsA.Fields(9).Value
.item("lbMNum").Caption = ContaRegistro .item("lbNum").Caption = ContaRegistro End With
ContaRegistro = ContaRegistro + 1 .Show End With
End Sub --------------------------
O código está funcionando como pretendo, faltando alguns ajustes, mas a variável contaregistro não está sendo incrementada, sempre me retorna 1.
Nesta linha:
.item("lbResidencia").Caption = "Teste: " & rsA.Fields(9).Value
só mostra o valor do primeiro registro, sempre se repetindo. É aí a minha dúvida: como o DR avança no RSet?
Outra coisa: posso apagar os arquivos .tmp que são gerados a cada teste que faço?
|