Skip to main content
Question

Creating a PXProjection


Forum|alt.badge.img
  • Jr Varsity III
  • 13 replies

I am trying to create a projection query this is the sql query which works. I tried something like this
[PXProjection(typeof(
Select4<
    PMBudget,
    Where2<
        Where<PMBudget.type, Equal<AccountType.income>>,
        Or<
            Where<PMBudget.type, Equal<AccountType.expense>,
            And<ParentChildContractExt.usrIsChildProject, Equal<True>>>>>,
            And<PMBudget.accountGroupID, In<            Select<ProjectTransferRequestSetup,Where<ProjectTransferRequestSetup.transferAccountGroup, IsNotNull>>>>>>>>,
    Aggregate<
        GroupBy<PMBudget.projectID,
        Sum<PMBudget.curyRevisedAmount,
        Sum<PMBudget.curyAmount,
        Sum<PMBudget.curyInvoicedAmount,
        Sum<PMBudget.curyActualAmount,
        Sum<PMBudget.curyInclTaxAmount,
        Sum<PMBudget.curyTotalRetainedAmount,
        Sum<PMBudget.curyAmountToInvoice,
        Sum<PMBudget.curyChangeOrderAmount>>>>>>>>>>>))]
it doesnot work


SELECT

    b.ProjectID,

    c.ContractCD,

    c.usrIsChildProject,

   

    -- Aggregated Fields

    SUM(b.CuryRevisedAmount) AS Total_CuryRevisedAmount,

    SUM(b.CuryAmount) AS Total_CuryAmount,

    SUM(b.CuryInvoicedAmount) AS Total_CuryInvoicedAmount,

    SUM(b.CuryActualAmount) AS Total_CuryActualAmount,

    SUM(b.CuryInclTaxAmount) AS Total_CuryInclTaxAmount,

    SUM(b.CuryTotalRetainedAmount) AS Total_CuryTotalRetainedAmount,

    SUM(b.CuryAmountToInvoice) AS Total_CuryAmountToInvoice,

    SUM(b.CuryChangeOrderAmount) AS Total_CuryChangeOrderAmount

 

FROM PMBudget b

LEFT JOIN Contract c ON b.ProjectID = c.ContractID

 

WHERE c.ContractCD = 'SL-P-25-0017'  -- Filter for specific contract

AND (

    b.Type = 'I'  -- Include all income budgets

    OR (

        b.Type = 'E'

        AND c.usrIsChildProject = 1  -- Only include expenses for child projects

        AND b.AccountGroupID IN (SELECT TransferAccountGroup FROM ProjectTransferRequestSetup) -- Filter by ProjectTransferRequestSetup.transferAccountGroup

    )

)

 

GROUP BY

    b.ProjectID,

    c.ContractCD,

    c.usrIsChildProject  -- Grouping similar to projection

 

ORDER BY b.ProjectID;


 

0 replies

Be the first to reply!

Reply


Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings