Pocos parámetros, se esperaba 1..
Yo sé que se debe al error en un campo con la base de datos. Pero lo que no entiendo es como siquiera es posible con este Access. Llevo mil horas intentando descifrarlo. He movido todo, checado que los campos del select estén en la base de datos y que correspondan al tipo que se está pidiendo, lo he botado como 3 veces pero nomás no se deja. Acá dejo los códigos. Lo curioso, esque en la tabla hermana Actualiza_DRT002 si lo hace sin problema pero en la Actualiza_DRT002S siempre siempre me tira el mismo error.
Alguna solución?
Código:
Private Sub Actualiza_DRT002() Dim DBS As Database Dim strSql As String Set DBS = OpenDatabase("D:\CARMEN\JACOBO\FAVWMJACOB.mdb") strSql = "SELECT SNC, SNOMI, SNOM, REFERENCIA, SCDEU, SPP, " _ & "SFECH, A_PARTIR, SFAP, SPAP, SALDOACT, COMP " _ & "FROM DRT002 ORDER BY SFECH, SNCH" Set qdf = DBS.OpenRecordset(strSql) If (qdf.EOF) Then MsgBox "No hay elementos para esta página del Panel de control" Else While (Not (qdf.EOF)) If IsNull(qdf!A_PARTIR) Then 'MsgBox "El empleado " & qdf!SNOM & " no tienen fecha A_PARTIR en la tabla DRT002" Else If (qdf!SALDOACT <> 0) And (qdf!COMP = "I") Then Select Case (qdf!SFAP) 'Pagos mensuales Case 1 If (qdf!A_PARTIR >= FECHAINI) _ And (qdf!A_PARTIR <= FECFINAUX) _ And (qdf!SPAP <> 0) Then saldo = qdf!SALDOACT - qdf!SPP FORMAPAG = qdf!SPAP - 1 Inserta_AUXILIARVWM Guarda_DRT002 End If 'Pago único Case 2 If (qdf!A_PARTIR >= FECINIAUX) And (qdf!A_PARTIR <= FECFINAUX) Then saldo = qdf!SALDOACT - qdf!SPP Else saldo = qdf!SALDOACT End If Inserta_AUXILIARVWM If (qdf!A_PARTIR >= FECHAINI) _ And (qdf!A_PARTIR <= FECFINAUX) _ And (qdf!SPAP <> 0) Then saldo = qdf!SALDOACT - qdf!SPP FORMAPAG = qdf!SPAP - 1 Guarda_DRT002 End If End Select End If End If qdf.MoveNext Wend End If qdf.Close End Sub Private Sub Actualiza_DRT002S() Dim DBS As Database Dim strSql As String Set DBS = OpenDatabase("D:\CARMEN\JACOBO\FAVWMJACOB.mdb") strSql = "SELECT SNC, SNOMI, SNOM, REFERENCIA, SCDEU, SPP, " _ & "SFECH, A_PARTIR, SFAP, SPAP, SALDOACT, COMP " _ & "FROM DRT002S ORDER BY SFECH, SNCH" Set qdf = DBS.OpenRecordset(strSql) If (qdf.EOF) Then MsgBox "No hay elementos para esta página del Panel de control" Else While (Not (qdf.EOF)) If IsNull(qdf!A_PARTIR) Then 'MsgBox "El empleado " & qdf!SNOM & " no tienen fecha A_PARTIR en la tabla DRT002" Else If (qdf!SALDOACT <> 0) And (qdf!COMP = "I") Then Select Case (qdf!SFAP) 'Pagos mensuales Case 1 If (qdf!A_PARTIR >= FECHAINI) _ And (qdf!A_PARTIR <= FECFINAUX) _ And (qdf!SPAP <> 0) Then saldo = qdf!SALDOACT - qdf!SPP FORMAPAG = qdf!SPAP - 1 Inserta_AUXILIARVWM Guarda_DRT002 End If 'Pago único Case 2 If (qdf!A_PARTIR >= FECINIAUX) And (qdf!A_PARTIR <= FECFINAUX) Then saldo = qdf!SALDOACT - qdf!SPP Else saldo = qdf!SALDOACT End If Inserta_AUXILIARVWM If (qdf!A_PARTIR >= FECHAINI) _ And (qdf!A_PARTIR <= FECFINAUX) _ And (qdf!SPAP <> 0) Then saldo = qdf!SALDOACT - qdf!SPP FORMAPAG = qdf!SPAP - 1 Guarda_DRT002 End If End Select End If End If qdf.MoveNext Wend End If qdf.Close End Sub