Un Usuario hizo la siguiente pregunta
Queridos todos, queridos
¿Alguien puede darme un código de muestra en ese BAPI_SALESORDER_CREATEFROMDAT2 con la línea de programación y la condición?
Sobre,
Equipo
2 respuesta
Ex miembro
Hola,
compruebe este código de muestra.
PARAMETERS: p_auart TYPE auart OBLIGATORY. PARAMETERS: p_vkorg TYPE vkorg OBLIGATORY. PARAMETERS: p_vtweg TYPE vtweg OBLIGATORY. PARAMETERS: p_spart TYPE vtweg OBLIGATORY. PARAMETERS: p_sold TYPE kunnr OBLIGATORY. PARAMETERS: p_ship TYPE kunnr OBLIGATORY. *ITEM PARAMETERS: p_matnr TYPE matnr OBLIGATORY. PARAMETERS: p_menge TYPE kwmeng OBLIGATORY. PARAMETERS: p_plant TYPE werks_d OBLIGATORY. PARAMETERS: p_itcat TYPE pstyv OBLIGATORY. * DATA DECLARATIONS. DATA: v_vbeln LIKE vbak-vbeln. DATA: header LIKE bapisdhead1. DATA: headerx LIKE bapisdhead1x. DATA: item LIKE bapisditem OCCURS 0 WITH HEADER LINE. DATA: itemx LIKE bapisditemx OCCURS 0 WITH HEADER LINE. DATA: partner LIKE bapipartnr OCCURS 0 WITH HEADER LINE. DATA: return LIKE bapiret2 OCCURS 0 WITH HEADER LINE. DATA: lt_schedules_inx TYPE STANDARD TABLE OF bapischdlx WITH HEADER LINE. DATA: lt_schedules_in TYPE STANDARD TABLE OF bapischdl WITH HEADER LINE. * HEADER DATA header-doc_type = p_auart. headerx-doc_type="X". header-sales_org = p_vkorg. headerx-sales_org = 'X'. header-distr_chan = p_vtweg. headerx-distr_chan = 'X'. header-division = p_spart. headerx-division = 'X'. headerx-updateflag = 'I'. * PARTNER DATA partner-partn_role="AG". partner-partn_numb = p_sold. APPEND partner. partner-partn_role="WE". partner-partn_numb = p_ship. APPEND partner. * ITEM DATA itemx-updateflag = 'I'. item-itm_number="000010". itemx-itm_number="X". item-material = p_matnr. itemx-material="X". item-plant = p_plant. itemx-plant="X". item-target_qty = p_menge. itemx-target_qty = 'X'. item-target_qu = 'EA'. itemx-target_qu = 'X'. item-item_categ = p_itcat. itemx-item_categ = 'X'. APPEND item. APPEND itemx. * Fill schedule lines lt_schedules_in-itm_number="000010". lt_schedules_in-sched_line="0001". lt_schedules_in-req_qty = p_menge. APPEND lt_schedules_in. * Fill schedule line flags lt_schedules_inx-itm_number="000010". lt_schedules_inx-sched_line="0001". lt_schedules_inx-updateflag = 'X'. lt_schedules_inx-req_qty = 'X'. APPEND lt_schedules_inx. * Call the BAPI CALL FUNCTION 'BAPI_SALESDOCU_CREATEFROMDATA1' EXPORTING sales_header_in = header sales_header_inx = headerx IMPORTING salesdocument_ex = v_vbeln TABLES return = return sales_items_in = item sales_items_inx = itemx sales_schedules_in = lt_schedules_in sales_schedules_inx = lt_schedules_inx sales_partners = partner. * Check the return table. LOOP AT return WHERE type="E" OR type="A". EXIT. ENDLOOP. IF sy-subrc = 0. WRITE: / 'Error in creating document'. ELSE. COMMIT WORK AND WAIT. WRITE: / 'Document ', v_vbeln, ' created'. ENDIF.
Gracias
Naren
Ex miembro
Hola,
Pedido de venta: crear un pedido de venta
FM – BAPI_SALESORDER_CREATEFROMDAT2
Funcionalidad
Puede utilizar este método para crear pedidos de venta. Debe introducir los datos del encabezado del pedido de cliente (mediante la estructura ORDER_HEADER_IN) y los datos del socio (mediante la tabla ORDER_PARTNERS) como parámetros de entrada.
Ingrese los detalles del artículo a través de la tabla ORDER_ITEMS_IN. Puede asignar números de artículo manualmente, completando los campos relevantes, o el sistema, de acuerdo con la configuración de Personalización, lo hace dejando los campos relevantes en blanco.
Si tiene elementos configurables, debe ingresar los datos de configuración en las tablas ORDER_CFGS_REF, ORDER_CFGS_INST, ORDER_CFGS_PART_OF y ORDER_CFGS_VALUE.
Las tarjetas de crédito se pueden transferir a través de la estructura BAPICCARD, por un lado, datos de identificación de la tarjeta, por otro lado, detalles de una transacción que ocurrió en un sistema externo.
Una vez que haya creado correctamente la orden de venta, recibirá el número de documento (campo SALESDOCUMENT). Cualquier posible error se informará mediante el parámetro RETURN.
Si no se ha creado un área de ventas en el encabezado de la orden de venta, el sistema crea el área de ventas de la parte vendedora a la parte o del barco a la parte, ingresada en la tabla de socios. Si no se puede crear un área de ventas clara, recibirá un mensaje del sistema y no se creará la orden de venta.
Notas
1. Entradas obligatorias:
ORDER_HEADER_IN: DOC_TYPE Tipo de documento de ventas
SALES_ORG Organización de ventas
DISTR_CHAN Canal de distribución
División DIVISION
ORDER_PARTNERS …: PARTN_ROLE Rol de socio, SP vendido a la fiesta
PARTN_NUMB Número de cliente
ORDER_ITEMS_IN ..: CONTENT Número de asunto
2. Destinatario del envío:
Si no hay una fiesta de envío a entrada, utilice lo siguiente: Envío a fiesta =
fiesta vendida a fiesta.
3. Control:
La BAPI no tiene un compromiso de base de datos. Esto significa que la aplicación correspondiente debe dejar el compromiso, para que se pueda realizar en la base de datos. El BAPI BAPI_TRANSACTION_COMMIT está disponible para este propósito.
4. Palabras clave alemanas:
Las siguientes palabras clave deben introducirse en alemán, independientemente de
el idioma de inicio de sesión:
DOC_TYPE Tipo de documento de ventas, por ejemplo: TA para pedido estándar
PARTN_ROLE El rol del socio, por ejemplo: NOSOTROS para el socio desde el barco hasta la fiesta
más información
Puede encontrar más información en el OSS. La nota 93091 contiene información general sobre las BAPI en SD.
Parámetros
VENTASDOCUMENTIN
ORDER_HEADER_IN
ORDER_HEADER_INX
REMITENTE
BINARY_RELATIONSHIPTYPE
INT_NUMBER_ASSIGNMENT
BEHAVE_WHEN_ERROR
INTERRUPTOR_LÓGICO
PRUEBA DE FUNCIONAMIENTO
CONVERTIR
DOCUMENTO DE VENTAS
DESCRIPCIÓN
ORDER_ITEMS_IN
ORDER_ITEMS_INX
ORDER_PARTNERS
ORDER_SCHEDULES_IN
ORDER_SCHEDULES_INX
ORDER_CONDITIONS_IN
ORDER_CONDITIONS_INX
ORDER_CFGS_REF
ORDER_CFGS_INST
ORDER_CFGS_PART_OF
ORDER_CFGS_VALUE
ORDER_CFGS_BLOB
ORDER_CFGS_VK
ORDER_CFGS_REFINST
TARJETA_PEDIDO
ORDER_TEXT
ORDER_KEYS
EXTENSIÓN EN
SOCIOS
Excepciones
Código de muestra:
************ PEDIDO DE VENTA DE CREACIÓN DE ENTRADA.
PARÁMETROS: p_auart TIPO auart OBLIGATORIO.
PARÁMETROS: p_vkorg TIPO vkorg OBLIGATORIO.
PARÁMETROS: p_vtweg TIPO vtweg OBLIGATORIO.
PARÁMETROS: p_spart TIPO vtweg OBLIGATORIO.
PARAMETROS: p_sold TYPE kunnr OBLIGATORIO.
PARÁMETROS: p_ship TIPO kunnr OBLIGATORIO.
* ARTICULO
PARÁMETROS: p_matnr TIPO matnr OBLIGATORIO.
PARÁMETROS: p_menge TIPO kwmeng OBLIGATORIO.
PARÁMETROS: p_plant TYPE werks_d OBLIGATORIO.
PARÁMETROS: p_itcat TIPO pstyv OBLIGATORIO.
DECLARACIÓN DE DATOS.
DETALLES: v_vbeln COMO vbak-vbeln.
DETALLES: header Likes bapisdhead1.
DETALLES: headerx COMO bapisdhead1x.
DETALLES: artículo COMO bapisditem OCURRE 0 LE HEADER LINE.
DETALLES: mírx PUEDO bapisditemx OCURRE 0 LE HEADER LINE.
DETALLES: PUEDO bapipartnr OCURRE 0 CON HEADER LINE.
DETALLES: enviar LIKE bapiret2 OCURS 0 BY HEADER LINE.
DETALLES: lt_schedules_inx TABLA ESTÁNDAR ESCRIBA EL bapischdlx
LÍNEA LÍNEA DE ENCABEZADO
DETALLES: lt_schedules_in TABLA DE ESTÁNDARES DE TIPO DE MUERTE
LÍNEA LÍNEA DE ENCABEZADO
DETALLES DEL ENCABEZADO
header-doc_type = p_auart.
headerx-doc_type = «X».
header-sales_org = p_vkorg.
headerx-sales_org = ‘X’.
header-distr_chan = p_vtweg.
headerx-distr_chan = ‘X’.
sección-encabezado = p_spart.
headerx-Division = ‘X’.
headerx-updateflag = ‘Yo’.
DETALLES DE LA ASOCIACIÓN
socio-partn_role = «AG».
socio-partn_numb = p_vendido.
APÉNDICE socio.
partner-partn_role = «NOSOTROS».
socio-partn_numb = p_ship.
APÉNDICE socio.
DETALLES DEL ARTÍCULO
itemx-updateflag = ‘Yo’.
item-itm_number = «000010».
itemx-itm_number = «X».
contenido del artículo = p_matnr.
itemx-material = «X».
item-plant = p_plant.
itemx-plant = «X».
item-target_qty = p_menge.
itemx-target_qty = ‘X’.
item-target_qu = ‘EA’.
itemx-target_qu = ‘X’.
item-item_categ = p_itcat.
itemx-item_categ = ‘X’.
APÉNDICE párrafo.
APÉNDICE párrafo x.
Número de líneas de horario
lt_schedules_in-itm_number = «000010».
lt_schedules_in-sched_line = «0001».
lt_schedules_in-req_qty = p_menge.
APÉNDICE lt_schedules_in.
Número de banderas de línea de horario
lt_schedules_inx-itm_number = «000010».
lt_schedules_inx-sched_line = «0001».
lt_schedules_inx-updateflag = ‘X’.
lt_schedules_inx-req_qty = ‘X’.
APÉNDICE lt_schedules_inx.
Llame a la BAPI
FUNCIÓN DE APLICACIÓN ‘BAPI_SALESDOCU_CREATEFROMDATA1’
EXPORTACIONES
sales_header_in = encabezado
sales_header_inx = headerx
IMPORTANTE
salesdocument_ex = v_vbeln
MESAS
retorno = retorno
sales_items_in = artículo
sales_items_inx = itemx
sales_schedules_in = lt_schedules_in
sales_schedules_inx = lt_schedules_inx
sales_partners = socio.
Revisa la mesa plegable.
RETORNO DE BUCLE DONDE tipo = «E» O tipo = «A».
EL CAMINO DE SALIDA.
ENDLOOP.
SI sy-subrc = 0.
ESCRIBIR: / ‘Error al crear el documento’.
DEMÁS.
TRABAJO Y DISPONIBILIDAD DEL COMITÉ.
ESCRIBIR: / ‘Documento’, v_vbeln, ‘creado’.
TERMINARA SI.
Recompensa puntos si la respuesta es útil
Sobre
Gokul