cancel
Showing results for 
Search instead for 
Did you mean: 

CIF User Exit for Purchase Order CIFPUR01

Former Member
0 Kudos

Hi All,

I had couple of questions related to the way CIF user Exit CIFPUR01 is called whenever there is a change in txn data related to Purchase Orders on R/3 side.

I could see that the User Exit is called only when I completely deactivate the Integration Model using CFM3, and then reactivate the same using CFM3. If I generate a new model using CFM1 and then activate the newest version using CFM3 (without deactivating the earlier version), the system doesn't call the User Exit and this is an issue because the custom code for some calculation logic that we have defined is never called !

Additionally, whenever the change in Purchase Order is done (say to the Quantity, Delivery date etc.), the User Exit is not called when change is done via ME22N and given that Integration Model is active.

Is this the correct behavior?

Any thoughts on the above behavior would be highly appreciated.

Thanks in advance,

Regards,

Prashant

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hello,

Please make sure you have switched on 'update debugging' during debugging in the process of making any changes in the PO .

It should then stopped at BP in the userexit. Please check and update.

Rgs- Vikas

Former Member
0 Kudos

Hi Vikas,

Thanks for your suggestion.

I had already tried that by putting the break points in the include of the User Exit and the control of the program didn't enter the User Exit code when I generated and activated new version of the Integration model (CFM1 followed by CFM3).

The control enters the User Exit code only when I completely deactivate the existing Integration model and then reactivate.

Below are the scenarios which explain my point.

Scenario 1:

1. Completely deactivate the existing Integration model using CFM3.

2. Put the break point on the user exit code.

3. Generate the new version of Integration model through CFM1.

4. Activate the new version through CFM3. In this case, the control goes to the user exit code and does the calculation specified by us. This is correct and works as expected.

Scenario 2:

1. The Integration model is already activated and I put the break points in the User exit code.

2. I regenerate the new version of Integration model via CFM1.

3. I activate the new version through CFM3. In this case, the control DOES NOT go to the User exit code. This is not the expected behavior.

Scenario 3:

1. The Integration model is already activated and I put the break points in the User exit code.

2. I change the PO qty for existing Purchase order.

3. The change is immediately transferred to APO as expected. The control doesn't get transferred to user exit code. Thus the custom calculation in the INCLUDE of the user exit is not done and hence custom qty is not updated in APO.

Please let me know if you would need more clarifications.

Thanks,

Prashant

Former Member
0 Kudos

Hi,

Remove the breakpoints that you kept in code,Before that remove the queues in outbound and update.

check any functional module that include in code having breakpoints.

After activating the CIFPUR0.Then again run cycle to reflect PO in APO.

Might it gives a solution for you.

Regards,

venkat

Former Member
0 Kudos

Hi Venkat,

Thanks for your suggestion. I had already tried this as well.

Removing break points doesn't help either. That is the original issue that "the control never enters the User exit code when the new version of Integration model is activated".

Regards,

Prashant

Former Member
0 Kudos

Hello ,

Can you please try in this way...

1) change order

2) /h

3) save order

4) you will be in the debugging mode and here please select 'update debuggin' from the settings...

5) set BP at user exit

6) F8 , it should stop at the BP

Please check and confirm.

Rgs- Vikas

Former Member
0 Kudos

Hi Vikas,

The control still doesn't go to the User Exit. It however now reaches the Function Module ME_UPDATE_DOCUMENT, but skips at the User Exit level.

Is there anything else that needs to be done?

Thanks in advance,

Regards,

Prashant

pavan_verma2
Contributor
0 Kudos

Hi,

De register the queues in T code SMQR and start system debugging (path for system debugging is System >Utilities>Debug system).

Thanks,

Pavan Verma

Answers (0)