Visual Basic - Nuevo error en SELECT

Life is soft - evento anual de software empresarial
 
Vista:
sin imagen de perfil

Nuevo error en SELECT

Publicado por JAVIER (6 intervenciones) el 22/01/2018 13:16:17
Set TbDeclarados = Db.OpenRecordset

("SELECT String(9 - Len(NfTitular),'0') & NfTitular AS NifTitular, First(ApTitular) AS ApellidosTitular, First(NmTitular) AS NombreTitular, Sum(Recibo) AS Importe

FROM " & TbEjercicio & "

GROUP BY String(9 - Len(NfTitular), '0') & NfTitular")

¿Quién me puede ayudar con la redacción anterior?. Creo que el error está en String, concretamente en las comillas del 0

Muchas gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Andres Leonardo
Val: 3.117
Oro
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Nuevo error en SELECT

Publicado por Andres Leonardo (1798 intervenciones) el 22/01/2018 15:00:40
que pretendes hacer con el string esto es un tipo de datos .... que motor usas ???

espero poderte ayudar

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Antoni Masana
Val: 1.259
Plata
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Nuevo error en SELECT

Publicado por Antoni Masana (558 intervenciones) el 23/01/2018 07:00:48
Como dice Andres: ¿Que pretendes hacer?

Yo tampoco lo tengo clero pero si veo un error evidente.

1
2
3
4
Set TbDeclarados = Db.OpenRecordset
("SELECT String(9 - Len(NfTitular),'0') & NfTitular AS NifTitular, First(ApTitular) AS ApellidosTitular, First(NmTitular) AS NombreTitular, Sum(Recibo) AS Importe
FROM " & TbEjercicio & "
GROUP BY String(9 - Len(NfTitular), '0') & NfTitular")

En la segunda linea hay un error. Lo correcto seria esto

1
2
3
4
5
6
7
8
TxtTitular = String(9 - Len(NfTitular),'0') & NfTitular
 
Set TbDeclarados = Db.OpenRecordset("SELECT " & txtTitular & " AS NifTitular, " & _
                                          First(ApTitular) & " AS ApellidosTitular, " & _
                                          First(NmTitular) & " AS NombreTitular, " & _
                                               Sum(Recibo) & " AS Importe" &
                                   " FROM " & TbEjercicio & _
                                   " GROUP BY String(9 - Len(NfTitular), '0') & NfTitular")

Has de diferenciar lo que es texto SELECT de lo que es código de programa String(9 - Len(NfTitular),'0') & NfTitular

En el primer caso el SELECT un Nif de titular que se llama String(9 - Len(NfTitular),'0') & NfTitular
En el segundo caso 000007647 por que esta fueda de las comillas y se evalua.

Para entenderlo mejor prueba esto:

1
2
3
4
5
6
7
8
MsgBox "SELECT String(9 - Len(NfTitular),'0') & NfTitular AS NifTitular, First(ApTitular) AS ApellidosTitular, First(NmTitular) AS NombreTitular, Sum(Recibo) AS Importe FROM " & TbEjercicio & " GROUP BY String(9 - Len(NfTitular), '0') & NfTitular"
 
MsgBox "SELECT " & txtTitular & " AS NifTitular, " & _
                                          First(ApTitular) & " AS ApellidosTitular, " & _
                                          First(NmTitular) & " AS NombreTitular, " & _
                                               Sum(Recibo) & " AS Importe" &
                                   " FROM " & TbEjercicio & _
                                   " GROUP BY String(9 - Len(NfTitular), '0') & NfTitular"

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar