#1
|
|||
|
|||
Ejemplo De La Bapi_po_create1
Saludos a todos,
De pronto alguien me podría regalar el código ejemplo de la BAPI_PO_CREATE1, para tomarla como modelo, necesito crear Ordenes de Compra a partir de la SOLPED que genera los Pedidos de Venta. Les agradeceria que fuera lo mas completo posibles, Gracias de ante mano, por la ayudita. |
#2
|
|||
|
|||
Hola, amigo, mira este link:
saludos
__________________
Lo unico que se, es que no se nada..... |
#3
|
|||
|
|||
a ver si te sirve!!!
Con esta BAPI vamos a crearnos un pedido de Compras...
Primero rellenamos la Cabecera de la BAPI. Código: FORM rellenar_bapi_cab. CLEAR l_poheader. CLEAR l_poheaderx. l_poheader-comp_code = ekko-bukrs. l_poheader-doc_type = 'NB'. l_poheader-creat_date = sy-datlo. l_poheader-created_by = sy-uname. l_poheader-vendor = ekko-lifnr. l_poheader-purch_org = ekko-ekorg. l_poheader-pur_group = ekko-ekgrp. l_poheader-doc_date = sy-datum. l_poheaderx-comp_code = 'X'. l_poheaderx-doc_type = 'X'. l_poheaderx-creat_date = 'X'. l_poheaderx-created_by = 'X'. l_poheaderx-vendor = 'X'. l_poheaderx-purch_org = 'X'. l_poheaderx-pur_group = 'X'. l_poheaderx-doc_date = 'X'. ENDFORM. " rellenar_bapi_cab Ahora rellenamos las posiciones Código: FORM rellenar_bapi_pos. DATA: pos_rep LIKE ekpo-ebelp. * Coger nombre material. SELECT SINGLE * FROM makt WHERE matnr = i_pedido-matnr AND spras = sy-langu. SELECT SINGLE * FROM mara WHERE matnr = i_pedido-matnr. CLEAR pos_rep. LOOP AT i_pedido. CLEAR: l_t_poitem, l_t_poitemx, l_t_poschedule, l_t_poschedulex. ADD 10 TO pos_rep. l_t_poitem-po_item = pos_rep. l_t_poitem-short_text = makt-maktx. l_t_poitem-material = i_pedido-matnr. l_t_poitem-plant = ekpo-werks. l_t_poitem-stge_loc = ekpo-lgort. l_t_poitem-quantity = i_pedido-menge. l_t_poitem-po_unit = mara-meins. l_t_poitem-item_cat = '2'. l_t_poitem-agreement = i_pedido-konnr. l_t_poitem-agmt_item = i_pedido-ktpnr. APPEND l_t_poitem. l_t_poitemx-po_item = pos_rep. l_t_poitemx-po_itemx = 'X'. l_t_poitemx-short_text = 'X'. l_t_poitemx-material = 'X'. l_t_poitemx-plant = 'X'. l_t_poitemx-stge_loc = 'X'. l_t_poitemx-quantity = 'X'. l_t_poitemx-po_unit = 'X'. l_t_poitemx-item_cat = 'X'. IF NOT i_pedido-konnr IS INITIAL. l_t_poitemx-agreement = 'X'. l_t_poitemx-agmt_item = 'X'. ENDIF. APPEND l_t_poitemx. l_t_poschedule-po_item = pos_rep. l_t_poschedule-delivery_date = i_pedido-eeind. l_t_poschedule-quantity = i_pedido-menge. l_t_poschedule-deliv_time = sy-uzeit. APPEND l_t_poschedule. l_t_poschedulex-po_item = pos_rep. l_t_poschedulex-po_itemx = 'X'. l_t_poschedulex-delivery_date = 'X'. l_t_poschedulex-quantity = 'X'. l_t_poschedulex-deliv_time = 'X'. APPEND l_t_poschedulex. ENDFORM. " rellenar_bapi_pos Ejecutamos la BAPI. Código: FORM crear_pedido_compra . CALL FUNCTION 'BAPI_PO_CREATE1' EXPORTING poheader = l_poheader poheaderx = l_poheaderx IMPORTING exppurchaseorder = d_ebeln TABLES return = l_t_return poitem = l_t_poitem poitemx = l_t_poitemx poschedule = l_t_poschedule poschedulex = l_t_poschedulex. CALL FUNCTION 'BAPI_TRANSACTION_COMMIT' EXPORTING wait = 'X'. ENDFORM. " crear_pedido_compra |
Herramientas | Buscar en Tema |
Desplegado | |
|
|