Top Banner
 Ralph Stadter Development Support Financials Intercompany Reconciliation Background Information & Customizing Guide 22. Mai 2014 Version 1.1
34
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript

Konzeptpapier oder Bericht (mit Deckblatt)

Intercompany Reconciliation

Ralph StadterDevelopment Support Financials

Intercompany ReconciliationBackground Information & Customizing Guide

27. Februar 2014

Version 1.1

Table of Contents:1Purpose of this document42Background information42.1Environment42.2Purpose42.3Target groups42.4Supported processes52.4.1Process 00152.4.2Process 00252.4.3Process 00352.5Services52.6ICR process cycle62.6.1Select Documents72.6.2Assign Documents Automatically112.6.3Reconcile Documents Manually122.6.4Main toolbar functions of the reconciliation screen142.6.5Other functions of the reconciliation screen163ICR customizing173.1Preparations in the Reconciliation System173.1.1General Settings173.1.2Data Selection and Storage193.1.3Data Assignment223.1.4Data Reconciliation233.1.5Communication Support303.2Preparations in the Sender System313.2.1General Settings313.2.2Define Enhancements313.2.3Open Item Reconciliation313.2.4GL Account Reconciliation314Technical Details314.1Data Selection314.2Data Assignment345Change History34

Table of Figures:Table 1: Programs for Document Assignment11Table 2: Programs for Manual Document Reconciliation12Table 3: FBICR1 Status Icons13Table 4: Process 001 Attributes17Table 5: Process 002 Attributes18Table 6: Process 002 Attributes18Table 7: ICR Database Tables18Table 8: Field Catalogs Mandatory Role Assignments19Table 9: Field Catalogs Recommended Role Assignments19Table 10: BAdI FB_ICRC_001, FB_ICRC_002, and FB_ICRC_003: Available Methods21Table 11: Recommended Rule for Automatic Assignment22Table 12: BAdI FB_RC_ASSIGNMENT: Available Methods22Table 13: Example Sets23Table 14: Example Set Definition #124Table 15: Example Set Definition #224Table 16: Process 001 Display Category 100 Receivables26Table 17: Process 001 Display Category 200 Payables26Table 18: Process 001 Display Category 300 Open Items26Table 19: Proces 002 Display Category 100 Revenue27Table 20: Proces 002 Display Category 200 Expense27Table 21: Process 003 Display Category 100 Receivables27Table 22: Process 003 Display Category 200 Payables27Table 23: Process 003 Display Category 300 Open Items27Table 24: Communication Status Delivered Values28Table 25: Processing Status Delivered Values28Table 26: BAdI FB_RC_PRESENTATION: Available Methods29Table 27: Delivered Placeholders30Table 28: Key Date for Open Item Selection32Table 29: Order of Data Selection Depending on Transfer Type and Data Source32Table 30: Authorizations for RFC users32Table 31: Change History34

Purpose of this documentThis document is intended for project members responsible for setting up the Intercompany Reconciliation functionality. It explains the delivered standard customizing as well as the options available during configuration.Background informationThe Intercompany Reconciliation solution was first delivered with release ERP2004. It replaces the previously existing programs RFICRC00, RFICRC01, and RFICRC20.EnvironmentThe Intercompany Reconciliation solution (ICR) is designed for use in Financial Accounting. It provides periodic control of documents which describe the accounting transactions within the corporate group. ICR selects documents across SAP systems and clients. It is also possible to integrate external data into the reconciliation process. In order to avoid currency conversion differences, the documents are reconciled in the transaction currency.PurposeThe purpose of ICR is to ensure that intercompany documents from accounting transactions within the corporate group correspond to one another. It contains tools which check that documents have been correctly assigned to a business transaction and which also enable you to find corresponding documents easily and to make additional assignments. ICR operates on the level of companies and partner companies (trading partners).If the reconciliation process is successful this will ultimately lead to reduced differences in corporate group consolidation.Target groupsThere are two main groups who would benefit from using this solution:1. Firstly, individual companies would benefit from matching up documents, because they need to ensure that their own documents from accounting transactions correspond to the documents of internal trading partners to avoid delays and disputes when payments are supposed to be processed.2. The consolidation parent can then make a global check of the results for all the companies.The program is designed to maintain constant control and can be run at any time. This means that the deadline pressure which normally arises during monthly closing and year end closing can be avoided.

Supported processesThe following processes are supported by the delivered programs:Process 001GL Open ItemsProcess 002AccountsProcess 003Customer/Vendor Open ItemsProcess 001This process is intended for reconciliation of open items. You should choose this process if most of your intercompany receivables and payables are posted to GL accounts.Process 002This process is intended for reconciliation of documents which are posted to accounts which do not have open item management. This process is mostly used for reconciliation of profit and loss accounts.Process 003This process is intended for reconciliation of open items. You should choose this process if most of your intercompany receivables and payables are posted to customer and vendor accounts.ServicesThe ICR solution consists of 2 parts:1. Process independent services2. Process dependent componentsThe process independent services can also be used for customer defined processes. Depending on the specific requirements you may want to copy the programs of the delivered processes and modify them to your requirements.The process independent services are contained in package FB_RC.

ICR process cycleThe ICR process is basically a cycle of individual steps as shown below:

Figure 1: ICR Process CycleData will first be selected from the sender systems and then stored centrally in the reconciliation system. The data is analyzed and issues are communicated to the involved accountants. After this corrections (as well as new documents) are posted. These will then be included in the next data selection.These steps are represented in the programs to be executed for ICR:1. Select DocumentsData Selection & Data Storage2. Assign Documents AutomaticallyPreparation for Data Presentation & Analysis3. Reconcile Documents ManuallyData Presentation & Analysis and CommunicationThe programs and transactions involved in these steps depend on the reconciliation process.

Select DocumentsWhen data selection is performed the relevant document lines are selected from the sender systems and stored in the reconciliation system. Which document lines are relevant depends on the process as well as the time period of the current reconciliation cycle.Process 001: GL Open ItemsThe program for data selection of process 001 is FBICRC001_DATA_SEL and is assigned to transaction code FBICS1. The program can be found in the SAP menu under the following path:SAP menu Accounting Financial Accounting General Ledger Periodic Processing Closing Check/Count Intercompany Reconciliation: Open Items

Figure 2: FBICS1 Selection ScreenThe program will select the relevant data records for the specified companies. The fiscal year and period will be used to determine the key date for the selection of open items.The program will produce a protocol displaying some statistical information about the program run as well as messages for any issues that came up during the program run.

Figure 3: FBICS1 Protocol

Process 002: AccountsThe program for data selection of process 002 is FBICRC002_DATA_SEL and is assigned to transaction code FBICS2. The program can be found in the SAP menu under the following path:SAP menu Accounting Financial Accounting General Ledger Periodic Processing Closing Check/Count Intercompany Reconciliation: Accounts

Figure 4: FBICS2 - Selection ScreenThe program will select the relevant data records for the specified companies. Since this program is not working with open items determining the relevant data records is much more difficult. The relevant data records are all intercompany document lines which have been posted to accounts to be reconciled since the last successful data selection. In order to find these document lines the standard logic requires that a special ledger is created in the sender systems for table FBICRC002T (or FBICRCS002T for releases < ERP2004). This ledger should be set up with a ledger selection which will allow only relevant document lines to be posted into the ledger: i.e. document lines where the trading partner is specified and which are posted to the accounts which you would like to reconcile; additional restrictions can also be applied according to your needs.The program will then select the newly posted line items from this ledger and mark the selected line items as transferred (field RTYPE is set to 4).In case some of the previously transferred items have to be transferred again you have to mark the checkbox Reselect Data and specify the posting date for which the data is supposed to be retransferred.The program will produce a protocol displaying some statistical information about the program run as well as messages for any issues that came up during the program run. The content of the protocol is essentially the same as for FBICS1 which is why no screen shot is included here.

Process 003: Customer / Vendor Open ItemsThe program for data selection of process 003 is FBICRC003_DATA_SEL and is assigned to transaction code FBICS3. The program can be found in the SAP menu under the following path:SAP menu Accounting Financial Accounting Customers Periodic Processing Closing Check/Count Cross-System Intercompany ReconciliationOr SAP menu Accounting Financial Accounting Vendors Periodic Processing Closing Check/Count Cross-System Intercompany Reconciliation

Figure 5: FBICS3 Selection ScreenThe program will select the relevant data records for the specified companies. The fiscal year and period will be used to determine the key date for the selection of open items.The program will produce a protocol displaying some statistical information about the program run as well as messages for any issues that came up during the program run.

Assign Documents AutomaticallyAfter the relevant documents have been transferred to the reconciliation system they are analyzed by this program. The program tries to find documents belonging to the same business transaction using customizable rules. Matching documents are assigned to each other.The following programs are available for the individual processes:

ProcessProgram Transaction

001FBICRC001_DATA_ASSIGNFBICA1

002FBICRC002_DATA_ASSIGNFBICA2

003FBICRC003_DATA_ASSIGNFBICA3

Table 1: Programs for Document AssignmentThe paths in the SAP menu are the same as for the data selection programs.The protocols of the programs provide some statistical information about the number of records analyzed and the number of records which could be assigned using the rules set up in customizing.The following screen shot shows the protocol of FBICA1. The protocols of the other programs provide the same information.

Figure 6: FBICA1 ProtocolReconcile Documents ManuallyThis is the main transaction for intercompany reconciliation. It is geared towards finding documents which cause differences.The following programs are available for the individual processes:

ProcessProgram Transaction

001FBICRC001_DATA_RECFBICR1

002FBICRC002_DATA_RECFBICR2

003FBICRC003_DATA_RECFBICR3

Table 2: Programs for Manual Document ReconciliationThe program produces an overview screen with a tree structure showing the company relationships which require reconciliation:

Figure 7: FBICR1 - Overview ScreenThe tree shows the company on the first level and the partner on the second level. The third level contains a link to the documents to be reconciled. The second column shows the difference on the business relationship level in the display currency which the user can specify on the selection screen. As mentioned before ICR works on transaction currency amounts. But in order to display one total per business relationship the transaction currency values are converted into a display currency during program execution. The user can specify the display currency to be used on the selection screen.Only the business relationships requiring action are displayed per default (icons and ).

IconMeaning

Differences exist

No differences exist, but some documents have not been assigned yet. Theoretically this could be caused by several incomplete business transactions which are not balanced within themselves but the overall balance is zero by coincidence.

No differences exist and all documents have been assigned

No data records are available for this business relationship

Table 3: FBICR1 Status IconsEntries with status and can be added by using the corresponding functions in the trees toolbar.Function controls the size of the tree display.Function List Output displays the contents of the tree in a list.Function User Settings allows the user to maintain some detailed parameters.The user will then click on one of the differences to display the documents for a business relationship.

Figure 8: FBICR1 Reconciliation ScreenThe screen is divided into 3 areas. The unassigned documents posted by the company of the selected business relationship are displayed in the left top area. The unassigned documents posted by the partner of the selected business relationship are displayed in the right top area. Documents which were assigned either automatically or manually are displayed in the bottom part of the display. However, by default document groups with a balance or zero are not displayed. They can be added to the display using function . The layout of the individual display areas can be changed according to the users requirements.Main toolbar functions of the reconciliation screenThe user can look for matching documents manually, select them and assign them using function Assign Items. The assigned items will then be added to the bottom part of the display. If the balance of this new document group is zero it will not be displayed.The user can also have the program suggest assignments using function Suggest Assignments. This will display a list of rules which can be set up in customizing. After the user selects one of the rules the unassigned documents are analyzed using the selected rule and assignments are suggested. The selected rule in this example checks for documents with the same transaction currency and matching amounts.

Figure 9: FBICR1 Suggest AssignmentsThe user can now analyze the suggestions, select documents to be assigned to each other, and assign them using function Assign Items. Function Delete From Display will delete the selected documents from the suggestion display. Function End Suggestions will return the user to the previous screen.NoteAll selected items will be assigned to the same document group independent of the displayed temporary group number. This requires the user to analyze all of the suggestions before accepting the suggested assignments. Please note as well, that the suggested document groups will not necessarily balance to zero (see group number T00000000000003 in the above screen shot).Function Communication will start a dialog which can be used to send template based messages to accountants in the partner company. As a first step the user has to select a template and the language of the message:

Figure 10: FBICR1 Select TemplateOn the next screen the user is offered contact persons which the message is supposed to be sent to. Per default the contact persons for the partner in the selected business relationship are displayed. After confirming the selected recipients the user will be taken to the SAPoffice send screen. The user can send the message without any additional actions or display the document and edit it manually if necessary. All SAPoffice functions are available for the document.NoteYou can use SAPoffice to send the messages externally to your email client. The user can specify a default recipient in the User Settings and that way receive a copy of the correspondence in the email client as well.After sending the message or canceling the dialog the user returns to the reconciliation screen. NoteIf the message was sent successfully the Communication Status of the documents which the message was sent for is automatically set to Mail Sent.If the user select the menu part of function Communication other related functions are also available.Function Set Status allows the user to set the status for a document. The standard status fields are Processing Status and Communication Status. Other status fields can be added through customizing.Other functions of the reconciliation screenThe first functions in the toolbar for each ALV grid displaying documents are standard functions which will not be explained in detail in this document: Additional ALV standard functions are available through Standard Functions. They can also be added to the ALV grid toolbar through this function. Standard Functions Show Functions in ALV Toolbar Temporarily or Permanently.Function Display Document will display the original document in the original system of the document. This is only available if the original document is from an SAP system and the appropriate RFC connection has been maintained.Function Services for Object allows the users to maintain public notes and attachments as well as private notes.Function deletes the assignment of documents to a document group.Function controls the size of the bottom part of the display.

ICR customizingThe customizing is available through the standard IMG (transaction SPRO) as well as 2 additional transactions which display the subtree specific to Intercompany Reconciliation:Transaction FBICIMGCustomizing for processes 001 and 002This customizing is available in SPRO through the following path:SAP Customizing Implementation Guide Financial Accounting General Ledger Accounting Business Transactions Closing Check / Count Cross-System Intercompany ReconciliationorSAP Customizing Implementation Guide Financial Accounting (New) General Ledger Accounting (New) Periodic Processing Check / Count Cross-System Intercompany ReconciliationTransaction FBICIMG3Customizing for process 003This customizing is available in SPRO through the following path:SAP Customizing Implementation Guide Financial Accounting Accounts Receivable and Accounts Payable Business Transactions Closing Count Cross-System Intercompany ReconciliationorSAP Customizing Implementation Guide Financial Accounting (New) Accounts Receivable and Accounts Payable Business Transactions Closing Count Cross-System Intercompany Reconciliation

Preparations in the Reconciliation SystemGeneral SettingsDefine Reconciliation Process AttributesThis customizing step contains some basic settings for each reconciliation process. The delivered settings are sufficient and do not need to be changed. Please refer to the field documentation for additional information.Process 001FieldValue

DescriptionIntercompany Reconciliation: GL Open Items

Structure for Unassigned ItemsFBICRC_S_DISPLAY_001

Structure for Assigned ItemsFBICRC_S_DISPLAY_001_ASSIGNED

Determine Group Reference AutomaticallyX

Application IDFBRC

Message Template Group001

Contact Person Database001

Do Not Display Totals Overview ScreenX

Table 4: Process 001 Attributes

Process 002FieldValue

DescriptionIntercompany Reconciliation: Accounts

Structure for Unassigned ItemsFBICRC_S_DISPLAY_002

Structure for Assigned ItemsFBICRC_S_DISPLAY_002_ASSIGNED

Determine Group Reference AutomaticallyX

Application IDFBRC

Message Template Group002

Contact Person Database002

Do Not Display Totals Overview Screen

Table 5: Process 002 AttributesProcess 003FieldValue

DescriptionIntercompany Reconciliation: Cust./Ven. Open Items

Structure for Unassigned ItemsFBICRC_S_DISPLAY_003

Structure for Assigned ItemsFBICRC_S_DISPLAY_003_ASSIGNED

Determine Group Reference AutomaticallyX

Application IDFBRC

Message Template Group003

Contact Person Database003

Do Not Display Totals Overview ScreenX

Table 6: Process 002 AttributesCreate Additional FieldsYou can use the IMG step to define additional fields you would like to use during Intercompany Reconciliation. The fields are defined separately for each process. The additional fields will be generated into the ICR database tables:Process IDLine Item TableTotals Table

001FBICRC001AFBICRC001T

002FBICRC002AFBICRC002T

003FBICRC003AFBICRC003T

Table 7: ICR Database TablesWhether a field is added to the Line Item Table and/or the Totals Table depends on the Level of Availability you choose for the new field.Please refer to the field documentation for further information.Activate ProcessesThe ICR solution uses the FI-SL posting framework to store document and totals information. The tables were created as Special Ledger tables. In order to reduce the impact of unused processes the tables can be deactivated in this IMG step. Please set the flag Inactive for the processes which you will not be using.

Activate Transaction Data TablesThis step will add the additional fields you customized to the transaction data tables and display structures and generate the FI-SL posting framework. If you created any additional fields they will not be visible in the field catalog until this step has been executed.Since the FI-SL posting framework is generated in this step (if there were any changes which require the generation) you have to be careful about the time of execution for this step. There should not be any documents posted in any client of the system while this program is executed.Maintain Field CatalogsIn this step you can assign predefined roles to the fields of the ICR database tables. The following role assignments are mandatory for processes 001 to 003.Field NameRole

GRREFGroup Reference Number

RASSCLeading Partner Unit

RCOMPLeading Organisational Unit

RTCURPrimary Currency Key

TSLPrimary Amount

Table 8: Field Catalogs Mandatory Role AssignmentsThe following role assignments are recommended. If you do not want to use the delivered status fields you can assign the role Subassignment instead.Field NameRole

CSTATStatus Field

PSTATStatus Field

Table 9: Field Catalogs Recommended Role AssignmentsIf you added any other fields to be used as status fields you should also assign the role Status Field to these fields.Please refer to the field documentation for further information.Data Selection and StorageDefine Reconciliation Process Detail AttributesThis step defines some of the details regarding data selection and storage for each of the reconciliation processes.Reconciliation Process Detail AttributesThe Fiscal Year Variant is used to derive the key date for open item selection in processes 001 and 003.The Group Chart of Accounts is used in processes 001 and 002 to determine the relevant accounts.Program OptionsIf you set the flag Display Company Name in Reconciliation Display the name of the company as maintained in table T880 will be displayed in the navigation tree next to the company ID.You can specify a version to be used as a default for the main transactions of the process. Versions play a secondary role in the reconciliation process. Since the field is available due to the FI-SL framework it can be used to create separate sets of data. You can use different versions for testing purposes for example. However, for productive use you should always use the same version since document details like assignment and status are version dependent.If you set the flag Hide Version from Selection Screens the field will not be available for input on the selection screen. That way you avoid issues with users working in separate versions although they should not.If you set the flag Show Sequential Number on Selection Screen of Data Selection Program this field will be available for input on the selection screen. Please refer to the field documentation for additional information and dependencies.You can also specify a Display Currency as a default for manual document reconciliation. The flag Hide Display Currency From Selection Screen enables you to enforce a display currency for all users.Data SelectionIf you choose the Selection Strategy Minimize number of RFC calls the data selection program will select all relevant documents from the sender systems using one RFC call per sender system. If you set the flag Selection Strategy Is Default Only you can specify for each company whether the data of that company should be selected in the collective RFC call or in a separate one.ExampleThere are 5 companies with data in system PR1. The data volume for three of these companies is relatively low. The other two companies have a lot of intercompany postings on PR1. In order to optimize the runtime of the data selection you specify Minimize number of RFC calls as the selection strategy and set the flag Selection Strategy Is Default Only. In the company specific settings you set the flag Separate Selection Process for the two companies with the high data volume.The data selection program will start three separate RFC calls to the sender system. The first one will select the data for the three companies with low data volume. The other two calls will select the data for the bigger companies.If you choose the Selection Strategy Minimize data transfer volume per RFC call the data selection program will create a separate call to the sender system for each company.The Sender Ledger specifies which ledger data for process 002 is to be read from during data selection. If you set the flag Sender Ledger Is Default Only you can specify a different sender ledger per company.The data selection program will store the selected documents in the Receiving Ledger.NoteThe ledgers you specify here do not actually have to be created in the Special Ledger customizing unless you want to use additional SL functions like reporting.In order to enable later addition of general SL services you have to specify a ledger name. You can specify any ledger which has not been created yet. However, you should be careful not to create a ledger with this name for a different purpose later in time. If you do create ledgers in IMG activity Define Ledger you must set the properties of the ledgers as described in the documentation of that activity.

NoteFor process 002 the data selection program will ignore all local companies which have the same Sender Ledger and Receiving Ledger.Define LedgerIn this IMG step you can set up a Special Ledger. Please note that for the core functionality of ICR it is not necessary for you to set up a Special Ledger in the Reconciliation System. You only need to set up a ledger if you want to use general SL functionality (e.g. reporting).If your reconciliation system is also used as a sender system (i.e. there is a productive company code running in the same client of the same system) you have to create the sender ledger. More details are available in the section 3.2.4 GL Account Reconciliation.Before you can define any ledgers for ICR you have to make sure that global ledgers are active (transaction GCVO: IMG path Financial Accounting Special Purpose Ledger Basic Settings Perform Preparation or Financial Accounting (new) Special Purpose Ledger Basic Settings Perform Preparation).

Define EnhancementsUse this activity to implement BAdIs FB_ICRC_001, FB_ICRC_002, and FB_ICRC_003.The following BAdI methods are available:MethodUseAvailable in BAdI

ADD_FIELDS_TO_BE_SELECTEDAdd additional fields to be selected from FI document tableFB_ICRC_001, FB_ICRC_003

ADD_INFORMATION_TO_DATA_RECORDChange field contents of a data record to be reconciledFB_ICRC_001, FB_ICRC_002, FB_ICRC_003

CHANGE_DATA_TABLEAdd or delete data records to be reconciledFB_ICRC_001, FB_ICRC_002, FB_ICRC_003

CHANGE_DATA_TABLE_SENDER_SYSAdd or delete data records to be reconciled in the sender systemFB_ICRC_001, FB_ICRC_002, FB_ICRC_003

CONVERT_DATA_FROM_001Convert GL Open Items to be used in Process 003FB_ICRC_003

CONVERT_DATA_FROM_003Convert AR/AP Open Items to be used in Process 001FB_ICRC_001

MAP_COMPANY_IDSMap company IDs in case they are not consistent throughout the system landscape (this can also be achieved in method ADD_INFORMATION_TO_DATA_RECORDFB_ICRC_001, FB_ICRC_002, FB_ICRC_003

SUPPLY_OTHER_DATAAdd data from external sources using self-defined logicFB_ICRC_001, FB_ICRC_002, FB_ICRC_003

RESTRICT_SELECTIONChange the selection restrictions of data selectionFB_ICRC_001, FB_ICRC_002, FB_ICRC_003

Table 10: BAdI FB_ICRC_001, FB_ICRC_002, and FB_ICRC_003: Available MethodsPlease refer to the implementation of CL_IM_FB_ICRC_001 for detailed information and example implementations of the individual methods. This class implements the interface of BAdI FB_ICRC_001, however, the implementation can also be used for other processes with minor adjustments.Companies to be ReconciledThis part of the customizing allows you to define the properties for all companies which are supposed to be included in reconciliation.There is extensive documentation available for the individual fields. Please refer to this documentation during customizing.

Data AssignmentMaintain Number Range for Group Reference NumbersUse this IMG step to set up the number range intervals for the group reference numbers of the individual reconciliation processes. Please note that you have to maintain the number range interval 10 for each of the processes you would like to use.Define Rules for Document AssignmentsIn this part of the customizing you can set up rules which can be used to find matching documents. You can set them up to be used during Automatic Assignment or to be available during Manual Reconciliation.NoteIf you set the flag Use Rule During Assignment Program Run for a rule it will be used during automatic assignment. These rules are not available during manual reconciliation.You should set up the following rule for automatic assignment:RuleSeqNrOrgUnit FieldComparePartner Field

100100REFNREqualREFNR

Table 11: Recommended Rule for Automatic AssignmentThis rule will assign all documents which are related to the same business transaction to each other if the reference number was posted correctly. You should establish organizational rules within the corporate group which will ensure that all intercompany transactions are posted with the proper reference number. All documents with the same reference number should then be assigned to each other during automatic assignment. You should not add an additional condition to the automatic rule that the amounts should match. First of all using operators other than Equal has a severe impact on the performance of automatic assignment. Also, it does not make sense from a business logic point of view to assign documents to each other only if the amounts match. If several documents have been assigned to the same business transaction by posting the same reference number then the user should be able to see all documents belonging to that business transaction right away. The main goal of intercompany reconciliation is to identify all documents belonging to the same business transaction and to make sure that these documents were posted correctly. If one of the documents was not posted correctly (e.g. with wrong amount and / or transaction currency) it speeds up the reconciliation process if the user can see this immediately when analyzing the documents during Interactive Reconciliation. All necessary information is available right away, i.e. the user can see immediately which document was posted incorrectly and request a correction posting.If documents are only assigned to each other if the amounts match, the users have to try and find documents belonging to the same business transaction before being able to check whether or not they were posted correctly. This slows down the process unnecessarily.Define EnhancementsUse this activity to implement BAdI FB_RC_ASSIGNMENT.The following BAdI methods are available:MethodUse

PROCESS_AFTER_ASSIGN_ALLExecuted after all rules have been processed

PROCESS_AFTER_ASSIGN_SINGLEExecuted after each rule has been processed

Table 12: BAdI FB_RC_ASSIGNMENT: Available MethodsPlease refer to the implementation of CL_IM_FB_RC_ASSIGNMENT for detailed information and example implementations of the individual methods.

Data ReconciliationSet Up Reconciliation DisplayIn this step you can specify whether the navigation tree in the reconciliation display is supposed to be using the primary organizational units only or the secondary organizational units as well. The second option is only available if you added fields as secondary organizational units (IMG activity Create Additional Fields: additional fields have to be set up with Availability Totals Items: Subassignment; IMG activity Maintain Field Catalogs: additional fields must have been assigned the roles Secondary Organizational Unit and Secondary Partner Unit respectively).Define SetsIn this activity you have to set up value sets which will be used in the next IMG step Set Up Display Categories and Subcategories. The sets simply contain the values which will be used to separate the individual types of accounts used in intercompany reconciliation. This is a rather technical part of the customizing for which you need to know some technical details about GL accounts and customer / vendor accounts.In field Description you can enter a text which identifies the set for you. In field Data Element you should specify the data element used for the field in the check table of the characteristic you want to use. The main thing about the data element is that the technical settings have to be correct (i.e. type, length, conversion exit). If you want to build sets for GL accounts you should use data element SAKNR. If you want to build sets for customer accounts you should use data element KUNNR, for vendor accounts LIFNR. The other fields are optional and only necessary if you would like to have value help and texts available when maintaining the single entries for the sets.

Set IDDescriptionData ElementText TableText FieldSuperordinate Characteristic

1000All AccountsSAKNRSKATTXT50

2000GL ReceivablesSAKNRSKATTXT50

3000GL PayablesSAKNRSKATTXT50

4000Revenue AccountsSAKNRSKATTXT50

4100Revenue HardwareSAKNRSKATTXT50

4200Revenue SoftwareSAKNRSKATTXT50

4300Revenue LicensesSAKNRSKATTXT50

5000Expense AccountsSAKNRSKATTXT50

5100Expense HardwareSAKNRSKATTXT50

5200Expense SoftwareSAKNRSKATTXT50

5300Expense LicensesSAKNRSKATTXT50

6000CustomersKUNNRKNA1NAME1

7000VendorsLIFNRLFA1NAME1

Table 13: Example SetsIn field Text Table you can specify the text table for the characteristic for which you want to create the set. For GL accounts you should specify SKAT as text table. For customer accounts the text table is KNA1, for vendor accounts LFA1.In field Text Field you can specify the field of the text table which contains the descriptive text for the accounts. For GL accounts the text field is TXT50, for customer and vendor accounts it is NAME1.Field Superordinate Characteristic needs to be maintained if the text table contains key fields other than client, language key, and the characteristic itself. For GL accounts you need to specify the Chart of Accounts you want to use. For customer and vendor accounts you do not need to specify anything.

Sets: Single EntriesIn this part of the set customizing you can specify the actual values which are supposed to be contained in a set. Each set can have several entries. Please note that the individual entries are combined with each other with a logical OR.ExampleSetSeqNrLowHigh

4100 Revenue HW10100199

4100 Revenue HW20300399

Table 14: Example Set Definition #1During the program run each data record is analyzed whether it is contained in a set or not. For this set 100 all data records which have an account between 100 and 199 OR 300 and 399 are contained within the set.

NoteIf you would like to include all possible values in a set you can also specify values which do not represent an actual account. The following set contains all possible values for customer, vendor, or GL accounts:SetSeqNrLowHigh

1000 All Accounts100ZZZZZZZZZZ

6000 Customers100ZZZZZZZZZZ

7000 Vendors100ZZZZZZZZZZ

Table 15: Example Set Definition #2Set Up Display Categories and SubcategoriesIn this IMG step you set up what categories are supposed to be used for interactive reconciliation for each process. The display categories are the third level of the navigation hierarchy.Example Display HierarchiesProcess 001:Example Tree SetupComment

AC1000C2000PayablesReceivablesCompanyPartnerDisplay Category PayablesDisplay Category Receivables

BC1000C2000Open ItemsCompanyPartnerDisplay Category Open Items containing both receivables and payables accounts

Process 002:Example Tree SetupComment

C1000C2000RevenueExpenseCompanyPartnerDisplay Category RevenueDisplay Category Expense

Process 003:Example Tree SetupComment

AC1000C2000PayablesReceivablesCompanyPartnerDisplay Category PayablesDisplay Category Receivables

BC1000C2000PayablesReceivablesOpen ItemsCompanyPartnerDisplay Category PayablesDisplay Category ReceivablesDisplay Category Open Items containing both receivables and payables accounts

This maintenance is set up as a hierarchy of 3 steps:1. Reconciliation Processes2. Display Categories3. Display SubcategoriesFirst you have to choose for which process you would like to maintain the display categories.On the next level you create the display categories. All you need to do here is to give the display category an ID and a description. If you set up several display categories they will be displayed in the order of the Display Category ID. Whatever you choose as your description is the text which will be displayed in the navigation hierarchy.On the third level you specify which sets are supposed to be included in the display, i.e. if you choose a display category in the navigation tree, which documents are supposed to be shown. For each entry you specify both a set for the company and for the partner data records. You could look at the display categories as sort of a filter for the data to be reconciled.Please refer to the examples below for further details.Example Display CategoriesProcess 001:SubcategorySeqNrCompany FieldCompany SetPartner FieldPartner Set

10010RACCT2000 ReceivablesRACCT3000 Payables

Table 16: Process 001 Display Category 100 Receivables

SubcategorySeqNrCompany FieldCompany SetPartner FieldPartner Set

10010RACCT3000 Payables RACCT2000 Receivables

Table 17: Process 001 Display Category 200 Payables

SubcategorySeqNrCompany FieldCompany SetPartner FieldPartner Set

10010RACCT1000 AllRACCT1000 All

Table 18: Process 001 Display Category 300 Open Items

Process 002:SubcategorySeqNrCompany FieldCompany SetPartner FieldPartner Set

10010RACCT4100 Rev. HWRACCT5100 Exp. HW

10020RACCT4200 Rev. SWRACCT5200 Exp. SW

10030RACCT4300 Rev. Lic.RACCT5300 Exp. Lic.

Table 19: Proces 002 Display Category 100 Revenue

SubcategorySeqNrCompany FieldCompany SetPartner FieldPartner Set

10010RACCT5100 Exp. HWRACCT4100 Rev. HW

10020RACCT5200 Exp. SWRACCT4200 Rev. SW

10030RACCT5300 Exp. Lic.RACCT4300 Rev. Lic.

Table 20: Proces 002 Display Category 200 Expense

Process 003:SubcategorySeqNrCompany FieldCompany SetPartner FieldPartner Set

10010RCUST6000 CustomersRVEND7000 Vendors

Table 21: Process 003 Display Category 100 Receivables

SubcategorySeqNrCompany FieldCompany SetPartner FieldPartner Set

10010RVEND7000 VendorsRCUST6000 Customers

Table 22: Process 003 Display Category 200 Payables

SubcategorySeqNrCompany FieldCompany SetPartner FieldPartner Set

10010RCUST6000 CustomersRVEND7000 Vendors

10020RVEND7000 VendorsRCUST6000 Customers

Table 23: Process 003 Display Category 300 Open Items

Define Possible Status for DocumentsIn this activity you can maintain the status texts and icons to be used during interactive reconciliation. Two status fields are defined as part of the standard delivery:1. Communication Status2. Processing StatusThe following status icons and values are delivered as part of the standard for each process:Communication StatusStatusTextIcon

10Mail Sent

20Fax Sent

30Talked on Phone

40Created Note

Table 24: Communication Status Delivered ValuesProcessing StatusStatusTextIcon

10In Process

20On Hold

30Clarification Needed

40Requested Correction Posting

Table 25: Processing Status Delivered Values

Define EnhancementsUse this activity to implement BAdI FB_RC_PRESENTATION.The following BAdI methods are available:MethodUse

ADD_CUSTOMER_UI_FUNCTIONSAdd Functions to Main Toolbar

CHANGE_DISPLAY_GRIDChange Properties / Settings of the Grid Controls

CHANGE_MESSAGEChange Message Text (e.g. Replace Placeholders)

CHANGE_NAVIGATION_TREEChange Properties / Settings of Navigation Tree

CHECK_ASSIGN_OKCheck Whether Assignment Is OK

CHECK_UNASSIGN_OKCheck Whether Assignment May Be Deleted

CONTACT_PERSON_CHANGE_AUTHCheck Whether User Has Authority to Change Contact Person

DISABLE_STANDARD_UI_FUNCTIONSDisable Standard Functions of User Interface

MAP_COMPANY_IDSDo not use!

PROCESS_CUSTOMER_UI_FUNCTIONSProcessing for Added Functions

NAVIGATION_TREE_ADD_ITEMSAdd Items to Navigation Tree (e.g. Additional Columns)

Table 26: BAdI FB_RC_PRESENTATION: Available MethodsPlease refer to the implementation of CL_IM_FB_RC_PRESENTATION for detailed information and example implementations of the individual methods.

Communication SupportThe communication support of ICR contains the functions to maintain a contact person database and to create and send template based messages. The contact persons can be used as recipients for these messages.Define Application IDIn this activity you can define application IDs. The mandatory ID for Intercompany Reconciliation is FBRC which is part of the delivered customizing.Define Contact Person DatabaseIn this step you can set up the contact person databases you would like to use as part of ICR. Simply define a contact person database by specifying a Contact Person Database ID and maintaining a description. In the fields Group By Table and Group By Field you can specify whether you would like to group contact persons by organizational units. If you would like to group the contact persons by companies you have to specify table T001 and field RCOMP. NoteIf you are using secondary organizational units and would like to organize your contact persons accordingly you would have to specify a different table and field. When using the communication support functionality of the interactive reconciliation the program will automatically suggest the contact persons maintained for the partner company of the current display. Depending on the number of contact persons per organizational unit you could also group the contact persons by company and then use a field like Department to enable your users to find the best recipient.Use function Maintain Contacts to navigate to the contact person maintenance. If you supplied a table and field name you will be prompted to select an organizational unit. If do not choose an organizational unit the system will display the complete list of existing contact persons. However, if you create a new contact person this contact person will not be assigned to any organizational unit.Maintain Placeholders for MessagesIn this step you can define placeholder to be used in messages. The following placeholders are delivered for all three processes and will be replaced by the standard functionality of ICR:PlaceholderDescription

00005Key Date

00010Company

00015Company's Documents

00020Partner

00025Partner's Documents

00030Assigned Documents

00040User's Name

Table 27: Delivered PlaceholdersIf you create additional placeholders you have to replace them in a BAdI implementation (FB_RC_PRESENTATIONCHANGE_MESSAGE).Maintain Message TemplatesIn this activity you can create message templates which can be used during interactive reconciliation to send messages including information about the context and the documents of the current reconciliation.The placeholders which were defined in the previous step can be inserted and deleted using special functions in a toolbar. You can use the function Import Template in order to import any other existing template in any language in which it has been maintained. This is useful if you would like to create a second template with a similar text or if you want to translate a template into a different language.Preparations in the Sender SystemIf your sender system has a release before ERP2004 please refer to note 789243 for additional information.General SettingsUse the steps in this part of the IMG to check whether the assignments of company codes to companies is complete. For process 001 and 002 you should check whether the relevant operational accounts have been assigned to the appropriate group accounts. For Process 003 you need to check whether the customer and vendor accounts have been set up with the appropriate trading partner.Define EnhancementsYou can implement some of the BAdI methods in the sender system as well. Use these activities to implement the appropriate ones.Open Item ReconciliationNo additional activities are necessary for process 001 and process 003.GL Account ReconciliationIn order to support data selection from the sender ledger you may have to complete the steps in this branch of the IMG. You need to at least make sure that the tables are not inactive and that you define a ledger, assign the appropriate companies, activities, and ledger selections.Technical DetailsData SelectionThis part of the document describes the program logic of the data selection programs. While there are 3 different data selection programs most of the logic is implemented in class CL_FBICRC_SERVICES.As a first step the program selects the specified companies from table FBICRC01010 and checks whether the user is authorized to run data selection for the specified companies (authorization object F_RPROC). If the user specified any companies without having the proper authorization the program will display warning messages regarding these companies and they are excluded from processing. It is not necessary to change the selection criteria, though.If the program is not running in test mode the program will then try to lock the companies for which data is supposed to be selected. If any of the companies are already locked the program will create corresponding messages for the log and exclude the companies from processing.The remaining companies will then be analyzed regarding their RFC connections. The companies are grouped depending on the RFC connection and the data transfer type. The RFC connections are then checked in parallel tasks running in the reconciliation system. The program first checks the availability and the release of the sender system using function module RFC_SYSTEM_INFO. Next the program will call function module FB_ICRC_RCOMP_RFC_DEST_CHECK (FB_ICRCS_RCOMP_RFC_DEST_CHECK for releases < ERP2004). This function module checks whether any company codes are assigned to the specified companies, passes back the logical system for each company, and updates the DDIC structures for data selection (FBICRC_S_SELECT_001, FBICRC_S_SELECT_002, or FBICRC_S_SELECT_003 depending on the process). If there are issues with the RFC connection, no company code has been assigned or the DDIC structure cannot be updated the program will add corresponding messages to the log and exclude the respective companies from processing.If the program is running in update mode the program sets the status of the remaining companies to 3 Reconciliation Running.For processes 001 and 003 the program derives the key date for open items using the year and period entered on the selection screen in combination with the fiscal year variant from the reconciliation process detail attributes (transaction FBIC010).ExampleReconciliation Process Detail Attributes Fiscal Year VariantK4

Fiscal Year entered on selection screen2010

Posting Period entered on selection screen12

Key date for selection of open items31 December 2010

Table 28: Key Date for Open Item SelectionThe selection restrictions and fields to be selected are added to internal tables which will later be used for data selection. The program will create packages of companies which can be selected with one RFC using the logical system determined with function module FB_ICRC_RCOMP_RFC_DEST_CHECK, the selection strategy of the individual companies, the transfer type and the data source.Now the actual data selection is executed in the following order depending on the transfer type and the data source.Nr.Transfer TypeData Source

1. 2 Asynchronous Triggered From Reconciliation SystemSPACE Documents of Current Process

2. 2 Asynchronous Triggered From Reconciliation System1 Documents of Other Process

3.Z Other2 File Upload

4.1 Synchronous via XISPACE Documents of Current Process

5.1 Synchronous via XI1 Documents of Other Process

6.SPACE Asynchronous via Direct RFC Connection SPACE Documents of Current Process

7.SPACE Asynchronous via Direct RFC Connection 1 Documents of Other Process

Table 29: Order of Data Selection Depending on Transfer Type and Data SourceNoteThe RFC users in the sender systems require authorization for authorization object S_RFCFieldValue

RFC_TYPEFUGR

RFC_NAMESDIFFBICRC_SERVICES (sender system > ERP2004)FB_ICRCS_SERVICES (sender system < ERP2004)

ACTVT16 (Execute)

Table 30: Authorizations for RFC usersWhen all of this has been completed the program calls BAdI method SUPPLY_OTHER_DATA. If any data is supplied via BAdI the transferred data records are checked using function module FB_ICRC_BADI_DATA_CHECK.For processes 001 and 003 all currently relevant open items have to be transferred each time the data selection program is executed. The logic for standard data selection is implemented in function modules FB_ICRC_BS_S_SEL_RFC for process 001 and FB_ICRC_BS_DK_SEL_RFC for process 003. If any of your companies provide their data records via upload files they need to ensure that the upload files also contain all relevant open items.For process 002 only newly posted items have to be transferred. The logic for standard data selection is implemented in function module FB_ICRC_LEDGER_SEL_RFC. The function module reads data records with RTYPE SPACE from the sender ledger on table FBICRC002A (FICRCS002A for releases > ERP2004) specified in the Reconciliation Process Detail Attributes. If the program is running in update mode the function module will set field RTYPE to 4 for all data records which were transferred. If new documents are posted in the sender system they will be transferred to the ledger with RTYPE SPACE. These new data records will be included in the next data selection program run. If there are problems with the selected data in the reconciliation system you can delete them using the appropriate auxiliary program. The data records can then be retransferred using the respective option on the selection screen of FBICS2.As a next step the data records are completed. For process 002 this mainly means that the BAdI method ADD_INFORMATION_TO_DATA_RECORD is called. For processes 001 and 003 the programs compares the currently transferred data records to the previously transferred data records. If a data record was transferred again it is updated with the information from the new data selection run (e.g. changed reference number). If a data record is transferred for the first time it will be added to the reconciliation database. If a data record was transferred in a previous data selection but is not transferred in the current program run because it was cleared or cancelled in the meantime it is deleted from the reconciliation database.Previously transferred data records are identified by the combination of the following parameters: Company Sequential Number Fiscal Year Period VersionThis means that if one of the companys data sources (identified by the combination of company and sequential number) should fail or be excluded during one program run the data of this data source is not deleted but remains untouched.A side-effect of this logic is that once data has been loaded into a period for a specific data source the only way to delete all of that data is to use the respective auxiliary program. This also means that if you should rename your companies i.e. copy the entries and give the new entries a different sequential numbers and then delete the original entries existing data records will not be migrated. You have to delete the data and then run data selection to have the data records available.During this program phase the number of transferred data records is created so it can be used in the protocol.In case the program is running in update mode the changes to the data are posted to the database. Right before the changes are saved, BAdI method CHANGE_DATA_TABLE is called. Afterwards the protocol information is split up into individual logs for each company and stored for later reference. Then the companies status is updated and the totals are recalculated to reflect the changes to the documents.As a last step the protocol is displayed.

Data AssignmentThis part of the document describes the program logic of the data assignment programs. While there are 3 different data selection programs the main logic is implemented in class CL_FBICRC_SERVICES and in function module FBRC_RUN_AUTOEXEC_RULES.As a first step the program selects the specified companies from table FBICRC01010 and checks whether the user is authorized to run data selection for the specified companies (authorization object F_RPROC). If the user specified any companies without having the proper authorization the program will display warning messages regarding these companies and they are excluded from processing. It is not necessary to change the selection criteria, though.If the program is not running in test mode the program will now check whether any of the companies is locked for data selection. If any of the companies are already locked the program will create corresponding messages for the log and exclude the companies from processing. Now the documents for the specified business relationships are selected and split up into packages per company and partner. In case of an update run each data record is locked. Each of the packages is then analyzed by function module FBRC_RUN_AUTOEXEC_RULES in a separate task according to the information specified in parameters Server Group and Max. Calls per RFC Destination on the selection screen. After processing of each rule, BAdI method PROCESS_AFTER_ASSIGN_SINGLE is called. After all rules have been processed BAdI method PROCESS_AFTER_ASSIGN_ALL is called.In case of an update run the changes in assignment are saved and the locks on the individual records are released. Right before the changes are saved, BAdI method CHANGE_DATA_TABLE is called. Also, individual logs per company are created and stored.As a last step the protocol for the program run is displayed.Change HistoryDateVersionChanges

17 January 20071.0Release of original version

18 June 20071.11. New example data in Table 15: Example Set Definition #2 for customer and vendor accounts2. Additional information regarding special ledgers in 3.1.2.2 Define Ledger

Table 31: Change History

Seite 10