Data Conversion from Petra to Openpetra

From OpenPetra Wiki
Jump to navigation Jump to search

Standard and System Accounts

The Converter has to create the new set of account properties

In the code you can refer TAccountPropertyEnum.

This data shall be stored in a_account_property. Therefore new key of a_property_code_c is defined:

  1. Is_Special_Account

The primary key of a_account_property is:

CONSTRAINT a_account_property_pk PRIMARY KEY (a_ledger_number_i, a_account_code_c, a_property_code_c, a_property_value_c),

and so more than one value can be assigned to a key.

Standard Accounts

&GLOBAL-DEFINE EARNINGS-BF-ACCT 9700
&GLOBAL-DEFINE DIRECT-XFER-ACCT 5501
&GLOBAL-DEFINE ICH-SETTLEMENT-ACCT 5601
&GLOBAL-DEFINE ICH-ACCT 8500
&GLOBAL-DEFINE INTERNAL-XFER-ACCT 9800
&GLOBAL-DEFINE ADMIN-FEE-INCOME-ACCT 3400
&GLOBAL-DEFINE ADMIN-FEE-EXPENSE-ACCT 4900
&GLOBAL-DEFINE FUND-TRANSFER-INCOME-ACCT 3300
&GLOBAL-DEFINE FUND-TRANSFER-EXPENSE-ACCT 4800

In this case we set:

a_property_code_c = "Is_Special_Account";
a_property_value_c = "EARNINGS_BF_ACCT"

There is only one standard account for each of the types above. So the first value which is found shall be used.

Hint: The characters "-" and "_" are replaced in order to get a proper enum set in c#.

And furthermore there is another hard coded account

IF a_ledger.a_ilt_processing_centre_l THEN DO:  
    FOR EACH a_account
    WHERE a_account.a_ledger_number_i EQ pv_ledger_number_i
    AND   a_account.a_posting_status_l
    AND   a_account.a_account_code_c BEGINS "85" ...

But this is ICH-ACCT

System Accounts

&GLOBAL-DEFINE GIFT-HEADING GIFT
&GLOBAL-DEFINE INTER-LEDGER-HEADING ILT
&GLOBAL-DEFINE BANK-HEADING CASH
&GLOBAL-DEFINE BALANCE-SHEET-HEADING BAL SHT
&GLOBAL-DEFINE PROFIT-AND-LOSS-HEADING PL
&GLOBAL-DEFINE INCOME-HEADING INC
&GLOBAL-DEFINE EXPENSE-HEADING EXP
&GLOBAL-DEFINE DEBTOR-HEADING DRS
&GLOBAL-DEFINE CREDITOR-HEADING CRS
&GLOBAL-DEFINE TOTAL-ASSET-HEADING ASSETS
&GLOBAL-DEFINE TOTAL-LIABILITY-HEADING LIABS
&GLOBAL-DEFINE EQUITY-HEADING RET EARN

In this case we set:

a_property_code_c = "Is_Special_Account";
a_property_value_c = "GIFT_HEADING"

In this case we get a unique summation account.