Following is the sample job to show how we can create and post movement journal by making use of available api’s in the Dynamics Ax.
static void createMovJournal(Args _args) { InventJournalTable journalTable; InventJournalTrans journalTrans; InventJournalTableData journalTableData; InventJournalTransData journalTransData; InventTable inventTable; InventDim inventDim; Counter cnt; InventJournalCheckPost journalCheckPost = new InventJournalCheckPost(); ; journalTableData = JournalTableData::newTable(journalTable); journalTransData = journalTableData.journalStatic().newJournalTransData(journalTrans,journalTableData); // Init JournalTable journalTable.clear(); journalTable.JournalId = journalTableData.nextJournalId(); journalTable.JournalType = InventJournalType::Movement; journalTable.JournalNameId = journalTableData.journalStatic().standardJournalNameId(journalTable.JournalType); journalTableData.initFromJournalName(journalTableData.journalStatic().findJournalName(journalTable.JournalNameId)); // Init JournalTrans select firstonly inventTable; for(cnt=1;cnt<10;cnt++) { journalTrans.clear(); journalTransData.initFromJournalTable(); journalTrans.TransDate = systemdateget() + 1 div 2; journalTrans.ItemId = inventTable.ItemId; journalTrans.Qty = 100; journalTrans.CostAmount = 100; // Dimension details inventDim.InventLocationId = 'GW'; journalTrans.InventDimId = InventDim::findOrCreate(inventDim).inventDimId; journalTransData.create(); } journalTable.insert(); // Call the static method to post the journal if(InventJournalCheckPost::newPostJournal(journalTable).validate()) InventJournalCheckPost::newPostJournal(journalTable).run(); }
This post was found on http://learnax.blogspot.dk/2010/01/x-code-to-create-and-post-inventory.html
See also this post about posting through the Business Connector: http://kashperuk.blogspot.dk/2008/01/creating-and-posting-inventory.html