#1
|
|||
|
|||
Ayuda con Smartform
Buenas tengo el siguiente código en un smartform
SELECT bukrs lifnr augdt gjahr belnr budat waers wrbtr sgtxt INTO TABLE it_table FROM bsik WHERE bukrs = psociedad AND budat = pfecha AND lifnr in pacreed AND belnr = pdoc. Pero me da error cuando pongo el operador IN, alguien puede indicarme cómo puedo hacer un SELECT en un Smartform utilizando el IN. Gracias
__________________
Oscar Cubero |
#2
|
|||
|
|||
que error te da?
pareciera que el select es correcto, que error te da?? de compilacion o dump??
|
#3
|
|||
|
|||
¿El campo pacreed es un rango?
|
#4
|
|||
|
|||
Gracias por responder, pues es un tipo y lo declare como de tipo lfa1-lifnr, creo que ese es el problema, pero pensé mejor pasar por parámetros una tabla interna, voy a investigar cómo lo puedo realizar de esta manera.
__________________
Oscar Cubero |
#5
|
||||
|
||||
Hola, El IN se usa para compararlo con un rango de valores.
Lo que puede hacer es usar el FOR ALL ENTRIES, para realizar tu consulta.
__________________
Luis Lipa
|
#6
|
|||
|
|||
El IN solo puedes utilizarlo con rangos, que son un tipo de datos especiales. Se definen con RANGES o como table interna (ya que están obsoletos) con los campos SIGN, OPTION, LOW y HIGH. Si mirás la ayuda está bastante claro. También puede utilizar una serie de campos así:
IN (valor1, valor2, valor3, ... , valorN). Si quieres pasarle una TI al smartform tendrás que declarar una estructura en el diccionario y pasarsela en el apartado de tables. Saludos |
#7
|
|||
|
|||
Gracias, ya logré pasar la tabla interna al SmartForm, realice los selects desde el programa de control y no dentro del SM, así no me da problemas la claúsula IN. Muchas gracias a todos por la ayuda.....
__________________
Oscar Cubero |
Herramientas | Buscar en Tema |
Desplegado | |
|
|