VGScode
VGScode

Reputation: 1

how to get records from tempDB AX 2012 X++

I want to implement this functionality but vendBalanceProvisionalTmpProcesing is always empty, i know it is empty because it is tempDB :

 while select AccountNum,PostingProfile from vendProvisionalBalanceTmpProcessing
            {
                select sum(AmountCur) from vendTrans
                    where vendTrans.AccountNum == vendProvisionalBalanceTmpProcessing.AccountNum
                    && vendTrans.PostingProfile == vendProvisionalBalanceTmpProcessing.PostingProfile
                    && vendTrans.TransDate >= _fromDate
                    && vendTrans.TransDate <= toDate;
            
                    tempSum += vendTrans.AmountCur;
            
                select sum(AmountMST) from vendTrans
                    where vendTrans.AccountNum == vendProvisionalBalanceTmpProcessing.AccountNum
                    && vendTrans.PostingProfile == vendProvisionalBalanceTmpProcessing.PostingProfile
                    && vendTrans.TransDate >= _fromDate
                    && vendTrans.TransDate <=toDate;
            
                    tempSum+= vendTrans.AmountMST*ledgerParameters.EonExchangeRate;
            
                    tmpValue.Amount = tempSum;
                    tmpValue.AccountNum = vendTrans.AccountNum;
                    tmpValue.PostingProfile = vendTrans.PostingProfile;
                    tmpValue.doInsert();    
            
            }

But there are 2 scenarios where i can access to vendProvisionalBalanceTmpProcessing.AccountNum :

insert_recordset tmpValue
        (AccountNum, PostingProfile, Amount)
        select AccountNum
        from vendProvisionalBalanceTmpProcessing
            group by AccountNum
        join PostingProfile, sum(AmountMST) from vendTrans
            group by PostingProfile
            where vendTrans.AccountNum == vendProvisionalBalanceTmpProcessing.AccountNum
                && vendTrans.PostingProfile == vendProvisionalBalanceTmpProcessing.PostingProfile
                && vendTrans.TransDate < _fromDate;
    update_recordset vendProvisionalBalanceTmpProcessing
        setting OpeningBalance = tmpValue.Amount
        join tmpValue
            where tmpValue.AccountNum == vendProvisionalBalanceTmpProcessing.AccountNum
                && tmpValue.PostingProfile == vendProvisionalBalanceTmpProcessing.PostingProfile;

Any way how i can do while select like that ? `

I need vendProvisionalBalanceTmpProcessing.AccountNum to do two select sum over vendTrans where vendTrans.AccountNum == vendProvisionalBalanceTmpProcessing.AccountNum. So way how to do it similar to these two scenarios where i have access to vendProvisionalBalanceTmpProcessing would help me.

Upvotes: 0

Views: 676

Answers (1)

Jan B. Kjeldsen
Jan B. Kjeldsen

Reputation: 18051

You would like to reread on how to link to a temporary table. Official documentation.

Especially, to access a tempDB table from outside where it is created, you need to call linkPhysicalTableInstance.

Upvotes: 0

Related Questions