PM DACs: Transactional Data
In this topic, you can find an overview of the data access classes (DACs) that provide transactional data.
Project Transactions
The PMRegister table contains the transaction data that is defined in the Summary area of the Project Transactions (PM304000) form.
SELECT
*
FROM
PMRegister
WHERE
IsAllocation = 1
AND Released = 1
The PMTran DAC contains the transactional data that is displayed in the table on the Project Transactions (PM304000) form. A project transaction (PMTran) is referenced in a general ledger transaction (GLTran) by the GLTran.PMTranID field.
The selection of project transactions that meet specific conditions is illustrated in the following examples:-
The selection of the unbilled transactions for the project with the specified account group
SELECT * FROM PMTran t WHERE t.AccountGroupID = 23 AND t.ProjectID=3295 AND t.Billed=0
-
The selection of the billed transactions from the specified AR invoice
SELECT PMTran.* FROM PMTran INNER JOIN ARTran ON PMTran.CompanyID = ARTran.CompanyID AND PMTran.ARTranType = ARTran.TranType AND PMTran.ARRefNbr = ARTran.RefNbr AND PMTran.RefLineNbr = ARTran.LineNbr WHERE ARTran.TranType='INV' AND ARTran.RefNbr='00013'
Pro Forma Invoices
Pro forma invoices are defined on the Pro Forma Invoices (PM307000) form. The PMProforma DAC contains the pro forma invoice data, which is specified in the Summary area of the form. The PMProformaLine DAC stores the pro forma line data, which is displayed on the Progress Billing and Time and Material tabs of the form.
Billing Records
The PMBillingRecord DAC contains the billing record data, which is displayed in the table on the Invoices tab of the Projects (PM301000) form.
In the following example, you can see how to select a billing record for the specified project.
SELECT
*
FROM
PMBillingRecord b
WHERE
b.ProjectID=3295