From 3f4662e0caa56de16e528630d3517765f6ce46d4 Mon Sep 17 00:00:00 2001
From: lazhen <17772815105@139.com>
Date: 星期一, 30 九月 2024 15:39:07 +0800
Subject: [PATCH] 装配上线计划集合类名

---
 _Main/BL/Type_AssemblyOnlinePlanCell0/Attribute_ProductionSerialNumber.qbl                          |    7 +
 _Main/BL/Relations/Relation_AssemblyOnlinePlanVersionRow_Cell_AssemblyOnlinePlanVersionCell_Row.qbl |   23 +++
 _Main/BL/Relations/Relation_AssemblyOnlinePlanVersionColumn_InterfaceDataset_InterfaceDataset_A.qbl |   34 ++++
 _Main/BL/Type_AssemblyOnlinePlanVersionRow/Attribute_RowNr.qbl                                      |    7 +
 _Main/BL/Type_AssemblyOnlinePlanVersionRow/_ROOT_Type_AssemblyOnlinePlanVersionRow.qbl              |   10 +
 _Main/BL/Type_AssemblyOnlinePlanCell0/Attribute_Shift.qbl                                           |    8 +
 _Main/BL/Type_AssemblyOnlinePlanCell0/StaticMethod_Download.qbl                                     |   47 ++++++
 _Main/BL/Type_AssemblyOnlinePlanVersionRow/DefaultValue_ProductID.qbl                               |    6 
 _Main/BL/Type_AssemblyOnlinePlanCell0/Attribute_InventoryWeight.qbl                                 |    8 +
 _Main/BL/Type_AssemblyOnlinePlanCell0/DefaultValue_Shift.qbl                                        |    6 
 _Main/BL/Type_AssemblyOnlinePlanColumn0/Attribute_ColumnName.qbl                                    |    7 +
 _Main/BL/Relations/Relation_AssemblyOnlinePlanVersionRow_InterfaceDataset_InterfaceDataset_Asse.qbl |   23 +++
 _Main/BL/Type_MachiningPipelineSource0/StaticMethod_Initialize.qbl                                  |   22 +-
 _Main/BL/Type_AssemblyOnlinePlanCell0/Attribute_Value.qbl                                           |    7 +
 _Main/BL/Type_AssemblyOnlinePlanCell0/DefaultValue_Value.qbl                                        |    6 
 _Main/BL/Type_AssemblyOnlinePlanVersionRow/DefaultValue_Type.qbl                                    |    6 
 _Main/BL/Type_AssemblyOnlinePlanVersionRow/Attribute_Type.qbl                                       |   15 ++
 _Main/BL/Type_AssemblyOnlinePlanColumn0/DefaultValue_ColumnName.qbl                                 |    6 
 _Main/BL/Type_AssemblyOnlinePlanColumn0/Attribute_ColumnDate.qbl                                    |    7 +
 _Main/BL/Type_AssemblyOnlinePlanCell0/_ROOT_Type_AssemblyOnlinePlanVersionCell#0.qbl                |   10 +
 _Main/BL/Type_AssemblyOnlinePlanVersionRow/Attribute_ProductID.qbl                                  |    7 +
 _Main/BL/Type_AssemblyOnlinePlanVersionRow/DefaultValue_RowNr.qbl                                   |    6 
 _Main/BL/Relations/Relation_AssemblyOnlinePlanVersionColumn_Cell_AssemblyOnlinePlanVersionCell_.qbl |   23 +++
 _Main/BL/Type_AssemblyOnlinePlanColumn0/Attribute_ColumnIndex.qbl                                   |    7 +
 _Main/BL/Type_AssemblyOnlinePlanVersionRow/Attribute_ProductionLine.qbl                             |    7 +
 _Main/BL/Type_AssemblyOnlinePlanVersionRow/DefaultValue_ProductionLine.qbl                          |    6 
 _Main/BL/Type_AssemblyOnlinePlanCell0/Attribute_Quantity.qbl                                        |    7 +
 _Main/BL/Type_AssemblyOnlinePlanCell0/StaticMethod_RefreshData.qbl                                  |   36 +++++
 _Main/BL/Type_AssemblyOnlinePlanColumn0/_ROOT_Type_AssemblyOnlinePlanVersionColumn#0.qbl            |   10 +
 29 files changed, 364 insertions(+), 10 deletions(-)

diff --git a/_Main/BL/Relations/Relation_AssemblyOnlinePlanVersionColumn_Cell_AssemblyOnlinePlanVersionCell_.qbl b/_Main/BL/Relations/Relation_AssemblyOnlinePlanVersionColumn_Cell_AssemblyOnlinePlanVersionCell_.qbl
new file mode 100644
index 0000000..e92f156
--- /dev/null
+++ b/_Main/BL/Relations/Relation_AssemblyOnlinePlanVersionColumn_Cell_AssemblyOnlinePlanVersionCell_.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation AssemblyOnlinePlanVersionColumn_Cell_AssemblyOnlinePlanVersionCell_Column
+{
+  #keys: '1[415136.0.1174730270]'
+  DefaultRelationStrategy
+  {
+  }
+  RelationSide.LeftSide Cell
+  {
+    #keys: '3[415136.0.1174730272][415136.0.1174730271][415136.0.1174730273]'
+    Cardinality: '1toN'
+    ObjectDefinition: AssemblyOnlinePlanVersionColumn
+    OwningSide: 'Owned'
+  }
+  RelationSide.RightSide Column
+  {
+    #keys: '3[415136.0.1174730275][415136.0.1174730274][415136.0.1174730276]'
+    Cardinality: '0to1'
+    ObjectDefinition: AssemblyOnlinePlanVersionCell
+    OwningSide: 'Reference'
+  }
+}
diff --git a/_Main/BL/Relations/Relation_AssemblyOnlinePlanVersionColumn_InterfaceDataset_InterfaceDataset_A.qbl b/_Main/BL/Relations/Relation_AssemblyOnlinePlanVersionColumn_InterfaceDataset_InterfaceDataset_A.qbl
new file mode 100644
index 0000000..5933f11
--- /dev/null
+++ b/_Main/BL/Relations/Relation_AssemblyOnlinePlanVersionColumn_InterfaceDataset_InterfaceDataset_A.qbl
@@ -0,0 +1,34 @@
+Quintiq file version 2.0
+#parent: #root
+Relation AssemblyOnlinePlanVersionColumn_InterfaceDataset_InterfaceDataset_AssemblyOnlinePlanVersionColumn
+{
+  #keys: '1[415136.0.1176550032]'
+  DeclarativeSequenceRelationStrategy
+  {
+    #keys: '13[0.0.0][415136.0.1176550051][415136.0.1176550045][415136.0.1176550052][415136.0.1176550046][415136.0.1176550053][415136.0.1176550047][415136.0.1176550054][415136.0.1176550048][415136.0.1176550055][415136.0.1176550049][415136.0.1176550056][415136.0.1176550050]'
+    SequenceElementSuffix: 'AssemblyOnlinePlanVersionColumn'
+    SequenceSuffix: 'AssemblyOnlinePlanVersionColumn'
+    SortAttributes:
+    [
+      DeclarativeSequenceRelationSortAttribute
+      {
+        #keys: '1[415136.0.1176550058]'
+        Attribute: 'ColumnDate'
+      }
+    ]
+  }
+  RelationSide.LeftSide InterfaceDataset
+  {
+    #keys: '3[415136.0.1176550034][415136.0.1176550033][415136.0.1176550035]'
+    Cardinality: '0to1'
+    ObjectDefinition: AssemblyOnlinePlanVersionColumn
+    OwningSide: 'Reference'
+  }
+  RelationSide.RightSide AssemblyOnlinePlanVersionColumn
+  {
+    #keys: '3[415136.0.1176550037][415136.0.1176550036][415136.0.1176550038]'
+    Cardinality: '1toN'
+    ObjectDefinition: InterfaceDataset
+    OwningSide: 'Owned'
+  }
+}
diff --git a/_Main/BL/Relations/Relation_AssemblyOnlinePlanVersionRow_Cell_AssemblyOnlinePlanVersionCell_Row.qbl b/_Main/BL/Relations/Relation_AssemblyOnlinePlanVersionRow_Cell_AssemblyOnlinePlanVersionCell_Row.qbl
new file mode 100644
index 0000000..ff699e8
--- /dev/null
+++ b/_Main/BL/Relations/Relation_AssemblyOnlinePlanVersionRow_Cell_AssemblyOnlinePlanVersionCell_Row.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation AssemblyOnlinePlanVersionRow_Cell_AssemblyOnlinePlanVersionCell_Row
+{
+  #keys: '1[415136.0.1174730181]'
+  DefaultRelationStrategy
+  {
+  }
+  RelationSide.LeftSide Cell
+  {
+    #keys: '3[415136.0.1174730183][415136.0.1174730182][415136.0.1174730184]'
+    Cardinality: '1toN'
+    ObjectDefinition: AssemblyOnlinePlanVersionRow
+    OwningSide: 'Reference'
+  }
+  RelationSide.RightSide Row
+  {
+    #keys: '3[415136.0.1174730186][415136.0.1174730185][415136.0.1174730187]'
+    Cardinality: '0to1'
+    ObjectDefinition: AssemblyOnlinePlanVersionCell
+    OwningSide: 'Reference'
+  }
+}
diff --git a/_Main/BL/Relations/Relation_AssemblyOnlinePlanVersionRow_InterfaceDataset_InterfaceDataset_Asse.qbl b/_Main/BL/Relations/Relation_AssemblyOnlinePlanVersionRow_InterfaceDataset_InterfaceDataset_Asse.qbl
new file mode 100644
index 0000000..7b963fb
--- /dev/null
+++ b/_Main/BL/Relations/Relation_AssemblyOnlinePlanVersionRow_InterfaceDataset_InterfaceDataset_Asse.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation AssemblyOnlinePlanVersionRow_InterfaceDataset_InterfaceDataset_AssemblyOnlinePlanVersionRow
+{
+  #keys: '1[415136.0.1176550018]'
+  DefaultRelationStrategy
+  {
+  }
+  RelationSide.LeftSide InterfaceDataset
+  {
+    #keys: '3[415136.0.1176550020][415136.0.1176550019][415136.0.1176550021]'
+    Cardinality: '0to1'
+    ObjectDefinition: AssemblyOnlinePlanVersionRow
+    OwningSide: 'Reference'
+  }
+  RelationSide.RightSide AssemblyOnlinePlanVersionRow
+  {
+    #keys: '3[415136.0.1176550023][415136.0.1176550022][415136.0.1176550024]'
+    Cardinality: '1toN'
+    ObjectDefinition: InterfaceDataset
+    OwningSide: 'Owned'
+  }
+}
diff --git a/_Main/BL/Type_AssemblyOnlinePlanCell0/Attribute_InventoryWeight.qbl b/_Main/BL/Type_AssemblyOnlinePlanCell0/Attribute_InventoryWeight.qbl
new file mode 100644
index 0000000..a536175
--- /dev/null
+++ b/_Main/BL/Type_AssemblyOnlinePlanCell0/Attribute_InventoryWeight.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute InventoryWeight
+{
+  #keys: '3[415136.0.1174730142][415136.0.1174730141][415136.0.1174730143]'
+  Description: '鍓╀綑搴撳瓨 - 鏈�灏忓簱瀛�'
+  ValueType: Real
+}
diff --git a/_Main/BL/Type_AssemblyOnlinePlanCell0/Attribute_ProductionSerialNumber.qbl b/_Main/BL/Type_AssemblyOnlinePlanCell0/Attribute_ProductionSerialNumber.qbl
new file mode 100644
index 0000000..839fa49
--- /dev/null
+++ b/_Main/BL/Type_AssemblyOnlinePlanCell0/Attribute_ProductionSerialNumber.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ProductionSerialNumber
+{
+  #keys: '3[415136.0.1174730145][415136.0.1174730144][415136.0.1174730146]'
+  ValueType: Number
+}
diff --git a/_Main/BL/Type_AssemblyOnlinePlanCell0/Attribute_Quantity.qbl b/_Main/BL/Type_AssemblyOnlinePlanCell0/Attribute_Quantity.qbl
new file mode 100644
index 0000000..bfb6bf5
--- /dev/null
+++ b/_Main/BL/Type_AssemblyOnlinePlanCell0/Attribute_Quantity.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Quantity
+{
+  #keys: '3[415136.0.1174730148][415136.0.1174730147][415136.0.1174730149]'
+  ValueType: Real
+}
diff --git a/_Main/BL/Type_AssemblyOnlinePlanCell0/Attribute_Shift.qbl b/_Main/BL/Type_AssemblyOnlinePlanCell0/Attribute_Shift.qbl
new file mode 100644
index 0000000..b9b6d77
--- /dev/null
+++ b/_Main/BL/Type_AssemblyOnlinePlanCell0/Attribute_Shift.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Shift
+{
+  #keys: '3[415136.0.1174730151][415136.0.1174730150][415136.0.1174730152]'
+  Description: '鐝'
+  ValueType: String
+}
diff --git a/_Main/BL/Type_AssemblyOnlinePlanCell0/Attribute_Value.qbl b/_Main/BL/Type_AssemblyOnlinePlanCell0/Attribute_Value.qbl
new file mode 100644
index 0000000..ef0e9df
--- /dev/null
+++ b/_Main/BL/Type_AssemblyOnlinePlanCell0/Attribute_Value.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Value
+{
+  #keys: '3[415136.0.1174730154][415136.0.1174730153][415136.0.1174730155]'
+  ValueType: String
+}
diff --git a/_Main/BL/Type_AssemblyOnlinePlanCell0/DefaultValue_Shift.qbl b/_Main/BL/Type_AssemblyOnlinePlanCell0/DefaultValue_Shift.qbl
new file mode 100644
index 0000000..b925fd8
--- /dev/null
+++ b/_Main/BL/Type_AssemblyOnlinePlanCell0/DefaultValue_Shift.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+  TargetAttribute: Shift
+}
diff --git a/_Main/BL/Type_AssemblyOnlinePlanCell0/DefaultValue_Value.qbl b/_Main/BL/Type_AssemblyOnlinePlanCell0/DefaultValue_Value.qbl
new file mode 100644
index 0000000..913414b
--- /dev/null
+++ b/_Main/BL/Type_AssemblyOnlinePlanCell0/DefaultValue_Value.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+  TargetAttribute: Value
+}
diff --git a/_Main/BL/Type_AssemblyOnlinePlanCell0/StaticMethod_Download.qbl b/_Main/BL/Type_AssemblyOnlinePlanCell0/StaticMethod_Download.qbl
new file mode 100644
index 0000000..3fc9100
--- /dev/null
+++ b/_Main/BL/Type_AssemblyOnlinePlanCell0/StaticMethod_Download.qbl
@@ -0,0 +1,47 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod Download (
+  MacroPlan macroPlan
+) as BinaryValue
+{
+  TextBody:
+  [*
+    xmlDOMI      := XMLDOMImplementation::Create();
+    xmlDOM       := xmlDOMI.CreateDocumentFromString( '<?xml version="1.0" encoding="UTF-16"?><table><name>Sheet1</name></table>' );
+    
+    tableElement := xmlDOM.GetElementByTagName( "table", 0 );
+    
+    opcs := selectsortedset( macroPlan, AssemblyOnlinePlanColumn, tempOPC, true, tempOPC.ColumnDate() );
+    oprs := selectsortedset( macroPlan, AssemblyOnlinePlanRow, tempOPR, true, tempOPR.ProductionLine(), tempOPR.ProductID(), tempOPR.Type() );
+    traverse ( opcs, Elements, opc ) {
+      column := xmlDOM.CreateElement( "column" );
+      name   := xmlDOM.CreateElement( "name" );
+      type   := xmlDOM.CreateElement( "type" );
+      name.TextContent( ifexpr( opc.ColumnDate() < macroPlan.StartOfPlanning().Date(), "", opc.ColumnDate().Format( "Y/M2/D2" ) ) );
+      type.TextContent( "String" );
+      column.AppendChild( name );
+      column.AppendChild( type );
+      
+      traverse ( oprs, Elements, opr ) {
+        c    := select( opc, AssemblyOnlinePlanCell, tempOPC, tempOPC.AssemblyOnlinePlanRow() = opr );
+        cell := xmlDOM.CreateElement( "cell" );
+        cell.SetAttribute( "value", guard( c.Value(), "" ) );
+        column.AppendChild( cell );
+      }
+      
+      tableElement.AppendChild( column );
+    }
+    
+    xmlString := xmlDOMI.CreateSerializer().WriteToString( xmlDOM )
+    
+    //info( xmlString );
+    
+    tableGroupHandle := TableGroupHandle::Create( "Sheet1" );
+    tableHandle      := TableHandle::ImportXML( BinaryValue::Construct( xmlString ) );
+    tableGroupHandle.Add( tableHandle );
+    
+    binaryData := XLS::SaveTableGroupToBinaryData( tableGroupHandle, true );
+    
+    return binaryData.AsBinaryValue();
+  *]
+}
diff --git a/_Main/BL/Type_AssemblyOnlinePlanCell0/StaticMethod_RefreshData.qbl b/_Main/BL/Type_AssemblyOnlinePlanCell0/StaticMethod_RefreshData.qbl
new file mode 100644
index 0000000..457a74f
--- /dev/null
+++ b/_Main/BL/Type_AssemblyOnlinePlanCell0/StaticMethod_RefreshData.qbl
@@ -0,0 +1,36 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod RefreshData (
+  MacroPlan macroPlan,
+  OfflinePlanTable opt
+)
+{
+  TextBody:
+  [*
+    macroPlan.AssemblyOnlinePlanRow( relflush );
+    macroPlan.AssemblyOnlinePlanColumn( relflush );
+    
+    // 鎵捐閰嶇嚎琛�
+    oprs := selectsortedset( opt, OfflinePlanRow, tempOPR, tempOPR.ProductionLine() = "DL-MoMo" or tempOPR.ProductionLine() = "CC-MoMo", tempOPR.ProductionLine(), tempOPR.ProductID(), tempOPR.Type() );
+    opcs := selectsortedset( opt, OfflinePlanColumn, tempOPC, true, tempOPC.ColumnDate() );
+    
+    // 鐢熸垚琛ㄦ牸
+    traverse ( opcs, Elements, opc ) {
+      aopc := macroPlan.AssemblyOnlinePlanColumn( relnew, ColumnDate := opc.ColumnDate(), ColumnIndex := opc.ColumnIndex() );
+      traverse ( oprs, Elements, opr ) {
+        aopr := select( macroPlan, AssemblyOnlinePlanRow, tempAOPR, tempAOPR.ProductID() = opr.ProductID() and tempAOPR.ProductionLine() = opr.ProductionLine() and tempAOPR.Type() = opr.Type() );
+        if ( isnull( aopr ) ) {
+          aopr := macroPlan.AssemblyOnlinePlanRow( relnew, ProductID := opr.ProductID(), ProductionLine := opr.ProductionLine(), Type := opr.Type() );
+        }
+        
+        cellOPC := select( opr, OfflinePlanCell, tempOPC, tempOPC.OfflinePlanColumn() = opc );
+        if ( not isnull( cellOPC ) ) {
+          cellAOPC := aopc.AssemblyOnlinePlanCell( relnew, Value := cellOPC.Value() );
+          cellAOPC.AssemblyOnlinePlanRow( relset, aopr );
+        }
+      }
+    }
+    
+    // 澶勭悊鏃ュ巻浜嬩欢
+  *]
+}
diff --git "a/_Main/BL/Type_AssemblyOnlinePlanCell0/_ROOT_Type_AssemblyOnlinePlanVersionCell\0430.qbl" "b/_Main/BL/Type_AssemblyOnlinePlanCell0/_ROOT_Type_AssemblyOnlinePlanVersionCell\0430.qbl"
new file mode 100644
index 0000000..e6e9c7a
--- /dev/null
+++ "b/_Main/BL/Type_AssemblyOnlinePlanCell0/_ROOT_Type_AssemblyOnlinePlanVersionCell\0430.qbl"
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type AssemblyOnlinePlanVersionCell
+{
+  #keys: '5[415136.0.1174730139][415136.0.1174730137][0.0.0][415136.0.1174730138][415136.0.1174730140]'
+  BaseType: Object
+  Description: '瑁呴厤涓婄嚎璁″垝鐗堟湰'
+  StructuredName: 'AssemblyOnlinePlanVersionCells'
+}
diff --git a/_Main/BL/Type_AssemblyOnlinePlanColumn0/Attribute_ColumnDate.qbl b/_Main/BL/Type_AssemblyOnlinePlanColumn0/Attribute_ColumnDate.qbl
new file mode 100644
index 0000000..b0847b4
--- /dev/null
+++ b/_Main/BL/Type_AssemblyOnlinePlanColumn0/Attribute_ColumnDate.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ColumnDate
+{
+  #keys: '3[415136.0.1174730129][415136.0.1174730128][415136.0.1174730130]'
+  ValueType: Date
+}
diff --git a/_Main/BL/Type_AssemblyOnlinePlanColumn0/Attribute_ColumnIndex.qbl b/_Main/BL/Type_AssemblyOnlinePlanColumn0/Attribute_ColumnIndex.qbl
new file mode 100644
index 0000000..e898d87
--- /dev/null
+++ b/_Main/BL/Type_AssemblyOnlinePlanColumn0/Attribute_ColumnIndex.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ColumnIndex
+{
+  #keys: '3[415136.0.1174730132][415136.0.1174730131][415136.0.1174730133]'
+  ValueType: Number
+}
diff --git a/_Main/BL/Type_AssemblyOnlinePlanColumn0/Attribute_ColumnName.qbl b/_Main/BL/Type_AssemblyOnlinePlanColumn0/Attribute_ColumnName.qbl
new file mode 100644
index 0000000..da7556e
--- /dev/null
+++ b/_Main/BL/Type_AssemblyOnlinePlanColumn0/Attribute_ColumnName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ColumnName
+{
+  #keys: '3[415136.0.1174730135][415136.0.1174730134][415136.0.1174730136]'
+  ValueType: String
+}
diff --git a/_Main/BL/Type_AssemblyOnlinePlanColumn0/DefaultValue_ColumnName.qbl b/_Main/BL/Type_AssemblyOnlinePlanColumn0/DefaultValue_ColumnName.qbl
new file mode 100644
index 0000000..2ba9476
--- /dev/null
+++ b/_Main/BL/Type_AssemblyOnlinePlanColumn0/DefaultValue_ColumnName.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+  TargetAttribute: ColumnName
+}
diff --git "a/_Main/BL/Type_AssemblyOnlinePlanColumn0/_ROOT_Type_AssemblyOnlinePlanVersionColumn\0430.qbl" "b/_Main/BL/Type_AssemblyOnlinePlanColumn0/_ROOT_Type_AssemblyOnlinePlanVersionColumn\0430.qbl"
new file mode 100644
index 0000000..022a9c2
--- /dev/null
+++ "b/_Main/BL/Type_AssemblyOnlinePlanColumn0/_ROOT_Type_AssemblyOnlinePlanVersionColumn\0430.qbl"
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type AssemblyOnlinePlanVersionColumn
+{
+  #keys: '5[415136.0.1174730126][415136.0.1174730124][0.0.0][415136.0.1174730125][415136.0.1174730127]'
+  BaseType: Object
+  Description: '瑁呴厤涓婄嚎璁″垝鐗堟湰'
+  StructuredName: 'AssemblyOnlinePlanVersionColumns'
+}
diff --git a/_Main/BL/Type_AssemblyOnlinePlanVersionRow/Attribute_ProductID.qbl b/_Main/BL/Type_AssemblyOnlinePlanVersionRow/Attribute_ProductID.qbl
new file mode 100644
index 0000000..0435960
--- /dev/null
+++ b/_Main/BL/Type_AssemblyOnlinePlanVersionRow/Attribute_ProductID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ProductID
+{
+  #keys: '3[415136.0.1174730079][415136.0.1174730078][415136.0.1174730080]'
+  ValueType: String
+}
diff --git a/_Main/BL/Type_AssemblyOnlinePlanVersionRow/Attribute_ProductionLine.qbl b/_Main/BL/Type_AssemblyOnlinePlanVersionRow/Attribute_ProductionLine.qbl
new file mode 100644
index 0000000..688eed9
--- /dev/null
+++ b/_Main/BL/Type_AssemblyOnlinePlanVersionRow/Attribute_ProductionLine.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ProductionLine
+{
+  #keys: '3[415136.0.1174730082][415136.0.1174730081][415136.0.1174730083]'
+  ValueType: String
+}
diff --git a/_Main/BL/Type_AssemblyOnlinePlanVersionRow/Attribute_RowNr.qbl b/_Main/BL/Type_AssemblyOnlinePlanVersionRow/Attribute_RowNr.qbl
new file mode 100644
index 0000000..1eb0d1c
--- /dev/null
+++ b/_Main/BL/Type_AssemblyOnlinePlanVersionRow/Attribute_RowNr.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute RowNr
+{
+  #keys: '3[415136.0.1174730085][415136.0.1174730084][415136.0.1174730086]'
+  ValueType: String
+}
diff --git a/_Main/BL/Type_AssemblyOnlinePlanVersionRow/Attribute_Type.qbl b/_Main/BL/Type_AssemblyOnlinePlanVersionRow/Attribute_Type.qbl
new file mode 100644
index 0000000..128135c
--- /dev/null
+++ b/_Main/BL/Type_AssemblyOnlinePlanVersionRow/Attribute_Type.qbl
@@ -0,0 +1,15 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Type
+{
+  #keys: '3[415136.0.1174730088][415136.0.1174730087][415136.0.1174730089]'
+  Description:
+  [*
+    浜х嚎鍚嶈    锛�0
+    Quantity琛岋細1
+    Order琛�     锛�2
+    鍚堣琛�        锛�3
+    鐝琛�        锛�4
+  *]
+  ValueType: String
+}
diff --git a/_Main/BL/Type_AssemblyOnlinePlanVersionRow/DefaultValue_ProductID.qbl b/_Main/BL/Type_AssemblyOnlinePlanVersionRow/DefaultValue_ProductID.qbl
new file mode 100644
index 0000000..98649b2
--- /dev/null
+++ b/_Main/BL/Type_AssemblyOnlinePlanVersionRow/DefaultValue_ProductID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+  TargetAttribute: ProductID
+}
diff --git a/_Main/BL/Type_AssemblyOnlinePlanVersionRow/DefaultValue_ProductionLine.qbl b/_Main/BL/Type_AssemblyOnlinePlanVersionRow/DefaultValue_ProductionLine.qbl
new file mode 100644
index 0000000..c59ec43
--- /dev/null
+++ b/_Main/BL/Type_AssemblyOnlinePlanVersionRow/DefaultValue_ProductionLine.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+  TargetAttribute: ProductionLine
+}
diff --git a/_Main/BL/Type_AssemblyOnlinePlanVersionRow/DefaultValue_RowNr.qbl b/_Main/BL/Type_AssemblyOnlinePlanVersionRow/DefaultValue_RowNr.qbl
new file mode 100644
index 0000000..a05f652
--- /dev/null
+++ b/_Main/BL/Type_AssemblyOnlinePlanVersionRow/DefaultValue_RowNr.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+  TargetAttribute: RowNr
+}
diff --git a/_Main/BL/Type_AssemblyOnlinePlanVersionRow/DefaultValue_Type.qbl b/_Main/BL/Type_AssemblyOnlinePlanVersionRow/DefaultValue_Type.qbl
new file mode 100644
index 0000000..fd112e9
--- /dev/null
+++ b/_Main/BL/Type_AssemblyOnlinePlanVersionRow/DefaultValue_Type.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+  TargetAttribute: Type
+}
diff --git a/_Main/BL/Type_AssemblyOnlinePlanVersionRow/_ROOT_Type_AssemblyOnlinePlanVersionRow.qbl b/_Main/BL/Type_AssemblyOnlinePlanVersionRow/_ROOT_Type_AssemblyOnlinePlanVersionRow.qbl
new file mode 100644
index 0000000..232548b
--- /dev/null
+++ b/_Main/BL/Type_AssemblyOnlinePlanVersionRow/_ROOT_Type_AssemblyOnlinePlanVersionRow.qbl
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type AssemblyOnlinePlanVersionRow
+{
+  #keys: '5[415136.0.1174730076][415136.0.1174730074][0.0.0][415136.0.1174730075][415136.0.1174730077]'
+  BaseType: Object
+  Description: '瑁呴厤涓婄嚎璁″垝鐗堟湰'
+  StructuredName: 'AssemblyOnlinePlanVersionRows'
+}
diff --git a/_Main/BL/Type_MachiningPipelineSource0/StaticMethod_Initialize.qbl b/_Main/BL/Type_MachiningPipelineSource0/StaticMethod_Initialize.qbl
index fefeec7..ca7ed85 100644
--- a/_Main/BL/Type_MachiningPipelineSource0/StaticMethod_Initialize.qbl
+++ b/_Main/BL/Type_MachiningPipelineSource0/StaticMethod_Initialize.qbl
@@ -32,19 +32,21 @@
       //鏄惁灞炰簬澶ц繛宸ュ巶
       isdl                    := stockingpoint.ID().StartsWith( 'DL' ) or unit.ID().StartsWith( 'DL' ) or exists( parentunits, Elements, punit, punit.ID().StartsWith( 'DL' ) );//unit.ID() = dlunit or exists( parentunits, Elements, punit, punit.ID() = dlunit );
       //鏄惁灞炰簬闀挎槬瑁呴厤绾緾C鍘傚唴搴�
-      isccassemnly            := stockingpoint.ID().EndsWith( '鍘傚唴搴�' ) and ( stockingpoint.ID().StartsWith( 'CC' ) or stockingpoint.ID().StartsWith( '闀挎槬' ) );//unit.ID() = MachiningPipelineReport::GetDefaultCCAssemnlyUnit() or exists( parentunits, Elements, punit, punit.ID() = MachiningPipelineReport::GetDefaultCCAssemnlyUnit() );
+    //  isccassemnly            := stockingpoint.ID().EndsWith( '鍘傚唴搴�' ) and ( stockingpoint.ID().StartsWith( 'CC' ) or stockingpoint.ID().StartsWith( '闀挎槬' ) );//unit.ID() = MachiningPipelineReport::GetDefaultCCAssemnlyUnit() or exists( parentunits, Elements, punit, punit.ID() = MachiningPipelineReport::GetDefaultCCAssemnlyUnit() );
       //鏄惁灞炰簬澶ц繛瑁呴厤绾緿L鍘傚唴搴�
-      isdlassemnly            := stockingpoint.ID().EndsWith( '鍘傚唴搴�' ) and ( stockingpoint.ID().StartsWith( 'DL' ) or stockingpoint.ID().StartsWith( '澶ц繛' ) );//unit.ID() = MachiningPipelineReport::GetDefaultDLAssemnlyUnit() or exists( parentunits, Elements, punit, punit.ID() = MachiningPipelineReport::GetDefaultDLAssemnlyUnit() );
+    //  isdlassemnly            := stockingpoint.ID().EndsWith( '鍘傚唴搴�' ) and ( stockingpoint.ID().StartsWith( 'DL' ) or stockingpoint.ID().StartsWith( '澶ц繛' ) );//unit.ID() = MachiningPipelineReport::GetDefaultDLAssemnlyUnit() or exists( parentunits, Elements, punit, punit.ID() = MachiningPipelineReport::GetDefaultDLAssemnlyUnit() );
       //鏄惁灞炰簬闀挎槬鏈哄姞浜х嚎
       isccproduction          := stockingpoint.ID().EndsWith( '绾胯竟搴�' ) and ( stockingpoint.ID().StartsWith( 'CC' ) or stockingpoint.ID().StartsWith( '闀挎槬' ) );//unit.ID() = MachiningPipelineReport::GetDefaultCCProductionUnit() or exists( parentunits, Elements, punit, punit.ID() = MachiningPipelineReport::GetDefaultCCProductionUnit() );
       //鏄惁灞炰簬澶ц繛鏈哄姞浜х嚎
       isdlproduction          := unit.ID().EndsWith( 'MoMo' ) and unit.ID().StartsWith( 'DL' );//unit.ID() = MachiningPipelineReport::GetDefaultDLProductionUnit() or exists( parentunits, Elements, punit, punit.ID() = MachiningPipelineReport::GetDefaultDLProductionUnit() );
       if( iscc or isdl ){
         traverse( stockingpoint, ProductInStockingPoint_MP, pisp,  pisp.Product_MP().IsLeaf() and not pisp.IsSystem() 
-    //              and exists( pisp.Product_MP().GetAllParent(), Elements, e, e.ID() = productparent ) 
-                  and exists( pisp, ProductInStockingPointInPeriod, pispip, not pispip.Period_MP().IsHistorical() and pispip.Period_MP().TimeUnit() = Translations::MP_GlobalParameters_Day() and ( pispip.NewSupplyQuantity() <> 0 or pispip.PlannedInventoryLevelEnd() <> 0 ) ) ){
+                  and exists( pisp.Product_MP().GetAllParent(), Elements, e, e.ID() = productparent ) 
+                  and exists( pisp, ProductInStockingPointInPeriod, pispip, not pispip.Period_MP().IsHistorical() and pispip.Period_MP().TimeUnit() = Translations::MP_GlobalParameters_Day() and ( pispip.NewSupplyQuantity() <> 0 or pispip.PlannedInventoryLevelEnd() <> 0 or pispip.DependentDemandAndSalesDemandQuantity() <> 0 ) ) ){
+          isccassemnly        := stockingpoint.ID().EndsWith( pisp.Product_MP().ParentID() + '绾胯竟搴�' ) and ( stockingpoint.ID().StartsWith( 'CC' ) or stockingpoint.ID().StartsWith( '闀挎槬' ) );
+          isdlassemnly        := stockingpoint.ID().EndsWith( pisp.Product_MP().ParentID() ) and ( stockingpoint.ID().StartsWith( 'DL' ) or stockingpoint.ID().StartsWith( '澶ц繛' ) );
           pispips             := selectsortedset( pisp, ProductInStockingPointInPeriod, pispip, not pispip.Period_MP().IsHistorical() 
-                                                  and pispip.Period_MP().TimeUnit() = Translations::MP_GlobalParameters_Day() and ( pispip.NewSupplyQuantity() <> 0 or pispip.PlannedInventoryLevelEnd() <> 0 ), pispip.Start() );
+                                                  and pispip.Period_MP().TimeUnit() = Translations::MP_GlobalParameters_Day() and ( pispip.NewSupplyQuantity() <> 0 or pispip.PlannedInventoryLevelEnd() <> 0 or pispip.DependentDemandAndSalesDemandQuantity() <> 0 ), pispip.Start() );
           traverse( pispips, Elements, pispip ){
             supplyquantity    := [Number]pispip.NewSupplyQuantity();//鍥涜垗浜斿叆
             //澶�
@@ -54,12 +56,13 @@
             
             //瑁呴厤绾�
             if( isccassemnly or isdlassemnly ){
+              quantity        := [Number]pispip.DependentDemandAndSalesDemandQuantity();//鍥涜垗浜斿叆
               if( isccassemnly ){
-                daycolumn.CCAssemblyPlanQty( daycolumn.CCAssemblyPlanQty() + supplyquantity );
-                weekcolumn.CCAssemblyPlanQty( weekcolumn.CCAssemblyPlanQty() + supplyquantity );
+                daycolumn.CCAssemblyPlanQty( daycolumn.CCAssemblyPlanQty() + quantity );
+                weekcolumn.CCAssemblyPlanQty( weekcolumn.CCAssemblyPlanQty() + quantity );
               } else {
-                daycolumn.DLAssemblyPlanQty( daycolumn.DLAssemblyPlanQty() + supplyquantity );
-                weekcolumn.DLAssemblyPlanQty( weekcolumn.DLAssemblyPlanQty() + supplyquantity );
+                daycolumn.DLAssemblyPlanQty( daycolumn.DLAssemblyPlanQty() + quantity );
+                weekcolumn.DLAssemblyPlanQty( weekcolumn.DLAssemblyPlanQty() + quantity );
               } 
             }
             
@@ -114,7 +117,6 @@
             //鍛�
             weekcolumn       := table.GetColumnByUnit( Translations::MP_GlobalParameters_Week(), tpcell.TransferPlanColumn().ColumnDate() );
             quantity         := [Real]tpcell.Value();//鍥涜垗浜斿叆
-            
             if( not isnull( daycolumn ) ){
               row.SetCellTransferValue( daycolumn, ( originiscc and destiisdl ), quantity );
             }

--
Gitblit v1.9.3