Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

Purchase Order Scheduling ATP Screen

Former Member
0 Kudos

Does anyone know how to deal with the standard purchase order scheduling user exit in SD?

1 ACCEPTED SOLUTION

Former Member
0 Kudos

I had to change the standard program after getting access keys. I used memory id to determine whether the custom logic should be fired. We had some custom checks based on which the dely date had to populated so am including only the code where the date is finally copied.

In include LATP4FD9 - move the desired date to the schedule line date - Line 194

  • updated material availability date is stored in ATPTERMX

READ TABLE atptermx WITH KEY tline = mdve_diax-tline

TRANSPORTING mbdat.

rv03v-mbdtl = atptermx-mbdat.

*{ INSERT

DATA EXIT_FLAG2(1).

IMPORT EXIT_FLAG1 TO EXIT_FLAG2 FROM MEMORY ID atpcsx-delnr.

IF NOT EXIT_FLAG2 IS INITIAL.

RV03V-ETDTL = RV03V-WZTER.

FREE MEMORY ID atpcsx-delnr.

ELSE.

*} INSERT

rv03v-etdtl = mdve_diax-dat02.

*{ INSERT

ENDIF.

*} INSERT

The memory id can be populated in USEREXIT_AVAILABILITY_IN and then retrieved in above code. You can debug, change the values and see the results before implementing the code.

1 REPLY 1

Former Member
0 Kudos

I had to change the standard program after getting access keys. I used memory id to determine whether the custom logic should be fired. We had some custom checks based on which the dely date had to populated so am including only the code where the date is finally copied.

In include LATP4FD9 - move the desired date to the schedule line date - Line 194

  • updated material availability date is stored in ATPTERMX

READ TABLE atptermx WITH KEY tline = mdve_diax-tline

TRANSPORTING mbdat.

rv03v-mbdtl = atptermx-mbdat.

*{ INSERT

DATA EXIT_FLAG2(1).

IMPORT EXIT_FLAG1 TO EXIT_FLAG2 FROM MEMORY ID atpcsx-delnr.

IF NOT EXIT_FLAG2 IS INITIAL.

RV03V-ETDTL = RV03V-WZTER.

FREE MEMORY ID atpcsx-delnr.

ELSE.

*} INSERT

rv03v-etdtl = mdve_diax-dat02.

*{ INSERT

ENDIF.

*} INSERT

The memory id can be populated in USEREXIT_AVAILABILITY_IN and then retrieved in above code. You can debug, change the values and see the results before implementing the code.