Showing posts with label SKB1. Show all posts
Showing posts with label SKB1. Show all posts

Jul 16, 2020

Changing a GL Account to Open item managed in S/4 HANA

For those like me that are coming from the old Era of SAP ECC6.0 or before, we used to have 2 different Abap programs that we could run to Switch ON/OFF the Open Item Management flag out of a GL Account Master Data.
Programs
RFSEPA03  Switch OFF Open Item Management
RFSEPA02  Switch ON Open Item Management

This was really helpful because either during Project or Production Support, somehow there was always the need to Flag or Unflag a GL account in terms of "Open Item Management". With the help of those 2 programs, we were able to troubleshoot this requirement.

Now in S/4 HANA those 2 programs are obsolete and cannot be used anymore. They have been replaced by a new program FINS_SWITCH_TO_OPEN_ITEM, it even has its own Tcode too FAGL_ACTIVATE_OP or FINS_ACTIVATE_OIM.

But first to be able to have access and use this program you need to implement an OSS Note that will bring this program into your environment ( 2745769 - FINS_SWITCH_TO_OPEN_ITEM: Activation of Open Item Management ).

Once the OSS Note is Implemented, you can Execute the program.



  • With this program you can either Activate or De-activate the Open Item Management of any GL Account.
  • It has to be run Account by Account, you cannot execute multiple GL Accounts at the same time.
  • But, you can do it for Multiple Company Codes.
  • You can Switch on at a specific Date.

For the "Test run" mode you can do it online, but once you remove the Test run it needs to be executed in the Background and then you will have to review the Execution Log.

Once the program executed, you can verify you GL Account Master Data (FS00) and you will see that the "Open Item Management" flag has been removed or added to the GL record.


If your Company and/or Project needs to implement this, or any of the functionalities described in my Blog, or advise about them, do not hesitate to reach out to me and I will be happy to provide you my services.

Jan 8, 2019

ALE Chart of Accounts to other environments

One of the big challenges during an SAP FICO implemention is the creation of numerous GL accounts all along the project. Depending on the type of client, project we could start by an standard SAP chart of accounts a build on top of it; but no matter what, we will always have to create new GL accounts. In some projects I ended up creating up to 150 new GL accounts out of a Chart of account of 700 GL accounts, which gives us more than 20% of new accounts to create.
In those cases, you would end up creating some sort of migration program like an LSMW, or something else. But unfortunately, sometimes those accounts do not come all at once from your client as they are still deciding and have not come with a final list all at once. 
So every time a new series of accounts needs to be created, you need to create them in several environments (DEV, QA, Training and PROD). Except for Prod, all the rest will most likely have several clients each where you will also have to create the accounts. At the end you have at least a minimum of 8 if not more environments / clients to maintain if you want to have everything in sync, which could be quite a challenge and effort. This is highly recommended because if do not do it, then you will have inconsistencies and discrepancies all over the place. And in most of the cases you need to create them in your Golden DEV Config client as normally you need to update config for Document Splitting, Automatic Account determination or other config points as well.

So, How do you keep in sync all the environments without a lot of effort ? There are different ways of doing it that I will list here from more to less effort

#1 - Create all the accounts manually in each environment / client.
#2 - Create an LSMW and run it on every single environment / client.
#3 - Transport the entire Chart of Accounts (including the Co.Code portion of it, as I already mentioned in another post) 
#4 - ALE the Chart of Accounts from your Config Golden DEV Client to any other clients and environments (including Prod).

How do you ALE your Chart of Accounts across your SAP Landscape ?

#1 You will need to create what is called a "Distribution Model" that will allow you to do the setup for your ALE (Application Link Enabling (ALE) is a mechanism for the exchange of business data between loosely-coupled R/3 applications built by customers of SAP).

Tcode: SALE (in your Golden DEV Config client, DEV-200)


Create your Distribution Model

First you will create the Model (Like ALEDISTRIB in the image), then you will create a sub level which will be your source client (Ex S4DCLNT200). Always the 3 letters for the instance name, then the CLNT for client and last the Client #. 
After that you will create another level underneath S4DCLNT200 for your Target Client. In my case S4DCLNT211.


Then you will click in "Add Message Type" and this is where you will add your IDOC  / Message Type that we will be used to ALE our Chart of accounts.
We will add two different ones.

GLCORE: Chart of Accounts section / level
GLMAST : Chart of Account and Company Code level (recommended)

As you can see I have other set of Message Types in this Distribution Model which are used for other Master Data objects (like Profit Center, Cost Centers, etc.), which eventually will be covered by other Posts.

Now that you have created the Distribution Model and added your Message Types, you will need to create your Partner Profiles so then when the IDOCs are generated, the system will know what to do and where to send them. There is an automatic option that will do that for you.





After running this process your Outbound Partner profiles will be created in WE20 (see below the result).
** At this point you might receive some errors due to missing RFC connections from 200 to any other client. Raise a request to your Basis resource to create all of these missing RFCs and re-do the Generate Partner Profile step.




At this point your setup in your DEV Config Golden client has been completed. If you want to expand your Distribution Model so you can ALE your Chart of Accounts to other Target Clients or Environments, you need to create another sub-level hanging from S4DCLNT200 and create another one Ex. S4QCLNT400 for a QA 400 Client. And Create the Outbound Partner profiles as well

Create Inbound Partner Profile in your Target Client/s

Now for every Target client that you have defined in your Distribution Model, you need to go in individually and create your Inbound Partner profiles so the Target system can receive and process the IDOCs.

Tcode: WE20 (Ex in DEV-211 as my Target Client)


Once you create it, you will SAVE it.
After this you have finished your ALE Setup that will allow you to Distribute your Chart of Accounts Master Data from 200 into 211 client.

Send Chart of Accounts from 200 to 211 using ALE

Tcode: BD18


This Tcode is the one that will trigger the IDOC creation based on the selection criteria that we will enter. (Ex. Chart of Accounts, Company Code, GL #s).
Then you will specify your Logical Message GLMAST (to transfer Chart of accounts and company code data) and the receiving system.
Then execute and the system will start generating the IDOCs. The process might take a while to generate all the IDOCs, so be patient.

To monitor the progress of this you might want to open IDOC monitoring transactions like WE02 / WE05 on both clients (Sender and Receiver) so you can see the number of IDOC being process, sent, or in error.

WE02 in Sender Client 

WE02 in Receiver Client

In some cases and under unknown circumstances, the Sender system generates the IDOCs but does not process / sends them right away. For that you can execute BD87 to re-process them and they will get sent out.

In future Posts I will publish other Master Data Objects that can be transferred using ALE.


If your Company and/or Project needs to implement this, or any of the functionalities described in my Blog, or advise about them, do not hesitate to reach out to me and I will be happy to provide you my services.

Feb 26, 2011

Transport Chart of Accounts and Company Code Chart of Accounts dependent Data

If you want to transport the Chart of Accounts, there are 2 parts that you need to keep in mind in order to transport it.

First part, you transport the Chart of Account itself with Tcode OBY9. In this transaction you transport only the General part of the Chart of Account as account numbers, descriptions, type of account and other general data.

As soon as you open the transaction it will ask you to provide a transport request for your activity.

Select Transport Request
After selecting the transport, you need to specify the Chart of Accounts number / Code that you wish to transport.
Select Chart of Accounts Code / Number
Then you will access to OBY9 main screen where you can select different options.
OBY9 - Main Screen - Transport Chart of Accounts
Here select "Accounts in Chart of Accounts" and also "name in all languages", so if you have more than one language in your system it will transfer the descriptions in all the languages that you have maintained.

As part of this transaction you can also have the chance to include in your transport request other FICO account determinations such as, FI account determination, AM account determination, CO account determination, MM, HR and SD.

By doing this you only transport the General part of the Chart of Accounts but you do not include the Company Code dependent settings of your individual accounts. If you have only 1 Company code, that is not a mayor problem. But ... if you have several company codes that uses the same chart of accounts that can be a real maintenance problem to create or maintain that in each individual environment. 

As part of my experience, I've been working in an implementation where the customer had 43 Company Codes. Yes, I am not mistaken, they had 43 and all in the same country and province. So in this case we needed something quicker in order to maintain and transport the Chart of Accounts for that huge amount of Companies.

As I mentioned before, I was talking about 2 parts for this process...

The second part of this process is to Transport the Company Code dependent data. For this there is no official transaction (as far as I know) and you need to get yourself inside of the transport management to do a couple of things manually.

Assuming that you already have a transport request created, you will use Tcode: SE09 - Transport Organizer; and select the "Display" button.
SE09 - Transport Organizer
SE09 - Display Transports

You will get the list of all your transports. Then select the transport that you will use to include this activity. Ex. like this transport that I created. Do a double-click in your sub-activity / transport task.

Transport Request selection.



In your "Objects" tab where you have the details of the information that you have in that transport, modify your transport by clicking in "Pencil icon" to edit your transport. Add a line like this 
TABU Object Type and Object name SKB1
 Include R3TR (Object) as Program ID, TABU Object Type (which means "Table of Contents") and then in Object Name SKB1 which is the table that has the Company Code Dependent data for the Chart of Accounts.

Once you add the line, do a double click to indicate which are the keys of the table that you want to transport.

SKB1 Keys
As you can see in this example, "200" represents the Golden client where I am transporting from, "1000" the Company Code data that I want to transport and "*" for all records in that key.

Also in this example you can see that I included Company Codes 2000 and 3010.

You can include here as many entries or Company Codes that you want following this concatenated logic.


If your Company and/or Project needs to implement this, or any of the functionalities described in my Blog, or advise about them, do not hesitate to reach out to me and I will be happy to provide you my services.