CONVERTER DAO PARA ADO
Poderiam me ajudar de que forma converter DAO para ADO, pois não tenho um conhecimento profundo sobre o problema segue o codigo abaixo
Screen.MousePointer = 11
Dim a As Integer
Dim mSQL As String
Dim SQLtab3 As Recordset
Dim mQuantAlunos As Integer
mSQL = [Ô]Select ANO, Unidade, Rm, Codigo, Numero, Cod_Disc, nfecha[Ô] & mtri & [Ô] as nfecha, Nota[Ô] & mtri & [Ô] as Processo, Nota[Ô] & mtri & [Ô]_1 as Prova, Back0[Ô] & mtri & [Ô] as Back, Falta[Ô] & mtri & [Ô] as Falta, Recu[Ô] & mtri & [Ô] as Recuperacao From cad_nota Where ANO=[Ô] & gAnoAtivo & [Ô] and left(Codigo,[Ô] & tbPara!turma & [Ô]) = [ô][Ô] & UCase(mClasse) & [Ô][ô] And Cod_Disc = [ô][Ô] & UCase(Left(mClasse, 2)) & Right(Format(ComboMateria.ItemData(ComboMateria.ListIndex), [Ô]00[Ô]), 2) & [Ô][ô] Order by Rm[Ô]
Set SQLtab3 = DBData.OpenRecordset(mSQL)
mQuantAlunos = SQLtab3.RecordCount
If mQuantAlunos = 0 Then
mSQL = [Ô]Select ano, unidade, Rm, Codigo, Numero, Cod_Disc, nfecha[Ô] & mtri & [Ô] as nfecha, Nota[Ô] & mtri & [Ô] as Processo, Nota[Ô] & mtri & [Ô]_1 as Prova, Back0[Ô] & mtri & [Ô] as Back, Falta[Ô] & mtri & [Ô] as Falta, Recu[Ô] & mtri & [Ô] as Recuperacao From cad_nota Where ANO=[Ô] & gAnoAtivo & [Ô] and Unidade=[Ô] & gUnidade
Set SQLtab3 = DBData.OpenRecordset(mSQL)
Inclusao = True
Else
Inclusao = False
End If
mQuantA2 = UBound(zRm)
If SQLtab3.RecordCount > 0 Then SQLtab3.MoveFirst
For a = 1 To mQuantA2
[ô]If zRm(a) = 31775 Then Stop
If Inclusao = True Then
SQLtab3.AddNew
Else
SQLtab3.FindFirst [Ô]rm = [Ô] & zRm(a)
If Not SQLtab3.NoMatch Then
SQLtab3.Edit
Else
SQLtab3.AddNew
End If
End If
SQLtab3!ano = gAnoAtivo
SQLtab3!Unidade = gUnidade
SQLtab3!rm = zRm(a)
SQLtab3!Codigo = zClasse(a)
SQLtab3!numero = Val(zNumero(a))
SQLtab3!cod_disc = UCase(Left(zClasse(a), 2)) & Format(ComboMateria.ItemData(ComboMateria.ListIndex), [Ô]00[Ô])
[ô] SQLTab3!prova = IIf(Len(zProva(A)) = 0, -1, IIf(Trim(zProva(A)) = [Ô]DISP[Ô], -2, Val(ArrumaVal(zProva(A)))))
[ô] SQLTab3!back = IIf(Len(zProva(A)) = 0, -1, IIf(Trim(zProva(A)) = [Ô]DISP[Ô], -2, Val(ArrumaVal(zProva(A)))))
If Len(zProva(a)) = 0 Then
SQLtab3!prova = -1
SQLtab3!back = -1
Else
If Trim(zProva(a)) = [Ô]DISP[Ô] Then
SQLtab3!prova = -2
SQLtab3!back = -2
ElseIf Trim(zProva(a)) = [Ô]RECU[Ô] Then
SQLtab3!prova = -3
SQLtab3!back = -3
ElseIf Trim(zProva(a)) = [Ô]RE01[Ô] Then
SQLtab3!prova = -7
SQLtab3!back = -7
ElseIf Trim(zProva(a)) = [Ô]RE02[Ô] Then
SQLtab3!prova = -8
SQLtab3!back = -8
ElseIf Trim(zProva(a)) = [Ô]RE12[Ô] Then
SQLtab3!prova = -9
SQLtab3!back = -9
ElseIf Trim(zProva(a)) = [Ô]RE L[Ô] Then
SQLtab3!prova = -10
SQLtab3!back = -10
ElseIf Trim(zProva(a)) = [Ô]RE P[Ô] Then
SQLtab3!prova = -11
SQLtab3!back = -11
ElseIf Trim(zProva(a)) = [Ô]RELP[Ô] Then
SQLtab3!prova = -12
SQLtab3!back = -12
ElseIf Trim(zProva(a)) = [Ô]RE G[Ô] Then
SQLtab3!prova = -13
SQLtab3!back = -13
ElseIf Trim(zProva(a)) = [Ô]RE B[Ô] Then
SQLtab3!prova = -14
SQLtab3!back = -14
ElseIf Trim(zProva(a)) = [Ô]REGB[Ô] Then
SQLtab3!prova = -15
SQLtab3!back = -15
ElseIf Trim(zProva(a)) = [Ô]RE F[Ô] Then
SQLtab3!prova = -16
SQLtab3!back = -16
ElseIf Trim(zProva(a)) = [Ô]RE Q[Ô] Then
SQLtab3!prova = -17
SQLtab3!back = -17
ElseIf Trim(zProva(a)) = [Ô]REFQ[Ô] Then
SQLtab3!prova = -18
SQLtab3!back = -18
ElseIf Trim(zProva(a)) = [Ô]RE23[Ô] Then
SQLtab3!prova = -19
SQLtab3!back = -19
ElseIf Trim(zProva(a)) = [Ô]RE13[Ô] Then
SQLtab3!prova = -20
SQLtab3!back = -20
ElseIf Trim(zProva(a)) = [Ô]RE03[Ô] Then
SQLtab3!prova = -21
SQLtab3!back = -21
Else
SQLtab3!prova = Val(ArrumaVal(zProva(a)))
SQLtab3!back = Val(ArrumaVal(zProva(a)))
End If
End If
[ô] SQLTab3!processo = IIf(Len(zProc(A)) = 0, -1, IIf(Trim(zProc(A)) = [Ô]DISP[Ô], -2, Val(ArrumaVal(zProc(A)))))
If Len(zProc(a)) = 0 Then
SQLtab3!processo = -1
Else
If Trim(zProc(a)) = [Ô]DISP[Ô] Then
SQLtab3!processo = -2
ElseIf Trim(zProc(a)) = [Ô]RECU[Ô] Then
SQLtab3!processo = -3
ElseIf Trim(zProc(a)) = [Ô]RE01[Ô] Then
SQLtab3!processo = -7
ElseIf Trim(zProc(a)) = [Ô]RE02[Ô] Then
SQLtab3!processo = -8
ElseIf Trim(zProc(a)) = [Ô]RE12[Ô] Then
SQLtab3!processo = -9
ElseIf Trim(zProc(a)) = [Ô]RE L[Ô] Then
SQLtab3!processo = -10
ElseIf Trim(zProc(a)) = [Ô]RE P[Ô] Then
SQLtab3!processo = -11
ElseIf Trim(zProc(a)) = [Ô]RELP[Ô] Then
SQLtab3!processo = -12
ElseIf Trim(zProc(a)) = [Ô]RE G[Ô] Then
SQLtab3!processo = -13
ElseIf Trim(zProc(a)) = [Ô]RE B[Ô] Then
SQLtab3!processo = -14
ElseIf Trim(zProc(a)) = [Ô]REGB[Ô] Then
SQLtab3!processo = -15
ElseIf Trim(zProc(a)) = [Ô]RE F[Ô] Then
SQLtab3!processo = -16
ElseIf Trim(zProc(a)) = [Ô]RE Q[Ô] Then
SQLtab3!processo = -17
ElseIf Trim(zProc(a)) = [Ô]REFQ[Ô] Then
SQLtab3!processo = -18
ElseIf Trim(zProc(a)) = [Ô]RE23[Ô] Then
SQLtab3!processo = -19
ElseIf Trim(zProc(a)) = [Ô]RE13[Ô] Then
SQLtab3!processo = -20
ElseIf Trim(zProc(a)) = [Ô]RE03[Ô] Then
SQLtab3!processo = -21
Else
SQLtab3!processo = Val(ArrumaVal(zProc(a)))
End If
End If
[ô]Se usuário tiver como DI nas faltas marca como dispensado
If tbPara!id = [Ô]CSP[Ô] Then
If Trim(zFalta(a)) = [Ô]DI[Ô] Then
SQLtab3!prova = -2
SQLtab3!back = -2
End If
End If
SQLtab3!nfecha = IIf(zNfecha(a), 1, 0)
SQLtab3!falta = Val(zFalta(a))
SQLtab3.Update
Next
ReDim zRm(1 To 1)
ReDim zClasse(1 To 1)
ReDim zNome(1 To 1)
ReDim zNumero(1 To 1)
ReDim zProva(1 To 1)
ReDim zProc(1 To 1)
ReDim zFalta(1 To 1)
ReDim zRecu(1 To 1)
FClasse.Enabled = True
Frame3.Visible = False
RequeryAll
Screen.MousePointer = 0
On Local Error GoTo 0
Exit Sub
[ô]///////////////////////////////////////////////////////////////////////////
[ô]Controle de erros
AddNotas_Error:
MsgBox [Ô]Erro [Ô] & Err.Number & [Ô] ([Ô] & Err.Description & [Ô]) em AddNotas de Formulário fNota[Ô]
grato pela ajuda
Screen.MousePointer = 11
Dim a As Integer
Dim mSQL As String
Dim SQLtab3 As Recordset
Dim mQuantAlunos As Integer
mSQL = [Ô]Select ANO, Unidade, Rm, Codigo, Numero, Cod_Disc, nfecha[Ô] & mtri & [Ô] as nfecha, Nota[Ô] & mtri & [Ô] as Processo, Nota[Ô] & mtri & [Ô]_1 as Prova, Back0[Ô] & mtri & [Ô] as Back, Falta[Ô] & mtri & [Ô] as Falta, Recu[Ô] & mtri & [Ô] as Recuperacao From cad_nota Where ANO=[Ô] & gAnoAtivo & [Ô] and left(Codigo,[Ô] & tbPara!turma & [Ô]) = [ô][Ô] & UCase(mClasse) & [Ô][ô] And Cod_Disc = [ô][Ô] & UCase(Left(mClasse, 2)) & Right(Format(ComboMateria.ItemData(ComboMateria.ListIndex), [Ô]00[Ô]), 2) & [Ô][ô] Order by Rm[Ô]
Set SQLtab3 = DBData.OpenRecordset(mSQL)
mQuantAlunos = SQLtab3.RecordCount
If mQuantAlunos = 0 Then
mSQL = [Ô]Select ano, unidade, Rm, Codigo, Numero, Cod_Disc, nfecha[Ô] & mtri & [Ô] as nfecha, Nota[Ô] & mtri & [Ô] as Processo, Nota[Ô] & mtri & [Ô]_1 as Prova, Back0[Ô] & mtri & [Ô] as Back, Falta[Ô] & mtri & [Ô] as Falta, Recu[Ô] & mtri & [Ô] as Recuperacao From cad_nota Where ANO=[Ô] & gAnoAtivo & [Ô] and Unidade=[Ô] & gUnidade
Set SQLtab3 = DBData.OpenRecordset(mSQL)
Inclusao = True
Else
Inclusao = False
End If
mQuantA2 = UBound(zRm)
If SQLtab3.RecordCount > 0 Then SQLtab3.MoveFirst
For a = 1 To mQuantA2
[ô]If zRm(a) = 31775 Then Stop
If Inclusao = True Then
SQLtab3.AddNew
Else
SQLtab3.FindFirst [Ô]rm = [Ô] & zRm(a)
If Not SQLtab3.NoMatch Then
SQLtab3.Edit
Else
SQLtab3.AddNew
End If
End If
SQLtab3!ano = gAnoAtivo
SQLtab3!Unidade = gUnidade
SQLtab3!rm = zRm(a)
SQLtab3!Codigo = zClasse(a)
SQLtab3!numero = Val(zNumero(a))
SQLtab3!cod_disc = UCase(Left(zClasse(a), 2)) & Format(ComboMateria.ItemData(ComboMateria.ListIndex), [Ô]00[Ô])
[ô] SQLTab3!prova = IIf(Len(zProva(A)) = 0, -1, IIf(Trim(zProva(A)) = [Ô]DISP[Ô], -2, Val(ArrumaVal(zProva(A)))))
[ô] SQLTab3!back = IIf(Len(zProva(A)) = 0, -1, IIf(Trim(zProva(A)) = [Ô]DISP[Ô], -2, Val(ArrumaVal(zProva(A)))))
If Len(zProva(a)) = 0 Then
SQLtab3!prova = -1
SQLtab3!back = -1
Else
If Trim(zProva(a)) = [Ô]DISP[Ô] Then
SQLtab3!prova = -2
SQLtab3!back = -2
ElseIf Trim(zProva(a)) = [Ô]RECU[Ô] Then
SQLtab3!prova = -3
SQLtab3!back = -3
ElseIf Trim(zProva(a)) = [Ô]RE01[Ô] Then
SQLtab3!prova = -7
SQLtab3!back = -7
ElseIf Trim(zProva(a)) = [Ô]RE02[Ô] Then
SQLtab3!prova = -8
SQLtab3!back = -8
ElseIf Trim(zProva(a)) = [Ô]RE12[Ô] Then
SQLtab3!prova = -9
SQLtab3!back = -9
ElseIf Trim(zProva(a)) = [Ô]RE L[Ô] Then
SQLtab3!prova = -10
SQLtab3!back = -10
ElseIf Trim(zProva(a)) = [Ô]RE P[Ô] Then
SQLtab3!prova = -11
SQLtab3!back = -11
ElseIf Trim(zProva(a)) = [Ô]RELP[Ô] Then
SQLtab3!prova = -12
SQLtab3!back = -12
ElseIf Trim(zProva(a)) = [Ô]RE G[Ô] Then
SQLtab3!prova = -13
SQLtab3!back = -13
ElseIf Trim(zProva(a)) = [Ô]RE B[Ô] Then
SQLtab3!prova = -14
SQLtab3!back = -14
ElseIf Trim(zProva(a)) = [Ô]REGB[Ô] Then
SQLtab3!prova = -15
SQLtab3!back = -15
ElseIf Trim(zProva(a)) = [Ô]RE F[Ô] Then
SQLtab3!prova = -16
SQLtab3!back = -16
ElseIf Trim(zProva(a)) = [Ô]RE Q[Ô] Then
SQLtab3!prova = -17
SQLtab3!back = -17
ElseIf Trim(zProva(a)) = [Ô]REFQ[Ô] Then
SQLtab3!prova = -18
SQLtab3!back = -18
ElseIf Trim(zProva(a)) = [Ô]RE23[Ô] Then
SQLtab3!prova = -19
SQLtab3!back = -19
ElseIf Trim(zProva(a)) = [Ô]RE13[Ô] Then
SQLtab3!prova = -20
SQLtab3!back = -20
ElseIf Trim(zProva(a)) = [Ô]RE03[Ô] Then
SQLtab3!prova = -21
SQLtab3!back = -21
Else
SQLtab3!prova = Val(ArrumaVal(zProva(a)))
SQLtab3!back = Val(ArrumaVal(zProva(a)))
End If
End If
[ô] SQLTab3!processo = IIf(Len(zProc(A)) = 0, -1, IIf(Trim(zProc(A)) = [Ô]DISP[Ô], -2, Val(ArrumaVal(zProc(A)))))
If Len(zProc(a)) = 0 Then
SQLtab3!processo = -1
Else
If Trim(zProc(a)) = [Ô]DISP[Ô] Then
SQLtab3!processo = -2
ElseIf Trim(zProc(a)) = [Ô]RECU[Ô] Then
SQLtab3!processo = -3
ElseIf Trim(zProc(a)) = [Ô]RE01[Ô] Then
SQLtab3!processo = -7
ElseIf Trim(zProc(a)) = [Ô]RE02[Ô] Then
SQLtab3!processo = -8
ElseIf Trim(zProc(a)) = [Ô]RE12[Ô] Then
SQLtab3!processo = -9
ElseIf Trim(zProc(a)) = [Ô]RE L[Ô] Then
SQLtab3!processo = -10
ElseIf Trim(zProc(a)) = [Ô]RE P[Ô] Then
SQLtab3!processo = -11
ElseIf Trim(zProc(a)) = [Ô]RELP[Ô] Then
SQLtab3!processo = -12
ElseIf Trim(zProc(a)) = [Ô]RE G[Ô] Then
SQLtab3!processo = -13
ElseIf Trim(zProc(a)) = [Ô]RE B[Ô] Then
SQLtab3!processo = -14
ElseIf Trim(zProc(a)) = [Ô]REGB[Ô] Then
SQLtab3!processo = -15
ElseIf Trim(zProc(a)) = [Ô]RE F[Ô] Then
SQLtab3!processo = -16
ElseIf Trim(zProc(a)) = [Ô]RE Q[Ô] Then
SQLtab3!processo = -17
ElseIf Trim(zProc(a)) = [Ô]REFQ[Ô] Then
SQLtab3!processo = -18
ElseIf Trim(zProc(a)) = [Ô]RE23[Ô] Then
SQLtab3!processo = -19
ElseIf Trim(zProc(a)) = [Ô]RE13[Ô] Then
SQLtab3!processo = -20
ElseIf Trim(zProc(a)) = [Ô]RE03[Ô] Then
SQLtab3!processo = -21
Else
SQLtab3!processo = Val(ArrumaVal(zProc(a)))
End If
End If
[ô]Se usuário tiver como DI nas faltas marca como dispensado
If tbPara!id = [Ô]CSP[Ô] Then
If Trim(zFalta(a)) = [Ô]DI[Ô] Then
SQLtab3!prova = -2
SQLtab3!back = -2
End If
End If
SQLtab3!nfecha = IIf(zNfecha(a), 1, 0)
SQLtab3!falta = Val(zFalta(a))
SQLtab3.Update
Next
ReDim zRm(1 To 1)
ReDim zClasse(1 To 1)
ReDim zNome(1 To 1)
ReDim zNumero(1 To 1)
ReDim zProva(1 To 1)
ReDim zProc(1 To 1)
ReDim zFalta(1 To 1)
ReDim zRecu(1 To 1)
FClasse.Enabled = True
Frame3.Visible = False
RequeryAll
Screen.MousePointer = 0
On Local Error GoTo 0
Exit Sub
[ô]///////////////////////////////////////////////////////////////////////////
[ô]Controle de erros
AddNotas_Error:
MsgBox [Ô]Erro [Ô] & Err.Number & [Ô] ([Ô] & Err.Description & [Ô]) em AddNotas de Formulário fNota[Ô]
grato pela ajuda
Comece entendendo como ADO funciona, depois converta seu código. Só postar código e pedir para alguém alterar não da não colega... Qual a sua dúvida sobre ADO?
Encontrei alguns artigos bons pra você fazer essa migracao:
http://www.macoratti.net/ado_filt.htm
http://www.macoratti.net/dao_ado.htm
http://www.macoratti.net/dao_ado1.htm
http://www.macoratti.net/dao_ado2.htm
http://www.macoratti.net/dao_ado3.htm
vlw
http://www.macoratti.net/ado_filt.htm
http://www.macoratti.net/dao_ado.htm
http://www.macoratti.net/dao_ado1.htm
http://www.macoratti.net/dao_ado2.htm
http://www.macoratti.net/dao_ado3.htm
vlw
Tópico encerrado , respostas não são mais permitidas