D365
[FormDataSourceEventHandler(formDataSourceStr(SalesTable, SalesTable), FormDataSourceEventType::Activated)]
public static void SalesTable_OnActivated(FormDataSource sender, FormDataSourceEventArgs e)
{
SalesTable salesTable;
SalesLine salesLine;
container salesIds;
while select * from salesTable where salesTable.SalesStatus==SalesStatus::Backorder && salesTable.ShippingDateConfirmed == today()+3 && salesTable.Scheduled == 1
{
salesIds+=salesTable.SalesId;
}
for (int i=1 ; i<=conLen(salesIds);i++)
{
while select * from salesLine where salesLine.SalesId == conPeek(salesIds,i)
{
Qty onOrder = salesLine.onOrderInSalesUnit();
if(onOrder)
{
ttsbegin;
select forupdate salesTable where salesTable.SalesId == conPeek(salesIds,i);
salesTable.PartialDelivery = NoYes::Yes;
salesTable.update();
ttscommit;
break;
}
if (onOrder == 0)
{
ttsbegin;
select forupdate salesTable where salesTable.SalesId == conPeek(salesIds,i);
salesTable.PartialDelivery = NoYes::No;
salesTable.update();
ttscommit;
}
}
}
}
Comments
Post a Comment