return to PRS Technologies website

Purging the glpost table in Elite


The glpost table contains a record for every transaction in ELBS that is posted to the general ledger (via batch finalization).

For example, when a time entry is entered into ELBS, glpost records may be created which DEBIT Unbilled Fees and CREDIT Unbilled Fee Revenue. This makes it so that time entries are included in the balance sheet and financial statement.

When a time entry is billed, additional glpost records may be created to move the value of the time entry from "Unbilled" fees and "Unbilled" revenue to A/R fees and "billed" fee revenue. If at any point the value of the time entry changes, additional glpost records are created that record the value of the change (via audit records).

When a payment is applied to the billed time entry, another set of glpost records may be created which move the time value from A/R and billed fee revenue to Cash and collected fee revenue.

Cost entries are treated essentially the same way. Of course, the determination of when and how glpost records are created is based on the "masking" rules in the Elite configuration.

The entries in the glpost table are reviewed when a batch report is run (a requirement of batch finalization). The glpost entries can be modified or "fixed" if incorrect prior to posting to the GL. Once the glpost records are correct, they are posted to the GL where they are summarized into batch/account level detail. They are posted at time batch finalization, bill finalization, credit finalization and audit finalization (this is why generating/finalizing audit batches nightly is such a good idea).


Purging the glpost records is an issue because they may be needed later on for 2 reasons: 1) to trace or research an error at the time or cost entry level of detail (remember, they are summarized when posted to the GL). This is very valuable for month end balancing. And 2) if masking is changed, the system will look back to the original entry in the glpost table to reverse it the same way it was originally posted. If the glpost record no longer exists, it will create the reversing entry based on the current masking, which may not be the same as it was when it was originally posted.

So one consideration would be - how far back would you want to be able to reverse entries for?


All batches must be finalized prior to deleting records from the glpost table. All audit records must be included into a batch and finalized. The glpost table determines what entries are posted to the general ledger during batch finalization. If the entries are deleted from the glpost table for unfinalized batches, the general ledger will not be posted when the batch is finalized.

The Elite system should be in balance with no outstanding research items pending. The entries posted to the general ledger are summarized, one total per account/department. The only way to obtain the posting history related to a specific entry (time, cost, etc) is to run a table report containing the glpost records. If the records are deleted from the glpost table this information will no longer be available. .

If the Look Back Flag is set to "Y", a transition period should be allowed following a change to masking definition to allow for accurate reversal of existing transactions. If a transaction is reversed at a later date, the system will look to the glpost table to determine how to create the reversing journal entry. It will revert to the current masking if the glpost records are not found.