#1
|
|||
|
|||
Bapi Bapi_acc_document_post
Hola Amigos
alguien tiene algun ejemplo de como utilizar esta bapi (BAPI_ACC_DOCUMENT_POST) soy nuevo en abap y me pidieron esto con urgencia alguin me puede ayudar |
#2
|
|||
|
|||
A mi también me interesa mucho.
Te lo subo. Saludos! |
#3
|
|||
|
|||
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. |
#4
|
|||
|
|||
Aclaración al anterior POST la llamada de la BAPI es sin 'Z_' y la estructura zbapiacap09 también es sin la Z delante.
|
#5
|
||||
|
||||
Hola, espero que me puedas echar un cable acerca de esta funcion. Mi problema es que no me graba el asiento, ¿¿en que parte de la funcion efectua las grabaciones???
__________________
Carpe Diem !! |
#6
|
|||
|
|||
Hola, si no te está dando ningún error, lo que te falta es agregar un commit work o ejecutar la "BAPI_TRANSACTION_COMMIT" después de la BAPI.
Espero que te sirva. |
#7
|
||||
|
||||
Hola conrad,
Te cuento estoy desarrollando un interfase, para la cual hasta que tenga datos fijos, estoy usando valores de prueba que me han pasado. Llamo a la funcion "BAPI_ACC_DOCUMENT_POST", y en la tabla de respuesta, me viene que se ha ejecutado correctamente. Y luego hago la funcion "BAPI_TRANSACTION_COMMIT". A partir de ahi, voy a ver el nuevo asiento por la transaccion FB03 y me dice que no existe. ¿Sabeis que campos son obligatorio pasarle a la funcion? O que otra cosa puede pasarme. Gracias.
__________________
Carpe Diem !! |
#8
|
|||
|
|||
Te paso los que puse y me anduvo:
document_header: BUS_ACT USERNAME HEADER_TXT COMP_CODE DOC_DATE PSTNG_DATE DOC_TYPE REF_DOC_NO REF_DOC_NO_LONG account_receivable: ITEMNO_ACC CUSTOMER REF_KEY_1 REF_KEY_2 COMP_CODE PMNTTRMS PAYMT_REF ALLOC_NMBR ITEM_TEXT BUSINESSPLACE PYMT_CUR_ISO PYMT_AMT account_payable: ITEMNO_ACC VENDOR_NO REF_KEY_1 REF_KEY_2 COMP_CODE PMNTTRMS ALLOC_NMBR ITEM_TEXT BUSINESSPLACE PYMT_AMT PYMT_CUR_ISO PAYMT_REF currency: ITEMNO_ACC CURRENCY AMT_DOCCUR AMT_BASE Espero te halla sido de ayuda. |
#9
|
||||
|
||||
Estoy revisando los campos que me comentas, de todas formas, pensandolo un poco digo yo que si me faltara algun campo me devolveria un error la funcion.
O eso supongo que seria lo logico. Si se os ocurre alguna otra posibilidad de solucionarlo, soy todo oidos.
__________________
Carpe Diem !! Úlima edición por dmgman fecha: 11/10/06 a las 10:26:22. |
#10
|
|||
|
|||
Hola,
Estoy en la misma tesitura: la bapi teóricamente me funciona ya que me devuelve un mensaje de éxito. Realizo la llamada a la BAPI_TRANSACTION_COMMIT y ésta devuelve 0, por lo que entiendo que no ha habido problemas en el commit. Pero al ir a la FB03 para visualizar el documento éste no existe. He mirado mil cosas y me estoy volviendo loco y no sé qué puede ser. Entiendo que si me faltara algo me devolvería algún código de error, pero nada de nada. Socorro!!! PD: un saludo. Editado: también lo estoy haciendo con valores de prueba, y los datos me vendrán de una interfase (archivo), al igual que el compañero. Úlima edición por rrr.Vanquish fecha: 11/10/06 a las 11:05:31. |
Herramientas | Buscar en Tema |
Desplegado | |
|
|