Access - Un lio, a ver si me explico

 
Vista:

Un lio, a ver si me explico

Publicado por Santiago (35 intervenciones) el 04/09/2002 20:02:26
Necesito que en un campo Independiente de un informe salgan una serie de datos de la tabla origen, separados por puntos y, algunos, con una expresion despues (tipo 253 paginas. ó 2º Edicion.), esto es facil (Origen del control=[campo1]&"pags."&[campo2]&"Edicion.") etc...

Ahora bien el problema ahora es que no todos los registros tienen esos campos rellenados así que necesitaría hacer algo como if [Me.campo1]<>"" then (=[Me.campo1] & "pags") else (="") end if o algo así y poner esto en el origen del control, el caso es que el generador de expresiones no me deja utilizar las sentencia If.

Decidí entonces generar en el modulo de ese informe una variable por medio de una consulta a la tabla origen en la que concateno todos los datos que quiero que salgán en el campo independiente, esto me había funcionado en formularios así que pensaba que aquí no habría problemas...

El caso es que me da dos fallos, si hago la consulta así: "CurrentProject.Connection.Execute("SELECT * FROM MI_tabla where idPub =" & Report_informe2.[Idpub])" me dice "introdujo una expresion que no tiene valor" (creo que se refiere a Report_informe2.[Idpub], aunque este campo sí que está en el informe, porque si cambio esto por un valor que exista en la base de datos la select parece que funciona y pasamos al siguiente error) ¿Es que no se pueden ejecutar selects con base a campos de informes?

Si por el contrario le doy un valor a query (osea, la hago así: 'CurrentProject.Connection.Execute("SELECT * FROM MI_tabla where idPub =" & 10)' y si que la ejecuta correctamente me dice: "imposible asignar un valor a ese objeto" ¿Es que no se pueden rellenar con variab
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

Sigue Un lio, a ver si me explico

Publicado por Santiago (35 intervenciones) el 04/09/2002 20:03:51
¿Es que no se pueden rellenar con variables los campos de un informe?¿Cómo se hace?
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

RE:Un lio, a ver si me explico

Publicado por Victoria (1530 intervenciones) el 04/09/2002 22:22:54
Santi, un execute NO devuelve registros
Victoria
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

RE:Un lio, a ver si me explico

Publicado por Juan Amorós (489 intervenciones) el 05/09/2002 12:20:57
Santi:
En ORIGEN DEL CONTROL (del campo), en vez de If, UTILIZA:
SiInm(campo1=x;haz esto;(en caso contrario) esto otro)

Puedes anidar varios SiInm al igual que si fueran If.
Funciona perfectamente
Saludos
Juan Amorós
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

Solucionado

Publicado por Santiago (35 intervenciones) el 05/09/2002 14:27:35
Muchisimas gracias
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