Hoy hablaré sobre un escenario en el que trato de extraer datos de un BAPI extractor llamado BAPI_IM_AQUÍ de ECC.
si pones el BAPI FM como fuente de un extractor de datos genérico obtendrá el error de E_T_DATOS tabla mencionada a continuación –
Solución : No puede tomar datos directamente de BAPI. escriba un módulo funcional y coloque los datos extraídos de BAPI en una tabla temporal y luego cree una fuente de datos genérica a partir de ahí. Consuma la fuente de datos en SAP BW y continúe con el modelado de BW.
Pasos :
1.Crear un módulo funcional a partir de SE37 en ECC donde el BAPI existe y poner el BAPI extraído DATOS en una tabla temporal. Si quieres hacerlo desde cero, llevará tiempo. Mejor copia un método preexistente RSAX_BIW_GET_DATA y personalizado de acuerdo a sus necesidades.
Puede dar el nuevo nombre de función como ZFM_BAPI_DATA y también seleccione un grupo funcional ZFM_BPI que está disponible en su paisaje.
2. Después de eso, abra el FM y elimine todo el código y personalice su código. Pero para extraer el FM como fuente de datos genéticos, se requiere la tabla como E_T_DATA. Vaya a la pestaña Tabla y agregue estas dos tablas.
Nota : El tipo de asociación para E_T_DATOS será la misma estructura que regrese por el BAPI BAPI_IM_AQUÍ al invocar la BAPI desde nuestros sistemas.
3. Ahora, en la sección de código, elimine todo el código precargado y comience desde el principio.
Al igual que el siguiente código, puedes personalizarlo.
** Extract BAPI data by invocking it **************************
CALL FUNCTION 'BAPI_IM_HERE'
EXPORTING
system_id = lf_lsys_id
posting_date = lf_postng_dt
TABLES
output_data = lt_data.
** End of BAPI Extraction *************************************
** Start loop the extrated structure from BAPI****************
LOOP AT lt_data ASSIGNING FIELD-SYMBOL(<fs_data>).
ls_data-sales_order = <fs_data>-sales_order.
ls_data-sales_order = <fs_data>-order_date.
ls_data-sales_order = <fs_data>-quantity.
APPEND ls_data TO e_t_data.
ENDLOOP.
*************** End loop *************************************
4. use RSO2 y cree una fuente genérica de datos de FM.
Ahora no recibe ningún error al activar la fuente de datos.
5. Después de activar, vaya a RSA3 y verifique los datos.
6. Finalmente, replique los datos en SAP BW sid usando RSDS.
Espero que esto ayude.
Calle Eloy Gonzalo, 27
Madrid, Madrid.
Código Postal 28010
Paseo de la Reforma 26
Colonia Juárez, Cuauhtémoc
Ciudad de México 06600
Real Cariari
Autopista General Cañas,
San José, SJ 40104
Av. Jorge Basadre 349
San Isidro
Lima, LIM 15073