// ---code begin-----
// The job is used to create the missing address entries for the VendTable table.
static void generateDirPartyEntriesVendTable(Args _args)
{
VendTable vendTable;
VendTable vendTableNoLock;
;
while select vendTableNoLock
{
setPrefix(strFmt("Vendor %1",vendTableNoLock.AccountNum));
try
{
ttsBegin;
vendTable = VendTable::find(vendTableNoLock.AccountNum,true);
if (vendTable)
{
if (vendTable.PartyId && !DirPartyTable::exist(vendTable.PartyId))
{
vendTable.PartyId = "";
}
if (!vendTable.PartyId)
{
// Create a Party entry for a vendor.
vendTable.PartyId = DirParty::createPartyFromCommon(vendTable).PartyId;
}
else
{
DirParty::updatePartyFromCommonInsert(vendTable.PartyId,vendTable);
}
vendTable.update();
}
ttsCommit;
}
catch
{
error(strFmt("There has been an error while updating the vendor '%1'.",vendTableNoLock.AccountNum));
}
}
}
// ---code end-----