¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method OnCreate |
| | | { |
| | | TextBody: |
| | | [* |
| | | // rislai Jun-18-2024 (created) |
| | | *] |
| | | InterfaceProperties { Accessibility: 'Module' } |
| | | } |
| | |
| | | { |
| | | #keys: '2[110880.4.1188154382][110880.4.1188154375]' |
| | | Description: 'MP' |
| | | OnCreate: 'this.OnCreate();' |
| | | Parent: UnitPeriodTimeBase |
| | | StructuredName: 'UnitPeriodTimes' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Dataset RecycleBin |
| | | { |
| | | #keys: '2[412672.0.1084213478][412672.0.1084213477]' |
| | | DefaultMDSName: 'RecycleBin' |
| | | InstanceType: RecycleBin |
| | | WithStorage: false |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation ExportXMLData_ExportXMLManager_ExportXMLManager_ExportXMLData |
| | | { |
| | | #keys: '1[412672.0.1084249088]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide ExportXMLManager |
| | | { |
| | | #keys: '3[412672.0.1084249090][412672.0.1084249089][412672.0.1084249091]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: ExportXMLData |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide ExportXMLData |
| | | { |
| | | #keys: '3[412672.0.1084249093][412672.0.1084249092][412672.0.1084249094]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: ExportXMLManager |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation ExportXMLManager_RecycleBin_RecycleBin_ExportXMLManager |
| | | { |
| | | #keys: '1[412672.0.1084249075]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide RecycleBin |
| | | { |
| | | #keys: '3[412672.0.1084249077][412672.0.1084249076][412672.0.1084249078]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: ExportXMLManager |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide ExportXMLManager |
| | | { |
| | | #keys: '3[412672.0.1084249080][412672.0.1084249079][412672.0.1084249081]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: RecycleBin |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation LocalColumn_LocalCell_LocalCell_LocalColumn |
| | | { |
| | | #keys: '1[412672.0.1084249675]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide LocalCell |
| | | { |
| | | #keys: '3[412672.0.1084249677][412672.0.1084249676][412672.0.1084249678]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: LocalColumn |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide LocalColumn |
| | | { |
| | | #keys: '3[412672.0.1084249680][412672.0.1084249679][412672.0.1084249681]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: LocalCell |
| | | OwningSide: 'Reference' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation LocalColumn_LocalTable_LocalTable_LocalColumn |
| | | { |
| | | #keys: '1[412672.0.1084249662]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide LocalTable |
| | | { |
| | | #keys: '3[412672.0.1084249664][412672.0.1084249663][412672.0.1084249665]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: LocalColumn |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide LocalColumn |
| | | { |
| | | #keys: '3[412672.0.1084249667][412672.0.1084249666][412672.0.1084249668]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: LocalTable |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation LocalRow_LocalCell_LocalCell_LocalRow |
| | | { |
| | | #keys: '1[412672.0.1084249636]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide LocalCell |
| | | { |
| | | #keys: '3[412672.0.1084249638][412672.0.1084249637][412672.0.1084249639]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: LocalRow |
| | | OwningSide: 'Owned' |
| | | } |
| | | RelationSide.RightSide LocalRow |
| | | { |
| | | #keys: '3[412672.0.1084249641][412672.0.1084249640][412672.0.1084249642]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: LocalCell |
| | | OwningSide: 'Reference' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation LocalRow_LocalTable_LocalTable_LocalRow |
| | | { |
| | | #keys: '1[412672.0.1084249649]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide LocalTable |
| | | { |
| | | #keys: '3[412672.0.1084249651][412672.0.1084249650][412672.0.1084249652]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: LocalRow |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide LocalRow |
| | | { |
| | | #keys: '3[412672.0.1084249654][412672.0.1084249653][412672.0.1084249655]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: LocalTable |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation LocalTable_RecycleBin_RecycleBin_LocalTable |
| | | { |
| | | #keys: '1[412672.0.1084249623]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide RecycleBin |
| | | { |
| | | #keys: '3[412672.0.1084249625][412672.0.1084249624][412672.0.1084249626]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: LocalTable |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide LocalTable |
| | | { |
| | | #keys: '3[412672.0.1084249628][412672.0.1084249627][412672.0.1084249629]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: RecycleBin |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation ShiftPlan_UnitPeriodTime_UnitPeriodTime_ShiftPlan |
| | | { |
| | | #keys: '1[412672.0.1066680007]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide UnitPeriodTime |
| | | { |
| | | #keys: '3[412672.0.1066680009][412672.0.1066680008][412672.0.1066680010]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: ShiftPlan |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide ShiftPlan |
| | | { |
| | | #keys: '3[412672.0.1066680012][412672.0.1066680011][412672.0.1066680013]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: UnitPeriodTime |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method Load ( |
| | | Archive archive, |
| | | LocalTable localTable |
| | | ) const |
| | | { |
| | | TextBody: |
| | | [* |
| | | // rislai Jun-20-2024 (created) |
| | | file := OSFile::Construct(); |
| | | //originRow := localTable.LocalRow( relnew ,Index := localTable.GetRowIndexCache()); |
| | | //carTypeRow := localTable.LocalRow( relnew ,Index := localTable.GetRowIndexCache()); |
| | | //productRow := localTable.LocalRow( relnew ,Index := localTable.GetRowIndexCache()); |
| | | //fourDigitRow := localTable.LocalRow( relnew,Index := localTable.GetRowIndexCache()); |
| | | |
| | | columns := selectset( localTable,LocalColumn,column,true ); |
| | | columnTree := NamedValueTree::Create(); |
| | | for( i := 0 ; i < columns.Size(); i++ ){ |
| | | column := columns.Element( i ); |
| | | tempHandle := columnTree.GetHandle( column.Name() ); |
| | | columnTree.Root().AddChild( tempHandle,i ); |
| | | } |
| | | |
| | | try { |
| | | file.Open( this.FilePath(), "Read", false ); |
| | | webFileBinaryData := file.ReadBinary(); |
| | | |
| | | generalExcelImportAndExportDataSource := GeneralExcelImportAndExportDataSource::Upload( archive, webFileBinaryData, this.Name() ); |
| | | generalExcelImportAndExportDataSource.ReadStructure(); |
| | | selections := selectset( generalExcelImportAndExportDataSource, GeneralExcelImportAndExportDataTable, tempGEIAEDT, true ); |
| | | if( selections.Size() <> 0 ){ |
| | | table := selections.Element( 0 ); |
| | | generalColumns := selectset( table,GeneralExcelImportAndExportDataColumn,column,true ); |
| | | |
| | | // çæåæ°æ® |
| | | for( i := 0; i< generalColumns.Size(); i++ ){ |
| | | generalColumn := generalColumns.Element( i ); |
| | | column := localTable.LocalColumn( relnew, Name := generalColumn.Name(),Index := generalColumn.ColumnIndex() ); |
| | | columns.Add( column ); |
| | | tempHandle := columnTree.GetHandle( column.Name() ); |
| | | columnTree.Root().AddChild( tempHandle,columns.Size() - 1 ); |
| | | } |
| | | |
| | | // çææ°æ® |
| | | rowSize := table.GeneralExcelImportAndExportDataRow( relsize ); |
| | | for ( rowIndex := 0; rowIndex < rowSize; rowIndex++ ) { |
| | | generalRow := select( table, GeneralExcelImportAndExportDataRow, tempGEIAEDR, tempGEIAEDR.RowNr() = rowIndex ); |
| | | row := localTable.LocalRow( relnew,Index := rowIndex ); |
| | | generalCells := selectsortedset( generalRow,GeneralExcelImportAndExportDataCell,cell,true,cell.GeneralExcelImportAndExportDataColumn().ColumnIndex() ); |
| | | |
| | | traverse( generalCells,Elements,generalCell ){ |
| | | columnName := generalCell.GeneralExcelImportAndExportDataColumn().Name(); |
| | | columnHandle := columnTree.GetHandle( columnName ); |
| | | columnIndex := columnTree.Root().Child( columnHandle ).GetValueAsNumber(); |
| | | column := columns.Element( columnIndex ); |
| | | row.LocalCell( relnew,Value := generalCell.Value() ,LocalColumn := column ); |
| | | } |
| | | } |
| | | } |
| | | // åç»å é¤ |
| | | generalExcelImportAndExportDataSource.Delete(); |
| | | file.Close(); |
| | | } onerror { |
| | | if( not isnull( file )){ |
| | | file.Close(); |
| | | } |
| | | error( e ); |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod Compared ( |
| | | RecycleBin recycleBin, |
| | | ArchivePR baseVersion, |
| | | ArchivePR compareVersion |
| | | ) as LocalTable |
| | | { |
| | | TextBody: |
| | | [* |
| | | // rislai Jun-20-2024 (created) |
| | | archive := baseVersion.Archive(); // archiveä¸å¯è®¾ç½®ä¸ºåªè¯» |
| | | |
| | | table := recycleBin.LocalTable( relnew ); |
| | | |
| | | baseVersion.Load( archive,table ); |
| | | compareVersion.Load( archive,table ); |
| | | |
| | | return table; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Priority |
| | | { |
| | | #keys: '3[412672.0.1084249112][412672.0.1084249111][412672.0.1084249113]' |
| | | ValueType: Number |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute XML |
| | | { |
| | | #keys: '3[412672.0.1084249102][412672.0.1084249101][412672.0.1084249103]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type ExportXMLData |
| | | { |
| | | #keys: '5[412672.0.1084249058][412672.0.1084249056][0.0.0][412672.0.1084249057][412672.0.1084249059]' |
| | | BaseType: Object |
| | | StructuredName: 'ExportXMLDatas' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute FinalXML |
| | | { |
| | | #keys: '3[412672.0.1084249132][412672.0.1084249131][412672.0.1084249133]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Name |
| | | { |
| | | #keys: '3[412672.0.1084249122][412672.0.1084249121][412672.0.1084249123]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Function CalcFinalXML |
| | | { |
| | | TextBody: |
| | | [* |
| | | // rislai Jun-20-2024 (created) |
| | | xmlTemplate := '<?xml version="1.0" encoding="UTF-16"?><table><name>'+ this.Name() +'</name>'; |
| | | |
| | | datas := selectsortedset( this,ExportXMLData,data,true,data.Priority() ); |
| | | |
| | | traverse( datas,Elements,data ){ |
| | | xmlTemplate := xmlTemplate + data.XML(); |
| | | } |
| | | |
| | | xmlTemplate := xmlTemplate + "</table>"; |
| | | |
| | | this.FinalXML( xmlTemplate ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod AwaitShiftPlanXMLData ( |
| | | const Strings columnXMLData, |
| | | RecycleBin owner |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // rislai Jun-20-2024 (created) |
| | | |
| | | manager := select( owner,ExportXMLManager,manager,manager.Name() = "ShiftPlanXML" ); |
| | | if( isnull( manager )){ |
| | | manager := owner.ExportXMLManager( relnew,Name := "ShiftPlanXML" ); |
| | | }else{ |
| | | manager.ExportXMLData( relflush ); |
| | | } |
| | | traverse( columnXMLData,Elements,element,element.TrimBoth() <> "" ){ |
| | | data := manager.ExportXMLData( relnew, XML := element); |
| | | if( element.LikeUserLocale( "Unit" )){ |
| | | data.Priority( 1 ); |
| | | }else if( element.LikeUserLocale( "Attribute" )){ |
| | | data.Priority( 2 ); |
| | | }else{ |
| | | data.Priority( [Number]element.SubString( 14,10 ).ReplaceAll( "-","") ); |
| | | } |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type ExportXMLManager |
| | | { |
| | | #keys: '5[412672.0.1084249053][412672.0.1084249051][0.0.0][412672.0.1084249052][412672.0.1084249054]' |
| | | BaseType: Object |
| | | StructuredName: 'ExportXMLManagers' |
| | | } |
| | |
| | | Archive archive, |
| | | BinaryValue binaryValue, |
| | | String filePath |
| | | ) as GeneralExcelImportAndExportDataSource |
| | | ) const as GeneralExcelImportAndExportDataSource |
| | | { |
| | | TextBody: |
| | | [* |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Value |
| | | { |
| | | #keys: '3[412672.0.1086954759][412672.0.1086954758][412672.0.1086954760]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type LocalCell |
| | | { |
| | | #keys: '5[412672.0.1084249620][412672.0.1084249618][0.0.0][412672.0.1084249619][412672.0.1084249621]' |
| | | BaseType: Object |
| | | StructuredName: 'LocalCells' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Index |
| | | { |
| | | #keys: '3[412672.0.1086931887][412672.0.1086931886][412672.0.1086931888]' |
| | | ValueType: Number |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Name |
| | | { |
| | | #keys: '3[412672.0.1086931874][412672.0.1086931873][412672.0.1086931875]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type LocalColumn |
| | | { |
| | | #keys: '5[412672.0.1084249599][412672.0.1084249597][0.0.0][412672.0.1084249598][412672.0.1084249600]' |
| | | BaseType: Object |
| | | StructuredName: 'LocalColumns' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Index |
| | | { |
| | | #keys: '3[412672.0.1086931843][412672.0.1086931842][412672.0.1086931844]' |
| | | ValueType: Number |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type LocalRow |
| | | { |
| | | #keys: '5[412672.0.1084249610][412672.0.1084249608][0.0.0][412672.0.1084249609][412672.0.1084249611]' |
| | | BaseType: Object |
| | | StructuredName: 'LocalRows' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute RowIndexCache |
| | | { |
| | | #keys: '3[412672.0.1086954704][412672.0.1086954703][412672.0.1086954705]' |
| | | ValueType: Number |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method GetRowIndexCache () declarative as Number |
| | | { |
| | | TextBody: |
| | | [* |
| | | // rislai Jun-20-2024 (created) |
| | | this.RowIndexCache( this.RowIndexCache() + 1 ); |
| | | |
| | | return this.RowIndexCache(); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type LocalTable |
| | | { |
| | | #keys: '5[412672.0.1084249615][412672.0.1084249613][0.0.0][412672.0.1084249614][412672.0.1084249616]' |
| | | BaseType: Object |
| | | StructuredName: 'LocalTables' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod IsAnyDurationContained ( |
| | | DateTime start1, |
| | | DateTime end1, |
| | | DateTime start2, |
| | | DateTime end2 |
| | | ) const declarative as Boolean |
| | | { |
| | | TextBody: |
| | | [* |
| | | // rislai Jun-19-2024 (created) |
| | | return ( start1 <= start2 and end1 >= end2 ) or ( start2 <= start1 and end2 >= end1 ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type Period_MP #extension |
| | | { |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod OnLogin () as Key |
| | | { |
| | | TextBody: |
| | | [* |
| | | // lihongji May-15-2024 (created) |
| | | folder := DomainModel::Domain().MDSFolderDefinitions().FindFolder( "/root" ); |
| | | |
| | | datasetName := typeof( RecycleBin ).Name() + "_" + QuintiqUser::CurrentUser().ShortName(); |
| | | |
| | | oinfo := MDSEditor::Editor().ObjectInfos( typeof( RecycleBin ).Name(), folder.FolderID(), datasetName ); |
| | | |
| | | o := select( oinfo, Elements, o, o.IsLoaded() ); |
| | | emptydataset := isnull( o ); |
| | | |
| | | key := Key::ZeroKey(); |
| | | if ( emptydataset ) { |
| | | mdsrb := MDSRecycleBin::CreateMDS( datasetName, DMF_Utility::StorageState_MemoryOnly() ); |
| | | key := mdsrb.MDSID(); |
| | | } else { |
| | | MDSRecycleBin::LoadMDSAndConvert( o.MDSID(), DMF_Utility::StorageState_MemoryOnly() ); |
| | | key := o.MDSID().MDSKey(); |
| | | } |
| | | |
| | | return key; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type RecycleBin |
| | | { |
| | | #keys: '5[412672.0.1084213474][412672.0.1084213472][0.0.0][412672.0.1084213473][412672.0.1084213475]' |
| | | BaseType: Object |
| | | StructuredName: 'RecycleBins' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Color |
| | | { |
| | | #keys: '3[412672.0.1082947207][412672.0.1082947206][412672.0.1082947208]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute CustomRemark |
| | | { |
| | | #keys: '3[412672.0.1067124406][412672.0.1067124405][412672.0.1067124407]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute EventType |
| | | { |
| | | #keys: '3[412672.0.1082947252][412672.0.1082947251][412672.0.1082947253]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Outcome |
| | | { |
| | | #keys: '3[412672.0.1066680021][412672.0.1066680020][412672.0.1066680022]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Remark |
| | | { |
| | | #keys: '3[412672.0.1066680031][412672.0.1066680030][412672.0.1066680032]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Function CalcColor |
| | | { |
| | | TextBody: |
| | | [* |
| | | // rislai Jun-19-2024 (created) |
| | | // Red,Cyan,LightBlue,LightOrange |
| | | // æ³å®èåæ¥ï¼ææå
ï¼æææ¥ï¼è°ä¼ |
| | | value := "White" |
| | | if( this.EventType() = "å¨å
"){ |
| | | value := "Cyan"; |
| | | } |
| | | if( this.EventType() = "卿¥"){ |
| | | value := "LightBlue"; |
| | | } |
| | | if( this.EventType() = "æ³å®è忥"){ |
| | | value := "Red"; |
| | | } |
| | | if( this.EventType() = "è°ä¼"){ |
| | | value := "LightOrange"; |
| | | } |
| | | |
| | | |
| | | this.Color( value ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Function CalcEventType |
| | | { |
| | | TextBody: |
| | | [* |
| | | // rislai Jun-19-2024 (created) |
| | | value := this.CalculateEventType(); |
| | | |
| | | this.EventType( value ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Function CalcOutcome |
| | | { |
| | | TextBody: |
| | | [* |
| | | // rislai Jun-18-2024 (created) |
| | | capacity := ifexpr( this.UnitPeriodTime().IsUtilizationInUOM(), [Real]this.UnitPeriodTime().UsedCapacity().HoursAsReal(), this.UnitPeriodTime().UtilizationPercentage() * this.UnitPeriodTime().MaximumLoadPercentage() / 100 ) |
| | | |
| | | value := ifexpr( capacity = 0,"", this.UnitPeriodTime().ShiftPatternName()); |
| | | |
| | | this.Outcome( value ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Function CalcRemark |
| | | { |
| | | TextBody: |
| | | [* |
| | | // rislai Jun-18-2024 (created) |
| | | |
| | | value := ifexpr( this.CustomRemark() = "",this.CalculateRemark( ),this.CustomRemark()); |
| | | |
| | | this.Remark( value ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method CalculateEventType () const declarative as String |
| | | { |
| | | TextBody: |
| | | [* |
| | | // rislai Jun-19-2024 (created) |
| | | values := construct( Strings ); |
| | | |
| | | traverse( this.UnitPeriodTime().Unit().UnitCalendar(),Participation,participation,participation.Event().Type() = LibCal_Event::TYPE_UNAVAILABLE()){ |
| | | event := participation.Event(); |
| | | |
| | | if( this.UnitPeriodTime().Start().Date() >= event.EarliestStart() and this.UnitPeriodTime().End().Date() <= event.LatestEnd() ){ |
| | | intervals := selectset( event,LeadingParticipation.ExplicitTimeInterval,interval,LocalTool::IsAnyDurationContained( interval.Start(),interval.End(),this.UnitPeriodTime().Start(),this.UnitPeriodTime().End())); |
| | | |
| | | traverse( intervals,Elements,interval){ |
| | | values.Add( ifexpr( isnull( interval.Participation().Event().EventType().Parent()),interval.Participation().Event().EventType().ID(),interval.Participation().Event().EventType().Parent().ID() )); |
| | | } |
| | | } |
| | | } |
| | | values := selectuniquevalues( values,Elements,value,true,value ); |
| | | |
| | | result := ""; |
| | | flag := true; |
| | | traverse( values,Elements,value ,flag){ |
| | | if( value = "è°ä¼" and result <> "è°ä¼"){ |
| | | result := "è°ä¼"; |
| | | }else if( value = "æ³å®è忥" and result <> "æ³å®è忥"){ |
| | | result := "æ³å®è忥"; |
| | | }else if( value = "å¨å
" and result <> "å¨å
"){ |
| | | result := "å¨å
"; |
| | | }else if( value = "卿¥" and result <> "卿¥"){ |
| | | result := "卿¥"; |
| | | } |
| | | } |
| | | |
| | | return result; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method CalculateRemark () const declarative as String |
| | | { |
| | | TextBody: |
| | | [* |
| | | // rislai Jun-18-2024 (created) |
| | | values := construct( Strings ); |
| | | |
| | | traverse( this.UnitPeriodTime().Unit().UnitCalendar(),Participation,participation,participation.Event().Type() = LibCal_Event::TYPE_UNAVAILABLE()){ |
| | | event := participation.Event(); |
| | | |
| | | if( this.UnitPeriodTime().Start().Date() >= event.EarliestStart() and this.UnitPeriodTime().End().Date() <= event.LatestEnd() ){ |
| | | intervals := selectset( event,LeadingParticipation.ExplicitTimeInterval,interval,LocalTool::IsAnyDurationContained( interval.Start(),interval.End(),this.UnitPeriodTime().Start(),this.UnitPeriodTime().End())); |
| | | |
| | | traverse( intervals,Elements,interval){ |
| | | values.Add( interval.Participation().Event().Subject() ); |
| | | } |
| | | } |
| | | } |
| | | values := selectuniquevalues( values,Elements,value,true,value ); |
| | | |
| | | result := ""; |
| | | traverse( values,Elements,value ){ |
| | | result := result + value + ";"; |
| | | } |
| | | |
| | | return ifexpr( result = "",result,result.SubString( 0,result.Length() - 1 ) ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method GetAttributeByName ( |
| | | String attributeName |
| | | ) const declarative as String |
| | | { |
| | | TextBody: |
| | | [* |
| | | // rislai Jun-20-2024 (created) |
| | | value := ""; |
| | | if( attributeName = "Remark" ){ |
| | | value := this.Remark(); |
| | | } |
| | | if( attributeName = "Outcome" ){ |
| | | value := this.Outcome(); |
| | | } |
| | | return value; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method SetRemark ( |
| | | String remark |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // rislai Jun-18-2024 (created) |
| | | this.CustomRemark( remark ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod AsyncExport ( |
| | | RecycleBin recycleBin, |
| | | const constcontent Units rows, |
| | | const constcontent Period_MPs columns |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // rislai Jun-20-2024 (created) |
| | | sortColumns := selectsortedset( columns,Elements,column,true,column.StartDate()); |
| | | |
| | | attributeNames := ShiftPlan::GetAttributeNames(); |
| | | |
| | | columnstring := emit( "" ); |
| | | flag := true; |
| | | traverse( sortColumns,Elements,sortColumn ){ |
| | | if( flag ){ |
| | | attributeXML := rows -> ShiftPlan::GetShiftPlanColumnXML( sortColumn,attributeNames,"attribute" ); |
| | | columnstring := columnstring.Merge( attributeXML ) |
| | | flag := false; |
| | | } |
| | | |
| | | cellxml := rows -> ShiftPlan::GetShiftPlanColumnXML( sortColumn,attributeNames ,"data"); |
| | | columnstring := columnstring.Merge( cellxml); |
| | | } |
| | | |
| | | columnstring -> GroupAll() -> ExportXMLManager::AwaitShiftPlanXMLData( recycleBin ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod Create ( |
| | | UnitPeriodTime owner |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // rislai Jun-17-2024 (created) |
| | | owner.ShiftPlan( relnew ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod Export ( |
| | | const ExportXMLManager manager |
| | | ) as BinaryValue |
| | | { |
| | | TextBody: |
| | | [* |
| | | // rislai Jun-20-2024 (created) |
| | | |
| | | tableGroupHandle := TableGroupHandle::Create( "tableGroupHandle" ); |
| | | tableHandle := TableHandle::ImportXML( BinaryValue::Construct( manager.FinalXML() ) ); |
| | | tableGroupHandle.Add( tableHandle ); |
| | | binaryData := XLS::SaveTableGroupToBinaryData( tableGroupHandle, true ); |
| | | |
| | | return binaryData.AsBinaryValue(); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod GetAttributeNames () const declarative as owning Strings |
| | | { |
| | | TextBody: |
| | | [* |
| | | // rislai Jun-20-2024 (created) |
| | | attributeNames := construct( Strings ); |
| | | |
| | | attributeNames.Add( "Outcome" ); |
| | | attributeNames.Add( "Remark" ); |
| | | |
| | | return &attributeNames; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod GetShiftPlanColumnXML ( |
| | | const constcontent Units rows, |
| | | const Period_MP column, |
| | | const Strings attributeNames, |
| | | String type |
| | | ) const as String |
| | | { |
| | | TextBody: |
| | | [* |
| | | // rislai Jun-20-2024 (created) |
| | | columnXML := ""; |
| | | cells := selectsortedset( column, UnitPeriod.astype( UnitPeriodTime ).ShiftPlan, cell, |
| | | exists( rows,Elements,element,element = cell.UnitPeriodTime().Unit()), cell.UnitPeriodTime().Unit().ID()); |
| | | if( type = "data" ){ |
| | | columnXML := "<column><name>" + column.StartDate().Format( "Y-M2-D2 ")+ "</name><type>String</type>"; |
| | | traverse ( cells, Elements, cell ) { |
| | | traverse( attributeNames ,Elements,e ){ |
| | | cellXML := '<cell value="' + cell.GetAttributeByName( e ) + '"/>' |
| | | columnXML := columnXML + cellXML; |
| | | } |
| | | } |
| | | columnXML := columnXML + "</column>"; |
| | | } |
| | | if( type = "attribute" ){ |
| | | columnXML1 := "<column><name>Unit</name><type>String</type>"; |
| | | columnXML2 := "<column><name>Attribute</name><type>String</type>"; |
| | | |
| | | traverse ( cells, Elements, cell ) { |
| | | flag := true; |
| | | traverse( attributeNames ,Elements,e ){ |
| | | if( flag ){ |
| | | cellXML := '<cell value="' + cell.UnitPeriodTime().Unit().ID() + '"/>' |
| | | columnXML1 := columnXML1 + cellXML; |
| | | flag := false; |
| | | }else{ |
| | | cellXML := '<cell value=" "/>' |
| | | columnXML1 := columnXML1 + cellXML; |
| | | } |
| | | cellXML := '<cell value="' + e + '"/>' |
| | | columnXML2 := columnXML2 + cellXML; |
| | | } |
| | | } |
| | | columnXML := columnXML1 + "</column>" + columnXML2 + "</column>"; |
| | | } |
| | | |
| | | return columnXML; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type ShiftPlan |
| | | { |
| | | #keys: '5[412672.0.1057415075][412672.0.1057415073][0.0.0][412672.0.1057415074][412672.0.1057415076]' |
| | | BaseType: Object |
| | | StructuredName: 'ShiftPlans' |
| | | } |
| | |
| | | TextBody: |
| | | [* |
| | | // rislai Jun-9-2024 (created) |
| | | element := "<column><name>Att</name><type>String</type>"; |
| | | |
| | | traverse( macroPlan,Routing,rt ){ |
| | | rt.UphillRouting( relflush ); |
| | | } |
| | | error( element.LikeUserLocale( "Unit" ) ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method OnCreate #extension |
| | | { |
| | | TextBody: |
| | | [* |
| | | // rislai Jun-18-2024 (created) |
| | | ShiftPlan::Create( this ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | TypeSpecialization UnitPeriodTime #extension |
| | | { |
| | | } |
| | |
| | | ] |
| | | DataRepresentation.Default |
| | | { |
| | | FormatString: 'D-MM-YOnMax(-)OnMin(-)' |
| | | FormatString: 'Y-M2-D2OnMax(-)OnMin(-)' |
| | | InheritFormatting: false |
| | | } |
| | | } |
| | |
| | | ] |
| | | DataRepresentation.Default |
| | | { |
| | | FormatString: 'D-MM-YOnMax(-)OnMin(-)' |
| | | FormatString: 'Y-M2-D2 H2:m:sOnMax(-)OnMin(-)' |
| | | InheritFormatting: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | TypeRepresentation ShiftPlan |
| | | { |
| | | AttributeRepresentation Remark |
| | | { |
| | | AttributeKey: '[412672.0.1066680030]' |
| | | Conditional: |
| | | [ |
| | | DataRepresentation.Conditional |
| | | { |
| | | BackgroundColor: '$FFCC99' |
| | | ConditionBody: 'object.Color() = "LightOrange"' |
| | | ConversionBody: '' |
| | | DefaultBackgroundColor: false |
| | | InheritConversion: false |
| | | } |
| | | DataRepresentation.Conditional |
| | | { |
| | | BackgroundColor: 'Red' |
| | | ConditionBody: 'object.Color() = "Red"' |
| | | ConversionBody: '' |
| | | DefaultBackgroundColor: false |
| | | InheritConversion: false |
| | | } |
| | | DataRepresentation.Conditional |
| | | { |
| | | BackgroundColor: '$33CCCC' |
| | | ConditionBody: 'object.Color() = "Cyan"' |
| | | ConversionBody: '' |
| | | DefaultBackgroundColor: false |
| | | InheritConversion: false |
| | | } |
| | | DataRepresentation.Conditional |
| | | { |
| | | BackgroundColor: '$99CCFF' |
| | | ConditionBody: 'object.Color() = "LightBlue"' |
| | | ConversionBody: '' |
| | | DefaultBackgroundColor: false |
| | | InheritConversion: false |
| | | } |
| | | ] |
| | | } |
| | | RelationRepresentation UnitPeriodTime { RelationKey: '[412672.0.1066680008]' Visibility: 'Normal' } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component ActionBarGroupPlanViews #extension |
| | | { |
| | | Children: |
| | | [ |
| | | Component ButtonShiftPlan |
| | | { |
| | | #keys: '[412672.0.1064451018]' |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
| | | Image: 'COMPASSES' |
| | | Label: 'çæ¬¡è®¡å' |
| | | Taborder: 8 |
| | | ] |
| | | } |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component ActionBarPagePlan #extension |
| | | { |
| | | Children: |
| | | [ |
| | | #child: ActionBarGroupPlanViews |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method OnCreated () id:Method_ApplicationMacroPlanner_OnCreated #extension |
| | | { |
| | | Body: |
| | | [* |
| | | // On created of Application |
| | | |
| | | // Restore active MacroPlan scenario to DataHolderActiveScenario |
| | | // and Dropdown |
| | | if( not isnull( ScenarioManager ) ) |
| | | { |
| | | if( not isnull( MacroPlan ) ) |
| | | { |
| | | scenario := select( ScenarioManager, ScenarioMP, sce, |
| | | sce.DatasetMDSID() = MacroPlan.MDSID() ) |
| | | |
| | | if( not isnull( scenario ) ) |
| | | { |
| | | DataHolderActiveScenario.Data( scenario ); |
| | | DataHolderMacroPlanner.Data( MacroPlan ); |
| | | } |
| | | } |
| | | } |
| | | // Sync user and roles ( sync during fresh startup without scenario creation ) |
| | | if( not isnull( SWF_WorkflowDataset ) ) |
| | | { |
| | | SWF_WorkflowDataset.OnUserLogin(); |
| | | } |
| | | |
| | | mdsidkey := RecycleBin::OnLogin(); |
| | | |
| | | componentmds := ApplicationScope.ComponentMDS(); |
| | | mdsinstance := select( componentmds, ComponentMDSKinds.ComponentMDSInstances, m, m.MDSID().MDSKey() = mdsidkey ); |
| | | if ( not isnull( mdsinstance ) and not mdsinstance.IsSelected() ) { |
| | | mdsinstance.ComponentMDSKind().SelectInstance( mdsinstance ); |
| | | componentmds.Apply(); |
| | | } |
| | | |
| | | DataHolderCurrentUser.Data( QuintiqUser::CurrentUser().ShortName() ); |
| | | // Also open a default view |
| | | ApplicationMacroPlanner.OpenView( 'Scenarios', ButtonScenarios1 ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: ActionBarGroupPlanViews/ButtonShiftPlan |
| | | Response OnClick () id:Response_MacroPlanner_ActionBarGroupPlanViews_ButtonShiftPlan_OnClick |
| | | { |
| | | #keys: '[412672.0.1067373094]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | GroupServerCalls: true |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | ApplicationMacroPlanner.OpenView( 'ShiftPlan', this ); |
| | | *] |
| | | } |
| | | } |
| | |
| | | #child: applicationFixedPageActionBarPageDef |
| | | #child: applicationDevelopmentActionBarPageDef_1 |
| | | #child: abpAlgorithmPostProcessing |
| | | #child: ActionBarPagePlan |
| | | ] |
| | | } |
| | | Component dhBinaryDataPR id:dhBinaryDataPR_688 |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component MatrixEditorTimeCapacities id:MatrixEditorTimeCapacities_656 |
| | | { |
| | | #keys: '[412672.0.1064460829]' |
| | | BaseType: 'WebMatrixEditor' |
| | | Children: |
| | | [ |
| | | Component MatrixEditorCellUnitPeriodTime |
| | | { |
| | | #keys: '[412672.0.1064460830]' |
| | | BaseType: 'WebMatrixEditorCell' |
| | | Children: |
| | | [ |
| | | Component DataExtractorUnitPeriodTime |
| | | { |
| | | #keys: '[412672.0.1064460831]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'structured[Unit]' |
| | | Source: 'ApplicationMacroPlanner.DataHolderUnit' |
| | | Taborder: 0 |
| | | Transformation: 'Elements.UnitPeriod.astype(UnitPeriodTime).ShiftPlan' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Attributes: 'Outcome;Remark' |
| | | Column: 'UnitPeriodTime.Period_MP' |
| | | Row: 'UnitPeriodTime.Unit' |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | | Component MatrixEditorRowsUnit |
| | | { |
| | | #keys: '[412672.0.1064460832]' |
| | | BaseType: 'WebMatrixEditorHeaderLevel' |
| | | Children: |
| | | [ |
| | | Component DataExtractorUnit |
| | | { |
| | | #keys: '[412672.0.1064460833]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'structured[Unit]' |
| | | FixedFilter: 'object.HasCapacityTypeTime()' |
| | | Source: 'ApplicationMacroPlanner.DataHolderUnit' |
| | | Taborder: 0 |
| | | Transformation: 'Elements.astype(Unit)' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Legend: 'Name' |
| | | SortCriteria: 'DisplayIndex' |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | | Component MatrixEditorColumnsPeriod |
| | | { |
| | | #keys: '[412672.0.1064460834]' |
| | | BaseType: 'WebMatrixEditorHeaderLevel' |
| | | Children: |
| | | [ |
| | | Component DataExtractorPeriod |
| | | { |
| | | #keys: '[412672.0.1064460835]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'structured[Period_MP]' |
| | | Source: 'ApplicationMacroPlanner.DataHolderPeriods' |
| | | Taborder: 0 |
| | | Transformation: 'Elements' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Legend: 'StartDate' |
| | | SortCriteria: 'StartDate' |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | #child: matrixEditorActionBarPageTime_1 |
| | | #child: matrixeditorContextMenuTime_1 |
| | | ] |
| | | Properties: |
| | | [ |
| | | AllowAttributeConfiguration: true |
| | | AllowMultipleAttributes: true |
| | | Columns: 'MatrixEditorColumnsPeriod' |
| | | ContextMenu: 'matrixeditorContextMenuTime' |
| | | Rows: 'MatrixEditorRowsUnit' |
| | | ShowSingleAttribute: true |
| | | Taborder: 1 |
| | | ] |
| | | ResponseDefinitions: |
| | | [ |
| | | DelegatedResponseDefinition OnClick id:Responsedef_MatrixEditorTimeCapacities_656_WebMenu_OnClick |
| | | { |
| | | #keys: '[412672.0.1064460817]' |
| | | Initiator: 'WebMenu' |
| | | IsInherited: false |
| | | ResponseType: 'OnClick' |
| | | Arguments: |
| | | [ |
| | | ResponseDefinitionArgument selection |
| | | { |
| | | #keys: '[4387.0.17266428]' |
| | | Binding: 'this.Selection()' |
| | | } |
| | | ] |
| | | } |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelMatrix id:PanelMatrix_675 |
| | | { |
| | | #keys: '[412672.0.1064460828]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | #child: MatrixEditorTimeCapacities_656 |
| | | #child: pOperation |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component matrixEditorActionBarPageTime id:matrixEditorActionBarPageTime_1 |
| | | { |
| | | #keys: '[412672.0.1064460836]' |
| | | BaseType: 'matrixEditorActionBarPage' |
| | | Properties: |
| | | [ |
| | | Taborder: 3 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component matrixeditorContextMenuTime id:matrixeditorContextMenuTime_1 |
| | | { |
| | | #keys: '[412672.0.1064460837]' |
| | | BaseType: 'matrixeditorContextMenu' |
| | | Children: |
| | | [ |
| | | Component MenuCopy |
| | | { |
| | | #keys: '[138034.3.1296123318]' |
| | | BaseType: 'MenuCopy' |
| | | IsDerived: true |
| | | Properties: |
| | | [ |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | Component MenuSeparator |
| | | { |
| | | #keys: '[412672.0.1064460838]' |
| | | BaseType: 'WebMenu' |
| | | Properties: |
| | | [ |
| | | Separator: true |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 4 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component pOperation |
| | | { |
| | | #keys: '[412672.0.1084334216]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | Component bExport id:bExport_187 |
| | | { |
| | | #keys: '[412672.0.1084305542]' |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
| | | Image: 'EXPORT1' |
| | | Label: '导åº' |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | | Component bDownload id:bDownload_774 |
| | | { |
| | | #keys: '[412672.0.1084305565]' |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
| | | Image: 'DOWNLOAD' |
| | | Label: 'ä¸è½½' |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | | Component dhXMLDataListener |
| | | { |
| | | #keys: '[412672.0.1084305593]' |
| | | BaseType: 'WebDataHolder' |
| | | Databinding: 'ExportXMLManager' |
| | | Children: |
| | | [ |
| | | Component DataExtractor510 |
| | | { |
| | | #keys: '[412672.0.1084305608]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'RecycleBin' |
| | | FixedFilter: 'object.Name() = "ShiftPlanXML"' |
| | | Source: 'RecycleBin' |
| | | Taborder: 0 |
| | | Transformation: 'ExportXMLManager' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | FixedSize: true |
| | | Orientation: 'horizontal' |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: MatrixEditorTimeCapacities_656 |
| | | Response OnUpdateValue ( |
| | | ShiftPlan cell, |
| | | String value, |
| | | String oldvalue |
| | | ) id:Response_MatrixEditorTimeCapacities_656_OnUpdateValue_317 |
| | | { |
| | | #keys: '[412672.0.1064460818]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebMatrixEditor_OnUpdateValue' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | cell.SetRemark( value ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: pOperation/bDownload_774 |
| | | Response OnClick () id:Response_pOperation_bDownload_OnClick |
| | | { |
| | | #keys: '[412672.0.1084305701]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | Precondition: |
| | | [* |
| | | flag := true; |
| | | feedback := ""; |
| | | if( isnull( dhXMLDataListener.Data() )){ |
| | | flag := false; |
| | | feedback := "å½åæ ä¸è½½æ°æ®ï¼ç¹å»å¯¼åºå建ä¸è½½æ°æ®ã" |
| | | } |
| | | return flag; |
| | | *] |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | binaryValue := ShiftPlan::Export( dhXMLDataListener.Data( )); |
| | | |
| | | Application.Download( "çæ¬¡è®¡å_" + DateTime::Now().Format( "YM2D2H2mmss" ) + ".xlsx", binaryValue.AsBinaryData() ); |
| | | |
| | | dhXMLDataListener.Data( ).Delete(); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: pOperation/bExport_187 |
| | | Response OnClick () id:Response_pOperation_bExport_OnClick |
| | | { |
| | | #keys: '[412672.0.1083032516]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | rows := selectset( DataHolderUnit.Data(),Elements,unit,unit.HasCapacityTypeTime() ); |
| | | columns := DataHolderPeriods.Data( ); |
| | | ShiftPlan::AsyncExport( RecycleBin, rows, columns ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: MacroPlannerWebApp |
| | | OrphanComponent FormShihtPlan |
| | | { |
| | | #keys: '[412672.0.1064470671]' |
| | | BaseType: 'WebForm' |
| | | Children: |
| | | [ |
| | | #child: PanelMatrix_675 |
| | | ] |
| | | Properties: |
| | | [ |
| | | Image: 'COMPASSES' |
| | | Title: 'çæ¬¡è®¡å' |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component MatrixEditor |
| | | { |
| | | #keys: '[412672.0.1085881196]' |
| | | BaseType: 'WebMatrixEditor' |
| | | Children: |
| | | [ |
| | | Component MatrixEditorCell |
| | | { |
| | | #keys: '[412672.0.1085881197]' |
| | | BaseType: 'WebMatrixEditorCell' |
| | | Children: |
| | | [ |
| | | Component DataExtractorCells |
| | | { |
| | | #keys: '[412672.0.1085881198]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'LocalTable' |
| | | Source: 'dhComparisonData' |
| | | Taborder: 0 |
| | | Transformation: 'LocalRow.LocalCell' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Attributes: 'Value' |
| | | Column: 'LocalColumn' |
| | | Row: 'LocalRow' |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | | Component MatrixEditorRows |
| | | { |
| | | #keys: '[412672.0.1085881201]' |
| | | BaseType: 'WebMatrixEditorHeaderLevel' |
| | | Children: |
| | | [ |
| | | Component DataExtractorRows |
| | | { |
| | | #keys: '[412672.0.1085881202]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'LocalTable' |
| | | Source: 'dhComparisonData' |
| | | Taborder: 0 |
| | | Transformation: 'LocalRow' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Legend: 'Index' |
| | | SortCriteria: 'Index' |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | | Component MatrixEditorColumns |
| | | { |
| | | #keys: '[412672.0.1085881205]' |
| | | BaseType: 'WebMatrixEditorHeaderLevel' |
| | | Children: |
| | | [ |
| | | Component DataExtractorColumns |
| | | { |
| | | #keys: '[412672.0.1085881206]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'LocalTable' |
| | | Source: 'dhComparisonData' |
| | | Taborder: 0 |
| | | Transformation: 'LocalColumn' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Legend: 'Name' |
| | | SortCriteria: 'Index' |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | #child: matrixEditorActionBarPageDemandComparison |
| | | #child: matrixeditorContextMenuDemandComparison |
| | | ] |
| | | Properties: |
| | | [ |
| | | Columns: 'MatrixEditorColumns' |
| | | ContextMenu: 'matrixeditorContextMenuDemandComparison' |
| | | Rows: 'MatrixEditorRows' |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelDemandComparison |
| | | { |
| | | #keys: '[412672.0.1085881181]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | #child: MatrixEditor |
| | | Component dhComparisonData |
| | | { |
| | | #keys: '[412672.0.1085881305]' |
| | | BaseType: 'WebDataHolder' |
| | | Databinding: 'LocalTable' |
| | | Properties: |
| | | [ |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 1 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelOperation |
| | | { |
| | | #keys: '[412672.0.1085881251]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | #child: PanelOperation11 |
| | | Component ButtonOperation |
| | | { |
| | | #keys: '[412672.0.1085802121]' |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
| | | Label: 'å¼å§å¯¹æ¯' |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | FixedSize: true |
| | | Orientation: 'horizontal' |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelOperation11 |
| | | { |
| | | #keys: '[412672.0.1085801711]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | Component DropDownListCompareVersion id:DropDownListCompareVersion_85 |
| | | { |
| | | #keys: '[412672.0.1085801792]' |
| | | BaseType: 'WebDropDownList' |
| | | Databinding: 'ArchivePR' |
| | | Children: |
| | | [ |
| | | Component DataExtractorOperation876 id:DataExtractorOperation876_293 |
| | | { |
| | | #keys: '[412672.0.1085801793]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'Archive' |
| | | FilterArguments: 'baseSelection:QMacroPlanner::FormDemandComparison.dhBaseVersion' |
| | | FixedFilter: 'object <> baseSelection' |
| | | Source: 'Archive' |
| | | Taborder: 0 |
| | | Transformation: 'ArchivePR' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | Component dhBaseVersion id:dhBaseVersion_357 |
| | | { |
| | | #keys: '[412672.0.1085801820]' |
| | | BaseType: 'WebDataHolder' |
| | | Databinding: 'ArchivePR' |
| | | Properties: |
| | | [ |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | | Component DropDownListBaseVersion id:DropDownListBaseVersion_668 |
| | | { |
| | | #keys: '[412672.0.1085801851]' |
| | | BaseType: 'WebDropDownList' |
| | | Databinding: 'ArchivePR' |
| | | Children: |
| | | [ |
| | | Component DataExtractorOperation id:DataExtractorOperation_669 |
| | | { |
| | | #keys: '[412672.0.1085801852]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'Archive' |
| | | Source: 'Archive' |
| | | Taborder: 0 |
| | | Transformation: 'ArchivePR' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | FixedSize: true |
| | | Orientation: 'horizontal' |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component matrixEditorActionBarPageDemandComparison |
| | | { |
| | | #keys: '[412672.0.1085881209]' |
| | | BaseType: 'matrixEditorActionBarPage' |
| | | Properties: |
| | | [ |
| | | Taborder: 3 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component matrixeditorContextMenuDemandComparison |
| | | { |
| | | #keys: '[412672.0.1085881212]' |
| | | BaseType: 'matrixeditorContextMenu' |
| | | Properties: |
| | | [ |
| | | Taborder: 4 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: PanelOperation11/DropDownListBaseVersion_668 |
| | | Response OnSelectionChanged ( |
| | | ArchivePR selection |
| | | ) id:Response_PanelOperation11_DropDownListBaseVersion_OnSelectionChanged_168 |
| | | { |
| | | #keys: '[412672.0.1085801849]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebDropDownList_OnSelectionChanged' |
| | | GroupServerCalls: true |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | dhBaseVersion.Data( selection ); |
| | | *] |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: PanelOperation/ButtonOperation |
| | | Response OnClick () id:Response_PanelOperation_ButtonOperation_OnClick |
| | | { |
| | | #keys: '[412672.0.1085802211]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | table := ArchivePR::Compared( RecycleBin,DropDownListBaseVersion.Data(),DropDownListCompareVersion.Data() ); |
| | | dhComparisonData.Data( table ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: MacroPlannerWebApp |
| | | OrphanComponent FormDemandComparison |
| | | { |
| | | #keys: '[412672.0.1085881113]' |
| | | BaseType: 'WebForm' |
| | | Children: |
| | | [ |
| | | #child: PanelDemandComparison |
| | | #child: PanelOperation |
| | | ] |
| | | Properties: |
| | | [ |
| | | Image: 'EQUALS' |
| | | Title: '鿱坹æ¯' |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | { |
| | | viewcontents |
| | | { |
| | | page: '' |
| | | group: '' |
| | | index: 0 |
| | | image: 'COMPASSES' |
| | | description: '' |
| | | } |
| | | formatversion: 2 |
| | | id: 'ShiftPlan' |
| | | name: 'ShiftPlan' |
| | | isglobal: false |
| | | isroot: true |
| | | } |