cancel
Showing results for 
Search instead for 
Did you mean: 

How to send application acknowledgement from R/3 system

Former Member
0 Kudos

Hi guys,

How to send application acknowledgement from R/3 system. Ex. we have post one IDoc and check user validations. Suppose date is wrong that means indicate earlier or wrong date but date format is correct. In this situation we need send one acknowledment to sender.

How to find the solution? pls tell anyone.

Regards

Vijay

Accepted Solutions (0)

Answers (3)

Answers (3)

Former Member
0 Kudos

Hi,

You need to do error handling: In user exit of the Function Module for the IDOC raise an error if the error situation exist and execute the program RBDSTATE on the R/3 system after posting the IDOC this would send the acknowledgment back.

Regards,

former_member537867
Active Contributor
0 Kudos

Hi Vijay,

Plz do perform the following steps:

1) In the Integration Server, call transaction SE38

2) Run program IDX_ALEREQUEST to process IDocs with message type ALEAUD as XI request

message.

3) Now Enter Sender Port, Sender Client,Partner Number, Partner Type, and Partner Rol

4) In Integration Directory, configure the routing of interface

5) Call transaction SXMB_MONI to display the XI message.

Also,

Further in IDX5 as well you will find entry for IDoc ALEAUD.ALEAUD01

Please go through the link

1)

2)https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/903a0abc-e56e-2910-51a8-9dc616df56eb

3)https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/f6d2d790-0201-0010-9382-b50b499b3fbe

After you triggered the IDoc by e.g. tcode: WPMA and IDoc reached FILE system, FILE receiver CC actually is only able to send acknowledgment types SystemErrorAck and AckNotSupported.

This is because:

- IDoc sender adapter requests the following acknowledgments:

SystemAckRequested="false"

SystemErrorAckRequested="true"

ApplicationAckRequested="true"

ApplicationErrorAckRequested="true"

- File receiver adapter “that run on the Adapter Engine support system acknowledgments and system error acknowledgments if they are requested by the sender. These acknowledgments are triggered when a message is successfully processed by the adapter or if an error occurs while it is being processed.”

If you haven’t suppressed acknowledgments for IDocs WP_PLU in IDX_NOALE in XI then you will get:

SystemErrorAck – when message has not reached the FILE system

AckNotSupported – for all others acknowledgement types

QQ) Will this IDOC Ack applicable for this scenario???

Rather not, since FILE adapter does not support any other acknowledgements then system and IDoc adapter does not request other acknowledgements then application + SystemErrorAckRequested.

In sender system your IDoc will be always in status 39 (instead of 03), when acknowledgement is turned on.

This is because:

For SystemErrorAck the corresponding ALEAUD status is 56

For AckNotSupported the corresponding ALEAUD status is 50

Both inbound 56 and 50 statuses end up in 39 for your outbound IDoc in sender system.

Q1) Will this ALEAUD Idoc contains any Message from File System????

In both cases, it will result in status 39 - IDoc is in the target system. So it does not matter.

Q2) Basically what Information will contain this IDOC Ack.

Idoc number from sender system and status 56 or 50 depends on acknowledgement type.

Q3) Do we receive any Info from the Target File System , if we implement this Ack concept??

Nothing useful.

Remember that “File Receiver has no way to determine if the written file has been correctly processed by the back-end application”. However, if your “FILE” application can read your WP_PLU message and after successful processing is able to generate any kind of message then you can acknowledge the communications but you will not be able to link original message with the acknowledgement request message.

To do that you need to configure just normal scenario (that will be your new acknowledgement scenario) FILE -> XI -> R/3. Your FILE service will send ALEUAUD Idoc to R/3 system. Your FILE application must take care to generate proper ALEAUD XML message. In order to treat ALEAUD as a request message (not standard acknowledgement) you need to run IDX_ALEREQUEST in SE38 on XI.

Q1) It means if the Idoc not reached to Target File system means we can able to get the System Error Ack to Sender SAP R/3 System. Am i Right????

Supposed you have turned off acks on XI (tcode: se38, IDX_NOALE) for your sender port/client:

You have sent the IDoc and the last status is "03 - Data passed to port OK"

You don't know whether it was even delivered to XI ...

Supposed you have turned on acks on XI (tcode: se38, IDX_NOALE) for your sender port/client.

1)

You send and IDoc and it has been delivered successfully to FILE system.

Adapter Engine creates acknowledgement type: AckNotSupported

In XI you can see Ack Status: AckRequestNotSupported (Acknowledgement not possible). Category: permanent.

XI will send ALEAUD IDoc to R/3 system: status "50 - IDoc is added"

The IDoc status in sender will be "39 - IDoc is in receiving system (ALE service)".

2)

You send and IDoc and it has not been delivered successfully to FILE system. e.g. FILE server is down.

Adapter Engine creates acknowledgement type: SystemErrorAck

In XI you can see Ack Status: Error (Acknowledgement contains system errors). Category: transient.

XI will send ALEAUD IDoc to R/3 system: status "56 - IDoc with errors is added"

The IDoc status in sender will be "39 - IDoc is in receiving system (ALE service)".

So status 39 means only that IDoc reached XI, but you don't know whether it was delivered to FILE system or not.

Q2) And one more thing is Even though we are dealing with the IDOCFile OR FileIDOC we can able to get the ACk of Type System Error Ack only. Am I Right?????

No, "Sender adapters of the Adapter Engine do not request any acknowledgements."

Q3) So the same case( Which we disscused for IDOCFile) is Applicable for FileIDOC also????

No.

Can we able to get the System Error Ack, if the File is not reached to SAP R/3( Target here)

No.

Q4) If Yes to Q3 means,Where this System Error Ack will be seen in File System side???

Do we need to do any extra settings to receive these System Error Ack at File system side??

Not relevant.

Regards,

Vinod.

Former Member
0 Kudos

1.By any chance, did you check the

IDXNOALE table: and see if the port, the

client of the sender, and the message type id there.If yes then that table lists and block your acknowledgement.

2. Check this, "Use transaction SXMB_ADM ( Integration

Engine - Configuration) to obtain system

error acknowledgments from pipeline

services of the Integration Server and

maintain the specific configuration

parameter ACK_SYSTEM_FAILURE of the

RUNTIME category.Whenever a system error occurs within the Integration Server, a system error

acknowledgment is sent back to the sender.But this is for system error acknowledgements.

3. Did you refer the guide: "How To Handle Acknowledgments for IDoc"

https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/f6d2d790-0201-0010-9382-b50...

OR

https://websmp106.sap-ag.de/nw-howtoguides

Then go to exchange Infrastructure.

regards

chandra