on 03-31-2015 7:37 AM
Hello Experts,
I have a requirement in SAP BPC 10.0 NW.
Suppose Vendor accounts has debit balance and that should reflect under Assets in a particular period and in subsequent periods, if the balance changes to credit balance then again naturally it will be in liability side in Balance sheet. Similarly, there are customer accounts also for which, I am looking how to implement this account changes in BPC.
We have Account shift functionality in SAP ERP, but I need some help in how to achieve this functionality in BPC reports.
Thanks in advance & Kr,
Mohammed Habeeb
Hi Mohammed,
Not clear - do you want to do accounting in BPC? In general you upload data from ERP with already correct accounts...
If you want to do this in BPC you can use script logic with ternary operator:
*XDIM_MEMBERSET ACCOUNT=ACC1
...
*REC(EXPRESSION=%VALUE%>0 ? %VALUE% : 0, ACCOUNT=ACC2)
*REC(EXPRESSION=%VALUE%>0 ? 0 : %VALUE%)
...
Vadim
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Vadim,
Thank you for reply.
I need to show the account in a Balance Sheet Report based upon its balance if vendor account has debit balance it should appear in Asset side and if it has credit balance then it should appear in Liability side, same is the case with customer accounts also.
I want this behavior to be automatic based upon the account balance ( debit or credit balance).
Thanks & Kr,
Mohammed Habeeb
Hi Mohammed,
to replicate this behaviour in BPC you need to accounts for each account that requires this behaviour. Let's say your source system delivers data on one account which is either an asset or a liability. You will need two accounts in BPC, one an asset account and one a liability account. You can then either use a conversion file to load the data based on it's sign directly to either of the two accounts. Or you load the data always to one account and then use a script with the ternary operator as described by Vadim above.
An account in BPC cannot change it's position in the hierarchy depending on an amount.
BR,
Arnold
Incorrect syntax, you can't use REC without WHEN/ENDWHEN - please read help about script logic operators and statements. Basic knowledge is required for script writing.
Vadim
P.S. correct code will be like:
*XDIM_MEMBERSET ACCOUNT=ACC1
*WHEN ACCOUNT
*IS * //scoped already to ACC1
*REC(EXPRESSION=%VALUE%>0 ? %VALUE% : 0, ACCOUNT=ACC2)
*REC(EXPRESSION=%VALUE%>0 ? 0 : %VALUE%)
*ENDWHEN
Vadim
Hi Habeeb,
This is normally based on an IFRS Consolidation Reporting requirement stating that the Balance Sheet accounts having balances contrary to their original nature(Asset accounts=positive balance, Liability = negative ) have to now be represented correctly. For instance if the Account Receivable account shows a credit or negative balance, the same has to be classified under Liabilities instead of Assets and vice versa.
In my opinion and as far as my knowledge is concerned, BPC will not be able to handle this requirement directly and any workarounds are going to be messy if you take in all scenarios. I will be definitely happy to be proved wrong in this case!
As Arnold explained above, you can definitely push the balance to specially created accounts on opposite sides of the balance sheet through conversion files while the data is getting loaded. But this might be tricky and messy later on because of the following:
1. After data upload, any business rules/script logic/journal adjustments or reversals tend to make a positive balance into negative balance or vice versa.
2. The unposting of a journal entry - If for some reason, the journal you posted under step 1 needs to be unposted, your script would need to restore the balance back to the original account.
3. Reconciliation of data will be a headache if it is handled through script logic automatically even though you might use a separate auditID.
The clean and best approach would be to perform a one time reclassification of the balances for these accounts to the assets/liabilities side under a separate audit trail using journal template. This will also handle point 2 above and can also be shown as a post consolidation adjustment. I am sure that once this has been explained properly, this solution would be appreciated and adopted.
Will be happy to know if anyone has a better solution than the above.
Regards
Shiraj Jahafar.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
instead of reclassifying during the load process we often use a script and a separate datasource. So we load to the original account and then on a separate datasource we move the data from the original account to the new technical account. Neither of those two datasources would be open for journals and we will perform a carry forward of opening balances on both. So far this has worked quite well for us even on accounts where we load/use flows instead of just a balance.
BR,
Arnold
Hi Mohammed,
Is it working for you, I checked the above code it is not working for me.
Dear Vadim,
When I applied the Logic script in my case it is validating the script successfully, but this balance shift is not happening.
Does, I am missing any thing, please suggest.
Thanks,
SAIF
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Mohammed,
It depends on the look of your report and your account setup (signs etc), but maybe this could give you an idea. Create two reports with all B/S accounts. Then apply filtering so that in the first report you exclude negative numbers and in the second one you exclude positive ones.
/Cecilia
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
6 | |
5 | |
2 | |
1 | |
1 | |
1 | |
1 | |
1 | |
1 | |
1 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.