FS - TS - W - PD303 - Master Data Maintenance
FS - TS - W - PD303 - Master Data Maintenance
Functional/Technical Specifications
1 of 97
TABLE OF CONTENT
Technical Contact
Hari Reddy CHG0090993 Updates basic data 2 but doesn't update MRP3 tab 12.4 11/04/2019
Shanker CHG0097061 - ED4K941528 - Add WF Status and the fields and search by Customer 12.5 11/06/2019
Srinivasan Part number and remove search by Nafta ID
Hari Reddy GHG0096980 Part holds are not releasing when the material is ready 12.6 11/07/2019
Shanker CHG0097703 – ED4K941652 OSA & CIM Worktime Plant and Grade ID BAPI error 12.7 11/15/2019
Srinivasan corrections
Shanker CHG0090997 - ED4K941282 Master Data not being CIFd corrections 12.8 11/19/2019
Srinivasan
` 3 of 97
Kristen Nast ED4K942212 - CHG0083306 : Width & Thickness PO Text read VT tables 12.9 1/21/2020
MD4K901044 - CHG0083306 : Width & Thickness Tol PO Text dropdowns
ED4K942404 – CHG0083306: Book/Spec/Grade Dropdowns (exclude
obsolete/inactive)
Fabio D CHG0084507 – MTF Changes for MES 13.0 3/23/2020
Santos Transports: MD4K901068 / ED4K942517
New fields being added to Master Data Quality OSA Panel
Fabio D CHG0099291 – ECM (Engineering change management) & revision level for Material 13.1 5/07/2020
Santos master
Customizing: ED4K943248 CHG0099291 - Engineer change number / ZBC03
Workbench: ED4K943349 CHG0099291 - Engineer change number material master
ED4K943403 CHG0099291 - Engineer change number material master (FIX-1)
Fabio D CHG0084507 - Tolerances determination for thickness/width 13.2 5/14/2020
Santos
Hari Reddy CHG0123086 - Restricted flags not updating when submitted 2. have to submit more 13.3 12/05/2020
than once.
Dirceu Gritti CHG0126546 - SAP Material Missing BOM's 13.4 03/10/2021
Sobrinho ED4K944787
ED4K944828
ED4K944854
Shanker CHG0140154 - Auto Forecasting Project Changes – New Logic for creating the 14.0 05/13/2021
Srinivasan Material Master
- The logic of creating the new Material master from NAFTA is suspended.
- The Workflow creation trigger point is changed.
- The Material MDA Fiori panel is changed to have the header fields as input fields.
- The MDA, OSA and CIM panel Label changes from NAFTA ID to Document ID.
ED4K945581
MD4K901487
MD4K901511
MD4K901513
MD4K901525
Hari Reddy CR00006345 MTF OSA panel -Material locked by user error 14.1 1/26/2022
Kristen Nast CR00007293 – Duplicate coat substrate options in OSA panel 14.2 2/14/2022
ED4K947494
Dirceu Gritti CR00007620 - When BSG is updated in ZUS_MASS_UPD category 1 spec not 14.3 3/7/2022
updating in SAP material
JDouglas CR00006192 Material Fiori Worklist Fixes 14.4 3/24/2022
JDouglas CR00007621 Add gauge & width conversion table to material and display panels 14.5 3/24/2022
Hari Reddy CR00005180 Drop cut loosing in S/4 Hana 14.6 3/27/2022
Hari Reddy CR00005980 and CR00005981 CIM panel data update not working 14.7 3/31/2022
Hari Reddy CR00007987 Future part characteristics are “falling off” the material at 14.8 3/31/2022
OSA completion
Dirceu Gritti CR00006531 - MTF not showing gauge/width tolerance PO text in the 14.9 4/4/2022
material display screen in Fiori. Same issue on the OSA worklist.
` 4 of 97
Hari Reddy CR00006339 Restrict material workflows from being created by MDA, 15.0 4/19/2022
OSA, and CIM for any status other than active.
Srinivasan N To differentiate the CORP or LLC materials part upload template has 15.1 5/18/2022
a field to capture it in Material Master MARA table.Adding Planning
Product Detail.
Object Overview
Business
Object ID
Process
SAP
SAP Release
Module
( ) Report
( ) Interface
( ) Conversion
Object Type ( ) Enhancement
( ) Form
(X) Workflow
Mock Up ID / Name
Medium High
Complexity of Object Priority
(following naming
SAP Program
SAP Transaction Name convention guidelines)
Name
` 5 of 97
1. General Object Overview
1.1 Generic WRICEF Descriptions
JUSTIFICATION
[Provide a high level description reason from deviation from standard SAP reports or BW reports.]
When a new part is awarded to AMUSA, a workflow will be initiated so the characteristics of the material can be
captured by the following groups:
NAFTA Team
Customer Service
Master Data Team
Corporate Quality
Outside Processing
Corporate Planning
The following master data needs to be created in SAP through workflow process:
Material Creation with all the required views with ECM
Routing with ECM
Production Version with ECM
Customer Info Record
Inspection Plan
CR00006192 3/2/2022
1. Change the 'Created By' in the Master Data worklist to reflect the user id of the individual who created the
material workflow (as opposed to who created the material id).
1a. Add Platform and model to the MDA panel. These fields currently exist in the CIM panel and need to be
added to the MDA panel. Later, all panels will be made to be consistent with the MDA panel so first we
need to make corrections need to that so it can serve as the model
2. The OSA and CIM panels would be corrected to have the dimensions fields look same as MDA panel.
From Amy’s email 3/1/22: The goal is to have the header information in all three panels (mda, osa, and
cim) consistent – as well as the material display.
2. Separate the ship city and state into two fields on OSA and CIM (as per the MDA panel)
` 6 of 97
3. Add UOM field to OSA and CIM (as per MDA panel)
4. Gauge, Width, and Length – separate value from form into two fields on OSA and CIM (as per MDA
panel)
3. Need ability to attach and view part documentation for non-automotive parts (with instantaneous
visibility) – i.e. Whirlpool
Change the code to look for the material number instead of the document id.
4. Read revision level from material master to the material display panel next to part status. Adding to
material display panel, only (not the others mentioned herein)
5. In the “Corporate QA” tab of the Master data display add “converted dimension details” as currently in
the OSA worklist. (from CR7621 made part of this change as it is the same panels being updated)
End CR6192
TRANSACTION VOLUME
` 7 of 97
Volume should be based on forecast management upload errors. Business doesn’t have the approximate number of
records as it is based on real time.
DEPENDENCIES
Workflow should trigger the material creation first followed by all the necessary views in material master based on
department ownership before creating Routings, Production Versions and Customer Info records.
AUTHORIZATION REQUIREMENTS
To be decided
RELATED DOCUMENTATION (ATTACH OSS NOTES, EMAILS, DOWNLOAD OF EXISTING REPORT, ETC)
PDD - Process
Definition Document for Master Data.doc
ASSUMPTIONS
Ownership of material master creation to be distributed based on each department to trigger the workflow process.
In this Workflow, the following Objects will be updated if the Material is New or Existing. For Existing Materials, some
specific Characteristics must be updated (list of characteristics provided below).
Material Creation with all the required views with ECM
Routing with ECM
Production Version
Inspection Plan
If Outside Processing is needed.
o Vendor Number.
o Subcontracting Purchase Info Record.
List of Characteristics that will be updated for the existing Material are: Width, Gauge, Inspection Plan, Coat
Weight, Cust Prime Side, Oil Type, Oil, Surface Treatment, Thickness, Width and Width Type. The details list has
been provided in the following Excel File.
http://sp.arcelormittalusa.com/fcna/IH/ITPMTemplate/SAPMTF/2%20%20Blueprint/12%20Functional%20Specs/Master
%20Data%20and%20Contracts/MD%20Workflow%20Teams.xlsx
The following Departments will be involved for a New or Existing Material. A Separate Email Distribution List will be
created for the users in these Departments.
Master Data Team
Corporate Quality
Outside Processing
Corporate Planning
2.1.3 The Workflow must be integrated with Fiori Apps. Each Outlook Email must have link to the Fiori App.
2.1.4 The Status of the Creation of each object must be reported in a separate Fiori Custom Report. It must contain the
following.
Which Users Already Processed their respective Task of a given object.
The Current User Creating the Object.
The users who yet to create the object.
The Start and End Time Stamp for each User must be tracked.
The Status must stay Completed, in progress and Not Started.
CR00006192 3/2/2022
` 9 of 97
1. Change the 'Created By' in the Master Data worklist to reflect the user id of the individual who created the material
workflow (as opposed to who created the material id).
1a. Add Platform and model to the MDA panel. These fields currently exist in the CIM panel and need to be
added to the MDA panel. Later, all panels will be made to be consistent with the MDA panel so first we need
to make corrections need to that so it can serve as the model
2. The OSA and CIM panels would be corrected to have the dimensions fields look same as MDA panel. From
Amy’s email 3/1/22: The goal is to have the header information in all three panels (mda, osa, and cim)
consistent – as well as the material display.
6. Separate the ship city and state into two fields on OSA and CIM (as per the MDA panel)
7. Add UOM field to OSA and CIM (as per MDA panel)
8. Gauge, Width, and Length – separate value from form into two fields on OSA and CIM (as per MDA panel)
3. Need ability to attach and view part documentation for non-automotive parts (with instantaneous
visibility) – i.e. Whirlpool
Change the code to look for the material number instead of the document id.
4. Read revision level from material master to the material display panel next to part status. Adding to
material display panel, only (not the others mentioned herein)
5. In the “Corporate QA” tab of the Master data display add “converted dimension details” as currently in the
OSA worklist. (from CR7621 made part of this change as it is the same panels being updated)
Start Requirement 1-
1. Change the 'Created By' in the Master Data worklist to reflect the user id of the individual
who created the material workflow (as opposed to who created the material id).
From Shanker Srinivasan 3/1/22: Please find the logic below for updating the information on who created the
Workflow:
In the business object type BUS1001006, using one of the methods inside that object while creating the
Workflow, take the User ID of the person who is calling the Workflow from the transactions ZPD15 or ZOTC05
and update the Table field SWWWIHEAD-WI_FORW_BY. And in the Fiori Odata
/sap/opu/odata/sap/ZUS_SOP303_MATMASTER_SRV/WORKITEMSSet, in the field “CreatedBy”, change the
logic to read the data from field SWWWIHEAD-WI_FORW_BY instead of Material created by and use that
value if it exists and the value will be blank if never updated since this change goes in place.
` 10 of 97
“CreatedBy” will now be the new field value. If no value is found then this will be blank:
End Requirement 1
` 11 of 97
Adding here:
Start Requirement 2-
2. The OSA and CIM panels would be corrected to have the dimensions fields look same as MDA panel.
The goal is to have the header information in all three panels (mda, osa, and cim) consistent – as well
as the material display.
A. Separate the ship city and state into two fields on OSA and CIM (as per the MDA panel)
B. Add UOM field to OSA and CIM (as per MDA panel)
C. Gauge, Width, and Length – separate value from form into two fields on OSA and CIM (as per
MDA panel)
These 2 panels header areas when displaying data are to be adjusted to be the same as the MDA panel so the changes
are to these first 2 shown (in EQ4 first one shows “OSA” and not “OSE”):
MDA - this is the model for OSA and CIM to appear like this one. After other changes like the addition of
platform/model to MDA, then use that as the model for the CIM and Master Data Quality OSA (or OSE).
First, by clicking on the Master Data Worklist tile in Fiori launchpad:
` 12 of 97
The system will present a list of SAP materials. This is the Master Data worklist. There is some search criteria
available at the top of the screen.
By selecting a SAP material from the worklist, below is the MDA panel. This is the screen where we input the
material characteristics and other required information. The header that is presented on this screen should
be consistent with the header information that is presented to the “Master Data Quality OSA” and CIM
in their panels.
` 13 of 97
Select material from list:
Header area to be made to match the MDA panel shown, above. This is the current panelt to be adjusted:
` 14 of 97
Click on the material in the list, Change this header area to look like the MDA screen for the header area:
End Requirement 2.
Start Requirement 3:
3. Need ability to attach and view part documentation for non-automotive parts (with
instantaneous visibility) – i.e. Whirlpool.
Change the code to look for the material number instead of the document id.
` 15 of 97
When displaying a material (shown here from EQ4) there is the “Material Documents” button on the top right:
Shown here in context. When this button is clicked it has been searching for documents by the “document ID”
(MARA-WRKST). This must be changed to search by the material ID (604295 in the example).
For EQ4 and the example, above, currently when clicking “Material Documents” the following is shown. The
documents are being updated to have the material ID instead of the NAFTA ID so after the change we should
still retrieve these documents:
End Requirement 3.
Start Requirement 4:
` 16 of 97
4. Read revision level from material master and add to the material display panel header area
Revision level: 04
Add “Revision Level” and value (04 in example, above) to appear here in the header area for material display,
only. Add right below “Part Status” as shown, below:
End requirement 4.
` 17 of 97
Start requirement 5:
5. In the “Corporate QA” tab of the Master data display add “converted dimension details” as
currently in the OSA worklist. (from CR7621 made part of this change as it is the same panels
being updated)
The converted tolerances should go in this yellow section, in the corporate QA section. These tolerances exist
and need to be converted - that conversion to be added below where it is marked yellow:
This is to be converted like this example where the top part is the existing part and now we need to add the
conversion, below. So the above fields in “Corporate QA” will be repeated in a display only section which
replicates what is already there with values converted to to/from metric.
End Requirement 5.
End CR6192
All the ZPRT material numbers will be starting from 600000 to 699999 series.
The material numbering object MATERIALNR buffer was changed from 10 to 1 so that the materials can be
created in the sequential order.
` 18 of 97
Tile 1 – MDA
1 ORD_CONTRACT_NUMBER Contract
Number
2 ORD_QUE_PRODUCT_ID Queue
Prod ID
3 ORD_ALT_CUST_PART Honda
MSA
Number
4 ORD_COAT_WEIGHT_TEXT Coating
WT
5 ORD_VC_SCENARIO VC
Scenario
6 ORD_CUST_HEAT_TREAT CA
Required
7 ORD_DIM_UNIT_OF_MEASURE Gauge
8 ORD_THICKNESS_ENG,
9 ORD_THICKNESS_MET
10 ORD_THICKNESS_TYPE
11 ORD_WIDTH_ENG, Width
12 ORD_WIDTH_MET
` 19 of 97
13 ORD_WIDTH_TYPE
14 ORD_LENGTH_ENG, Length
15 ORD_LENGTH_MET
16 ORD_LENGTH_TYPE
17 ORD_FLAT_TOL_PO_TEXT Flat
18 ORD_FLAT_TOL_PLUS Tolerance
19 ORD_FLAT_TOL_UOM
20 ORD_THICKNESS_TOL_PLUS_ENG, Gauge
21 ORD_THICKNESS_TOL_PLUS_MET Tolerance
Plus
22 ORD_THICKNESS_TOL_MINUS_ENG, Gauge
Tolerance
23 ORD_THICKNESS_TOL_MINUS_MET
Minus
25 ORD_WIDTH_TOL_PLUS_ENG, Width
26 ORD_WIDTH_TOL_PLUS_MET Tolerance
Plus
27 ORD_WIDTH_TOL_MINUS_ENG, Width
28 ORD_WIDTH_TOL_MINUS_MET Tolerance
Minus
30 ORD_CUST_EDGE Edge
Condition
31 ORD_STEEL_FORM Form
32 ORD_OIL_TYPE_DESC Oil Type
33 ORD_OIL_BRAND_DESC Oil Brand
34 ORD_OIL_AMOUNT_DESC Oil Amount
35 ORD_FINISH_DESC Finish
36 ORD_PROCESS_DESC Temper
(Process)
37 ORD_SURFACE_TREATMENT_DESC Surface
Treatment
38 ORD_COIL_OUTER_DIA_MAX, Coil OD
39 ORD_COIL_OUTER_DIA_MAX_MET
40 ORD_COIL_INNER_DIA, Coil ID
41 ORD_COIL_INNER_DIA_MET
42 ORD_MAX_COIL_WEIGHT, Max Coil
43 ORD_MAX_COIL_WEIGHT_ENG WT
44 ORD_COIL_WEIGHT_UOM UoM
45 ORD_EXPOSURE_CODE Exposure
46 ORD_CUST_PRIME_SIDE Primeside
47 VC_PRINT_TEXT_ZUSE End use
48 Basic data text in master data – for MDA Comments
team
49 Document data in master data View
Documents
50 Workflow status Hold
51 Workflow comments Hold
Comments
52 ORD_OP_AGREEMENT_NUMBER Warehouse
` 20 of 97
Only
Required
If characteristics ORD_STEEL_FORM = CB(Configured Blank), CL, TPZ, TWB then the below characteristics
should not be sent in the BAPI. This is applicable for all the Products.
ORD_COIL_INNER_DIA
ORD_MAX_COIL_WEIGHT
Below is the condition that should be in both workflows Material Create (WS90000014) and Change
(WS90000018) scenarios.
If characteristics ORD_STEEL_FORM = C then the below characteristics should not be sent in the BAPI.
ORD_LENGTH_ENG
ORD_LENGTH_MET
ORD_LENGTH_TYPE
V11.0:
In all the apps solved filters and sorts inside the column configuration button.
Certain fields that are sent to UI were showing empty values, now they are NONE as default even though the
user does not select it from the UI. In one of those fields is the Special Character field which has the default
value as None.
In all apps the plant will be selected from KNMT only for the Costumers starting with 8* as the range number.
In the first tile the Material creation date will be changed to Workflow creation date in the Apps Workitems
screens.
Add new field OP Warehouse Only Required in the Master Data Apps
In the material change scenario where the workflow will be (SWWWIHEAD-WI_RH_TASK) WS90000018,
check for the below critical fields that are changed by calling the function module
ZUS_SOP_303_CRITICAL_FIELD_CHG and if the return value is ‘Y’ then update only the Basic Data 2
(MARA-SATNR). If the return value is ‘N’ then in the action ‘submit’, update both the Basic data 2 (MARA-
SATNR) and the MRP3 (MARC-STDPD) with the changed values along with the other data that is already
available with the function module MATERIAL_SAVE_CONFIGURATION.
` 21 of 97
V11.0:
In OSE App the ORD_COIL_INNER_DIA value was sent with a different value because there was a clear
missing on the structure before the CoilID was updated.
http://ihe-web2012tv/QUEUE/VIEWDOCUMENTS.ASPX?ORDERID=0050902561
Version 12.9
*ORD_WIDTH_TOL_PO_TEXT
In class: ZCL_ZUS_SOP303_MATMAST_DPC_EXT
Under method: WIDTHTOLSET_GET_ENTITYSET
Values should be read from VT_PROD_WIDTH_TOL using CARD_TABLE_READ_ENTRIES
Dropdown values should be limited by ORD_QUE_PRODUCT_ID = QUE Product Id
* ORD_THICKNESS_TOL_PO_TEXT
In class: ZCL_ZUS_SOP303_MATMAST_DPC_EXT
Under method: GUAGETOLSET_GET_ENTITYSET
Values should be read from VT_PROD_THICK_TOL using CARD_TABLE_READ_ENTRIES
Dropdown values should be limited by ORD_QUE_PRODUCT_ID = QUE Product Id
Version 13.0
New fields to be added to the APP. Please follow the instructions below:
Version 13.1
During submit process, check the critical fields list (ZBC03 – DD Object ZUSSOP303CRITICAL) and compare
if there’s any critical characteristic being changed. The values comparison happen based on configuration data
stored in material master Basic Data and configuration from MRP3 view of material master.
If any change is being done at those critical fields, generate a new Revision Level at the material that is being
changed.
The material revision level range was set from 1 to 99. When the revision level reaches the 99 level, and issue
should be raised during the submit process of material.
` 25 of 97
Create Revision Level:
FM for revision level definition: 'REVISION_LEVEL_SELECT'
FM for changing revision level: 'REVISION_LEVEL_INSERT'
*** Check at the last session of this document for coding details.
Version 13.2
If the PO Text is equal to NON-STANDARD, do not overwrite fields Tol Plus and Tol Minus.
The FM call logic starts at line 257. Use internal table “tolerance_values” to handle the values.
Version 12.7
CoatWeight – The logic to populate the coat weight would be read from the parameter table ZUS303COATINGWT
based on the Book ID & Product ID.
The Mechs Data should have three columns for each of the fields namely Lower Limit and Upper Limit and UoM.
Using the Grade ID that is selected in the field Grade by the user, go to the table PLMK and pass it to the field PLMK-
PLNNR and apply the filter in the field PLMK- VERWMERKM with MECH001, MECH002, MECH003, MECH006,
MECH008 and the Material Gauge value is within the range of PLMK- ZGAUGEMIN and PLMK-ZGAUGEMAX. In the
resulting data take the value from PLMK-TOLERANZUN and PLMK-TOLERANZOB and update it into the fields as given
below.
MECH001 = Yield
MECH002 = Tensile
MECH003 = Elogation
MECH006 = N-Value
MECH008 = R-Bar
Mandatory fields:
Book
Spec-Rev
Grade
Tech Target
Tech Target Group
Steel Family
Routes Update:
The routes are selected from the MKAL table based on the configurable product and the Plant. In the initial
route screen, the program will read from the table MKAL the list of all the production version where the route is
updated with the characteristics PP_STANDARD_ROUTE = Y and the Production version status = empty (Not
Locked). When the user selects the indicator show all routes then the program will remove the filter for the
characteristics and will show up all the routes pertaining to that Product ID.
Note: All the Calvert routes are removed from being displayed. The MKAL table for the version should be
locked (MKAL-MKSP = 1) for all the Calvert related Production version.
The users will select the check box indicator against each route and only one route can be selected as locked.
A custom table ZUS_303_ROUTES is created is created to store the data for the SAVE operations in the APP.
` 27 of 97
No update to the routes or production version is created. Once the user Submits the data, the application
should call the ROUTING_MAINTAIN to assign the materials to the specific routes and
CM_FV_PROD_VERS_DB_UPDATE for creating the Production version.
The program will check in the MAPL table if the Route for which material has to be assigned is not already in
there. (MAPL-PLNNR where MAPL-LOEKZ NE ‘X’).
The Planning ID to be updated in the production version as well and the logic is below.
Group Counter logic for linking material and creating the production version - Go to MKAL table and enter the
MKAL-MATNR = Config Material (Eg. CR, HR, GI, GA etc) and MKAL-VERID = Production version number
from the route as input and get the output group counter = MKAL-ALNAL.
For the comments against each route to be updated, a custom field will be included in the table MAPL and the
data will be stored there. The comments text field does not have any limit. The paragraphs can be copied and
pasted into the comments section.
Anneal Type – The Anneal type is a display field that should be read from the classification data for the Class
CL_ROUTING and the Characteristic PP_ANNEAL_TYPE for the routes. Populate only values B or C.
12.9
Book, Spec, Grade Dropdowns
ZCL_ZUS_SOP303_MATMAST_DPC_EXT
BOOKSET_GET_ENTITYSET
SPECSET_GET_ENTITYSET
GRADESET_GET_ENTITYSET
Filter out the marked for deletion Book, Spec, and Grades (inspection plans):
Where Clause: ….AND (statu = ‘Z02’ OR statu = ‘Z01’)
` 28 of 97
AND PLKO-DELKZ = blank AND PLKO-LOEKZ = blank
While submitting the data in the app, the program will assign material to the inspection plan. The logic to get
the correct inspection plan is - take the Grade ID that is selected in the App and pass it to the table PLKO-
PLNNR and in the output get the relevant Group Counter PLKO-PLNAL. Call the
BAPI_INSPECTIONPLAN_CHANGE and pass the values Grade ID, Group Counter, Material and the Plant for
assigning the material to the inspection plan.
1. From the Corp QA app, in the action Submit, before calling the BAPI_INSPECTIONPLAN_CHANGE
to link the material to the inspection plan, please check in the table MAPL by passing the material number
in the field MATNR to check if there is any MAPL-PLNNR which the Grade ID, MAPL-PLNTY=Q is
existing. If no value is found then call the function module BAPI_INSPECTIONPLAN_CHANGE and
the MAINTAIN_MODE = C and pass the Grade ID and the material from the app to link it.
2. If value is found in the MAPL-PLNNR then compare the Grade ID that is passed in the app with the
MAPL-PLNNR and below action is to be done based on the results.
- Result 1 - Both the Grade IDs are same and the value is empty in MAPL- LOEKZ for MAPL-
PLNNR, then no action to be done.
- Result 2 - Both the Grade IDs are same and the value ‘X’ is found in MAPL- LOEKZ for MAPL-
PLNNR, then material has to be linked to the inspection plan by calling the function module
BAPI_INSPECTIONPLAN_CHANGE and the MAINTAIN_MODE = C –
Result 3 -Both the Grade IDs are different and the value is empty in MAPL- LOEKZ for the MAPL-
PLNNR, then call the function module BAPI_INSPECTIONPLAN_CHANGE and the
MAINTAIN_MODE = D to delete the MAPL-PLNNR and the KEY_DATE should be system date .
(Test Data in BAPI - Shanker -Delete - Mat & Grade assignment). In the same function module
pass the new Grade ID and the material coming from the app MAINTAIN_MODE = C to link it.
(Bapi test data: Shanker - Material Link to Inspection Pl) -
- Result 4 - Both the Grade IDs are different and the value is ‘X’ in MAPL- LOEKZ for the MAPL-
PLNNR, then call the function module BAPI_INSPECTIONPLAN_CHANGE and the
MAINTAIN_MODE = C and pass the new Grade ID and the material from the app to link it.
Version 12.7
When a Grade ID (PLNNR) is changed in the app for the Material(MATNR) and Plant(WERKS), while deleting
the old Inspection plan MAPL-PLNNR for the material using the function ZUS_SOP_303_INSP_PLAN in the
BAPI_INSPECTIONPLAN_CHANGE under the program LZUS_SOP303F01, the parameter plant that is
passed in the BAPI is changed to MAPL-WERKS instead of KNMT-WERKS. This resolves the “Object not
found” Bapi error while submitting the Workflow from the OSA Panel.
When submitting from the OSA App, the program will check if the in the include LZUS_SOP303F01 if the BOM
is created for the material and the active plant from KNMT-WERKS. If not then it will use the function module
CSAP_MAT_BOM_CREATE to create the BOM for the material with the configurable material.
Input parameters
Material number
` 29 of 97
Plant from KNMT
BOM usage = 1
Take the Grade ID what user enters in the app and from the table PLPO get the data where PLPO-VPLNTY =
S and its list of PLPO-VPLNR. Take all these data into a custom function module ZXXXXXX to select the right
PLPO-VPLNR (Reference Operation set) which has the characteristics QM_PRODUCT_TYPE_ID = Product
ID for the material that is entered in the app and the if Coat Substrate ID is available then it should match to the
characteristics QM_SUBSTRATE_ID value.
Once the correct PLPO-VPLNR is selected, go to the table PLKO to get the KTEXT = Tech Target and the
Characteristics QM_GROUPING_ID value = Tech Target Group. After getting the group number, go to the
table ZUS_QM535_GRP and pass the group number in the field GRP_ID to get the GRP_TEXT for displaying.
Use the parameter table ZUS303ORDACKNPROD with the below logic in the include LZUS_SOP303F02
8 TEK_CR 6 1 80 NULL
24 TFS Electrolytic Chromium Coated Steel or Tin Free NULL 200 Don't need now
` 31 of 97
Try
cmdReader = corpQualDBRead.GetSqlStringCommand(strAcknQuery)
Using drTargetRead As IDataReader = corpQualDBRead.ExecuteReader(cmdReader)
If drTargetRead.Read() Then
SAP_ORD_ACKN_PROD_SHORT.Value = drTargetRead("product")
SAP_ORD_ACKN_PROD_LONG.Value = drTargetRead("ProductLongName")
Else
SAP_ORD_ACKN_PROD_SHORT.Value = ""
SAP_ORD_ACKN_PROD_LONG.Value = ""
End If
If (Not drTargetRead Is Nothing) Then
drTargetRead.Close()
End If
End Using
Catch ex As Exception
Label1.Text = "SetAcknowlegeded: " & Err.Description
Label1.Visible = True
_sErrorMessage = "MESSAGE: " & ex.Message & vbCrLf & "SERVER: " & oSF.App_ServerName &
vbCrLf & "STACKTRACE: " & Right(ex.StackTrace.ToString, 500) & vbCrLf & "SQL: " & strAcknQuery
oSF.Write_Error_Log_Quality(Page.GetType().Name, "SetAcknowlegeded", Err.Number,
ex.Message, _sErrorMessage)
End Try
End If
1. Before creating the production version for a material while submitting from the Corp QA app, check in
the table MKAL-MATNR if any active PV is available for the material.
2. If there is any active PV found then, compare the version id MKAL-VERID with ZUS_303_ROUTES-
ROUTE where the ZUS_303_ROUTES-ROUTE- LOCKED = ‘X’. If it is same then exit without updating
the PV.
3. If the PV found for the material MKAL-VERID is different than the ZUS_303_ROUTES-ROUTE where
the ZUS_303_ROUTES-ROUTE- LOCKED = ‘X’, then lock the MKAL-VERID that is found and then
update the PV found in the ZUS_303_ROUTES-ROUTE where the ZUS_303_ROUTES-ROUTE-
LOCKED = ‘X’ which is updated via the app. Use the function module that is used now
CM_FV_PROD_VERS_DB_UPDATE(Inserting new record and locking the existing record can be done
at the same time). Test data created for this Material 603131 (MTF - Create & lock example).
Version 12.8
Corrected the below data input while creating the Production version.
MKAL-STLAL = 01 instead of 1.
MKAL-ALORT = MKAL-ALORT of SATNR (configurable material)
4. Another fix what needs to be done is if the user submits the data from Corp QA App without saving it
first, then the custom table ZUS_303_ROUTES is not getting updated. The table should get updated
both while save and submit.
V11.0:
5. At SAVE and SUBMIT, all the routes saved in the database zus_303_routes with MATNR as the key
are deleted and the new values from the App are saved instead.
` 32 of 97
In the material change scenario where the workflow will be (SWWWIHEAD-WI_RH_TASK) WS90000018, in
the action ‘submit’, update both the Basic data 2 (MARA-SATNR) and the MRP3 (MARC-STDPD) with the
changed values along with the other data that is already available with the function module
MATERIAL_SAVE_CONFIGURATION.
Updating the appropriate characteristics for coated and non-coated configurable materials
In the include LZUS_SOP303F01, the below characteristic needs to be filtered When MARA-SATNR = below
values.
WHEN 'HR' OR 'GA' OR 'GI' OR 'GZ' OR 'EG-ZN'.
DELETE lt_input[] WHERE atnam = 'ORD_CUST_TEK_REQ'. "1
DELETE lt_input[] WHERE atnam = 'ORD_CUST_HEAT_TREAT'. "2
DELETE lt_input[] WHERE atnam = 'ORD_STENCIL'. "3
DELETE lt_input[] WHERE atnam = 'ORD_COAT_SUBSTRATE_ID'. "4
DELETE lt_input[] WHERE atnam = 'ORD_COAT_SUBSTRATE'. "5
DELETE lt_input[] WHERE atnam = 'ORD_RESTR_COATING_IND'. "6
DELETE lt_input[] WHERE atnam = 'ORD_COAT_WEIGHT_TEXT'. "7
DELETE lt_input[] WHERE atnam = 'ORD_REQ_COAT_DRY_IND'. "8
DELETE lt_input[] WHERE atnam = 'ORD_NICKEL_FLASH'. "9
DELETE lt_input[] WHERE atnam = 'VC_PRINT_TEXT_ZUSE'. "10
DELETE lt_input[] WHERE atnam = 'ORD_CUST_WELDS_OK'. "11
DELETE lt_input[] WHERE atnam = 'ORD_CLEAN_STEEL_NO_SMUT'.
WHEN 'CR'.
DELETE lt_input[] WHERE atnam = 'ORD_INSIDE_STORAGE'. "1
* DELETE lt_input[] WHERE atnam = 'ORD_CUST_HEAT_TREAT'. "2
DELETE lt_input[] WHERE atnam = 'ORD_STENCIL'. "3
DELETE lt_input[] WHERE atnam = 'ORD_COAT_SUBSTRATE_ID'. "4
DELETE lt_input[] WHERE atnam = 'ORD_COAT_SUBSTRATE'. "5
DELETE lt_input[] WHERE atnam = 'ORD_RESTR_COATING_IND'. "6
DELETE lt_input[] WHERE atnam = 'ORD_COAT_WEIGHT_TEXT'. "7
DELETE lt_input[] WHERE atnam = 'ORD_REQ_COAT_DRY_IND'. "8
* DELETE lt_input[] WHERE atnam = 'ORD_NICKEL_FLASH'. "9
DELETE lt_input[] WHERE atnam = 'VC_PRINT_TEXT_ZUSE'. "10
* DELETE lt_input[] WHERE atnam = 'ORD_CUST_WELDS_OK'. "11
V11.0:
New correction to be put in the method: COATSUBSTRATESET_GET_ENTITYSET -> If the Product = GA or
GI for the material then:
- If the value of the GaugeMM(ORD_THICKNESS_MET) is < 1.8, the default Substrate value is CR
- If the value of the GaugeMM(ORD_THICKNESS_MET) is > 3.3, the default Substrate value is HR
- if the value of the GaugeMM(ORD_THICKNESS_MET) is between these two range then both the HR &
CR should be shown in the dropdown and the user will select what is needed.
` 33 of 97
Width Tolerances Validation
1. If the characteristic ORD_WIDTH_TOL_PLUS_MET > 77.0000 then before submitting into Bapi and
error message to be thrown. Error Message “ORD Width Tol Plus cannot be more than 77.0
V11.0:
If steel family = mart, dp, trip or mp then heat treatement field = continuous anneal. If heat treatement
continuous anneal then only CA routes show up.
When user submits the data in the CIM app, the program will remove the X-plant Material status block = 01, so
that the part is complete now and can be used for the sales order allocation purposes.
If a material is created for more than one plant, then the plant that is visible in the CIM app for the users will be
taken from Customer material info record KNMT-WERKS and the same will be passed into the BAPI to read
the MRP data in the app and the update will also happen for the same plant.
In the material change scenario where the workflow will be (SWWWIHEAD-WI_RH_TASK) WS90000018,
update always both the Basic data 2 (MARA-SATNR) and the MRP3 (MARC-STDPD) with the changed values
along with the other data that is already available using the function module
MATERIAL_SAVE_CONFIGURATION
Commit delay in CIM text – due to the text not getting updated at the first instance while saving, in the program
a delay for 5 seconds has been put after the commit.
` 35 of 97
V11.0:
Planning Time Fence: when submitting the data from CIM app BAPI_MATERIAL_SAVEDATA when you pass
the data in the field REPLENTIME the same value will be passed in the field PL_TI_FNCE (Planning time
fence).
Function module SAVE_TEXT is used for updating the texts into material long text with the below text objects.
TDOBJECT-MATERIAL
TDNAME - the material number with leading zeros.
TDID - GRUN for Basic data text
PRUE for OSA text
IVER for CIM text
ZSTATUS Report
For a better understanding of the materials that needs to be prioritized for completion, the ZSTATUS report is
being deployed to the master data team for them to look at the orders and then start working on the materials
that should be completed first.
V11.0:
ZSTATUS Report modification:
1. Create a new column – “NAFTA ID” "
2. Added 4 new push buttons as below
` 36 of 97
Orders with H3 blocks will be removed from MDA and OSE apps in the change scenario.
Workflow
WRIC Description Business / Data Object (Sales Engaged Parties Owner
EF-ID Order)
XX-xx- BUS1001006 Material create MDA Team
W001 Header Tasks
WS90000014 – New
Material create
WS90000018 – Material
change
Trigger Events
Create event for material Creation
Use function module SWE_EVENT_CREATE to create a event new material with the Header Task
WS90000014
OBJTYPE BUS1001006
OBJKEY MARA-MATNR where MARA = NAFTAID
EVENT CREATED
START_RECFB_SYNCHRON X
material_type = 'ZPRT'
industry_sector = 'M'
required_numbers = '1
The material will be in MDA Pannel worklist once it is created successfully with Customer material Info record in it.
Any NAFTA change trigger will cancel the existing workflow and will create a new workflow and will be in the MDA
App.
Input Parameters:
The users will search the materials based on the below search keys.
The report will pull the data from the material table and its characteristics table and is organized per the material
departments.
MDA – Master Data
OSA – Corporate Quality
CIM – Central Inventory Management
The report displays the NAFTA related header data first for the material and then has the fields organized per above
departments. For non-nafta materials, the report pulls basic material details along with Customer material information.
For getting the values for the material characteristics, use the below logic:
1. Pass the material number entered in the input screen into MARA-MATNR to get the configuration object
number MARA-CUOBF.
2. Use the function CUXM_GET_CONFIGURATION enter the configuration object number MARA-CUOBF into
the import parameter INSTANCE and get all the required characteristics values E1CUVAL.
Version 12.5
LAYOUT – Header Data NAFTA
Table / Structure / Function Field Name / Characteristics Field Input Field Field Logic
Grou Type Name
p
BUT000 NAME_ORG1 Nafta Char Customer Input MATNR into
Info displa Name KNMT-MATNR and get
y field KNMT-KUNNR; pass
KNMT-KUNNR into
BUT000- PARTNER
and get NAME_ORG1
CUXM_GET_CONFIGURATI ORD_PART_SHIP_CITY Nafta Char Ship City /
ON Info displa State
y field
KNMT MATNR Nafta Char Material Input MATNR into
Info displa Number KNMT-MATNR and get
y field KNMT-MATNR
KNMT KDMAT Nafta Char Part Input MATNR into
Info displa Number KNMT-MATNR and get
y field KNMT-KDMAT
KNMT POSTX Nafta Char End Use Input MATNR into
Info displa KNMT-MATNR and get
y field KNMT- POSTX
MARA WRKST Nafta Char NAFTA ID Input MATNR into
Info displa KNMT-MATNR and get
` 38 of 97
y field KNMT- WRKST
CUXM_GET_CONFIGURATI ORD_PLATFORM Nafta Char Platform
ON Info displa
y field
CUXM_GET_CONFIGURATI ORD_MODEL Nafta Char Model
ON Info displa
y field
CUXM_GET_CONFIGURATI ORD_QUE_PRODUCT_ID Nafta Char Product
ON Info displa
y field
CUXM_GET_CONFIGURATI ORD_THICKNESS_MET or Nafta Char Gauge Determined based on
ON Info displa ORD_DIM_UNIT_OF_MEAS
URE
ORD_THICKNESS_ENG y field
` 39 of 97
MATNR
SAP UI - Modifications
Service : zsop_md_matinfo
ID : arcelorMittal.materialinfo
Add two new fields in the service as described below under the header section Nafta info.
LAYOUT – UI5
Service Field Name Input Type Field Group Field Name Translation Rule
` 40 of 97
zsop_md_matinfo WFStatus Char Display Nafta Info WF Status Bind to entity set
field MATNRMARASet -
WFStatus
zsop_md_matinfo WFCompdate Char Display field Nafta Info WF Bind to entity set
Completion MATNRMARASet -
Date WFCompdate
Table/Structure Name Field Name Input Type Field Name Translation Rule
` 45 of 97
1. Min Safety Stock Weeks - This should be updated to a new field identified in the Material Master under
Forecasting data view in the field Periods per season (MPOP-PERIO) – Create a new plain text input field
in the CIM panel below the field Min Safety Stock. In the Gateway Services MatnrCIMSet add the new input
field “Min SS (Wks)” in the service with length 3.
In the UI, new field input to be added and will read data from this service MatnrCIMSet and the method
zcl_zus_get_cimdata. While submitting from the UI Panel using method
MATNRCIMSET_UPDATE_ENTITY, use the include LZUS_SOP303F02 in the backend to update this
field in the material master under Forecasting data field MPOP-PERIO using
BAPI_MATERIAL_SAVEDATA in the field BAPI_MPOP - PERIO and BAPI_MPOPX – PERIO = ‘X’.
2. MRP Type: Populate the value automatically based on MTO or MTF indicator selected by the user.
Below is the combination table. No change is needed in the logic for field mapping in the gateway Odata
service. If the user overwrites the data that is automatically populated in the UI than that should be taken
preference and that data should be updated in the backend material master.
3. Direct Part: Add a new check box field called “Direct Part” in the CIM Panel. This indicator to be added
in the material master under the Work Scheduling data view in the filed Critical Part MARC-KZKRI.
In the Gateway Services under the MatnrCIMSet add the Checkbox input field “Direct Part” and should read
the data using the method zcl_zus_get_cimdata.
While save or submit from the user, UI should send the field as ‘N’ if un-checked and ‘Y’ if checked using
the method MATNRCIMSET_UPDATE_ENTITY and use the include LZUS_SOP303F02 in the backend to
update this field in the material master using BAPI_MATERIAL_SAVEDATA in the field BAPI_MARC-
KZKRI and BAPI_MARCX- KZKRI = ‘X’.
By default, the checkbox will be un-checked in the UI and If the user checks this field in the Fiori screen
then the UI will send the indicator Y.
If the value of the GaugeMM is < 1.6 mm, the default Substrate value is CR
If the value of the GaugeMM is > 3.3 mm, the default Substrate value is HR
Else if defaults to CR but both CR/HR show
If the value of the GaugeIN is < 0.063 in, the default Substrate value is CR
If the value of the GaugeIN is > .130 in, the default Substrate value is HR
Else if defaults to CR but both CR/HR show
Version 12.6
TR ED4K941523 CHG0096980 - Remove H3 Block even if no Material Change
CHG0096980 Part holds are not releasing when the material is ready
Bug fix in the code for the program LZUS_SOP303F01 Part hold releases but does not release the part
hold in sales orders
Version 12.7
Version 12.8
Populate two new fields in the Material master in the Advanced Planning tab while submitting the material
from CIM Panel.
MARC-PPSKZ = X
MARC-SCM_RRP_TYPE = 4
In the Bapi BAPI_MATERIAL_SAVEDATA, populate the below fields if the data in plantdata-
plan_strgp = 'ZC'
plantdata-adv_plng_ind = X
plantdata-rrp_planning_type = '4'
` 47 of 97
Standard Rules Latest End, Latest Start
http://sp.arcelormittalusa.com/fcna/IH/ITPMTemplate/SAPMTF/2%20%20Blueprint/OSE%20-%20Rules/Part%20OSE
%20Panel%20checks_11072017.xlsx?web=1
` 50 of 97
Version 14.0
` 51 of 97
Process Owner System Description
Part Sheet Account Managers Email Spreadsheet Account manager receives the information about
the Forecast part from the HIS Spreadsheet and
other sources.
Part Sheet Account Mangers Email Spreadsheet Account communicates to MDA Part inititator for
creating a Auto part in the system via email by
sending the new part sheet Excel file. The Part sheet
will contain all the information about creating a new
part in the system which used to come from the
NAFTA MDG system.
Create Future Part MDA SAP S/4 MDA Part initiator uses the New Auto part creation
program for creating new SAP materials with all the
required attributes needed for Forecasting in IBP.
All the new Auto parts created in the system will have
“Future” as its initial status.
Forecast Part Report FA SAP S/4 A new SAP ALV report is created for Forecast Analyst
for them to review all the newly created part in the
system so that they can assign it to a respective
Mnemonic Material for the purpose of forecasting.
Activate Part MDA SAP S/4 When the Account manager decides to make the Auto
Part active, then he communicates it to the Part
Initiator via email and the PA will run the New Forecast
Part Report in the system to change the status of the
Part from “Future” to “Active”. This report will change
Status of the material and will trigger the existing
MDA workflow for completion of the part with all the
Required attributes for order booking.
TRANSACTION VOLUME
All the Auto product master data from S4 system. (Approx. 6500 parts)
DEPENDENCIES
The Part status custom field ZPART_STATUS should be created and all the existing parts are updated with the appropriate
status.
AUTHORIZATION REQUIREMENTS
Part initiators – For creating and updating the part along with the characteristics. Run the New Forecast Part report.
Forecast Analyst -Authorization for running the New Forecast Part report.
RELATED DOCUMENTATION (ATTACH OSS NOTES, EMAILS, DOWNLOAD OF EXISTING REPORT, ETC)
N/A
` 52 of 97
ASSUMPTIONS/FOLLOW-UP ACTIONS
The current NAFTA part creation program has to be discontinued and the batch job schedule to be stopped in the system on
prior to the day of go-live.
SAP UI - Modifications
The below fields have to be changed to input field from display only field. And when user saves the data to should
update back into the respective characteristics in Material master.
A new function is called ZSOP760_PLANT_ID with the below logic for populating the values for the below fields
Output - The output format should be the SORT1 of the Plant table and the CRHD- ARBPL
where CRHD-OBJID = PLPO- ARBID. (eg. For the route id GA_22, the Steelmake_id should be CLEV-CPU
` 54 of 97
15 Additional Technical Specifications:
List of Different objects types being used in This RICEFW Object.
1. WORKFLOW: There 2 workflows have been Developed as part of the Material Creation and Material
change: Material Creation WS90000014 and Material change WS90000018.
` 55 of 97
3. Function modules: Below List of function modules have been implemented as part this Development.
4. Custom Developed Class: SE24; Below List of Class have been implemented as part of this
Development.
ZCL_ZUS_SOP303_MATMAST_DPC
ZCL_ZUS_SOP303_MATMAST_DPC_EXT
ZCL_ZUS_SOP303_MATMAST_MPC
ZCL_ZUS_SOP303_MATMAST_MPC_EXT
ZCL_ZUS_SPO303_SPECK_DESC
5. List of tables:
ZUS_303_HLD_CMTS
ZUS_303_ROUTES
ZUS303STEELFAM it is a view created to get the Steel family details.
6. List of Param tables with Structures: Below are the List Param Tables and List of Structures have
developed As part of this Development.
7. List of Transports:
Version 12.0
2) Direct Part:
Version 12.1
Bug Fix in the Odata Services for the characteristics value update for ORD_COAT_SUBTRATE_ID
where if there is an empty value for this characteristics in the data coming from the panel then the code
was taking the previous characteristics value and it is updating in the material for this characteristics.
Code correction done to clear the characteristics value in the runtime from the previous characteristics
and if no value is filled for the current characteristics then the code takes the characteristics value from
the database and send it for BAPI update.
ELSE.
READ TABLE t_e1cuval INTO ls_e1cuval WITH KEY charc = ls_input-atnam.
ls_input-mwert = ls_e1cuval-value.
ENDIF.
Bug fix for ORD_FLAT_TOL_PO_TEXT to make sure to populate ‘—’ when ‘—’ is selected and make a
check to make sure the value is not ‘NULL’ when there is a value in Tolerance. Another check is to
make sure tolerance is not more than 5 inches or 120 MM.
Version 12.2
Bug fix in the code for the function module ZUS_SOP_303_GET_TECHTARGETS where unnecessary
loop is removed.
Version 12.3 CHG0090993 Updates basic data 2 but doesn't update MRP3 tab
Bug fix in the code for the function module US_SOP_303_CRITICAL_FIELD_CHG where Critical field
check is not correct. It is not reading the value from FIORI screen to check value in the values in the
database. It was checking basic data and MRP3 configuration values which is in correct
SELECT SINGLE a~atnam, b~atinn, b~atwrt, b~atflv
FROM cabn AS a INNER JOIN ibinval_sel_f AS b
ON a~atinn = b~atinn
INTO @DATA(ls_self)
WHERE b~instance = @lv_cuobf
AND a~atnam = 'ORD_OSE_REVIEW_IND'.
* IF sy-subrc EQ 0 AND ls_self-atwrt = 'Y'.
IF ( lv_ui is NOT INITIAL and i_input-forceose ne 'false' ).
critical = 'Y'.
elseif ( lv_ui is INITIAL and sy-subrc EQ 0 AND ls_self-atwrt = 'Y' ).
critical = 'Y'.
ELSE.
SELECT a~atnam, b~atinn, b~atwrt, b~atflv
FROM cabn AS a INNER JOIN ibinval_sel_f AS b
` 58 of 97
ON a~atinn = b~atinn
INTO TABLE @DATA(lt_self1)
WHERE b~instance = @lv_cuobf
AND a~atnam IN @ran_atnam.
loop at lt_self1 INTO DATA(ls_self1).
APPEND INITIAL LINE TO lr_atinn ASSIGNING FIELD-SYMBOL(<lfs_atinn>).
<lfs_atinn>-sign = 'I'.
<lfs_atinn>-option = 'EQ'.
<lfs_atinn>-low = ls_self1-atinn.
endloop.
DELETE ADJACENT DUPLICATES FROM lr_atinn COMPARING ALL FIELDS.
select a~atwtb, b~atinn, b~atzhl, b~atwrt
from
cawnt as a INNER JOIN cawn as b
on a~atinn = b~atinn and a~atzhl = b~atzhl
INTO TABLE @data(lt_ctext)
where a~spras eq 'E' and a~atinn in @lr_atinn.
SELECT SINGLE cuobj
FROM marc AS a INNER JOIN knmt AS b
ON a~matnr = b~matnr
AND a~werks = b~werks
INTO @DATA(lv_cuobj)
WHERE a~matnr = @matnr.
SELECT a~atnam, b~atinn, b~atwrt, b~atflv
FROM cabn AS a INNER JOIN ibinval_sel_f AS b
ON a~atinn = b~atinn
INTO TABLE @DATA(lt_self2)
WHERE b~instance = @lv_cuobj
AND a~atnam IN @ran_atnam.
critical = 'N'.
*-- Begin of change - ED4K941335
IF lv_ui is INITIAL.
LOOP AT lt_self1 INTO ls_self1.
READ TABLE lt_self2 INTO DATA(ls_self2) WITH KEY atnam = ls_self1-atnam.
IF ls_self1-atwrt NE ls_self2-atwrt.
critical = 'Y'.
exit.
endif.
endloop.
else.
LOOP AT lt_self1 INTO ls_self1.
CASE ls_self1-atnam.
WHEN 'ORD_CUST_EDGE'.
READ TABLE lt_ctext INTO DATA(ls_ctext) with KEY atwtb = I_INPUT-
edgecondition.
IF sy-subrc = 0.
IF ls_ctext-atwrt ne ls_self1-atwrt.
critical = 'Y'.
ENDIF.
ENDIF.
WHEN 'ORD_EXPOSURE_CODE'.
` 59 of 97
READ TABLE lt_ctext INTO ls_ctext with KEY atwtb = I_INPUT-exposure.
IF sy-subrc = 0.
IF ls_ctext-atwrt ne ls_self1-atwrt.
critical = 'Y'.
ENDIF.
ENDIF.
WHEN 'ORD_STEEL_FORM'.
READ TABLE lt_ctext INTO ls_ctext with KEY atwtb = I_INPUT-form.
IF sy-subrc = 0.
IF ls_ctext-atwrt ne ls_self1-atwrt.
critical = 'Y'.
ENDIF.
ENDIF.
WHEN OTHERS.
ENDCASE.
ENDLOOP.
ENDIF.
LOOP AT lt_plpo INTO DATA(ls_plpo).
READ TABLE t_plko_prodid INTO DATA(ls_prodid) WITH KEY plnnr = ls_plpo-vplnr.
IF sy-subrc = 0.
READ TABLE lt_plko INTO DATA(ls_plko) WITH KEY plnnr = ls_plpo-vplnr.
e_tech_target = ls_plko-ktext.
lv_techtarget = ls_plpo-vplnr.
IF i_coat_sub IS NOT INITIAL.
READ TABLE t_plko_coatsub INTO DATA(ls_coatsub) WITH KEY plnnr = ls_plpo-
vplnr.
IF sy-subrc = 0.
READ TABLE lt_plko INTO ls_plko WITH KEY plnnr = ls_plpo-vplnr.
e_tech_target = ls_plko-ktext.
lv_techtarget = ls_plpo-vplnr.
EXIT.
ELSE.
CLEAR e_tech_target.
CLEAR lv_techtarget.
ENDIF.
ENDIF.
ENDIF.
ENDLOOP.
Version 12.5
*-- LKP - 11/07/2019 - Begin
DATA: l_mat(18) TYPE c,
l_text TYPE swwwihead-wi_text.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
EXPORTING
input = er_entity-matnr
IMPORTING
output = l_mat.
*-- WFStatus
SELECT SINGLE current_phase INTO @DATA(l_current_phase)
` 60 of 97
FROM z_c_matdash_open( p_flag = 'M' )
WHERE material = @l_mat.
IF sy-subrc = 0.
er_entity-wfstatus = l_current_phase.
ENDIF.
IF er_entity-wfstatus IS INITIAL.
CONCATENATE '%' l_mat INTO l_text.
SELECT wi_cd, wi_ct, wi_stat, wi_aed INTO @DATA(st_swwwihead) "#EC CI_NOFIELD
FROM swwwihead UP TO 1 ROWS
WHERE wi_stat EQ 'COMPLETED'
AND top_task IN ('WS90000014', 'WS90000018')
AND wi_text LIKE @l_text
ORDER BY wi_cd DESCENDING, wi_ct DESCENDING.
ENDSELECT.
IF sy-subrc = 0.
er_entity-wfstatus = st_swwwihead-wi_stat.
ENDIF.
ENDIF.
*-- WFCompdate
IF st_swwwihead-wi_stat = 'COMPLETED'.
CONCATENATE st_swwwihead-wi_aed+4(2) st_swwwihead-wi_aed+6(2) st_swwwihead-
wi_aed(4) INTO er_entity-wfcompdate SEPARATED BY '/'.
ENDIF.
*-- LKP - 11/07/2019 - End
Version 12.7
Method: WORKITEMSCORPQTY_GET_ENTITYSET
SELECT a~matnr, a~satnr, b~mmstd, b~werks, c~kdmat, a~cuobf, c~kunnr INTO TABLE @D
ATA(lt_mat) FROM mara AS a
LEFT OUTER JOIN marc AS b
ON a~matnr = b~matnr
LEFT OUTER JOIN knmt AS c
ON b~matnr = c~matnr
AND b~werks = c~werks
AND c~kunnr LIKE '00008%'
WHERE a~matnr = @i_matnr.
Method: WORKITEMSCIMSET_GET_ENTITYSET
SELECT a~matnr, a~satnr, c~kdmat, b~werks, a~cuobf, c~kunnr INTO TABLE @DATA(lt
_mat) FROM mara AS a
LEFT OUTER JOIN marc AS b
ON a~matnr = b~matnr
LEFT OUTER JOIN knmt AS c
ON b~matnr = c~matnr
AND b~werks = c~werks
` 61 of 97
AND c~kunnr LIKE '00008%'
WHERE a~matnr = @es_cim-matnr. "ls_key_tab-value..
DATA:ls_mat LIKE LINE OF lt_mat.
ELSEIF ls_mapl-plnnr NE i_gradeid AND ls_mapl-loekz NE 'X'.
group1 = ls_mapl-plnnr.
ls_material_task_allocations-plant = ls_mapl-werks.
ls_material_task_allocations-maintain_mode = 'D'.
ls_material_task_allocations-material = i_matnr.
APPEND ls_material_task_allocations TO material_task_allocations1.
CALL FUNCTION 'BAPI_INSPECTIONPLAN_CHANGE'
EXPORTING
key_date = sy-datum
group = group1
groupcounter = groupcounter
material = material
plant = ls_mapl-werks
TABLES
material_task_allocations = material_task_allocations1
material_task_allocations_x = material_task_allocations_x
return = return.
Version 12.8
Include : LZUS_SOP303F04
***BOC BXMUKK 10/29/19 CHG0090997
SPLIT task_list_group AT '_' INTO lv_satnr_temp lv_verid.
SELECT alnal,alort FROM mkal WHERE matnr = @lv_satnr AND verid = @lv_verid
ORDER BY PRIMARY KEY INTO ( @gv_group_counter, @gv_alort ) UP TO 1 ROWS .
EXIT.
ENDSELECT.
***EOC CHG0090997
FORM crt_pro_ver USING ls_routes TYPE zus_303_routes.
DATA it_mkal_i TYPE STANDARD TABLE OF mkal.
DATA ls_mkal_i TYPE mkal.
DATA it_mkal_u TYPE STANDARD TABLE OF mkal.
DATA it_mkal_d TYPE STANDARD TABLE OF mkal.
DATA it_mkal_aend TYPE STANDARD TABLE OF mkal_aend.
DATA lv_material TYPE string.
DATA:lv_char(10),
lv_verid TYPE mkal-verid,
lv_route TYPE plnnr, "added by mxnura
zit_mkal TYPE STANDARD TABLE OF mkal, "added by mxnura
ls_mkal_u TYPE mkal,
zit_routes TYPE STANDARD TABLE OF zus_303_routes.
*data:lv_satnr type mara-satnr.
` 62 of 97
* SELECT SINGLE satnr FROM mara INTO lv_satnr WHERE matnr = ls_routes-matnr.
* CONCATENATE lv_satnr '_' ls_routes-route INTO ls_routes-route.
** task_list_group = ls_routes-route. "Route
*clear lv_satnr.
SELECT SINGLE werks FROM knmt INTO ls_mkal_i-werks WHERE matnr = ls_routes-matnr.
" mxghin check if desired Plant is associated with material
SELECT SINGLE aeszn INTO @DATA(lv_desired_plant) FROM mara WHERE matnr = @ls_routes-
matnr.
IF lv_desired_plant IS NOT INITIAL.
ls_mkal_i-werks = lv_desired_plant.
ENDIF.
" end mxghin
SELECT SINGLE matnr, werks, verid FROM mkal INTO @DATA(ls_mkal) WHERE matnr = @ls_rout
es-matnr AND
werks = @ls
_mkal_i-werks AND
verid = @
lv_verid.
SELECT SINGLE ktext FROM plko INTO @DATA(lv_ktext) WHERE plnnr = @ls_routes-route.
IF ls_mkal IS INITIAL.
ls_mkal_i-matnr = ls_routes-matnr.
"1110
SPLIT ls_routes-route AT '_' INTO lv_char lv_verid.
ls_mkal_i-verid = lv_verid.
ls_mkal_i-bdatu = '99991231'.
ls_mkal_i-adatu = sy-datum.
lv_material = ls_routes-matnr.
SHIFT lv_material LEFT DELETING LEADING '0'.
IF ( ls_mkal_i-werks = '1120' OR ls_mkal_i-werks = '1130' OR ls_mkal_i-werks = '11
80' OR ls_mkal_i-werks = '2008' ).
MODIFY t437p FROM @( VALUE #( plan_id = lv_material werks = ls_mkal_i-werks ) ).
IF sy-subrc = 0 .
ls_mkal_i-mdv02 = lv_material.
COMMIT WORK.
ELSE.
ROLLBACK WORK.
ENDIF.
ENDIF.
ls_mkal_i-stlan = '1'.
ls_mkal_i-plnty = 'N'.
ls_mkal_i-stlal = '01'.""Added BXMUKK 10/29/19 CHG0090997
ls_mkal_i-alort = gv_alort.""Added BXMUKK 10/29/19 CHG0090997
ls_mkal_i-plnnr = ls_routes-route.
ls_mkal_i-alnal = gv_group_counter. "'01'.
ls_mkal_i-text1 = lv_ktext.
ls_mkal_i-prfg_f = '1'.
ls_mkal_i-prfg_s = '1'.
ls_mkal_i-prdat = sy-datum.
APPEND ls_mkal_i TO it_mkal_i.
` 63 of 97
Populating the values in the Advanced Planning Tab from BAPI_MATERIAL_SAVEDATA
****BOC BXMUKK CHG0090997 11/18/2019
IF plantdata-plan_strgp = 'ZC'.
plantdata-adv_plng_ind = abap_true.
plantdatax-adv_plng_ind = abap_true.
plantdata-rrp_planning_type = '4'.
plantdatax-rrp_planning_type = abap_true.
ELSE.""if they transfer from ZC to another strategy group, clear the
values
plantdata-adv_plng_ind = abap_false.
plantdatax-adv_plng_ind = abap_true.
plantdata-rrp_planning_type = space.
plantdatax-rrp_planning_type = abap_true.
ENDIF.
****EOC CHG0090997
*
Version 12.9
************ BOC CHG0083306 Commented By Neha On 24.01.2020 Changes Start **********
* DATA:lv_atinn TYPE cawn-atinn.
* CALL FUNCTION 'CONVERSION_EXIT_ATINN_INPUT'
* EXPORTING
* input = 'ORD_WIDTH_TOL_PO_TEXT'
* IMPORTING
* output = lv_atinn.
*
* SELECT atinn, atwtb FROM cawnt INTO TABLE @DATA(lt_cawnt) WHERE atinn = @lv_atinn
AND atwtb IN @lr_widthtol .
* LOOP AT lt_cawnt INTO DATA(ls_cawnt).
* es_entityset-ord_width_tol_po_text = ls_cawnt-atwtb.
* APPEND es_entityset TO et_entityset.
* ENDLOOP.
************ EOC CHG0083306 Commented By Neha On 24.01.2020 Changes Ends **********
************ BOC CHG0083306 Added By Neha On 24.01.2020 Changes Start **********
*
CONSTANTS: lc_var_table TYPE tablstruct-var_tab VALUE 'VT_PROD_WIDTH_TOL',
lc_que_prod_id TYPE vtentries-vtcharact VALUE 'ORD_QUE_PRODUCT_ID',
lc_ord_width_tol_text TYPE vtentries-vtcharact VALUE 'ORD_WIDTH_TOL_PO_TEXT
'.
DATA: lt_tab_entries TYPE TABLE OF vtentries.
CALL FUNCTION 'CARD_TABLE_READ_ENTRIES'
EXPORTING
var_table = lc_var_table
TABLES
var_tab_entries = lt_tab_entries
EXCEPTIONS
error = 1
OTHERS = 2.
IF sy-subrc EQ 0.
` 64 of 97
SORT lt_tab_entries BY vtcharact vtvalue.
DATA(lt_que_product_id) = lt_tab_entries.
DELETE lt_que_product_id WHERE vtcharact NE lc_que_prod_id OR
vtvalue NE iv_search_string.
DELETE lt_tab_entries WHERE vtcharact NE lc_ord_width_tol_text .
LOOP AT lt_que_product_id INTO DATA(ls_que_product_id).
ASSIGN lt_tab_entries[ vtlinnoint = ls_que_product_id-vtlinnoint ] TO FIELD-
SYMBOL(<fs_tab_entry>).
IF sy-subrc EQ 0.
es_entityset-ord_width_tol_po_text = <fs_tab_entry>-vtvalue_long.
APPEND es_entityset TO et_entityset.
CLEAR: es_entityset.
ENDIF.
ENDLOOP.
* Implement suitable error handling here
ENDIF.
************ EOC CHG0083306 Added By Neha On 24.01.2020 Changes Ends **********
In the above change we are reading value from VT table ‘VT_PROD_WIDTH_TOL’ using FM
‘CARD_TABLE_READ_ENTRIES’ . Then filtering values of width tol po text based on Que
Product Id.
********** BOC CHG0083306 Commented By Neha On 27.01.2020 changs start ***
* DATA:lv_atinn TYPE cawn-atinn.
* CALL FUNCTION 'CONVERSION_EXIT_ATINN_INPUT'
* EXPORTING
* input = 'ORD_THICKNESS_TOL_PO_TEXT'
* IMPORTING
* output = lv_atinn.
*
* SELECT atinn, atwtb FROM cawnt INTO TABLE @DATA(lt_cawnt) WHERE atinn = @lv_atinn
AND atwtb IN @lr_guagetol .
* LOOP AT lt_cawnt INTO DATA(ls_cawnt).
* es_entityset-ord_thickness_tol_po_text = ls_cawnt-atwtb.
* APPEND es_entityset TO et_entityset.
* ENDLOOP.
********** EOC CHG0083306 Commented By Neha On 27.01.2020 changs ends ***
************ BOC CHG0083306 Added By Neha On 24.01.2020 Changes Start **********
CONSTANTS: lc_var_table TYPE tablstruct-var_tab VALUE 'VT_PROD_THICK_TOL
',
lc_que_prod_id TYPE vtentries-vtcharact VALUE 'ORD_QUE_PRODUCT_I
D',
lc_ord_thickness_tol_text TYPE vtentries-vtcharact VALUE 'ORD_THICKNESS_TOL
_PO_TEXT'.
DATA: lt_tab_entries TYPE TABLE OF vtentries.
CALL FUNCTION 'CARD_TABLE_READ_ENTRIES'
EXPORTING
var_table = lc_var_table
` 65 of 97
TABLES
var_tab_entries = lt_tab_entries
EXCEPTIONS
error = 1
OTHERS = 2.
IF sy-subrc EQ 0.
SORT lt_tab_entries BY vtcharact vtvalue.
DATA(lt_que_product_id) = lt_tab_entries.
DELETE lt_que_product_id WHERE vtcharact NE lc_que_prod_id OR
vtvalue NE iv_search_string.
DELETE lt_tab_entries WHERE vtcharact NE lc_ord_thickness_tol_text .
LOOP AT lt_que_product_id INTO DATA(ls_que_product_id).
ASSIGN lt_tab_entries[ vtlinnoint = ls_que_product_id-vtlinnoint ] TO FIELD-
SYMBOL(<fs_tab_entry>).
IF sy-subrc EQ 0.
es_entityset-ord_thickness_tol_po_text = <fs_tab_entry>-vtvalue_long.
APPEND es_entityset TO et_entityset.
CLEAR: es_entityset.
ENDIF.
ENDLOOP.
* Implement suitable error handling here
ENDIF.
************ EOC CHG0083306 Added By Neha On 24.01.2020 Changes Ends **********
In the above change we are reading values from VT table ‘VT_PROD_THICK_TOL’ using FM
‘CARD_TABLE_READ_ENTRIES’ . Then filtering values of guage tol po text based on Que
Product Id.
Include LZUS_SOP303F02
IF i_input-widthtol IS NOT INITIAL.
*********** BOC CHG0083306 Commented By I509127 Changes Start
* READ TABLE lt_cawn INTO ls_cawn WITH KEY atwtb = i_input-widthtol atinn = lv
_atinn..
* ls_input-mwert = ls_cawn-atwrt.
*********** EOC CHG0083306 Commented By I509127 Changes Ends
*********** BOC CHG0083306 Added By I509127 Changes Start
ls_input-mwert = i_input-widthtol.
*********** EOC CHG0083306 Added By I509127 Changes Ends
IF ls_input-mwert = '--'.
ls_input-mwert = ''.
ENDIF.
CLEAR: lv_atinn, ls_cawn, ls_e1cuval.
APPEND ls_input TO lt_input.
ENDIF.
Above changes are done to pass ORD_WIDTH_TOL_PO_TEXT value selected on panel to material.
No need to check for description in table CAWNT as there will be no value .
IF i_input-gaugetol IS NOT INITIAL.
********* BOC CHG0083306 Commented By I509127 On 29.01.2020 ************
* READ TABLE lt_cawn INTO ls_cawn WITH KEY atwtb = i_input-gaugetol atinn = lv
_atinn..
` 66 of 97
* ls_input-mwert = ls_cawn-atwrt.
********* EOC CHG0083306 Commented By I509127 On 29.01.2020 ************
********* BOC CHG0083306 Added By I509127 On 29.01.2020 ************
ls_input-mwert = i_input-gaugetol.
********* EOC CHG0083306 Added By I509127 On 29.01.2020 ************
CLEAR: lv_atinn, ls_cawn, ls_e1cuval.
APPEND ls_input TO lt_input.
ENDIF.
Class ZCL_ZUS_SOP303_MATMAST_DPC_EXT~MATNRCORPQTYSET_GET_ENTITY
********* BOC CHG0083306 Added By I509127 On 29.01.2020
READ TABLE lt_e1cuval INTO ls_e1cuval WITH KEY charc = 'ORD_QUE_PRODUCT_ID'.
IF sy-subrc EQ 0.
er_entity-queprodidcode = ls_e1cuval-value.
ENDIF.
********* EOC CHG0083306 Added By I509127 On 29.01.2020
EntityType – MatnrCorpQty
Material.controller.js file :-
onInit:-
` 67 of 97
updateRelevantControls :-
Change of static binding with bindings as mentioned in above screen shot for passing Que Product Id from panel to
backend entity set.
MaterialInfo.fragment.xml
Please find below attached latest zip file for bsp application.
` 68 of 97
Git URL :-
https://git.us3.hana.ondemand.com/heddd3264/zmtfmaterialpanel
We need to pick inspection plans those are not deleted. Changed where clause while fetching values from
PLKO table for books drop down on panel to remove deleted records as per below screen shot.
********** BOC CHG0083306 Added By I509127 Changes Start On 07.02.2020
********* Commented By I509127 On 07.02.20202
* SELECT ktext, plnnr FROM plko INTO TABLE @DATA(lt_plko) WHERE verwe = 'ZBK' AND (
statu = 'Z02' or statu = 'Z01' ). "#EC CI_NOFIELD
********* Added By I509127 On 07.02.20202
SELECT ktext, plnnr FROM plko INTO TABLE @DATA(lt_plko) WHERE verwe = 'ZBK' AND statu
= 'Z02' and delkz = '' and loekz = ''. "#EC CI_NOFIELD
********** EOC CHG0083306 Added By I509127 Changes Start
We need to pick inspection plans those are not deleted. Changed where clause while fetching values from
PLKO table for grade drop down on panel to remove deleted records as per below screen shot.
IF t_plko IS NOT INITIAL.
*********** BOC CHG0083306 Added By I509127 On 07.02.2020 Changes Start
********** Commented By I509127 On 07.02.2020
* SELECT ktext, plnnr FROM plko INTO TABLE @DATA(lt_plko) FOR ALL ENTRIES IN @t
_plko
* WHERE plnnr = @t_plko-plnnr AND
* plnal = @t_plko-plnal AND
* plnty = @t_plko-plnty AND
* verwe = 'ZCT' AND ( statu = 'Z02' OR statu = 'Z01' ).
******** Added By I509127 On 07.02.2020
SELECT ktext, plnnr FROM plko INTO TABLE @DATA(lt_plko) FOR ALL ENTRIES IN @t_plko
WHERE plnnr = @t_plko-plnnr AND
` 69 of 97
plnal = @t_plko-plnal AND
plnty = @t_plko-plnty AND
verwe = 'ZCT' AND statu = 'Z02'
AND delkz = '' AND loekz = ''.
*********** EOC CHG0083306 Added By I509127 On 07.02.2020 Changes end
We need to pick inspection plans those are not deleted. Changed where clause while fetching values from
PLKO table for spec drop down on panel to remove deleted records as per below screen shot.
********** BOC CHG0083306 Added By I509127 Changes Start On 07.02.2020
********* Commented By I509127 On 07.02.20202
* SELECT ktext, plnnr FROM plko INTO TABLE @DATA(lt_plko) FOR ALL ENTRIES IN @t_pl
ko
* WHERE plnnr = @t_plko-plnnr AND
* plnal = @t_plko-plnal AND
* plnty = @t_plko-plnty AND
* verwe = 'ZSP' AND ( statu = 'Z02' OR statu = 'Z01' ).
************ Added By I50127 On 07.02.2020
SELECT ktext, plnnr FROM plko INTO TABLE @DATA(lt_plko) FOR ALL ENTRIES IN @t_plko
WHERE plnnr = @t_plko-plnnr AND
plnal = @t_plko-plnal AND
plnty = @t_plko-plnty AND
verwe = 'ZSP' AND statu = 'Z02' AND
delkz = '' AND loekz = ''.
********** EOC CHG0083306 Added By I509127 Changes Ends On 07.02.2020
` 70 of 97
Version 13.0
FUNCTION zus_sop_303_corp_qlty_update.
*****
"-->>>>--LKP-20.02.2020 - CHG0084507 - MTF change for MES
PERFORM aim_comments USING i_input_corp_qlty.
"--<<<<<--LKP-20.02.2020 - CHG0084507
LZUS_SOP303F02
FORM aim_comments USING i_input TYPE zcl_zus_sop303_matmast_mpc=>ts_matnrcorpqty.
DATA: ls_aim_text TYPE zus_303_aim_text.
ls_aim_text-mandt = sy-mandt.
ls_aim_text-matnr = i_input-matnr.
*--->AIM Tolerance Comments
ls_aim_text-zzid_text = |ZATC|.
ls_aim_text-zzaim_text = i_input-aimtolercomments.
MODIFY zus_303_aim_text FROM ls_aim_text.
*--->AIM Other Prop Comments
ls_aim_text-zzid_text = |ZAOP|.
ls_aim_text-zzaim_text = i_input-aimothpropcomments.
MODIFY zus_303_aim_text FROM ls_aim_text.
*--->AIM Chem/Mech Prop Comments
ls_aim_text-zzid_text = |ZACM|.
ls_aim_text-zzaim_text = i_input-aimchmmchpropcomments.
MODIFY zus_303_aim_text FROM ls_aim_text.
DELETE FROM zus_303_aim_text WHERE matnr = i_input-matnr
AND zzaim_text = ''.
ENDFORM.
` 71 of 97
Method: MATNRCORPQTYSET_GET_ENTITY
"-->>>>--LKP-20.02.2020 - CHG0084507 - MTF change for MES
"-- End Use Category
READ TABLE lt_e1cuval INTO ls_e1cuval WITH KEY charc = 'ORD_ENDUSE_CAT'.
CALL FUNCTION 'CONVERSION_EXIT_ATINN_INPUT'
EXPORTING
input = 'ORD_ENDUSE_CAT'
IMPORTING
output = lv_atinn.
READ TABLE lt_cawn INTO DATA(ls_cawn_2) WITH KEY atwrt = ls_e1cuval-value
atinn = lv_atinn.
er_entity-endusecat = ls_cawn_2-atwtb.
CLEAR:ls_cawn_2, ls_e1cuval, lv_atinn.
"-- Aspect Code
READ TABLE lt_e1cuval INTO ls_e1cuval WITH KEY charc = 'ORD_ASPECT_CODE'.
CALL FUNCTION 'CONVERSION_EXIT_ATINN_INPUT'
EXPORTING
input = 'ORD_ASPECT_CODE'
IMPORTING
output = lv_atinn.
READ TABLE lt_cawn INTO ls_cawn_2 WITH KEY atwrt = ls_e1cuval-value
atinn = lv_atinn.
er_entity-aspectcode = ls_cawn_2-atwtb.
CLEAR:ls_cawn_2, ls_e1cuval, lv_atinn.
"-- Additional test Reporting
*** READ TABLE lt_e1cuval INTO ls_e1cuval WITH KEY charc = 'ORD_QM_ADDL_TEST_REPORTI
NG'.
LOOP AT lt_e1cuval INTO ls_e1cuval WHERE charc = 'ORD_QM_ADDL_TEST_REPORTING'.
CALL FUNCTION 'CONVERSION_EXIT_ATINN_INPUT'
EXPORTING
input = 'ORD_QM_ADDL_TEST_REPORTING'
IMPORTING
output = lv_atinn.
READ TABLE lt_cawn INTO ls_cawn_2 WITH KEY atwrt = ls_e1cuval-value
atinn = lv_atinn.
*** er_entity-addtestreport = ls_cawn_2-atwtb.
IF er_entity-addtestreport IS INITIAL.
er_entity-addtestreport = ls_cawn_2-atwtb.
ELSE.
er_entity-addtestreport = |{ er_entity-addtestreport };{ ls_cawn_2-atwtb }|.
ENDIF.
ENDLOOP.
CLEAR:ls_cawn_2, ls_e1cuval, lv_atinn.
"-- Additional YTE Reporting
READ TABLE lt_e1cuval INTO ls_e1cuval WITH KEY charc = 'ORD_QM_ADDL_YTE_REPORTING'.
CALL FUNCTION 'CONVERSION_EXIT_ATINN_INPUT'
EXPORTING
input = 'ORD_QM_ADDL_YTE_REPORTING'
IMPORTING
output = lv_atinn.
` 72 of 97
READ TABLE lt_cawn INTO ls_cawn_2 WITH KEY atwrt = ls_e1cuval-value
atinn = lv_atinn.
er_entity-addytereport = ls_cawn_2-atwtb.
CLEAR:ls_cawn_2, ls_e1cuval, lv_atinn.
"-- Other test Reporting
*** READ TABLE lt_e1cuval INTO ls_e1cuval WITH KEY charc = 'ORD_QM_OTHR_TEST_REPORTI
NG'.
LOOP AT lt_e1cuval INTO ls_e1cuval WHERE charc = 'ORD_QM_OTHR_TEST_REPORTING'.
CALL FUNCTION 'CONVERSION_EXIT_ATINN_INPUT'
EXPORTING
input = 'ORD_QM_OTHR_TEST_REPORTING'
IMPORTING
output = lv_atinn.
READ TABLE lt_cawn INTO ls_cawn_2 WITH KEY atwrt = ls_e1cuval-value
atinn = lv_atinn.
*** er_entity-othertestreport = ls_cawn_2-atwtb.
IF er_entity-othertestreport IS INITIAL.
er_entity-othertestreport = ls_cawn_2-atwtb.
ELSE.
er_entity-othertestreport = |{ er_entity-othertestreport };{ ls_cawn_2-atwtb }|.
ENDIF.
ENDLOOP.
CLEAR:ls_cawn_2, ls_e1cuval, lv_atinn.
"--<<<<--LKP-20.02.2020 - CHG0084507
"-->>>>--LKP-20.02.2020 - CHG0084507 - MTF change for MES
SELECT zzid_text,
zzaim_text
INTO TABLE @DATA(lt_aim_text)
FROM zus_303_aim_text
WHERE matnr = @ls_mara-matnr.
"-- AIM Tolerance Comments
er_entity-aimtolercomments = VALUE #( lt_aim_text[ zzid_text = |ZATC| ]-zzaim_text OPT
IONAL ).
"-- AIM Other Prop Comments
er_entity-aimothpropcomments = VALUE #( lt_aim_text[ zzid_text = |ZAOP| ]-zzaim_text O
PTIONAL ).
"-- AIM Chem/Mech Prop Comments
er_entity-aimchmmchpropcomments = VALUE #( lt_aim_text[ zzid_text = |ZACM| ]-
zzaim_text OPTIONAL ).
"--<<<<--LKP-20.02.2020 - CHG0084507
FRONT-END
View: MasterData.fragment
<Select id="sAspectCode"
forceSelection="false"
enabled="{coreModel>/editable}"
` 73 of 97
selectedKey="{AspectCode}" items="{ path: 'AspectCodeModel>/', length:
10000}">
<core:Item key="{AspectCodeModel>ORD_ASPECT_CODE}"
text="{AspectCodeModel>ORD_ASPECT_CODE}"/>
</Select>
Controller: Material
onEndUseCatChange: function(oEvent) {
var oSource = oEvent.getSource();
var sKey = oSource.getSelectedItem().getKey();
var oModel = this.getOwnerComponent().getModel();
oModel.read("/EndUseCatSet", {
success: function(oResultData, oResponse) {
var oResult = oResultData.results;
var oEndUserCat = $.grep(oResult, function (e) { return e.ORD_ENDUSE_CAT ===
sKey })[0];
}.bind(this)
});
},
_filterAspectCode: function(oFilter) {
var aFilters = [ oFilter ];
var oModel = this.getOwnerComponent().getModel();
oModel.read("/AspectCodeSet", {
filters: aFilters,
success: function(oResultData, oResponse) {
var aResults = oResultData.results;
var oResult = aResults[0];
var oJSONModel = new sap.ui.model.json.JSONModel();
oJSONModel.setSizeLimit(aResults.length);
oJSONModel.setData(aResults);
this.getView().setModel(oJSONModel, "AspectCodeModel");
if (oResult) {
this.byId("sAspectCode").setSelectedKey(oResult.ORD_ASPECT_CODE);
}
}.bind(this)
});
}
BACK-END
Classe: ZCL_ZUS_SOP303_MATMAST_DPC_EXT
Método: ASPECTCODESET_GET_ENTITYSET
DATA: lt_filter_select_options TYPE /iwbep/t_mgw_select_option,
lo_filter TYPE REF TO /iwbep/if_mgw_req_filter.
` 74 of 97
DATA lv_vtlineno TYPE char5.
lo_filter = io_tech_request_context->get_filter( ).
lt_filter_select_options = lo_filter->get_filter_select_options( ).
LOOP AT lt_filter_select_options INTO DATA(ls_filter).
CASE ls_filter-property.
WHEN 'VTLINENO'.
lv_vtlineno = VALUE #( ls_filter-select_options[ 1 ]-low OPTIONAL ).
ENDCASE.
ENDLOOP.
IF NOT lv_vtlineno IS INITIAL.
DELETE lt_var_table WHERE vtlinnoint NE lv_vtlineno.
Classe: ZCL_ZUS_SOP303_MATMAST_DPC_EXT
Método: ENDUSECATSET_GET_ENTITYSET
es_entityset-vtlineno = ls_var_table-vtlineno.
Version 13.1
Include LZUS_SOP303TOP
DATA gt_e1cuval TYPE STANDARD TABLE OF e1cuval.
Include LZUS_SOP303F02
gt_e1cuval[] = t_e1cuval[].
Include LZUS_SOP303F01
DATA instance TYPE cuib_cuobj.
DATA:lv_atinn TYPE cawn-atinn.
DATA gv_plant TYPE marc-werks.
DATA et_return TYPE bapiret2_t.
DATA t_e1cucfg TYPE STANDARD TABLE OF e1cucfg.
DATA t_e1cuins TYPE STANDARD TABLE OF e1cuins.
DATA t_e1cuval TYPE STANDARD TABLE OF e1cuval.
DATA ls_e1cuval TYPE e1cuval.
DATA: t_e1cucom TYPE STANDARD TABLE OF e1cucom,
it_e1cucfg TYPE STANDARD TABLE OF e1cucfg,
it_e1cuins TYPE STANDARD TABLE OF e1cuins,
it_e1cuval TYPE STANDARD TABLE OF e1cuval,
ti_e1cuval TYPE STANDARD TABLE OF e1cuval,
it_e1cucom TYPE STANDARD TABLE OF e1cucom,
lt_e1cucom_w TYPE STANDARD TABLE OF e1cucom WITH HEADER LINE,
lt_e1cucfg_w TYPE STANDARD TABLE OF e1cucfg WITH HEADER LINE,
lt_e1cuins_w TYPE STANDARD TABLE OF e1cuins WITH HEADER LINE,
lt_e1cuval_w TYPE STANDARD TABLE OF e1cuval WITH HEADER LINE.
REFRESH: it_e1cucfg, it_e1cuins, it_e1cuval, it_e1cucom.
gv_matnr = i_input-matnr.
gv_conf_matl = lv_stdpd-stdpd.
gv_plant = lv_stdpd-werks.
SELECT SINGLE cuobj INTO @instance FROM marc WHERE matnr = @gv_matnr.
CALL FUNCTION 'CUXM_GET_CONFIGURATION'
EXPORTING
instance = instance
` 75 of 97
werks = gv_plant
IMPORTING
et_return = et_return
TABLES
t_e1cucfg = it_e1cucfg
t_e1cuins = it_e1cuins
t_e1cuval = it_e1cuval
t_e1cucom = it_e1cucom
EXCEPTIONS
instance_not_found = 1
internal_error = 2
instance_is_a_classification = 3
OTHERS = 4.
ti_e1cuval[] = lt_e1cuval[].
CALL FUNCTION 'ZUS_SOP_303_CRITICAL_FIELD'
EXPORTING
i_matnr = gv_matnr
IMPORTING
critical = lv_critical
TABLES
it_e1cuval_1 = it_e1cuval
it_e1cuval_2 = ti_e1cuval
it_e1cuval_3 = gt_e1cuval.
lt_e1cucfg_w[] = lt_e1cucfg[].
lt_e1cuins_w[] = lt_e1cuins[].
lt_e1cuval_w[] = lt_e1cuval[].
lt_e1cucom_w[] = lt_e1cucom[].
CALL FUNCTION 'MATERIAL_SAVE_CONFIGURATION'
EXPORTING
material = gv_matnr
plant = gv_plant
conf_matl = gv_conf_matl
conf_matl_plant = gv_conf_matl
IMPORTING
return = x_return
TABLES
e1cucfg = lt_e1cucfg
e1cuins = lt_e1cuins
e1cuval = lt_e1cuval
e1cucom = lt_e1cucom
e1cucfg_w = lt_e1cucfg_w
e1cuins_w = lt_e1cuins_w
e1cuval_w = lt_e1cuval_w
e1cucom_w = lt_e1cucom_w
returnmessages = gt_return.
* Begin of GANEAG
lv_partnumber = i_input-partnumber.
PERFORM change_sales_order_chg USING lv_partnumber i_input-matnr.
* End of GANEAG
IF lv_critical EQ abap_true.
pe_parametro = 'ZUSSOP303REVLEVEL'.
pe_empresa = '*'.
` 76 of 97
pe_centro = ''.
CALL FUNCTION 'ZBC_GET_PARAMETER'
EXPORTING
pe_parametro = pe_parametro
pe_empresa = pe_empresa
pe_centro = pe_centro
CHANGING
it_dados = lt_revlevel
st_dados = ls_revlevel.
SORT lt_revlevel BY aennr DESCENDING.
READ TABLE lt_revlevel INTO ls_revlevel INDEX 1.
lv_doknr = ls_revlevel-aennr.
" Get current material version
CALL FUNCTION 'REVISION_LEVEL_SELECT'
EXPORTING
aennr = ls_revlevel-aennr
aeobj = ls_revlevel-aeobj
doknr = lv_doknr
matnr = gv_matnr
IMPORTING
arevlv = lv_arevlv
EXCEPTIONS
date_not_found = 1
ecn_not_found = 2
ecn_no_revision = 3
input_incomplete = 4
input_inconsistent = 5
revision_not_found = 6
version_not_found = 7
others = 8.
lv_version = lv_arevlv.
ADD 1 TO lv_version.
lv_arevlv = lv_version.
UNPACK lv_arevlv TO lv_arevlv.
" Get all available versions
SELECT * FROM tcc09
INTO TABLE lt_tcc09
WHERE aetyp EQ '41'. " Material
" Checks if the next version is registered
READ TABLE lt_tcc09 WITH KEY revlv = lv_arevlv TRANSPORTING NO FIELDS.
IF sy-subrc EQ 0.
CALL FUNCTION 'REVISION_LEVEL_INSERT'
EXPORTING
aennr = ls_revlevel-aennr
aeobj = ls_revlevel-aeobj
doknr = lv_doknr
matnr = gv_matnr
revlv = lv_arevlv
flg_api = 'X'
IMPORTING
aaennr = lv_aaennr
adatuv = lv_adatuv
` 77 of 97
arevlv = lv_arevlv
EXCEPTIONS
authority_check = 1
document_for_ecn_impossible = 2
input_incomplete = 3
material_for_ecn_impossible = 4
new_revision_impossible = 5
no_suggestion = 6
revision_exists = 7
revision_for_ecn_exists = 8
revision_not_defined = 9
version_with_revision = 10
revision_to_small = 11
revision_not_active_in_client = 12
revision_not_max = 13
others = 14.
IF sy-subrc EQ 0.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'.
ELSE.
CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.
ENDIF.
ENDIF.
ENDIF.
Linha 1898
CALL FUNCTION 'ZUS_SOP_303_CRITICAL_FIELD'
EXPORTING
i_matnr = gv_matnr
IMPORTING
critical = lv_critical
TABLES
it_e1cuval_1 = ti_e1cuval
it_e1cuval_2 = ti_e1cuval
it_e1cuval_3 = gt_e1cuval.
IF lv_critical EQ abap_true.
pe_parametro = 'ZUSSOP303REVLEVEL'.
pe_empresa = '*'.
pe_centro = ''.
CALL FUNCTION 'ZBC_GET_PARAMETER'
EXPORTING
pe_parametro = pe_parametro
pe_empresa = pe_empresa
pe_centro = pe_centro
CHANGING
it_dados = lt_revlevel
st_dados = ls_revlevel.
SORT lt_revlevel BY aennr DESCENDING.
READ TABLE lt_revlevel INTO ls_revlevel INDEX 1.
lv_doknr = ls_revlevel-aennr.
" Get current material version
CALL FUNCTION 'REVISION_LEVEL_SELECT'
EXPORTING
aennr = ls_revlevel-aennr
` 78 of 97
aeobj = ls_revlevel-aeobj
doknr = lv_doknr
matnr = gv_matnr
IMPORTING
arevlv = lv_arevlv
EXCEPTIONS
date_not_found = 1
ecn_not_found = 2
ecn_no_revision = 3
input_incomplete = 4
input_inconsistent = 5
revision_not_found = 6
version_not_found = 7
others = 8.
lv_version = lv_arevlv.
ADD 1 TO lv_version.
lv_arevlv = lv_version.
UNPACK lv_arevlv TO lv_arevlv.
" Get all available versions
SELECT * FROM tcc09
INTO TABLE lt_tcc09
WHERE aetyp EQ '41'. " Material
" Checks if the next version is registered
READ TABLE lt_tcc09 WITH KEY revlv = lv_arevlv TRANSPORTING NO FIELDS.
IF sy-subrc EQ 0.
CALL FUNCTION 'REVISION_LEVEL_INSERT'
EXPORTING
aennr = ls_revlevel-aennr
aeobj = ls_revlevel-aeobj
doknr = lv_doknr
matnr = gv_matnr
revlv = lv_arevlv
flg_api = 'X'
IMPORTING
aaennr = lv_aaennr
adatuv = lv_adatuv
arevlv = lv_arevlv
EXCEPTIONS
authority_check = 1
document_for_ecn_impossible = 2
input_incomplete = 3
material_for_ecn_impossible = 4
new_revision_impossible = 5
no_suggestion = 6
revision_exists = 7
revision_for_ecn_exists = 8
revision_not_defined = 9
version_with_revision = 10
revision_to_small = 11
revision_not_active_in_client = 12
revision_not_max = 13
others = 14.
IF sy-subrc EQ 0.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'.
ELSE.
` 79 of 97
CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
Criada a Função ZUS_SOP_303_CRITICAL_FIELD
FUNCTION ZUS_SOP_303_CRITICAL_FIELD.
*"----------------------------------------------------------------------
*"*"Local Interface:
*" IMPORTING
*" REFERENCE(I_MATNR) TYPE MATNR
*" EXPORTING
*" REFERENCE(CRITICAL) TYPE CHAR1
*" TABLES
*" IT_E1CUVAL_1 STRUCTURE E1CUVAL
*" IT_E1CUVAL_2 STRUCTURE E1CUVAL
*" IT_E1CUVAL_3 STRUCTURE E1CUVAL
*"----------------------------------------------------------------------
DATA: lt_critical TYPE STANDARD TABLE OF zussop303critical,
ls_critical TYPE zussop303critical,
pe_parametro TYPE zbcpar015-object,
pe_empresa TYPE bukrs,
pe_centro TYPE werks_d,
ls_e1cuval_1 TYPE e1cuval,
ls_e1cuval_2 TYPE e1cuval,
ls_e1cuval_3 TYPE e1cuval,
lr_charc TYPE RANGE OF atnam.
* lv_atinn TYPE cawn-atinn.
critical = abap_false.
pe_parametro = 'ZUSSOP303CRITICAL'.
pe_empresa = '*'.
pe_centro = ''.
" Get critical fields
CALL FUNCTION 'ZBC_GET_PARAMETER'
EXPORTING
pe_parametro = pe_parametro
pe_empresa = pe_empresa
pe_centro = pe_centro
CHANGING
it_dados = lt_critical
st_dados = ls_critical.
" Critical fields Range
lr_charc = VALUE #( FOR ls_line IN lt_critical ( sign = 'I' option = 'EQ' low = ls_line-
atnam ) ).
DELETE it_e1cuval_1 WHERE charc NOT IN lr_charc.
DELETE it_e1cuval_2 WHERE charc NOT IN lr_charc.
DELETE it_e1cuval_3 WHERE charc NOT IN lr_charc.
LOOP AT it_e1cuval_1 INTO ls_e1cuval_1.
IF ls_e1cuval_1-charc EQ 'ORD_COIL_INNER_DIA' OR
ls_e1cuval_1-charc EQ 'ORD_NICKEL_FLASH' OR
ls_e1cuval_1-charc EQ 'ORD_NUMBER_MULTS'.
CONTINUE.
` 80 of 97
ENDIF.
READ TABLE it_e1cuval_2 INTO ls_e1cuval_2 WITH KEY charc = ls_e1cuval_1-charc.
IF ls_e1cuval_1-value NE ls_e1cuval_2-value.
critical = abap_true.
EXIT.
ENDIF.
READ TABLE it_e1cuval_3 INTO ls_e1cuval_3 WITH KEY charc = ls_e1cuval_1-charc.
IF ls_e1cuval_1-value NE ls_e1cuval_3-value.
critical = abap_true.
EXIT.
ENDIF.
ENDLOOP.
ENDFUNCTION.
Version 13.2
Version 13.3
CHG0123086 - Restricted flags not updating when submitted 2. have to submit more than once.
1. Materials are not updating the restricted flags (putting on or taking off of the material) in SAP when submitted. OSA's do not know if
their changes actually worked when submitted and have to review and or submit several more times for the changes to take. 2.
Normally when you submit an order, the order immediately disappears off the list. The OSA's currently are submitting the material and
` 81 of 97
when going back to the screen it is staying there. They then have to review and submit again. Sometimes this process takes several
times before the submit actually takes.
Version 13.4
CHG0126546 - Demand Planning/Facility Loading is creating 4-5 material BOM's because they are missing on SAP Materials delaying
order allocation.
Orders will not allocate for SAP materials until a BOM is created - an manual allocation attempt must first be made to understand that
there is an issue. When the order remains on the same hold (i.e. Capacity), the Order Allocator then knows they have to go into EP4
and check for BOM status and create if missing.
*&---------------------------------------------------------------------*
*& Form CREATE_BOM_LINK
*&---------------------------------------------------------------------*
*& text
*&---------------------------------------------------------------------*
*& --> I_INPUT
*&---------------------------------------------------------------------*
FORM create_bom_link USING i_input TYPE zus303_upd_mat_chars
i_werks TYPE werks_d.
IF i_input-action = 'SUB'.
****BOC BXMUKK 03/04/2021 CHG0126546 --> BOM link to configurable Material
** Data declaration for the local variables and function
* DATA i_matnr TYPE matnr.
* DATA i_plant TYPE werks_d.
* DATA i_bom_usage TYPE stlan VALUE '1'.
* DATA i_stko LIKE stko_api01.
** DATA t_return TYPE STANDARD TABLE OF bapiret2.
* i_matnr = i_input-matnr.
** i_plant = i_input-plant.
*** Pass Default values ot stko structure.
* i_stko-base_quan = '1000'.
* i_stko-base_unit = 'LB'.
* i_stko-bom_status = '00'.
*
*** select active plant from knmt
** SELECT SINGLE werks FROM knmt INTO @i_plant WHERE matnr = @i_matnr.
*** mmsta = @space.
*** select matnr from mast where matnr
* i_plant = i_werks.
*
* SELECT SINGLE matnr FROM mast INTO @i_matnr WHERE matnr = @i_matnr AND werks =
@i_plant.
* IF sy-subrc NE 0 .
* i_matnr = i_input-matnr.
* CALL FUNCTION 'CSAP_MAT_BOM_CREATE'
* EXPORTING
* material = i_matnr
* plant = i_plant
* bom_usage = i_bom_usage
* i_stko = i_stko
* fl_default_values = 'X'
* EXCEPTIONS
` 82 of 97
* error = 1
* OTHERS = 2.
* ENDIF.
Function module:
ZUS_SOP_303_CORP_QLTY_UPDATE
Method: /IWBEP/IF_MGW_APPL_SRV_RUNTIME~CHANGESET_PROCESS
Version 14.0
Version 14 - CHG0140154
` 83 of 97
Auto Forecasting Project Changes – New Logic for creating the Material Master
- The logic of creating the new Material master from NAFTA is suspended.
- The Workflow creation trigger point is changed.
- The Material Fiori panel is changed to have the header fields as input fields.
The customer field was also changed to get not only the name, but its number too.
` 84 of 97
And now the ship state will be filled in a different field (added to the entity above), instead of concatenating it to the city field.
3. Same changes done in the method MATNRSET_GET_ENTITY of the class ZCL_ZUS_SOP303_MATMAST_DPC_EXT were
also applied to the method ZCL_ZUS_GET_MASTERDATA of the same class.
All changes can be found using the username 70095233.
4. New fields SHIP_STATE and ROUTINGHOTROLL to the structure ZUS303_UPD_MAT_CHARS, to be able to update them.
The type of SHIP_CITY was changed, from WERKS_D to ATWRT.
5. Changes to the form MAPPING of the include LZUS_SOP303F01, called by the function ZUS_SOP_303_UPDATE_CHARS,
which is triggered by the update from MDA Panel.
These changes are needed to update Ship City and State, unit of measure, gauge, width, length, caster, hot roll, cold roll and
coat.
All changes can be found using the username 70095233.
In this order: caster, cold roll, hot roll, coat, ship city and ship state.
` 85 of 97
` 86 of 97
Unit of measure
` 87 of 97
Gauge
` 88 of 97
Width
` 89 of 97
Length
` 90 of 97
6. New property PartStatus for MATNRMARA entity in ZUS_SOP303_MATMASTER OData Project.
7. Filling new field PARTSTATUS of the entity MATNRMARA on the method MATNRMARASET_GET_ENTITY of the class
ZCL_ZUS_SOP303_MATMAST_DPC_EXT, which is called by the Material Info to retrieve data from a material and display it.
All changes can be found using the username 70095233.
` 91 of 97
Version 14.2
Duplicate coat substrate options in OSA panel – Adding logic for deletion & inactive indicator for table MAPL
- The logic of for deletion & inactive indicator for table MAPL
At Line No 79-82 adding the flags LOEKZ not equal to ‘X’ & PARKZ not equal to ‘X’.
Versionn 14.6
CR00005180 Drop cut loosing in S/4 Hana
Version:14.7
CR00005980 and CR00005981 CIM panel data update not working ;
When we update the fields in CIM panel its should update the Material MRP data and Forecasting data. But it is not updating the
values in the material master. The above fields are modified
` 92 of 97
After submission MM03 should update the field values in SAP which is not modifying the values
` 93 of 97
Forecasting values are also not changed
` 94 of 97
Version 14.8
CR00007987 Future part characteristics are “falling off” the material at OSA completion
The following characteristics are missing when we save the material from OSA Fiori panel
ORD_PART_SALES_CUST
ORD_PART_SALES_UNIT
ORD_PART_SHIPTO_CUST
ORD_PART_CORE_UNIT
ORD_PART_ACCT_MGR
ORD_PART_ACCT_CSR
` 95 of 97
ORD_DEAL_NAME
ORD_DEAL_TYPE
ORD_PART_PROD_VER
ORD_MGD_ABP_IND
ORD_PLANNED_SPEC
The values exist when the material is created and saved from MDA panel , but when we submit it from OSA
panel these characteristics are disappearing.
Version 14.9
CR00006531 - MTF not showing gauge/width tolerance PO text in the material display screen in Fiori. Same
issue on the OSA worklist.
Fix that issue for Gauge Tol PO Text and Width Tol PO Text not showing in the Material Display –
Characteristics Info Fiori Application.
Version:15.0 CR00006339 Restrict material workflows from being created by MDA, OSA, and CIM for any
status other than active.
Workflow from ZOTC05 should not be triggered for materials when the status of material is not active
` 96 of 97
The field value should be MARA-ZZ1_PARTSTATUS_PRD = ‘A’ to trigger the workflow.
Version 15.1
` 97 of 97