Example: Derivation Strategy for USA Public Administrations 
This derivation strategy maps account assignment determination in Funds Management, taking into account USA-specific public administration requirements.
If you use Funds Management integrated with other components, the main question regardingaccount assignment determination in Funds Management is: How can you derive FM account assignment elements from CO account assignments?
This question is therefore relevant because the funds center and commitment item, as well as the default values for fund and functional area are derived from the CO account assignments.
Commitment item and funds center
You must be able to derive funds center and commitment item from a CO object and the G/L account or from the cost element. Accordingly, the CO objects cannot be defined separately from Funds Management.
In our example, the commitment item corresponds to the G/L account and the cost element. The commitment item can be derived from the G/L account or the cost element using the derivation type “Move”.
If the names are different, you can derive the commitment item in one of two ways:
By defining the commitment item in a customer’s own field as attribute in the cost element.
By defining the commitment items for primary costs in the G/L accounts and defining a derivation step for secondary costs with derivation type Derivation rule .
In our example, we assume that the cost centers are more detailed than those required for Funds Management. Therefore, the funds centers represent a summation level across the cost centers; the names are the same in one partial string (5-8) of the cost center. The funds center can be derived from the cost center using the derivation type Move which takes this partial string into account.
If the names of the cost centers and fund centers are different, the funds center must be defined in a customer field as attribute in the cost center. Alternatively, the funds center can be derived from the cost center using the derivation type Derivation rule .
Orders and projects do not always have the same name, the funds center must therefore be defined in a customer field as attribute in the order and project. Alternatively, the funds center can be derived from the order and project here by using the derivation type Derivation rule .
Recommendation
We recommend using user-defined fields in the CO master data rather than assignment in a derivation rule for the following reasons:
Changes to the master data are logged in the change history
You can maintain the master data time-dependently
You can enter master data at the same time as entering the functional area
You can select according to customer’s own fields
You use enhancement SAPLFMDT which is provided by SAP for derivation. For more information on this enhancement, see Derivation Step Types .
Note
You can create customer fields for CO objects and cost element by using enhancement COOMKA01. For more information, see the IMG for Controlling under
Funds and Functional Areas
In our example, it is assumed that fund and functional area are not derived, but are always entered manually by the user. Alternatively, you can define fund and functional area – analog to the funds center – in a customer-specific field as attribute for the cost center or in the order and project, and derive accordingly (see step 6 ).
Clearings in Controlling
In our example, it is assumed in accordance with GASB 34/35,that clearings in Controlling credits are updated as revenues in Funds Management if the sender fund is an own funds fund and the receiver fund is a fund from secondary sources.
In order to map this business transaction, the following definitions apply in our example:
Governmental funds (funds from secondary sources) have fund type G1 through to G4
Enterprise funds (own funds) have fund type G5 through to G8
With a corresponding derivation step, you can evaluate the information via the sender and receiver fund and the type of posting (debit or credit). As an interim step for the actual determination of revenue account assignments the information can first be set in a customer’s own auxiliary field (ZZCREDIT_AS_REVENUE) (see step 5.1 and 5.2 ). Alternatively, you can use the auxiliary fieldUSERTEMP1 which is delivered by SAP. However, it is advisable to create a user-defined field for this purpose so that you can create the field with a descriptive name.
Note
You create the user-defined auxiliary field ZZCREDIT_AS_REVENUE,by enhancing the FMDERIVE database structure. You do this by adding this field to the CI_FMDERIVE include .
Derivation Step Type Function Module
Derivation steps with derivation type function module are included in the standard system. You can copy these steps into your derivation strategy.To do this, in Customizing of Funds Management Government choose .
Alternatively, you can also use the step type function module when processing the derivation steps.
The derivation strategy depicted here is divided into the following subareas, that may consist of several different derivation steps:
Account assignment transfer from referenced documents and therefore bypassing further derivation steps with the reversal
Step 1.1 No renewed derivation with reversal documents
Derivation of cost center information from the asset
Step 2.1 Cost center from asset master data record
Step 2.2 Responsible c ost center from asset master data record
Derivation of funds center and commitment item when names are the same
Step 3.1 Commitment item when names are same with cost element
Step 3.2 Commitment item when names are same with G/L account
Step 3.3 Funds center when names are same with cost center
Derivation of commitment item when names are not the same
Step 4.1 Commitment item when names are not the same with the G/L account
Special cases commitment item
Step 5.1 Commitment item in special case credit as revenue/condition
Step 5.2 Commitment item in special case credit as revenue/derivation
Evaluation of the FM account assignments defined in the CO master data
Step 6.1 Read cost center master data
Step 6.2 Read order
Step 6.3 Read project
Account assignment transfer from different referenced documents
Step 7.1 Sales order
Step 7.2 Maintenance order
Step 7.3 Network header
Step 7.4 Network activity
Step 1.1 No renewed derivation with reversal postings
Step type derivation rule
An actual derivation does not take place in this rule. This step checks the Reversal document indicator . The derivation rule is only executed when the indicator is set. In this case the system terminates further processing of the derivation. The resulting field value in the target field is not significant.
Origin |
Field Name |
Description |
Attributes |
|---|---|---|---|
FMDERIVE |
REVERSDOC |
Indicator ‘Document is reversal document’ |
Origin |
Field Name |
Description |
Attributes |
|---|---|---|---|
FMDERIVE |
USERTEMP1 |
Auxiliary field 1 (user-defined) |
Copy new value if new value is initial |
Condition
Origin |
Operator |
Value |
Attributes |
|---|---|---|---|
REVERSEDOC |
= |
X |
Copy new value if new value is initial |
Characteristics
End processing of strategy if value was found.
Step 2.1 Cost center from asset master data
Step type Function Module
Name of function module: FMDT_READ_MD_ASSET
This step derives the cost center that was defined in the master asset. This information is used in step 3.3 or 6.1 to derive the funds center from the cost center defined in the master asset.
The system issues an error message when no values are found
Origin |
Field Name |
Description |
Field |
Attributes |
|---|---|---|---|---|
FMDERIVE |
PSTNG_DATE |
Company Code |
COMPANY_CODE |
|
FMDERIVE |
COMP_CODE |
Asset main number |
ASSET |
|
FMDERIVE |
ASSET_NO |
Asset sub-number |
SUB_ASSET |
|
FMDERIVE |
SUB_NUMBER |
Valid from date |
POSTING_DATE |
Origin |
Field Name |
Description |
Field |
Attributes |
FMDERIVE |
KOSTL |
Cost center |
COST_CENTER |
Do not overwrite if entry made |
Step 2.2 Responsiblecost center from asset master data
Step type Function Module
Name of function module: FMDT_READ_MD_ASSET
This step derives the responsible cost center that was defined in the master asset. This information is used in step 3.3 or 6.1 to derive the funds center from the responsible cost center defined in the master asset.
The system issues an error message when no values are found
Origin |
Field Name |
Description |
Field |
Attributes |
|---|---|---|---|---|
FMDERIVE |
COMPANY_CODE |
Company Code |
COMPANY_CODE |
|
FMDERIVE |
ASSET |
Asset main number |
ASSET |
|
FMDERIVE |
SUB_ASSET |
Asset sub-number |
SUB_ASSET |
|
FMDERIVE |
POSTING_DATE |
Valid from date |
POSTING_DATE |
Origin |
Field Name |
Description |
Field |
Attributes |
FMDERIVE |
KOSTLV |
Cost center |
COST_CENTER |
Do not overwrite if entry made |
Note
Steps 2.1 and 2.2 fill the same field. You therefore get the cost center from the asset as a result, and if this was not filled, the responsible cost center. The funds center is derived in step 6.1 from these.
Note that the cost center is not copied when a cost center is contained in the document itself. As a result, different cost centers may occur for each posting which may result in different funds centers being derived by later rules. If no asset is contained in the posting, the function module is not executed.
Step 3.1 Commitment Item from Cost Element (for names that are the same)
Derivation Type Move
This derivation derives the commitment item from cost elements when the names are the same.
Note
If the names are different, you must map this derivation with step 4.1 .
Origin |
Field Name |
Description |
Attributes |
|---|---|---|---|
FMDERIVE |
COMPANY_CODE |
Company Code |
|
FMDERIVE |
COST_ELEMENT |
Cost element |
Origin |
Field Name |
Description |
Attributes |
|---|---|---|---|
FMDERIVE |
COMMIT_ITEM |
Commitment item |
Use new value if new value exists |
Derivation Step 3.2 Commitment Item from G/L Account (for names that are the same)
Derivation Type Move
This derivation derives the commitment item from the G/L account when the names are the same. As such, this step also applies to all technical commitment items.
Note
If the names are different, you must map this derivation with step 4.1 .
Origin |
Field Name |
Description |
Attributes |
|---|---|---|---|
FMDERIVE |
COMPANY_CODE |
Company Code |
|
FMDERIVE |
ACCOUNT_NUMBER |
G/L account number |
Origin |
Field Name |
Description |
Attributes |
|---|---|---|---|
FMDERIVE |
COMMIT_ITEM |
Commitment item |
Use new value if new value exists |
Step 3.3 Funds center from the cost center
Derivation Type Move
This step derives the funds center from the cost center.
You can use derivation type Move when (as set above) the names of the fund center and the cost center in a partial string (5-8) are the same.
If the names are not the same, the funds center can be derived from the cost center as described in step 6.1 .
Origin |
Field Name |
Description |
Attributes |
|---|---|---|---|
FMDERIVE |
COST_CENTER |
Cost center |
From item 5 length 4 |
Origin |
Field Name |
Description |
Attributes |
|---|---|---|---|
FMDERIVE |
FUND_CENTER |
Funds center |
Use new value if new value exists |
Derivation Step 4.1 Commitment Item from G/L Account (for names that are different)
Step type Function Module
Name of function module: FMDT_READ_MD_ACCOUNT_COMPANY
This step derives the commitment item defined in the G/L account. You must use this derivation step when the names of the commitment items differ to those of the G/L accounts and cost elements.
Note that you also need another derivation step with derivation type “derivation rule” to derive the commitment item from the secondary cost elements.
Origin |
Field Name |
Description |
Field |
Attributes |
|---|---|---|---|---|
FMDERIVE |
COMP_CODE |
Company Code |
COMPANY_CODE |
|
FMDERIVE |
GL_ACCOUNT |
G/L account number |
ACCOUNT_NUMBER |
Origin |
Field Name |
Description |
Field |
Attributes |
FMDERIVE |
CMMT_ITEM |
Commitment item |
COMMIT_ITEM |
Do not overwrite if entry made |
Step 5.1 Credit as Revenue (first step): Condition
Derivation Type Move
This derivation type determines whether the sender fund is an Enterprise fund (own fund) and the receiver fund a government fund (secondary sources) for clearings in Controlling and whether it is a revenue posting. This information is needed in the next derivation step to determine the corresponding revenues account assignment in Funds Management if it is necessary.
Origin |
Field Name |
Description |
Attributes |
Op. |
Constant |
|---|---|---|---|---|---|
FMDERIVE |
PARTNER_FUND_TYP |
FM funds type |
>= |
G1 |
|
FMDERIVE |
PARTNER_FUND_TYP |
FM funds type |
<= |
G4 |
|
FMDERIVE |
DR_CR_IND |
Debit/Credit indicator |
= |
H |
|
FMDERIVE |
FUND_TYP |
FM funds type |
>= |
G5 |
|
FMDERIVE |
FUND_TYP |
FM funds type |
<= |
G8 |
Origin |
Field Name |
Description |
Attributes |
|---|---|---|---|
FMDERIVE |
Constant : X |
Origin |
Field Name |
Description |
Attributes |
|---|---|---|---|
FMDERIVE |
ZZCREDIT_AS_REVENUE |
Credit as revenue |
Use new value if new value exists |
Step 5.2 Credit as revenue (second step): Commitment item and G/L account from cost element
Step type derivation rule
This step derives a revenue commitment item and a G/L account from the cost element (for the reconciliation ledgerFI-CO). This step is necessary to carry out credit postings with CO allocation in Funds Management and in the balance (corresponding to GASB 34/35) in same way.
Origin |
Field Name |
Description |
Attributes |
Op. |
Constant |
|---|---|---|---|---|---|
FMDERIVE |
ZZCREDIT_AS_REVENUE |
Credit as revenue |
= |
X |
Origin |
Field Name |
Description |
Attributes |
|---|---|---|---|
FMDERIVE |
COST_ELEMENT |
Cost element |
Origin |
Field Name |
Description |
Attributes |
|---|---|---|---|
FMDERIVE |
COMMIT_ITEM |
Commitment item |
Use new value if new value exists |
FMDERIVE |
ACCOUNT_NUMBER |
G/L account number |
Use new value if new value exists |
Step 6.1 Transfer Values in CO Master Data Fields to Target Fields
Derivation type enhancement
This step determines the funds center from the cost center and the commitment item from the cost element and transfers them into the corresponding target fields.
Deriving the funds center and commitment item in this step is recommended if the names of the funds center and cost center are different and the names of the commitment item and cost element are different. (See step 3.3 and 3.1; you should not use this step, or not always).
Origin |
Field Name |
Description |
Attributes |
|---|---|---|---|
FMDERIVE |
CO_AREA |
Controlling Area |
|
FMDERIVE |
COST_CENTER |
Cost center |
Source field initial allowed |
FMDERIVE |
COST_ELEMENT |
Cost element |
|
FMDERIVE |
POSTING_DATE |
Valid from date |
Origin |
Field Name |
Description |
Attributes |
|---|---|---|---|
FMDERIVE |
FUND_CENTER |
Funds center |
Use new value if new value exists |
FMDERIVE |
COMMIT_ITEM |
Commitment item |
Use new value if new value exists |
Step 6.2 Determine funds center from the order
Step type Function Module
Name of function module: FMDT_READ_MD_ORDER
This step derives the funds center that was defined in the master data of the internal order.
Origin |
Field Name |
Description |
Field |
Attributes |
|---|---|---|---|---|
FMDERIVE |
ORDERID |
Order number |
ORDER_NUMBER |
Origin |
Field Name |
Description |
Field |
Attributes |
|---|---|---|---|---|
FMDERIVE |
ZZFUND_CENTER |
Funds center |
FUND_CENTER |
Use new value if new value exists |
Step 6.3 Determine f unds center from work breakdown structure (WBS element)
Step type Function Module
Name of function module: FMDT_READ_MD_WBS_ELEMENT
This step derives the funds center that was defined in the master data of the WBS element.
Origin |
Field Name |
Description |
Field |
Attributes |
|---|---|---|---|---|
FMDERIVE |
POSID |
Work Breakdown Structure Element (WBS Element) |
WBS_ELEMENT |
Origin |
Field Name |
Description |
Field |
Attributes |
|---|---|---|---|---|
FMDERIVE |
ZZFUND_CENTER |
Funds center |
FUND_CENTER |
Use new value if new value exists |
Step 7.1 Sales and distribution assignment (table FMZUOB)
Step type Function Module
Name of function module: FMDT_READ_ORDER_SD_FROM_FMZUOB
The step derives the FM account assignment from the DS order item.
An error message is issued, if no values are found
Origin |
Field Name |
Description |
Field |
Attributes |
|---|---|---|---|---|
FMDERIVE |
FM_AREA |
FM area |
FM_AREA |
|
FMDERIVE |
ORDER_NUMBER_SD |
Sales document number |
ORDER_NUMBER_SD |
|
FMDERIVE |
ORDER_POSNR_SD |
Sales document item |
ORDER_POSNR_SD |
|
FMDERIVE |
POSTING_DATE |
Valid from date |
POSTING_DATE |
Origin |
Field Name |
Description |
Field |
Attributes |
|---|---|---|---|---|
FMDERIVE |
COMMIT_ITEM |
Commitment item |
COMMIT_ITEM |
Do not overwrite if entry made |
FMDERIVE |
FUND_CENTER |
Funds center |
FUND_CENTER |
Do not overwrite if entry made |
FMDERIVE |
FUND |
Fund |
FUND |
Do not overwrite if entry made |
Step 7.2 Plant maintenance assignment (table FMZUOB)
Step type Function Module
Name of function module: FMDT_READ_ORDER_PM_FROM_FMZUOB
The step derives the FM account assignment from the plant maintenance order.
An error message is issued, if no values are found
Origin |
Field Name |
Description |
Field |
Attributes |
|---|---|---|---|---|
FMDERIVE |
FM_AREA |
FM area |
FM_AREA |
|
FMDERIVE |
ORDER_NUMBER |
Order number |
ORDER_NUMBER |
|
FMDERIVE |
POSTING_DATE |
Valid from date |
POSTING_DATE |
Origin |
Field Name |
Description |
Field |
Attributes |
|---|---|---|---|---|
FMDERIVE |
COMMIT_ITEM |
Commitment item |
COMMIT_ITEM |
Do not overwrite if entry made |
FMDERIVE |
FUND_CENTER |
Funds center |
FUND_CENTER |
Do not overwrite if entry made |
FMDERIVE |
FUND |
Fund |
FUND |
Do not overwrite if entry made |
Step 7.3 Network header assignment (table FMZUOB)
Step type Function Module
Name of function module: FMDT_READ_ORDER_NP_FROM_FMZUOB
The step derives the FM account assignment from the network header.
An error message is issued, if no values are found
Origin |
Field Name |
Description |
Field |
Attributes |
|---|---|---|---|---|
FMDERIVE |
FM_AREA |
FM area |
FM_AREA |
|
FMDERIVE |
ORDER_NUMBER |
Order number |
ORDER_NUMBER |
|
FMDERIVE |
POSTING_DATE |
Valid from date |
POSTING_DATE |
Origin |
Field Name |
Description |
Field |
Attributes |
|---|---|---|---|---|
FMDERIVE |
COMMIT_ITEM |
Commitment item |
COMMIT_ITEM |
Do not overwrite if entry made |
FMDERIVE |
FUND_CENTER |
Funds center |
FUND_CENTER |
Do not overwrite if entry made |
FMDERIVE |
FUND |
Fund |
FUND |
Do not overwrite if entry made |
Step 7.4 Network activity assignment (table FMZUOB)
Step type Function Module
Name of function module: FMDT_READ_ORDER_NV_FROM_FMZUOB
The step derives the FM account assignment from the network activity.
An error message is issued, if no values are found
Origin |
Field Name |
Description |
Field |
Attributes |
|---|---|---|---|---|
FMDERIVE |
FM_AREA |
FM area |
FM_AREA |
|
FMDERIVE |
ORDER_NUMBER_NV |
Plan number to activities in order |
ORDER_NUMBER_NV |
|
FMDERIVE |
ORDER_POSNR_NV |
General counters of the order |
ORDER_POSNR_NV |
|
FMDERIVE |
POSTING_DATE |
Valid from date |
POSTING_DATE |
Origin |
Field Name |
Description |
Field |
Attributes |
|---|---|---|---|---|
FMDERIVE |
COMMIT_ITEM |
Commitment item |
COMMIT_ITEM |
Do not overwrite if entry made |
FMDERIVE |
FUND_CENTER |
Funds center |
FUND_CENTER |
Do not overwrite if entry made |
FMDERIVE |
FUND |
Fund |
FUND |
Do not overwrite if entry made |