xiaoding721
2024-08-22 0605be7550a4f22802eba113591cc7596cf55ffc
Merge branch 'dev' of http://47.101.211.7:10101/r/VWED into dev
已修改11个文件
已添加20个文件
已删除1个文件
462 ■■■■ 文件已修改
_Main/BL/InfoMessages.qbl 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_AssemblyOnlinePlanPPPSPush_InterfaceDataset_InterfaceDataset_Assemb.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_AssemblyOnlinePlanPPPSPush_InterfaceLoginfo_InterfaceLoginfo_Assemb.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_ShiftDayTime_ShiftDay_ShiftDay_ShiftDayTime.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_ShiftDayTime_ShiftPattern_ShiftPattern_ShiftDayTime.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_AssemblyOnlinePlanPush/Attribute_Fac.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_AssemblyOnlinePlanPush/Attribute_FactoryName.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_AssemblyOnlinePlanPush/Attribute_InterfaceTime.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_AssemblyOnlinePlanPush/Attribute_PlanningDate.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_AssemblyOnlinePlanPush/Attribute_PlanningQty.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_AssemblyOnlinePlanPush/Attribute_Product.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_AssemblyOnlinePlanPush/Attribute_Sequence.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_AssemblyOnlinePlanPush/Attribute_VersionFlag.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_AssemblyOnlinePlanPush/Attribute_VersionName.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_AssemblyOnlinePlanPush/DefaultValue_Fac.qbl 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_AssemblyOnlinePlanPush/DefaultValue_FactoryName.qbl 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_AssemblyOnlinePlanPush/DefaultValue_VersionName.qbl 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_AssemblyOnlinePlanPush/StaticMethod_GenerateData.qbl 55 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_AssemblyOnlinePlanPush/_ROOT_Type_AssemblyOnlinePlanPPPSPush.qbl 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CustomerDemandPPAIDS/StaticMethod_GenerateData.qbl 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_FinishedEngineInventory/StaticMethod_Synchronize.qbl 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_InventoryInterfaceData/StaticMethod_SynchronizeInventory#575.qbl 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MachineStockData/StaticMethod_Synchronize.qbl 9 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_OfflinePlanCell/StaticMethod_RefreshOfflinePlan.qbl 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ShiftDayTime/StaticMethod_CreateData.qbl 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ShiftDayTime/StaticMethod_EditData.qbl 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditShiftDayTime/Method_New.def 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditShiftDayTime/Method_OnOK.def 9 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditShiftDayTime/Response_pnlActions_btnOk_OnClick.def 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormShiftDayTime/Component_ListShiftDayTime.def 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormShiftDayTime/Response_ListShiftDayTime_mNew_OnClick.def 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Views/Time_Capacities.vw 92 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/InfoMessages.qbl
@@ -102,6 +102,10 @@
  {
    DefaultText: 'ds-yunrong-gw.dmp.vwfawedl.mobi'
  }
  InfoMessage InterfaceDataset_AssemblyOnlinePlanPPPSPush_Name
  {
    DefaultText: 'Assembly online plan - PPPS'
  }
  InfoMessage InterfaceDataset_ContentType
  {
    DefaultText: 'application/json'
_Main/BL/Relations/Relation_AssemblyOnlinePlanPPPSPush_InterfaceDataset_InterfaceDataset_Assemb.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation AssemblyOnlinePlanPPPSPush_InterfaceDataset_InterfaceDataset_AssemblyOnlinePlanPPPSPush
{
  #keys: '1[415136.0.1029932763]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide InterfaceDataset
  {
    #keys: '3[415136.0.1029932765][415136.0.1029932764][415136.0.1029932766]'
    Cardinality: '0to1'
    ObjectDefinition: AssemblyOnlinePlanPPPSPush
    OwningSide: 'Reference'
  }
  RelationSide.RightSide AssemblyOnlinePlanPPPSPush
  {
    #keys: '3[415136.0.1029932768][415136.0.1029932767][415136.0.1029932769]'
    Cardinality: '1toN'
    ObjectDefinition: InterfaceDataset
    OwningSide: 'Owned'
  }
}
_Main/BL/Relations/Relation_AssemblyOnlinePlanPPPSPush_InterfaceLoginfo_InterfaceLoginfo_Assemb.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation AssemblyOnlinePlanPPPSPush_InterfaceLoginfo_InterfaceLoginfo_AssemblyOnlinePlanPPPSPush
{
  #keys: '1[415136.0.1029932776]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide InterfaceLoginfo
  {
    #keys: '3[415136.0.1029932778][415136.0.1029932777][415136.0.1029932779]'
    Cardinality: '0to1'
    ObjectDefinition: AssemblyOnlinePlanPPPSPush
    OwningSide: 'Reference'
  }
  RelationSide.RightSide AssemblyOnlinePlanPPPSPush
  {
    #keys: '3[415136.0.1029932781][415136.0.1029932780][415136.0.1029932782]'
    Cardinality: '1toN'
    ObjectDefinition: InterfaceLoginfo
    OwningSide: 'Reference'
  }
}
_Main/BL/Relations/Relation_ShiftDayTime_ShiftDay_ShiftDay_ShiftDayTime.qbl
ÎļþÒÑɾ³ý
_Main/BL/Relations/Relation_ShiftDayTime_ShiftPattern_ShiftPattern_ShiftDayTime.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation ShiftDayTime_ShiftPattern_ShiftPattern_ShiftDayTime
{
  #keys: '1[415754.0.123915968]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide ShiftPattern
  {
    #keys: '3[415754.0.123915970][415754.0.123915969][415754.0.123915971]'
    Cardinality: '0to1'
    ObjectDefinition: ShiftDayTime
    OwningSide: 'Reference'
  }
  RelationSide.RightSide ShiftDayTime
  {
    #keys: '3[415754.0.123915973][415754.0.123915972][415754.0.123915974]'
    Cardinality: '1toN'
    ObjectDefinition: ShiftPattern
    OwningSide: 'Owned'
  }
}
_Main/BL/Type_AssemblyOnlinePlanPush/Attribute_Fac.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute Fac
{
  #keys: '3[415136.0.1029932754][415136.0.1029932753][415136.0.1029932755]'
  Description: '工厂简写'
  ValueType: String
}
_Main/BL/Type_AssemblyOnlinePlanPush/Attribute_FactoryName.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute FactoryName
{
  #keys: '3[415136.0.1029932760][415136.0.1029932759][415136.0.1029932761]'
  Description: '工厂名称'
  ValueType: String
}
_Main/BL/Type_AssemblyOnlinePlanPush/Attribute_InterfaceTime.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute InterfaceTime
{
  #keys: '3[415136.0.1029932757][415136.0.1029932756][415136.0.1029932758]'
  Description: '接口时间'
  ValueType: DateTime
}
_Main/BL/Type_AssemblyOnlinePlanPush/Attribute_PlanningDate.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute PlanningDate
{
  #keys: '3[415136.0.1029932714][415136.0.1029932713][415136.0.1029932715]'
  Description: '计划日期'
  ValueType: Date
}
_Main/BL/Type_AssemblyOnlinePlanPush/Attribute_PlanningQty.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute PlanningQty
{
  #keys: '3[415136.0.1029932727][415136.0.1029932726][415136.0.1029932728]'
  Description: '对应日期的上线计划数量'
  ValueType: Number
}
_Main/BL/Type_AssemblyOnlinePlanPush/Attribute_Product.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute Product
{
  #keys: '3[415136.0.1029932704][415136.0.1029932703][415136.0.1029932705]'
  Description: '物料号'
  ValueType: String
}
_Main/BL/Type_AssemblyOnlinePlanPush/Attribute_Sequence.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute Sequence
{
  #keys: '3[415136.0.1029932737][415136.0.1029932736][415136.0.1029932738]'
  Description: '对应日期的上线顺序'
  ValueType: String
}
_Main/BL/Type_AssemblyOnlinePlanPush/Attribute_VersionFlag.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute VersionFlag
{
  #keys: '3[415136.0.1029932747][415136.0.1029932746][415136.0.1029932748]'
  Description: '版本标识'
  ValueType: Boolean
}
_Main/BL/Type_AssemblyOnlinePlanPush/Attribute_VersionName.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute VersionName
{
  #keys: '3[415136.0.1029932750][415136.0.1029932749][415136.0.1029932751]'
  Description: '版本名称'
  ValueType: String
}
_Main/BL/Type_AssemblyOnlinePlanPush/DefaultValue_Fac.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
Quintiq file version 2.0
#parent: #root
DefaultValue
{
  TargetAttribute: Fac
}
_Main/BL/Type_AssemblyOnlinePlanPush/DefaultValue_FactoryName.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
Quintiq file version 2.0
#parent: #root
DefaultValue
{
  TargetAttribute: FactoryName
}
_Main/BL/Type_AssemblyOnlinePlanPush/DefaultValue_VersionName.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
Quintiq file version 2.0
#parent: #root
DefaultValue
{
  TargetAttribute: VersionName
}
_Main/BL/Type_AssemblyOnlinePlanPush/StaticMethod_GenerateData.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,55 @@
Quintiq file version 2.0
#parent: #root
StaticMethod GenerateData (
  const MacroPlan macroplan,
  InterfaceDataset interfaceDataset,
  String executor,
  Boolean versionflag
)
{
  Description: '生成可以下发的客户需求(PPA+IDS)数据'
  TextBody:
  [*
    // ç”„兰鸽 Aug-20-2024 (created)
    cdlast                 := maxobject( interfaceDataset, AssemblyOnlinePlanPPPSPush, cd, cd.InterfaceTime(), cd.PlanningDate(), cd.Product() );
    if( not isnull( cdlast ) ){
      loginfo              := cdlast.InterfaceLoginfo();
      if( not loginfo.IsShow() ){
        loginfo.Delete();
      }else{
        loginfo.Last( false );
      }
      interfaceDataset.AssemblyOnlinePlanPPPSPush( relflush );
    }
    nowdate                := DateTime::ActualTime();
    loginfo                := interfaceDataset.InterfaceLoginfo( relnew, ExecuteUser := executor
                                                                 , Name := Translations::InterfaceDataset_AssemblyOnlinePlanPPPSPush_Name()
                                                                 , InterfaceDateTime := nowdate
                                                                 , Message := '装配上线计划-PPPS传输至数据中台(包含排序)/SAP(不包含排序)'
                                                                 , IsShow := false
                                                                 , Last := true
                                                                 , ReturnSuccess := true
                                                                 , ReturnMsg := 'Success'
                                                                 , Success := true
                                                                  );
    traverse( macroplan, AssemblyOnlinePlanColumn, column ){
      traverse( column, AssemblyOnlinePlanCell, cell, cell.Value() <> '' and cell.AssemblyOnlinePlanRow().RowNr() = '1' ){
        quantityrow        := cell.AssemblyOnlinePlanRow();
        ordercell          := selectobject( column, AssemblyOnlinePlanCell, ocell, ocell.AssemblyOnlinePlanRow().ProductID() = quantityrow.ProductID()
                                            and ocell.AssemblyOnlinePlanRow().ProductionLine() = quantityrow.ProductionLine()
                                            and ocell.AssemblyOnlinePlanRow().RowNr() = '2' );
        cd                  :=interfaceDataset.AssemblyOnlinePlanPPPSPush( relnew, Product           := quantityrow.ProductID()
                                                                           , PlanningDate            := column.ColumnDate()
                                                                           , PlanningQty             := [Number]cell.Value()
                                                                           , Sequence                := ordercell.Value()
                                                                           , VersionName             := macroplan.ScenarioName()
                                                                           , InterfaceTime           := nowdate
                                                                           , VersionFlag             := versionflag
                                                                           );
        loginfo.AssemblyOnlinePlanPPPSPush( relinsert, cd );
      }
    }
    loginfo.TotalRow( loginfo.AssemblyOnlinePlanPPPSPush( relsize ) );
  *]
}
_Main/BL/Type_AssemblyOnlinePlanPush/_ROOT_Type_AssemblyOnlinePlanPPPSPush.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
#root
#parent: #DomainModel
Type AssemblyOnlinePlanPPPSPush
{
  #keys: '5[415136.0.1029932700][415136.0.1029932698][0.0.0][415136.0.1029932699][415136.0.1029932701]'
  BaseType: Object
  Description: '3.5装配上线计划-PPPS传输至数据中台(包含排序)/SAP(不包含排序)'
  StructuredName: 'AssemblyOnlinePlanPPPSPushs'
}
_Main/BL/Type_CustomerDemandPPAIDS/StaticMethod_GenerateData.qbl
@@ -24,7 +24,7 @@
    nowdate                := DateTime::ActualTime();
    loginfo                := interfaceDataset.InterfaceLoginfo( relnew, ExecuteUser := executor
                                                                 , Name := Translations::InterfaceDataset_CustomerDemandPPAIDS_Name()
                                                                 , InterfaceDateTime := DateTime::ActualTime()
                                                                 , InterfaceDateTime := nowdate
                                                                 , Message := '客户需求(PPA+IDS)数据推送'
                                                                 , IsShow := false
                                                                 , Last := true
_Main/BL/Type_FinishedEngineInventory/StaticMethod_Synchronize.qbl
@@ -22,12 +22,17 @@
      cnv2.SetCustomConversion();
      cnv2.CustomFormatString( 'yyyy-MM-dd' );
      
    //  sadatalist := construct( ShippingActualDatas );
      sadatalist := construct( FinishedEngineInventorys );
      for( seq := 0;seq < data.Size();seq++){
        item := data.Get(seq);
        FinishedEngineInventory::GenerateData( loginfo, cnv2, item );
    //    sadatalist.Add( sadata );
        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 );
    }
  *]
}
_Main/BL/Type_InventoryInterfaceData/StaticMethod_SynchronizeInventory#575.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,24 @@
Quintiq file version 2.0
#parent: #root
StaticMethod SynchronizeInventory (
  MacroPlan macroplan,
  InterfaceDataset owner,
  const FinishedEngineInventorys inventorys
)
{
  Description: '发动机成品库存'
  TextBody:
  [*
    //清空原有的库存更新数据
    //traverse( interfaceDataset, InventoryInterfaceData, iid, iid.Date() = date ){
    //  iid.Delete();
    //}
    // èŽ·å–æŒ‡å®šæ—¥æœŸåº“å­˜æŽ¥å£æ•°æ®
    //发动机成品库存
    traverse( inventorys, Elements, inventory ){
      product    := select( macroplan, Product_MP, product, product.Notes() = inventory.FourCode() );
      InventoryInterfaceData::Generate( owner, inventory.DDay(), product.ID(), inventory.BIPlace(), [Number]inventory.Total() );
    }
  *]
}
_Main/BL/Type_MachineStockData/StaticMethod_Synchronize.qbl
@@ -24,8 +24,13 @@
      
    //  sadatalist := construct( ShippingActualDatas );
      for( seq := 0;seq < data.Size();seq++){
        item := data.Get(seq);
        MachineStockData::GenerateData( loginfo, cnv2, item );
        item         := data.Get(seq);
        inventory    :=MachineStockData::GenerateData( loginfo, cnv2, item );
        inventoryname := inventory.Lgort();
        if( inventory.Fac() = 'DL' and inventory.Lgort() = 'All' ){
          inventoryname := inventory.LineType();
        }
        InventoryInterfaceData::Generate( owner, inventory.DDay(), inventory.MaterialNo(), inventoryname, [Number]inventory.Total() );
    //    sadatalist.Add( sadata );
      }
    }
_Main/BL/Type_OfflinePlanCell/StaticMethod_RefreshOfflinePlan.qbl
@@ -106,7 +106,7 @@
      traverse ( shiftStartDateOPRs, Elements, ssdOPR ) {
        shift := select( opc, OfflinePlanCell, tempOPC, tempOPC.OfflinePlanRow().ProductionLine() = ssdOPR.ProductionLine() and tempOPC.OfflinePlanRow().Type() = "1" ); 
        if ( not isnull( shift ) ) {
          startDate     := guard( minselect( macroPlan, ShiftPattern.ShiftDay.ShiftDayTime, tempSDT, tempSDT.ShiftDay().ShiftPatternName() = shift.Shift(), tempSDT.Sequence() ).StartDateTime().Format( "H:m" ), "" );
          startDate     := guard( minselect( macroPlan, ShiftPattern.ShiftDayTime, tempSDT, tempSDT.ShiftPattern().Name() = shift.Shift(), tempSDT.Sequence() ).StartDateTime().Format( "H:m" ), "" );
          startDateCell := opc.OfflinePlanCell( relnew, Value := startDate );
          startDateCell.OfflinePlanRow( relset, ssdOPR );
        }
@@ -115,7 +115,7 @@
      traverse ( shiftEndDateOPRs, Elements, sedOPR ) {
        shift := select( opc, OfflinePlanCell, tempOPC, tempOPC.OfflinePlanRow().ProductionLine() = sedOPR.ProductionLine() and tempOPC.OfflinePlanRow().Type() = "1" ); 
        if ( not isnull( shift ) ) {
          endDate     := guard( maxselect( macroPlan, ShiftPattern.ShiftDay.ShiftDayTime, tempSDT, tempSDT.ShiftDay().ShiftPatternName() = shift.Shift(), tempSDT.Sequence() ).EndDateTIme().Format( "H:m" ), "" );
          endDate     := guard( maxselect( macroPlan, ShiftPattern.ShiftDayTime, tempSDT, tempSDT.ShiftPattern().Name() = shift.Shift(), tempSDT.Sequence() ).EndDateTIme().Format( "H:m" ), "" );
          endDateCell := opc.OfflinePlanCell( relnew, Value := endDate );
          endDateCell.OfflinePlanRow( relset, sedOPR );
        }
_Main/BL/Type_ShiftDayTime/StaticMethod_CreateData.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,18 @@
Quintiq file version 2.0
#parent: #root
StaticMethod CreateData (
  MacroPlan macroPlan,
  DateTime startDateTime,
  DateTime endDateTime,
  String name
)
{
  TextBody:
  [*
    sp := select( macroPlan, ShiftPattern, tempSP, tempSP.Name() = name );
    sp.ShiftDayTime( relnew,
                     StartDateTime := startDateTime,
                     EndDateTIme   := endDateTime,
                     Name          := name );
  *]
}
_Main/BL/Type_ShiftDayTime/StaticMethod_EditData.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
Quintiq file version 2.0
#parent: #root
StaticMethod EditData (
  MacroPlan macroPlan,
  ShiftDayTime sdt,
  DateTime startDateTime,
  DateTime endDateTime,
  String name
)
{
  TextBody:
  [*
    sdt.Delete();
    ShiftDayTime::CreateData( macroPlan, startDateTime, endDateTime, name );
  *]
}
_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditShiftDayTime/Method_New.def
@@ -1,16 +1,10 @@
Quintiq file version 2.0
#parent: #root
Method New (
  ShiftDay selection
) id:Method_DialogCreateEditShiftDayTime_New
Method New () id:Method_DialogCreateEditShiftDayTime_New
{
  #keys: '[413988.0.1372696375]'
  Body:
  [*
    data := selection.ShiftDayTime( relnew );
    DataHolderDialogData.Data( data );
    ApplicationMacroPlanner.ShowFormModal( this );
  *]
}
_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditShiftDayTime/Method_OnOK.def
@@ -6,7 +6,14 @@
  Body:
  [*
    // On ok
    Form.ApplyChanges();
    if ( isnull( DataHolderDialogData.Data() ) ) {
      ShiftDayTime::CreateData( MacroPlan, dtsStart.DateTime(),
                                dtsEnd.DateTime(), ddslName.Text() );
    } else {
      ShiftDayTime::EditData( MacroPlan, DataHolderDialogData.Data(), dtsStart.DateTime(),
                                dtsEnd.DateTime(), ddslName.Text() );
    }
    
    Form.Close();
  *]
_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditShiftDayTime/Response_pnlActions_btnOk_OnClick.def
@@ -4,13 +4,12 @@
{
  #keys: '[413988.0.1372501452]'
  DefinitionID: 'Responsedef_WebButton_OnClick'
  GroupServerCalls: true
  QuillAction
  {
    Body:
    [*
      Form.ApplyChanges();
      Form.Close();
      Form.OnOK();
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormShiftDayTime/Component_ListShiftDayTime.def
@@ -11,10 +11,10 @@
      BaseType: 'WebDataExtractor'
      Properties:
      [
        DataType: 'ShiftDay'
        Source: 'ApplicationMacroPlanner.dhSelectedShiftDay'
        DataType: 'MacroPlan'
        Source: 'MacroPlan'
        Taborder: 0
        Transformation: 'ShiftDayTime'
        Transformation: 'ShiftPattern.ShiftDayTime'
      ]
    }
    #child: listActionBarPageShiftDayTime
_Main/UI/MacroPlannerWebApp/Component_FormShiftDayTime/Response_ListShiftDayTime_mNew_OnClick.def
@@ -6,17 +6,13 @@
  CanBindMultiple: false
  DefinitionID => /ListShiftDayTime/Responsedef_ListShiftDayTime_WebMenu_OnClick
  Initiator: 'mNew'
  Precondition:
  [*
    return not isnull( ApplicationMacroPlanner.dhSelectedShiftDay().Data() );
  *]
  QuillAction
  {
    Body:
    [*
      dlg := construct( DialogCreateEditShiftDayTime );
      
      dlg.New( ApplicationMacroPlanner.dhSelectedShiftDay().Data() );
      dlg.New();
    *]
    GroupServerCalls: false
  }
_Main/UI/MacroPlannerWebApp/Views/Time_Capacities.vw
@@ -25,52 +25,6 @@
          rowSpan: 15
        }
      }
      form_FormProductionLineBatchData
      {
        title: 'QMacroPlanner::FormProductionLineBatchData'
        shown: true
        componentID: 'QMacroPlanner::FormProductionLineBatchData'
        layout
        {
          mode: 'open'
          rowPosition: 26
          rowSpan: 9
          columnPosition: 1
          columnSpan: 8
        }
        components
        {
          FormProductionLineBatchData_PanelProductionLineBatchData
          {
            sizeRatio: 1
          }
          FormProductionLineBatchData_ListProductionLineBatchData
          {
          }
          FormProductionLineBatchData_DataSetLevelProductionLineBatchData
          {
            groupDepth: -1
            column_StartDate
            {
              columnId: 'StartDate'
              dataPath: 'StartDate'
              dataType: 'date'
              index: 0
              subtotals: ''
              width: 150
            }
            column_EndDate
            {
              columnId: 'EndDate'
              dataPath: 'EndDate'
              dataType: 'date'
              index: 1
              subtotals: ''
              width: 150
            }
          }
        }
      }
      form_FormShiftDayTime
      {
        title: 'QMacroPlanner::FormShiftDayTime'
@@ -122,6 +76,52 @@
          }
        }
      }
      form_FormProductionLineBatchData
      {
        title: 'QMacroPlanner::FormProductionLineBatchData'
        shown: true
        componentID: 'QMacroPlanner::FormProductionLineBatchData'
        layout
        {
          mode: 'open'
          rowPosition: 26
          rowSpan: 9
          columnPosition: 1
          columnSpan: 8
        }
        components
        {
          FormProductionLineBatchData_PanelProductionLineBatchData
          {
            sizeRatio: 1
          }
          FormProductionLineBatchData_ListProductionLineBatchData
          {
          }
          FormProductionLineBatchData_DataSetLevelProductionLineBatchData
          {
            groupDepth: -1
            column_StartDate
            {
              columnId: 'StartDate'
              dataPath: 'StartDate'
              dataType: 'date'
              index: 0
              subtotals: ''
              width: 150
            }
            column_EndDate
            {
              columnId: 'EndDate'
              dataPath: 'EndDate'
              dataType: 'date'
              index: 1
              subtotals: ''
              width: 150
            }
          }
        }
      }
    }
  }
  formatversion: 2