Quintiq file version 2.0
|
#parent: #root
|
StaticMethod CreateFillingCapacityOrderScheme (
|
MacroPlan owner,
|
String schemeName
|
)
|
{
|
TextBody:
|
[*
|
// NBoTk Sep-14-2023 (created)
|
|
fillingCapacityOrders := selectset( owner,FillingCapacityOrder,fillingOrder,
|
not fillingOrder.IsFilling()
|
);
|
|
// customer
|
customerList := selectvalues( fillingCapacityOrders,Elements,e,
|
e.Customer());
|
customer := customerList.Concatenate( ",")
|
|
// customerID
|
customerIDList := selectvalues( fillingCapacityOrders,Elements,e,
|
e.CustomerID());
|
customerID := customerIDList.Concatenate( ",")
|
|
// businessType
|
businessTypeList := selectvalues( fillingCapacityOrders,Elements,e,
|
e.BusinessType());
|
businessType := businessTypeList.Concatenate( ",")
|
|
// salesSegmentName
|
salesSegmentNameList := selectvalues( fillingCapacityOrders,Elements,e,
|
e.SalesSegmentName());
|
salesSegmentName := salesSegmentNameList.Concatenate( ",")
|
|
schemeDate := Date::Today();
|
|
filllingCapacityOrderScheme := owner.FilllingCapacityOrderScheme(relnew,SchemeName := schemeName,SchemeDate := schemeDate,BusinessType := businessType,Customer := customer,CustomerID := customerID,
|
SalesSegmentName := salesSegmentName);
|
|
|
traverse( fillingCapacityOrders,Elements,e)
|
{
|
e.SchemeName(schemeName);
|
e.IsFilling(true);
|
filllingCapacityOrderScheme.FillingCapacityOrder(relinsert, e);
|
}
|
|
// 版本号
|
verNoOrder := select( filllingCapacityOrderScheme,FillingCapacityOrder,o,
|
o.VerNo() <> ''
|
)
|
|
// 需要将销售订单和预售订单同时保存到方案中
|
traverse( owner,CustomerAndForecastOrder,order)
|
{
|
|
fillingOrder := owner.FillingCapacityOrder(relnew,BusinessType := order.BusinessType(),Customer := order.Customer(),CustomerID := order.CustomerID(),
|
DemandDate := order.DemandDate(),ForecastDemandDate := order.ForecastDemandDate(),IsFilling := true,
|
OrderType := '提拉',PanelBigSheetQuantity := order.PanelBigSheetQuantity(),ProductID := order.ProductID(),
|
Quantity := order.Quantity(),SalesSegmentName := order.SalesSegmentName(),SalesAmount := order.SalesAmount(),
|
SchemeName := schemeName,StockingPointID := order.StockingPointID(),UnitOfMeasureName := order.UnitOfMeasureName(),
|
VerNo := verNoOrder.VerNo()
|
);
|
|
filllingCapacityOrderScheme.FillingCapacityOrder(relinsert, fillingOrder);
|
}
|
*]
|
}
|