#1
|
||||
|
||||
Mandar variable de un report a otro
Hola a todos,
Tengo un report llamado Z28E que lista los movimientos mensuales de un producto (muestra un ALV por pantalla). Tengo otro programa llamado Z28E_MASIVA que mediante un CALL TRANSACTION ejecuta X veces el Z28E pero este hace que el listado se imprima directamente por la impresora. Estoy intentando que cuando salgan los X listados...salgan numerados. Por ello en el programa Z28E_MASIVA en donde se realiza el CALL TRANSACTION para cada uno de los materiales he hecho lo siguiente: FORM procesar_materiales . LOOP AT seleccion. d_contador_tmp = d_contador_tmp + 1. EXPORT d_contador_tmp TO MEMORY ID 'CONTADOR_PAGINAS'. PERFORM bdc_dynpro USING 'Z28E' '1000'. PERFORM bdc_field USING 'BDC_OKCODE' '=ONLI'. PERFORM bdc_field USING 'P_MATNR' seleccion-matnr. PERFORM bdc_field USING 'P_ANYO' p_anyo. PERFORM bdc_field USING 'P_SUBCOM' p_subcom. PERFORM bdc_field USING 'P_MATPRI' p_matpri. PERFORM bdc_dynpro USING 'SAPMSSY0' '0120'. PERFORM bdc_field USING 'BDC_OKCODE' '=&RNT'. PERFORM bdc_dynpro USING 'SAPLSPRI' '0100'. PERFORM bdc_field USING 'BDC_OKCODE' '=PRIN'. PERFORM bdc_field USING 'PRI_PARAMS-PDEST' 'Defecte Windows'. PERFORM bdc_field USING 'PRI_PARAMS-PRCOP' '1'. PERFORM bdc_field USING 'RADIO0500_1' 'X'. PERFORM bdc_dynpro USING 'SAPMSSY0' '0120'. PERFORM bdc_field USING 'BDC_OKCODE' '=&F12'. PERFORM bdc_dynpro USING 'Z28E' '1000'. PERFORM bdc_field USING 'BDC_OKCODE' '/EECAN'. PERFORM bdc_transaction USING 'Z28E' 'N' 'X' 'S'. ENDLOOP. ENDFORM. " procesar_materiales He creado una variable que a cada iteracion icnrementa en uno el contador. Luego en el programa Z28E que es el que realmente acabar imprimiendo he puesto esto: INITIALIZATION. IMPORT d_contador FROM MEMORY ID 'CONTADOR_PAGINAS'. Teoricamente esperaba que la variable d_contador obtuviera el valor que le pasa el report Z28E_MASIVA pero no es así... Como puedo hacerlo? Como puedo pasar el valor de este contador de un programa a otro??? |
Herramientas | Buscar en Tema |
Desplegado | |
|
|