Meat Configuration for SAP Experts
Meat Configuration for SAP Experts
Origin Control
Softproviding Meat
Configuration Guide
Version: 1.00
Release v6.00
2024/02 Internal – authorized for customers and partners
Think ahead. Go there.
Softproviding AG
Dornacherstr. 210
CH-4053 Basel
Switzerland
+41 (0)61 508 21 21
[email protected]
www.softproviding.com
Contents
1 Introduction 5
1.1 Overview 5
1.2 Prerequisites 8
1.2.1 Enhancing the Structure 8
1.2.2 Authorization Objects 9
1.3 Change ID Control – Introduction 12
2 Configuration 14
2.1 Origin Control Settings 14
2.1.1 Change ID Control: Plant Dependent 15
2.1.2 Origin Classes: Plausibility Table Field Values 17
2.1.3 Logistical Process (LoPro) 19
2.1.4 Logistical Process: Own Origin Data Determination 21
2.1.5 Logistical Process: Disassembly Process-Dependent Origin Data Determination 26
2.1.6 Logistical Process: Inactivate Fields 28
2.1.7 Logistical Process: Determination via Document Control 29
2.1.8 Logistical Order (LoOrd): Prefix of the Objects 34
2.1.9 Logistical Order of the Logistical Process 35
2.1.10 Logistical Order: Communication Point 39
2.1.11 Logistical Order: Selection by Communication Point 44
2.1.12 Logistical Order: Work Center / Manufacturing Cell 44
2.1.13 Origin Class: Exceptions 47
2.2 Batch Valuation 48
2.2.1 Batch Valuation: Mapping Fields to Characteristic 49
2.2.2 Batch Valuation: Update per PDA Category 55
3 Master Data 58
3.1 Origin Control Settings 58
3.1.1 Origin Class 59
3.1.2 Rules per Field 65
3.1.3 Allowed Single Values 82
3.1.4 Allowed Aggregations 87
4 Function Modules 89
4.1 Package 89
4.2 Modules 89
4.2.1 Determine Origin Class for Production Order 89
4.2.2 Check Change ID 94
4.2.3 Check: Proof of Origin 96
4.2.4 Exceptions in Change ID Control (Template Function Module) 98
4.2.5 Check Change ID (BAdI) 103
4.2.6 Execute Batch Valuation 108
4.2.7 Batch Where-Used List 112
5 Enhancements 115
6 Glossary 120
1 Introduction
1.1 Overview
The descriptions in the configuration guide Origin Control explain the table and field settings that can
be made for the Change ID Control application. With the help of this documentation it is possible to
set up an executable and functioning application.
Target groups
— Application consultants, technical consultants, and developers
— Members of project teams during implementation
— Super users
Prerequisites
Any prerequisites that must exist before you can make the appropriate settings (for example, SAP
Standard Customizing, master data, authorizations) are pointed out.
References
This configuration guide may contain references to other documents or to possible program modifi-
cations. In detail, these are:
— User documentations
Functions
The following functions are usually available in the Customizing tables:
— Creating new entries
— Copying selected entries
— Deleting entries
— Undo changes
— Switch from Display mode to Change mode
— Select all / Select block / Deselect all
These functions are generally known and are therefore not explained explicitly in this document.
Fiori-Apps – Instructions
SAP Fiori is the design concept for user interfaces within SAP applications. With this approach, Fiori
apps can be simplified and personalized, and made available in the Launchpad based on user roles.
SAP Fiori were created for the various applications of Softproviding Meat and can be executed in the
Fiori Launchpad. Please compare the following documents for the prerequisites and the procedure re-
garding the configuration of SAP Fiori apps:
— Softproviding Meat Security-Guide
The Security Guide documents for which Softproviding Meat Applications SAP Fiori apps were created
and which roles are required for this.
Function modules
Function modules exclusively provided by Softproviding determine the data relevant for Change ID
Control and make it available for the change ID control processes. For this reason, the most important
modules are listed and described in a separate chapter in this document.
Note
These descriptions are also available in the documentation for the function module in the SAP System.
Customer-specific enhancements
If extensions are available for an application whose configuration is described here, this is indicated
at the respective point in the configuration guide.
BAdIs (Business Add-Ins) are used to create customer-specific program enhancements that can be
implemented by customers if required. These enhancements remain unaffected by a release change.
BAdIs are implemented using SAP Standard transactions.
For further details, please refer to the chapter "Enhancements" further down in this configuration
guide.
Transport
The settings that have been made should be copied to a transport request when data are saved. The
project team is responsible for making the appropriate settings to ensure this. This ensures that these
settings can also be transported to other systems.
Caution
Note the specific conditions when transporting number range intervals.
Glossary
For a better understanding of the field descriptions and the terms used in the process, a glossary has
been created that explains the most important terms used in context with the Change ID Control func-
tionality. The glossary is attached to this guide.
Documentation on tables
A help text has been added to all relevant tables in the Origin Control application. This can be called
as follows:
— Transaction SE11 > Display dictionary object (F7) > Menu Goto > Online Manual
— Transaction SE16 > Table contents (F7) > Execute (F8) > Menu Goto > Table documentation
— Transaction SE80 > Package /SPMEAT/CC > Select dictionary objects
Result
This configuration guide enables you to make the necessary settings to be able to use the described
applications.
1.2 Prerequisites
1.2.1 Enhancing the Structure
To set up and work with the Change ID Control application, the structure Change Control Field Struc-
ture must be extended in a first step.
Note
This structure must be maintained by a developer with a developer key.
Use
The structure is the basis for Change Control. In the standard delivery, the structure consists of only
a few fields that are relevant for Change ID Control. All the field names of the characteristics that
define the nature of Change ID Control are still missing. These must be supplemented on a project-
specific basis.
The following structures provide a collection of possible characteristics with the field names to be
used:
Structure Characteristics
SPMEAT/CC_DRV_CTRY Local origin (countries)
/SPMEAT/CC_DRV_DATE Time origin
/SPMEAT/CC_DRV_EK Document object (purchasing)
/SPMEAT/CC_DRV_EU EU specification
/SPMEAT/CC_DRV_ORD Document object (DAO, FPO)
/SPMEAT/CC_DRV_PART Partner origin
/SPMEAT/CC_DRV_RAISE Document object (Livestock Management)
/SPMEAT/CC_DRV_REG Local origin (region)
/SPMEAT/CC_DRV_SD Document object (Sales)
/SPMEAT/CC_DRV_SITE Process origin
/SPMEAT/CC_DRV_SL Document object (Slaughtering)
/SPMEAT/CC_DRV_SPEZ Product specification
The structures can either be fully attached to structure /SPMEAT/CC_FIELD_STRUCT, or only indi-
vidual fields of the structure may be attached. Also, further project-specific fields may be defined and
attached.
When defining the fields, note the following and apply it to all fields in the same way.
Note
If the structure is extended to include fields that are key fields in other tables, such as EBELN, EBELP,
ETENR, AUFNR, VBELN, POSNR, the function module can only use the key fields if the field name in the
structure /SPMEAT/CC_FIELD_STRUCT is the same as the field name in the transparent table.
An authorization group can be assigned to the respective table using view V_DDAT_54, and a name
for the group can be maintained using view V_BRG_54.
Use
A change ID corresponds to a reference batch with the concrete
characteristic values of all the goods combined in it. It is the
central transactional data object for Change ID Control. Several
change IDs can be assigned to a document or order (for example,
a production order). By linking the (output) change ID with all
input change IDs, a differentiated traceability is created. The
goal is that a change ID is only ever assigned to one document or
order object, even if the characteristic value constellation exists
again.
Dependencies
The change ID is based on structure /SPMEAT/CC_FIELD_-
STRUCT.
Example
None.
Origin class See the description on the Origin Class field in table
/SPMEAT/HKK (Origin Class) further down.
Identification Definition
A goods receipt IDENT is a documented characteristic value
constellation that is formed according to defined rules.
Use
The goods receipt IDENT corresponds to a reference batch with
the concrete characteristic values of all the goods it contains.
Whenever the characteristic value constellation exists at goods
receipt for the purchase order, the goods receipt IDENT created
previously is assigned.
Dependencies
The characteristic value constellations are stored in table
/SPMEAT/WEID.
Example
None
Stock type Definition
In the meat processing industry, the stock type is used to differ-
entiate between different animal species (animal species).
Examples
— Cattle (incl. calf)
— Pig
— Sheep
— Goat
— Horse
— Poultry (also, domestic poultry; includes chicken, ducks,
geese, turkeys, guinea fowl)
Use
The requirements and permitted values for the proof of origin
differ for different stock types. Data and settings for the origin
class and logistical processes are defined accordingly.
Dependencies
During the check for the proof of origin, the check module deter-
mines the logistical process based on the document group for
goods movement and the document type for the respective (or-
der) object. Accordingly, the value must be transferred from the
calling application to the check module
/SPMEAT/CHANGEID_CHECK in the communication structure
I_CIDCOM if the customizing settings require it.
Change ID Definition
The value corresponds to a change ID assigned to the input
goods.
Use
By linking the (output) change ID to the product with all input
change IDs of the components, a more differentiated traceability
is created.
Dependencies
The input components must be assigned a change ID by the pre-
ceding processes. In Customizing for Change ID Control (table
/SPMEAT/TCID_C), you can specify that an input change ID
must always exist for a plant (indicator Input ChgId Required).
With the information on the origin class and proof of origin, a material becomes subject to proof of
origin. In this case, the relevant logistical process (for example, fattening, disassembly, production)
and the determination of the origin data must be assigned in the customizing table for origin control.
The settings for the origin classes are not made in Customizing, but in a master data table. This master
data table also defines whether the origin class is of type basic origin class or standard origin class.
The basic origin class is higher because a standard origin class must always be assigned a basic origin
class. A freely definable instruction is assigned in the same master data table and rules are assigned
to the origin class according to which a reference batch is formed.
Note
To define an origin class, you do not need to create a class in the SAP classification system.
The core of the Change ID Control is a check of origin and traceability characteristics based on an
instruction. An instruction can be given solely on the basis of legal requirements or in combination
with customer requirements. The instruction represents the legal basis of the origin class. A further
assignment is the value of the origin class. If several products arise in production processes (further
processing and disassembly processes) that are assigned to different origin classes and instructions,
the proof of origin is created separately for each instruction by creating several change IDs for the
same object.
A change validation and thus an assignment of characteristics and origin to goods usually takes place
at goods receipt in the plant or at production inbound (goods issue for production order).
The following illustration roughly shows the relationships between the material master, the required
settings in Customizing and in the master data table:
2 Configuration
Call up Customizing using one of the following options and then choose the SAP Reference IMG button.
Then call up the menu item Softproviding Meat in the Implementation Guide and then the item Cen-
tral Settings > Origin Control Settings.
The following tables are available under this menu item Origin Control Settings and are described in
this guide:
— Origin Control Settings
— Batch valuation
Menu Softproviding Meat > Central Settings > Origin Control Settings >
Origin Control Settings
The following sub-items with table fields are available in the dialog structure:
Field Table
Change ID Control /SPMEAT/TCID_C
HKKLA: Plausibility Table Field Values /SPMEAT/CC_FDEF
Logistical Process (LoPro) /SPMEAT/LOPRO
LoPro: Own Origin Data Determination /SPMEAT/CC_OWNK
LoPro DAP-Dependent Origin Data Determination /SPMEAT/CC_OWNP
LoPro: Inactivate Fields /SPMEAT/PRUL_EXC
LoPro: Determination via Document Control /SPMEAT/BELGR_PR
Logistical Order (LoOrd): Prefix of the Objects /SPMEAT/LOORD
Logistical Order of Logistical Process /SPMEAT/LOORD_AT
LoOrd: Communication Point /SPMEAT/MSG_PNT
Activities/Recommendations
Make the required settings. No field is defined as mandatory entry.
New Entries
By selecting the New Entries button, new entries can be created.
Use
This is a customizing table. The table contains general settings for Change ID Control that are valid
for all processes in the plant.
Use
In earlier releases (< version 5.40), the values of Change ID Con-
trol were stored in table /SPDGS/CHANGEID. As long as pro-
grams and shop floor applications are still working with this ta-
ble, it can make sense to document the values redundantly.
Prerequisites
To enable this, a function module must be programmed. In addi-
tion, a data-mapping table in which the fields of the Change ID
Control are assigned to a field in table /SPDGS/CHANGEID must
be created.
Dependencies
Please note that n individual values can be stored for a verifica-
tion field in the new Change ID Control functionality. If only one
table field exists in table /SPDGS/CHANGEID for a referenced
field of the new Change ID Control, only the first documented
value can be transferred. If several table fields exist in table
/SPDGS/CHANGEID for a referenced field of the new Change ID
Control, you can transfer as many documented values as there
are fields.
Example
In table /SPDGS/CHANGEID, three fields can be defined for the
fattening country. Accordingly, the first three documented val-
ues from the field values for the fattening country of the new
Change ID Control can be transferred to table
/SPDGS/CHANGEID.
InputChange ID Mandatory Definition
(Inp-ChgId) Each goods in input must have an assigned change ID.
Use
The change ID Input is transferred to the change ID of the cur-
rent process in order to display the connection between input
and output in more detail later in the Batch Information Cockpit
or in Global Batch Traceability. If the indicator is set, each goods
must have a change ID in input.
Dependencies
The check is part of the validity check. If no input change ID can
be determined, the check is terminated.
Origin data from production Definition
version (HKFertigVe) Determination of origin data from the production version.
Use
The obligation to provide origin and class of origin are deter-
mined based on the general settings in the material master or
the specific settings in the production version and additional
data for the version. Both settings are available in the material
master on the Origin tab.
Use
This is a Customizing table. In this table, you can assign a reference table and reference field for a field
of the change ID. Based on the reference field values, you can check whether the field values to be
processed are plausible.
Use
The corresponding origin values are stored for a field of a change
ID.
Note
The settings for table /SPMEAT/HK_VAL are made in the
Softproviding Meat application menu under General > Origin Con-
trol Settings > Origin Class Definition > (Dialog Structure: Al-
lowed single values).
Examples
Field Description
TGTKY Stock type
FLKAT Animal category
UCODE Meat program
QPROG Quality program
REGIO Region (production)
Dependencies
The field must be assigned for certain applications of structure
/SPMEAT/CC_FIELD_STRUCT.
Value table Definition
This is an SAP field. Please refer to the corresponding documen-
tation in SAP.
Use
The validity of the input and reference values specified for a
check is checked in the specified plausibility table. A value is
valid if there is a data record for the value in the table entered
here.
Dependencies
The validity check rule (/SPMEAT/HK_VALUE2CHECK) must
be activated for the origin class and characteristic so that the
validity check can be carried out.
Note
The settings for field /SPMEAT/HK_VALUE2CHECK are made in
the Softproviding Meat application menu under General > Origin
Control Settings > Origin Class Definition > (Dialog Structure:
Rules).
A field name must also be specified (see next field, Field name).
Fieldname Field name of the field to be checked.
Use
In the plausibility table (value table) specified previously, the
validity of the input and reference values specified for a check
are checked under this field name. A value is valid if there is a
data record with the value in the specified field name.
Dependencies
For the validity check to be carried out, the Validity Check rule
(/SPMEAT/HK_VALUE2CHECK) must be activated for the
origin class and characteristic.
Note
The settings for field /SPMEAT/HK_VALUE2CHECK are made in
the Softproviding Meat application menu under General > Origin
Control Settings > Origin Class Definition > Dialog Structure:
Rules.
Example
See the following field
Field for description Corresponding to the Table for description, the desired field name
is stored in this field, which is to be used for the output of the en-
try in the field Field name
Example
Field Value table T005
Field Field name LAND1
Field Table for ref. T005T
Field Field for ref. LANDX50
Text tab. This indicator is currently not in use.
Use
This is a Customizing table. The table defines the logistical processes that are relevant for Change ID
Control.
Definition
Logistics ensures the availability of the right goods, in the right
quantity, in the right condition, at the right place, at the right
time, for the right customer, at the right costs.
Use
Data on the origin class and logistical process is required be-
cause the requirements and permitted values for the proof of
origin differ.
During the check for the proof of origin, the logistical process is
derived based on the document group and document type.
Examples
Relevant logistical processes for which proof of origin must be
provided are, for example:
— Breeding (BRE)
— Fresh meat purchasing (EK)
— Disassembly (TPA)
— Production (PRD)
Note
The settings for table /SPMEAT/HK_VAL are made in the
Softproviding Meat application menu under General > Origin Con-
trol Settings > Origin Class Definition > (Dialog Structure: Al-
lowed single values).
Recommendation
If the stock type has no significance for a logistical process, you
can deactivate it here.
Use
This is a customizing table. The table determines how the own origin data for a logistical process is
determined. This is always relevant if processes requiring proof of origin are carried out in your own
plant. For example, when animals are slaughtered or disassembled in your own plant. In this case, the
country in which the plant is located is the country of slaughter or disassembly.
Use
The determination of the own data for a field of the change ID,
for example the own slaughtering country and slaughterhouse,
Dependencies
The system only determines its own data for a field of the
change ID if the disassembly process for which the field of the
change ID is maintained also occurs in the disassembly process
order. To determine the disassembly process, a disassembly or-
der number must have been transferred to the change valida-
tion. The order type (AUART) in table /SPDGS/TPRA checks
whether the order number is a disassembly process. The value
"TPA" must be assigned to the order type there. If the order is a
disassembly order, you can use table /SPMEAT/COKP to deter-
mine the disassembly processes that are assigned to the disas-
sembly order.
OwnData/plant Definition
If this indicator is set, the system determines its own data for
the change ID field via the plant
Use
With the value of the plant the own value for the change ID field
is taken from the table and field specified in the same data rec-
ord.
Dependencies
The plant which is transferred in the communication structure
in field I_WERK applies.
Note
Note that only one of the following indicators may be set:
— Determination of own data via plant
— Determination of own data via the vendor of the plant
— Determination of own data via the vendor of the slaughtering
site
Example
For the logistical process DAO, the value for the own country
disassembly is to be determined via the plant independent of the
disassembly process. Accordingly, set the via plant indicator in
table /SPMEAT/CC_OWNK. You must also specify the table and
the table field containing the value for the change ID field.
— I_WERK = 0011
— Table: T001W
— Field: LAND1
Use
With the value for the vendor, the own value for the change ID
field is taken from the table and field specified in the same data
record.
Dependencies
The plant that is transferred in the communication structure in
field I_WERK applies.
Note
Note that only one of the following indicators may be set:
— Determination of own data via plant
— Determination of own data via the vendor of the plant
— Determination of own data via the vendor of the slaughtering
site
Example
For the logistical process DAO, the value for the own country of
disassembly is to be determined independently of the disassem-
bly process via the vendor of the plant. Set the Via vendor indi-
cator in table /SPMEAT/CC_OWNK accordingly. You must also
specify the table and the table field containing the value for the
change ID field.
— I_WERK = 0011
— T001W-LIFNR = 999997
— Table: LFA1
— Field: LAND1
Use
With the value of the vendor from the slaughtering site, your
own value for the change ID field is taken from the table and
field specified in the same data record.
Dependencies
The slaughter process number that is transferred in the commu-
nication structure in field I_SLPNR applies. If the value I_SLPNR
is not filled, the slaughter process number is determined using
the value in field I_INPUT_OPRNR. The slaughter process num-
ber is in table field /SPMEAT/PDAO-EXTNR. The value of
SLPNR is used to access table /SPMEAT/SLP0_H to determine
the slaughtering site from field /SPMEAT/SLP0_H-SLORT.
Example:
— Slaughtering date 1 31.01.2016
— Slaughtering date 2 01.02.2016
— Slaughtering date 3 28.01.2016
Example
For the logistical process DAO, the value for the own slaughter-
ing country is to be determined via the slaughtering site (= ven-
dor) of a slaughter data record. Accordingly, set the Via slaugh-
tering site indicator in table /SPMEAT/CC_OWNK. You must
also specify the table and the table field containing the value for
the change ID field.
— I_SLPNR = 1234567890
— /SPMEAT/SLP0_H-SLORT = COE
— Table: LFA1
— Field: LAND1
Use
The table specified here is accessed with the key value previ-
ously determined using the respective indicator (for example,
the plant or the vendor).
Dependencies
The key value is determined using one of the indicators. The ta-
ble cannot be accessed without a key value.
A valid entry is only a table for which the qualified key is from
the value of the plant or the value LIFNR is sufficient to
uniquely identify a data record. This is the case with the follow-
ing currently valid tables:
— T001W
— LFA1
— /SPMEAT/T001W
Example
For the logistical process DAO, the value for the own slaughter-
ing country is to be determined via the slaughtering site (= ven-
dor) of a slaughter data record. Accordingly, set the Via slaugh-
tering site indicator in table /SPMEAT/CC_OWNK. You must
Use
The table specified here is accessed with the key value previ-
ously determined using the respective indicator (for example,
the plant or the vendor) and the table specified previously.
Dependencies
The key value is determined using one of the indicators and the
table must be specified previously. The table cannot be accessed
without a key value.
Example
For the logistical process DAO, the value for the own slaughter-
ing country is to be determined via the slaughtering site (= ven-
dor) of a slaughter data record. Accordingly, set the Via slaugh-
tering site indicator in table /SPMEAT/CC_OWNK. You must
also specify the table and the table field containing the value for
the change ID field:
— I_SLPNR = 1234567890
— /SPMEAT/SLP0_H-SLORT = COE
— Table LFA1
— Field LAND1
Use
This is a customizing table. The data in the table is only relevant if the Determine own data dependent
on disassembly process indicator is set in table /SPMEAT/CC_OWNK. In this case, the own origin data
for a characteristic (field) for a logistical process is only determined if determination for a disassembly
process is activated.
Use
The disassembly process structures the production (disassem-
bly) of a plant into individual sub-processes. It also divides the
disassembly process list (cut list) into the corresponding areas.
When you create disassembly orders, only the data and materi-
als for the selected disassembly processes are assigned to the or-
der.
Dependencies
You can assign multiple disassembly processes to a plant. The
cut list contains all disassembly processes. If all data is availa-
ble, the cut list shows the disassembly of a component chrono-
logically and corresponding to the physical process.
Example
— Slaughtering
— Primal cutting
— Disassembly
— Deboning
Active Definition
If this indicator is set, the control or setting is activated.
Use
The determination of the own origin data for a characteristic
(field) for a logistical process dependent on a disassembly pro-
cess only takes place if it is explicitly activated. This additional
control setting is designed to prevent that, for example, the
Dependencies
Activation is only relevant if the Determination own data de-
pendent on disassembly process indicator is set in table
/SPMEAT/CC_OWNK. If no disassembly process can be deter-
mined, no determination is made for the own origin data deter-
mined for the disassembly process. No message is displayed.
Example
In the plant, there are independent disassembly divisions with
their own disassembly orders:
— Slaughtering (disassembly process: SCHL) with its own
disassembly order
— Disassembly (disassembly process: ZERL) with its own
disassembly order
— Deboning (disassembly process: FZER) with its own disas-
sembly order
— Packaging with a further processing order (no disassembly
orders)
Use
This is a Customizing table. In the table, you can deactivate the rules for a characteristic (field) for a
logistical process.
Use
This indicator must always be set if a characteristic is not to be
checked in all logistical processes
Dependencies
If the rules of a field are deactivated for a logistical process, this
setting affects all origin classes.
Example
In the case of goods receipt for a purchase order, it may be useful
to create rules for the characteristic Vendor Batch. Since the
rules apply to all logistical processes, the rules for the vendor
batch would also be applied to an inspection for a production or-
der or delivery. However, the rules would interfere with this be-
cause there might be no vendor batch.
Use
This is a customizing table. In the table, the data for determining the logistical processes is defined
for each plant. In addition, basic settings are made here for the process flow of the change validation
of the respective logistical process.
Use
The document group is used together with the document type to
determine the logistical process.
Dependencies
The determination of a logistical process based on document
group and document type must be unique. If the check with the
document type and document group determines two or more en-
tries in the table, an error is output and the check is terminated.
Note
The logistical process is also a key value in the table allowing you
to make the settings for a logistical process without specifying a
document type and document group. This means that technically
several entries can be made with the same document group. How-
ever, this would mean that the determination based on the docu-
ment group is no longer unique. In this case, the key field for the
document group is to be left empty for all other logistical processes.
When you call Change ID Control, the calling program must deter-
mine the logistical process and specify it directly.
Document type Definition
A document is proof of a business transaction that results from
the business process. In logistical business processes such as
purchasing, production and sales, the document type distin-
guishes the classification and processing of the resulting docu-
ments.
Use
The document type is used together with the document group to
determine the logistical process.
Dependencies
The determination of a logistical process based on the document
type and document group must be unique. If the check with the
document type and document group determines two or more en-
tries in the table, an error is output and the check is terminated.
Use
To document the properties and origin of a reference batch, a
change ID is created and the corresponding characteristic values
are updated in table /SPMEAT/CC_VALD.
Dependencies
All characteristic values must be valid. For characteristics for
which there is a violation of compliance, it must be allowed in
the rules to create a new change ID.
Proof of origin active (Pr. origin Definition
act.)) If the indicator is set, an object assignment (change ID, docu-
ment objects with relevant information) is made to a container
(container) in order to assign unique characteristic values to a
container.
Use
The claim of consumers, represented and formulated by the
trade, is the clearest possible origin of a consumer package. The
smaller the delimited quantity of a product in production, the
more clearly the origin can be determined. In the food industry,
such differentiation is created by the handling of goods in con-
tainers (crates, boxes, cardboard boxes, pallets, etc.). If this indi-
cator is set, the data from two project-specific tables is consoli-
dated in table /SPMEAT/DRV_VAL under the container ID to
keep the origin of the goods in or on the container as unique as
possible
Dependencies
In order to document the origin of each container, an appropriate
project-specific organization and updating of the relevant data
in the tables provided for this purpose is required:
Note
The data collection and formatting for updating the two tables
SPMEAT/DRV_CLOG and /SPMEAT/DRV_LOG is not included in
the standard system, but is implemented on a project-specific basis.
New batch Definition
If this indicator is set, a new batch is created for the object every
time a new change ID is created for the same object (for exam-
ple, production order).
Use
You must always set this indicator if you want to assign a
unique batch to each change ID. The assignment is stored in ta-
ble /SPMEAT/CC_BATCH (Change ID Control for Batch).
Dependencies
When transferring the values of a change ID to the classification
data of a batch, it can be influenced whether the values of the
characteristics of all change IDs in the characteristic of the clas-
sification data are combined under one batch for the object (pro-
duction order). If there is a 1:1 relationship between change ID
and batch, the values of the classification data of a batch corre-
spond to exactly one change ID.
If this indicator is set, more than one batch is created for a pro-
duction order.
Example
Disassembly order primal cutting with batch 1000
If the indicator Batch per change ID is not set, all three fattening
countries are shown in the classification characteristic Fattening
Country of batch 1000.
— Fattening country: DE, NL, DK
Note
If a new change ID is created for the same production order, only
one batch number is taken from the corresponding number range at
the same time and saved for the change ID. The batch itself is not
created in the tables at this time. The batch is not created until the
first PDA operation for a material with this batch number is en-
tered in SAP using BAPI BAPI_GOODSMVT_CREATE.
Old Ch ID (Old Change ID Active Old Change ID Active indicator
ind.)
Definition
If this indicator is set, Change ID Control will search for an exist-
ing change ID to which the current input values comply, instead
of creating a change ID (reference batch).
Use
Instead of always creating a new change ID, the system first
searches within the logistical order for an existing change ID
whose values correspond to the values of the current input. The
main reason for this is that a new batch number is always cre-
ated for each new change ID when Batch per change ID is set (see
previous indicator). If the same value combination has already
occurred in the past within the logistical order, possibly for the
same material number, it makes sense to reactivate the old
change ID.
Dependencies
The check whether a previously created change ID matches the
current input is made from the most recent previous change ID
to the oldest.
If this indicator is not set and no change IDs are assigned to a lo-
gistical order, all change IDs from the plant are displayed on the
entry screens.
If the indicator is set, only the change IDs of the relevant log.
process are always displayed in the list selection.
Use
This indicator prevents the user from selecting a change ID that
does not match their process.
Use
This is a customizing table. The prefixes for the logistical order are defined in the table.
Use
The prefix is used to subdivide the logistical order and identifi-
cation of the field (characteristic).
Dependencies
The prefix is two-digit and must be unique for each object value.
Example
Possible objects are:
— Manufacturing cell: APLGR
Use
This is a customizing table. In the table, the logistical order for determining an (active) bill of ex-
change ID is defined in table /SPMEAT/CC_CIDFL.
Use
A communication point is a precisely specified point in a plant
where data on a logistical process are created, exchanged and/or
documented. Communication points are differentiated by check
module /SPMEAT/CHANGEID_CHECK as follows
— Check communication points at which a change validation
is carried out, a change ID is generated and, if necessary,
also assigned to a good or product
Dependencies
When calling the check module /SPMEAT/CHANGEID_CHECK,
you must always specify a specific communication point. Check
communication points are the source communication points of
the Assign communication points.
Examples
See the examples at the end of this table.
Characteristics assignment
To ensure traceability at container level, the data must be docu-
mented during the production of the finished products. The
highest level where the data is available is the production plant
where the production takes place. Within the plant, the location
where the products are created and assigned to the containers
must be specified using the work center. Depending on the type
(machine, conveyor table, etc.) and size/length of a work center,
a container can be placed at different locations on the work cen-
ter. There it is processed, and data is generated that is logged
(reported) for the container.
Use
The data objects are processed in ascending order according to
the numbering.
Dependencies
None
Prefix Definition
A prefix is the leading part of an identification key.
Dependencies
None
Example
The following data string,
OR000001004765SP9999999999LV5555555555, which is stored
in one field consists of the following object values:
— the order number OR000001004765,
— the slaughter process number SP9999999999, and
— the livestock number LV5555555555.
Source for value determination Definition
The source for the determination of values corresponds to the
point of reference.
Use
Object values may be determined by specifying the source.
Dependencies
The correct point of reference must be selected where the data
are specified or stored.
Batch active Definition
If this indicator is set, the key is part of the object key of table
/SPMEAT/CC_BATCH.
Use
By using one specific or multiple keys for the logistical order of
table /SPMEAT/CC_BATCH, the data record can be uniquely de-
termined.
Dependencies
The field length of the logistical order of the table must be ob-
served. If a field overflow occurs, an error message is displayed.
Example
Logistic order consisting of three keys with a length of 38 char-
acters:
— OR000001004765SP9999999999LV5555555555
Change ID flow active Definition
If this indicator is set, the identification key is part of the object
key of table /SPMEAT/CC_CIDFL.
Dependencies
The field length of the logistical order of the table must be taken
into account. If a field overflow occurs, an error message is dis-
played.
Example
Logistical order consisting of three identification keys of length
38 digits:
— OR000001004765SP9999999999LV5555555555
Mandatory field If this indicator is set, there must be a value for the identifier.
Use
This is a customizing table. In the table, the reporting points at which a check takes place or data is
exchanged are defined.
Use
A communication point is a precisely specified point in a plant
where data on a logistical process are created, exchanged and/or
documented.
Dependencies
When calling the check module /SPMEAT/CHANGEID_CHECK,
you must always specify a specific communication point.
Check communication points are the source communication
points of the assign communication points.
Examples
See the examples at the end of this table.
Characteristic assignment
To ensure traceability at container level, the data must be docu-
mented during the production of the finished products. The
Dependencies
None
Source communication points Definition
Corresponds to the key of already defined communication points
for which the Assign indicator is not set.
Use
The change IDs that can be assigned at an Assign communica-
tion point are determined based on the source communication
points in table /SPMEAT/CC_CIDFL.
Dependencies
Check communication points are the source communication
points of the Assign communication points. At least one source
communication point must be assigned to an Assign communi-
cation point.
Examples
See the examples at the end of this table.
Use
The purpose of the confirmation is to ensure that the user takes
note of the newly created reference batch (change ID). When-
ever a new reference batch has been created, the current input
goods forming a new reference batch no longer match the cur-
rent reference batch located at the work center in the production
equipment. In this case, the user must ensure that the two refer-
ence batches are not physically mixed with each other either.
Dependencies
If this indicator is set, it merely causes the function module
/SPMEAT/CHANGEID_CHECK to pass the export parameter
E_NEW_CHGID2CONFIRM (quit-active indicator) to the calling
program. In the calling program it must be developed in which
form this indicator is reacted to. This can be a popup with a con-
firmation button, a visual signal via a traffic light or an audio
signal (sound), etc.
Use
Whenever a new reference batch is created, the current input
goods that form a new reference batch no longer matches the
current reference batch that is on the work center or in the pro-
duction equipment. In this case, the user must ensure that the
two reference batches are not physically mixed using the
change label that accompanies the goods from now on.
The label describes the relevant data for a reference batch and
often also a barcode for scanning the reference batch at a shop
floor application.
Dependencies
If the indicator is set, the function module
/SPMEAT/CHANGEID_CHECK only passes the export parame-
ter E_CHGID_LABEL2PRINT (Label active indicator) to the call-
ing program. In the calling program, you must develop which
data is used to trigger a printing process to create the label.
Check communication point in Check communication point in assign mode indicator.
assign mode /ChMeldPkAs)
Use
By-products usually have lower origin requirements than main
products. For these products, a supplementary change check can
be performed. With the help of this field a check for this constel-
lation is possible.
Use
This is a customizing table. With this setting for the communication point, it is possible to make a
restriction regarding the change IDs via fields.
With the entry of the desired field for the communication point,
the change ID is determined by communication point.
Example
In the Repacking process, only the created change IDs for the
terminal should be listed. In this example, the TERMI field
would be stored in Customizing for the relevant communication
point.
Use
This is a customizing table. In the table, you can define the organization of the work centers.
Use
As an organizational unit in the plant for grouping multiple
work centers.
Dependencies
None
Example
In meat processing companies, disassembly is often designed as
a manufacturing cell. The carcass is cut up at the initial cutting
belts. The various primal cuts are processed into semi-finished
or finished products on the cutting belts along the sides.
Production work center Definition
The work center is the smallest spatial structural unit of a plant
at which a machine or a person or both work together with ob-
jects and provide a service.
Use
As an organizational unit in the plant for localization, planning,
production of semi-finished and finished products.
Dependencies
— A work center has master data from different process ar-
eas, for example, from planning, production control, ca-
pacity planning and controlling.
— A work center can belong to a manufacturing cell.
— A work center in the manufacturing cell can only be
marked as the MC work center.
— A work center in the manufacturing cell can also be
flagged as a GI work center, where the logistical material
document entry for the production order is also carried out
in addition to production.
Example
Packaging machine for packaging and labelling consumer pack-
ages. This consists of a slicer, the packaging line, the labeler
and, at the end, the packing workstation. In this case, the slicer
Use
The disassembly process structures the production (disassem-
bly) of a plant into individual sub-processes. It also divides the
disassembly process list (cut list) into the corresponding areas.
When you create disassembly orders, only the data and materi-
als for the selected disassembly processes are assigned to the or-
der.
Dependencies
You can assign multiple disassembly processes to a plant.
Example
— Slaughtering
— Primal cutting
— Disassembly
— Deboning
GI work center Definition
The work center is the smallest spatial structural unit of a plant
at which a machine or a person or both work together with ob-
jects and provide a service.
Use
As an organizational unit in the plant for localization, planning,
production of semi-finished and finished products.
Dependencies
A work center has master data from different process areas, for
example, from planning, production control, capacity planning
and controlling.
Example
Use
This is a customizing table. This table can be used to define an exception. An exception can also be an
additional rule that cannot be set in the standard system. The exception or rule is implemented using
a function module that is assigned here.
Use
An exception is used to make project-specific enhancements or
adjustments to existing rules.
Dependencies
In the rules for the origin class (table /SPMEAT/HK_RUL), an
exception must be assigned per characteristic (field) and origin
class in the Origin class exception field (/SPMEAT/HK_RUL-
CHEXCEPT).
The assigned function module must always have the same sig-
nature. The function module /SPMEAT/CHANGEID_EX-
CEP_TEMPL serves as a template.
Menu Softproviding Meat > Central Settings > Origin Control Settings >
Batch Valuation
The following sub- items with their table fields are available in the dialog structure:
— Batch Valuation: Mapping Fields to Characteristic (table /SPMEAT/BAT_MAPP)
— Batch Valuation: Update per PDA Category (table /SPMEAT/TDEC_CUP)
Use
Batch classification: Package /SPMEAT/CC_BATCH_VALUATION
Package /SPMEAT/CC_BATCH_VALUATION contains the functions for batch classification based
on the change ID data. To classify a batch, create a class in the classification system.
Depending on the system settings, the class can be assigned to one of the following class types:
— 022 for batches at plant level
— 023 for batches at material/client level
You assign characteristics to the class to store the values of the change ID fields for these character-
istics. You can also update various fields from the batch master record based on the change ID. Acti-
vate updating in Customizing (see the Update Batch Classification field below).
Note
Updating usually only makes sense for goods receipt operations. This also includes repostings.
Authorization objects
No separate authorization objects are provided. Authorizations to change (including create) and dis-
play tables that are maintained by means of generated views using standard transactions SM30,
SM31 or SM34 can be assigned using authorization object S_TABU_DIS.
An authorization group can be assigned to the relevant table using view V_DDAT_54 and a name for
the group maintained using view V_BRG_54.
Activities/Recommendations
Make the required settings. No field is defined as a mandatory entry. In this table, you can make en-
tries for the weight unit and the piece unit of measure. These entries are then transferred to the re-
spective applications.
New Entries
New entries are created by selecting the New Entries button.
Use
The transparent table contains the data mapping between the fields of the change ID and the charac-
teristics of the batch class. The available fields (for the Field Name field of the source field) are based
on the structure /SPMEAT/CC_FIELD_STRUCT.
Note
Data mapping is the process that links data elements of different data models.
In addition, the following attributes in the batch master can be updated based on change ID fields.
The fields are based on structure BAPIBATCHATT. The fields are updated with BAPI
BAPI_BATCH_CHANGE.
Note
A change ID field can contain n values. An attribute is based on a field and can only take in one value (the
first).
Use
For a field of a change ID, the corresponding origin values are
stored.
Dependencies
This field must be assigned to structure
/SPMEAT/CC_FIELD_STRUCT
Example
See the examples for the field names of a change ID at the end of
this table.
Batch attribute field Definition
Batch attribute from structure BAPIBATCHATT.
Use
The field values of a change ID are updated to the specified field
name of a batch attribute of the batch master for the batch.
Dependencies
The update is activated in table /SPMEAT/TDEC_CUP for a PDA
transaction.
Note
When assigning an attribute to a data field of the change ID, it is im-
portant to pay attention to the domains. If the field values are incom-
patible, the classification is terminated. For example, if you were to
transfer a country as a region.
Use
The field values of a change ID are updated to the batch master
for the characteristic of a class with class type 022 or 023 speci-
fied here.
Example
Below an example of a batch class with assigned characteristics:
Class: HK_BATCH_VALUATION
Class type: 022 (CHARGE)
Caution
If individual characteristics have already been assigned values in
the material master, at least one of these values must occur for
each characteristic later when you classify based on the change ID.
In addition, no values are allowed that were not assigned to the
characteristic in the material master. If an assignment does not fit,
no classification takes place.
Example
Create class HK_BATCH_VALUATION for class type 022. You
must assign 1 to n characteristics to class HK_BATCH_VALUA-
TION. The following is a list of possible characteristics. All char-
acteristics begin with a prefix "HK_", which identifies them as
part of their origin.
Use
You should always set this indicator if each individual field value
and not the aggregation value of a change ID is to be updated to
the classification data of a batch.
Dependencies
If an aggregation value is also assigned as a single value to the
origin class, the aggregation value, and not its single values, is up-
dated.
Use
The transparent table contains the indicator that activates batch classification. Since it usually only
makes sense to classify batches for goods receipt operations, you must set the indicator for the rele-
vant PDA transactions based on the document group and the document category. This also includes
repostings.
Examples
— Purchase order
— Disassembly order
— Further processing order
Document category Document categories identify logistic acquisition operations.
They therefore represent a kind of categorization.
Example
— Document category GI (goods issue) for disassembly order
— Document category GR (goods receipt) for further pro-
cessing order
Update batch classification Definition
(BatchCl Update) If this indicator is set for a plant, document group and document
category, the field values of a change ID are updated to the classi-
fication characteristics of a batch.
Use
You should always set this indicator if you want to use or display
the field values of a change ID via the batch in other standard pro-
grams. The data can also be made available to the "SAP Global
Batch Traceability" (GBT) via batch classification.
Dependencies
The data is updated for the batch that is assigned in the PDA
transaction. The data comes from the change ID stored for this
PDA transaction in field /SPDGS/PDAO-CHGID.
Note
If this indicator is set, more than one batch is created for a produc-
tion order.
Example
Disassembly order Primal Cutting" with batch 1000. The classifica-
tion characteristic Fattening Country is assigned to the batch.
Three change IDs are created for the same disassembly order:
— Change ID 1 with fattening country DE
— Change ID 2 with fattening country NL
— Change ID 3 with fattening country DK
If the indicator New batch per change ID is not set, all three fatten-
ing countries appear in the classification characteristic of batch
1000:
— Fattening country: DE, NL, DK
If the indicator New batch per change ID is set, a new batch is cre-
ated for each further change ID:
— Change ID 1, batch 1000 with fattening country DE
— Change ID 2, batch 1001 with fattening country NL
— Change ID 3, batch 1002 with fattening country DK
Note
If a new change ID is created for the same production order, a batch
number is taken from the corresponding number range and saved for
the change ID. The batch itself is not created in the tables at this
time. The batch is not created until the material document is entered
based on the first PDA transaction for a material with the newly as-
signed batch number by function module /SPMEAT/BATCH_PROP-
ERTY_UPDATE.
Archiving objects
Archiving objects are not supported.
3 Master Data
Menu Softproviding Meat > General > Origin Control Settings > Origin Class
Definition
Menu Softproviding Meat > General > Origin Control Settings > Display
Origin Class Definition
Alternatively, the menu item may be called up via the view cluster as follows:
This table contains the basic settings and for, among other things, origin control as well as the rules.
The following sub-items with table fields are available in the dialog structure
Field Table
Origin class /SPMEAT/HKK
Rules /SPMEAT/HK_RUL
Allowed single values /SPMEAT/HK_VAL
Allowed aggregations /SPMEAT/HK_AGGV)
Use
An origin class can be assigned to a material in the material master. From there, the origin class is
copied to the production order if the material is produced in the production order. The settings for the
origin classes are not made in Customizing but are rather maintained as master data, which can be
carried out directly in the production system. To define an origin class, you do not need to create a
class in the SAP Classification System.
The master data and rules always apply per origin class. The allowed values and aggregations also
apply across origin classes. Maintaining origin classes is a prerequisite for working with Change ID
Control.
Authorization Objects
No separate authorization objects are provided.
Activities/Recommendations
Make the required settings. No field is defined as a mandatory entry.
New Entries
New entries may be created by selecting the New Entries button.
Use
This is a master data table. Origin classes must be created in this table.
Basic origin classes define the rules and allowed values for a
group of verifiable materials that are generally allowed.
(Standard) origin classes further restrict the basic rules and per-
mitted values of the basic origin classes. A basic origin class
must always be assigned to an origin class.
Use
An origin class must be assigned to materials subject to proof of
origin in the material master. When products requiring proof of
origin are produced, this is transferred to the production order
(FAUF). The proof of origin for a production order is based on
the highest origin class.
Dependencies
If an origin class is assigned to a material and the Proof of Origin
indicator is set in the material master, the origin data required
by the origin class must be specified for this material in the lo-
gistical processes.
If the entry is not made or is incorrect, the goods receipt into the
warehouse stock for the material is prevented. To ensure this,
the function module /SPMEAT/CHANGEID_CHECK must be im-
plemented in every shop floor application in which material re-
quiring proof of origin is processed and must be called for mate-
rials subject to proof of origin.
Example
Relevant logistical processes in meat production are:
— Breeding (rearing and fattening)
— Livestock reception
— Other goods receipt (e.g. slaughtering)
— Goods receipt: meat for purchase order
— (Customer) returns processes: meat
— Production processes (disassembly and further pro-
cessing)
— Picking
Description Description of the origin class
Origin class category Definition
The origin class type defines whether it is a (standard) origin
class "_" or a basic origin class "B".
Use
When an origin class is created, its type must be specified. The
default is Standard.
Example
Allowed assignments within the basic origin class of an instruc-
tion:
OrigCl OrClTyp Instruct. BOrigCl OrClVal
01 Basis A1760 01 1
02 Basis A1760 01 2
03 Basis A1760 02 7
04 Basis A1760 03 8
05 Basis A1760 01 3
06 Basis A1760 01 4
07 Basis A1760 06 5
Use
When you create an origin class, you must specify a freely defin-
able value for the instruction on the basis of which the settings
for this origin class are defined.
Example
In the European Union, the basis for the guarantee of origin of
beef is laid down in <Regulation (EC) No 1760/2000 of the Euro-
pean Parliament and of the Council of 17 July 2000 establishing a
system for the identification and registration of bovine animals
The value 1760 is defined as the instruction value for the origin
classes
Dependencies
In production processes (disassembly and further processing) in
which n products with different origin classes and instructions
are created, the proof of origin is provided separately for each in-
struction by creating several change IDs for the same object.
To find the (one) operative origin class (of highest value) for a
production order, the origin classes and instructions of the prod-
ucts of a production order are analyzed. If n instructions are
found, the most valuable instruction is determined first by sort-
ing the instruction terms alphanumerically. The first instruction
of the sorted list is considered to be the most valuable instruc-
tion. The origin class of the highest (and lowest) value is only
determined from the most valuable instruction.
Example
A method for sorting data, such as field values, where the fol-
lowing sort order applies: punctuation marks, digits, letters (up-
percase before lowercase), remaining symbols.
Example
In the EU, the basis for the proof of origin of beef is Regulation
1760 and for pigmeat the implementing Regulation 1337, alt-
hough Regulation 1760 is more comprehensive for beef than for
pigmeat and therefore of rated higher. Since the value 1760
comes after the value 1337, the following values are useful for
the instruction term, for example:
— Instruction for beef: A1760
— Instruction for (pig)meat: B1337
Example
Processed products packed from components whose proof of
origin is based on different instructions. This can also mean dif-
ferent legal bases. If no clear procedure is explicitly prescribed in
Example
Use
A standard origin class must always be assigned a basic origin
class. The next higher basic origin class must be assigned to a
basic origin class. The highest basic origin class is assigned to it-
self. The latter is only permitted once, within an instruction.
Dependencies
In production processes (further processing and disassembly
processes) in which n products with different origin classes are
produced, proof of origin is provided within an instruction ac-
cording to the (basic) origin class with the highest value. If this
is not unique, the system uses the basic origin classes assigned
to the origin classes.
The basic origin class also defines the framework of the rules. A
rule change in the origin class that contradicts the rules for es-
tablishing the proof of origin of the basic origin class is not per-
mitted.
Example
If in the basic class of origin the proof of origin for the fattening
country is to be maintained as a mandatory indication, this set-
ting also applies to the origin class. It is not permitted to change
the rule in the origin class to optional.
Origin class value assignment Definition
type The legal requirements differentiate the products according to
their value assignment to the consumer. The higher the quality
of a product or the lesser disassembled it is (whole cuts), and the
higher the quality of the stock type (animal type), the stricter
the rules for proof of origin. The freely selectable system of the
value assignment of an origin class for the various products de-
fines the strictness of the regulations for the proof of origin
Use
When you create an origin class (HKKLA), you assign a value to
it. The value assignment type is to be defined numerically be-
tween 1 and 99. The origin class with the value assignment type
1 is the highest value HKKLA. The origin class with a value as-
signment type 99 is the least significant HKKLA.
Dependencies
For production processes (disassembly and further processing)
in which n products with different origin classes are produced,
proof of origin is provided according to the origin class with the
highest value.
Example
Orig. Cl. Description Value
01 Meat cut with or w/o bone 1 (A)
02 Meat cuts 2 (B)
If products that are assigned to origin class 01, meat cuts, and
02, meat cuts, are produced simultaneously in a production or-
der, the proof of origin for all products in this example is carried
out according to the highest origin class 01.
Use
This is a master data table. In this table, you have to create the rules for each characteristic (change
ID field). The rules control the process flow of change validation.
Note
The following list of fields corresponds to the field display when a data row has been selected by double-
clicking. The fields are displayed in groups.
Header
Field Name Description
Origin class See the description on the OriginClass field further up in table
/SPMEAT/HKK (origin class).
Change ID field See the description on the Field name field further up in table
/SPMEAT/CC_FDEF (Origin Classes: Plausibility Table Field Val-
ues).
Sequence number Definition
The consecutive number defines the sequence.
Use
The characteristics and their rules are checked in ascending or-
der of their numbering.
Dependencies
None
Conformity Check
Conformity check Definition
Conformity is compliancy with pre-defined criteria. A conform-
ity test is the test for compliance with defined criteria.
The check is carried out field by field in the sequence of the Se-
quence number field by the function module
/SPMEAT/CHANGEID_CHECK.
Use
This check is used to compare the characteristic values of a
product (input) with the characteristic values of the product al-
ready entered or in process (reference). If the result conforms,
the input goods may be combined with the reference goods.
Dependencies
The conformity check is only carried out once the validity
checks have not led to any errors and at least one permitted ref-
erence value has been determined.
If the check shows that in principle all values among the input
values are allowed according to the value column of all permit-
ted reference values, but a combination is not allowed for other
reasons, for example because the number of permitted individ-
ual values has been exceeded, the goods do not conform to the
current goods and a combination is not allowed. Now it is
checked whether a change is allowed. If a change is allowed, a
new change ID is created with the current values of the input
goods. In addition, the user is made aware of the new change ID
by requesting confirmation or printing a change label. The user
must now ensure that the new input goods are not physically
mixed with the previous reference product on the workstations.
If a change is not permitted, the goods are not permitted and
must be returned to the warehouse.
In this case, it should be noted that the value column of the in-
put values contained one or more invalid values. If a change is
allowed and a new change ID is created with the same origin
class that is already the basis of the previously active change ID,
the input goods will not be allowed with the new change ID ei-
ther. In this case, no new change ID is created, but the goods are
not allowed in the same way and must be returned to the ware-
house.
The input goods only have a chance if the new change ID has a
new value column of all permitted reference values, for example
a different origin class. If this is the case, a check is carried out.
If the input values that were not previously allowed do not con-
form to the new value column of all allowed values, the goods
are still not allowed. In this case, no new change ID is created ei-
ther, but the goods are not allowed in the same way and must be
returned to the warehouse.
Example 1
— Current reference values, Country of birth: DE, DK
— Allowed values for the country of birth: DE, DK, NL
— Input values: DE
Result
Goods do conform and are allowed
Example 2
— Current reference values, Country of birth: DE, DK
— Allowed values for the country of birth: DE, DK, NL
— Allowed number for the country of birth: 3
— Input values: DE, NL
Result
Goods do conform and are allowed
Example 3
— Current reference values, Country of birth: DE, DK
— Allowed values for the country of birth: DE, DK, NL
— Allowed number for the country of birth: 2
— Input values: DE, NL
Result
Goods do not conform, but are allowed after change
Example 4
— Current reference values, Country of birth: DE, DK
— Allowed values for the country of birth: DE, DK, NL
— Allowed number for the country of birth: 3
— Input values: DE, FR
Result
Goods do not conform and are not allowed because the same
value column of all allowed values applies to the country of
birth even with a new change ID, and FR is not among them.
Example 5
— Current reference values, Country of birth: DE, DK
— Allowed values for the country of birth: DE, DK, NL
— Allowed number for the country of birth: 3
— New origin class with allowed values for the country of
birth: DE, DK, NL, FR
— Input values: DE, FR
Result
Goods do not conform but are allowed after the change, because
the new change ID has a new value column of all allowed values
for the country of birth, and FR is among them.
Use
If the result of a conformity check does not conform, the system
checks whether the creation of a new change ID is allowed. If
the result of the conformity check does conform to the new
change ID, the goods are permitted.
Dependencies
See the description of the conformity check. The first change ID
for an object, for example, a production order, is always created.
This indicator is not set until a second change ID is to be created
for the same object.
Example
See the description of the conformity check.
New change ID request Definition
If the indicator is set, a parameter is passed to the calling pro-
gram that signals that the user must authorize the creation of a
new change ID. If the user agrees, permission is given to create a
new change ID if the result of the conformity check based on the
new change ID does conform. For more information, see the de-
scription of the conformity test.
Use
If the result of a conformity check is affirmative, the system
checks whether the creation of a new change ID is allowed. If
creating a new change ID is generally not allowed, it can still
make sense to leave the decision to the user in special situa-
tions. If the user authorizes the creation of a new change ID,
they can prevent the goods from being returned to the ware-
house. Conversely, it can prevent a new change after a change
was made a few minutes ago.
Dependencies
The request to the user must be implemented in the calling pro-
gram.
Confirm new change ID This field is not in use in the current release.
Print label Definition
If the indicator is set, label printing is triggered for a new refer-
ence batch (change ID).
Use
Whenever a new reference batch is created, the current input
goods that form a new reference batch no longer matches the
current reference batch that is on the work center or in the pro-
duction equipment. In this case, the user must ensure that the
two reference batches are not physically mixed using the
change label that accompanies the goods from now on.
The label describes the relevant data for a reference batch and
often also a barcode for scanning the reference batch at a shop
floor application.
Dependencies
If the indicator is set, the function module
/SPMEAT/CHANGEID_CHECK only passes the export parame-
ter E_CHGID_LABEL2PRINT (Label active indicator) to the call-
ing program. In the calling program, you must develop which
data is used to trigger a printing process to create the label.
Conformity check active (even) Definition
if value is initial By default, the check of the input value against the allowed ref-
erence values is disabled if there are no allowed reference val-
ues. If a check is still to take place, this indicator must be set.
Use
It makes no sense to maintain permitted reference values for lo-
gistical characteristics such as a purchase order number or a pro-
duction order number. For such characteristics (EBELN, AUFNR,
POSNR, CHARG, BATCH, etc.), you must set the indicator so
that a conformity check is still performed and a new change ID
is triggered if the value of the logistical characteristic changes.
Dependencies
Since no meaningful allowed reference values are available for
the conformity check, the All allowed indicator (ALL_VAL) must
be set. This allows any value that matches the definition of the
data element.
You can also activate the validity check. The validity check is
performed using a transparent database table and field that are
to be customized in table /SPMEAT/CC_FDEF. A value is only
valid if a data record is found in the table for which the value is
contained in the defined field.
Example
— Purchase order number (EBELN)
— Production order number (AUFNR)
— Item number (POSNR)
— Batch number (CHARG)
— Production batch number (BATCH)
— Delivery number (VBELN))
Values
Change ID value to document Definition
If this indicator is set, the conforming values of an input are doc-
umented in the active change ID.
Use
In a conformity test, the input values are compared with the ref-
erence values. If the result does conforms, the input goods may
be combined with the reference goods. In this case, all additional
input values that are merged under the reference batch for the
first time are documented in table /SPMEAT/CC_VALD for the
active change ID.
Dependencies
None
Number of single values Definition
Here, the absolute frequency (number) of characteristic values
(single values) for a characteristic (field) in the reference batch
(change ID) can be specified.
Use
The origin or property can be clearly defined by specifying a
count of 1. If several characteristic values are allowed, the count
can be limited because, for example, the space on a label for de-
scribing the origin or properties of the reference batch is limited.
Dependencies
The number of characteristic values is checked during the con-
formity check. If the number of characteristic values is exceeded
when the current input goods are combined to form the refer-
ence batch, there is a violation of conformity to the current ref-
erence batch (change ID). In this case, a second conformity
Example
— Number of sites per reference batch = 3
— Number of allowed countries of origin = 3
Single value Definition
Single values determine the characteristics.
Use
If a single value is specified for the rules of a characteristic, this
is the only allowed value. In this way, the requirement for a
characteristic can be determined quickly and unambiguously.
Dependencies
The default setting overrules any rule or master data mainte-
nance.
Aggregation value Definition
1 to n individual values or further aggregation values are as-
signed to an aggregation value (table /SPMEAT/HK_AGGV).
Use
If an aggregation value is assigned to an origin class in table
/SPMEAT/HK_RUL, all individual values of the aggregation are
allowed. You can specify the aggregation value as a single value
when entering an operation if it is defined as a single value in ta-
ble /SPMEAT/HK_VAL.
Dependencies
Even if n single values are allowed by aggregation, this does not
mean that all single values can be combined into one change ID.
Further settings in the rules for the origin class determine
whether the field value for a change ID must remain unique and
whether this triggers a change.
Example
— The countries DE, NL, DK are assigned to aggregation
value L03.
— If the aggregation value is assigned to the field for the
country of birth of an origin class on the basis of the re-
quirements for instruction 1337, the combination of the
three countries in one change ID would be permitted.
— If the aggregation value is assigned to the field for the fat-
tening country of an origin class on the basis of the re-
quirements of instruction 1337, the combination of the
Use
An aggregation value comprises n individual values. This makes
the determination less transparent because it assigns a single
value to products that does not belong to the product or that is
not fulfilled by the product. Therefore, it is not allowed to assign
aggregation values as single values to a characteristic by de-
fault; they are considered invalid. To override this default set-
ting, set this indicator.
Dependencies
The check is part of the validity check. If an aggregation value
was entered, the value is invalid if the indicator is not set. If a
value is invalid, the conformity check is no longer performed
and an error is reported. A new change ID can only be created if
a conformity check is performed. Input goods with invalid val-
ues are always rejected and must be returned to the warehouse.
Example
The country value EU is a typical aggregation value which is of-
ten used as an individual value too.
Value Check
Change ID value check Definition
If the indicator is set, the system checks whether the input val-
ues and the reference values are valid.
If single values are entered for the domain of the data element of
a characteristic (field), the validity of the single value is always
checked against the single values of the domain, regardless of
whether the "Validity check" indicator is set.
Use
The validity check is performed using a transparent database ta-
ble. The defined field used to check the validity is ideally a key
field of the table. A value is considered valid if a data record is
found in the table for which the value is contained in the defined
field.
Dependencies
The transparent table and the field with which the validity is
checked must be customized in table /SPMEAT/CC_FDEF (IMG:
Table Origin Control > HKKLA: Origin Classes: Plausibility Tables
Field Values).
If the defined field in the table is not a key field or has an index,
the check can take longer for large tables with many data rec-
ords.
Example
Database table T005 contains the internationally valid abbrevi-
ations of the countries in (key) field LAND1. In the customizing
settings for change ID control, you can specify this table and
field for checking the validity of the input or reference value for
a characteristic for the origin in the country specifications. In
this case, for example, only the value DE is valid for Germany
and not "D" or "DEU", and so on.
Required field Definition
If this indicator is set, the value for the characteristic must be
specified.
Use
This rule guarantees that a value is always specified for the
characteristic in order to determine the origin or the property re-
liably.
Dependencies
This rule is valid independent of whether a conformity check is
performed. The check is part of the validity check. If no value
was specified, the initial value is invalid. If a value is invalid, the
conformity check is no longer performed, and an error is re-
ported. A new change ID can only be created if a conformity
check is performed. Input goods with invalid values are always
rejected and must be returned to the warehouse
Initial value required? Definition
If this indicator is set, the value for the characteristic must be
initial (empty, no value).
Use
This rule guarantees that there is no existing value for the char-
acteristic.
Dependencies
The check is part of the validity check. If a value was specified,
the value is invalid. If a value is invalid, the conformity check is
no longer performed, and an error is reported. A new change ID
can only be created if a conformity check is performed. Input
goods with invalid values are always rejected and must be re-
turned to the warehouse.
Allowed Values
False value allowed Definition
If this indicator is set, all values which are marked as false are
not valid. A value is considered false if the indicator in table
field /SPMEAT/HK_VAL-FALSEVAL_FLG is set.
Use
This indicator is used if only true values of a condition or prop-
erty are allowed for the characteristic. If a product does not
meet the requirements of predefined criteria, often, no value is
given. If a characteristic is defined as a required field, a value
must be specified, even if the goods do not meet the require-
ments of predefined defined criteria. Such a value could, abbre-
viated, start with "no Xxxxx". (K_X) and be marked as false. The
rule prevents the combination of goods that meet and do not
meet the criteria.
Dependencies
The check is part of the validity check. If a false value was speci-
fied, the value is invalid. If a value is invalid, a conformity check
is no longer performed, and an error is reported. A new change
ID can only be created if a conformity check is performed. Input
goods with invalid values are always rejected and must be re-
turned to the warehouse
Example
Products that meet the requirements for one or more meat pro-
grams are marked accordingly with the abbreviation or symbol
of the quality label. These values are considered true. If the
characteristic is defined as a mandatory field, a value must also
be entered if the goods do not meet the requirements for a qual-
ity label. Such a value could begin and be abbreviated with "no
quality label Xxxxx". (K_PX) and marked as not true. This rule
prevents that goods with and without a certain quality label are
combined.
Use
This indicator is used if values for the characteristic that are
equal to no value are not allowed. If it is unknown whether a
product meets the requirements of predefined criteria, often no
value is given. If a field remains empty, it is unclear later
whether it was forgotten to enter the value or whether it was re-
ally unknown. If the characteristic is defined as a mandatory
field, a value must also be specified, even if it is unknown
whether the goods meet the requirements. Accordingly, a
dummy value no value (K_A) can be defined, which is marked as
no entry. The initial value, i.e. empty, should also be marked as
no value.
Dependencies
The check is part of the validity check. If a value equivalent to
no value has been entered, the value is invalid. If a value is inva-
lid, a conformity check is no longer performed, and an error is re-
ported. A new change ID can only be created if a conformity
check is performed. Input goods with invalid values are always
rejected and must be returned to the warehouse.
Example
A meat program can be a quality label for a product. Quality la-
bels are awarded in many areas for the fulfilment of (quality) re-
quirements which are defined or put out to tender and moni-
tored by an organization. Based on the quality label, potential
beneficiaries should be able to estimate the expected quality of a
Products that meet the requirements for one or more meat pro-
grams are marked accordingly with the abbreviation or symbol
of the quality label. These values are considered true. If it is not
known whether the goods meet the requirements for the quality
label, often no value is specified. If the field remains empty, it
will later not be clear whether it was forgotten to enter the value
or whether it was really not known. If the characteristic is de-
fined as a mandatory field, a value must also be entered if the
goods do not meet the requirements for a quality label. Accord-
ingly, a dummy value no value (K_A) may be defined which is
marked as "no value".
Everything allowed Definition
Single values determine the characteristics. For a conformity
test, the allowed individual values that determine a requirement
are usually specified. If the indicator is set, ALL means in this
context that any value that matches the definition of the do-
main's domain value range is allowed.
Use
The rule is mainly used for logistical characteristics such as or-
der numbers or production batch numbers. It does not make
sense to specify allowed single values for these characteristics.
Dependencies
If the validity check is activated, only every valid value in the
transparent table and field assigned to the characteristic applies
to ALL.
All allowed Definition
All allowed single values that determine a characteristic are
listed in table /SPMEAT/HK_VAL.
Use
Currently not used.
Dependencies
None
Date Check
Number of days Definition
Starting from a start date (the system date by default), this rule
calculates an end date in the future (positive number) or the
past (negative number).
Use
The reference period is used if only input goods whose specific
characteristic date lies within the reference period are allowed.
Whenever the value of a characteristic (field) represents a date
(data type "DATS" in the domain) and a number was specified
for this rule, the value of the transferred date is checked against
the permitted reference period including start and end date
Dependencies
The number of days is only applied to working days in a calen-
dar. If a factory calendar is maintained in the rules for the char-
acteristic, it is used to determine the working days. If no specific
factory calendar is specified, the plant calendar applies. How-
ever, the start and end dates are also valid if they do not fall on
any working day.
By default, the start date is filled with the system date. How-
ever, if a date has been transferred using the import parameter
I_START_DATUM, this date is used as the start date for deter-
mining the reference period.
Factory calendar Definition
Key that uniquely identifies the factory calendar that is valid for
this characteristic.
Use
Using the factory calendar, the check can determine which days
are considered working days.
Dependencies
A reference period is calculated on the basis of the number of
days (plus/minus; for date field) in the rules. The number refers
only to working days.
Example
Start date 20.12.2017, Number of days is +10. The 23., 24., 25.,
26., 30. and 31.12.2017 and 01.01.2018 are marked as non-work
days. End date is the 08.01.2018.
Others
Origin class exception Definition
An exception is a particularity or deviation from the standard
rules.
Use
The exception can be used to make customer-specific enhance-
ments or adjustments to the rules for a characteristic. The val-
ues are checked and the conformity check for all characteris-
tics/fields is performed from a LOOP. An exception for a charac-
teristic/field is called from the LOOP at the beginning of the
characteristic/field check. Once the exception has been pro-
cessed, the next characteristic/field in the standard process flow
is processed.
Only the rules for the characteristic/field are transferred, not for
all characteristics/fields
Dependencies
To assign an exception to a characteristic, it must be maintained
in table /SPMEAT/HK_EXC and a function module to be called
must be specified.
Use
This is a master data table. You create the allowed single values for the characteristics (Change ID
field) in the table. You can maintain the values for the characteristic in a universally valid way. In
this case, the single value is allowed for all origin classes. Maintenance can also be carried out specif-
ically for an origin class, a logistical process and, if not inactivated, for a class
When determining the permitted values in a change validation, the system first checks whether the
allowed values are maintained specifically for the origin class, the logistical process and, if necessary,
for the stock type. If so, the determination for the characteristic ends. In this case, the single values
maintained generally are no longer valid.
The check for the specific specification of the permitted single values is carried out for an origin class
with rules for several characteristics per characteristic. This means that in a check for a characteristic
of the origin class, the generally valid single values may apply and for another characteristic only the
values specifically maintained for the origin class and logistical process and, if necessary, the stock
type.
Use
The requirements and the permitted values for the proof of
origin differ for the various stock type. Data and settings for the
origin class and logistical processes are defined accordingly.
Dependencies
When the checks for the proof of origin are carried out, the
check module determines the logistical process based on the
document group of the goods movement and the document type
of the respective object (order). Accordingly, the value must be
transferred from the calling application to the check module
/SPMEAT/CHANGEID_CHECK in the communication structure
I_CIDCOM if the customizing settings require it.
Change ID field See the description on the Field name field further up in table
/SPMEAT/CC_FDEF (Origin Classes: Plausibility Table Field Val-
ues).
Sequence number Definition
The consecutive number defines the sequence.
Use
The characteristics and their rules are checked in ascending or-
der of their numbering.
Dependencies
None
Single value Definition
The following value definitions are available for assigning val-
ues to a characteristic. These are determined by the data type of
the domain:
— For characteristics in character format (CHAR), this field
contains a single character string (characters, numbers,
special characters).
— For characteristics in numeric format (NUM), this field
contains only digits or numbers, with decimal places if
necessary. A unit of measurement can be specified.
Use
Single values determine the characteristics/criteria. A single
value can be
— the value for a specific property, requirement or origin, e.g.
production label BIO" (organic)
— the value for the negation of a specific property or require-
ment e.g. KBIO (not organic)
— the value for a unknown property, requirement or origin,
e.g. K_A (not applicable)
— initial
Dependencies
The single values allowed for a proof of origin must be defined
for a field in table /SPMEAT/HK_VAL. In table
/SPMEAT/HK_VAL, you can also define the allowed values for
a field for the origin class, logistical process and stock type (all
three key values must be specified). Then all other basically al-
lowed single values for the field name no longer apply to this
origin class.
Use
If it is unknown whether a product meets the requirements of
predefined criteria, often no value is given. If a field remains
empty, it is unclear later whether it was forgotten to enter the
value or whether it was really unknown. If the characteristic is
defined as a mandatory field, a value must also be specified,
even if it is unknown whether the goods meet the requirements.
Accordingly, a dummy value no value (K_A) can be defined,
which is marked as no entry. The initial value, i.e. empty, should
also be marked as no value.
Dependencies
All values marked as false or no value are considered as conform-
ing by default when tested for conformity and do not trigger a
change, even if the individual values are different.
Example
A meat program can be a quality label for a product. Quality la-
bels are awarded in many areas for the fulfilment of (quality) re-
quirements which are defined or put out to tender and moni-
tored by an organization. Based on the quality label, potential
beneficiaries should be able to estimate the expected quality of a
service or product. Positive labelling has an important advertis-
ing effect; therefore, a label is often used as a product label on
the packaging or in an excellent place in advertising brochures.
For many quality labels there is therefore an easily recognizable
symbol.
Products that meet the requirements for one or more meat pro-
grams are marked accordingly with the abbreviation or symbol
of the quality label. These values are considered true. If it is not
known whether the goods meet the requirements for the quality
label, often no value is specified. If the field remains empty, it
will later not be clear whether it was forgotten to enter the value
Use
If a product does not meet the requirements of predefined crite-
ria, often, no value is given. If a characteristic is defined as a re-
quired field, a value must be specified, even if the goods do not
meet the requirements of predefined defined criteria. Such a
value could, abbreviated, start with "no Xxxxx". (K_X) and be
marked as false. The rule prevents the combination of goods
that meet and do not meet the criteria.
Dependencies
All values marked as false or No value are considered as con-
forming by default when tested for conformity and do not trig-
ger a change, even if the individual values are different.
Example
A meat program can be a quality label for a product. Quality la-
bels are awarded in many areas for the fulfilment of (quality) re-
quirements which are defined or put out to tender and moni-
tored by an organization. On the basis of the quality label, po-
tential beneficiaries should be able to estimate the expected
quality of a service or product. Positive labelling has an im-
portant advertising effect; therefore, a label is often used as a
product label on the packaging or in an excellent place in adver-
tising brochures. For many quality labels there is therefore an
easily recognizable symbol.
Products that meet the requirements for one or more meat pro-
grams are marked accordingly with the abbreviation or symbol
of the quality label. These values are considered true. If the
characteristic is defined as a mandatory field, a value must also
be entered if the goods do not meet the requirements for a predi-
cate. Such a value could begin and be abbreviated with "no label
Xxxxx". (K_PX) and marked as false. As a rule, the combination
of goods with and without a certain quality label is prevented.
Use
Currently not used.
ALE indicator Definition
All allowed single values that determine a characteristic are
listed in table /SPMEAT/HK_VAL.
Use
Currently not used.
Aggregation value Definition
An aggregation is the grouping of several single values. 1-n indi-
vidual values or further aggregation values are assigned to an
aggregation value (table /SPMEAT/HK_AGGV).
Use
If an aggregation value is entered for a characteristic, all individ-
ual and aggregation values assigned to the aggregation value
are implicitly assigned to the characteristic. This suggests that
all values apply to the products, which is not always the case.
To be able to recognize aggregation values, this indicator is as-
signed to a permitted single value that is in reality an aggrega-
tion.
Dependencies
By default, you cannot assign aggregation values as single val-
ues to a characteristic. The rules can be used to allow the entry
of aggregation values.
Example
The country value EU is a typical aggregation value which is of-
ten used as an individual value too.
Use
This is a master data table. In this table, the allowed aggregations for the characteristics (Change ID
field) must be created. 1 to n individual values can be assigned to an aggregation.
Use
If an aggregation value is assigned to an origin class in table
/SPMEAT/HK_RUL, all individual values of the aggregation are
allowed. You can specify the aggregation value as a single value
when entering an operation if it is defined as a single value in ta-
ble /SPMEAT/HK_VAL.
Dependencies
Even if n single values are allowed by aggregation, this does not
mean that all single values can be combined into one change ID.
Further settings in the rules for the origin class determine
whether the field value for a change ID must remain unique and
whether this triggers a change.
Example
— The countries DE, NL, DK are assigned to aggregation
value L03.
— If the aggregation value is assigned to the field for the
country of birth of an origin class on the basis of the re-
quirements for instruction 1337, the combination of the
three countries in one change ID would be permitted.
— If the aggregation value is assigned to the field for the fat-
tening country of an origin class on the basis of the re-
quirements of instruction 1337, the combination of the
three countries in one change ID would not be allowed.
This can be set via the number of single values (e.g. 1) in
the rules for the origin class.
Single value See the description on the Single value field further up in
/SPMEAT/HK_VAL (Allowed Single Values).
4 Function Modules
In this section, the most important function modules to be implemented in projects are described.
4.1 Package
The function modules that are used in Change ID Control are included in package /SPMEAT/CC
(Softproviding Meat – Change ID Control).
4.2 Modules
Below, the following function modules are described:
Functionality
The function module determines an operative origin class based on all output materials (header ma-
terial, by-products, and co-products) of the production order for which the indicator for the proof of
origin (MARC/SPMEAT/HRKNW) is set. The aim is to carry out the proof of origin for a production
process according to the rules and reference values of only one origin class.
The function module determines the origin classes of all materials from the material master. The high-
est origin class is determined on the basis of the origin class hierarchy and the value of the origin
classes and assigned as the operative origin class in table AUFK. The lowest value origin class is also
determined and assigned in table AUFK.
If function module /SPMEAT/HK_GET_FOR_FAUF could not determine an origin class from the ma-
terial master when creating the production order, but the indicator for the proof of origin (MARC-
/SPMEAT/HRKNW) is set for at least one material (header material, by-product, co-product) of the
production order in the material master, the indicator is also set for the production order (AUFK-
/SPMEAT/HRKNW). If this indicator is set, function module /SPMEAT/CHANGEID_CHECK expects
a change ID for this production order in ASSIGN mode in order to assign a change ID to all materials
requiring proof of origin.
Example
The coding (in Include ZXCO1U06) should look as follows
ls_ra_mat-sign = 'I'.
ls_ra_mat-option = 'EQ'.
LOOP AT lt_afpob INTO ls_afpob.
IF ls_afpob-matnr IS NOT INITIAL.
CLEAR ls_ra_mat-low.
ls_ra_mat-low = ls_afpob-matnr.
APPEND ls_ra_mat TO lt_ra_mat.
ENDIF.
ENDLOOP.
header_exp-/spmeat/hkkla_op = lv_hkkla_op.
header_exp-/spmeat/hkkla_min = lv_hkkla_op.
header_exp-/spmeat/hrknw = lv_hrknw
Call
The function module is started in the background in enhancement PPCO0007, Exit when saving the
production order.
Authorizations
No authorization objects are checked.
Locks
No additional lock objects necessary.
Messages
No messages are issued.
Transfer
The following information is passed on to the method:
Parameter Description
IV_WERKS Current plant
IV_AUFNR Order number
IV_AUART Purchasing document type
IT_RA_MATNR This table contains all material numbers from table AFPO.
IV_HKKLA_CHECK An origin class can be transferred here. The module checks
whether the origin class is allowed for a material. If yes, you can
create a new bill of exchange ID with the origin class.
IV_CHECK_ONLY If this indicator is set, the system only checks whether the trans-
ferred origin class is allowed.
IV_DETER- If this indicator is set, the system determines the operational and
MIN_MIN_OP_ONLY lowest value origin class and transfers it to the calling program.
The assignment to the fields of AUFK must be made in the user
exit.
IT_MATVERID Material and production version
Confirmations
The following information is confirmed to the calling program:
Parameter Description
EV_HKKLA_OP The determined origin class with the highest value = operative
origin class.
EV_HKKLA_MIN The determined origin class with the highest value.
EV_HRKNW Flag indicating that proof of origin must be provided.
EV_CHECK_RESULT If this indicator is set, the origin class (parameter
IV_HKKLA_CHECK) to be checked is allowed.
Further Information
Since the function module is only executed in the background to carry out its tasks, no messages are
displayed.
Parameters
Import
Parameter Short Text Description
IV_AUFNR Order number Order number
Export
Parameter Short Text Description
EV_HKKLA_OP Origin class The determined origin class with the highest
value = operative origin class.
EV_HKKLA_MIN Origin class The determined origin class with the lowest
value.
EV_HRKNW Proof of origin Flag indicating that proof of origin must be pro-
vided.
EV_CHECK_RESULT General flag If this indicator is set, the origin class (parameter
IV_HKKLA_CHECK) to be checked is allowed.
Changing
None.
Tables
None.
Exceptions
Parameter Short Text Description
NO_HRKNW No material subject to No material could be found that is subject to proof
_MATERIAL proof of origin of origin
MATERIAL_ Do not transfer any mate- No materials were transferred in import parame-
TABLE_EMPTY rials ter IT_RA_MATNR.
MASTER_DATA Master data error: Origin This means that no base origin class could be de-
_ERROR_HKK class termined for an origin class, or, that there is an in-
consistency.
Function Group
/SPMEAT/HK_CHANGEID
Functionality
This function module compares the reference values with the input values based on rules. For it to
work properly, it needs
— the logistical process, the communication point and its relevant object values
— the reference values
— the input values
— the origin class with rules
Example
None.
Call-Up
The function module is called in the background by a program or application. As a rule, they are shop-
floor applications.
Authorizations
No authorization objects are checked.
Locks
Lock Object Description
/SPMEAT/E_CCBATC Key of the object in change ID Control. The lock object is set when
table /SPMEAT/CC_BATCH is updated. The lock is not set for the
user but for the object key (field OBJKEY).
/SPMEAT/E_CIDFL Change ID Control; ChangeID Flow. The lock object is set as soon
as it becomes clear that the current check will lead to a change. In
this case, no further call that would update the characteristic val-
ues or also trigger a change may intervene.
Note
For the standard blocks for the material batch, see OSS Note 1985306.
For the standard blocks for the material batch, see OSS Note 1985306. This guide provides an insight
into how the business lock works using the late exclusive lock (late lock) for goods movements and
shows ways to optimize performance, especially for goods issues. The background to this are the error
messages that occur especially with parallel goods movements:
— M3 024: Valuation data for material & are locked by user &
— M3 023: Plant data are locked by user &.
Messages
Messages of message class /SPMEAT/CC are issued.
Transfer
See the description in the appendix of this document.
Confirmations
See the description in the appendix of this document.
Further Information
See the description in the appendix of this document.
Parameters
See the description in the appendix of this document.
Functionality
This function module checks whether a proof of origin needs to be carried out. Usually, a material is
flagged as subject to proof of origin if its specification is subject to an instruction. Depending on the
use of the material, the obligation to provide proof of origin may be waived. In this case, the No proof
of origin indicator is set for the vendor or plant. The same applies if the material is delivered to a target
market in which the instruction does not apply. In this case, the No proof of origin indicator is set for
the customer
Example
None.
Call
The function module is started in the background.
Authorizations
No authorization objects are checked.
Locks
No additional lock objects necessary.
Messages
No messages are issued.
Transfer
The following information is passed on to the method:
Parameter Description
I_MATNR Material number
I_WERKS Plant
I_KUNNR Customer number
I_LIFNR Vendor
I_AUFNR Production order
Confirmations
The following information is confirmed to the calling program:
— E_CC_NOTREL: Change ID Control not relevant if the material is not subject to proof of origin
or if the No proof of origin indicator is set for another object.
Further Information
None.
Parameters
Import
Parameter Short Text Description
I_MATNR Material number Material number for which the Proof of origin indi-
cator is checked. If the indicator is set, proof of
origin must be provided. If the indicator is not set,
proof of origin need not be provided. The check
ends here.
I_WERKS Plant The obligation to provide proof of origin may be
deactivated again with the No proof of origin indi-
cator for the transferred plant. The deactivation
functionality for the proof of origin requirement
can be controlled separately for disassembly or-
ders and production orders. If the indicator is set,
no proof of origin must be provided for the trans-
ferred material.
I_KUNNR Customer number An obligation to provide proof of origin for the
transferred material may be deactivated again
with the indicator No proof of origin for the trans-
ferred customer number. If the indicator is set,
there is no obligation to provide proof of origin for
the transferred material.
I_LIFNR Vendor or customer ac- An obligation to provide proof of origin for the
count number transferred material may be deactivated again
with the indicator No proof of origin for the trans-
ferred vendor. If the indicator is set, there is no
Export
Parameter Short Text Description
IE_CC_NOTREL Change ID Control not If the result of the check says "No proof of origin",
relevant this indicator is set.
Changing
None.
Tables
None.
Exceptions
None.
Function Group
/SPMEAT/HK_CHANGEID
Functionality
This function module is a template. It serves as a copy model for creating a project-specific function
module. It is important that the project-specific function module always have the same signature as
the template.
The project-specific function module is used to extend or adjust the rules for a field characteristic of
an origin class.
Example
None.
Call
The function module is started based on the customizing settings for Change ID Control. In Custom-
izing for table: /SPMEAT/HK_RUL, an exception can be assigned to an origin class for each charac-
teristic/field (field /SPMEAT/HK_RUL-CHEXCEPT). The exception and the function module to be
called are customized in table /SPMEAT/HK_EXC. The function module to be called is maintained in
field /SPMEAT/HK_EXC-CHEXCEPT_FUNC.
Authorizations
No authorization objects are checked. This has to be decided by project.
Locks
No additional lock objects necessary. This has to be decided on the project.
Messages
No messages are issued. This has to be decided on the project.
Transfer
The following information is passed on to the method:
Parameter Description
I_CHID_ONLY_CHECK Value from function module /SPMEAT/CHANGEID_CHECK is
transferred.
I_CHID_UPD_FORCED Value from function module /SPMEAT/CHANGEID_CHECK is
transferred.
I_CHGID Corresponds to the determined reference change ID.
C_HKKLA_RUL Contains the rules for the characteristic/field, that can be over-
ruled with own logic (For example CONFRMT_CHECK, NEWCH-
GID_ALLOWD, NEWCHGID_REQUEST, VALUE2DOCU,
VALUE2CHECK, MUST_FIELD, etc.).
T_CID_LOG Allows you to make your own messages (error, warning, etc.).
Parameter Description
T_CID_INPUT_VALUE Contains input values for the characteristic/field, that can be
overruled with own logic (insert, update, delete of values). If val-
ues are changed in table T_CID_INPUT_VALUE, the values in ta-
ble T_CID_INPUT_ALLVALUE must be changed too, otherwise
inconsistencies may occur.
T_CID_REF_VALUE Contains reference values for the characteristic/field, that can be
overruled with own logic (insert, update, delete of values). Over-
ruling the values that have already been checked (consider the se-
quence) does not make sense.
T_CID_INPUT_ALLVALUE Contains input values for the characteristic/field, that can be
overruled with own logic (insert, update, delete of values). Over-
ruling the values that have already been checked (consider the se-
quence) does not make sense.
T_CID_REF_ALLVALUE Contains reference values for the characteristic/field, that can be
overruled with own logic (insert, update, delete of values). Over-
ruling the values that have already been checked (consider the se-
quence) does not make sense.
T_CID_RESULT Contains the check result of all characteristics/fields that have
been checked so far. If the check via the exception for the current
characteristic/field leads to an error, the result for the characteris-
tic/field can already be entered here. If the conformity check was
also performed using the exception, the result must be entered in
this table (for example VALUE_INP_ISOK, CONFRMTY_ISOK)
and parameter E_CONT_W_STD is no longer set. You also have
the option of overriding the results of the characteristics/fields
that have already been checked with your own logic.
Confirmations
The following information is confirmed to the calling program:
Export Parameters
Parameter Description
E_INPUT_NOTOK Means that the plausibility check of the input values led to an er-
ror. In this case, you must also set the parameter E_ERROR so that
the standard process does not continue.
E_ERROR: Values is passed on to function module
/SPMEAT/CHANGEID_CHECK. This terminates the follow-on
logic of function module /SPMEAT/CHANGEID_CHECK (the con-
formity check). If parameter E_ERROR is set, it no longer makes
sense to set parameter E_CONT_W_STD.
E_CONT_W_STD Means, no error the conformity check via standard procedure may
be continued. If the conformity check has already been carried out
via the exception (and filled table T_CID_RESULT), it no longer
makes sense to set parameter E_CONT_W_STD. In this case, the
Parameter Description
standard procedure is continued with the next characteris-
tic/field.
C_HKKLA_RUL Contains the rules for the characteristic/field, that can be over-
ruled with own logic. (For example CONFRMT_CHECK, NEWCH-
GID_ALLOWD, NEWCHGID_REQUEST, VALUE2DOCU,
VALUE2CHECK, MUST_FIELD, etc.).
In addition, all table parameters can be returned, possibly after having been changed, to the calling
program.
Further Information
Notes on the use of the exception
The values are checked and the conformity check for all characteristics/fields is performed from a
LOOP. An exception for a characteristic/field is called from the LOOP at the beginning of the charac-
teristic/field check. Once the exception has been processed, the next characteristic/field in the stand-
ard process flow continues.
Only the rules for the characteristic/field are transferred, not for all characteristics/fields.
If table T_CID_RESULT is added to the characteristic/field for an error, the standard process can cre-
ate the LOG for it.
The conformity check is implemented but commented out in the template function module. Perform-
ing the conformity check via an exception if the logic of the standard rules is not sufficient. To adapt
or extend the conformity check logic, the source code must be modified.
Parameters
Import
Parameter Short Text Description
I_CHID_ONLY_CHEC Only test change ID Value from function module
K /SPMEAT/CHANGEID_CHECK is transferred.
I_CHID_UPD_FORCE Force change ID update Value from function module
D /SPMEAT/CHANGEID_CHECK is transferred.
I_CHGID Change ID Value corresponds to the determined reference
change ID.
Export
Parameter Short Text Description
E_INPUT_NOTOK Input not OK Means that the plausibility check of the input val-
ues led to an error. In this case, you must also set
parameter E_ERROR so that the standard process
does not continue.
E_ERROR Change ID Control error Value is passed on to function module
/SPMEAT/CHANGEID_CHECK. The subsequent
logic of function module
/SPMEAT/CHANGEID_CHECK (the conformity
check) is terminated. If the parameter E_ERROR
is set, it makes no sense to set the parameter
E_CONT_W_STD.
E_CONT_W_STD General flag Means no error, the conformity check via the
standard procedure can be continued. If the con-
formity check has already been performed using
the exception (and table T_CID_RESULT is filled),
it makes no sense to set parameter
E_CONT_W_STD. In this case, the standard pro-
cess continues with the next characteristic/field.
Changing
Parameter Short Text Description
C_HKKLA_RUL Origin class: Rules per Includes the rules for the characteristic/field
field which can be overruled with own logic (for exam-
ple: CONFRMT_CHECK, NEWCHGID_ALLOWD,
NEWCHGID_REQUEST, VALUE2DOCU,
VALUE2CHECK, MUST_FIELD, etc.).
Tables
Parameter Short Text Description
T_CID_LOG Log for change ID control Allows you to make your own messages ((error,
warning, etc.).
T_CID_INPUT Values of the change ID Contains the input values of the characteris-
_VALUE control fields tic/field that can be overridden with own logic
(insert, update, delete values). If values in table
T_CID_INPUT_VALUE are changed, values in ta-
ble T_CID_INPUT_ALLVALUE must be changed
too, otherwise inconsistencies can occur.
T_CID_REF_VALUE Values of the change ID Contains the reference values for the characteris-
control fields tic/field that can be overridden with own logic
(insert, update, delete values). If values in table
Exceptions
None.
Function Group
/SPMEAT/HK_CHANGEID_EXCEPT
Functionality
The (new) Change ID Control functionality replaces an older functionality. Table
/SPDGS/CHANGEID contained a change ID and its values for the individual field characteristics in
the old function. The (new) Change ID Control provides a functionality to update this table based on
the new tables. The BAdI offers two methods for this.
Method Description
SAVE_CHANGEID This method updates table /SPDGS/CHANGEID. This can mean
that a new change ID is created or only an update takes place be-
cause values are added.
DEACTIVATE_CHANGEID Whenever a new change ID is created, it is the (new) active
change ID and the previous "active" change ID must be deac-
tivated. The /SPDGS/CHANGEID-KZABG indicator is set in table
/SPDGS/CHANGEID.
GET_FIELDVA- Field values determination
LUE_FROM_OLD
Example
None
Call
The BAdI is called automatically in the background if the indicator for updating the „old" change ID
table is set in Customizing for Change ID Control (field: /SPMEAT/TCID_C-CHID_TAB_UPD_ACTIV,
or, Upd CID tbl. active)).
Authorizations
No authorization objects are checked.
Locks
No additional lock objects necessary.
Messages
Messages are issued via the LOG.
Transfer
The following information is passed to the SAVE_CHANGEID method:
Parameter Description
IS_TCID_C The customizing settings from table /SPMEAT/TCID_C with the
indicator whether the "old" change ID table should be updated.
Parameter Description
IS_CIDCOM The values of the communication structure
/SPMEAT/CC_CHECK_COM that have been transferred to func-
tion module /SPMEAT/CHANGEID_CHECK.
IV_CHGID The change ID to be created or updated.
IT_CID_RESULT An internal table with the results of the check for each field char-
acteristic.
IV_CHGCO The logistical order from table /SPMEAT/CC_CIDFL for field
/SPDGS/CHANGEID-CHGCO, container for change validation.
IS_CC_CIDFL The data record for the current change ID from table
/SPMEAT/CC_CIDFL, Change ID Control: ChangeID Flow. If the
ARBPL work center field is filled, the value is transferred to the
TERMI field in table /SPDGS/CHANGEID and, if necessary, over-
rides a value for TERMI from table /SPMEAT/CC_CIDFL. If the
ARBPL field is not filled, the value TERMI is transferred if it is
filled in table /SPMEAT/CC_CIDFL.
IV_CHARG The batch number for the change ID from table
/SPMEAT/CC_BATCH.
CS_REF_CHANGEID The data record for the current change ID from table
/SPDGS/CHANGEID, if it already exists.
CV_ERROR Empty at the time of import. If an error occurs in the current
method, the indicator is set.
CT_CID_LOG The log from the change control. If an error occurs in the current
method, the respective message is sent here.
Parameter Description
IV_CHGID The change ID to be created or updated.
IS_CIDCOM The values of communication structure
/SPMEAT/CC_CHECK_COM that were passed on to function
module /SPMEAT/CHANGEID_CHECK.
IV_CHGCO The logistical order from table /SPMEAT/CC_CIDFL for field
/SPDGS/CHANGEID-CHGCO, container for change validation.
IS_CC_CIDFL The data record for the current change ID from table
/SPMEAT/CC_CIDFL, Change ID Control: ChangeID Flow. If the
ARBPL work center field is filled, the value is transferred to the
TERMI field in table /SPDGS/CHANGEID and, if necessary, over-
rides a value for TERMI from table /SPMEAT/CC_CIDFL. If the
ARBPL field is not filled, the value TERMI is transferred if it is
filled in table /SPMEAT/CC_CIDFL.
CV_ERROR Empty at the time of import. If an error occurs in the current
method, the indicator is set.
CT_CID_LOG The log from Change ID Control. If an error occurs in the current
method, the corresponding message is sent here.
Confirmations
The SAVE_CHANGEID method reports the following information to the calling program:
Parameter Description
CS_REF_CHANGEID The changed data record from table /SPDGS/CHANGEID.
CV_ERROR Empty at the time of import. If an error occurs in the current
method, the indicator is set.
CT_CID_LOG The log from Change ID Control. If an error occurs in the current
method, the corresponding message is sent here.
The method DEACTIVATE_CHANGEID reports the following information to the calling program:
Parameter Description
CV_ERROR Empty at the time of import. If an error occurs in the current
method, the indicator is set.
CT_CID_LOG The log from Change ID Control. If an error occurs in the current
method, the corresponding message is sent here.
Further Information
None.
Parameters
Import Method SAVE_CHANGEID
Parameter Short Text Description
IS_TCID_C Change ID Control: Plant- The customizing settings from table
dependent /SPMEAT/TCID_C with the indicator whether
the "old" change ID table should be updated.
IS_CIDCOM Communication structure The values of the communication structure
Check change ID /SPMEAT/CC_CHECK_COM that have been
transferred to function module
/SPMEAT/CHANGEID_CHECK.
IV_CHGID Change ID The change ID to be created or updated.
IT_CID_RESULT Result for change ID con- An internal table with the results of the check for
trol check each field characteristic.
IV_CHGCO Container for change ID The logistical order from table
validation /SPMEAT/CC_CIDFL for field
/SPDGS/CHANGEID-CHGCO, container for
change validation.
IS_CC_CIDFL Change ID Control: The data record for the current change ID from ta-
Change ID flow ble /SPMEAT/CC_CIDFL, Change ID Control:
Export
None.
Exceptions
None.
BAdI-Definition
/SPMEAT/BADI_CHANGEID_CHECK
Functionality
The function module determines the origin data from table /SPMEAT/CC_VALD and classifies the
batch class of the batch specified in field /SPDGS/PDAO-CHARG in the PDA transaction. To do this,
the change ID must be assigned in field /SPDGS/PDAO-CHGID in the PDA transaction.
In addition, a batch class must be assigned to the corresponding batch class type (usually 022 or 023)
in the material master. If no batch class can be determined, the batch is not classified. No message is
displayed.
If the batch for the material and storage location does not yet exist, the batch is created. The batch
characteristics are then valuated.
If the batch already exists, the characteristics are updated if the change ID contains additional values.
The check takes place with every PDA process.
Take note of the standard blocks for the plant, material and batch that are set when the material mas-
ter or a batch for a material is called up in Change mode. As a rule, the locks that are released do not
allow you to create a new batch for the material. In addition, no classification can usually be made.
This also applies to existing batches.
To prevent the material document from being entered for one or more PDA transactions, the function
module must be called as described below for call variant 2.
Example
The function module is to be called as follows:
Call-Up
Variant 1 (up to version 5.40 SP7 only this variant is possible)
The function module is called in the background. This is implemented using BADI interface
/SPDGS/IF_EX_BADI_GMOV in method CREATE_BEFORE3. The BADI is called before the material
document is entered based on the PDA transactions.
In this version, only the PDA transactions are transferred as input parameters and an attempt is made
to classify them. There is no confirmation to set the PDA operation to the status Incorrect and to skip
the entry of the material document. This means that the material document is entered despite a failed
classification. To prevent this, the call must be made as described in call variant 2.
In this version, additional input and change parameters are passed on. If there is a problem with clas-
sification, the PDA operation can be set to incorrect when it is reported to the calling function module.
This prevents the material document from being entered. The PDA process is assigned the status D
for incorrect. In addition, the PDA transaction is deleted from the internal, already formatted, table
based on structure /SPDGS/SGMIT. This structure is prepared with data in table /SPDGS/PDAO so
that the standard BAPI can make the entry.
Authorizations
No authorization objects are checked.
Locks
No additional lock objects are required. For the standard locks for the material batch, see OSS Note
1985306.
This guide provides an insight into how lock that are necessary from a business point of view works
using the late exclusive lock (late lock) for goods movements and shows ways to optimize perfor-
mance, especially for goods issues. The reason for this are error messages occurring frequently with
parallel goods movements
M3 024: Valuation data for material & are locked by user &, or
M3 023: Plant data are locked by user &.
Messages
Number Message Text
001 PDAO &1: Error during BAPI_BATCH_CHANGE call.
002 PDAO &1: Error during CACL_OBJECT_VALIDATION_MAINT
call.
003 PDAO &1: Error during CACL_CLASSIFICATION_SAVE call.
004 PDAO &1: Error during BAPI_BATCH_CREATE call.
005 PDAO &1: Error during VB_BATCH_GET_DETAIL call.
006 PDAO &1: Error during BAPI_OBJCL_CHANGE call.
007 PDAO &1, Mat. &2 is subject to proof of origin! Please assign
change ID.
Transfer
The following information is passed on to the method:
Parameter Description
IT_PDAO Table with the PDAO data records to be posted based on table
structure /SPDGS/TPDAO.
IS_TGMC Table with the PDA control data of the SAP goods movement
/SPDGS/TGMC.
CT_PDAO Changing table with the PDAO data records to be posted.
CT_GMIT Changing table with the material document items to be entered.
IT_LINK Table items.
Confirmations
The following information on the entry of the material documents is confirmed back to the calling
program:
Parameter Description
CT_PDAO Changing table with changes PDAO data records.
CT_GMIT Changing table without the deleted material document items.
CT_RET2 Table with BAPI return information
Further Information
If the classification of the batch class cannot be carried out, the PDA operation is not entered in the
material document and is set to status D, with errors. The error must first be resolved with the PDA
maintenance transactions /SPDGS/PDAO or /SPDGS/PDAON.
Parameters
Import
Parameter Short Text Description
IT_PDAO PDAO data records Table with the PDAO data records to be posted.
IS_TGMC Goods movement control Table with the PDA control data of the SAP goods
movement.
IT_LINK Links Table items.
Export
None.
Changing
Parameter Short Text Description
CT_PDAO PDAO data records Table with material document items to be en-
tered. In case of an error during classification, the
status of the respective PDA operation is set to D,
with errors.
CT_GMIT Goods movement items Table with material document items to be en-
tered. In case of an error during classification, the
item of the respective PDA operation is deleted
from the table.
CT_RET2 Table with BAPI return Table with messages
information
Tables
None.
Exceptions
None.
Function Group
/SPMEAT/CC_BATCH_VALUATION
Functionality
The function module filters the batch where-used list based on the change ID.
Top-down
The respective change ID for all selected output batches is determined using table
/SPMEAT/CC_BATCH. In table /SPMEAT/CC_VALD, all respective input change IDs (field charac-
teristic CHGID_IP) are determined. All input batches that are not linked to one of the determined input
change IDs in table /SPMEAT/CC_BATCH are removed from the batch where-used list display.
Bottom-up
The respective change ID for all selected input batches is determined using table
/SPMEAT/CC_BATCH. In table /SPMEAT/CC_VALD, all (output) change IDs are determined for
which the change ID of the input batches occurs as a value in field characteristic CHGID_IP. All output
batches that are not linked to one of the determined (output) change IDs in table
/SPMEAT/CC_BATCH are removed from the batch where-used list display.
Example
None.
Call
The function module is started in the background via the user exit EXIT_SAPLCHVW_001.
Authorizations
No authorization objects are checked.
Locks
No additional lock objects necessary.
Messages
No messages are issued.
Transfer
The following information is passed on to the method:
Parameter Description
I_EXPTP Explosion type (T for top-down, B for bottom-up) of the batch
where-used list display.
XT_SHADOW Internal table of the transfer structure for the batch where-used
list display.
Confirmations
The following information is confirmed to the calling program:
Parameter Description
XT_SHADOW Filtered internal table of the transfer structure for displaying the
batch where-used list. All items that could not be assigned to a de-
termined change ID were deleted from the internal table.
Further Information
None.
Parameters
Import
Parameter Short Text Description
I_EXPTP Explosion type for where- The batch where-used list can be displayed top-
used list for batches dis- down or bottom-up. The corresponding explosion
play direction (T for top-down, B for bottom-up) is
transferred via the parameter.
Export
None.
Changing
None.
Tables
Parameter Short Text Description
XT_SHADOW Tab transfer structure for This is the internal table with the items of the
batch where-used list dis- batch where-used list to be displayed. All items
play that could not be assigned a determined change
ID are deleted from the internal table and are
therefore no longer displayed in the batch where-
used list.
Exceptions
None.
Function Group
/SPMEAT/HK_CHANGEID
5 Enhancements
The enhancements are listed in this chapter with their class and method.
The enhancements are listed in this chapter with their class and method.
User exits can be used effectively in various Softproviding Core and Softproviding Meat processes.
For this reason, we recommend that you use the user exits listed in this document if an implementa-
tion in your company makes sense from a process point of view.
Transactions
Transaction SMOD can be used to search for existing user exits. The enhancements (objects) are also
documented there in detail.
Transaction CMOD is used to create, activate or deactivate projects and to display existing projects
with the enhancements.
If you want to implement modifications in another way (for example, SAP standard programs that
can be modified explicitly), this option is described accordingly.
Procedure
1. Start the Project Management functionality of the SAP enhancements with transaction CMOD.
Enter a name in the Project field (e.g. ZMEAT or ZCORE).
2. Then select the Create button and enter a short description of the project.
3. Save the project. Use the desired package for this (e.g. $TMP (temporary objects, are never
transported)). It is recommended to use the package $TMP.
5. Selecting the Component button displays the assigned function exits. These can be extended
with the coding described below (see the section "Enhancements").
6. These user exits are activated with the Activate button. The user exits are only effective once
the components and the project have been activated.
Note
The SAP enhancements are grouped together under a project name to form enhancement projects. An en-
hancement project consists of at least one SAP enhancement. SAP enhancements in the same enhancement
project are always activated and deactivated together.
SAP enhancements are created by SAP and generally consist of several components. From these SAP en-
hancements, the customer selects those that they want to edit, assembles them into enhancement projects,
edits the components, and activates the projects.
If the enhancement is already assigned to another project, an error message is displayed. In this case, you
must coordinate the further procedure so that both user exits continue to function.
Call
The function module is called in the background in enhancement PPCO0007.
Function
The function module determines an operative origin class based on all output materials of the produc-
tion order for which the indicator for the proof of origin (material master) is set.
Note
For further details, see the description on function module /SPMEAT/HK_GET_FOR_FAUF further up in
this document.
Procedure
1. Double-click on component EXIT_SAPLCOZV_001.
2. Create include ZXCO1U06 (in the function module by double-clicking on the include name).
3. The following code can be copied and pasted: See the code further up in this document for func-
tion module /SPMEAT/HK_GET_FOR_FAUF (Determine Origin Class for Production Order).
Documentation
Module /SPMEAT/HK_GET_FOR_FAUF is described in detail in the SAP documentation for the func-
tion module.
Call
The function module is called in the background in enhancement SAPLCHVW.
Function
The function module filters the batch where-used list based on the change ID.
Note
For further details, see the description on function module //SPMEAT/EXIT_CHVW_HKW further up in
this document.
Procedure
1. Double-click on component EXIT_SAPLCOZV_001.
2. Create include ZXBWLU01 (in the function module by double-clicking on the include name).
Documentation
Module /SPMEAT/EXIT_CHVW_HKW is described in detail in the SAP documentation for the func-
tion module.
6 Glossary
This glossary is provided for better readability and better understanding of the field descriptions and
the terms used. The most important terms for change control are explained here.
Term Definition
Aggregation value An aggregation is the grouping of several single values. 1-n sin-
gle values or other aggregation values are assigned to an aggre-
gation value.
Assign communication point An assign communication point is a precisely specified location
in a plant where data must be assigned to the products for char-
acteristic valuation. A change ID that was previously created at
a check communication point is assigned.
Change A change is a process in which an alteration is made based on
rules, that is, a new change ID is created for a good or a group of
goods, and a change therefore takes place.
Change ID The term change ID is a synonym for the term reference batch. A
change ID is characterized by a number X of usually different
characteristics that characterize a good or a group of goods.
Change ID control Change ID control is an examination of origin and traceability
characteristics on the basis of an instruction. Change ID control
is based on rules.
Change reason By assigning change reasons (or change characteristics), you
can control individually whether and when value changes in the
assigned characteristics of the various goods lead to a change.
Change validation Change validation means the assignment of characteristics and
origin to goods. This usually takes place at goods receipt into the
plant or at production inbound (goods issue for production or-
der). Communication points must be defined accordingly.
Check communication point An check communication point is a precisely specified location
in a plant where data for characteristic valuation are created
and/or need to be documented
Term Definition
A change ID previously created at a check communication
point is assigned.
Conformity check Conformity is the compliance with defined criteria. A conform-
ity check is the check for the fulfilment of a set of specific crite-
ria. In a conformity test, values (e.g. input values) are compared
with reference values. This can lead to new decisions (e.g. as-
signment of a new change ID).
Exception An exception is a particular feature or a deviation from the
standard rules. You can use the exception to make customer-
specific enhancements or adjustments to the rules for a charac-
teristic.
Instruction An instruction defines the general requirements and regulations
for providing proof of origin, e.g. for a group of products. These
can be, for example, legal stipulations or customer requirements.
Logistical characteristic Rules that trigger a change (for example, a new production order
was created).
Logistical order The logistical order must be defined for each logistical process
and reporting point. The logistical order is a key that is formed
from different objects.
Logistical process Logistics ensures the availability of the right goods, in the right
quantity, in the right condition, at the right place, at the right
time, for the right customer, at the right costs. Relevant logisti-
cal processes for which proof of origin must be provided are, for
example conformity check, production or customer return.
Material, subject to proof of With the information in the material master for the origin class
origin and proof of origin, a material becomes subject to proof of origin.
Origin class The origin class is the central master data object for Change ID
Control. The origin class contains the rules and allowed values
according to which a reference batch (i.e. change ID) is formed.
Normally, all reference values that are allowed for a reference
batch are also predefined for the origin class. Alternatively, the
function module can determine the allowed reference values us-
ing classification. The origin class is assigned to a material in
the material master.
Proof of origin The Proof of Origin indicator is set in the material master (Origin
tab). Whether a change validation must be carried out and a ref-
erence batch (that is, change ID) formed is determined on the
basis of the Proof of Origin indicator (for a material or for a pro-
duction order).
Reference batch See the description for the Change ID field.
Reference values Reference values are to be seen in connection with the conform-
ity check. A conformity check is the check for the fulfilment of
specified defined criteria. If a conformity check is carried out ac-
cording to the settings, the input values are compared with the
reference values. As a result, the two value columns are either
Term Definition
conformal or non-conformal. A reference value can, for instance,
be the country of birth (e.g. DE).
Source communication points Check communication points are the source communication
points of the assign communication points, since at least one
communication point must be assigned to an assign communi-
cation point. See also the description above for the Check com-
munication points field.
Stock type In the meat-processing industry, the stock type is used to differ-
entiate between different animal species (animal types).
Example
Cattle, pig, sheep, goat