#1
|
|||
|
|||
Asignar valores a una variable (rango o valores sueltos)
Una pregunta básica.. (que no me aclaro)..
He quitado de una pantalla la petición del material y quiero asignarlos internamente en el programa... ¿Cómo se indica en el código?. Llevo rato y no me entero !! Quiero decir pepe-matnr = valor1 // valor2.. etc.. o bien pepe-matnr = rango entre valor1 y valor2. Lo siento, sé que es muy básico pero aiss.. GRACIASSSSS.. |
#2
|
|||
|
|||
Debes crear un rango y colocar los valores que quieres usar. Ej: DATA: ra_matnr TYPE RANGE OF mara-matnr, wl_matnr LIKE LINE OF ra_matnr. **** para tu primer caso: "pepe-matnr = valor1 // valor2.. etc.." wl_matnr-sign = 'I'. "Incluido wl_matnr-option = 'EQ'. "Igual wl_matnr-low = '<material>'. "el valor exacto del material APPEND wl_matnr TO ra_matnr. CLEAR wl_matnr. - y asi con cada valor que necesites - *** y para tu 2do caso: "pepe-matnr = rango entre valor1 y valor2." wl_matnr-sign = 'I'. "Incluido wl_matnr-option = 'EQ'. "Igual wl_matnr-low = '<material>'. "el valor DESDE wl_matnr-high = '<material>'. "el valor HASTA APPEND wl_matnr TO ra_matnr. CLEAR wl_matnr. Espero te sirva. Saludos. |
#3
|
|||
|
|||
(por las dudas comento :P )
si lo vas a usar tanto para un SELECT, DELETE o cualquier comparacion debes usar los operadores IN / NOT IN para poder usar el rango. Esto es igual que un SELECT-OPTION, es una tabla del mismo tipo digamos, por eso ese tratamiento. Saludossss.. |
#4
|
|||
|
|||
Voy a ello..
Gracias mil compañero.. De verdad, GRACIAS. |
#5
|
|||
|
|||
Hola de nuevo..
Encantada de probar lo que me has enviado.. pero después de horas probando (para que no se diga) no consigo que funcione. Mira.. WHEN '1001'. v_bwart-sign = 'I'. "Incluido v_bwart-option = 'EQ'. "Igual v_bwart-low = '101'. "el valor DESDE v_bwart-high = '102'. "el valor HASTA APPEND v_bwart TO ra_bwart. CLEAR v_bwart. En realidad se trataba del cod.mvto. no del material.. y NO SÉ QUE HAGO MAL !! No hay forma.. (creo que no hay errores) pero sólo me funciona con el primer valor.. el otro lo omite.. SELECT werks lgort bwart matnr menge shkzg kunnr lifnr dmbtr kzbew sobkz sjahr smbln smblp INTO CORRESPONDING FIELDS OF mseg FROM mseg WHERE mblnr = mkpf-mblnr AND bwart IN ra_bwart AND werks = p_werks AND matnr IN s_matnr. ¿Qué estoy haciendo mal?... buaaaa... Saludos. |
#6
|
|||
|
|||
Hola. Vos no estas haciendo nada mal.. fui yo el del error.. Esto pasa habitualmente con COPY-PASTE.. :P en el valor OPTION debes colocar BT (between)... EQ es para ver solo un valor(la costumbre de hacerlo asi..je) Perdon y saludos !!! |
Herramientas | Buscar en Tema |
Desplegado | |
|
|