IDoc creation in Integration Process ...
Hello guys,
I have a question for you. Is it possible to create Integration Process with one loop that will generate and send one specific IDoc every 5 minutes. I've created new process and I put new loop between Start and Stop marks. The loop has condition "true = true" and it contains a Wait (waiting interval is 5 minutes) and Send step. How could I configure parameters of the Send step? I want the Send step to create new IDoc (IDoc type will be still same and its content also) and send it to a receiver (receiver will be also still same). Where can I specify the IDoc type and IDoc's content?
Regards,
Zbynek
Hi,
You can check the Idoc status using the transactions WE02 OR WE05.
When the Inbound Idoc is created then the status will be 64(IDoc ready to be transferred to application) then after you process the Idoc then the status will change to 53(Application document posted).
Thanks,
Srinivas
Similar Messages
-
Max. 999 IDocs with an Integration Process ?
Hi,
From data into a file, I create several sales orders, thus several IDocs (one IDoc by line of file) by using an Integration Process (multi --> single).
Flow is: PC (file) -> XI -> R/3 (IDoc)
But I'am limited to <b>999</b> lines, indeed :
When a file contains 999 lines, all lines are treated and 999 IDocs are created into R/3. ==> ok.
When a file contains 1000 lines, there is no IDoc. And in the message monitoring, flag on my Integration Process says "Processed successfully". But no message are sent to R/3, and thus no IDoc are created into R/3. ==> Completly non-ok.
Do you have the same problem?
Mickael.If you have not solved the problem yet.
I had a the same problem. I solved it by splitting the it into different IDOCs and for each 999 line enter a sum line to balance the document. -
Hi guys!
We have a scenario, where Idoc is sent from r/3 into XI, here enters integration process, where the idoc is mapped to soap req, sent sync to web service, ws response is mapped to other idoc type and integration process sends data to r/3.
The problem is, when more idocs are sent into xi from r/3 in short time. Some idocs are processed correctly, but some remain in status - Scheduled for outbound processing. When the same idoc (same data etc) is sent later, separately, the data (process) is processed succesfully.
Any ideas, what could be wrong?
Thanx a lot! OlianHi Olian,
This problem occurs when XI has not received the response from the webservice and it gets timed out. You can monitor this in RWB - Message Monitoring.
Have a look at this weblog
/people/michal.krawczyk2/blog/2006/06/08/xi-timeouts-timeouts-timeouts
Hope this will help you in resolving the issue.
Regards
Sreenivas -
How to configure Integration Builder using an Integration Process?
Dear experts,
I have problems configuring the Integration builder using a Integration process.
Scenario = idoc to PI, integration process transforms idoc to file, file to external system.
My integration process starts with an abstract interface (structure of idoc) and ends with an abstract interface (structure of file). But I just can not configure the integration builder correctly...
I did it as follows:
Sender agreement: comm.component = SAP system; interface = Idoc;
receiver determination: comm.component = SAP system; interface = Idoc; configured receiver = my integration process;
interface determination: comm.component = SAP system; interface = Idoc; receiver = target system comm.component;
Receiver agreement: comm.component = SAP system; receiver = target system comm.component; interface = filestructure of target
This does not work unfortunately. How can I pass the Idoc to my abstract interface? And how can I pass the result of my integration process (abstract interface) to the inbound interface? In the interface determination I can not select my Operation Mapping (but that should not be nessesary as I already created an Integration Process)...
Hope anyone can help.
Thanks and regards
WilliamJust consider your BPM is receiver, and sender:
Src --> BPM (BPM is Receiver)
==========
Sender Agreement (If it is IDOC or HTTP, then you do not have to create)
Commnunication Channel
Receiver Determination
Interface Determination
BPM --> Target (BPM is sender)
============
Receiver Determination
Interface Determination
Communication Channel
Receiver Agreement
If your BPM interact with other systems, you will have more Receiver Determination and Interface determination, possible Receiver agreement
Hope this clear your doubts
Liang -
Idoc to flat file using Integration process does not show up at all
Hello All,
I created a scenario IDOC to Flat File using Integration Process and one without IntegrationProcess. I am able to execute the one without Integration Process easily.
However when I send the IDOC from SAP then the Integration Process scenario just does not work.
I Checked SXMB_MONI There is no entry for the Integration Process.I can see entry for other without Integration Process.
SXI_CACHE : I can see my Integration Process active
SWEQADM : I have activated the Event Queue and Background job
SWF_XI_ADM_BPE : ALL BPE is showing green status.
All syntax check on IP are fine.
There is no Basis Help for me so there could be some additional basis steps which need to be configured. Has anyone faced such an issue with Integration Process?
Regards
PrashantaHope this might help you. when u configure an IDoc as Sender with BPM this is how you proceed.
<b>1<b>. let us split the scenario into two</b>.</b>
a. <b>Sender to BPM</b> ( Integration Process).
b. <b>BPM to Receiver</b>.
<b>2. First let us configure the first Sender to BPM.</b>
a. Sender Agreement( <b>Not required</b> ).
b. Receiver Agreement( <b>NOT Required</b>).
c. Receiver Determination( Sender Service, Outbound Interface, Receiver Service(<b>Integration Process</b>).
d. Interface Determination( Inbound Interface(Sender Abstract Interface), Message Mapping(NOT Required if your using transformation stepin Integration Process)).
<b>3. Now let us configure the Second BPM to Receiver.</b>
a. Sender Agreement( <b>NOT Required</b>)
b. Receiver Agreement( Sender Service(<b>Integration process</b>), Receiver Abstarct Interface,Receiver service, Inbound Interface).
c. Receiver Determination( Sender Service(Integration Process), Receiver Abstarct Interface,Receiver Service).
d. Interface Determination( Inbound Interface, Message Mapping(<b>NOT Required</b>)).
So Finally we have <b>One Receiver Agreement</b>, <b>Two Receiver Determinations</b>, <b>Two Interface Determinations</b>.
Please let me know if you have any more queries.
Regards
Gopi -
Send IDoc to R3 in Integration Process
Hello everyone,
I want to send some idocs to R3 system's vender from XI Integration Process, but i do not how how to configure in the adapter-specific identifiers. If i set the Idoc Adapter Logical System, the idoc went to the logical system, if i did not set the logic system, it raise an error "Unable to convert sender service BS_SAP_R3 to an ALE logical system". So how can i configure the Integration Process in Integration Directory to send idocs to R3 system's vender?
Regards,
NickHi Nick,
Look at these threads please..
Configuring to receive a iDoc in R/3 sent by XI
How To use External Message To Send IDOC From XI To R/3
Hope these help you!
cheers,
Prashanth -
Goods Confirmation - Idoc creation process???
Hi,
I see that during the goods confirmation process the idocs are created. well i'm aware of the ale configs but my question here is how there idocs are created and which is the process that initiates this...bascially i wish to extend the GR idoc in SRM with added segments but need to know where i got to write the code for the extended segments. this process of idoc created is seen during the call of the work flow WS10400010 but looking into this workflow i cannot see any steps that handle the idoc creation....
nb: my confirmation process happens without an approval step in between.
any thoughts on how to check the process that creates this idoc for confirmation?Duplicate Question from SRM General Forum. It is answered, pls. close the thread. Thanks.
http://forums.sdn.sap.com/thread.jspa?threadID=2134619&tstart=0 -
XML file, with multiple customer records - post DEBMAS over Integr.Process
Hi all,
is it possible to map a single XML file message that contains multiple records for customer master to multiple messages ?
I know that it is possible to do a "multi IDOC " mapping but then the splitting of the messages is done by the IDOC adapter, not earlier.
I have to process every single customer master record by an integration process to check if its creation or change (and get the customer number).
When I try in the interface mapping to set the receiver to "0 to unbound" then also the message format of the sender requires two additional hierarchie levels "...message, message1" . My orginal file does not contain these tags.
Is XI not able to handle this easy requirement without making a university study out of it?
Thank you very much for your help
best regards
HansYou need not worry about those tags to be in your file. Those are added while mapping is being executed. All that you need to do is use file content conversion in sender adapter and put your lookup logic in Integration Process and mapping..!!
You do not need a university degree, if you understadn the concepts..!!
VJ -
[BPM] Standards to design integration processes
Hey,
I would like to create a paper as guideline for creation of further integration processes. The
last project has been end up in a chaos without a possibility of enhancement or maintenance.
Therefore I started with a naming convention and a paradigm of designing SWC.
Now I would like to give some hints about how a good bpm design looks like. Does someone
have some information about that.
I have:
- when a bpm is unavoidable (splitting, alerting..)
- when a bpm is not necessary (multi-mapping...)
- which bpm step needs lot resources (recveive/send steps, transformation...)
Do you have some hints for modular designing of bpm? For example to put error
handling in an own bpm (for reuseability) or something else?
How do you design BPMs to keep them small and clear?
thanks
chrisBPM is used to implement work-flow spanning across multiple application system against embedding the parts of work-flow in application system. Apart from this it also help achive other scenarios like, bridging synch and asynch systems, alert mechanism, multi mapping etc. Check the BPM overview document in SDN download section.
Check out the use cases discussed at http://help.sap.com/saphelp_nw04s/helpdata/en/de/766840bf0cbf49e10000000a1550b0/content.htm
BPM is mainly used in senarios where extra functionalities are to be done with the source message which cannot be done using the normal mapping and user-defined functions, like
->Collecting of messages till a certain count or for a specific criteria.
->Merging messages
->Spliting messages
->Processing of error files and sending to specific location and sending alerts.
->Parallel processing of two criterias at the same time can also be done using BPM.
Also go through these links,
/people/shabarish.vijayakumar/blog/2005/08/03/xpath-to-show-the-path-multiple-receivers
http://help.sap.com/saphelp_nw04/helpdata/en/3c/831620a4f1044dba38b370f77835cc/content.htm
http://help.sap.com/saphelp_nw04/helpdata/en/62/dcef46dae42142911c8f14ca7a7c39/content.htm
http://help.sap.com/saphelp_nw04/helpdata/en/de/766840bf0cbf49e10000000a1550b0/content.htm
http://help.sap.com/saphelp_nw04/helpdata/en/cb/15163ff8519a06e10000000a114084/content.htm
http://help.sap.com/saphelp_nw04/helpdata/en/08/16163ff8519a06e10000000a114084/content.htm
Many other examples can be found under the following link at help.sap.com
http://help.sap.com/saphelp_nw04/helpdata/en/14/80243b4a66ae0ce10000000a11402f/frameset.htm
And some weblogs
https://weblogs.sdn.sap.com/pub/wlg/1403 [original link is broken] [original link is broken] [original link is broken]
/people/siva.maranani/blog/2005/05/22/schedule-your-bpm *****
/people/krishna.moorthyp/blog/2005/06/09/walkthrough-with-bpm
/people/michal.krawczyk2/blog/2005/06/11/xi-how-to-retrieve-messageid-from-a-bpm
/people/arpit.seth/blog/2005/06/27/rfc-scenario-using-bpm--starter-kit
/people/sravya.talanki2/blog/2005/08/24/do-you-like-to-understand-147correlation148-in-xi
/people/michal.krawczyk2/blog/2005/09/04/xi-do-you-realy-enjoy-clicking-and-waiting-while-tracing-bpm-steps *****
/people/udo.martens/blog/2005/09/30/one-logical-system-name-for-serveral-bpm-acknowledgements *****
/people/sudharshan.aravamudan/blog/2005/12/01/illustration-of-multi-mapping-and-message-split-using-bpm-in-sap-exchange-infrastructure
/people/kannan.kailas/blog/2005/12/07/posting-multiple-idocs-with-acknowledgement
Also have a look at these seminars,
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/media/uuid/daea5871-0701-0010-12aa-c3a0c6d54e02
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/media/uuid/e8515171-0701-0010-be98-e37bec4706cc
I hope it helps....
Note: reward points if solution found helpfull
Regards
Chandrakanth.k -
IDOC creation after the creation of a purchase order
Hi everybody,
I want some configuration details regardign IDOC creation. The requirement is, once i create a purchase order in one system, the details should automatciaclly transfer to other system through IDOC. could any one suggest any document or detailed procedure to accomplish the task. Thanks in advance,
Santosh.hi santosh kumar,
Creating an IDoc Segment WE31:
The segment defines the structure of the records in an IDoc. They are defined with transaction WE31.
We will define a structure to send a text from the text database.
Transaction WE31 calls the IDoc segment editor. The editor defines the fields of a
single segment structure. The thus defined IDoc segment is then created as a data
dictionary structure. You can view the created structure with SE11 and use it in an
ABAP as any TABLES declaration.
To demonstrate the use of the IDoc segment editor we will set up an example, which
allows you to send a single text from the text pool (tables STXH and STXL) as an
IDoc. These are the texts that you can see with SO10 or edit from within many
applications.
We will show the steps to define an IDoc segment YAXX_THEAD with the DDic
structure of THEAD.
To facilitate our work, we will use the "copy-from-template-tool", which reads the
definition of a DDIC structure and inserts the field and the matching definitions as
rows in the IDoc editor. You could, of course, define the structure completely
manually, but using the template makes it easier.
The tool in release 4.0b lets you use both DDIC structures or another IDoc segment
definition as a template.
The thus created structure can be edited any time. When saving, it will create a data
dictionary structure based on the definition in WE31. The DDIC structure will retain
the same name. You can view the structure as a table definition with SE11 and use it
in an ABAP the same way.
Defining the Message Type (EDMSG)
The message type defines the context under which an IDoc is transferred to its destination. It allows for using the same IDoc file format for several different applications.
Imagine the situation of sending a purchase order to a supplier. When the IDoc with
the purchase order reaches the supplier, it will be interpreted as a sales order
received from a customer, namely you.
Simultaneously you want to send the IDoc data to the supplier's warehouse to inform
it that a purchase order has been issued and is on the way.
Both IDoc receivers will receive the same IDoc format; however, the IDoc will be
tagged with a different message type. While the IDoc to the supplier will be flagged
as a purchase order (in SAP R/3 standard: message type = ORDERS), the same IDoc
sent to the warehouse should be flagged differently, so that the warehouse can
recognize the order as a mere informational copy and process it differently than a
true purchase order.
The message type together with the IDoc type determine the processing function.
The message types are stored in table EDMSG.
Defining the message type can be done from the transaction WEDI
EDMSG: Defining the message type (1)
The entry is only a base entry which tells the system that the message type is
allowed. Other transactions will use that table as a check table to validate the entry.
IT is as shown .
EDMSG: Defining the message type (1):
The entry is only a base entry which tells the system that the message type is
allowed. Other transactions will use that table as a check table to validate the entry.
Sales Orders are being created through inbound IDocs using FM 'EDI_DATA_INCOMING'. Now a Report is required to check the status of these Inbound IDocs along with Sales Orders generated against customer Purchase Orders.
Requirement:
Sales Orders are being created through inbound IDocs using FM 'EDI_DATA_INCOMING'. Now a Report is required to check the status of these Inbound IDocs along with Sales Orders generated against customer Purchase Orders.
Processing:
The report selects, 'ORDERS' IDoc numbers & status, generated between given time range, from table EDIDC. Further, it calls Function Module 'IDOC_READ_COMPLETELY' to get the IDoc details. Then required information is extracted by reading relevant field data of IDoc segments.
sampl code:
REPORT Z_EDI_FILE_LOAD_STATUS_REPORT .
Staus Report for Inbound IDOCs ( Sales Orders )
Program : Z_EDI_FILE_LOAD_STATUS_REPORT
Presented By : www.rmtiwari.com
TABLES : EDIDC.
ALV stuff
TYPE-POOLS: SLIS.
DATA: GT_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV,
GS_LAYOUT TYPE SLIS_LAYOUT_ALV,
GT_SORT TYPE SLIS_T_SORTINFO_ALV,
GT_LIST_TOP_OF_PAGE TYPE SLIS_T_LISTHEADER.
DATA : BEGIN OF T_REPORT OCCURS 0,
IDOC_NO TYPE EDI_DOCNUM,
IDOC_DATE TYPE SY-DATUM,
IDOC_TIME TYPE SY-UZEIT,
SORDER_NO TYPE VBELN,
STP_NO TYPE KNA1-KUNNR,
STP_NAME(35) TYPE C,
STP_PHONE(12) TYPE C,
PO_NO(15) TYPE C,
STATUS TYPE C,
S_TEXT(70) TYPE C,
ERROR(70) TYPE C,
END OF T_REPORT.
--PARAMETER--
selection-screen begin of block date with frame title TEXT-S01.
select-options: UDATE for EDIDC-UPDDAT
default SY-datum obligatory, "Changed On
UTIME for EDIDC-UPDTIM . "Changed Time
selection-screen end of block date.
INITIALIZATION.
START-OF-SELECTION.
PERFORM SHOW_STATUS_REPORT.
*& Form alv_grid
text
--> p1 text
< -- p2 text
FORM ALV_GRID.
IF GT_FIELDCAT[] IS INITIAL.
PERFORM FIELDCAT_INIT.
PERFORM LAYOUT_INIT.
PERFORM SORT_INIT.
ENDIF.
PERFORM GRID_DISPLAY.
ENDFORM. "alv_grid
*& Form layout_init
FORM LAYOUT_INIT.
GS_LAYOUT-ZEBRA = 'X'.
GS_LAYOUT-CELL_MERGE = 'X'.
GS_LAYOUT-COLWIDTH_OPTIMIZE = 'X'.
GS_LAYOUT-NO_VLINE = ' '.
GS_LAYOUT-TOTALS_BEFORE_ITEMS = ' '.
ENDFORM. " layout_init
*& Form fieldcat_init
FORM FIELDCAT_INIT.
DATA: LS_FIELDCAT TYPE SLIS_FIELDCAT_ALV.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'IDOC_NO'.
LS_FIELDCAT-KEY = 'X'.
LS_FIELDCAT-REPTEXT_DDIC = 'IDOC'.
LS_FIELDCAT-OUTPUTLEN = 10.
Fix for ALV print bug, which puts 'N/A' over last digit
Set inttype to 'N' to stop corruption of printed ALV cell.
LS_FIELDCAT-INTTYPE = 'N'.
APPEND LS_FIELDCAT TO GT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'IDOC_DATE'.
LS_FIELDCAT-REPTEXT_DDIC = 'Creation Date'.
LS_FIELDCAT-OUTPUTLEN = 10.
APPEND LS_FIELDCAT TO GT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'IDOC_TIME'.
LS_FIELDCAT-REPTEXT_DDIC = 'Creation Time'.
LS_FIELDCAT-OUTPUTLEN = 8.
APPEND LS_FIELDCAT TO GT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'STATUS'.
LS_FIELDCAT-REPTEXT_DDIC = 'St'.
LS_FIELDCAT-OUTPUTLEN = 2.
APPEND LS_FIELDCAT TO GT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'ERROR'.
LS_FIELDCAT-REPTEXT_DDIC = 'Message'.
LS_FIELDCAT-OUTPUTLEN = 70.
APPEND LS_FIELDCAT TO GT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'STP_NO'.
LS_FIELDCAT-REPTEXT_DDIC = 'S.T.Party No'.
LS_FIELDCAT-OUTPUTLEN = 10.
APPEND LS_FIELDCAT TO GT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'STP_NAME'.
LS_FIELDCAT-REPTEXT_DDIC = 'Sold to Party Name'.
LS_FIELDCAT-OUTPUTLEN = 35.
APPEND LS_FIELDCAT TO GT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'PO_NO'.
LS_FIELDCAT-REPTEXT_DDIC = 'Purch Order'.
LS_FIELDCAT-OUTPUTLEN = 15.
APPEND LS_FIELDCAT TO GT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'STP_PHONE'.
LS_FIELDCAT-REPTEXT_DDIC = 'S.T.Party Phone'.
LS_FIELDCAT-OUTPUTLEN = 15.
APPEND LS_FIELDCAT TO GT_FIELDCAT.
ENDFORM. "fieldcat_init
*& Form sort_init
FORM SORT_INIT.
DATA: LS_SORT TYPE SLIS_SORTINFO_ALV.
CLEAR LS_SORT.
LS_SORT-FIELDNAME = 'IDOC_DATE'.
LS_SORT-SPOS = 1.
LS_SORT-UP = 'X'.
APPEND LS_SORT TO GT_SORT.
CLEAR LS_SORT.
LS_SORT-FIELDNAME = 'IDOC_TIME'.
LS_SORT-SPOS = 2.
LS_SORT-UP = 'X'.
APPEND LS_SORT TO GT_SORT.
CLEAR LS_SORT.
LS_SORT-FIELDNAME = 'STATUS'.
LS_SORT-SPOS = 3.
LS_SORT-UP = 'X'.
APPEND LS_SORT TO GT_SORT.
CLEAR LS_SORT.
LS_SORT-FIELDNAME = 'IDOC_NO'.
LS_SORT-SPOS = 4.
LS_SORT-UP = 'X'.
APPEND LS_SORT TO GT_SORT.
ENDFORM. "sort_init
*& Form grid_display
FORM GRID_DISPLAY.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
IS_LAYOUT = GS_LAYOUT
IT_FIELDCAT = GT_FIELDCAT
IT_SORT = GT_SORT
i_callback_program = SY-REPID
I_CALLBACK_TOP_OF_PAGE = 'TOP_OF_PAGE'
I_DEFAULT = ' '
I_SAVE = 'X'
TABLES
T_OUTTAB = T_REPORT
EXCEPTIONS
PROGRAM_ERROR = 1
OTHERS = 2.
ENDFORM. "grid_display
*& Form COMMENT_BUILD
Processing of listheader
FORM COMMENT_BUILD USING P_FK_LIST_TOP_OF_PAGE TYPE SLIS_T_LISTHEADER.
DATA: LS_LINE TYPE SLIS_LISTHEADER.
REFRESH P_FK_LIST_TOP_OF_PAGE.
List Heading : Typ H
CLEAR LS_LINE.
LS_LINE-TYP = 'H'.
LS_LINE-INFO = 'Sales Order Interface: Z_EDI_FILE_LOAD'.
APPEND LS_LINE TO P_FK_LIST_TOP_OF_PAGE.
List : Typ S
clear LS_LINE.
LS_LINE-typ = 'S'.
LS_LINE-key = 'Date Range:'.
LS_LINE-info = UDATE-low.
if not UDATE-high is initial.
write ' To ' to LS_LINE-info+30.
LS_LINE-info+36 = UDATE-high.
endif.
APPEND LS_LINE TO P_FK_LIST_TOP_OF_PAGE.
ENDFORM. " COMMENT_BUILD
FORM TOP_OF_PAGE *
Ereigniss TOP_OF_PAGE *
event TOP_OF_PAGE
FORM TOP_OF_PAGE.
PERFORM COMMENT_BUILD USING gt_LIST_TOP_OF_PAGE[].
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
IT_LIST_COMMENTARY = GT_LIST_TOP_OF_PAGE.
ENDFORM. "TOP_OF_PAGE
*& Form show_status_report
FORM SHOW_STATUS_REPORT .
Report to show status.
DATA: BEGIN OF T_TEDS2 OCCURS 0.
INCLUDE STRUCTURE TEDS2.
DATA: END OF T_TEDS2.
DATA: BEGIN OF T_IDOC_CONTROL_TMP OCCURS 0.
INCLUDE STRUCTURE EDIDC.
DATA: END OF T_IDOC_CONTROL_TMP.
CONSTANTS: C_STATUS_IN_IDOC_POSTED LIKE EDIDC-STATUS VALUE '53'.
DATA : T_EDIDS TYPE STANDARD TABLE OF EDIDS WITH HEADER LINE.
DATA : T_EDIDD TYPE STANDARD TABLE OF EDIDD WITH HEADER LINE.
DATA : GV_PARTNER_SEG TYPE E1EDKA1,
GV_PO_REF_SEG TYPE E2EDK02.
Get text for status values
SELECT * FROM TEDS2 INTO TABLE T_TEDS2 WHERE LANGUA = SY-LANGU.
Read the IDoc's status after processing
SELECT * FROM EDIDC
INTO TABLE T_IDOC_CONTROL_TMP
WHERE UPDDAT IN UDATE
AND UPDTIM IN UTIME
AND MESTYP = 'ORDERS'.
LOOP AT T_IDOC_CONTROL_TMP.
IDoc has been processed, since control record changed.
READ TABLE T_TEDS2 WITH KEY STATUS = T_IDOC_CONTROL_TMP-STATUS.
T_REPORT-IDOC_NO = T_IDOC_CONTROL_TMP-DOCNUM.
T_REPORT-IDOC_DATE = T_IDOC_CONTROL_TMP-CREDAT.
T_REPORT-IDOC_TIME = T_IDOC_CONTROL_TMP-CRETIM.
T_REPORT-S_TEXT = T_TEDS2-DESCRP.
IF T_IDOC_CONTROL_TMP-STATUS = C_STATUS_IN_IDOC_POSTED.
ok status
T_REPORT-STATUS = 'S'.
ELSE.
error status
T_REPORT-STATUS = 'E'.
ENDIF.
Get IDoc details.
CALL FUNCTION 'IDOC_READ_COMPLETELY'
EXPORTING
DOCUMENT_NUMBER = T_REPORT-IDOC_NO
TABLES
INT_EDIDS = T_EDIDS
INT_EDIDD = T_EDIDD
EXCEPTIONS
DOCUMENT_NOT_EXIST = 1
DOCUMENT_NUMBER_INVALID = 2
OTHERS = 3.
Get Error status
READ TABLE T_EDIDS WITH KEY STATUS = T_IDOC_CONTROL_TMP-STATUS.
IF SY-SUBRC EQ 0.
REPLACE FIRST OCCURRENCE OF '&1' IN T_EDIDS-STATXT
WITH T_EDIDS-STAPA1.
REPLACE FIRST OCCURRENCE OF '&2' IN T_EDIDS-STATXT
WITH T_EDIDS-STAPA2.
REPLACE FIRST OCCURRENCE OF '&3' IN T_EDIDS-STATXT
WITH T_EDIDS-STAPA3.
REPLACE FIRST OCCURRENCE OF '&4' IN T_EDIDS-STATXT
WITH T_EDIDS-STAPA4.
REPLACE FIRST OCCURRENCE OF '&' IN T_EDIDS-STATXT
WITH T_EDIDS-STAPA1.
REPLACE FIRST OCCURRENCE OF '&' IN T_EDIDS-STATXT
WITH T_EDIDS-STAPA2.
REPLACE FIRST OCCURRENCE OF '&' IN T_EDIDS-STATXT
WITH T_EDIDS-STAPA3.
REPLACE FIRST OCCURRENCE OF '&' IN T_EDIDS-STATXT
WITH T_EDIDS-STAPA4.
T_REPORT-ERROR = T_EDIDS-STATXT.
ENDIF.
LOOP AT T_EDIDD.
CASE T_EDIDD-SEGNAM.
WHEN 'E1EDKA1'.
GV_PARTNER_SEG = T_EDIDD-SDATA.
CLEAR : T_REPORT-STP_NAME.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
INPUT = GV_PARTNER_SEG-PARTN
IMPORTING
OUTPUT = T_REPORT-STP_NO.
SELECT SINGLE NAME1 TELF1
INTO (T_REPORT-STP_NAME,T_REPORT-STP_PHONE)
FROM KNA1
WHERE KUNNR = T_REPORT-STP_NO.
WHEN 'E1EDK02'.
GV_PO_REF_SEG = T_EDIDD-SDATA.
T_REPORT-PO_NO = GV_PO_REF_SEG-BELNR.
ENDCASE.
ENDLOOP.
APPEND T_REPORT.
ENDLOOP .
SORT T_REPORT BY STATUS IDOC_NO.
Show Report
PERFORM ALV_GRID.
ENDFORM. " show_status_report
thanks
karthik
reward me points if usefull. -
Adapter Specific Paramters for Integration Process in Configuration
I want to send the data from flat file to idoc through BPM
While doing configuration do I need to explicitly give Adapter specific parameters(Logical System Name) for BPM(Integration Process) or not?
Is it mandatory to give Adapter Specific Parameters for this scenario?
FILE-->BPM--->IDOC(R/3)
Thanks & Regards
Katta Mohan ReddyHi,
why would you require Adapter specific parameters (I assume you mean Adapter specific Attributes) - Logical System should be there through the routing (Receiver Determination). What exactly do you want to accomplish by that?
regards,
Peter -
Logical System for Integration Process
I am getting a error message for my Integration Process: "Unable to convert sender service IP_Kleinschmidt_Shipments to an ALE logical system"
I am confused as to what i need to put in the IP -> Service -> Adapter Specific Identifires ->Logical System.
I won't let me enter either the R3 system nor the XI system.
What value do I need to put here so my acknoldgement can go back to the R3 system?Use header mapping in receiver agreement to apply a business system as sender of the Idoc message.
That business system must have a logical system aplied and this should be maintained in R/3 as well.
if you use XI system as logical system as IDoc receiver in R/3, then you can apply also XI as sender here.
But you have to load the PI as business system to ID for this reason.
You cannot apply a logical system to the business system, which already used elsewhere.
I discused that issue with the developer a couple of years ago. He told me to use the workaround. -
Problem converting Integration Process to ALE logical system(acknowledgmen)
Hello,
I have a scenario where a sender SAP system sends an IDoc via an Interface Mapping to an Integration Process.
This worked perfectly fine on our development environment, but after transporting the scenario to our quality systems I got the following acknowledgement error:
Unable to convert the sender service <i>name of integration process</i> to an ALE logical system.
What could be the reason for this? We have a logical system on the sender SAP system set up for the XI system itself but not for the Integration Process.
We also use SYSTAT IDocs and there we set the the logical sender system name to the logical system for SAP XI and not for the integration process.
Is this also necessary for acknowledgements? Where could this be done. Strange thing is that it works perfectly fine on our development environment.I raised the same question a few months back.Answer to this question is in the same thread.
Idoc Acknowledgements - Logical System Name
You will have to select option "Restore Original Parties for Idoc Acknowledgments " in the Acknowledgment Idoc adapter.
Regards
Bhavesh -
Value mapping in the ERP system during IDOC creation
We have a PI File-IDOC scenario.
We can translate simple mappings such as currency or unit of measure in PI(7.1) using the Value Mapping function. For complicated mappings involving business logic (e.g. Tax code which is derived from multiple fields) we want to perform these mapping in the ERP (ECC6) system. Is there an approved generic SAP standard process where these value mappings can be done in the IDOC creation which is still valid when re-processing?
e.g. a specific BADI or enhancement point recommended for these mapping?
There might also be a requirement to add segments based on value mapping logic for example when a tax record segment is only required for a non-zero tax code which is mapped via business logic.
Can someone please direct me in the right direction.Thanks for your answers but I assumed that using a user exit / Enhancement point was obvious. What I'd like to know is a generic entry point that I can estabolish a IDOC enhancement framework. Somewhere I can call a class containing methods linked to IDOC message types
e.g. Call similar to my prototype (this will be where dependant on mappings certain segments will need to be inserted such as tax segments.
ASSIGN control-mestyp TO <mestyp>.
CALL METHOD (<mestyp>)
EXPORTING
control = control
data = data
IMPORTING
have_to_change = have_to_change
protocol = protocol
new_entries = new_entries.
The "entry point" must be processed both at creation and reprocess. We are also dealing with Inbound IDOCs not outbound -
Sending step in Integration Process waiting for Acknowledgement infinitely
In process I had to send an MATMAS, CLFMAS and CNPMAS. The data for
this IDoc comes in one message from third party system. So, my
Integration Process has receive step (to collect a data), and three
send-steps (for MATMAS, for CLFMAS, for CNPMAS), one by one. The
receive-step catch an inbound message and then (without transforms)
send this message to each of this three send-steps in Asynchronous
mode. The inbound message transforms in Interface Determination to
IDoc. Three steps, one Interface Determination with three conditions,
that looks
like «ProcessStep=send_matmas», «ProcessStep=send_clfmas», «ProcessStep=s
end_cnpmas», and in this place I set a mapping to transform inbound
message to IDoc. All send-steps has property Acknowledgement, which set
to Transport value. So in first send-step MATMAS goes to R3, then R3 in
response send ALEAUD IDoc (trans WE05 shows an incoming MATMAS and
outgoing ALEAUD); ALEAUD comes to XI (trans IDX5 shows inbound and
outbound messages), but ALEAUD didnu2019t transforms to XI Acknowledgement.
And there is no any CLFMAS or CNPMAS, because all processes sleeps in
their first send-steps (trans SWWL shows a many STARTED processes).
Each send-step waits for event u2018SEND_OK_TRANSPORTu2019. Moreover, if I use
trans sxmb_moni to monitor this situation and if I press refresh (F5
button) every time, sxmb_moni every time requests a status of
Acknowledgements, XI transform ALEAUD to Ack, send-step in process
catch this status, process wake up and moves to next send-step (which
sends an CLFMAS and waits for Ack). By continuously pressing refresh
(F5) in sxmb_moni all process becomes COMPLETED (trans SWWL), all
ALEAUD transforms to XI Ack and all IDocs goes to R3. But pressing F5
itu2019s not a solution for integration.Hi Igor,
I dont think your manual refresh changes the status . The status changes is the status change of GUI . The system will take how much so ever it needs to take and not as per your manual refresh.
Regards
joel
Maybe you are looking for
-
How do I add my phone number to my Face time on Ipad?
I am a mess. I have an iphone 4s and an ipad 3rd gen. I have been able to Facetime on my ipad since I got it. Now it doesnt show my phone number as the primary way to contact. How do I get my phone number to my ipad?
-
Error in using BAPI_CONFEC_CREATE : Interface data contains Errors
Hi, I am using this BAPI BAPI_CONFEC_CREATE to create confirmations locally in SRM for a PO. I am following Documentation available for this BAPI. But when I excuted with below data getting error " INTERFACE DATA CONTAINS ERRORS" I am passing these
-
Problems in assignment of a contract with several Items to orders.
Hi everyone, I have a problem in SD Sales Document Processing : I have a contract that contains 2 Items (with the same Material Number) I want to assign this contract to multiple Orders by using the transaction 'VA02' : Code : CALL TRANSACTION 'VA02'
-
Opening Pages Files on a Windows Machine
I've searched around and can't seem to find if this is addressed. I'm looking into getting a netbook in addition to my Macbook. I currently do all of my work in Pages, and save files as Pages files. I'd like to be able to use a program like Dropbox a
-
I've checked the format of the JPG files that don't display when playing the MP3 files in the same folder. None of them use the progressive JPG format. And these same JPG files do display if I select 'Images' instead of 'Audio' from the XAV72bt user