From 0afdd1bc9376b24ba8722b77d92e28a38862c7a5 Mon Sep 17 00:00:00 2001
From: lazhen <17772815105@139.com>
Date: 星期三, 06 十一月 2024 18:53:41 +0800
Subject: [PATCH] 装配上线计划数据中台推送接口
---
_Main/BL/Type_AssemblyOnlinePlanCell0/DefaultValue_Order.qbl | 6 ++
_Main/BL/Type_AssemblyOnlinePlanPush/StaticMethod_GenerateData.qbl | 39 +++++-------
_Main/BL/Type_CustomerDemandPPAIDS/StaticMethod_Publish.qbl | 28 ---------
_Main/BL/Type_AssemblyOnlinePlanCell0/Attribute_Order.qbl | 8 ++
_Main/BL/Type_InterfaceDataset/Method_PublishPlanReportData.qbl | 2
_Main/BL/Type_AssemblyOnlinePlanVersion/Method_Generate.qbl | 2
_Main/BL/Type_CustomerDemandPPAIDS/StaticMethod_GenerateData.qbl | 7 +-
_Main/BL/Type_AssemblyOnlinePlanPush/StaticMethod_Publish.qbl | 27 +++++++++
_Main/BL/Type_AssemblyOnlinePlanVersion/StaticMethod_RefreshData.qbl | 6 -
9 files changed, 66 insertions(+), 59 deletions(-)
diff --git a/_Main/BL/Type_AssemblyOnlinePlanCell0/Attribute_Order.qbl b/_Main/BL/Type_AssemblyOnlinePlanCell0/Attribute_Order.qbl
new file mode 100644
index 0000000..c4b8b02
--- /dev/null
+++ b/_Main/BL/Type_AssemblyOnlinePlanCell0/Attribute_Order.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Order
+{
+ #keys: '3[415136.0.1280830135][415136.0.1280830134][415136.0.1280830136]'
+ Description: '鐢熶骇椤哄簭锛圫tring锛�'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_AssemblyOnlinePlanCell0/DefaultValue_Order.qbl b/_Main/BL/Type_AssemblyOnlinePlanCell0/DefaultValue_Order.qbl
new file mode 100644
index 0000000..9726838
--- /dev/null
+++ b/_Main/BL/Type_AssemblyOnlinePlanCell0/DefaultValue_Order.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: Order
+}
diff --git a/_Main/BL/Type_AssemblyOnlinePlanPush/StaticMethod_GenerateData.qbl b/_Main/BL/Type_AssemblyOnlinePlanPush/StaticMethod_GenerateData.qbl
index a06d769..b7670aa 100644
--- a/_Main/BL/Type_AssemblyOnlinePlanPush/StaticMethod_GenerateData.qbl
+++ b/_Main/BL/Type_AssemblyOnlinePlanPush/StaticMethod_GenerateData.qbl
@@ -1,10 +1,9 @@
Quintiq file version 2.0
#parent: #root
StaticMethod GenerateData (
- const MacroPlan macroplan,
InterfaceDataset interfaceDataset,
- String executor,
- Boolean versionflag
+ const MacroPlan macroplan,
+ String executor
)
{
Description: '鐢熸垚鍙互涓嬪彂鐨勫鎴烽渶姹傦紙PPA+IDS锛夋暟鎹�'
@@ -25,32 +24,28 @@
, Name := Translations::InterfaceDataset_AssemblyOnlinePlanPPPSPush_Name()
, InterfaceDateTime := nowdate
, Message := '瑁呴厤涓婄嚎璁″垝-PPPS浼犺緭鑷虫暟鎹腑鍙帮紙鍖呭惈鎺掑簭锛�/SAP锛堜笉鍖呭惈鎺掑簭锛�'
- , IsShow := false
- , Last := true
- , ReturnSuccess := true
- , ReturnMsg := 'Success'
- , Success := true
+ , Last := true
);
- traverse( macroplan, AssemblyOnlinePlanColumn, column ){
- traverse( column, AssemblyOnlinePlanCell, cell, cell.Value() <> '' and cell.AssemblyOnlinePlanRow().Type() = '1' ){
- quantityrow := cell.AssemblyOnlinePlanRow();
- ordercell := selectobject( column, AssemblyOnlinePlanCell, ocell, ocell.AssemblyOnlinePlanRow().ProductID() = quantityrow.ProductID()
- and ocell.AssemblyOnlinePlanRow().ProductionLine() = quantityrow.ProductionLine()
- and ocell.AssemblyOnlinePlanRow().Type() = '2' );
- product := selectobject( macroplan, Product_MP, product, product.ID() = quantityrow.ProductID() );
-
- cd :=interfaceDataset.AssemblyOnlinePlanPPPSPush( relnew, Product := product.ID()
- , PlanningDate := column.ColumnDate()
- , PlanningQty := [Number]cell.Value()
- , Sequence := ordercell.Value()
+ traverse( interfaceDataset, AssemblyOnlinePlanVersion, verison, not verison.IsShow() ){
+ traverse( verison, Column, column, column.TimeUnit() = Translations::MP_GlobalParameters_Day() ){
+ traverse( column, Cell, cell ){
+ row := cell.Row();
+ cd :=interfaceDataset.AssemblyOnlinePlanPPPSPush( relnew, Product := row.ProductID()
+ , PlanningDate := column.StartDate()
+ , PlanningQty := [Number]cell.Quantity()
+ , Sequence := cell.Order()
, VersionName := macroplan.ScenarioName()
, InterfaceTime := nowdate
- , VersionFlag := versionflag
- , ProductFourCode := product.Notes()
+ , FactoryName := row.Unit()
+ , Fac := ifexpr( row.Unit() = FinancialProductionReport::GetDefaultCCUnit(), 'CC', 'DL' )
+ // , VersionFlag := versionflag
+ , ProductFourCode := ifexpr( row.ProductID() = row.Name(), '', row.Name() )
);
loginfo.AssemblyOnlinePlanPPPSPush( relinsert, cd );
+ }
}
}
loginfo.TotalRow( loginfo.AssemblyOnlinePlanPPPSPush( relsize ) );
+ AssemblyOnlinePlanPPPSPush::Publish( interfaceDataset, loginfo );
*]
}
diff --git a/_Main/BL/Type_AssemblyOnlinePlanPush/StaticMethod_Publish.qbl b/_Main/BL/Type_AssemblyOnlinePlanPush/StaticMethod_Publish.qbl
new file mode 100644
index 0000000..8cf3ab9
--- /dev/null
+++ b/_Main/BL/Type_AssemblyOnlinePlanPush/StaticMethod_Publish.qbl
@@ -0,0 +1,27 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod Publish (
+ InterfaceDataset owner,
+ InterfaceLoginfo loginfo
+)
+{
+ TextBody:
+ [*
+ //// 鐢勫叞楦� Jul-17-2024 (created)
+ jsonarray := JSON::Array();
+ traverse( owner, AssemblyOnlinePlanPPPSPush, aopdata ){
+ aopdatajson := JSON::Object().Add( "product", aopdata.Product() ).Add( "planningDate", aopdata.PlanningDate().Format( 'Y-M2-D2' ) )//"2024-10-01" )
+ .Add( "planningQty", aopdata.PlanningQty() )
+ .Add( "sequence", aopdata.Sequence() )
+ .Add( "factoryName", aopdata.FactoryName() )
+ .Add( "fac", aopdata.Fac() )
+ .Add( "versionName", aopdata.VersionName() )
+ .Add( "interfaceTime", aopdata.InterfaceTime().Format( 'Y-M2-D2 H:m:s' ) ).Build();/*"2024-10-01 12:00:00" )*/
+ jsonarray.Add( aopdatajson );
+ }
+ requestbody := jsonarray.Build().AsString();
+ info( requestbody );
+ data := InterfaceLoginfo::CallInterfaceForDataCenter( owner, loginfo );
+ info( '----------------', data.AsString() );
+ *]
+}
diff --git a/_Main/BL/Type_AssemblyOnlinePlanVersion/Method_Generate.qbl b/_Main/BL/Type_AssemblyOnlinePlanVersion/Method_Generate.qbl
index 2509c4b..a13a3a7 100644
--- a/_Main/BL/Type_AssemblyOnlinePlanVersion/Method_Generate.qbl
+++ b/_Main/BL/Type_AssemblyOnlinePlanVersion/Method_Generate.qbl
@@ -7,6 +7,7 @@
TextBody:
[*
// 鐢勫叞楦� Jun-25-2024 (created)
+ info( '-----------Search start-------' );
table := selectobject( this,InterfaceDataset.AssemblyOnlinePlanVersion, report, not report.IsShow() );
//娓呯┖涔嬪墠瀛樺偍鐨勬樉绀烘暟鎹�
aopcolumns := selectuniquevalues( table, Column, aopcolumn, aopcolumn.TimeUnit() = search.TimeUnit() and aopcolumn.StartDate() >= search.StartDate() and aopcolumn.StartDate() <= search.EndDate(), aopcolumn.StartDate() );
@@ -31,5 +32,6 @@
}
}
}
+ info( '-----------Search end-------' );
*]
}
diff --git a/_Main/BL/Type_AssemblyOnlinePlanVersion/StaticMethod_RefreshData.qbl b/_Main/BL/Type_AssemblyOnlinePlanVersion/StaticMethod_RefreshData.qbl
index 48860cb..9d13f21 100644
--- a/_Main/BL/Type_AssemblyOnlinePlanVersion/StaticMethod_RefreshData.qbl
+++ b/_Main/BL/Type_AssemblyOnlinePlanVersion/StaticMethod_RefreshData.qbl
@@ -24,15 +24,11 @@
table.GenerateColumn( aopcolumns, false );
traverse( macroPlan, NewAssemblyOnlinePlanRow, aoprow, aoprow.Type() = '1' ){
row := table.GetRow( aoprow );
- info( '------------------------', row.Type() );
traverse( aoprow, NewAssemblyOnlinePlanCell, aopcell ){
column := selectobject( table, Column, column, column.TimeUnit() = Translations::MP_GlobalParameters_Day() and column.StartDate() = aopcell.NewAssemblyOnlinePlanColumn().StartDate() );
cell := selectobject( row, Cell, cell, cell.Column() = column );
- cell.InventoryWeight( aopcell.InventoryWeight() );
- // cell.ProductionSerialNumber( aopcell.ProductionSerialNumber() );
+ // cell.InventoryWeight( aopcell.InventoryWeight() );
cell.Quantity( aopcell.Quantity() );
- // cell.Shift( aopcell.Shift() );
- // cell.Value( aopcell.Value() );
}
}
showtable.Generate( search );
diff --git a/_Main/BL/Type_CustomerDemandPPAIDS/StaticMethod_GenerateData.qbl b/_Main/BL/Type_CustomerDemandPPAIDS/StaticMethod_GenerateData.qbl
index 8876fdd..a9c3acf 100644
--- a/_Main/BL/Type_CustomerDemandPPAIDS/StaticMethod_GenerateData.qbl
+++ b/_Main/BL/Type_CustomerDemandPPAIDS/StaticMethod_GenerateData.qbl
@@ -25,10 +25,6 @@
, InterfaceDateTime := nowdate
, Message := '瀹㈡埛闇�姹傦紙PPA+IDS锛夋暟鎹帹閫�'
, Last := true
- , IsShow := false
- , ReturnSuccess := true
- , ReturnMsg := 'Success'
- , Success := true
);
traverse( interfaceDataset, CustomerDemandIDS.Row, row ){
traverse( row, Cell, cell ){
@@ -37,11 +33,14 @@
, DemandQty := [Number]cell.Value()
, VersionName := macroplan.ScenarioName()
, InterfaceTime := nowdate
+ , FactoryName := row.Factory()
+ , Fac := ifexpr( row.Factory() = FinancialProductionReport::GetDefaultCCUnit(), 'CC', 'DL' )
// , VersionFlag := versionflag
);
loginfo.CustomerDemandPPAIDS( relinsert, cd );
}
}
loginfo.TotalRow( loginfo.CustomerDemandPPAIDS( relsize ) );
+ CustomerDemandPPAIDS::Publish( interfaceDataset, loginfo );
*]
}
diff --git a/_Main/BL/Type_CustomerDemandPPAIDS/StaticMethod_Publish.qbl b/_Main/BL/Type_CustomerDemandPPAIDS/StaticMethod_Publish.qbl
index 15c3ce4..e6cfe5c 100644
--- a/_Main/BL/Type_CustomerDemandPPAIDS/StaticMethod_Publish.qbl
+++ b/_Main/BL/Type_CustomerDemandPPAIDS/StaticMethod_Publish.qbl
@@ -2,7 +2,7 @@
#parent: #root
StaticMethod Publish (
InterfaceDataset owner,
- String executor
+ InterfaceLoginfo loginfo
)
{
TextBody:
@@ -16,35 +16,9 @@
.Add( "interfaceTime", ids.InterfaceTime().Format( 'Y-M2-D2 H:m:s' ) ).Build();/*"2024-10-01 12:00:00" )*/
jsonarray.Add( idsjson );
}
- //jsonarray := JSON::Array().Add( JSON::Object().Add( "product", "DZ948293" )
- // ).Build();
requestbody := jsonarray.Build().AsString();
info( requestbody );
- loginfo := owner.InterfaceLoginfo( relnew, ExecuteUser := executor
- , Name := Translations::InterfaceDataset_CustomerDemandPPAIDS_Name()
- , InterfaceDateTime := DateTime::ActualTime()
- , Message := '瀹㈡埛闇�姹傦紙PPA+IDS锛�'
- , RequestBody := requestbody);
- //error( '--------------------', requestbody );
data := InterfaceLoginfo::CallInterfaceForDataCenter( owner, loginfo );
info( '----------------', data.AsString() );
- //if( not isnull( data ) ){
- //
- // cnv2 := StringToDate::StandardConverter();
- // cnv2.SetCustomConversion();
- // cnv2.CustomFormatString( 'yyyy-MM-dd' );
- //
- // sadatalist := construct( FinishedEngineInventorys );
- // for( seq := 0;seq < data.Size();seq++){
- // item := data.Get(seq);
- // sadata := FinishedEngineInventory::GenerateData( loginfo, cnv2, item );
- // sadatalist.Add( sadata );
- // }
- //
- // options := DatasetFindOptions::Construct( 'MacroPlan' ).IncludeOffline( true ); //to load we must search offline datasets.
- // mdskey := DatasetController::FindUnique( options );
- //
- // MDSMacroPlan::Root( mdskey ) -> InventoryInterfaceData::SynchronizeInventory( owner, sadatalist );
- //}
*]
}
diff --git a/_Main/BL/Type_InterfaceDataset/Method_PublishPlanReportData.qbl b/_Main/BL/Type_InterfaceDataset/Method_PublishPlanReportData.qbl
index 68a5c84..878b44f 100644
--- a/_Main/BL/Type_InterfaceDataset/Method_PublishPlanReportData.qbl
+++ b/_Main/BL/Type_InterfaceDataset/Method_PublishPlanReportData.qbl
@@ -24,7 +24,7 @@
// CustomerDemandIDS::GenerateData( this, recyclebin, archive );
}
if( isassembleonlineplan ){//瑁呴厤涓婄嚎璁″垝
- // AssemblyOnlinePlanVersion::RefreshData( this, macroplan );
+ AssemblyOnlinePlanPPPSPush::GenerateData( this, macroplan, executor );
}
if( isinventoryplan ){//搴撳瓨璁″垝
// CustomerDemandIDS::GenerateData( this, recyclebin, archive );
--
Gitblit v1.9.3