|
#1
|
|||
|
|||
Código para la Sustitución
Hola apreciado Foro.
He conseguido este código: *Descripción: Se requiere crear una sustitución para que actualice * * el campo sociedad GL en el documento contable cuando estemos * * realizando contabilizaciones en determinadas transacciones * * de activos. * * El valor de la sociedad GL lo debe coger de los datos * * maestros del activo. * * La transacción solicitada es: * * F-92 * * También se ha creado la tabla ZSOCIEDAD_GL para incluir las * * sociedades y la clase de inmovilizado. * ********************************************************************** CONSTANTS: lc_abzu TYPE tcode VALUE 'F-92', lc_75 TYPE bschl VALUE '75', lc_x(1) TYPE c VALUE 'X'. DATA: lt_am_socgl TYPE TABLE OF ZSOCIEDAD_GL, lv_encontrado(1) TYPE c. FIELD-SYMBOLS: <ls_bseg> TYPE bseg. IF sy-tcode EQ lc_F-92 . LOOP AT bool_data-bseg ASSIGNING <ls_bseg> WHERE bschl = lc_75. SELECT SINGLE * FROM anla WHERE bukrs = <ls_bseg>-bukrs AND anln1 = <ls_bseg>-anln1 AND anln2 = <ls_bseg>-anln2. IF sy-subrc EQ 0. SELECT * FROM zsociedad_gl INTO TABLE lt_am_socgl WHERE bukrs = <ls_bseg>-bukrs AND anlkl = anla-anlkl. IF sy-subrc EQ 0. lv_encontrado = lc_x. EXIT. ENDIF. ENDIF. ENDLOOP. IF lv_encontrado EQ lc_x. LOOP AT bool_data-bseg ASSIGNING <ls_bseg>. <ls_bseg>-vbund = anla-vbund. ENDLOOP. ENDIF. * SELECT SINGLE * FROM anla WHERE bukrs = bseg-bukrs * * SELECT * FROM TABLE lt_am_socgl * WHERE bukrs = bseg-bukrs ENDIF. El asunto es que en mi empresa no quieren usar una tabla Z, sino que se haga la búsqueda directamente desde el maestro de activos y ya. (ANLA-VBUND) La pregunta es: ¿Cómo podría modificar el código para use en vez de la tabla Z ( ZSOCIEDAD_GL) use ANLA-VBUND? Por otro lado, no soy técnico programador soy funcional. Gracias de antemano.
__________________
María Alejandra Fernández Consultor Senior FI-CO |
#2
|
|||
|
|||
Ya tengo en código
Hola.
Para cerrar el tema. He logrado obtener el soguiente código CONSTANTS: lc_abzu TYPE tcode VALUE 'F-92', lc_75 TYPE bschl VALUE '75', lc_x(1) TYPE c VALUE 'X'. DATA: lv_vbund TYPE BSEG-VBUND. FIELD-SYMBOLS: <ls_bseg> TYPE bseg. READ TABLE bool_data-bseg ASSIGNING <ls_bseg> WITH KEY bschl = lc_75. IF SY-SUBRC EQ 0. clear lv_vbund. SELECT SINGLE vbund FROM anla INTO lv_vbund WHERE bukrs EQ bkpf-bukrs AND anln1 EQ <ls_bseg>-anln1 AND annl2 EQ <ls_bseg>-anln2. ENDIF. Y por si acaso, transferí la petición a Soporte con desarrolladores que verifiquen y hagan lo requerido. Gracias a todos.
__________________
María Alejandra Fernández Consultor Senior FI-CO |
Herramientas | Buscar en Tema |
Desplegado | |
|
|