Accounting interest in TRM.
Hello colleagues.
We are experiencing a situation in one of our client when we have a Decrease of the amount of a Fixed-Term Deposit contract.
Details bellow:
Percentage Rate: 2%
Contract starts on 08.01.2010
Contract ends on 08.07.2010
If I set the field "Frequency" MONTHLY in Interest structure of TAB Structure. I have the following cash of flow for the contract:
Pmnt Date FTyp Flow Type (Name) PmntAmt Direction
08.01.2010 1100 Investment / Increase 1.000,00- - Investment of U$$ 1.000,00
20.01.2010 1110 Decrease 200,00 + Decrease of amount
08.02.2010 1200 Nominal interest 0,63 +
The interest gained until 20.01.2010 is reflected on 08.02.2010 and not on 20.01.2010. What I mean is the bank credit on 20.01.2010 in the bank account the amount 200,00 plus the interest relevant until 20.01.2010 (0,63). If I leave this value on date 08.02.2010 it reflects in a wrong way the interest value in our financial statements and in Cash Management
08.02.2010 1200 Nominal interest 0,83 +
08.03.2010 1200 Nominal interest 1,14 +
08.04.2010 1200 Nominal interest 1,40 +
08.05.2010 1200 Nominal interest 1,27 +
08.06.2010 1200 Nominal interest 1,33 +
08.07.2010 1120 Final repayment 800,00 +
08.07.2010 1200 Nominal interest 1,40 +
Another situation for the same case is bellow:
If I set the field "Frequency" MANUAL INPUT and the field "All" with 1 DAYS in Interest structure of TAB Structure. I have the following cash of flow for the contract:
Pmnt Date FTyp Flow Type (Name) PmntAmt Direction
08.01.2010 1100 Investment / Increase 1.000,00- -
11.01.2010 1200 Nominal interest 0,08 +
12.01.2010 1200 Nominal interest 0,08 +
13.01.2010 1200 Nominal interest 0,08 +
14.01.2010 1200 Nominal interest 0,08 +
15.01.2010 1200 Nominal interest 0,08 +
18.01.2010 1200 Nominal interest 0,08 +
19.01.2010 1200 Nominal interest 0,08 +
20.01.2010 1110 Decrease 200,00 + Decrease of amount
20.01.2010 1200 Nominal interest 0,08 +
In this situation, we have movements of interest daily. The problem here is, when we run accounting for the contract, SAP will create several accounting documents, one document per movement. I don´t believe this is a problem for accounting but this is a problem for Cash Management that will not reflect the total amount of interest on day 20.01.2010 and besides that the Value Date of accounting documents will be the day of each day movement.
21.01.2010 1200 Nominal interest 0,06 +
22.01.2010 1200 Nominal interest 0,06 +
25.01.2010 1200 Nominal interest 0,06 +
26.01.2010 1200 Nominal interest 0,06 +
Finally, my question is, is there any way/any customizing so I can have the interest amount reflected on the same day of the decrease of amount movement?
I tried Derived Flows but it did not work properly.
Any help is really appreciated.
Best Regards,
Volnei.
Hi,
On the "Structure" tab; next to Condition Type for nominal interest, there is a button for "Detail View Int. Conditions"; click on that. In the "Update" section; click on Special and select rule "Single Dates". There, put the dates (where your principal is adjusted or the month end dates).
Manish
Similar Messages
-
Hello people.
Please, I really need help with the customizing to create payments in Account Payables from TRM contracts.
Example: I have a fixed-term deposit with transaction "Borrowing". I will have "payments" movement in my contract every month.
Accounting rule for payment must be:
Debit: Borrowings Account
Credit: Vendor
What should I do in customizing to post a document for a vendor in AP beside linking the TRM Business Partner with a Vendor?
In the account determination for update types I can assign just G/L accounts and not Vendor´s account number.
Please, any suggestion/links to find documentation about this will be extremally helpful.
Thanks a lot.Hello Srs.
I could find and understand what you mentioned bellow:
"When assigning your update types to posting specifications, there is a check box for payment transaction. Specify a new posting specification and assign the customer account symbol."
But, I can´t find a way to assign a customer account to an account symbol instead of a G/L account. I couldn´t find an option to assign a customer account. Could you clarify how can I do that?
Thanks a lot! -
FI Bank Account Interest Calculation
How to customize compound interest calculation on bank accounts in the Bank Account Interest Calculation?
Hi,
The process for configuring the system to calculate Interest on bank account is as follows:-
1.Define reference Int Rates
2.Enter Interest Values
3.Prepare GL account balance interest calculation for interest posting
Then you execute F.52 for calculating the interest by providing the required parameters
Regards
Phani -
TRM Accounting interest.
Hello colleagues.
We are experiencing a situation in one of our client when we have a Decrease of the amount of a Fixed-Term Deposit contract.
Details bellow:
Percentage Rate: 2%
Contract starts on 08.01.2010
Contract ends on 08.07.2010
If I set the field "Frequency" MONTHLY in Interest structure of TAB Structure. I have the following cash of flow for the contract:
Pmnt Date FTyp Flow Type (Name) PmntAmt Direction
08.01.2010 1100 Investment / Increase 1.000,00- - Investment of U$$ 1.000,00
20.01.2010 1110 Decrease 200,00 + Decrease of amount
08.02.2010 1200 Nominal interest 0,63 +
The interest gained until 20.01.2010 is reflected on 08.02.2010 and not on 20.01.2010. What I mean is the bank credit on 20.01.2010 in the bank account the amount 200,00 plus the interest relevant until 20.01.2010 (0,63). If I leave this value on date 08.02.2010 it reflects in a wrong way the interest value in our financial statements and in Cash Management
08.02.2010 1200 Nominal interest 0,83 +
08.03.2010 1200 Nominal interest 1,14 +
08.04.2010 1200 Nominal interest 1,40 +
08.05.2010 1200 Nominal interest 1,27 +
08.06.2010 1200 Nominal interest 1,33 +
08.07.2010 1120 Final repayment 800,00 +
08.07.2010 1200 Nominal interest 1,40 +
Another situation for the same case is bellow:
If I set the field "Frequency" MANUAL INPUT and the field "All" with 1 DAYS in Interest structure of TAB Structure. I have the following cash of flow for the contract:
Pmnt Date FTyp Flow Type (Name) PmntAmt Direction
08.01.2010 1100 Investment / Increase 1.000,00- -
11.01.2010 1200 Nominal interest 0,08 +
12.01.2010 1200 Nominal interest 0,08 +
13.01.2010 1200 Nominal interest 0,08 +
14.01.2010 1200 Nominal interest 0,08 +
15.01.2010 1200 Nominal interest 0,08 +
18.01.2010 1200 Nominal interest 0,08 +
19.01.2010 1200 Nominal interest 0,08 +
20.01.2010 1110 Decrease 200,00 + Decrease of amount
20.01.2010 1200 Nominal interest 0,08 +
In this situation, we have movements of interest daily. The problem here is, when we run accounting for the contract, SAP will create several accounting documents, one document per movement. I don´t believe this is a problem for accounting but this is a problem for Cash Management that will not reflect the total amount of interest on day 20.01.2010 and besides that the Value Date of accounting documents will be the day of each day movement.
21.01.2010 1200 Nominal interest 0,06 +
22.01.2010 1200 Nominal interest 0,06 +
25.01.2010 1200 Nominal interest 0,06 +
26.01.2010 1200 Nominal interest 0,06 +
Finally, my question is, is there any way/any customizing so I can have the interest amount reflected on the same day of the decrease of amount movement?
I tried Derived Flows but it did not work properly.
Any help is really appreciated.
Best Regards,
Volnei.
Edited by: Volnei Luiz Cecon Júnior on Jan 8, 2010 4:46 PMOw! My reply worked fine. Let´s try again.
Hello colleagues.
We are experiencing a situation in one of our client when we have a Decrease of the amount of a Fixed-Term Deposit contract.
Details bellow:
Percentage Rate: 2%
Contract starts on 08.01.2010
Contract ends on 08.07.2010
If I set the field "Frequency" MONTHLY in Interest structure of TAB Structure. I have the following cash of flow for the contract:
Pmnt Date FTyp Flow Type (Name) PmntAmt Direction
08.01.2010 1100 Investment / Increase 1.000,00- - Investment of U$$ 1.000,00
20.01.2010 1110 Decrease 200,00 + Decrease of amount
08.02.2010 1200 Nominal interest 0,63 +
The interest gained until 20.01.2010 is reflected on 08.02.2010 and not on 20.01.2010. What I mean is the bank credit on 20.01.2010 in the bank account the amount 200,00 plus the interest relevant until 20.01.2010 (0,63). If I leave this value on date 08.02.2010 it reflects in a wrong way the interest value in our financial statements and in Cash Management
08.02.2010 1200 Nominal interest 0,83 +
08.03.2010 1200 Nominal interest 1,14 +
08.04.2010 1200 Nominal interest 1,40 +
08.05.2010 1200 Nominal interest 1,27 +
08.06.2010 1200 Nominal interest 1,33 +
08.07.2010 1120 Final repayment 800,00 +
08.07.2010 1200 Nominal interest 1,40 +
Another situation for the same case is bellow:
If I set the field "Frequency" MANUAL INPUT and the field "All" with 1 DAYS in Interest structure of TAB Structure. I have the following cash of flow for the contract:
Pmnt Date FTyp Flow Type (Name) PmntAmt Direction
08.01.2010 1100 Investment / Increase 1.000,00- -
11.01.2010 1200 Nominal interest 0,08 +
12.01.2010 1200 Nominal interest 0,08 +
13.01.2010 1200 Nominal interest 0,08 +
14.01.2010 1200 Nominal interest 0,08 +
15.01.2010 1200 Nominal interest 0,08 +
18.01.2010 1200 Nominal interest 0,08 +
19.01.2010 1200 Nominal interest 0,08 +
20.01.2010 1110 Decrease 200,00 + Decrease of amount
20.01.2010 1200 Nominal interest 0,08 +
In this situation, we have movements of interest daily. The problem here is, when we run accounting for the contract, SAP will create several accounting documents, one document per movement. I don´t believe this is a problem for accounting but this is a problem for Cash Management that will not reflect the total amount of interest on day 20.01.2010 and besides that the Value Date of accounting documents will be the day of each day movement.
21.01.2010 1200 Nominal interest 0,06 +
22.01.2010 1200 Nominal interest 0,06 +
25.01.2010 1200 Nominal interest 0,06 +
26.01.2010 1200 Nominal interest 0,06 +
Finally, my question is, is there any way/any customizing so I can have the interest amount reflected on the same day of the decrease of amount movement?
I tried Derived Flows but it did not work properly.
Any help is really appreciated.
Best Regards,
Volnei. -
G/L account interest calculation
Hello Experts,
I have an issue with F.52 interest calculation; we have calculating interest for the period 01.07.2011 to 31.07.2011. However, calculation went fine for all G/L account except two G/L account which has calculating interest for earlier periods also.
We analyze the issue and found out a one possibility, because of field u201CDate of Last Interest Runu201D however this field applies only when there is posting to G/L account with earlier date for which interest already been calculated. I have seen the documents which were wrongly picked in the interest run, and entry date is in earlier monthly only.
I do not understand why these two G/L accounts is picking the documents in the earlier periods to calculate the interest for the period 01.07.2011 to 31.07.2011.
Thanks in advance.
Regards,
MMHello Mauri,
Thank you very much for your reply.
First of all we are not using the G/L updation through this program.
I have an issue with only for the period 01.07.2011 and 31.07.2011 for two G/L account, and calculation is asolutely fine for all the earlier periods and even for next period 01.08.2011 ot 31.08.2011.
As per my understanding u201CDate of Last Interest Runu201D, applies only when there is posting to the G/L account with earlier date for which interest already been calculated.
If I keep the Date of Last Interest Run field blank, it calculate interest only for the period 01.01.2011 to 31.07.2011, however I can.t propose this solution because in all earlier periods they executed F.52 transaction with similar input parameter and calculation is absolutely fine.
Please let me know your view.
Regards,
MM -
Assign G/L accounts to account symbols in TRM
In TRM-transaction manager-general settings-accounting-link to other accounting components-define account determination
I want to assign the G/L accounts to account symbols.
I have a problem becaus i´m using :
10100 Receivables: Fixed-Term Deposit
10400 Payables: Other Money Market Transactions
When i´m done this, the system don´t show me teh account that i have with ++++++++. I have several banks account and don´t want to fix this bank account.
For example i have many account 251111xxxxx, If i put account 251111+++++ the system give an error and said the account doesn´t exist.I cannot fix this account because i have more accounts and i´m using the AcAsref 10100 and 10400.
Example:
1Position (book value) 001 10100 Receivables: Fixed-Term Deposit 131010+000
*1Position (book value) 001 10400 Payables: Other Money Market Transactions 251111++++*
3Bank clearing 001 10100 Receivables: Fixed-Term Deposit 120010+012
I thing that i´m doing the correct and i don´t know what is wrong.
If you have examples to see how to configure this i would appreciate
Thanks for your suggestions
João SimõesHi,
The + masking can only be done for bank account symbol. As I see from your case, you have used for position account symbol also which is not valid.
The account symbol needs to be defined as a bank posting. You can use it masking only for bank clearing account symbol.
Even though you have several bank accounts, at the balance sheet, you will only show 1 account as asset or liability depending on investment or borrowings. Hence your position account will be a constant account. Only the movement of money can be from different accounts which is defined by bank clearing posting specification which can be masked using +. Also make sure if your g/l account has only 6 charecters, then you need to add leading 0's till the total g/l account character size is reached.
Regards,
Ravi
Edited by: Ravishankar Ramamurthy on Apr 1, 2010 9:53 AM -
Foreign Exchange accounting in TRM
Dear Experts,
To give you brief intro, i am a finance person and user of SAP Treasury module. my knowledge of the module is of user level and not of functional or technical level.
i need your help on my below query.
for foreign exchange trades (60A), what should be the right accounting practice thru TRM (1) at time of of entering into deal (2) at time of maturity of transaction and also at time of (3) pre mature or part settlement of the transactions.
currently, i do not post any entry at time of creating 60A/102 deal.
at time of maturity, i does cash settlement in deal, put the cancellation rate, date of cancellation in date box to generate gain / loss and post the same (only cash settlement entry) thru TBB1
in case of part or early utilization or forward contract, i does the pre mature settlement from ftr_edit and copy paste 102 deal details in 105 and 103 deals including contract date and value date except for amount. thereafter, i settle both deals and cash settle 105 deal with cancellation rate and transaction date in date box to generate gain / loss. this gain / loss is posted thru TBB1. in this case, when i have taken early delivery, i have to add or subtract swap points in final rate to arrive at correct rate. also, i have to to cash settle 102 and all 103 deals when there's final amount settlement whether on due date or before it.
in my case, buy sale position of two currencies are shown in cashflow tab as "not rel. for posting" and is not posting even on maturity.
i know i have given bit lengthy details but i really wants to understand
1. is above practice of recording fx transaction is correct?
2. is there any better way to capture early deliveries?
3. in case of early delivery, is it right & necessary to replicate 102 deal details in 105 and 103?
4. what is role of TPM18 which i am not using at all in above scheme of fx set up?
your valuable reply will be of great help to me.
Thanking you all in advance
KapilHello Kapil,
Your questions has covered most of FX process.
I'll try to answer few of your question.
Answer 1) The process is correct, Its based on what your company required consultant has customized the system in that fashion, As you said there is not posting even during maturity of deals, that because in customization setting is missing for posting. Incase its required please consult you consultant to make the changes in system for Flow type-(here relevant for posting is unchecked).
Answer 2 & 3, I'm not sure why consultant has suggested to use such a lengthy process to settle early deliver deal, There might be some reason for the same. Please check,
But the same process can also be addressed, throught FTR_edit and settle the single deal through cash settlement.
Also note, 103 is only used for netting which means you are trying to settle couple of deal together and that can be excluded if you have only single deal.
Answer 4) TPM18 is used to do the valuation after the deal has been closed.Realized gains and losses are determined according to single valuation of transactions principle. This is calculated by taking the difference between the forward rate based on the conclusion of the contract and the posted rate on value date.
Let me know in case you need more information.
Regards,
Jaiin -
Interest calculation on Open items and cleared items
Dear Experts
I am trying to do needful configuration for interest indicator on which interest can be calculated for open items and cleared items as well. But, system is calculating interest for open items properly, but not calculating interest on cleared items with same interest indicator, I am repeatedly getting error "interest calculation indicator is not compatible with this type of interest calculation"
Is it possible to use same interest indicator for open line items and cleared line items of customer?
If possible, request you share the needful config steps to do same.
points will be awarded for usful reply.
Best regards,
S. Habib Pasha.Hello Habib,
depending on the requests you can setup a item interest calculation or a balance interest calculation "Define calculation types".
IIC: check settings (item selection, all cleared items, only items with payment, no cleared items) "Prepare item interest calculation"
I guess you have setup the item interest calculation - maybe you have mixed some entries with BAIC.
Check in "Prepare account balance interest calculation" whether you have entries with the indicator you want to use.
At least check your entries in "Define time-based Terms" If you have entries with Balance account interest calculation the system gives even an error.
Hope this is helpfull.
Best regards
Horst -
System is not picking bank out going account in TBB1
Hi All,
I am facing the problem in TBB1 accounting entries, system is picking the bank main account (From House bank/account id assigned GL) Not picking Bank out going account from account determination
Example:
Accounting entry at the time of TBB1: (Term start)
Wrong entry
Dr. Fixed Term Deposit GL account
Cr. Bank Main account (Which is assigned in House bank/account ID)
Correct accounting entry should be like this:
Dr. Fixed Term Deposit GL account
Cr. Bank out going account
I have checked the Payment configuration but still not able to identify the issue
Thank in advance for your help and support
Regards,
MSHi Ravi,
I was going through your reply.
I needed some clarity on my understanding please confirm it.
Suppose Bank Account is : 113150 ( Created in FS00)
Bank Clearing Account for Treasury Clearing purpose is 114150 (not yet created in FS00)
Bank Clearing for non treasury clearing purpose is 112150 (created in FS00)
in my account determination of TRM I have maintained masking as ++++++4+++
then in this case when posting happens Account picked up will be 114150 based on my House Bank detail in payment tab.
Although 114150 is not created in FS00 and not maintained in T042Y in FBZP. and system will throw error.
Am I right?
Please confirm the understanding. -
Accounting postings with ledger group - How to remove it?
Hi Guys...
The postings of the transactions TBB4 and TBB1 are recording the ledgers group (BKPF-LDGRP) = "0L" in the accounting postings. The client is requesting that this information is not recorded.
How do I remove it?
Thanks a lot.
Best regards.Hi Rodrigo,
Please use the IMG path below to create a ledger group that contains just the ledger you want to accounting.
Financial Accounting (new)
Financial Accounting Global Settings
Ledgers
Ledger
Define Ledger Group
You must create and assign accounting principles to the ledger groups you created.
Financial Accounting (new)
Financial Accounting Global Settings
Ledgers
Ledger
Parallel Accounting
After all, you must assign your valuation area to the accounting principle
FSCM
TRM
TM
Accounting
Organization
Assign Accounting Codes and Valuation Area
Regards,
Itajaci Júnior -
Debit Interest Balance Interest ???
Hi,,,
SPRO
Financial accounting
General ledger accounting
Business transactions
Bank accounts interest calculation
Interest calculation
Define time dependent terms
here In this screen what is the meaning of Debit Int Balance Int and Credit Int Balance Int ??
Thanking you,,
Suresh
Message was edited by:
Suresh Kumar
Message was edited by:
Suresh KumarHello,
Debit Interest Balance Interest - This means the interest which we are entitled to receive from the bank for the debit balance maintained in the bank account.
Credit Interest Balance Interest - This means the interest which we are due to pay to the bank for the overdrawn amount.
Regards,
Partha Sarathi Sarkar -
How sap calculate the arrears interest?
Hi All,
I am doing the configuration about arreas interest.
My configuration:
Interest Type:Item interest calculation
Calendar type:30/360
Time-based Terms:
Credit interest: arrears interest calc
Premium:0
Reference Interest Rate Values:1.0
I make some tests.
overdue day: 1 day
overdue_amount |interest|increased_interest
1000 | 0.834 |
2000 | 0.917 | 0.083
3000 | 1.001 | 0.084
4000 | 1.084 | 0.083
Could you help me to find how sap calculate the arrears interest?
Many Thanks!
Message was edited by:
Chen ZhonghuaHi
First u have to define interest calculation types ( i.e. Item interest calculation typeP)
u have define GL accounts Interest Recevied account
then u have to define prepare interest areas calculations in that u have to define interest indiacator .
then
u have to define refeence interest rates
define time based terms
enter interest values
then u have to define AR calculation of interest on arrears in that u have to define business transactions
then u have to assign interest indicator to customer master
then execute the Interest calculation F.24
Regards
Suresh -
G/L Interest calculation procedure
Balance Interest calculation
For term loan
Pls send any one G/L Accounts Interest Calculation procedure
Configuration
It is very urgentBalance Interest Calculation: -
It is a calculation of Interest on total balance of an account or total balance of customer account. it is represented in "s".
System defined variant for balance interest calculation type is u2018Su2019 and item interest calculation type is u2018Pu2019. Balance interest type calculation is used for G L Accounts. Item interest type calculation is used for vendors and customers.
To display all transaction codes go to transaction code:SE16
The Nine configuration steps for calculation of balance interest calculation are
1) Define interest calculation type (OB46)
2) Prepare account balance interest calculation (OBAA)
3) Define reference interest rates (OBAC)
4) Define time dependent terms (OB81)
5) Define or specify interest rates (OB83)
6) Create G L Accounts for Intesrest Gained and Interest allowed and Loan Account (FS00)
7) Prepare gl account balance interest calculation and Define automatic posting (OBV2)
8) Entry for Loan (F-02)
9) Run interest programm (f.52)
Step 01: Define interest calculation types (OB46)
Path: SPRO>FInancial Accounting New>Financial Accounting Global Setting New>Business Transaction> Bank A/C interest calculation>Interest calculation global settings>Define interest calculation types
Go to new entries
Interest Id (V1) put discription Name Interest calculation type (S) and enter it will take automatically balance interest for S
Make sure don't tick mark the box given and save it.
Step 02: Prepare account balance interest calculation (OBAA)
Path: SPRO>FInancial Accounting New>Financial Accounting Global Setting New>Business Transaction> Bank A/C interest calculation>Interest calculation global settings>Prepare account balance interest calculation
Go to new entries
Give calculation indicator as defined V1
Interest calculation frequency : 01 (1 month)
Calendar type : G (28-31/365)
Give number range : 03
Select balance plus interest.
Save
Step 03: Define reference interest rate (OBAC)
Path: SPRO>FInancial Accounting New>Financial Accounting Global Setting New>Business Transaction> Bank A/C interest calculation>Interest calculation>Define reference interest rates
Go to new entries
Reference interest rate : V1 (same as Interest Indicator)
Long text : 12%balanace interest
Short text : 12% balance interest
Date from : 01.03.2010
Currency : INR
Save
Step 04: Define time dependent terms (OB81)
Path: SPRO>FInancial Accounting New>Financial Accounting Global Setting New>Business Transaction> Bank A/C interest calculation>Interest calculation>Define time dependent terms
Go to new entries
Interest calculation indicator : V1
Currency key : INR
Effective from : 01.03.2010
Sequential no : 01
Term : Debit interest balance interest calculation
Reference interest rate : V1
Save
Go to new entries or F8
Interest calculation indicator : V1
Currency : INR
Effective from : 01.03.2010
Sequential no : 02
Term : credit interest balance interest calculation
Reference interest rate : V1
Save
Step 05: Enter Reference Interest Rate Values (OB83)
Path: SPRO>FInancial Accounting New>Financial Accounting Global Setting New>Business Transaction> Bank A/C interest calculation>Interest calculation>Enter interest values.
Go to new entries
Reference int. rate (V1)
values effective from (01.03.2010)
interest rate (12%)
Before creating GL account Go to T.Code: OBD4 to create secured loans account group.
Go to new entries
Chart of accounts a/c group name from account to account
Chart of Account 'TATA' secured loans 100300 100399
TATA INTR interest Expenses 400100 400199
TATA INTR interest Gained 300100 300199
Save
Step 06: Creation of G L Accounts (FS00)
G L A/C no : 100305
Company code : TATA (Tata Infotech)
Select create button
Account group : secured loans
Select balance sheet account
Short text : HSBC Bank Account
Long text : HSBC Bank Loan Account
Select control data tab
Select only balances in local currencies
Select open item
Select line item display
Sort key : 001
Select create/bank/interest tab
Field status group : G005
Select relevant to cash flow
Interest calculation indicator : V1
Save
Give G L A/C no : 400105
Company code : TATA
Select create button
Account group : interest
Select profit and loss account
Short text : interest Allowed
Long text : interest Allowed Account
Select control data tab.
Select line item display
Sort key : 001
Select create/bank/interest tab
Field status group : G001
Save
Give G L A/C no : 300107
Company code : TATA
Select create button
Account group : interest
Select profit and loss account
Short text : interest Gained
Long text : interest Gained Account
Select control data tab.
Select line item display
Sort key : 001
Select create/bank/interest tab
Field status group : G001
Save
Step 07: Define automatic posting account (OBV2)
SPRO>FInancial Accounting New>Financial Accounting Global Setting New>Business Transaction> Bank A/C interest calculation>Interest posting>Prepare G L A/C balance interest calculation
Go to accounts
Chart of accounts : TATA
A/C symbol currency G L A/C
0002 INR 400105 (interest Allowed)
2000 Inr 100305 (HSBC Bank Loan Account)
Save
Step 08: Entry for loan (F-02):
Give document date : 01.03.2010
Posting date : 01.03.2010
Type : SA
Company code : TATA
Currency : INR
Posting key : 40
G L Account : 200005 (ICICI bank a/c)
Enter
Amount : 50,00,000
Business area : IRON
Value date : 01.03.2010
Text : loan received
Posting key : 50
G L Account : 100305 (HSBC bank a/c)
Enter
Amount : *
Business area : IRON
Text : +
Save
Step 09: Interest calculation run (F.52):
Accounting>Financial Accounting>General ledger>Periodic Processing>Interest calculation>Balances
Give chart of accounts : TATA
G L A/C no : 100305 (HSBC Bank Account)
Company code : TATA
Calculation period : 01.04.2010 to 31.12.2012
Select leap year.
Select post also if value date in past
Select update master records
Execute
Go to system on menu bar.
Select services
Select batch input
Select sessions
Select RFSZIS00
Select process
Select display errors only
Again select process
The system gives the message: u201Cprocessing of batch input session completedu201D -
HI ALL,
I am required to search for a client, using their surname, first name or age and display a list of all their matching records in the text area if the results are found.
Then i am required to save the data and load it from a file using an application and not an applet. If this information is validated then the user should be able to select the client and account from a choice list. This means that each time a client object is created an entry is added to the list of clients showing the client ID, surname and first name. When a client number is entered in the text field (or selected from the list) all accounts that are owned by the client will be displayed in a choice list. Each choice list entry for an account must show the account number and the account type.
Basically Im unsure how to do this so I REALLY need your help.
Here is parts of my code, if you need more verification of what im doing please feel free to email me [email protected], cause I desperately need your help.
import java.awt.*;
import java.applet.*;
import java.awt.event.*;
public class Assignment2 extends Applet
implements ActionListener {
private Branch Brh = new Branch ();
private Client Clt = new Client ();
private Account Acc = new Account ();
private Cheque Cheq = new Cheque ();
private EFTCard Eft = new EFTCard();
private ClntArray ctArray = new ClntArray ();
// create an array to hold upto ten branch objects
private Branch branchArray[] = new Branch[10];
// declare and initialise variable to keep count of
// howmany branches
private int branchCount = 0;
// Declare variables for each type of component required for this applet
// Buttons for client processing
Button btnNewClient, btnUpdateClient, btnDeleteClient;
Button btnSearchClient, btnNextClient, btnPreviousClient;
// Buttons for account and transaction processing
Button btnNewAccount, btnUpdateAccount, btnDeleteAccount;
Button btnSearchAccount, btnNextAccount, btnPreviousAccount;
Button btnNewTranx, btnPrintStatement;
// Buttons for misc processing
Button btnClear;
// declare variables for checkboxes and a checkbox group
Checkbox chequeAccount, EFTAccount;
CheckboxGroup accountType;
// choice list to hold branches that can be selected from
Choice availableBranches;
// labels and textfields for client processing
Label clientHeading;
Label promptSName, promptFName, promptClientPh, promptClientAge,promptClientNo;
TextField txtSurname, txtFirstname, txtClientPh, txtClientAge, txtClientNo;
// labels and textfields for account processing
Label accountHeading, accountTip;
Label promptAccNo, promptAccBalance, promptAccInterest, promptAccType;
TextField txtAccountNo, txtAccountBalance, txtInterestRate, txtTranxAmount;
Label promptTranxAmount, promptSelectBranch;
// general labels and text fields
Label header, footer;
TextArea results;
// panels for client processing
Panel pTextFields, pClientButtons, pClientStuff;
// account processing panels
Panel pAccountFields, pAccountButtons, pAccountStuff;
// miscelaneous panels used for formatting user interface
Panel pTop, pCentre, pBottom, pAllTextFields;
Panel pCheckBoxes, pBranches, pLists;
// variable used to create output string
String msg = "";
/***** init() method *************************************************
* This method will create all required objects, add them to the *
* applet, and register interest in events on some objects through *
* listener classes *
public void init() {
resize(700,590);
setLayout(new BorderLayout(5, 5));
// create buttons for client processing
btnNewClient = new Button("New Client");
btnUpdateClient = new Button("Update Client");
btnDeleteClient = new Button("Delete Client");
btnSearchClient = new Button("Search Clients");
btnNextClient = new Button("Next>>");
btnPreviousClient = new Button("<<Previous");
// create account processing buttons
btnNewAccount = new Button("New Acct");
btnUpdateAccount= new Button("Update Acct");
btnDeleteAccount = new Button("Delete Acct");
btnSearchAccount = new Button("Search Accts");
btnNextAccount = new Button("Next>>");
btnPreviousAccount = new Button("<<Previous");
btnNewTranx = new Button("Perform Transaction");
btnPrintStatement = new Button("Print Statement");
// button to clear the form values
btnClear = new Button("Clear All");
accountType = new CheckboxGroup();
chequeAccount = new Checkbox("Cheque Account", accountType, false);
EFTAccount = new Checkbox("EFT Account", accountType, true);
header = new Label("Client and Account Management Information System", Label.CENTER);
footer = new Label("");
// create six default branch objects and add them to the branch array
// and set counter to show howmany branches there are - assumes the
// the appropriate constructor has been defined in the Branch class
branchArray[0] = new Branch("Perth", "036060");
branchArray[1] = new Branch("Fremantle", "036080");
branchArray[2] = new Branch("Joondalup", "036989");
branchArray[3] = new Branch("Churchlands", "036018");
branchArray[4] = new Branch("MtLawley", "036605");
branchArray[5] = new Branch("Booragoon", "036090");
branchCount = 6;
// now add the default branch names and codes to choice list
// NOTE: you may have to change the getBranchName() and getBranchCode() methods to match
// those you have defined in your Branch class
availableBranches = new Choice();
for (int indx = 0; indx < branchCount; indx++) {
availableBranches.add(branchArray[indx].getBranchName() + " " +
branchArray[indx].getBranchCode() );
} // end of for loop to add branch names and codes
// create labels and text fields required for client processing
clientHeading = new Label("Client Processing");
promptSName = new Label("Surname: ", Label.RIGHT);
promptFName = new Label("First Name: ", Label.RIGHT);
promptClientPh = new Label("Client Number: ", Label.RIGHT);
promptClientAge = new Label("Client Age: ", Label.RIGHT);
promptClientNo = new Label ("Client Number: ", Label.RIGHT);
txtFirstname = new TextField(20);
txtSurname = new TextField(20);
txtClientPh = new TextField(18);
txtClientAge = new TextField(3);
txtClientNo = new TextField(15);
// create account processing labels and text fields
accountHeading = new Label("Bank Account Processing");
accountTip = new Label("Client must exist before account is created");
promptAccNo = new Label("Account Number: ", Label.RIGHT);
promptAccBalance = new Label("Balance: ", Label.RIGHT);
promptAccInterest = new Label("Interest Rate: ", Label.RIGHT);
promptTranxAmount = new Label("Transaction Amount $", Label.RIGHT);
promptAccType = new Label("Account Type: ");
txtAccountNo = new TextField(20);
txtAccountBalance = new TextField(20);
txtInterestRate = new TextField(10);
txtTranxAmount = new TextField(10);
results = new TextArea(8, 40);
// start adding components to applet
add(header, BorderLayout.NORTH);
pCentre = new Panel();
pCentre.setLayout(new BorderLayout(5, 5));
// set up client information panel
pTextFields = new Panel();
pTextFields.setLayout(new GridLayout(3, 4));
pTextFields.add(clientHeading);
pTextFields.add(new Canvas());
pTextFields.add(new Canvas());
// pTextFields.add(new Canvas());
pTextFields.add(new Canvas());
pTextFields.add(promptClientNo);
pTextFields.add(txtClientNo);
pTextFields.add(promptSName);
pTextFields.add(txtSurname);
pTextFields.add(promptFName);
pTextFields.add(txtFirstname);
// pTextFields.add(promptClientPh);
// pTextFields.add(txtClientPh);
pTextFields.add(promptClientAge);
pTextFields.add(txtClientAge);
pClientButtons = new Panel();
pClientButtons = new Panel();
pClientButtons.add(btnNewClient);
pClientButtons.add(btnUpdateClient);
pClientButtons.add(btnDeleteClient);
pClientButtons.add(btnSearchClient);
pClientButtons.add(btnPreviousClient);
pClientButtons.add(btnNextClient);
pClientStuff = new Panel();
pClientStuff.setLayout(new GridLayout(2, 1));
pClientStuff.add(pTextFields);
pClientStuff.add(pClientButtons);
// set up account and transaction information panel
pAccountFields = new Panel();
pAccountFields.setLayout(new GridLayout(3, 4));
pAccountFields.add(accountHeading);
pAccountFields.add(new Canvas());
pAccountFields.add(new Canvas());
pAccountFields.add(new Canvas());
pAccountFields.add(promptAccNo);
pAccountFields.add(txtAccountNo);
pAccountFields.add(promptAccBalance);
pAccountFields.add(txtAccountBalance);
pAccountFields.add(promptAccInterest);
pAccountFields.add(txtInterestRate);
pAccountFields.add(promptTranxAmount);
pAccountFields.add(txtTranxAmount);
pAccountButtons = new Panel();
pAccountButtons.add(btnNewAccount);
pAccountButtons.add(btnUpdateAccount);
pAccountButtons.add(btnDeleteAccount);
pAccountButtons.add(btnSearchAccount);
pAccountButtons.add(btnPreviousAccount);
pAccountButtons.add(btnNextAccount);
pAccountButtons.add(btnNewTranx);
pAccountStuff = new Panel();
pAccountStuff.setLayout(new GridLayout(2,1));
pAccountStuff.add(pAccountFields);
pAccountStuff.add(pAccountButtons);
pAllTextFields = new Panel();
pAllTextFields.setLayout(new GridLayout(2,1));
pAllTextFields.add(pAccountStuff);
pAllTextFields.add(pClientStuff);
// set up the panel that will hold the checkboxes and list of branches
pCheckBoxes = new Panel();
pCheckBoxes.setLayout(new GridLayout(3, 1));
pCheckBoxes.add(promptAccType);
pCheckBoxes.add(EFTAccount);
pCheckBoxes.add(chequeAccount);
pBranches = new Panel();
pBranches.setLayout(new GridLayout(3, 1));
promptSelectBranch = new Label("Select Branch: ");
pBranches.add(promptSelectBranch);
pBranches.add(availableBranches);
pLists = new Panel();
pLists.setLayout(new GridLayout(1, 3));
pLists.add(pCheckBoxes);
pLists.add(pBranches);
pLists.add(new Canvas());
// add all the above panels to the panel that will be added to the
// centre of the applet
pCentre.add(pLists, BorderLayout.NORTH);
pCentre.add(pAllTextFields, BorderLayout.CENTER);
pCentre.add(results, BorderLayout.SOUTH);
add(pCentre, BorderLayout.CENTER);
//add general processing buttons to panel, then add panel to applet
pBottom = new Panel();
pBottom.add(btnPrintStatement);
pBottom.add(btnClear);
add(pBottom, BorderLayout.SOUTH);
add(new Label(" "), BorderLayout.EAST);
add(new Label(" "), BorderLayout.WEST);
// add listeners for client buttons
btnNewClient.addActionListener(this);
btnUpdateClient.addActionListener(this);
btnDeleteClient.addActionListener(this);
btnSearchClient.addActionListener(this);
btnNextClient.addActionListener(this);
btnPreviousClient.addActionListener(this);
btnNewAccount.addActionListener(this);
btnUpdateAccount.addActionListener(this);
btnDeleteAccount.addActionListener(this);
btnSearchAccount.addActionListener(this);
btnNewTranx.addActionListener(this);
btnNextAccount.addActionListener(this);
btnPreviousAccount.addActionListener(this);
btnPrintStatement.addActionListener(this);
btnClear.addActionListener(this);
} //end of init method
/***** actionPerformed() method **************************************
* Method is called when an event occurs on any of the object that *
* have been registered as an action listener *
public void actionPerformed (ActionEvent e) {
Object obj = e.getSource();
* if new client button is clicked then *
* create new client object *
* read data from text fields and set the client object's values *
* add this client object to array of client objects *
if (obj == btnNewClient) {
//declare variables to later check the validation of the info
boolean cNo = false;
boolean cSurName = false;
boolean cFstName = false;
boolean cAge = false;
//must change the the age to interger to then chek validation
//check for surname
if (txtSurname.getText().equals ("")) {
results.append("\n Enter Surname");
else { cSurName = true;
//check for firstname
if (txtFirstname.getText().equals ("")) {
results.append("\n Enter Name");
else { cFstName = true;
//check for client number
if (txtClientNo.getText().equals ("")) {
results.append("\nPlease Enter Correct Client Number");
else { // cNo = true;
//convertedInt = Integer.parseInt(stringValue);
//mudt try n plsce this in the rite plc to be able to wrk
int ClientLoc = ctArray.findLoc(txtClientNo.getText());
if (ClientLoc == -1) {
Client Clt = new Client(txtClientNo.getText(), txtFirstname.getText()
,txtSurname.getText(), txtClientAge.getText());
ctArray.AddClient(Clt);
results.setText("New client has been added to the arrary!");
ClientLoc = ctArray.findLoc(txtClientNo.getText());
results.append(ctArray.getClient(ClientLoc).getFirstName());
} // end of new client button for the if
* if new updateclient button is clicked then *
* then do the bits required to *
* read data from text fields and set the client new details object val *
if (obj == btnUpdateClient) {
int ClientLoc = ctArray.findLoc(txtClientNo.getText());
if (ClientLocc == -1){
results.setText(" Could Not Find Client!");
} else {//this will shoe the client loc that the client has been updated
display(ClientLoc);
} //end of the else bit this is just help to show {} are in place
} // end of if for update client
* if new btnDeleteClient button is clicked then *
* then do the bits required to *
* delete the client form the array *
if (obj == btnDeleteClient) {
int ClientLoc = ctArray.findLoc(txtClientNo.getText());
if (ClientLoc == -1) {
results.setText(" Could Not Find Client!");
} else { //start of the else if the client was found
ctArray.remove(ClientLoc);
results.setText("Client Deleted!");
} //end of te elsebit for the removing of the client
} //end of the btndeleteclient process
* if new btnSearchClient button is clicked then *
* then do the bits required to *
* SearchClient the client form the array *
if (obj == btnSearchClient) {
int ClientLoc = ctArray.findLoc(txtClientNo.getText());
if (ClientLoc == -1) {
results.setText(" Could Not Find Client!");
} else {//here is the search was good then will be able
// to display the info of the client
results.append("\n Customer Number: " + Clt.getClientNo());
results.setText(" First Name: " + Clt.getFirstName());
results.append("\n Surname: " + Clt.getSurname());
results.append("\n Customer Age: " + Clt.getAge());
}//end of the else bit that allows the user to see the clients details
// in the either the textfiels or the resultds bit as it is yet to be decided
}//end of the btnsearchclient
* if new btnNextClient button is clicked then *
* then do the bits required to *
* NextClient the client form the array *
if (obj == btnNextClient) {
int ClientLoc = ctArray.findLoc(txtClientNo.getText());
if (ClientLoc == -1) {
results.setText(" Could Not Find Client!"); //need to fix it so then itll show the next client
} else {//here is the search was good then will be
//able to display the info of the client
txtClientNo.setText(Clnt.getClientNo());
txtFirstname.setText(Clnt.getFirstName());
txtSurname.setText(Clnt.getSurname());
txtClientAge.setText(Clnt.getAge());
}//end of the else bit that shos that next client
} // end of the btnnextclient
* the new btn PreviousClient button is clicked then *
* then do the bits required to *
* PreviousClient the client form the array *
if (obj == btnPreviousClient) {
int ClientLoc = ctArray.findLoc(txtClientNo.getText());
if (ClientLoc == -1) {
results.setText(" Could Not Find Client!"); //need to fix it so then itll show the previous client
} else {//here is the search was good then will be
//able to display the info of the client
txtClientNo.setText(Clnt.getClientNo());
txtFirstname.setText(Clnt.getFirstName());
txtSurname.setText(Clnt.getSurname());
txtClientAge.setText(Clnt.getAge());
}//end of the else bit that shows that previous client
}//end of the btnprevious client been clikd
* if new transaction button is clicked then *
* then do the bits required to *
* read data from text fields and set the transaction object val *
if ( obj == btnNewTranx) {
if (!txtTranxAmount.getText().equals("")) {
double TrnAmt = Double.parseDouble(txtTranxAmount.getText());
if (Acc instanceof Cheque) {
Cheq.setBalance(Cheq.getBalance() + TrnAmt );
} else if (Acc instanceof Cheque) {
Eft.setBalance(Cheq.getBalance() + TrnAmt );
} //end of the if it was eftcard
} //this will close the transaction bit if the client does enter an amount
* if display button is clicked then *
* display values from text fields and text area *
if (obj == btnPrintStatement) {
results.setText(" First Name: " + Clt.getFirstName());
results.append("\n Surname: " + Clt.getSurname());
results.append("\n Customer Number: " + Clt.getClientNo());
results.append("\n Customer Age: " + Clt.getAge());
if (Acc instanceof Cheque) {
Cheq = (Cheque) Acc;
results.append("\n \n Account Type: " + Cheq.getAccType());
results.append("\n Account Number: " + Cheq.getAccNo());
results.append("\n Account Balance: " + Cheq.getBalance());
results.append("\n Account Interest Rate: " + Cheq.getIntRate());
results.append("\n Branch Name: " + Brh.getBranchName() + " " + Brh.getBranchCode());
} else {
Eft = (EFTCard) Acc;
results.append("\n \n Account Type: " + Eft.getAccType());
results.append("\n Account Number: " + Eft.getAccNo());
results.append("\n Account Balance: " + Eft.getBalance());
results.append("\n Account Interest Rate: " + Eft.getIntRate());
results.append("\n Branch Name: " + Brh.getBranchName() + " " + Brh.getBranchCode());
}//end of if for displaying the correct Acc type
} // end of if for btnPrintStatement
* if clear button is clicked then *
* clear values from text fields and text area *
* reset other form components to default values *
if (obj == btnClear) {
txtFirstname.setText("");
txtSurname.setText("");
txtClientPh.setText("");
txtClientNo.setText("");
txtClientAge.setText("");
txtAccountNo.setText("");
txtAccountBalance.setText("");
txtInterestRate.setText("");
txtTranxAmount.setText("");
results.setText("");
availableBranches.select(0);
accountType.setSelectedCheckbox(EFTAccount);
} // end of if for clear button
} //end of actionPerformed method
} //end of applet
Sorry its so LONG. Thank you for your time
JesikaYou should really check the freejavahelp forums, I posted something for you there.
-
Help.....help...me!!!
Assignment A:
Develop a banking system using object-oriented programming. The system will have a bank object, and customer objects.
The details of the classes and their operations are as shown below:
Classes Required:
1. Class Bank (startup class)
2. Class Customer
3. Class FixCustomer and Class SavingCustomer
Details of each class:
Class Bank:
Attributes - Information about the customer:
a. Total number of customers registered (i.e. use an array to hold an array of customer objects)
Behaviour - Bank's operations:
a. Show Customer's balance
b. Calculate & show Customer's interest
c. Update customer's balance (e.g. after withdraw or deposit)
This is the startup class. Create an interface that allows a potential customer to register. Also, an interface for registered user to access his/her account.
Class Customer:
Attributes - Information about a customer:
a. Customer Name
b. Customer Account number
c. Customer Address
d. Customer Phone Number
e. Customer Job
f. Customer Balance
Behaviour - Customer's actions:
a. Check account information (e.g. Balance )
b. Withdraw
c. Deposit
d. Transfer (i.e. transferring credits from one user account to another)
*Interest value for saving-account (Interest 5%), and fix-account (Interest 7%). These different interest values are declared in the SavingCustomer and FixCustomer classes.
Assignment B:
Draw the design of your system in UML diagrams - Class and state diagrams
Explain and discuss about the design and implementation. You are also required to use flow-charts to document your codings.
The deliverable:
A report consisting of 10 to 20 pages. In the report, you must include:
1. Your UML diagrams. Class and state diagrams
2. Your program codes. (submit your codes in softcopy as well, in a disk)
3. Screen capture of all your user-interfaces.
4. Documentation from assignment B
5. Dateline: week 9What is the question?Hehe, i think the question is: "What's the code?"
Maybe you are looking for
-
Mac Messenger program shut down
When ever I try to close any conversation window in mac messenger the program automatically shuts down and then asks me to send an error report. The program starts up again and runs fine until I close another conversation window and it shuts down aga
-
Hello im having some problems with my 1TB G Drive, My hard drive is not recognising i tried to repair it but i get this message ' disk utility stopped verifying " disk4s2" please can anyone help id be grateful many thanks if its hard for everyone to
-
Error while adding members to a group
Hello, We have iAS 9.0.2.1 running on windows. I am getting the following error while trying to add a member to a group created earlier : Request URI:/oiddas/cabo/jsps/frameRedirect.jsp Exception: java.io.FileNotFoundException: d:\ora9ias\apache\apac
-
Please can you point me to a place I can download the previous version of Firefox before version 4.0. The addon Torbutton is not compatible and I would rather have an older Firefox and still be able to use Torbutton. thanks
-
How I can find full model of my laptop?
I know my laptop is "HP Pavilion dv5" but it I need its full name for download its driver and softwares.