MUNDOSAP

MUNDOSAP (foro/index.php)
-   Programación ABAP IV (foro/forumdisplay.php?f=4)
-   -   Set Parameter Id (foro/showthread.php?t=8424)

Arkady 17/10/07 16:32:24

Set Parameter Id
 
Hola, llevo toda la tarde intentando esto y no hay manera, he buscado en foros y demás pero nada que me haya servido de ayuda.
Quiero establecer unas IDs a unos campos para luego darles valores.

Tengo esto en un report que he convertido en una transacción.

parameters: v1 like sy-datum .
select-options: v2 for kna1-ort01.

SET PARAMETER ID 'ID1' FIELD v1.
SET PARAMETER ID 'ID2' FIELD v2-high.
SET PARAMETER ID 'ID3' FIELD v2-low.

----------------------
Y esa transacción la llamo desde otro report, y desde ahí es donde tiene que tomar los datos.
DATA : t_param TYPE STANDARD TABLE OF rfc_spagpa,
wa_param TYPE rfc_spagpa.

wa_param-parid = 'ID2'. "por ejemplo
wa_param-parval = 'Valor'.
APPEND wa_param TO t_param.

CALL FUNCTION 'ABAP4_CALL_TRANSACTION'
EXPORTING
tcode = 'ZMiTransaccion'
SKIP_SCREEN = 'X'
TABLES
SPAGPA_TAB = t_param
*esta tabla contiene los pares IDs-Valor que usaré en mi transacción
.

y no hay manera, no consigo que desde la transacción tome los valores que le paso. Cuando hago el CALL_TRANSACTION con otra transacción de SAP lo hace sin problemas, pero con mi transacción no. No me acepta los IDs

A ver si alguien tiene alguna idea
Gracias de antemano

(mañana contestaré a las respuestas)

temaljose 17/10/07 16:57:49

set parameter
 
Amigo para llevar un parametro a memoria y luego traerlo de memoria debes hacer lo siguiente:
en el momento de definir la variable debes utilizar el parametro memory id, ejemplo.
parameter: v1(6) type c memory id 'ZXX'.

O puedes cambiar este valor, con set parameter id 'ZXX' field <valor>.

Y para llamarlo de memoria haces lo siguiente en el programa donde lo vayas a recibir:
data: v1(6) type c.

get parameter id 'ZXX' field v1.


eso funciona.

Arkady 18/10/07 07:57:02

La pista del parameters: ... memory id me ha servido de mucho, es que con el SET PARAMETER ID no me funcionaba. Muchas gracias. Ahora tengo algo así como esto y funciona en parte


---En la transacción desde la que recojo los parametros
parameters: v1 like sy-datum memory id VA1.
select-options: v2 for kna1-ort01 memory id VA2.

---En el report que llama a la transacción
Y esa transacción la llamo desde otro report, y desde ahí es donde tiene que tomar los datos.

DATA : t_param TYPE STANDARD TABLE OF rfc_spagpa,
wa_param TYPE rfc_spagpa.

wa_param-parid = 'VA1'.
wa_param-parval = sy-datum.
APPEND wa_param TO t_param.

wa_param-parid = 'VA2'.
wa_param-parval = 'Madrid'.
APPEND wa_param TO t_param.

CALL FUNCTION 'ABAP4_CALL_TRANSACTION'
EXPORTING
tcode = 'ZMiTransaccion'
SKIP_SCREEN = 'X'
TABLES
SPAGPA_TAB = t_param
.

---
Esto funciona y rellena los huecos del parameter y el primero del select options, ya solo me queda rellenar el otro campo del select. Supongo que será simple, en cuanto lo tenga posteo como


Husos Horarios son GMT. La hora en este momento es 19:55:25.

www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web