RecordInsertList:
static void CopyItemInfoRIL(Args _args)
{
InventTableinventTable;
InventSuminventSum;
InsertInventTableInventSumRTinsertInventTableInventSumRT;
RecordInsertListril;
ttsBegin;
ril = newRecordInsertList(tableNum(InsertInventTableInventSumRT));
while selectItemId,AltItemid from inventTable where inventTable.ItemId == '1001'
joinPhysicalValue,PostedValue from inventSum
whereinventSum.ItemId == inventTable.ItemId
{
insertInventTableInventSumRT.ItemId= inventTable.ItemId;
insertInventTableInventSumRT.AltItemId= inventTable.AltItemId;
insertInventTableInventSumRT.PhysicalValue= inventSum.PhysicalValue;
insertInventTableInventSumRT.PostedValue= inventSum.PostedValue;
// Insertrecords if package is full
ril.add(insertInventTableInventSumRT);
}
ril.insertDatabase();
ttsCommit;
selec tcount(RecId) from insertInventTableInventSumRT;
info(int642str(insertInventTableInventSumRT.RecId));
}
RecordSortList:
public static server void CopyItemInfoRSL()
{
InventTable inventTable;
InventSum inventSum;
InsertInventTableInventSumRT insertInventTableInventSumRT;
RecordSortedList rsl;
ttsBegin;
rsl = new RecordSortedList(tableNum(InsertInventTableInventSumRT));
rsl.sortOrder(fieldNum(InsertInventTableInventSumRT,PostedValue));
while select ItemId,AltItemid from inventTable where inventTable.ItemId == '1001'
join PhysicalValue,PostedValue from inventSum
where inventSum.ItemId == inventTable.ItemId
{
insertInventTableInventSumRT.ItemId = inventTable.itemId;
insertInventTableInventSumRT.AltItemId = inventTable.AltItemId;
insertInventTableInventSumRT.PhysicalValue = inventSum.PhysicalValue;
insertInventTableInventSumRT.PostedValue = inventSum.PostedValue;
rsl.ins(insertInventTableInventSumRT);
}
rsl.insertDatabase();
ttsCommit;
select count(RecId) from insertInventTableInventSumRT;
info(int642str(insertInventTableInventSumRT.RecId));
}