PDA

Ver la Versión Completa : Campos de cliente en BAPI_PO_CREATE1


yomademetro
09/10/12, 12:14:32
Hola a todos.
Estoy utilizando la función BAPI_PO_CREATE1 para crear de forma automática pedidos en SAP, el problema me surge cuando tengo algunos campos de cliente obligatorios para generarlos, no se muy bien como pasarle estos campos a la función.

Estoy intentando utilizar la estructura EXTENSIONIN pero no tengo claro cómo utilizarla.

En mi caso se trata de un campo de cliente a nivel de posición de pedido, que está incluido en la estructura CI_EKPODB dentro de la EKPO.

Os agradecería mucho si me pudierais explicar cómo utilizar la estructura en la llamada a la BAPI o bien algún ejemplo de cómo se deben pasar los customer-field a la BAPI.

muchísimas gracias.

crounly
11/10/12, 15:47:22
Añade el mismo campo a CI_EKPODBX , este include lo utiliza la estructura de MEPOITEMX y así se puede chequear con 'X'.

Aquí te dejo un código, espero que te sirva:

DATA:
bapi_te_mepoitem LIKE bapi_te_mepoitem,
bapi_te_mepoitemx LIKE bapi_te_mepoitemx.

* cargar los valores
bapi_te_mepoitem-po_item = '00010'.
bapi_te_mepoitem-<Tu campo> = <DATO>.

MOVE 'BAPI_TE_MEPOITEM' TO l_extensionin-structure.
MOVE bapi_te_mepoitem TO l_extensionin-valuepart1.
APPEND l_extensionin.

*Informar que el campo Z debe ser leido por la bapi
bapi_te_mepoitemx-po_item = '00010'.
bapi_te_mepoitemx-<Tu campo>= 'X'. "<--here the "difference"

MOVE 'BAPI_TE_MEPOITEMX' TO l_extensionin-structure.
MOVE bapi_te_mepoitemx TO l_extensionin-valuepart1.
APPEND l_extensionin.

La subrutina que mueve los extensionin esta en el include L2012F23 por si tienes que debuggear para ver lo que hace.

Suerte

yomademetro
17/10/12, 06:36:37
muchas gracias. voy a intentarlo ahora mismo... pero seguro que funciona....:)

yomademetro
26/10/12, 10:24:44
muchísimas gracias... ya lo he conseguido, me falta incluir el campo en la estructura que comentabas y ya está perfecto.

Joscar17
29/10/20, 13:35:49
Buenas tardes,

Llevo varios días detrás de una incidencia similar, se ha creado los campos en las estructuras CI_EKPODB y CI_EKPODBX, había varios campos creados con anterioridad y se modifican perfectamente al hacer la contabilización pero el nuevo campo no. He estado revisando el funcionamiento en el include L2012F23 y lo hace bien.

El campo desde la me22n es modificable por lo que entiendo que funciona correctamente. Es posible que haya que realizar algún cambio que se me haya pasado por alto???

Muchas gracias de antemano.

Un saludo!

Joscar17
04/11/20, 17:14:26
Buenas tardes,

Sigo sin poder contabilizar este campo Z, he estado debbugueando un rato y he visto dentro de la BAPI que al pasar los datos del la estructura extenxionin a la extensionout el campo no se rellena porque no se lo trae dentro de un método que obtiene los valores de esa extructura.

Se os ocurre que haya que configurar los campos Z en algun sitio???

llevo varios días detrás de esto y no entiendo que sea tan complicado el proceso.

Un saludo y gracias