Skip to main content

Notifications

Announcements

No record found.

Supply Chain Management forum
Unanswered

For a given Report as Finished journal, get list of serial numbers for the items produced

Posted on by 9
Hello. Is there a way to get a list of items and their corresponding serial numbers when given a journal ID for a report as finished journal? I have a query that works except in the case where there are multiple report as finished journals for a single production order. A use case for multiple journals for a single production order is when all of the items are not produced at once.

Below is sample code (I removed code in order to simply) that uses CoC when a report as finished journal is posted. When this is called for the second journal that is posted for the same production order, the query will return the serial numbers for the first journal that was posted earlier.

If I can't find a query that returns the serial numbers for the given journal, then one solution is to flag the serial numbers that have already been processed and skip those on the future calls.

Thank you for your time.
[ExtensionOf(classStr(ProdJournalCheckPostProd))]
final class ProdJournalCheckPostProd_Extension
{
    void run()
    {
        next run();        

        ProdJournalTable prodJournalTable = journalTableData.journalTable();

        if (prodJournalTable.JournalType != ProdJournalType::ReportFinished)
        {
            return;
        }

        ProdTable prodTable = ProdTable::find(prodJournalTable.ProdId);

        List serialNumbers = new List(Types::String);

        InventTrans inventTrans;
        InventDim inventDim;
        InventTransOrigin inventTransOrigin;
        InventSerial inventSerial;

        while select InventSerialId from inventDim
            join RecId, StatusReceipt from inventTrans
            where inventTrans.inventDimId == inventDim.inventDimId
            join ItemId from inventTransOrigin
            where inventTransOrigin.RecId == inventTrans.InventTransOrigin
            && inventTransOrigin.InventTransId == prodTable.InventTransId
        {
            serialNumbers.AddEnd(inventDim.InventSerialId);
        }
     }
}
 
  • André Arnaud de Calavon Profile Picture
    André Arnaud de Cal... 290,252 Super User 2024 Season 2 on at
    For a given Report as Finished journal, get list of serial numbers for the items produced
    Hi jgoyne,
     
    Do you need only the serial per journal or all serials from all report as finished journals? In case of multiple journals does it have only the serials from the first journal or all posted journals? 
    In your select statement, you are not restricting the inventTransOrigin to use transactions from a specific production journal  (prodJournalTable record)

Helpful resources

Quick Links

Dynamics 365 Community Update – Sep 9th

Welcome to the next edition of the Community Platform Update. This is a weekly…

Announcing Our 2024 Season 2 Super Users!

A new season of Super Users has arrived, and we are so grateful for the daily…

Leaderboard

#1
André Arnaud de Calavon Profile Picture

André Arnaud de Cal... 290,252 Super User 2024 Season 2

#2
Martin Dráb Profile Picture

Martin Dráb 228,089 Most Valuable Professional

#3
nmaenpaa Profile Picture

nmaenpaa 101,148

Leaderboard

Featured topics

Product updates

Dynamics 365 release plans