BSFN: How to Implement Sales Order Detail Cache (F42UI11) using column SOOR (Source of Order) in P421002 - Case Study

Purpose of Document

THIS IS INTERNAL ONLY DOCUMENT, DO NOT DISTRIBUTE TO CUSTOMER. ORACLE SUPPORT DOES NOT SUPPORT CUSTOMIZATION.

This document is to show example on how sales order application (P4210) makes use of cache (F42UI11) by adding additional column. This is example only and we discourage user from changing any standard functionality.

Before you start to change any standard functionality, check,

Purpose of this document is to explain as-is routine to explain how cache (F42UI11) is handled in sales order master business function. Make it sure that the columns to be added does exist from F42UI11 or F42UI12. In case a certain column is not a member of these sales order detail cache tables, you may need to add it manually and generate table either F42UI11 or F42UI12.

Note that Oracle shall not bear any responsibility for the outcome you may get and this modification may terminate support agreement for a certain application.
Important: since this change include the change of data structure, full package must be built after finishing test successfully

A. As – is routine explanation


B. Object affected



C. Step by step implementation

1. Verify Data Structure

Sales Order Master business function is made up of,

Function Name Source Module Description Template Name
F4211FSEditLine B4200310 F4211 Edit Line D4200310F
F4211FSEndDoc B4200310 F4211 End Document D4200310G
F4211FSBeginDoc B4200310 F4211 Begin Document D4200310H
F4211ClearWorkFile B4200310 F4211 Delete Work File D4200310I
F4211SOEInternalFunctions B4200311 F4211 Sales Order Entry Internal Functions D4200310I
F4211FSEditLinePreProcess B4200310 F4211 Pre Process Values For Edit Line D4200310J
F4211EditDoc B4200312 F4211 Edit Doc D4200312


2. Add additional parameter through Data Structure Design Aid for Data Structure D4200310F

Data Structure Change

nSourceOfOrder_custom is added

3. Typedef it to copy it to B4200310.h where D4200310F is defined

Typedef


3-1. Look for D4200310F

B4200310.h

3-2. Open it and copy all

Copy and paste



3-3. Paste it into B4200310.h (this is replace and make it sure both data structure and and ID definition is copied correctly)

Header

4. Add additional parameter added in D4200310F in internal function I4200310_LoadParmsForF42UI11 of B4200311.c

Not to disrupt existing routine, if possible, put it at the end of internal function

source code

5. Map cache to sales order detail file at internal business function I4200310_LoadF4211ParmsForED of B4200310.c


Since the datatype of this column is integer direct mapping is used (because size of memory are same)

mapping

6. Compile both B4200310 and B4200311 to make change take effects on application

compile

7. Add business view column SOOR to grid

Now GC Source Of Ordre is available in application P4210|W4210A

column appears

8. Map GC value in calling F4211FSEditLine

This is called 4 places so make is sure to map all of them

mapping


9. Test it

Test it.

User has populated it with value 777