MQSeries XI inbound interface
Hi
We have legacy application which generates 250 CHAR TEXT messages and publishes to MQSeries. We are planning to use SAP-XI to read the messages and post them in SAP.
I have following questions
1)Can XI JMS adapter accept TEXT message instead of XML?
2)If XI can only accept XML message, can someone provide sample of XML message?
Thanks
Jayant
Hi jayant,
I assume you have read the XI online documentation, but just in case you don't: There's a chapter called "Configuring the Inbound JMS adapter" and another "Configuring the Outbound JMS adapter". These chapters clearly explains how to configure the adapters and also provide you with details about which message types the adapters can handle.
Below a small part of this explanation:
<i>On the JMS side, the JMS adapter knows the following messages:
-> JMSMessage
-> JMSTextMessage
-> JMSBytesMessage
-> JMSObjectMessage
-> JMSStreamMessage
-> JMSMapMessage
See the corresponding documentation on JMS for more information.
On the HTTP side, the JMS adapter knows the following message types:
-> TransportMessage
-> XMBMessage
This is an SAP-defined SOAP message with attachments that is logically based
on a multipart-MIME message.
The architecture of the JMS adapter is designed so that every JMS message can be
mapped to a HTTP message.</i>
http://help.sap.com/saphelp_xi20sr1/helpdata/en/14/80243b4a66ae0ce10000000a11402f/frameset.htm
Cheers,
Rob
Similar Messages
-
How to connect to third party using PI for outbound and inbound interfaces
Hello,
I have scenarios where I have data coming in from third party EDI subsystem and sent to SAP. And also from SAP to EDI subsystem. We need to send the XMLs to the EDI subsystema nd also receive XMLs.
Can someone please suggest the ways I can connect to EDI subsytem for both Outbound and Inbound interfaces.
ThanksHi Prabhu,
EDI file is different from the normal flat or xml file. Hope you understand the difference.
Now if your EDI subsytem has the capability of converting the xml file to edi file viceversa then create and receive the xml file from the EDI subsystem. For the xml file you may use the file adapter as an option.
If it doesnot have the capability then seeburger adapter needs to be used. This is not an inbuilt adapter. So your company needs to purchase it.
Regards,
---Satish -
Inbound interface was found more than once
Hi All,
Currently I'm working on a scenario wherein an invoice file is generated and created on FTP server, PI system picks up invoice (xml file) and sends to customer via EDI 810. The scenario failed in sxmb_moni and below is the error message.
<SAP:Category>XIServer</SAP:Category>
<SAP:Code area="IF_DETERMINATION">CX_ID_PLSRV</SAP:Code>
<SAP:P1>Inbound interface was found more than once (for same sender and receiver) for outbound interface urn:xyz:sap:components. 810_Outbound_Async_MI</SAP:P1>
<SAP:P2 />
<SAP:P3 />
<SAP:P4 />
<SAP:AdditionalText />
<SAP:ApplicationFaultMessage namespace="" />
<SAP:Stack>Error when determining the inbound interface: Inbound interface was found more than once (for same sender and receiver) for outbound interface urn:xyz:sap:components. 810_Outbound_Async_MI Inbound interface was found more than once (for same sender and receiver) for outbound interface
Can anyone help me out and provide some valuable suggestions.
Regards
FaisalHi Abdul,
Try to run the scenario in the ID.
There is one test tool to in directory for this, login to ID --> go to Tools --> Test configuration.
This will show you the error in the exact step.
-Supriya. -
File name with latest time stamp for inbound interface
Hi experts,
I have a requirement to develop an inbound interface in which I need to fetch the all files from the physical directory, and then retrieve the one with the latest timestamp. I found out the FM 'SUBST_GET_FILE_LIST', but this FM does not gives me the timestamp.
Is there any other FM/table through which this can be achieved?
Thanks,
Mohit.Can you please try with these functionmodules???
1)ITS_DIRECTORY_LIST_FILES
2)CL_GUI_FRONTEND_SERVICES=>DIRECTORY_LIST_FILES -
Need information on how to create Idoc Inbound Interfaces for Business Sys
Hi,
I'm losing it.
Can anyone point me to some documentation or an example of how to create inbound interfaces for Business Systems in PI 7.1.
Here's the scenario
I'm working on a B2B integration process which sends inbound idocs to an ECC 6.0 system.
I've created the Business System communication component but under the Inbound Interfaces it is blank.
I want to have MBGMCR.MGBMCR03 as an inbound interface.
But I forget how to get it there.
For Business components you can just add the inbound interface.
I've already defined the Business System in the SLD pointed it to the correct Tech System, imported the idoc definitions in the Enterprise Service Builder and set up IDX1, IDX2 to ensure the metadata exists in PI.
But for Business systems the hep says that it's got to come from the SLD.
Outbound/Inbound Interfaces
For each business system, the interfaces that are installed on the business system are also entered in the SLD. These interfaces are displayed in this frame. You cannot add any other interfaces.
I know I've done this before, but I can't remember how.
Cheers,
JohnHi John ,
Please have a look at the following links which might be of help to you
PI 7.1 IDocs interfaces act as operations
http://www.sdn.sap.com/irj/scn/weblogs;?blog=/pub/wlg/7933
/people/peter.gutsche/blog/2008/10/27/what146s-new-in-sap-netweaver-pi-71
There is a section in the following link on IDOC , have a look at the links in that section
https://wiki.sdn.sap.com/wiki/display/XI/ImportantBlogsand+Notes
Best Regards -
Error when trying multiple inbound interface determination for IDOC
Hi !
I have this scenario: File -> XI -> IDOC.
For each source file, I need to send multiple idoc packages, all to the same business system, but each package should be the result of different interface mappings.
All mappings have same source and target message types...e.g. source: MT_MyFile, target: CREMAS04.
To avoid creating a generic mapping program, we need to duplicate the current mapping program, make it handle the new case, and then add it as second interface mapping in Interface Determination, with same inbound interface, but different interface mapping, without conditions. All interface mapping should execute.
We are receving this error:
<SAP:Code area="IF_DETERMINATION">CX_ID_PLSRV</SAP:Code>
<SAP:P1>Inbound interface was found more than once (for same sender and receiver) for outbound interface urn:xxxxx/xxxx:.MI_xx_xxxxxxxx_xxx_xx</SAP:P1>
<SAP:Stack>Error when determining the inbound interface: Inbound interface was found more than once (for same sender and receiver) for outbound interface urn:xxxxx/xxxx:.MI_xx_xxxxxxxx_xxx_xx Inbound interface was found more than once (for same sender and receiver) for outbound interface urn:xxxxx/xxxx:.MI_xx_xxxxxxxx_xxx_xx</SAP:Stack>
Any clues?
Regards,
Matias.Hi Satish !
Thanks.
I need to send different IDOCs to SAME business system.
In Interface determination I need this:
Inbound Interface -
Condition -
Interface Mapping
<b>IF_1</b> no condition <b>M_1</b>
<b>IF_1</b> no condition <b>M_2</b>
I need to send BOTH IDOC packages to same business system.
But it keeps throwing the posted error.
Regards,
Matias. -
How to handle multiple inbound interfaces with WSDL messages
Hi All,
We have a synchronous: Abap Proxy -> XI -> WebService Scenario. The webservice has multiple SoapActions e.g. SearchForProduct_WithX, SearchForProduct_WithY each with different message types. We have tried to use the receiver determination to send the request to the correct soapaction using conditions e.g. if field X in the request is populated use SearchForProduct_WithX action/message.
But when we run it through the proxy we get this error:
<CODE>IF_DETERMINATION.TOO_MANY_IIFS_CASE_BE</CODE>
<ERRORTEXT>Multiple inbound interfaces not supported for synchronous calls</ERRORTEXT>
Does anybody know how we can get around this or how best to deal with the multiple soap actions per wsdl situation.Hi Yaghya,
We have used conditions in the Interface Determination. Interestingly if we use an HTTP sender adapter we can use this configuration ... but once we try and use ABAP proxies we get the previous error.
Another related question ... when we use the http adapter we get a connection time out exception. Same thing happens if we try and use the wsdl tester at /wsnavigator but we can open the wsdl through the browser. Any idea on this one?
Thanks for all your help. -
Error when determining the inbound interface
Hi Experts,
I have a Scenario, where i am using Multi mapping Scenario in DEBMDM IDOC from ECC to Xml_File-1(DEBMAS) and Xml_File-2(ADRMAS).
When i Execute the Scenario by sending the IDOC from ECC , i am getting the below error.
Runtime error
Error when determining the inbound interface: Inbound interface found several times (for same sender and receiver) for the outbound interface urn:sap-com:document:sap:idoc:messages.DEBMDM.DEBMDM06
Scenario Steps
1) No Condition in Interface Determination
2) 0..unbounded in Message Mapping and Operational Mapping.
3) E1KNA1 is mapped to E1KNA1
4) E1ADRMAS is mapped to E1ADRMAS
5) One Message Mapping and 1 Operational Mapping.
Thanks in Advance.
Sriram.Hello,
I have a Scenario, where i am using Multi mapping Scenario in DEBMDM IDOC from ECC to Xml_File-1(DEBMAS) and Xml_File-2(ADRMAS).
Since your scenario makes sure that the 2 files are created, there is no need to use multi-mapping. Rather, you can use an interface determination split. To do this:
1. declare xml_file1 as service interface 1, xml_file2 as service interface 2
2. do not change target occurrence in message mapping and operation mapping, maintain it as 1..1
( 2 operation mappings)
3. in ID, add the two service interfaces in your interface determination
At runtime, it will split into two inbound interfaces.
When i Execute the Scenario by sending the IDOC from ECC , i am getting the below error.
Runtime error
Error when determining the inbound interface: Inbound interface found several times (for same sender and receiver) for the outbound interface urn:sap-com:document:sap:idoc:messages.DEBMDM.DEBMDM06
Were you able to declare the 2 xml_files as two separate service interface(different names) in your operation mapping?
Hope this helps,
Mark -
Execution of Inbound Interfaces in EOIO for separate messages
Hello XI Experts
We have a proxy to jdbc scenario. The rquirement is like we have to delete all the data from the oracle table, insert the data records into the table,and call a stored procedure from xi which will be done sequentially. We will be sending the message in chunks of 10,000 records from the source i.e from the proxy i.e there will be different messages with unique messageids creted , directed to the receiver. we have thought of the following design to execute the messages in EOIO.There will be 3 inbound interfaces DeleteDataMsg,InsertDataMsg(0 to n), CallStoredProcMsg and three different mapings corresponding to the inbound interfaces with different condition rules.There will be always one outbound interface which will be triggered from proxy .
Is our design correct to implement the requirement?
Thanks & Regards
SabyasachiHi all.
After taking some hints from this thread, we have found out that the problem lied some where in the installation part of PI.
We've set up a basic script, local and not remote, and still the system would not execute that command.
The RWB logs showed successful processing but the Application Server logs were full of errors and stack traces regarding the execution of any command. A support note was raised with SAP support in order to trace these errors.
I'm therefore closing this question as the original question is not related with remote scripting.
Thanks all for your help.
Best regards,
Romeu -
Receiver Business System Connot find Inbound Interface - IDoc to File
Hi Everyone,
I am doing IDoc to File Scenario.....Idoc got triggered from SAP system and successfully posted to SAP PI.
Now when I check in T-Code IDX5 in PI, I got one message. When I double click that I am getting following error:
<SAP:Category>XIServer</SAP:Category>
<SAP:Code area="RCVR_DETERMINATION">NO_RECEIVER_CASE_ASYNC</SAP:Code>
<SAP:P1 />
<SAP:P2 />
<SAP:P3 />
<SAP:P4 />
<SAP:AdditionalText />
<SAP:Stack>No receiver could be determined</SAP:Stack>
<SAP:Retry>M</SAP:Retry>
</SAP:Error>
Also When I am selecting Receiving Inbound interface for Receiver system, I am not getting any interface by default.
Please help me out.
Thanks & Regards,
SudheerHi everyone,
Thanks for your quick responses.
Actually I am doing IDoc to File Scenario from blog which consists of Conditional Receiver Determination
"SNDPFC"
Here is the Explanation given in that blog:
In most instances, a new Receiver Determination would be created. However, given that in this scenario the combination of the sender service (i.e. u201CGL1u201D) and interface (i.e. u201CMATMAS.MATMAS04u201D) will be used by every student, each student will instead be adding their receiver service to an existing Receiver Determination
11. In the Condition column on that same line, left click on the question mark help icon
12. In the following Condition Editor pop-up window, left click on the help icon in the u201CLeft Operandu201D field
13. In the following Expression Editor pop-up window, select the u201CContext Objectu201D radio button
14. Use the drop drown to locate and select the u201CSNDPFCu201D field and u201COKu201D
15. Back in the Expression Editor, leave the u201C=u201D Operand as is
16. Enter your group number in the u201CRight Operandu201D and u201COKu201D
17. u201CSaveu201D and validate your u201CConfigured Receiversu201D as seen below:
I did not understood this Conditional RD.
Apart from this all configuration are correct.
Thanks,
Sudheer -
Hi All,
We are upgrading EBS from 11i instance to R 12.1.3. There is inbound interface for Recevibles transactions which fetches data from a data file and imports invoices after validation.
In 11i, tax_code column in ra_interface_lines_all was populated to import the tax details. But, in R12 tax_code column is not used. Can anyone tell me which columns we need to populate in ra_interface_lines_all table for tax details, i can see there are many tax related columns. I am deriving tax details from zx_rates_b table.
Which column should be used from this table as a input in tax_code(or other column) in ra_interface_lines_all.??
Thanks
Swapnil K.Hi Swapnil,
For Tax, value to be taken from ZX_TAXES_B.TAX
For TAX_STATUS_CODE, value to be taken from ZX_STATUS_B.TAX_STATUS_CODE
For TAX_RATE_CODE, value to be taken from ZX_RATES_B. TAX_RATE_CODE
For further details on the mapping refer to the oracle documentation from below reference ...
Description and Usage of Fields in RA_INTERFACE_LINES Table (Doc ID 1195997.1)
Regards,
Ivruksha -
Hi experts,
I am working on inbound interface for MATMAS04. I am using BAPI_MASTER_SAVEDATA to create material.
Now Can anyone suggest me any inbound function module that returns IDOC number. I am getting data in form of File. EDI_DATA_INCOMING doesnot return idoc number.
Thanks and regards
Neha Kapoorhi neha,
Creating a Function Module (Direct Inbound Processing)
This describes how to create a function module which is identified by the IDoc Interface using a new process code and called from ALE (field TBD52-FUNCNAME). Direct inbound processing using a function module (not using a workflow) always includes the ALE layer. This setting (processing with function module and ALE layer) is identified by the value 6 in the field TEDE2-EDIVRS, which is read by the function module IDOC_START_INBOUND. IDOC_START_INBOUND then calls ALE.
Example
FUNCTION IDOC_INPUT_TESTER.
""Globale Schnittstelle:
*" IMPORTING
*" VALUE(INPUT_METHOD) LIKE BDWFAP_PAR-INPUTMETHD
*" VALUE(MASS_PROCESSING) LIKE BDWFAP_PAR-MASS_PROC
*" EXPORTING
*" VALUE(WORKFLOW_RESULT) LIKE BDWFAP_PAR-RESULT
*" VALUE(APPLICATION_VARIABLE) LIKE BDWFAP_PAR-APPL_VAR
*" VALUE(IN_UPDATE_TASK) LIKE BDWFAP_PAR-UPDATETASK
*" VALUE(CALL_TRANSACTION_DONE) LIKE BDWFAP_PAR-CALLTRANS
*" TABLES
*" IDOC_CONTRL STRUCTURE EDIDC OPTIONAL
*" IDOC_DATA STRUCTURE EDIDD
*" IDOC_STATUS STRUCTURE BDIDOCSTAT
*" RETURN_VARIABLES STRUCTURE BDWFRETVAR
*" SERIALIZATION_INFO STRUCTURE BDI_SER
initialize SET/GET Parameter and internal tables
PERFORM INITIALIZE_ORGANIZATIONAL_DATA.
Move IDOC to internal tables of application
PERFORM READ_IDOC_TESTER.
call transaction Order Entry VA01
PERFORM CALL_VA01_IDOC_ORDERS USING ERRORCODE.
set status value
perform write_status_record using errorcode.
return values of function module
PERFORM RETURN_VARIABLES_FILL USING ERRORCODE.
ENDFUNCTION.
FORM INITIALIZE_ORGANIZATIONAL_DATA.
initialize SET/GET parameters
SET PARAMETER ID 'VKO' FIELD SPACE.
SET PARAMETER ID 'VTW' FIELD SPACE.
SET PARAMETER ID 'SPA' FIELD SPACE.
SET PARAMETER ID 'VKB' FIELD SPACE.
SET PARAMETER ID 'VKG' FIELD SPACE.
initialize internal tables
REFRESH BDCDATA.
CLEAR BDCDATA.
CLEAR BELEGNUMMER.
CLEAR ERRTAB.
REFRESH ERRTAB.
REFRESH XBDCMSGCOLL.
CLEAR XBDCMSGCOLL.
ENDFORM. " INITIALIZE_ORGANIZATIONAL_DATA
FORM READ_IDOC_TESTER.
PERFORM INITIALIZE_IDOC.
LOOP AT IDOC_DATA
WHERE DOCNUM = IDOC_CONTRL-DOCNUM.
CASE IDOC_DATA-SEGNAM.
header data
WHEN 'E1HEAD'.
MOVE IDOC_DATA-SDATA TO E1HEAD.
PERFORM PROCESS_SEGMENT_E1HEAD.
position data
WHEN 'E1ITEM'.
MOVE IDOC_DATA-SDATA TO E1ITEM.
PERFORM PROCESS_SEGMENT_E1ITEM.
ENDCASE.
ENDLOOP.
only when there were one or more items
CHECK FIRST NE 'X'.
APPEND XVBAP. "last one
ENDFORM. " READ_IDOC_TESTER
FORM INITIALIZE_IDOC.
CLEAR XVBAK.
REFRESH XVBAP.
CLEAR XVBAP.
POSNR = 0.
FIRST = 'X'.
ENDFORM. " INITIALIZE_IDOC
FORM PROCESS_SEGMENT_E1HEAD.
requested date of delivery
WLDAT = E1HEAD-WLDAT.
delivery date
XVBAK-BSTDK = E1HEAD-BSTDK.
customer number
XVBAK-KUNNR = E1HEAD-AUGEB.
order number
XVBAK-BSTNK = E1HEAD-BELNR.
division
XVBAK-SPART = E1HEAD-SPART.
distribution channel
XVBAK-VTWEG = E1HEAD-VTWEG.
sales organization
XVBAK-VKORG = E1HEAD-VKORG.
order type
XVBAK-AUART = E1HEAD-AUART.
do not fill incoterms (inco1, inco2)
customer function
CALL CUSTOMER-FUNCTION '001'
EXPORTING
PI_VBAK621 = XVBAK
IMPORTING
PE_VBAK621 = XVBAK
TABLES
PT_IDOC_DATA_RECORDS = IDOC_DATA.
ENDFORM. " PROCESS_SEGMENT_E1HEAD
FORM PROCESS_SEGMENT_E1ITEM.
position number
XVBAP-POSNR = XVBAP-POSNR + 1.
amount
XVBAP-WMENG = E1ITEM-MENGE.
unit
CALL FUNCTION 'ISO_TO_SAP_MEASURE_UNIT_CODE'
EXPORTING
ISO_CODE = E1ITEM-BMEINH
IMPORTING
SAP_CODE = XVBAP-VRKME
EXCEPTIONS
OTHERS = 0.
material number
XVBAP-MATNR = E1ITEM-LMATNR.
CALL CUSTOMER-FUNCTION '002'
EXPORTING
PI_VBAP621 = XVBAP
IMPORTING
PE_VBAP621 = XVBAP
TABLES
PT_IDOC_DATA_RECORDS = IDOC_DATA.
APPEND XVBAP.
ENDFORM. " PROCESS_SEGMENT_E1ITEM
FORM CALL_VA01_IDOC_ORDERS USING ERRORCODE.
call transaction first dynpro
PERFORM DYNPRO_START.
call transaction double-line entry
PERFORM DYNPRO_DETAIL2.
incoterms
PERFORM DYNPRO_HEAD_300.
call transaction item datas
PERFORM DYNPRO_POSITION.
PERFORM DYNPRO_SET USING 'BDC_OKCODE' 'SICH'.
determine input method
IF INPUT_METHOD IS INITIAL.
INPUT_METHOD = 'N'.
ENDIF.
call transaction VA01
CALL TRANSACTION 'VA01' USING BDCDATA
MODE INPUT_METHOD
UPDATE 'S'
MESSAGES INTO XBDCMSGCOLL.
errorcode = SY-SUBRC. " remember returncode for status update
ENDFORM. " CALL_VA01_IDOC_ORDERS
form write_status_record using errorcode.
FILL IDOC_STATUS
IDOC_STATUS-DOCNUM = IDOC_CONTRL-DOCNUM.
IF ERRORCODE = 0.
IDOC_STATUS-STATUS = BELEG_GEBUCHT. "value 53
GET PARAMETER ID 'AUN' FIELD BELEGNUMMER.
IDOC_STATUS-MSGID = 'V1'.
IDOC_STATUS-MSGNO = '311'.
IDOC_STATUS-MSGV1 = 'Terminauftrag'.
IDOC_STATUS-MSGV2 = BELEGNUMMER.
ELSE.
IDOC_STATUS-STATUS = BELEG_NICHT_GEBUCHT. "value 51
IDOC_STATUS-MSGID = SY-MSwGID.
IDOC_STATUS-MSGNO = SY-MSGNO.
IDOC_STATUS-MSGV1 = SY-MSGV1.
IDOC_STATUS-MSGV2 = SY-MSGV2.
IDOC_STATUS-MSGV3 = SY-MSGV3.
IDOC_STATUS-MSGV4 = SY-MSGV4.
ENDIF.
APPEND IDOC_STATUS.
ENDFORM.
FORM DYNPRO_START.
PERFORM DYNPRO_NEW USING PROGRAMM_AUFTRAG
DYNPRO-EINSTIEG
CHANGING LAST_DYNPRO.
ordertype
PERFORM DYNPRO_SET USING 'VBAK-AUART' XVBAK-AUART.
sales organization
PERFORM DYNPRO_SET USING 'VBAK-VKORG' XVBAK-VKORG.
Distribution channel
PERFORM DYNPRO_SET USING 'VBAK-VTWEG' XVBAK-VTWEG.
Division
PERFORM DYNPRO_SET USING 'VBAK-SPART' XVBAK-SPART.
Sales office
PERFORM DYNPRO_SET USING 'VBAK-VKBUR' XVBAK-VKBUR.
Sales group
PERFORM DYNPRO_SET USING 'VBAK-VKGRP' XVBAK-VKGRP.
ENDFORM. " DYNPRO_START
FORM DYNPRO_NEW USING PROGNAME
DYNPRONR
CHANGING LAST_DYNPRO.
CLEAR BDCDATA.
BDCDATA-PROGRAM = PROGNAME.
BDCDATA-DYNPRO = DYNPRONR.
BDCDATA-DYNBEGIN = 'X'.
APPEND BDCDATA.
LAST_DYNPRO = DYNPRONR.
ENDFORM. " DYNPRO_NEW
FORM DYNPRO_SET USING FELDNAME
FELDINHALT.
CLEAR BDCDATA.
CHECK FELDINHALT NE SPACE.
dynpro field name
BDCDATA-FNAM = FELDNAME.
contents
BDCDATA-FVAL = FELDINHALT.
APPEND BDCDATA.
ENDFORM. " DYNPRO_SET
FORM DYNPRO_DETAIL2.
okcode
PERFORM DYNPRO_SET USING 'BDC_OKCODE' PANEL-UER2.
fix dynpro number 4001
PERFORM DYNPRO_NEW USING PROGRAMM_AUFTRAG
'4001'
CHANGING LAST_DYNPRO.
order party
PERFORM DYNPRO_SET USING 'KUAGV-KUNNR' XVBAK-KUNNR.
purchase order number
PERFORM DYNPRO_SET USING 'VBKD-BSTKD' XVBAK-BSTNK.
requested delivery date
PERFORM DYNPRO_DATE_SET USING 'VBKD-BSTDK' XVBAK-BSTDK.
purchase order date
PERFORM DYNPRO_DATE_SET USING 'RV45A-KETDAT' WLDAT.
ENDFORM. " DYNPRO_DETAIL2
FORM DYNPRO_DATE_SET USING FELDNAME
FELDINHALT.
DATA: DATE TYPE D.
CLEAR BDCDATA.
CHECK FELDINHALT NE SPACE.
BDCDATA-FNAM = FELDNAME.
WRITE FELDINHALT TO DATE.
BDCDATA-FVAL = DATE.
APPEND BDCDATA.
ENDFORM. " DYNPRO_DATE_SET
FORM DYNPRO_HEAD_300.
PERFORM DYNPRO_SET USING 'BDC_OKCODE' PANEL-KKAU.
incoterms part 1
IF NOT XVBAK-INCO1 IS INITIAL.
PERFORM DYNPRO_SET USING 'VBKD-INCO1' XVBAK-INCO1.
ENDIF.
incoterms part 2
IF NOT XVBAK-INCO2 IS INITIAL.
PERFORM DYNPRO_SET USING 'VBKD-INCO2' XVBAK-INCO2.
ENDIF.
PERFORM DYNPRO_SET USING 'BDC_OKCODE' 'BACK'.
ENDFORM. " DYNPRO_HEAD_300
FORM DYNPRO_POSITION.
LOOP AT XVBAP.
dynpro item double line entry
PERFORM DYNPRO_SET USING 'BDC_OKCODE' 'UER2'.
IF XVBAP-POSNR = 1.
material number
PERFORM DYNPRO_SET USING 'VBAP-MATNR(01)' XVBAP-MATNR.
order quantity
PERFORM DYNPRO_SET USING 'RV45A-KWMENG(01)' XVBAP-WMENG.
desired delivery date
PERFORM DYNPRO_DATE_SET USING 'RV45A-ETDAT(1)' WLDAT.
sales unit
PERFORM DYNPRO_SET USING 'VBAP-VRKME(1)' XVBAP-VRKME.
ELSE.
PERFORM DYNPRO_SET USING 'BDC_OKCODE' 'POAN'.
material number
PERFORM DYNPRO_SET USING 'VBAP-MATNR(02)' XVBAP-MATNR.
order quantity
PERFORM DYNPRO_SET USING 'RV45A-KWMENG(02)' XVBAP-WMENG.
desired delivery date
PERFORM DYNPRO_DATE_SET USING 'RV45A-ETDAT(02)' WLDAT.
sales unit
PERFORM DYNPRO_SET USING 'VBAP-VRKME(02)' XVBAP-VRKME.
ENDIF.
ENDLOOP.
ENDFORM. " DYNPRO_POSITION
FORM RETURN_VARIABLES_FILL USING ERRORCODE.
allocate IDOC numbers to Workflow output parameters
IF MASS_PROCESSING <> SPACE.
IF ERRORCODE = 0.
RETURN_VARIABLES-WF_PARAM = PID.
RETURN_VARIABLES-DOC_NUMBER = IDOC_CONTRL-DOCNUM.
APPEND RETURN_VARIABLES.
RETURN_VARIABLES-WF_PARAM = APO.
RETURN_VARIABLES-DOC_NUMBER = BELEGNUMMER.
APPEND RETURN_VARIABLES.
WORKFLOW_RESULT = C_WF_RESULT_OK.
ELSE.
RETURN_VARIABLES-WF_PARAM = EID.
RETURN_VARIABLES-DOC_NUMBER = IDOC_CONTRL-DOCNUM.
APPEND RETURN_VARIABLES.
WORKFLOW_RESULT = C_WF_RESULT_ERROR.
ENDIF.
ELSE.
IF ERRORCODE = 0.
RETURN_VARIABLES-WF_PARAM = APE.
RETURN_VARIABLES-DOC_NUMBER = BELEGNUMMER.
APPEND RETURN_VARIABLES.
WORKFLOW_RESULT = C_WF_RESULT_OK.
ELSE.
WORKFLOW_RESULT = C_WF_RESULT_ERROR.
ENDIF.
ENDIF.
ENDFORM. " RETURN_VARIABLES_FILL
Globale Daten von IDOC_INPUT_TESTER
TABLES: E1HEAD, E1ITEM.
DATA: BEGIN OF BDCDATA OCCURS 500.
INCLUDE STRUCTURE BDCDATA.
DATA: END OF BDCDATA.
DATA: BEGIN OF XVBAK. "Kopfdaten
INCLUDE STRUCTURE VBAK621.
DATA: END OF XVBAK.
DATA: BEGIN OF XVBAP OCCURS 50. "Position
INCLUDE STRUCTURE VBAP.
DATA: WMENG(18) TYPE C.
DATA: LFDAT LIKE VBAP-ABDAT.
DATA: KSCHL LIKE KOMV-KSCHL.
DATA: KBTRG(16) TYPE C.
DATA: KSCHL_NETWR LIKE KOMV-KSCHL.
DATA: KBTRG_NETWR(16) TYPE C.
DATA: INCO1 LIKE VBKD-INCO1.
DATA: INCO2 LIKE VBKD-INCO2.
DATA: YANTLF(1) TYPE C.
DATA: PRSDT LIKE VBKD-PRSDT.
DATA: HPRSFD LIKE TVAP-PRSFD.
DATA: END OF XVBAP.
DATA: BEGIN OF DYNPRO,
EINSTIEG LIKE T185V-DYNNR VALUE 101,
KKAU LIKE T185V-DYNNR,
UER2 LIKE T185V-DYNNR,
KBES LIKE T185V-DYNNR,
ERF1 LIKE T185V-DYNNR,
PBES LIKE T185V-DYNNR,
PKAU LIKE T185V-DYNNR,
PEIN LIKE T185V-DYNNR,
EID1 LIKE T185V-DYNNR,
POPO LIKE T185V-DYNNR,
EIPO LIKE T185V-DYNNR,
KPAR LIKE T185V-DYNNR,
PSDE LIKE T185V-DYNNR,
PPAR LIKE T185V-DYNNR,
KDE1 LIKE T185V-DYNNR,
KDE2 LIKE T185V-DYNNR,
PDE1 LIKE T185V-DYNNR,
PDE2 LIKE T185V-DYNNR,
PKON LIKE T185V-DYNNR,
END OF DYNPRO.
DATA: BEGIN OF PANEL,
KKAU LIKE T185V-PANEL VALUE 'KKAU',
UER2 LIKE T185V-PANEL VALUE 'UER2',
KBES LIKE T185V-PANEL VALUE 'KBES',
ERF1 LIKE T185V-PANEL VALUE 'ERF1',
PBES LIKE T185V-PANEL VALUE 'PBES',
PKAU LIKE T185V-PANEL VALUE 'PKAU',
PEIN LIKE T185V-PANEL VALUE 'PEIN',
EID1 LIKE T185V-PANEL VALUE 'EID1',
EIAN LIKE T185V-PANEL VALUE 'EIAN',
POPO LIKE T185V-PANEL VALUE 'POPO',
EIPO LIKE T185V-PANEL VALUE 'EIPO',
KPAR LIKE T185V-PANEL VALUE 'KPAR',
PSDE LIKE T185V-PANEL VALUE 'PSDE',
POAN LIKE T185V-PANEL VALUE 'POAN',
PPAR LIKE T185V-PANEL VALUE 'PPAR',
KDE1 LIKE T185V-PANEL VALUE 'KDE1',
KDE2 LIKE T185V-PANEL VALUE 'KDE2',
PDE1 LIKE T185V-PANEL VALUE 'PDE1',
PDE2 LIKE T185V-PANEL VALUE 'PDE2',
PKON LIKE T185V-PANEL VALUE 'PKON',
KOAN LIKE T185V-PANEL VALUE 'KOAN',
END OF PANEL.
DATA: BEGIN OF ERRTAB OCCURS 20,
TRANS LIKE TSTC-TCODE,
ARBGB LIKE T100-ARBGB,
CLASS(1) TYPE C,
MSGNR LIKE T100-MSGNR,
TEXT LIKE T100-TEXT,
TEXT(123) TYPE C,
MSGV1 LIKE SY-MSGV1,
MSGV2 LIKE SY-MSGV2,
MSGV3 LIKE SY-MSGV3,
MSGV4 LIKE SY-MSGV4,
END OF ERRTAB.
*---- Hilfsfelder -
DATA: PROGRAMM_AUFTRAG LIKE T185V-AGIDV VALUE 'SAPMV45A'.
DATA: LAST_DYNPRO LIKE T185V-DYNNR,
WLDAT LIKE VBAK-BSTDK,
POSNR LIKE VBAP-POSNR,
FIRST(1) TYPE C VALUE 'X'.
DATA: BEGIN OF XBDCMSGCOLL OCCURS 10.
INCLUDE STRUCTURE BDCMSGCOLL.
DATA: END OF XBDCMSGCOLL.
Terminauftrag ( Auftragsart wird fest gesetzt !)
DATA: BELEGNUMMER LIKE VBAK-VBELN.
DATA: ERRORCODE LIKE SY-SUBRC.
Statuswerte fuer IDOC-Status
DATA: BELEG_NICHT_GEBUCHT LIKE TEDS1-STATUS VALUE '51'.
DATA: BELEG_GEBUCHT LIKE TEDS1-STATUS VALUE '53'.
*- Direktwerte für Return_variables -
data:
eid like bdwfretvar-wf_param value 'Error_IDOCs',
pid like bdwfretvar-wf_param value 'Processed_IDOCs',
apo like bdwfretvar-wf_param value 'Appl_Objects',
ape like bdwfretvar-wf_param value 'Appl_Object'.
*- Direktwerte für Workflow_Result -
DATA: C_WF_RESULT_ERROR LIKE BDWFAP_PAR-RESULT VALUE '99999'.
DATA: C_WF_RESULT_OK LIKE BDWFAP_PAR-RESULT VALUE '0'.
http://help.sap.com/saphelp_nw04/helpdata/en/dc/6b7df143d711d1893e0000e8323c4f/frameset.htmhttp://help.sap.com/saphelp_nw04/helpdata/en/dc/6b7df143d711d1893e0000e8323c4f/frameset.htmhttp://help.sap.com/saphelp_nw04/helpdata/en/dc/6b7df143d711d1893e0000e8323c4f/frameset.htmhttp://help.sap.com/saphelp_nw04/helpdata/en/dc/6b7df143d711d1893e0000e8323c4f
Plz Reward points if helpfull ...
Regards,
Mandeep. -
Inbound interface??
Hi,
Iam working on inbound interface.Can any one tell me how to store the flat file data into custom table?what is the procedure?
Regards,
SujanSujan:
What type of inbound interface is it. It proxy or Idoc what is it. Please specify so folks can direct you. By the way there is a basic process to achieve your goal.
if the the inbound proxy is generating file on the server then read the file via function module and read data set command .
store them in the custom table you have created.
If you are using enterprise service then you have extract data from the xml file and upload the data.
Regards,
Nirad Pachchigar -
SCM Inbound Interfaces for 11i
Is there any SCM Inbound Interface for 11i for external non-Oracle systems to place a requsition or purchase order? if so, what protocol does it use and is this protocol standard for a 11i install?
This interface would be from PeopleSoft 8.47 not currently setup up to use BPEL.
Thanks in AdvanceHi,
As I understand, you have to map incoming message to same message structure of outbound side and then send it to two different receivers.
If this is correct, then you need not perform two message mappings. You need to design the scenario like a normal scenario in Integration Repository. However, in Integration Directory, you would need additional configuration to have two receivers for same message. This would be as follows:
1. Business System for receiver
2. CC for receiver
3. One Receiver Determination with two receivers configured. However, no condition specified for them.
4. Two interface determinations, one for each receiver.
5. Receiver agreements.
This configuration should solve your problem.
Thanks,
Bhavish -
Inbound interface with multiple IDOC processing
Hi,
I have to create an inbound interface which has to be triggered only when a batch job is completed in the middleware. The batch job will create 2000 records and 1 IDOC for each record. I have to get all the 2000 IDOCs and then process them together. I have to manipulate the data in these 2000 IDOCs and update them in a SAP table.
Please let me know how do I proceed with this.
Should I go with a custom func module or a custom program?
Thanks,
AbhishekHi,
Custom function module with standard parameters : For details refer to the topic Implementing Inbound Processing on page 85 of the
[ALE Programming Guide|http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCMIDALEPRO/BCMIDALEPRO.pdf]
regards,
Advait
Maybe you are looking for
-
I'm trying to update Photoshop CC Photoshop. I keep getting a download failed error (#49). Adobe's troubleshooting provides no help at all. There are some troubleshooting links, but the two numbers do not match the error I am getting. Apparently, the
-
ITunes 7.6.2 won't open after Quicktime update! Help!
Hello, I just updated Quicktime through Software update and now iTunes won't open. It bounces in the dock, stop and shows the light underneath in the dock, the colored disc mouse spins for 10 or 15 seconds and then it quits before any windows open. T
-
Enterprise Project Fields Default values do not Register on PDP Pages for mandatory fields
Is it normal for "mandatory" eneterprise project field to come up as blank in a PDP page, when I have defined it to default value to a specific value in a list? I've inserted such fields using the project field web part within the PWA Category. They
-
To increase width of report layout
hi could anyone pls guide me in increasing the size of the report in report builder inorder to accomodate more fields thanking in advance
-
XSTRING to PDF - XSTRING of any file extension
Dear Experts, I am using class: cl_hrrcf_attachments method: read_attachment to get the xstring of the file uploaded by the applicant in e-recruitment. The file can be in any format - doc, docx, pdf etc. I get the xstring of the file. For filetype, p