Ver Mensaje Individual
  #3  
Viejo 26/09/06, 13:42:28
conrad10ar conrad10ar is offline
Banned
 
Fecha de Ingreso: mar 2006
Mensajes: 296
Cool

Hola, espero les sea de ayuda.

1) deben declarar las tablas que le van a pasar a la BAPI.

DATA BEGIN OF t_cabecera OCCURS 0.
INCLUDE STRUCTURE BAPIACHE09.
DATA END OF t_cabecera.

DATA: wa_cabecera LIKE BAPIACHE09.

DATA BEGIN OF t_poscliente OCCURS 0.
INCLUDE STRUCTURE BAPIACAR09.
DATA END OF t_poscliente.

DATA BEGIN OF t_posprove OCCURS 0.
INCLUDE STRUCTURE ZBAPIACAP09.
DATA END OF t_posprove.

DATA BEGIN OF t_impuesto OCCURS 0.
INCLUDE STRUCTURE BAPIACTX09.
DATA END OF t_impuesto.

DATA BEGIN OF t_importes OCCURS 0.
INCLUDE STRUCTURE BAPIACCR09.
DATA END OF t_importes.

DATA BEGIN OF t_retenciones OCCURS 0.
INCLUDE STRUCTURE BAPIACEXTC.
DATA END OF t_retenciones.

DATA BEGIN OF t_log OCCURS 0.
INCLUDE STRUCTURE BAPIRET2.
DATA END OF t_log.


2) Una vez declaradas, deben poner los datos que necesiten en cada uno de sus campos. (para ver más detalles de los campos, entren a la se37 y miren el IMPORT de la función)

3) Una vez que cargaron los datos, estos pueden ser levantando un archivo, harcodeandolos, etc, llaman a la BAPI.

CALL FUNCTION 'Z_BAPI_ACC_DOCUMENT_POST'
EXPORTING
DOCUMENTHEADER = wa_cabecera
* Prueba copia de bapi_acc_posting_document_post
* IMPORTING
* obj_key = l_obj_key
TABLES
* ACCOUNTGL =
ACCOUNTRECEIVABLE = t_poscliente
ACCOUNTPAYABLE = t_posprove
ACCOUNTTAX = t_impuesto
CURRENCYAMOUNT = t_importes
* CRITERIA =
* VALUEFIELD =
EXTENSION1 = t_retenciones
RETURN = t_log
* PAYMENTCARD =
* CONTRACTITEM =
* EXTENSION2 =
* REALESTATE =

Llaman por último esta función y listo.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'.

Espero les halla servido, ante cualquier estoy a su disposición.
Responder Con Cita