#1
|
|||
|
|||
Necesito algún ejemplo con la BAPI_ACC_GL_POSTING_POST
Hola a todos,
soy nuevo en esto de sap y una de las primeras tareas que me han encomendado es crear una interfase de carga de ficheros de texto plano que contienen datos para la contabilización (cobros, facturas, producción). Una vez leídos los datos y guardados en tablas internas, he de contabilizar las entradas que he obtenido, y aquí es donde comienzan los problemas. Sé que tengo que utlizar la bapi bapi_acc_gl_posting_post, pero aparte de eso no tengo ni idea de cómo hacerlo. Alguien tiene algún ejemplo de utilización de dicha bapi? Se lo agradecería mucho. Llevo 3 semanas en este trabajo y no quiero causar mala impresión. Un saludo a todos! |
#2
|
|||
|
|||
Un empujoncito.
Gracias! |
#3
|
|||
|
|||
Puedes utilizar LSMW?
Hola, tengo un ejemplo de uso de esta BAPI utilizando LSMW (Legacy System Manager Workbench), la use para convertir los asientos de saldos iniciales a partir de archivos TXT.
Avisame si te serviria y te envio la documentación. Saludos |
#4
|
||||
|
||||
Aquí tienes un ejemplo, usalo con sabiduría .
report z_test_bapi_gl_ac_doc LINE-SIZE 200. data: obj_type like bapiache02-obj_type, obj_key like bapiache02-obj_key, obj_sys like bapiache02-obj_sys, documentheader like bapiache08, accountgl like bapiacgl08 occurs 0 with header line, currencyamount like bapiaccr08 occurs 0 with header line, return like bapiret2 occurs 0 with header line, extension1 like bapiextc occurs 0 with header line, t_edidd like edidd occurs 0 with header line, bapi_retn_info like bapiret2 occurs 0 with header line. data: error_flag. *documentheader-obj_type = 'BKPFF'. *documentheader-obj_key = '18000000002002004'. *documentheader-obj_type = 'BKPFF'. *documentheader-obj_key = '180000000010002004'. *documentheader-obj_sys = 'RD1CLNT200'. documentheader-username = sy-uname. documentheader-header_txt = 'Test using BAPI'. documentheader-comp_code = '1000'. *documentheader-ac_doc_no *documentheader-fisc_year = '2005'. documentheader-doc_date = sy-datum. documentheader-pstng_date = sy-datum. *documentheader-trans_date *documentheader-fis_period documentheader-doc_type = 'SA'. *documentheader-ref_doc_no *documentheader-compo_acc *documentheader-reason_rev accountgl-itemno_acc = '1'. accountgl-gl_account = '0000160100'. accountgl-comp_code = '1000'. accountgl-pstng_date = sy-datum. accountgl-doc_type = 'SA'. accountgl-profit_ctr = '0000010000'. append accountgl. accountgl-itemno_acc = '2'. accountgl-gl_account = '0000160100'. accountgl-comp_code = '1000'. accountgl-pstng_date = sy-datum. accountgl-doc_type = 'SA'. accountgl-profit_ctr = '0000010000'. append accountgl. *AC_DOC_NO *FISC_YEAR *FIS_PERIOD *accountgl-STAT_CON = 'X'. *REF_KEY_1 *REF_KEY_2 *REF_KEY_3 *CUSTOMER *VENDOR_NO *ALLOC_NMBR *ITEM_TEXT *BUS_AREA *COSTCENTER *ACTTYPE *ORDERID *ORIG_GROUP *COST_OBJ *PROFIT_CTR *PART_PRCTR *WBS_ELEMENT *NETWORK *ROUTING_NO *ORDER_ITNO currencyamount-itemno_acc = '1'. currencyamount-currency = 'GBP'. currencyamount-amt_doccur = '100.00'. append currencyamount. currencyamount-itemno_acc = '2'. currencyamount-currency = 'GBP'. currencyamount-amt_doccur = '-100.00'. append currencyamount. * call BAPI-function in this system call function 'BAPI_ACC_GL_POSTING_POST' exporting documentheader = documentheader * importing * obj_type = obj_type * obj_key = obj_key * obj_sys = obj_sys tables accountgl = accountgl currencyamount = currencyamount return = return extension1 = extension1 exceptions others = 1. if sy-subrc <> 0. message e999(re) with 'Problem occured'. else. loop at return. if not return is initial. clear bapi_retn_info. move-corresponding return to bapi_retn_info. if return-type = 'A' or return-type = 'E'. error_flag = 'X'. endif. append bapi_retn_info. endif. endloop. if error_flag = 'X'. message e999(re) with 'Problem occured'. rollback work. else. commit work. endif. endif. Un saludo a todo el foro de sap.
__________________
Si precisas una mano, recuerda que yo tengo dos. |
#5
|
|||
|
|||
Muchísimas gracias; ya lo he probado cambiando cuentas, sociedad,... para mi sistema pero no me funciona.
He probado directamente la bapi y después de muchos intentos llego a un mensaje parecido a E F5 702 Saldo en la moneda de transacción Estoy buscando una configuración de parámetros que funcione, aunque sea de prueba y nada, no lo consigo. SNIF. |
#6
|
|||
|
|||
Asiento desbalanceado
Vanquish,
El error que te da "Saldo en la moneda de transacción Nº mensaje: F5702" es porque el asiento no esta balanceado, es decir, la suma del debe y el haber no son iguales. Verifica eso que vas bien. Saludos |
#7
|
|||
|
|||
Ok, después de muchas vueltas conseguí que funcionara. Era una historia rara que obligaba a pasar por una user exit usando una entrada de EXTENSION1...algo que a mi corta experiencia se le escapa.
Muchas gracias a todos por las respuestas!!! |
#8
|
|||
|
|||
Hola,
creo que tengo un problema parecido, cuál es la Exit que estás utilizando? Gracias! |
#9
|
|||
|
|||
Cuando tengas rellenadas las tablas con los datos necesarios (header, account, account...) añade ésto:
* Añadir tax code (para pasar a través del user exit) extension1-field1 = 'BAPI CALL'. APPEND extension1. y en la llamada a la bapi le pasas la tabla extension1. Así me ha funcionado a mi. |
#10
|
||||
|
||||
Hola Vanquish,
Realmente os ha funcionado esto? Yo lo he revisado y la bapi mencionada, la tengo vacia, no tiene codigo. Una vez añadidas las lineas en la tabla Extension1 ¿os ha tocado modificar algo mas o en la bapi? A mi me sale este error, pq cada documento financiero que paso a la bapi, solo lleva 1 posicion en BSEG con lo cual siempre hay descuadre.
__________________
Carpe Diem !! Úlima edición por dmgman fecha: 24/10/06 a las 09:37:46. |
Herramientas | Buscar en Tema |
Desplegado | |
|
|