Merge branch 'dev' of http://47.101.211.7:10101/r/VWED into dev
已添加200个文件
已修改9个文件
已删除1个文件
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation EnginePipelineCellValue_Column_EnginePipelineColumn_CellValue |
| | | { |
| | | #keys: '1[415136.0.886711679]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide Column |
| | | { |
| | | #keys: '3[415136.0.886711681][415136.0.886711680][415136.0.886711682]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: EnginePipelineCellValue |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide CellValue |
| | | { |
| | | #keys: '3[415136.0.886711684][415136.0.886711683][415136.0.886711685]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: EnginePipelineColumn |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation EnginePipelineCell_Production_EnginePipelineProduction_Cell |
| | | { |
| | | #keys: '1[415136.0.883590181]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide Production |
| | | { |
| | | #keys: '3[415136.0.883590183][415136.0.883590182][415136.0.883590184]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: EnginePipelineCell |
| | | OwningSide: 'Owned' |
| | | } |
| | | RelationSide.RightSide Cell |
| | | { |
| | | #keys: '3[415136.0.883590186][415136.0.883590185][415136.0.883590187]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: EnginePipelineProduction |
| | | OwningSide: 'Reference' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation EnginePipelineColumn_Cell_EnginePipelineCell_Column |
| | | { |
| | | #keys: '1[415136.0.883590111]' |
| | | ProceduralSequenceRelationStrategy |
| | | { |
| | | #keys: '13[0.0.0][415136.0.883590130][415136.0.883590124][415136.0.883590131][415136.0.883590125][415136.0.883590132][415136.0.883590126][415136.0.883590133][415136.0.883590127][415136.0.883590134][415136.0.883590128][415136.0.883590135][415136.0.883590129]' |
| | | SequenceElementSuffix: 'CellInColumn' |
| | | SequenceSuffix: 'CellInColumn' |
| | | } |
| | | RelationSide.LeftSide Cell |
| | | { |
| | | #keys: '3[415136.0.883590113][415136.0.883590112][415136.0.883590114]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: EnginePipelineColumn |
| | | OwningSide: 'Owned' |
| | | } |
| | | RelationSide.RightSide Column |
| | | { |
| | | #keys: '3[415136.0.883590116][415136.0.883590115][415136.0.883590117]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: EnginePipelineCell |
| | | OwningSide: 'Reference' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation EnginePipelineDemand_Cell_EnginePipelineCell_Demand |
| | | { |
| | | #keys: '1[415136.0.883590237]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide Cell |
| | | { |
| | | #keys: '3[415136.0.883590239][415136.0.883590238][415136.0.883590240]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: EnginePipelineDemand |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide Demand |
| | | { |
| | | #keys: '3[415136.0.883590242][415136.0.883590241][415136.0.883590243]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: EnginePipelineCell |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation EnginePipelineReport_Column_EnginePipelineColumn_Report |
| | | { |
| | | #keys: '1[415136.0.883590042]' |
| | | ProceduralSequenceRelationStrategy |
| | | { |
| | | #keys: '13[0.0.0][415136.0.883590073][415136.0.883590067][415136.0.883590074][415136.0.883590068][415136.0.883590075][415136.0.883590069][415136.0.883590076][415136.0.883590070][415136.0.883590077][415136.0.883590071][415136.0.883590078][415136.0.883590072]' |
| | | SequenceElementSuffix: 'Column' |
| | | SequenceSuffix: 'Column' |
| | | } |
| | | RelationSide.LeftSide Column |
| | | { |
| | | #keys: '3[415136.0.883590044][415136.0.883590043][415136.0.883590045]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: EnginePipelineReport |
| | | OwningSide: 'Owned' |
| | | } |
| | | RelationSide.RightSide Report |
| | | { |
| | | #keys: '3[415136.0.883590047][415136.0.883590046][415136.0.883590048]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: EnginePipelineColumn |
| | | OwningSide: 'Reference' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation EnginePipelineReport_Row_EnginePipelineRow_Report |
| | | { |
| | | #keys: '1[415136.0.883590084]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide Row |
| | | { |
| | | #keys: '3[415136.0.883590086][415136.0.883590085][415136.0.883590087]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: EnginePipelineReport |
| | | OwningSide: 'Owned' |
| | | } |
| | | RelationSide.RightSide Report |
| | | { |
| | | #keys: '3[415136.0.883590089][415136.0.883590088][415136.0.883590090]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: EnginePipelineRow |
| | | OwningSide: 'Reference' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation EnginePipelineRow_CellValue_EnginePipelineCellValue_Row |
| | | { |
| | | #keys: '1[415136.0.886711663]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide CellValue |
| | | { |
| | | #keys: '3[415136.0.886711665][415136.0.886711664][415136.0.886711666]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: EnginePipelineRow |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide Row |
| | | { |
| | | #keys: '3[415136.0.886711668][415136.0.886711667][415136.0.886711669]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: EnginePipelineCellValue |
| | | OwningSide: 'Reference' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation EnginePipelineRow_Cell_EnginePipelineCell_Row |
| | | { |
| | | #keys: '1[415136.0.883590141]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide Cell |
| | | { |
| | | #keys: '3[415136.0.883590143][415136.0.883590142][415136.0.883590144]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: EnginePipelineRow |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide Row |
| | | { |
| | | #keys: '3[415136.0.883590146][415136.0.883590145][415136.0.883590147]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: EnginePipelineCell |
| | | OwningSide: 'Reference' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation EnginePipelineSource_MacroPlan_MacroPlan_EnginePipelineSource |
| | | { |
| | | #keys: '1[415136.0.883574775]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide MacroPlan |
| | | { |
| | | #keys: '3[415136.0.883574777][415136.0.883574776][415136.0.883574778]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: EnginePipelineSource |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide EnginePipelineSource |
| | | { |
| | | #keys: '3[415136.0.883574780][415136.0.883574779][415136.0.883574781]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: MacroPlan |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation EnginePipelineSource_Report_EnginePipelineReport_Source |
| | | { |
| | | #keys: '1[415136.0.883590029]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide Report |
| | | { |
| | | #keys: '3[415136.0.883590031][415136.0.883590030][415136.0.883590032]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: EnginePipelineSource |
| | | OwningSide: 'Owned' |
| | | } |
| | | RelationSide.RightSide Source |
| | | { |
| | | #keys: '3[415136.0.883590034][415136.0.883590033][415136.0.883590035]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: EnginePipelineReport |
| | | OwningSide: 'Reference' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation EnginePipelineSource_Search_EnginePipelineSearch_Source |
| | | { |
| | | #keys: '1[415136.0.883574788]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide Search |
| | | { |
| | | #keys: '3[415136.0.883574790][415136.0.883574789][415136.0.883574791]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: EnginePipelineSource |
| | | OwningSide: 'Owned' |
| | | } |
| | | RelationSide.RightSide Source |
| | | { |
| | | #keys: '3[415136.0.883574793][415136.0.883574792][415136.0.883574794]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: EnginePipelineSearch |
| | | OwningSide: 'Reference' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation MachiningPipelineCell_Column_MachiningPipelineColumn_Cell |
| | | { |
| | | #keys: '1[415136.0.894469828]' |
| | | ProceduralSequenceRelationStrategy |
| | | { |
| | | #keys: '13[0.0.0][415136.0.894469847][415136.0.894469841][415136.0.894469848][415136.0.894469842][415136.0.894469849][415136.0.894469843][415136.0.894469850][415136.0.894469844][415136.0.894469851][415136.0.894469845][415136.0.894469852][415136.0.894469846]' |
| | | SequenceElementSuffix: 'CellInColumn' |
| | | SequenceSuffix: 'CellInColumn' |
| | | } |
| | | RelationSide.LeftSide Column |
| | | { |
| | | #keys: '3[415136.0.894469830][415136.0.894469829][415136.0.894469831]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: MachiningPipelineCell |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide Cell |
| | | { |
| | | #keys: '3[415136.0.894469833][415136.0.894469832][415136.0.894469834]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: MachiningPipelineColumn |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation MachiningPipelineCell_Row_MachiningPipelineRow_Cell |
| | | { |
| | | #keys: '1[415136.0.894469858]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide Row |
| | | { |
| | | #keys: '3[415136.0.894469860][415136.0.894469859][415136.0.894469861]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: MachiningPipelineCell |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide Cell |
| | | { |
| | | #keys: '3[415136.0.894469863][415136.0.894469862][415136.0.894469864]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: MachiningPipelineRow |
| | | OwningSide: 'Reference' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation MachiningPipelineColumn_Report_MachiningPipelineReport_Column |
| | | { |
| | | #keys: '1[415136.0.894481255]' |
| | | ProceduralSequenceRelationStrategy |
| | | { |
| | | #keys: '13[0.0.0][415136.0.894481277][415136.0.894481271][415136.0.894481278][415136.0.894481272][415136.0.894481279][415136.0.894481273][415136.0.894481280][415136.0.894481274][415136.0.894481281][415136.0.894481275][415136.0.894481282][415136.0.894481276]' |
| | | SequenceElementSuffix: 'Column' |
| | | SequenceSuffix: 'Column' |
| | | } |
| | | RelationSide.LeftSide Report |
| | | { |
| | | #keys: '3[415136.0.894481257][415136.0.894481256][415136.0.894481258]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: MachiningPipelineColumn |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide Column |
| | | { |
| | | #keys: '3[415136.0.894481260][415136.0.894481259][415136.0.894481261]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: MachiningPipelineReport |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation MachiningPipelineReport_Source_MachiningPipelineSource_Report |
| | | { |
| | | #keys: '1[415136.0.894481242]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide Source |
| | | { |
| | | #keys: '3[415136.0.894481244][415136.0.894481243][415136.0.894481245]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: MachiningPipelineReport |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide Report |
| | | { |
| | | #keys: '3[415136.0.894481247][415136.0.894481246][415136.0.894481248]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: MachiningPipelineSource |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation MachiningPipelineRow_Report_MachiningPipelineReport_Row |
| | | { |
| | | #keys: '1[415136.0.894481229]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide Report |
| | | { |
| | | #keys: '3[415136.0.894481231][415136.0.894481230][415136.0.894481232]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: MachiningPipelineRow |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide Row |
| | | { |
| | | #keys: '3[415136.0.894481234][415136.0.894481233][415136.0.894481235]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: MachiningPipelineReport |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation MachiningPipelineSearch_Source_MachiningPipelineSource_Search |
| | | { |
| | | #keys: '1[415136.0.894481216]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide Source |
| | | { |
| | | #keys: '3[415136.0.894481218][415136.0.894481217][415136.0.894481219]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: MachiningPipelineSearch |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide Search |
| | | { |
| | | #keys: '3[415136.0.894481221][415136.0.894481220][415136.0.894481222]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: MachiningPipelineSource |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation MachiningPipelineSource_MacroPlan_MacroPlan_MachiningPipelineSource |
| | | { |
| | | #keys: '1[415136.0.894481203]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide MacroPlan |
| | | { |
| | | #keys: '3[415136.0.894481205][415136.0.894481204][415136.0.894481206]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: MachiningPipelineSource |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide MachiningPipelineSource |
| | | { |
| | | #keys: '3[415136.0.894481208][415136.0.894481207][415136.0.894481209]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: MacroPlan |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod GetSalary ( |
| | | const Unit owner, |
| | | const OvertimeMultiplier overtimeMutiplier, |
| | | Real overtime |
| | | ) const as Real |
| | | { |
| | | TextBody: |
| | | [* |
| | | // rislai Jul-10-2024 (created) |
| | | value := 0.0; |
| | | salaryByEmployeeTypeTree := NamedValueTree::Create(); |
| | | traverse( owner,EmployeeCost,cost ){ |
| | | salaryByEmployeeTypeHandle := salaryByEmployeeTypeTree.GetHandle( cost.EmployeeType().Name() ); |
| | | salary := guard( salaryByEmployeeTypeTree.Root().Child( salaryByEmployeeTypeHandle ),null( NamedValue )); |
| | | // 产线人åç±»å«1*人æ°*åºæ¬å·¥èµ1/21.75/8*工使¥å çæ¶é¿*åç1 |
| | | temp_salary := cost.EmployeeNumber() * cost.BaseSalary() / owner.MacroPlan().StandardWorkingDay() / 8 * overtime * overtimeMutiplier.Multiplier(); |
| | | if( not isnull( salary )){ |
| | | salary.SetValue( salary.GetValueAsReal() + temp_salary ); |
| | | }else{ |
| | | salaryByEmployeeTypeTree.Root().AddChild( salaryByEmployeeTypeHandle,temp_salary ); |
| | | } |
| | | value := value + temp_salary; |
| | | } |
| | | return value; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute DemandQuantity |
| | | { |
| | | #keys: '3[415136.0.883574849][415136.0.883574848][415136.0.883574850]' |
| | | Description: 'éæ±' |
| | | ValueType: Real |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute InventoryQuantity |
| | | { |
| | | #keys: '3[415136.0.883574836][415136.0.883574835][415136.0.883574837]' |
| | | Description: 'åºå' |
| | | ValueType: Real |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute ProductionQuantity |
| | | { |
| | | #keys: '3[415136.0.883574826][415136.0.883574825][415136.0.883574827]' |
| | | Description: 'ç产' |
| | | ValueType: Real |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Function CalcDemandQuantity |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jul-9-2024 (created) |
| | | |
| | | value := sum( this, Demand, demand, demand.Quantity() ); |
| | | |
| | | this.DemandQuantity( value ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Function CalcProductionQuantity |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jul-9-2024 (created) |
| | | production := this.Production(); |
| | | value := [Real]0; |
| | | if( not isnull( production ) ){ |
| | | value := production.CCProduction() + production.DLProduction(); |
| | | } |
| | | |
| | | this.ProductionQuantity( value ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method Copy ( |
| | | EnginePipelineColumn column |
| | | ) as EnginePipelineCell |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jul-9-2024 (created) |
| | | cell := column.Cell( relnew, InventoryQuantity := this.InventoryQuantity() ); |
| | | |
| | | traverse( this, Demand, demand ){ |
| | | cell.Demand( relnew, EngineType := demand.EngineType(), Model := demand.Model(), Period := demand.Period(), Quantity := demand.Quantity() ); |
| | | } |
| | | production := this.Production(); |
| | | cell.Production( relnew, EngineType := production.EngineType(), Period := production.Period(), DLProduction := production.DLProduction(), CCProduction := production.CCProduction() ); |
| | | return cell; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type EnginePipelineCell |
| | | { |
| | | #keys: '5[415136.0.883574656][415136.0.883574654][0.0.0][415136.0.883574655][415136.0.883574657]' |
| | | BaseType: Object |
| | | Description: 'å卿ºç®¡çº¿æ¥è¡¨åå
æ ¼' |
| | | StructuredName: 'EnginePipelineCells' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Value |
| | | { |
| | | #keys: '3[415136.0.886711654][415136.0.886711653][415136.0.886711655]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | DefaultValue |
| | | { |
| | | TargetAttribute: Value |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type EnginePipelineCellValue |
| | | { |
| | | #keys: '5[415136.0.886711642][415136.0.886711640][0.0.0][415136.0.886711641][415136.0.886711643]' |
| | | BaseType: Object |
| | | Description: 'å卿ºç®¡çº¿æ¥è¡¨æ¾ç¤ºåå
æ ¼' |
| | | StructuredName: 'EnginePipelineCellValues' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Index |
| | | { |
| | | #keys: '3[415136.0.883574675][415136.0.883574674][415136.0.883574676]' |
| | | ValueType: Number |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Name |
| | | { |
| | | #keys: '3[415136.0.883574678][415136.0.883574677][415136.0.883574679]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Period |
| | | { |
| | | #keys: '3[415136.0.883574681][415136.0.883574680][415136.0.883574682]' |
| | | ValueType: Date |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute TimeUnit |
| | | { |
| | | #keys: '3[415136.0.883590099][415136.0.883590098][415136.0.883590100]' |
| | | Description: 'æ¥æç±»å' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | DefaultValue |
| | | { |
| | | TargetAttribute: Name |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Function CalcIndex |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jun-21-2024 (created) |
| | | |
| | | value := ifexpr( isnull( this.PreviousColumn() ), 0, this.PreviousColumn().Index() + 1 ); |
| | | |
| | | this.Index( value ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type EnginePipelineColumn |
| | | { |
| | | #keys: '5[415136.0.883574672][415136.0.883574670][0.0.0][415136.0.883574671][415136.0.883574673]' |
| | | BaseType: Object |
| | | Description: 'å卿ºç®¡çº¿æ¥è¡¨å' |
| | | StructuredName: 'EnginePipelineColumns' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute EngineType |
| | | { |
| | | #keys: '3[415136.0.883590198][415136.0.883590197][415136.0.883590199]' |
| | | Description: 'å卿ºåå·' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Model |
| | | { |
| | | #keys: '3[415136.0.883590218][415136.0.883590217][415136.0.883590219]' |
| | | Description: '车å' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Period |
| | | { |
| | | #keys: '3[415136.0.883590208][415136.0.883590207][415136.0.883590209]' |
| | | Description: 'æ¥æ' |
| | | ValueType: Date |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Quantity |
| | | { |
| | | #keys: '3[415136.0.883590228][415136.0.883590227][415136.0.883590229]' |
| | | ValueType: Real |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type EnginePipelineDemand |
| | | { |
| | | #keys: '5[415136.0.883574869][415136.0.883574867][0.0.0][415136.0.883574868][415136.0.883574870]' |
| | | BaseType: Object |
| | | Description: 'éæ±å表' |
| | | StructuredName: 'EnginePipelineDemands' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute CCProduction |
| | | { |
| | | #keys: '3[415136.0.883590169][415136.0.883590168][415136.0.883590170]' |
| | | Description: 'é¿æ¥äº§é' |
| | | ValueType: Real |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute DLProduction |
| | | { |
| | | #keys: '3[415136.0.883574893][415136.0.883574892][415136.0.883574894]' |
| | | Description: '大è¿äº§é' |
| | | ValueType: Real |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute EngineType |
| | | { |
| | | #keys: '3[415136.0.883574873][415136.0.883574872][415136.0.883574874]' |
| | | Description: 'å卿ºåå·' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Period |
| | | { |
| | | #keys: '3[415136.0.883574883][415136.0.883574882][415136.0.883574884]' |
| | | Description: 'æ¥æ' |
| | | ValueType: Date |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type EnginePipelineProduction |
| | | { |
| | | #keys: '5[415136.0.883574864][415136.0.883574862][0.0.0][415136.0.883574863][415136.0.883574865]' |
| | | BaseType: Object |
| | | Description: 'ç产å表' |
| | | StructuredName: 'EnginePipelineProductions' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute ID |
| | | { |
| | | #keys: '3[415136.0.883574713][415136.0.883574712][415136.0.883574714]' |
| | | IsReadOnly: true |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute IsShow |
| | | { |
| | | #keys: '3[415136.0.883574719][415136.0.883574718][415136.0.883574720]' |
| | | ValueType: Boolean |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Name |
| | | { |
| | | #keys: '3[415136.0.883574722][415136.0.883574721][415136.0.883574723]' |
| | | Description: 'åç§°' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | DefaultValue |
| | | { |
| | | TargetAttribute: ID |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | DefaultValue |
| | | { |
| | | TargetAttribute: Name |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method Clear ( |
| | | String timeunit, |
| | | Date startdate, |
| | | Date enddate |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jun-25-2024 (created) |
| | | this.Column( relflush ); |
| | | this.Row( relflush ); |
| | | this.Column( relnew, Name := '', TimeUnit := timeunit ); |
| | | this.Column( relnew, Name := '', TimeUnit := timeunit ); |
| | | this.GenerateColumn( this.Source().MacroPlan(), timeunit, startdate, enddate ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method Generate ( |
| | | EnginePipelineSearch search, |
| | | Product_MPs products |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jun-25-2024 (created) |
| | | table := selectobject( this, Source.Report, report, not report.IsShow() ); |
| | | |
| | | //æ¸
空ä¹ååå¨çæ¾ç¤ºæ°æ® |
| | | this.Clear( search.TimeUnit(), search.StartDate(), search.EndDate() ); |
| | | Transaction::Transaction().Propagate( attribute( EnginePipelineColumn, Index ) ); |
| | | Transaction::Transaction().Propagate( attribute( EnginePipelineCell, ProductionQuantity ) ); |
| | | Transaction::Transaction().Propagate( attribute( EnginePipelineCell, DemandQuantity ) ); |
| | | //è¿æ»¤åç产åid |
| | | productids := selectuniquevalues( products, Elements, product, true, product.ID() ); |
| | | rows := selectsortedset( table, Row, row, row.RowNr() ); |
| | | //æ¾ç¤ºå |
| | | productcolumn := selectobject( this, Column, column, column.Index() = 0 ); |
| | | attricolumn := selectobject( this, Column, column, column.Index() = 1 ); |
| | | models := selectuniquevalues( table, Column.Cell.Demand, demand, demand.Model() ); |
| | | cellnr := 5 + models.Size(); |
| | | //åè®¡è¡ |
| | | sumrowproduction := EnginePipelineRow::CraeteCellValueForRow( this, productcolumn, attricolumn, 'SUM', 'ç产', rows.Size() * cellnr, true ); |
| | | sumrowdlproduction := EnginePipelineRow::CraeteCellValueForRow( this, productcolumn, attricolumn, 'SUM', '大è¿äº§é', sumrowproduction.RowNr() + 1, false ); |
| | | sumrowccproduction := EnginePipelineRow::CraeteCellValueForRow( this, productcolumn, attricolumn, 'SUM', 'é¿æ¥äº§é', sumrowproduction.RowNr() + 2, false ); |
| | | sumrowdemand := EnginePipelineRow::CraeteCellValueForRow( this, productcolumn, attricolumn, 'SUM', 'éæ±', sumrowproduction.RowNr() + 3, false ); |
| | | rowno := sumrowproduction.RowNr() + 4; |
| | | traverse( models, Elements, model ){ |
| | | EnginePipelineRow::CraeteCellValueForRow( this, productcolumn, attricolumn, 'SUM', model, rowno, false ); |
| | | rowno := rowno + 1; |
| | | } |
| | | sumrowinventory := EnginePipelineRow::CraeteCellValueForRow( this, productcolumn, attricolumn, 'SUM', 'åºå', rowno, false ); |
| | | |
| | | //è¡è®¡æ° |
| | | rownr := 0; |
| | | traverse( rows, Elements, row, productids.Find( row.Name() ) >= 0 ){ |
| | | |
| | | showrowproduction := EnginePipelineRow::CraeteCellValueForRow( this, productcolumn, attricolumn, row.Name(), 'ç产', rownr, true );; |
| | | showrowdlproduction := EnginePipelineRow::CraeteCellValueForRow( this, productcolumn, attricolumn, row.Name(), '大è¿äº§é', rownr + 1, false ); |
| | | showrowccproduction := EnginePipelineRow::CraeteCellValueForRow( this, productcolumn, attricolumn, row.Name(), 'é¿æ¥äº§é', rownr + 2, false ); |
| | | showrowdemand := EnginePipelineRow::CraeteCellValueForRow( this, productcolumn, attricolumn, row.Name(), 'éæ±', rownr + 3, false ); |
| | | rownr := rownr + 4; |
| | | traverse( models, Elements, model ){ |
| | | EnginePipelineRow::CraeteCellValueForRow( this, productcolumn, attricolumn, row.Name(), model, rownr, false ); |
| | | rownr := rownr + 1; |
| | | } |
| | | showrowinventory := EnginePipelineRow::CraeteCellValueForRow( this, productcolumn, attricolumn, row.Name(), 'åºå', rownr, false ); |
| | | |
| | | traverse( row, Cell, cell, cell.Column().TimeUnit() = search.TimeUnit() ){ |
| | | |
| | | column := selectobject( this, Column, column, column.Name() = cell.Column().Name() and column.TimeUnit() = search.TimeUnit() ); |
| | | |
| | | if( not isnull( column ) ){ |
| | | |
| | | //ç产 |
| | | production := column.CellValue( relnew, Value := [String]cell.ProductionQuantity() ); |
| | | showrowproduction.CellValue( relinsert, production ); |
| | | sumproduction := selectobject( column, CellValue, c, c.Row() = sumrowproduction ); |
| | | if( isnull( sumproduction ) ){ |
| | | sumproduction := column.CellValue( relnew, Value := [String]0 ); |
| | | sumrowproduction.CellValue( relinsert, sumproduction ); |
| | | } |
| | | sumproduction.Value( [String]( [Real]sumproduction.Value() + cell.ProductionQuantity() ) ); |
| | | |
| | | //大è¿äº§é |
| | | dlproductionquantity := guard( cell.Production().DLProduction(), 0 ); |
| | | dlproduction := column.CellValue( relnew, Value := [String]dlproductionquantity ); |
| | | showrowdlproduction.CellValue( relinsert, dlproduction ); |
| | | sumdlproduction := selectobject( column, CellValue, c, c.Row() = sumrowdlproduction ); |
| | | if( isnull( sumdlproduction ) ){ |
| | | sumdlproduction := column.CellValue( relnew, Value := [String]0 ); |
| | | sumrowdlproduction.CellValue( relinsert, sumdlproduction ); |
| | | } |
| | | sumdlproduction.Value( [String]( [Real]sumdlproduction.Value() + dlproductionquantity ) ); |
| | | |
| | | //é¿æ¥äº§é |
| | | ccproductionquantity := guard( cell.Production().CCProduction(), 0 ); |
| | | ccproduction := column.CellValue( relnew, Value := [String]ccproductionquantity ); |
| | | showrowccproduction.CellValue( relinsert, ccproduction ); |
| | | sumccproduction := selectobject( column, CellValue, c, c.Row() = sumrowccproduction ); |
| | | if( isnull( sumccproduction ) ){ |
| | | sumccproduction := column.CellValue( relnew, Value := [String]0 ); |
| | | sumrowccproduction.CellValue( relinsert, sumccproduction ); |
| | | } |
| | | sumccproduction.Value( [String]( [Real]sumccproduction.Value() + ccproductionquantity ) ); |
| | | |
| | | //éæ± |
| | | totaldemand := column.CellValue( relnew, Value := [String]cell.DemandQuantity() ); |
| | | showrowdemand.CellValue( relinsert, totaldemand ); |
| | | sumdemand := selectobject( column, CellValue, c, c.Row() = sumrowdemand ); |
| | | if( isnull( sumdemand ) ){ |
| | | sumdemand := column.CellValue( relnew, Value := [String]0 ); |
| | | sumrowdemand.CellValue( relinsert, sumdemand ); |
| | | } |
| | | sumdemand.Value( [String]( [Real]sumdemand.Value() + cell.DemandQuantity() ) ); |
| | | |
| | | traverse( cell, Demand, demand ){ |
| | | demandrow := selectobject( this, Row, r, r.Name() = row.Name() and exists( r, CellValue, cv, cv.Value() = demand.Model() ) ); |
| | | sumdemandrow := selectobject( this, Row, r, r.Name() = 'SUM' and exists( r, CellValue, cv, cv.Value() = demand.Model() ) ); |
| | | |
| | | if( not isnull( demandrow ) ){ |
| | | demandcell := column.CellValue( relnew, Value := [String]demand.Quantity() ); |
| | | demandrow.CellValue( relinsert, demandcell ); |
| | | } |
| | | |
| | | sumdemandcell := selectobject( column, CellValue, c, c.Row() = sumdemandrow ); |
| | | if( isnull( sumdemandcell ) ){ |
| | | sumdemandcell := column.CellValue( relnew, Value := [String]0 ); |
| | | sumdemandrow.CellValue( relinsert, sumdemandcell ); |
| | | } |
| | | sumdemandcell.Value( [String]( [Real]sumdemandcell.Value() + demand.Quantity() ) ); |
| | | } |
| | | |
| | | for( demandr := showrowdemand.RowNr() + 1; demandr < showrowinventory.RowNr(); demandr := demandr + 1 ){ |
| | | demandrow := selectobject( this, Row, r, r.RowNr() = demandr ); |
| | | if( not isnull( demandrow ) and not exists( demandrow, CellValue, cv, cv.Column() = column ) ){ |
| | | demandcell := column.CellValue( relnew, Value := '' ); |
| | | demandrow.CellValue( relinsert, demandcell ); |
| | | } |
| | | } |
| | | |
| | | |
| | | //åºå |
| | | inventory := column.CellValue( relnew, Value := [String]cell.InventoryQuantity() ); |
| | | showrowinventory.CellValue( relinsert, inventory ); |
| | | suminventory := selectobject( column, CellValue, c, c.Row() = sumrowinventory ); |
| | | if( isnull( suminventory ) ){ |
| | | suminventory := column.CellValue( relnew, Value := [String]0 ); |
| | | sumrowinventory.CellValue( relinsert, suminventory ); |
| | | } |
| | | suminventory.Value( [String]( [Real]suminventory.Value() + cell.InventoryQuantity() ) ); |
| | | |
| | | } |
| | | } |
| | | } |
| | | traverse( this, Column, column ){ |
| | | for( demandr := sumrowdemand.RowNr() + 1; demandr < sumrowinventory.RowNr(); demandr := demandr + 1 ){ |
| | | demandrow := selectobject( this, Row, r, r.RowNr() = demandr ); |
| | | if( not isnull( demandrow ) and not exists( demandrow, CellValue, cv, cv.Column() = column ) ){ |
| | | demandcell := column.CellValue( relnew, Value := '' ); |
| | | demandrow.CellValue( relinsert, demandcell ); |
| | | } |
| | | } |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method GenerateColumn ( |
| | | MacroPlan owner, |
| | | String timeunit, |
| | | Date startdate, |
| | | Date enddate |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jun-25-2024 (created) |
| | | //æ¥è¯¢æ¥æè¿åéè¦å¨è®¡åæ¥æä¹å
|
| | | traverse( owner, Period_MP, period, not period.IsHistorical() and period.StartDate() >= startdate and period.EndDate() <= enddate |
| | | and ( ( timeunit = 'All' and ( period.TimeUnit() = Translations::MP_GlobalParameters_Day() or period.TimeUnit() = Translations::MP_GlobalParameters_Week() ) ) |
| | | or period.TimeUnit() = timeunit ) ){ |
| | | periodtime := period.StartDate(); |
| | | periodname := periodtime.Format( "M2/D2/Y" ); |
| | | |
| | | this.Column( relnew, Name := periodname, Period := periodtime, TimeUnit := period.TimeUnit() ); |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method GetRow ( |
| | | String product |
| | | ) as EnginePipelineRow |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jun-28-2024 (created) |
| | | row := selectobject( this, Row, row, row.Name() = product ); |
| | | |
| | | if( isnull( row ) ){ |
| | | row := this.Row( relnew, Name := product ); |
| | | //åå§ååå
æ ¼ |
| | | row.InitializeCell( this ); |
| | | } |
| | | |
| | | return row; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod GetDefaultAllUnit () const declarative as String |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jun-25-2024 (created) |
| | | return '<All>'; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod GetDefaultCCUnit () const as String |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jun-25-2024 (created) |
| | | return 'é¿æ¥'; |
| | | //return 'Assembly Plant (France)'; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod GetDefaultDLUnit () const as String |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jun-25-2024 (created) |
| | | return '大è¿'; |
| | | //return 'Assembly Plant (Spain)'; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod GetDefaultName () const as String |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jun-25-2024 (created) |
| | | return 'Machining pipelines'; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type EnginePipelineReport |
| | | { |
| | | #keys: '5[415136.0.883574710][415136.0.883574708][0.0.0][415136.0.883574709][415136.0.883574711]' |
| | | BaseType: Object |
| | | Description: 'å卿ºç®¡çº¿æ¥è¡¨' |
| | | StructuredName: 'EnginePipelineReports' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Name |
| | | { |
| | | #keys: '3[415136.0.883574695][415136.0.883574694][415136.0.883574696]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute RowNr |
| | | { |
| | | #keys: '3[415136.0.883574698][415136.0.883574697][415136.0.883574699]' |
| | | ValueType: Number |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | DefaultValue |
| | | { |
| | | TargetAttribute: Name |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method Initialize ( |
| | | EnginePipelineColumn column |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jun-24-2024 (created) |
| | | cell := column.Cell( relnew, InventoryQuantity := 0 ); |
| | | |
| | | this.Cell( relinsert, cell ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method InitializeCell ( |
| | | EnginePipelineReport table |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jun-28-2024 (created) |
| | | traverse( table, Column, column ){ |
| | | this.Initialize( column ); |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method SetCellDemandValue ( |
| | | EnginePipelineColumn column, |
| | | String segment, |
| | | Real quantity |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jun-24-2024 (created) |
| | | cell := selectobject( this, Cell, cell, cell.Column() = column ); |
| | | |
| | | demand := selectobject( cell, Demand, demand, demand.EngineType() = cell.Row().Name() and demand.Model() = segment and demand.Period() = column.Period() ); |
| | | |
| | | if( isnull( demand ) ){ |
| | | demand := cell.Demand( relnew, EngineType := cell.Row().Name(), Period := column.Period(), Model := segment, Quantity := 0 ); |
| | | } |
| | | |
| | | demand.Quantity( demand.Quantity() + quantity ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method SetCellInventoryValue ( |
| | | EnginePipelineColumn column, |
| | | Real quantity |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jun-24-2024 (created) |
| | | cell := selectobject( this, Cell, cell, cell.Column() = column ); |
| | | |
| | | cell.InventoryQuantity( cell.InventoryQuantity() + quantity ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method SetCellProductionValue ( |
| | | EnginePipelineColumn column, |
| | | String unit, |
| | | Real quantity |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jun-24-2024 (created) |
| | | cell := selectobject( this, Cell, cell, cell.Column() = column ); |
| | | |
| | | production := cell.Production(); |
| | | |
| | | if( isnull( production ) ){ |
| | | production := cell.Production( relnew, EngineType := cell.Row().Name(), Period := column.Period(), DLProduction := 0, CCProduction := 0 ); |
| | | } |
| | | |
| | | if( unit = EnginePipelineReport::GetDefaultCCUnit() ){ |
| | | production.CCProduction( production.CCProduction() + quantity ); |
| | | }else if( unit = EnginePipelineReport::GetDefaultDLUnit() ){ |
| | | production.DLProduction( production.DLProduction() + quantity ); |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod CraeteCellValueForRow ( |
| | | EnginePipelineReport table, |
| | | EnginePipelineColumn productcolumn, |
| | | EnginePipelineColumn attricolumn, |
| | | String productname, |
| | | String attriname, |
| | | Number rownr, |
| | | Boolean isfirst |
| | | ) as EnginePipelineRow |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jul-11-2024 (created) |
| | | row := table.Row( relnew, Name := productname, RowNr := rownr ); |
| | | if( not isfirst ){ |
| | | productname := ''; |
| | | } |
| | | pcell := productcolumn.CellValue( relnew, Value := productname ); |
| | | acell := attricolumn.CellValue( relnew, Value := attriname ); |
| | | row.CellValue( relinsert, pcell ); |
| | | row.CellValue( relinsert, acell ); |
| | | return row; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type EnginePipelineRow |
| | | { |
| | | #keys: '5[415136.0.883574689][415136.0.883574687][0.0.0][415136.0.883574688][415136.0.883574690]' |
| | | BaseType: Object |
| | | Description: 'å卿ºç®¡çº¿è¡' |
| | | StructuredName: 'EnginePipelineRows' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute EndDate |
| | | { |
| | | #keys: '3[415136.0.883574814][415136.0.883574813][415136.0.883574815]' |
| | | Description: 'ç»ææ¥æ' |
| | | ValueType: Date |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute StartDate |
| | | { |
| | | #keys: '3[415136.0.883574802][415136.0.883574801][415136.0.883574803]' |
| | | Description: 'å¼å§æ¶é´' |
| | | ValueType: Date |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute TimeUnit |
| | | { |
| | | #keys: '3[415136.0.883590020][415136.0.883590019][415136.0.883590021]' |
| | | Description: 'æ¥æç±»å' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type EnginePipelineSearch |
| | | { |
| | | #keys: '5[415136.0.883574730][415136.0.883574728][0.0.0][415136.0.883574729][415136.0.883574731]' |
| | | BaseType: Object |
| | | Description: 'å卿ºç®¡çº¿æ¥è¯¢ç±»' |
| | | StructuredName: 'EnginePipelineSearchs' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Name |
| | | { |
| | | #keys: '3[415136.0.883574762][415136.0.883574761][415136.0.883574763]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | DefaultValue |
| | | { |
| | | TargetAttribute: Name |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod Download ( |
| | | MacroPlan macroPlan |
| | | ) as BinaryValue |
| | | { |
| | | Description: 'ä¸è½½å卿ºç®¡çº¿æ°æ®' |
| | | TextBody: |
| | | [* |
| | | |
| | | table := selectobject( macroPlan, EnginePipelineSource.Report, table, table.IsShow() ); |
| | | |
| | | xmlDOMI := XMLDOMImplementation::Create(); |
| | | xmlDOM := xmlDOMI.CreateDocumentFromString( '<?xml version="1.0" encoding="UTF-16"?><table><name>' + table.Name() + '</name></table>' ); |
| | | |
| | | tableElement := xmlDOM.GetElementByTagName( "table", 0 ); |
| | | |
| | | traverse ( table, Column, column ) { |
| | | columnelement := xmlDOM.CreateElement( "column" ); |
| | | nameelement := xmlDOM.CreateElement( "name" ); |
| | | typeelement := xmlDOM.CreateElement( "type" ); |
| | | if( column.Index() = 0 ){ |
| | | nameelement.TextContent( 'Product' ); |
| | | }else if( column.Index() = 1 ){ |
| | | nameelement.TextContent( 'Attribute' ); |
| | | }else{ |
| | | nameelement.TextContent( column.Name() ); |
| | | } |
| | | typeelement.TextContent( "String" ); |
| | | columnelement.AppendChild( nameelement ); |
| | | columnelement.AppendChild( typeelement ); |
| | | |
| | | cells := selectsortedset( column, CellValue, cell, cell.Row().RowNr() ); |
| | | |
| | | traverse ( cells, Elements, c ) { |
| | | cellElement := xmlDOM.CreateElement( "cell" ); |
| | | cellElement.SetAttribute( "value", c.Value() ); |
| | | columnelement.AppendChild( cellElement ); |
| | | } |
| | | tableElement.AppendChild( columnelement ); |
| | | } |
| | | |
| | | xmlString := xmlDOMI.CreateSerializer().WriteToString( xmlDOM ); |
| | | |
| | | //info( xmlString ); |
| | | |
| | | tableGroupHandle := TableGroupHandle::Create( EnginePipelineReport::GetDefaultName() ); |
| | | tableHandle := TableHandle::ImportXML( BinaryValue::Construct( xmlString ) ); |
| | | tableGroupHandle.Add( tableHandle ); |
| | | |
| | | binaryData := XLS::SaveTableGroupToBinaryData( tableGroupHandle, true ); |
| | | |
| | | return binaryData.AsBinaryValue(); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod Initialize ( |
| | | MacroPlan owner |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jun-24-2024 (created) |
| | | owner.EnginePipelineSource( relflush ); |
| | | ccunit := EnginePipelineReport::GetDefaultCCUnit(); |
| | | dlunit := EnginePipelineReport::GetDefaultDLUnit(); |
| | | //allunit := EnginePipelineReport::GetDefaultAllUnit(); |
| | | source := owner.EnginePipelineSource( relnew, Name := EnginePipelineReport::GetDefaultName() ); |
| | | table := source.Report( relnew, ID := source.Name(), Name := source.Name() ); |
| | | showtable := source.Report( relnew, ID := source.Name() + 'Show', Name := source.Name(), IsShow := true ); |
| | | |
| | | search := source.Search( relnew, StartDate := Date::MinDate(), EndDate := Date::MaxDate(), TimeUnit := Translations::MP_GlobalParameters_Day() ); |
| | | |
| | | products := construct( Product_MPs ); |
| | | //åå§åå |
| | | table.GenerateColumn( owner, 'All', search.StartDate(), search.EndDate() ); |
| | | |
| | | //çæç产ååºåæ°æ® |
| | | traverse( owner, Product_MP.ProductInStockingPoint_MP, pisp, pisp.IsLeaf() and not pisp.IsSystem() ){ |
| | | unit := pisp.StockingPoint_MP().UnitID(); |
| | | // info( unit, pisp.ProductID() ); |
| | | //åå§åè¡ |
| | | row := table.GetRow( pisp.ProductID() ); |
| | | |
| | | traverse( pisp, ProductInStockingPointInPeriod, pispip, not pispip.Period_MP().IsHistorical() |
| | | and ( pispip.Period_MP().TimeUnit() = Translations::MP_GlobalParameters_Day() |
| | | or pispip.Period_MP().TimeUnit() = Translations::MP_GlobalParameters_Week() ) ){ |
| | | periodtime := pispip.Period_MP().StartDate(); |
| | | periodname := periodtime.Format( "M2/D2/Y" ); |
| | | // info( '---------------------------------', periodtime, table.Column( relsize ), pispip.Period_MP().TimeUnit() ); |
| | | column := selectobject( table, Column, column, column.Name() = periodname and column.Period() = periodtime and column.TimeUnit() = pispip.Period_MP().TimeUnit() ); |
| | | // info( '---------------------------------', isnull( column ), isnull( row ) ); |
| | | // info( '---------------------------------', column.Name(), row.Name() ); |
| | | if( unit = ccunit or unit = dlunit ){ |
| | | row.SetCellProductionValue( column, unit, pispip.NewSupplyProductionQuantity() ); |
| | | } |
| | | row.SetCellInventoryValue( column, pispip.PlannedInventoryLevelEnd() ); |
| | | } |
| | | } |
| | | |
| | | //çæéæ±æ°æ® |
| | | traverse( owner, SalesDemand.astype( Forecast ), forecast, ( forecast.EndDate() - forecast.StartDate() ) < 8){ |
| | | row := table.GetRow( forecast.ProductID() ); |
| | | weekdate := ( forecast.StartDate() - Duration::Days( 7 ) ).Date(); |
| | | periodtime := forecast.StartDate(); |
| | | periodname := periodtime.Format( "M2/D2/Y" ); |
| | | |
| | | column := selectobject( table, Column, column, column.Name() = periodname and column.Period() = periodtime and column.TimeUnit() = Translations::MP_GlobalParameters_Day() ); |
| | | weekcolumn := minobject( table, Column, wcolumn, wcolumn.Period() <= weekdate and wcolumn.TimeUnit() = Translations::MP_GlobalParameters_Week(), wcolumn.Period() ); |
| | | |
| | | if( not isnull( column ) ){ |
| | | row.SetCellDemandValue( column, forecast.SalesSegmentName(), forecast.Quantity() ); |
| | | } |
| | | |
| | | if( not isnull( weekcolumn ) ){ |
| | | row.SetCellDemandValue( weekcolumn, forecast.SalesSegmentName(), forecast.Quantity() ); |
| | | } |
| | | } |
| | | rows := selectsortedset( table, Row, row, row.Name() ); |
| | | i := 0; |
| | | traverse( rows, Elements, e ){ |
| | | e.RowNr( i ); |
| | | i := i + 1; |
| | | } |
| | | showtable.Generate( search, products ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type EnginePipelineSource |
| | | { |
| | | #keys: '5[415136.0.883574750][415136.0.883574748][0.0.0][415136.0.883574749][415136.0.883574751]' |
| | | BaseType: Object |
| | | Description: 'å卿ºç®¡çº¿æ¥è¡¨' |
| | | StructuredName: 'EnginePipelineSources' |
| | | } |
| | |
| | | traverse( row, InventorySummaryCell, cell, cell.InventorySummaryColumn().TimeUnit() = search.Category() ){ |
| | | column := selectobject( this, InventorySummaryColumn, column, column.Name() = cell.InventorySummaryColumn().Name() ); |
| | | |
| | | sumcell := selectobject( column, InventorySummaryCell, c, c.InventroySummaryRow() = sumrow ); |
| | | |
| | | showcell := column.InventorySummaryCell( relnew, EndingInventory := cell.EndingInventory(), MinimumInventory := cell.MinimumInventory(), MaximumInventory := cell.MaximumInventory(), AverageInventory := cell.AverageInventory() ); |
| | | showrow.InventorySummaryCell( relinsert, showcell ); |
| | | sumcell.EndingInventory( sumcell.EndingInventory() + cell.EndingInventory() ); |
| | | sumcell.MinimumInventory( sumcell.MinimumInventory() + cell.MinimumInventory() ); |
| | | sumcell.MaximumInventory( sumcell.MaximumInventory() + cell.MaximumInventory() ); |
| | | sumcell.AverageInventory( sumcell.AverageInventory() + cell.AverageInventory() ); |
| | | if( not isnull( column ) ){ |
| | | sumcell := selectobject( column, InventorySummaryCell, c, c.InventroySummaryRow() = sumrow ); |
| | | |
| | | showcell := column.InventorySummaryCell( relnew, EndingInventory := cell.EndingInventory(), MinimumInventory := cell.MinimumInventory(), MaximumInventory := cell.MaximumInventory(), AverageInventory := cell.AverageInventory() ); |
| | | showrow.InventorySummaryCell( relinsert, showcell ); |
| | | sumcell.EndingInventory( sumcell.EndingInventory() + cell.EndingInventory() ); |
| | | sumcell.MinimumInventory( sumcell.MinimumInventory() + cell.MinimumInventory() ); |
| | | sumcell.MaximumInventory( sumcell.MaximumInventory() + cell.MaximumInventory() ); |
| | | sumcell.AverageInventory( sumcell.AverageInventory() + cell.AverageInventory() ); |
| | | } |
| | | } |
| | | } |
| | | } |
| | |
| | | if( endtime > startofendyear ){ |
| | | endtime := startofendyear; |
| | | } |
| | | for( start := starttime; start <= endtime; start := start.StartOfNextDay() ){ |
| | | periodtime := start.Date(); |
| | | periodname := periodtime.Format( "M2/D2/Y" ); |
| | | |
| | | if( timeunit = 'All' or timeunit = Translations::MP_GlobalParameters_Day() ){ |
| | | this.InventorySummaryColumn( relnew, Name := periodname, Period := periodtime, TimeUnit := Translations::MP_GlobalParameters_Day() ); |
| | | } |
| | | if( timeunit = 'All' or timeunit = Translations::MP_GlobalParameters_Week() ){ |
| | | weekend := ( start.StartOfNextWeek() - Duration::Days( 1 ) ).Date(); |
| | | for( start := starttime; start <= endtime; start := start.StartOfNextDay() ){ |
| | | periodtime := start.Date(); |
| | | periodname := periodtime.Format( "M2/D2/Y" ); |
| | | |
| | | if( periodtime = weekend ){ |
| | | this.InventorySummaryColumn( relnew, Name := periodname, Period := periodtime, TimeUnit := Translations::MP_GlobalParameters_Week() ); |
| | | if( timeunit = 'All' or timeunit = Translations::MP_GlobalParameters_Day() ){ |
| | | this.InventorySummaryColumn( relnew, Name := periodname, Period := periodtime, TimeUnit := Translations::MP_GlobalParameters_Day() ); |
| | | } |
| | | if( timeunit = 'All' or timeunit = Translations::MP_GlobalParameters_Week() ){ |
| | | weekend := ( start.StartOfNextWeek() - Duration::Days( 1 ) ).Date(); |
| | | |
| | | if( periodtime = weekend ){ |
| | | this.InventorySummaryColumn( relnew, Name := periodname, Period := periodtime, TimeUnit := Translations::MP_GlobalParameters_Week() ); |
| | | } |
| | | } |
| | | if( timeunit = 'All' or timeunit = Translations::MP_GlobalParameters_Month() ){ |
| | | monthend := ( start.StartOfNextMonth() - Duration::Days( 1 ) ).Date(); |
| | | |
| | | if( periodtime = monthend ){ |
| | | this.InventorySummaryColumn( relnew, Name := periodname, Period := periodtime, TimeUnit := Translations::MP_GlobalParameters_Month() ); |
| | | } |
| | | } |
| | | } |
| | | if( timeunit = 'All' or timeunit = Translations::MP_GlobalParameters_Month() ){ |
| | | monthend := ( start.StartOfNextMonth() - Duration::Days( 1 ) ).Date(); |
| | | |
| | | if( periodtime = monthend ){ |
| | | this.InventorySummaryColumn( relnew, Name := periodname, Period := periodtime, TimeUnit := Translations::MP_GlobalParameters_Month() ); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method SetBreakDayOverTimeDurction ( |
| | | String outcome |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // rislai Jul-10-2024 (created) |
| | | overtime := 0.0; |
| | | nextDayOvertime := 0.0; |
| | | if( outcome = "ä¸ç" ){ |
| | | overtime := 8.5; |
| | | nextDayOvertime := 0.0; |
| | | }else if( outcome = "äºç" ){ |
| | | overtime := 16; |
| | | nextDayOvertime := 0.5; |
| | | }else if(outcome = "9+9"){ |
| | | overtime := 16; |
| | | nextDayOvertime := 2.5; |
| | | }else if(outcome = "10+10"){ |
| | | overtime := 16; |
| | | nextDayOvertime := 4.5; |
| | | }else if(outcome = "ä¸ç"){ |
| | | overtime := 16; |
| | | nextDayOvertime := 8; |
| | | } |
| | | this.RealValue( this.RealValue() + overtime + nextDayOvertime ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method SetOvertimeDurction ( |
| | | String outcome |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // rislai Jul-10-2024 (created) |
| | | overtime := 0.0; |
| | | nextDayOvertime := 0.0; |
| | | if( outcome = "ä¸ç" ){ |
| | | overtime := 0.5; |
| | | nextDayOvertime := 0.0; |
| | | }else if( outcome = "äºç" ){ |
| | | overtime := 8; |
| | | nextDayOvertime := 0.5; |
| | | }else if(outcome = "9+9"){ |
| | | overtime := 8; |
| | | nextDayOvertime := 2.5; |
| | | }else if(outcome = "10+10"){ |
| | | overtime := 8; |
| | | nextDayOvertime := 4.5; |
| | | }else if(outcome = "ä¸ç"){ |
| | | overtime := 8; |
| | | nextDayOvertime := 8; |
| | | } |
| | | this.RealValue( this.RealValue() + overtime + nextDayOvertime ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod GenerateComprehensiveHoursReport ( |
| | | MacroPlan macroPlan, |
| | | const constcontent ShiftPlans shiftPlans, |
| | | RecycleBin owner |
| | | ) as LocalTable |
| | | { |
| | | Description: '综åå·¥æ¶å¶æ¥è¡¨' |
| | | TextBody: |
| | | [* |
| | | // rislai Jul-9-2024 (created) |
| | | table := owner.LocalTable( relnew,Name := "综åå·¥æ¶å¶æ¥è¡¨"); |
| | | |
| | | //column1 := table.LocalColumn( relnew,Name := "å·¥å" ,Index := 1); |
| | | //column2 := table.LocalColumn( relnew,Name := "产线" ,Index := 2); |
| | | |
| | | column3 := table.LocalColumn( relnew,Name := "ç产天æ°" ,Index := 3); |
| | | |
| | | column4 := table.LocalColumn( relnew,Name := "å ç/æ¬ å·¥æ¶é¿" ,Index := 4); |
| | | column5 := table.LocalColumn( relnew,Name := "è忥å çæ¶é¿" ,Index := 6); |
| | | |
| | | column6 := table.LocalColumn( relnew,Name := "å ç/æ¬ å·¥è´¹" ,Index := 8); |
| | | column7 := table.LocalColumn( relnew,Name := "è忥å çè´¹" ,Index := 10); |
| | | |
| | | units := selectset( shiftPlans,Elements.UnitPeriodTime.Unit,unit,true ); |
| | | |
| | | rows := construct( LocalRows ); |
| | | rowIndexTree := NamedValueTree::Create(); |
| | | |
| | | cells := construct( LocalCell_Defaults ); |
| | | cellIndexTree := NamedValueTree::Create(); |
| | | |
| | | unitIndexTree := NamedValueTree::Create(); |
| | | |
| | | for( i := 0; i < units.Size(); i++){ |
| | | unit := units.Element( i ); |
| | | row := table.LocalRow( relnew,Index := table.GetRowIndexCache() ,CustomName := unit.ID()); |
| | | rowHandle := rowIndexTree.GetHandle( unit.ID() ); |
| | | rows.Add( row ); |
| | | rowIndexTree.Root().AddChild( rowHandle,rows.Size() - 1 ); |
| | | |
| | | unitIndexTree.Root().AddChild( unitIndexTree.GetHandle( unit.ID() ),i ); |
| | | } |
| | | traverse( shiftPlans,Elements,shiftPlan ){ |
| | | rowKey := shiftPlan.UnitPeriodTime().Unit().ID(); |
| | | row := rows.Element( rowIndexTree.Root().Child( rowIndexTree.GetHandle( rowKey )).GetValueAsNumber() ); |
| | | |
| | | // gongchangCell := LocalCell_Default::GetCell( rowKey + column1.Name(), cellIndexTree, cells, row, column1 ); |
| | | // chanxianxCell := LocalCell_Default::GetCell( rowKey + column2.Name(), cellIndexTree, cells, row, column2 ); |
| | | |
| | | shengchanCell := LocalCell_Default::GetCell( rowKey + column3.Name(), cellIndexTree, cells, row, column3 ); |
| | | week := shiftPlan.UnitPeriodTime().Period_MP().StartDate().DayOfWeek(); |
| | | if( shiftPlan.Outcome() <> "" ){ |
| | | shengchanCell.RealValue( shengchanCell.RealValue() + 1 ); |
| | | if( shiftPlan.IsHoliday() ){ |
| | | // è忥å ç |
| | | jiejiariCell := LocalCell_Default::GetCell( rowKey + column5.Name(), cellIndexTree, cells, row, column5 ); |
| | | jiejiariCell.SetBreakDayOverTimeDurction( shiftPlan.Outcome() ); |
| | | }else if( week = 6 or week = 7 ){ |
| | | // 伿¯æ¥å ç |
| | | xiuxiCell := LocalCell_Default::GetCell( rowKey + column4.Name(), cellIndexTree, cells, row, column4 ); |
| | | xiuxiCell.SetBreakDayOverTimeDurction( shiftPlan.Outcome() ); |
| | | }else{ |
| | | // å¹³æ¶å ç |
| | | jiabanCell := LocalCell_Default::GetCell( rowKey + column4.Name(), cellIndexTree, cells, row, column4 ); |
| | | jiabanCell.SetOvertimeDurction( shiftPlan.Outcome() ); |
| | | } |
| | | }else{ |
| | | if( not shiftPlan.IsHoliday() and not ( week = 6 or week = 7 )){ |
| | | qiangongCell := LocalCell_Default::GetCell( rowKey + column4.Name(), cellIndexTree, cells, row, column4 ); |
| | | qiangongCell.RealValue( qiangongCell.RealValue() - 8 ); |
| | | } |
| | | } |
| | | } |
| | | |
| | | // å¹³æ¶å çåç |
| | | defaultMultiplier := select( macroPlan,OvertimeMultiplier,object,object.Name() = "å¹³æ¶å çåç" ); |
| | | if( isnull( defaultMultiplier )){ |
| | | defaultMultiplier := macroPlan.OvertimeMultiplier( relnew,Name := "å¹³æ¶å çåç",Multiplier := 1 ); |
| | | } |
| | | |
| | | // 伿¯æ¥å çåç |
| | | breakDayMultiplier := select( macroPlan,OvertimeMultiplier,object,object.Name() = "伿¯æ¥å çåç"); |
| | | if( isnull( breakDayMultiplier )){ |
| | | breakDayMultiplier := macroPlan.OvertimeMultiplier( relnew, Name := "伿¯æ¥å çåç",Multiplier := 2 ); |
| | | } |
| | | |
| | | // è忥å çåç |
| | | holidayMultiplier := select( macroPlan,OvertimeMultiplier,object,object.Name() = "è忥å çåç"); |
| | | if( isnull( holidayMultiplier )){ |
| | | holidayMultiplier := macroPlan.OvertimeMultiplier( relnew, Name := "è忥å çåç",Multiplier := 3 ); |
| | | } |
| | | |
| | | traverse( table,LocalRow,row ){ |
| | | rowKey := row.CustomName(); |
| | | unit := units.Element( unitIndexTree.Root().Child( unitIndexTree.GetHandle( rowKey )).GetValueAsNumber() ); |
| | | |
| | | jiejiariCell := LocalCell_Default::GetCell( rowKey + column5.Name(), cellIndexTree, cells, row, column5 ); |
| | | jiejiarifeiCell := LocalCell_Default::GetCell( rowKey + column6.Name(), cellIndexTree, cells, row, column6 ); |
| | | jiejiarifeiCell.RealValue( EmployeeCost::GetSalary( unit,defaultMultiplier,jiejiariCell.RealValue())); |
| | | |
| | | qiangongCell := LocalCell_Default::GetCell( rowKey + column4.Name(), cellIndexTree, cells, row, column4 ); |
| | | qiangongfeiCell := LocalCell_Default::GetCell( rowKey + column7.Name(), cellIndexTree, cells, row, column7 ); |
| | | qiangongfeiCell.RealValue( EmployeeCost::GetSalary( unit,defaultMultiplier,qiangongCell.RealValue() )); |
| | | } |
| | | |
| | | return table; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod GenerateStandardHoursReport ( |
| | | MacroPlan macroPlan, |
| | | const constcontent ShiftPlans shiftPlans, |
| | | RecycleBin owner |
| | | ) as LocalTable |
| | | { |
| | | Description: 'æ åå·¥æ¶å¶æ¥è¡¨' |
| | | TextBody: |
| | | [* |
| | | // rislai Jul-4-2024 (created) |
| | | table := owner.LocalTable( relnew,Name := "æ åå·¥æ¶å¶æ¥è¡¨"); |
| | | |
| | | //column1 := table.LocalColumn( relnew,Name := "å·¥å" ,Index := 1); |
| | | //column2 := table.LocalColumn( relnew,Name := "产线" ,Index := 2); |
| | | |
| | | column3 := table.LocalColumn( relnew,Name := "ç产天æ°" ,Index := 3); |
| | | |
| | | column4 := table.LocalColumn( relnew,Name := "å¹³æ¥å çæ¶é¿" ,Index := 4); |
| | | column5 := table.LocalColumn( relnew,Name := "伿¯æ¥å çæ¶é¿" ,Index := 5); |
| | | column6 := table.LocalColumn( relnew,Name := "è忥å çæ¶é¿" ,Index := 6); |
| | | column7 := table.LocalColumn( relnew,Name := "æ¬ å·¥æ¶é¿" ,Index := 7); |
| | | |
| | | column8 := table.LocalColumn( relnew,Name := "å¹³æ¥å çè´¹" ,Index := 8); |
| | | column9 := table.LocalColumn( relnew,Name := "伿¯æ¥å çè´¹" ,Index := 9); |
| | | column10 := table.LocalColumn( relnew,Name := "è忥å çè´¹" ,Index := 10); |
| | | column11 := table.LocalColumn( relnew,Name := "æ¬ å·¥è´¹" ,Index := 11); |
| | | |
| | | units := selectset( shiftPlans,Elements.UnitPeriodTime.Unit,unit,true ); |
| | | |
| | | rows := construct( LocalRows ); |
| | | rowIndexTree := NamedValueTree::Create(); |
| | | |
| | | cells := construct( LocalCell_Defaults ); |
| | | cellIndexTree := NamedValueTree::Create(); |
| | | |
| | | unitIndexTree := NamedValueTree::Create(); |
| | | |
| | | for( i := 0; i < units.Size(); i++){ |
| | | unit := units.Element( i ); |
| | | row := table.LocalRow( relnew,Index := table.GetRowIndexCache() ,CustomName := unit.ID()); |
| | | rowHandle := rowIndexTree.GetHandle( unit.ID() ); |
| | | rows.Add( row ); |
| | | rowIndexTree.Root().AddChild( rowHandle,rows.Size() - 1 ); |
| | | |
| | | unitIndexTree.Root().AddChild( unitIndexTree.GetHandle( unit.ID() ),i ); |
| | | } |
| | | traverse( shiftPlans,Elements,shiftPlan ){ |
| | | rowKey := shiftPlan.UnitPeriodTime().Unit().ID(); |
| | | row := rows.Element( rowIndexTree.Root().Child( rowIndexTree.GetHandle( rowKey )).GetValueAsNumber() ); |
| | | |
| | | // gongchangCell := LocalCell_Default::GetCell( rowKey + column1.Name(), cellIndexTree, cells, row, column1 ); |
| | | // chanxianxCell := LocalCell_Default::GetCell( rowKey + column2.Name(), cellIndexTree, cells, row, column2 ); |
| | | |
| | | shengchanCell := LocalCell_Default::GetCell( rowKey + column3.Name(), cellIndexTree, cells, row, column3 ); |
| | | week := shiftPlan.UnitPeriodTime().Period_MP().StartDate().DayOfWeek(); |
| | | if( shiftPlan.Outcome() <> "" ){ |
| | | shengchanCell.RealValue( shengchanCell.RealValue() + 1 ); |
| | | if( shiftPlan.IsHoliday() ){ |
| | | // è忥å ç |
| | | jiejiariCell := LocalCell_Default::GetCell( rowKey + column6.Name(), cellIndexTree, cells, row, column6 ); |
| | | jiejiariCell.SetBreakDayOverTimeDurction( shiftPlan.Outcome() ); |
| | | }else if( week = 6 or week = 7 ){ |
| | | // 伿¯æ¥å ç |
| | | xiuxiCell := LocalCell_Default::GetCell( rowKey + column5.Name(), cellIndexTree, cells, row, column5 ); |
| | | xiuxiCell.SetBreakDayOverTimeDurction( shiftPlan.Outcome() ); |
| | | }else{ |
| | | // å¹³æ¶å ç |
| | | jiabanCell := LocalCell_Default::GetCell( rowKey + column4.Name(), cellIndexTree, cells, row, column4 ); |
| | | jiabanCell.SetOvertimeDurction( shiftPlan.Outcome() ); |
| | | } |
| | | }else{ |
| | | if( not shiftPlan.IsHoliday() and not ( week = 6 or week = 7 )){ |
| | | qiangongCell := LocalCell_Default::GetCell( rowKey + column7.Name(), cellIndexTree, cells, row, column7 ); |
| | | qiangongCell.RealValue( qiangongCell.RealValue() + 8 ); |
| | | } |
| | | } |
| | | } |
| | | |
| | | // å¹³æ¶å çåç |
| | | defaultMultiplier := select( macroPlan,OvertimeMultiplier,object,object.Name() = "å¹³æ¶å çåç" ); |
| | | if( isnull( defaultMultiplier )){ |
| | | defaultMultiplier := macroPlan.OvertimeMultiplier( relnew,Name := "å¹³æ¶å çåç",Multiplier := 1 ); |
| | | } |
| | | |
| | | // 伿¯æ¥å çåç |
| | | breakDayMultiplier := select( macroPlan,OvertimeMultiplier,object,object.Name() = "伿¯æ¥å çåç"); |
| | | if( isnull( breakDayMultiplier )){ |
| | | breakDayMultiplier := macroPlan.OvertimeMultiplier( relnew, Name := "伿¯æ¥å çåç",Multiplier := 2 ); |
| | | } |
| | | |
| | | // è忥å çåç |
| | | holidayMultiplier := select( macroPlan,OvertimeMultiplier,object,object.Name() = "è忥å çåç"); |
| | | if( isnull( holidayMultiplier )){ |
| | | holidayMultiplier := macroPlan.OvertimeMultiplier( relnew, Name := "è忥å çåç",Multiplier := 3 ); |
| | | } |
| | | |
| | | traverse( table,LocalRow,row ){ |
| | | rowKey := row.CustomName(); |
| | | unit := units.Element( unitIndexTree.Root().Child( unitIndexTree.GetHandle( rowKey )).GetValueAsNumber() ); |
| | | |
| | | jiejiariCell := LocalCell_Default::GetCell( rowKey + column6.Name(), cellIndexTree, cells, row, column6 ); |
| | | jiejiarifeiCell := LocalCell_Default::GetCell( rowKey + column10.Name(), cellIndexTree, cells, row, column10 ); |
| | | jiejiarifeiCell.RealValue( EmployeeCost::GetSalary( unit,defaultMultiplier,jiejiariCell.RealValue())); |
| | | |
| | | xiuxiCell := LocalCell_Default::GetCell( rowKey + column5.Name(), cellIndexTree, cells, row, column5 ); |
| | | xiuxifeiCell := LocalCell_Default::GetCell( rowKey + column9.Name(), cellIndexTree, cells, row, column9 ); |
| | | xiuxifeiCell.RealValue( EmployeeCost::GetSalary( unit,breakDayMultiplier,xiuxiCell.RealValue())); |
| | | |
| | | jiabanCell := LocalCell_Default::GetCell( rowKey + column4.Name(), cellIndexTree, cells, row, column4 ); |
| | | jiabanfeiCell := LocalCell_Default::GetCell( rowKey + column8.Name(), cellIndexTree, cells, row, column8 ); |
| | | jiabanfeiCell.RealValue( EmployeeCost::GetSalary( unit,holidayMultiplier,jiabanCell.RealValue())); |
| | | |
| | | qiangongCell := LocalCell_Default::GetCell( rowKey + column7.Name(), cellIndexTree, cells, row, column7 ); |
| | | qiangongfeiCell := LocalCell_Default::GetCell( rowKey + column11.Name(), cellIndexTree, cells, row, column11 ); |
| | | qiangongfeiCell.RealValue( EmployeeCost::GetSalary( unit,defaultMultiplier,qiangongCell.RealValue() )); |
| | | } |
| | | |
| | | return table; |
| | | *] |
| | | } |
| | |
| | | cellHandle := cellIndexTree.GetHandle( cellKey ); |
| | | cellIndex := guard( cellIndexTree.Root().Child( cellHandle ),null( NamedValue )); |
| | | cell := null( LocalCell_Default ); |
| | | if( isnull( cell )){ |
| | | if( isnull( cellIndex )){ |
| | | cell := row.LocalCell( relnew,LocalCell_Default,LocalColumn := column ); |
| | | cells.Add( cell ); |
| | | cellIndexTree.Root().AddChild( cellHandle,cells.Size() - 1 ); |
| | |
| | | DateTime end1, |
| | | DateTime start2, |
| | | DateTime end2 |
| | | ) const declarative as Boolean |
| | | ) const declarative remote as Boolean |
| | | { |
| | | TextBody: |
| | | [* |
| | |
| | | Date end1, |
| | | Date start2, |
| | | Date end2 |
| | | ) const declarative as Boolean |
| | | ) const declarative remote as Boolean |
| | | { |
| | | TextBody: |
| | | [* |
| | | // rislai Jun-14-2024 (created) |
| | | return start1 < end2 and start2 < end1 ; |
| | | return start1 <= end2 and start2 <= end1 ; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute CCAssemblyPlanQty |
| | | { |
| | | #keys: '3[415136.0.886711537][415136.0.886711536][415136.0.886711538]' |
| | | Description: 'é¿æ¥è£
é
计å' |
| | | ValueType: Real |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute CCInventoryQty |
| | | { |
| | | #keys: '3[415136.0.886711534][415136.0.886711533][415136.0.886711535]' |
| | | Description: 'é¿æ¥åºå' |
| | | ValueType: Real |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute CCProductionQty |
| | | { |
| | | #keys: '3[415136.0.886711531][415136.0.886711530][415136.0.886711532]' |
| | | Description: 'é¿æ¥ç产计å' |
| | | ValueType: Real |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute CCTransferQty |
| | | { |
| | | #keys: '3[415136.0.894481176][415136.0.894481175][415136.0.894481177]' |
| | | Description: 'é¿æ¥è°æ¨è®¡å' |
| | | ValueType: Real |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute DLAssemblyPlanQty |
| | | { |
| | | #keys: '3[415136.0.894481139][415136.0.894481138][415136.0.894481140]' |
| | | Description: '大è¿è£
é
计å' |
| | | ValueType: Real |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute DLInventoryQty |
| | | { |
| | | #keys: '3[415136.0.894481162][415136.0.894481161][415136.0.894481163]' |
| | | Description: '大è¿åºå' |
| | | ValueType: Real |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute DLProductionQty |
| | | { |
| | | #keys: '3[415136.0.894481152][415136.0.894481151][415136.0.894481153]' |
| | | Description: '大è¿ç产计å' |
| | | ValueType: Real |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute DLTransferQty |
| | | { |
| | | #keys: '3[415136.0.894481186][415136.0.894481185][415136.0.894481187]' |
| | | Description: '大è¿è°æ¨è®¡å' |
| | | ValueType: Real |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute TotalInventoryQty |
| | | { |
| | | #keys: '3[415136.0.894481169][415136.0.894481168][415136.0.894481170]' |
| | | Description: 'é¿æ¥ + å¤§è¿ åºå' |
| | | ValueType: Real |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Function CalcTotalInventoryQty |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jul-12-2024 (created) |
| | | |
| | | value := this.CCInventoryQty() + this.DLInventoryQty(); |
| | | |
| | | this.TotalInventoryQty( value ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method Add ( |
| | | MachiningPipelineCell cell |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jul-12-2024 (created) |
| | | this.CCAssemblyPlanQty( this.CCAssemblyPlanQty() + cell.CCAssemblyPlanQty() ); |
| | | this.CCProductionQty( this.CCProductionQty() + cell.CCProductionQty() ); |
| | | this.CCTransferQty( this.CCTransferQty() + cell.CCTransferQty() ); |
| | | this.CCInventoryQty( this.CCInventoryQty() + cell.CCInventoryQty() ); |
| | | this.DLAssemblyPlanQty( this.DLAssemblyPlanQty() + cell.DLAssemblyPlanQty() ); |
| | | this.DLProductionQty( this.DLProductionQty() + cell.DLProductionQty() ); |
| | | this.DLTransferQty( this.DLTransferQty() + cell.DLTransferQty() ); |
| | | this.DLInventoryQty( this.DLInventoryQty() + cell.DLInventoryQty() ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method Copy ( |
| | | MachiningPipelineColumn column |
| | | ) as MachiningPipelineCell |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jul-12-2024 (created) |
| | | cell := column.Cell( relnew, CCAssemblyPlanQty := this.CCAssemblyPlanQty(), |
| | | CCProductionQty := this.CCProductionQty(), |
| | | CCTransferQty := this.CCTransferQty(), |
| | | CCInventoryQty := this.CCInventoryQty(), |
| | | DLAssemblyPlanQty := this.DLAssemblyPlanQty(), |
| | | DLProductionQty := this.DLProductionQty(), |
| | | DLTransferQty := this.DLTransferQty(), |
| | | DLInventoryQty := this.DLInventoryQty() ); |
| | | |
| | | return cell; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod Initialize ( |
| | | MachiningPipelineColumn column |
| | | ) as MachiningPipelineCell |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jul-12-2024 (created) |
| | | cell := column.Cell( relnew, CCAssemblyPlanQty := 0, |
| | | CCProductionQty := 0, |
| | | CCTransferQty := 0, |
| | | CCInventoryQty := 0, |
| | | DLAssemblyPlanQty := 0, |
| | | DLProductionQty := 0, |
| | | DLTransferQty := 0, |
| | | DLInventoryQty := 0 ); |
| | | |
| | | return cell; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type MachiningPipelineCell |
| | | { |
| | | #keys: '5[415136.0.886711528][415136.0.886711526][0.0.0][415136.0.886711527][415136.0.886711529]' |
| | | BaseType: Object |
| | | Description: 'æºå 工管线æ¥è¡¨åå
æ ¼' |
| | | StructuredName: 'MachiningPipelineCells' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Index |
| | | { |
| | | #keys: '3[415136.0.886711548][415136.0.886711547][415136.0.886711549]' |
| | | ValueType: Number |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Name |
| | | { |
| | | #keys: '3[415136.0.886711551][415136.0.886711550][415136.0.886711552]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Period |
| | | { |
| | | #keys: '3[415136.0.886711554][415136.0.886711553][415136.0.886711555]' |
| | | ValueType: Date |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute TimeUnit |
| | | { |
| | | #keys: '3[415136.0.886711557][415136.0.886711556][415136.0.886711558]' |
| | | Description: 'æ¥æç±»å' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | DefaultValue |
| | | { |
| | | TargetAttribute: Name |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | DefaultValue |
| | | { |
| | | TargetAttribute: TimeUnit |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Function CalcIndex |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jun-21-2024 (created) |
| | | |
| | | value := ifexpr( isnull( this.PreviousColumn() ), 0, this.PreviousColumn().Index() + 1 ); |
| | | |
| | | this.Index( value ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type MachiningPipelineColumn |
| | | { |
| | | #keys: '5[415136.0.886711545][415136.0.886711543][0.0.0][415136.0.886711544][415136.0.886711546]' |
| | | BaseType: Object |
| | | Description: 'æºå 工管线æ¥è¡¨å' |
| | | StructuredName: 'MachiningPipelineColumns' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute ID |
| | | { |
| | | #keys: '3[415136.0.886711585][415136.0.886711584][415136.0.886711586]' |
| | | IsReadOnly: true |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute IsShow |
| | | { |
| | | #keys: '3[415136.0.886711588][415136.0.886711587][415136.0.886711589]' |
| | | ValueType: Boolean |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Name |
| | | { |
| | | #keys: '3[415136.0.886711591][415136.0.886711590][415136.0.886711592]' |
| | | Description: 'åç§°' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | DefaultValue |
| | | { |
| | | TargetAttribute: ID |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | DefaultValue |
| | | { |
| | | TargetAttribute: Name |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method Clear ( |
| | | String timeunit, |
| | | Date startdate, |
| | | Date enddate |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jun-25-2024 (created) |
| | | this.Column( relflush ); |
| | | this.Row( relflush ); |
| | | |
| | | this.GenerateColumn( this.Source().MacroPlan(), timeunit, startdate, enddate ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method Generate ( |
| | | MachiningPipelineSearch search, |
| | | Product_MPs products |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jun-25-2024 (created) |
| | | table := selectobject( this, Source.Report, report, not report.IsShow() ); |
| | | //æ¸
空ä¹ååå¨çæ¾ç¤ºæ°æ® |
| | | this.Clear( search.TimeUnit(), search.StartDate(), search.EndDate() ); |
| | | //è¿æ»¤åç产åid |
| | | productids := selectuniquevalues( products, Elements, product, true, product.ID() ); |
| | | sumrow := this.Row( relnew, Name := 'SUM', RowNr := table.Row( relsize ) ); |
| | | traverse( table, Row, row, productids.Find( row.Name() ) >= 0 ){ |
| | | showrow := this.Row( relnew, Name := row.Name(), RowNr := row.RowNr() ); |
| | | |
| | | traverse( row, Cell, cell, cell.Column().TimeUnit() = search.TimeUnit() ){ |
| | | column := selectobject( this, Column, column, column.Name() = cell.Column().Name() and column.TimeUnit() = search.TimeUnit() ); |
| | | |
| | | if( not isnull( column ) ){ |
| | | sumcell := selectobject( column, Cell, c, c.Row() = sumrow ); |
| | | if( isnull( sumcell ) ){ |
| | | sumcell := MachiningPipelineCell::Initialize( column ); |
| | | sumrow.Cell( relinsert, sumcell ); |
| | | } |
| | | |
| | | showcell := cell.Copy( column ); |
| | | showrow.Cell( relinsert, showcell ); |
| | | |
| | | sumcell.Add( cell ); |
| | | |
| | | } |
| | | } |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method GenerateColumn ( |
| | | MacroPlan owner, |
| | | String timeunit, |
| | | Date startdate, |
| | | Date enddate |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jun-25-2024 (created) |
| | | //æ¥è¯¢æ¥æè¿åéè¦å¨è®¡åæ¥æä¹å
|
| | | traverse( owner, Period_MP, period, not period.IsHistorical() and period.StartDate() >= startdate and period.EndDate() <= enddate |
| | | and ( ( timeunit = 'All' and ( period.TimeUnit() = Translations::MP_GlobalParameters_Day() or period.TimeUnit() = Translations::MP_GlobalParameters_Week() ) ) |
| | | or period.TimeUnit() = timeunit ) ){ |
| | | periodtime := period.StartDate(); |
| | | periodname := periodtime.Format( "M2/D2/Y" ); |
| | | |
| | | this.Column( relnew, Name := periodname, Period := periodtime, TimeUnit := period.TimeUnit() ); |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method GetRow ( |
| | | String product |
| | | ) as MachiningPipelineRow |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jun-28-2024 (created) |
| | | row := selectobject( this, Row, row, row.Name() = product ); |
| | | |
| | | if( isnull( row ) ){ |
| | | row := this.Row( relnew, Name := product ); |
| | | //åå§ååå
æ ¼ |
| | | row.InitializeCell( this ); |
| | | } |
| | | |
| | | return row; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod GetDefaultAllUnit () const declarative as String |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jun-25-2024 (created) |
| | | return '<All>'; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod GetDefaultCCAssemnlyUnit () const as String |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jun-25-2024 (created) |
| | | return 'é¿æ¥è£
é
线'; |
| | | //return 'Assembly Plant (France)'; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod GetDefaultCCProductionUnit () const as String |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jun-25-2024 (created) |
| | | return 'é¿æ¥æºå 产线'; |
| | | //return 'Assembly Plant (France)'; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod GetDefaultCCUnit () const as String |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jun-25-2024 (created) |
| | | return 'é¿æ¥'; |
| | | //return 'Assembly Plant (France)'; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod GetDefaultDLAssemnlyUnit () const as String |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jun-25-2024 (created) |
| | | return '大è¿è£
é
线'; |
| | | //return 'Assembly Plant (Spain)'; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod GetDefaultDLProductionUnit () const as String |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jun-25-2024 (created) |
| | | return 'å¤§è¿æºå 产线'; |
| | | //return 'Assembly Plant (Spain)'; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod GetDefaultDLUnit () const as String |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jun-25-2024 (created) |
| | | return '大è¿'; |
| | | //return 'Assembly Plant (Spain)'; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod GetDefaultName () const as String |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jun-25-2024 (created) |
| | | return 'Machining pipelines'; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type MachiningPipelineReport |
| | | { |
| | | #keys: '5[415136.0.886711582][415136.0.886711580][0.0.0][415136.0.886711581][415136.0.886711583]' |
| | | BaseType: Object |
| | | Description: 'æºå 工管线æ¥è¡¨' |
| | | StructuredName: 'MachiningPipelineReports' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Name |
| | | { |
| | | #keys: '3[415136.0.886711571][415136.0.886711570][415136.0.886711572]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute RowNr |
| | | { |
| | | #keys: '3[415136.0.886711574][415136.0.886711573][415136.0.886711575]' |
| | | ValueType: Number |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | DefaultValue |
| | | { |
| | | TargetAttribute: Name |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method Initialize ( |
| | | MachiningPipelineColumn column |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jun-24-2024 (created) |
| | | cell := MachiningPipelineCell::Initialize( column ); |
| | | |
| | | this.Cell( relinsert, cell ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method InitializeCell ( |
| | | MachiningPipelineReport table |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jun-28-2024 (created) |
| | | traverse( table, Column, column ){ |
| | | this.Initialize( column ); |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method SetCellAssemblyValue ( |
| | | MachiningPipelineColumn column, |
| | | String unit, |
| | | Real quantity |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jun-24-2024 (created) |
| | | cell := selectobject( this, Cell, cell, cell.Column() = column ); |
| | | |
| | | if( unit = MachiningPipelineReport::GetDefaultCCAssemnlyUnit() ){ |
| | | cell.CCAssemblyPlanQty( cell.CCAssemblyPlanQty() + quantity ); |
| | | }else if( unit = MachiningPipelineReport::GetDefaultDLAssemnlyUnit() ){ |
| | | cell.DLAssemblyPlanQty( cell.DLAssemblyPlanQty() + quantity ); |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method SetCellInventoryValue ( |
| | | MachiningPipelineColumn column, |
| | | String unit, |
| | | Real quantity |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jun-24-2024 (created) |
| | | cell := selectobject( this, Cell, cell, cell.Column() = column ); |
| | | |
| | | if( unit = MachiningPipelineReport::GetDefaultCCUnit() ){ |
| | | cell.CCInventoryQty( cell.CCInventoryQty() + quantity ); |
| | | }else if( unit = MachiningPipelineReport::GetDefaultDLUnit() ){ |
| | | cell.DLInventoryQty( cell.DLInventoryQty() + quantity ); |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method SetCellProductionValue ( |
| | | MachiningPipelineColumn column, |
| | | String unit, |
| | | Real quantity |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jun-24-2024 (created) |
| | | cell := selectobject( this, Cell, cell, cell.Column() = column ); |
| | | |
| | | if( unit = MachiningPipelineReport::GetDefaultCCProductionUnit() ){ |
| | | cell.CCProductionQty( cell.CCProductionQty() + quantity ); |
| | | }else if( unit = MachiningPipelineReport::GetDefaultDLProductionUnit() ){ |
| | | cell.DLProductionQty( cell.DLProductionQty() + quantity ); |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type MachiningPipelineRow |
| | | { |
| | | #keys: '5[415136.0.886711568][415136.0.886711566][0.0.0][415136.0.886711567][415136.0.886711569]' |
| | | BaseType: Object |
| | | Description: 'æºå 工管线è¡' |
| | | StructuredName: 'MachiningPipelineRows' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute EndDate |
| | | { |
| | | #keys: '3[415136.0.886711605][415136.0.886711604][415136.0.886711606]' |
| | | Description: 'ç»ææ¥æ' |
| | | ValueType: Date |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute StartDate |
| | | { |
| | | #keys: '3[415136.0.886711602][415136.0.886711601][415136.0.886711603]' |
| | | Description: 'å¼å§æ¶é´' |
| | | ValueType: Date |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute TimeUnit |
| | | { |
| | | #keys: '3[415136.0.886711608][415136.0.886711607][415136.0.886711609]' |
| | | Description: 'æ¥æç±»å' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | DefaultValue |
| | | { |
| | | TargetAttribute: TimeUnit |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type MachiningPipelineSearch |
| | | { |
| | | #keys: '5[415136.0.886711599][415136.0.886711597][0.0.0][415136.0.886711598][415136.0.886711600]' |
| | | BaseType: Object |
| | | Description: 'æºå 工管线æ¥è¯¢ç±»' |
| | | StructuredName: 'MachiningPipelineSearchs' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Name |
| | | { |
| | | #keys: '3[415136.0.886711619][415136.0.886711618][415136.0.886711620]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | DefaultValue |
| | | { |
| | | TargetAttribute: Name |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod Download ( |
| | | MacroPlan macroPlan |
| | | ) as BinaryValue |
| | | { |
| | | Description: 'ä¸è½½å卿ºç®¡çº¿æ°æ®' |
| | | TextBody: |
| | | [* |
| | | |
| | | table := selectobject( macroPlan, MachiningPipelineSource.Report, table, table.IsShow() ); |
| | | |
| | | xmlDOMI := XMLDOMImplementation::Create(); |
| | | xmlDOM := xmlDOMI.CreateDocumentFromString( '<?xml version="1.0" encoding="UTF-16"?><table><name>' + table.Name() + '</name></table>' ); |
| | | |
| | | tableElement := xmlDOM.GetElementByTagName( "table", 0 ); |
| | | //Product |
| | | productcolumnelement := xmlDOM.CreateElement( "column" ); |
| | | productnameelement := xmlDOM.CreateElement( "name" ); |
| | | producttypeelement := xmlDOM.CreateElement( "type" ); |
| | | productnameelement.TextContent( 'Product' ); |
| | | producttypeelement.TextContent( "String" ); |
| | | productcolumnelement.AppendChild( productnameelement ); |
| | | productcolumnelement.AppendChild( producttypeelement ); |
| | | //Attribute |
| | | attricolumnelement := xmlDOM.CreateElement( "column" ); |
| | | attrinameelement := xmlDOM.CreateElement( "name" ); |
| | | attritypeelement := xmlDOM.CreateElement( "type" ); |
| | | attrinameelement.TextContent( 'Attribute' ); |
| | | attritypeelement.TextContent( "String" ); |
| | | attricolumnelement.AppendChild( attrinameelement ); |
| | | attricolumnelement.AppendChild( attritypeelement ); |
| | | |
| | | tableElement.AppendChild( productcolumnelement ); |
| | | tableElement.AppendChild( attricolumnelement ); |
| | | traverse ( table, Column, column ) { |
| | | columnelement := xmlDOM.CreateElement( "column" ); |
| | | nameelement := xmlDOM.CreateElement( "name" ); |
| | | typeelement := xmlDOM.CreateElement( "type" ); |
| | | nameelement.TextContent( column.Name() ); |
| | | typeelement.TextContent( "String" ); |
| | | columnelement.AppendChild( nameelement ); |
| | | columnelement.AppendChild( typeelement ); |
| | | |
| | | cells := selectsortedset( column, Cell, cell, cell.Row().RowNr() ); |
| | | |
| | | traverse ( cells, Elements, c ) { |
| | | if( column.Index() = 0 ){ |
| | | row := c.Row(); |
| | | //Product |
| | | productcellElement1 := xmlDOM.CreateElement( "cell" ); |
| | | productcellElement1.SetAttribute( "value", row.Name() ); |
| | | productcolumnelement.AppendChild( productcellElement1 ); |
| | | productcellElement2 := xmlDOM.CreateElement( "cell" ); |
| | | productcellElement2.SetAttribute( "value", row.Name() ); |
| | | productcolumnelement.AppendChild( productcellElement2 ); |
| | | productcellElement3 := xmlDOM.CreateElement( "cell" ); |
| | | productcellElement3.SetAttribute( "value", row.Name() ); |
| | | productcolumnelement.AppendChild( productcellElement3 ); |
| | | productcellElement4 := xmlDOM.CreateElement( "cell" ); |
| | | productcellElement4.SetAttribute( "value", row.Name() ); |
| | | productcolumnelement.AppendChild( productcellElement4 ); |
| | | productcellElement5 := xmlDOM.CreateElement( "cell" ); |
| | | productcellElement5.SetAttribute( "value", row.Name() ); |
| | | productcolumnelement.AppendChild( productcellElement5 ); |
| | | productcellElement6 := xmlDOM.CreateElement( "cell" ); |
| | | productcellElement6.SetAttribute( "value", row.Name() ); |
| | | productcolumnelement.AppendChild( productcellElement6 ); |
| | | productcellElement7 := xmlDOM.CreateElement( "cell" ); |
| | | productcellElement7.SetAttribute( "value", row.Name() ); |
| | | productcolumnelement.AppendChild( productcellElement7 ); |
| | | productcellElement8 := xmlDOM.CreateElement( "cell" ); |
| | | productcellElement8.SetAttribute( "value", row.Name() ); |
| | | productcolumnelement.AppendChild( productcellElement8 ); |
| | | productcellElement9 := xmlDOM.CreateElement( "cell" ); |
| | | productcellElement9.SetAttribute( "value", row.Name() ); |
| | | productcolumnelement.AppendChild( productcellElement9 ); |
| | | //Attribute |
| | | //é¿æ¥è£
é
计å |
| | | ccaqcellElement := xmlDOM.CreateElement( "cell" ); |
| | | ccaqcellElement.SetAttribute( "value", 'CCAssemblyPlanQty' ); |
| | | attricolumnelement.AppendChild( ccaqcellElement ); |
| | | //é¿æ¥ç产计å |
| | | ccpqcellElement := xmlDOM.CreateElement( "cell" ); |
| | | ccpqcellElement.SetAttribute( "value", 'CCProductionQty' ); |
| | | attricolumnelement.AppendChild( ccpqcellElement ); |
| | | //é¿æ¥è°æ¨è®¡å |
| | | cctqcellElement := xmlDOM.CreateElement( "cell" ); |
| | | cctqcellElement.SetAttribute( "value", 'CCTransferQty' ); |
| | | attricolumnelement.AppendChild( cctqcellElement ); |
| | | //é¿æ¥åºå |
| | | cciqcellElement := xmlDOM.CreateElement( "cell" ); |
| | | cciqcellElement.SetAttribute( "value", 'CCInventoryQty' ); |
| | | attricolumnelement.AppendChild( cciqcellElement ); |
| | | //大è¿è£
é
计å |
| | | dlaqcellElement := xmlDOM.CreateElement( "cell" ); |
| | | dlaqcellElement.SetAttribute( "value", 'DLAssemblyPlanQty' ); |
| | | attricolumnelement.AppendChild( dlaqcellElement ); |
| | | //大è¿ç产计å |
| | | dlpqcellElement := xmlDOM.CreateElement( "cell" ); |
| | | dlpqcellElement.SetAttribute( "value", 'DLProductionQty' ); |
| | | attricolumnelement.AppendChild( dlpqcellElement ); |
| | | //大è¿è°æ¨è®¡å |
| | | dltqcellElement := xmlDOM.CreateElement( "cell" ); |
| | | dltqcellElement.SetAttribute( "value", 'DLTransferQty' ); |
| | | attricolumnelement.AppendChild( dltqcellElement ); |
| | | //大è¿åºå |
| | | dliqcellElement := xmlDOM.CreateElement( "cell" ); |
| | | dliqcellElement.SetAttribute( "value", 'DLInventoryQty' ); |
| | | attricolumnelement.AppendChild( dliqcellElement ); |
| | | //é¿æ¥ + å¤§è¿ åºå |
| | | tiqcellElement := xmlDOM.CreateElement( "cell" ); |
| | | tiqcellElement.SetAttribute( "value", 'TotalInventoryQty' ); |
| | | attricolumnelement.AppendChild( tiqcellElement ); |
| | | } |
| | | //é¿æ¥è£
é
计å |
| | | ccaqcellElement := xmlDOM.CreateElement( "cell" ); |
| | | ccaqcellElement.SetAttribute( "value", [String]c.CCAssemblyPlanQty() ); |
| | | columnelement.AppendChild( ccaqcellElement ); |
| | | //é¿æ¥ç产计å |
| | | ccpqcellElement := xmlDOM.CreateElement( "cell" ); |
| | | ccpqcellElement.SetAttribute( "value", [String]c.CCProductionQty() ); |
| | | columnelement.AppendChild( ccpqcellElement ); |
| | | //é¿æ¥è°æ¨è®¡å |
| | | cctqcellElement := xmlDOM.CreateElement( "cell" ); |
| | | cctqcellElement.SetAttribute( "value", [String]c.CCTransferQty() ); |
| | | columnelement.AppendChild( cctqcellElement ); |
| | | //é¿æ¥åºå |
| | | cciqcellElement := xmlDOM.CreateElement( "cell" ); |
| | | cciqcellElement.SetAttribute( "value", [String]c.CCInventoryQty() ); |
| | | columnelement.AppendChild( cciqcellElement ); |
| | | //大è¿è£
é
计å |
| | | dlaqcellElement := xmlDOM.CreateElement( "cell" ); |
| | | dlaqcellElement.SetAttribute( "value", [String]c.DLAssemblyPlanQty() ); |
| | | columnelement.AppendChild( dlaqcellElement ); |
| | | //大è¿ç产计å |
| | | dlpqcellElement := xmlDOM.CreateElement( "cell" ); |
| | | dlpqcellElement.SetAttribute( "value", [String]c.DLProductionQty() ); |
| | | columnelement.AppendChild( dlpqcellElement ); |
| | | //大è¿è°æ¨è®¡å |
| | | dltqcellElement := xmlDOM.CreateElement( "cell" ); |
| | | dltqcellElement.SetAttribute( "value", [String]c.DLTransferQty() ); |
| | | columnelement.AppendChild( dltqcellElement ); |
| | | //大è¿åºå |
| | | dliqcellElement := xmlDOM.CreateElement( "cell" ); |
| | | dliqcellElement.SetAttribute( "value", [String]c.DLInventoryQty() ); |
| | | columnelement.AppendChild( dliqcellElement ); |
| | | //é¿æ¥ + å¤§è¿ åºå |
| | | tiqcellElement := xmlDOM.CreateElement( "cell" ); |
| | | tiqcellElement.SetAttribute( "value", [String]c.TotalInventoryQty() ); |
| | | columnelement.AppendChild( tiqcellElement ); |
| | | } |
| | | tableElement.AppendChild( columnelement ); |
| | | } |
| | | |
| | | xmlString := xmlDOMI.CreateSerializer().WriteToString( xmlDOM ); |
| | | |
| | | //info( xmlString ); |
| | | |
| | | tableGroupHandle := TableGroupHandle::Create( MachiningPipelineReport::GetDefaultName() ); |
| | | tableHandle := TableHandle::ImportXML( BinaryValue::Construct( xmlString ) ); |
| | | tableGroupHandle.Add( tableHandle ); |
| | | |
| | | binaryData := XLS::SaveTableGroupToBinaryData( tableGroupHandle, true ); |
| | | |
| | | return binaryData.AsBinaryValue(); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod Initialize ( |
| | | MacroPlan owner |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jun-24-2024 (created) |
| | | owner.FinancialProductionSource( relflush ); |
| | | ccunit := MachiningPipelineReport::GetDefaultCCUnit(); |
| | | dlunit := MachiningPipelineReport::GetDefaultDLUnit(); |
| | | //allunit := EnginePipelineReport::GetDefaultAllUnit(); |
| | | source := owner.MachiningPipelineSource( relnew, Name := MachiningPipelineReport::GetDefaultName() ); |
| | | table := source.Report( relnew, ID := source.Name(), Name := source.Name() ); |
| | | showtable := source.Report( relnew, ID := source.Name() + 'Show', Name := source.Name(), IsShow := true ); |
| | | |
| | | search := source.Search( relnew, StartDate := Date::MinDate(), EndDate := Date::MaxDate(), TimeUnit := Translations::MP_GlobalParameters_Day() ); |
| | | |
| | | products := construct( Product_MPs ); |
| | | //åå§åå |
| | | table.GenerateColumn( owner, 'All', search.StartDate(), search.EndDate() ); |
| | | |
| | | //çæè£
é
ãç产ååºåæ°æ® |
| | | traverse( owner, Product_MP.ProductInStockingPoint_MP, pisp, pisp.IsLeaf() and not pisp.IsSystem() ){ |
| | | unit := pisp.StockingPoint_MP().UnitID(); |
| | | //åå§åè¡ |
| | | row := table.GetRow( pisp.ProductID() ); |
| | | |
| | | traverse( pisp, ProductInStockingPointInPeriod, pispip, not pispip.Period_MP().IsHistorical() |
| | | and ( pispip.Period_MP().TimeUnit() = Translations::MP_GlobalParameters_Day() |
| | | or pispip.Period_MP().TimeUnit() = Translations::MP_GlobalParameters_Week() ) ){ |
| | | periodtime := pispip.Period_MP().StartDate(); |
| | | periodname := periodtime.Format( "M2/D2/Y" ); |
| | | column := selectobject( table, Column, column, column.Name() = periodname and column.Period() = periodtime and column.TimeUnit() = pispip.Period_MP().TimeUnit() ); |
| | | |
| | | //è£
é
线 |
| | | if( unit = MachiningPipelineReport::GetDefaultCCAssemnlyUnit() or unit = MachiningPipelineReport::GetDefaultDLAssemnlyUnit() ){ |
| | | row.SetCellAssemblyValue( column, unit, pispip.NewSupplyProductionQuantity() ); |
| | | } |
| | | //æºå 线 |
| | | if( unit = MachiningPipelineReport::GetDefaultCCProductionUnit() or unit = MachiningPipelineReport::GetDefaultDLProductionUnit() ){ |
| | | row.SetCellProductionValue( column, unit, pispip.NewSupplyProductionQuantity() ); |
| | | } |
| | | if( unit = ccunit or unit = dlunit ){ |
| | | row.SetCellInventoryValue( column, unit, pispip.PlannedInventoryLevelEnd() ); |
| | | } |
| | | } |
| | | } |
| | | |
| | | //çæè°æ¨æ°æ® |
| | | traverse( owner, TransferPlanRow, tprow, ( tprow.SourceStockpoingPointID() = 'CC' and tprow.TargetStockpoingPointID() = 'DL' ) or ( tprow.SourceStockpoingPointID() = 'DL' and tprow.TargetStockpoingPointID() = 'CC' ) ){ |
| | | row := selectobject( table, Row, row, row.Name() = tprow.Name() ); |
| | | traverse( table, Column, column ){ |
| | | cell := selectobject( row, Cell, cell, cell.Column() = column ); |
| | | if( column.TimeUnit() = Translations::MP_GlobalParameters_Day() ){ |
| | | tpcell := selectobject( tprow, TransferPlanCell, tpcell, tpcell.TransferPlanColumn().ColumnDate() = column.Period() ); |
| | | if( tprow.SourceStockpoingPointID() = 'CC' and tprow.TargetStockpoingPointID() = 'DL' ){ |
| | | cell.CCTransferQty( [Real]tpcell.Value() ); |
| | | }else if( tprow.SourceStockpoingPointID() = 'DL' and tprow.TargetStockpoingPointID() = 'CC' ){ |
| | | cell.DLTransferQty( [Real]tpcell.Value() ); |
| | | } |
| | | }else if( column.TimeUnit() = Translations::MP_GlobalParameters_Week() ){ |
| | | period := column.Period() + Duration::Days( 6 ); |
| | | tpcell := selectobject( tprow, TransferPlanCell, tpcell, tpcell.TransferPlanColumn().ColumnDate() = period.Date() ); |
| | | |
| | | if( tprow.SourceStockpoingPointID() = 'CC' and tprow.TargetStockpoingPointID() = 'DL' ){ |
| | | cell.CCTransferQty( [Real]tpcell.Value() ); |
| | | }else if( tprow.SourceStockpoingPointID() = 'DL' and tprow.TargetStockpoingPointID() = 'CC' ){ |
| | | cell.DLTransferQty( [Real]tpcell.Value() ); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | rows := selectsortedset( table, Row, row, row.Name() ); |
| | | i := 0; |
| | | traverse( rows, Elements, e ){ |
| | | e.RowNr( i ); |
| | | i := i + 1; |
| | | } |
| | | showtable.Generate( search, products ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type MachiningPipelineSource |
| | | { |
| | | #keys: '5[415136.0.886711616][415136.0.886711614][0.0.0][415136.0.886711615][415136.0.886711617]' |
| | | BaseType: Object |
| | | Description: 'æºå 工管线æ¥è¡¨' |
| | | StructuredName: 'MachiningPipelineSources' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | DefaultValue |
| | | { |
| | | ISOValue: '21.75' |
| | | TargetAttribute: StandardWorkingDay |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute IsHoliday |
| | | { |
| | | #keys: '3[412672.1.34300030][412672.1.34300029][412672.1.34300031]' |
| | | ValueType: Boolean |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Function CalcIsHoliday |
| | | { |
| | | TextBody: |
| | | [* |
| | | // rislai Jul-9-2024 (created) |
| | | |
| | | value := false |
| | | |
| | | if( this.EventType() = "æ³å®è忥"){ |
| | | value := true; |
| | | } |
| | | |
| | | this.IsHoliday( value ); |
| | | *] |
| | | } |
| | |
| | | Taborder: 3 |
| | | ] |
| | | } |
| | | Component ButtonComprehensiveStandardHoursReport |
| | | { |
| | | #keys: '[412672.1.39734996]' |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
| | | Image: 'DOCUMENT_CHART' |
| | | Label: 'å·¥æ¶å¶æ¥è¡¨' |
| | | Taborder: 4 |
| | | ] |
| | | } |
| | | Component ButtonEnginePipelineReport |
| | | { |
| | | #keys: '[415136.0.884991586]' |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
| | | Image: 'DOCUMENT_CONNECTION' |
| | | Label: 'Engine pipeline report' |
| | | Taborder: 5 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: ActionBarGroupReport/ButtonComprehensiveStandardHoursReport |
| | | Response OnClick () id:Response_MacroPlanner_ActionBarGroupReport_ButtonComprehensiveStandardHoursReport_OnClick |
| | | { |
| | | #keys: '[412672.1.36822187]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | // Open view |
| | | ApplicationMacroPlanner.OpenView( 'ComprehensiveStandardHoursReport', ButtonComprehensiveStandardHoursReport ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: ActionBarGroupReport/ButtonEnginePipelineReport |
| | | Response OnClick () id:Response_MacroPlanner_ActionBarGroupReport_ButtonEnginePipelineReport_OnClick |
| | | { |
| | | #keys: '[415136.0.888144270]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | ApplicationScope.ViewManager().ResetUserViewById( "Engine_pipleline_report", true); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component ListEnginePipelineDemand |
| | | { |
| | | #keys: '[415136.0.889610579]' |
| | | BaseType: 'WebList' |
| | | Children: |
| | | [ |
| | | Component DataExtractorEnginePipelineDemand |
| | | { |
| | | #keys: '[415136.0.889610580]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'structured[external[EnginePipelineCell]]' |
| | | Source: 'FormEnginePipelineReport.dhEnginePipelineCells' |
| | | Taborder: 0 |
| | | Transformation: 'Elements.Demand' |
| | | ] |
| | | } |
| | | #child: listActionBarPageEnginePipelineDemand |
| | | Component DataSetLevelEnginePipelineDemand |
| | | { |
| | | #keys: '[415136.0.889610585]' |
| | | BaseType: 'WebDataSetLevel' |
| | | Children: |
| | | [ |
| | | #child: listContextMenuEnginePipelineDemand |
| | | ] |
| | | Properties: |
| | | [ |
| | | Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"EngineType","title":"EngineType","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"EngineType"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Model","title":"Model","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Model"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Period","title":"Period","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Period"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Quantity","title":"Quantity","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Quantity"}}]' |
| | | ContextMenu: 'listContextMenuEnginePipelineDemand' |
| | | SortCriteria: 'EngineType;Model;Period' |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component listActionBarPageEnginePipelineDemand |
| | | { |
| | | #keys: '[415136.0.889610582]' |
| | | BaseType: 'listActionBarPage' |
| | | Properties: |
| | | [ |
| | | Taborder: 1 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component listContextMenuEnginePipelineDemand |
| | | { |
| | | #keys: '[415136.0.889610587]' |
| | | BaseType: 'listContextMenu' |
| | | Properties: |
| | | [ |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: MacroPlannerWebApp |
| | | OrphanComponent FormEnginePipelineDemand |
| | | { |
| | | #keys: '[415136.0.889610518]' |
| | | BaseType: 'WebForm' |
| | | Children: |
| | | [ |
| | | #child: ListEnginePipelineDemand |
| | | ] |
| | | Properties: |
| | | [ |
| | | Image: 'NOTE' |
| | | Title: 'Engine pipeline demand' |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component ListEnginePipelineProduction |
| | | { |
| | | #keys: '[415136.0.888050782]' |
| | | BaseType: 'WebList' |
| | | Children: |
| | | [ |
| | | Component DataExtractorEnginePipelineProduction |
| | | { |
| | | #keys: '[415136.0.888050783]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'structured[EnginePipelineCell]' |
| | | Source: 'FormEnginePipelineReport.dhEnginePipelineCells' |
| | | Taborder: 0 |
| | | Transformation: 'Elements.Production' |
| | | ] |
| | | } |
| | | #child: listActionBarPageEnginePipelineProduction |
| | | Component DataSetLevelEnginePipelineProduction |
| | | { |
| | | #keys: '[415136.0.888050788]' |
| | | BaseType: 'WebDataSetLevel' |
| | | Children: |
| | | [ |
| | | #child: listContextMenuEnginePipelineProduction |
| | | ] |
| | | Properties: |
| | | [ |
| | | Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"EngineType","title":"EngineType","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"EngineType"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Period","title":"Period","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Period"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"DLProduction","title":"DLProduction","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"DLProduction"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"CCProduction","title":"CCProduction","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"CCProduction"}}]' |
| | | ContextMenu: 'listContextMenuEnginePipelineProduction' |
| | | SortCriteria: 'EngineType;Period' |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component listActionBarPageEnginePipelineProduction |
| | | { |
| | | #keys: '[415136.0.888050785]' |
| | | BaseType: 'listActionBarPage' |
| | | Properties: |
| | | [ |
| | | Taborder: 1 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component listContextMenuEnginePipelineProduction |
| | | { |
| | | #keys: '[415136.0.888050790]' |
| | | BaseType: 'listContextMenu' |
| | | Properties: |
| | | [ |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: MacroPlannerWebApp |
| | | OrphanComponent FormEnginePipelineProduction |
| | | { |
| | | #keys: '[415136.0.886943096]' |
| | | BaseType: 'WebForm' |
| | | Children: |
| | | [ |
| | | #child: ListEnginePipelineProduction |
| | | ] |
| | | Properties: |
| | | [ |
| | | Image: 'NOTE' |
| | | Title: 'Engine pipeline production' |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component MatrixEditorTable |
| | | { |
| | | #keys: '[415136.0.884991429]' |
| | | BaseType: 'WebMatrixEditor' |
| | | Children: |
| | | [ |
| | | Component MatrixEditorCellTable |
| | | { |
| | | #keys: '[415136.0.884991430]' |
| | | BaseType: 'WebMatrixEditorCell' |
| | | Children: |
| | | [ |
| | | Component DataExtractorCell |
| | | { |
| | | #keys: '[415136.0.884991431]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'EnginePipelineReport' |
| | | Source: 'DataHolderTable' |
| | | Taborder: 0 |
| | | Transformation: 'Column.CellValue' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Attributes: 'Value' |
| | | Column: 'Column' |
| | | Row: 'Row' |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | | Component MatrixEditorRowsTable |
| | | { |
| | | #keys: '[415136.0.884991434]' |
| | | BaseType: 'WebMatrixEditorHeaderLevel' |
| | | Children: |
| | | [ |
| | | Component DataExtractorRow |
| | | { |
| | | #keys: '[415136.0.884991435]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'EnginePipelineReport' |
| | | Source: 'DataHolderTable' |
| | | Taborder: 0 |
| | | Transformation: 'Row' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Legend: 'RowNr' |
| | | SortCriteria: 'RowNr' |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | | Component MatrixEditorColumnsTable |
| | | { |
| | | #keys: '[415136.0.884991438]' |
| | | BaseType: 'WebMatrixEditorHeaderLevel' |
| | | Children: |
| | | [ |
| | | Component DataExtractorColumn |
| | | { |
| | | #keys: '[415136.0.884991439]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'EnginePipelineReport' |
| | | Source: 'DataHolderTable' |
| | | Taborder: 0 |
| | | Transformation: 'Column' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Legend: 'Name' |
| | | SortCriteria: 'Index' |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | #child: matrixEditorActionBarPageTable |
| | | #child: matrixeditorContextMenuTable |
| | | ] |
| | | Properties: |
| | | [ |
| | | Columns: 'MatrixEditorColumnsTable' |
| | | ContextMenu: 'matrixeditorContextMenuTable' |
| | | Rows: 'MatrixEditorRowsTable' |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelExport id:PanelExport_570 |
| | | { |
| | | #keys: '[415136.0.884991008]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | Component ButtonSummaryExport |
| | | { |
| | | #keys: '[415136.0.884991009]' |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
| | | Image: 'IMPORT1' |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Orientation: 'horizontal' |
| | | Taborder: 2 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelHeader |
| | | { |
| | | #keys: '[415136.0.884990889]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | #child: PanelSearch |
| | | ] |
| | | Properties: |
| | | [ |
| | | FixedSize: true |
| | | Taborder: 3 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelPeriod id:PanelPeriod_325 |
| | | { |
| | | #keys: '[415136.0.884991005]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | Component DateSelectorStart |
| | | { |
| | | #keys: '[415136.0.884991006]' |
| | | BaseType: 'WebDateSelector' |
| | | Properties: |
| | | [ |
| | | Label: 'Start date' |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | | Component DateSelectorEnd |
| | | { |
| | | #keys: '[415136.0.884991007]' |
| | | BaseType: 'WebDateSelector' |
| | | Properties: |
| | | [ |
| | | Date: 9999-12-31 |
| | | Label: 'End date' |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Orientation: 'horizontal' |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelSearch |
| | | { |
| | | #keys: '[415136.0.884991004]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | #child: PanelPeriod_325 |
| | | #child: PanelExport_570 |
| | | #child: PanelTimeUnit |
| | | ] |
| | | Properties: |
| | | [ |
| | | FixedSize: true |
| | | Orientation: 'horizontal' |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelTable |
| | | { |
| | | #keys: '[415136.0.884991246]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | #child: MatrixEditorTable |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 4 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelTimeUnit |
| | | { |
| | | #keys: '[415136.0.884991010]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | Component RadioButtonGroupUseForTimeUnit |
| | | { |
| | | #keys: '[415136.0.884991011]' |
| | | BaseType: 'WebRadioButtonGroup' |
| | | Properties: |
| | | [ |
| | | ButtonLabels: 'Day;Week' |
| | | ButtonValues: 'Day;Week' |
| | | Orientation: 'horizontal' |
| | | ShowTitle: false |
| | | Taborder: 0 |
| | | Title: 'Periods' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Orientation: 'horizontal' |
| | | Taborder: 1 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component matrixEditorActionBarPageTable |
| | | { |
| | | #keys: '[415136.0.884991442]' |
| | | BaseType: 'matrixEditorActionBarPage' |
| | | Properties: |
| | | [ |
| | | Taborder: 3 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component matrixeditorContextMenuTable |
| | | { |
| | | #keys: '[415136.0.884991445]' |
| | | BaseType: 'matrixeditorContextMenu' |
| | | Properties: |
| | | [ |
| | | Taborder: 4 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: MatrixEditorTable |
| | | Response OnSelectionChanged ( |
| | | structured[EnginePipelineCell] selection |
| | | ) id:Response_MatrixEditorTable_OnSelectionChanged |
| | | { |
| | | #keys: '[415136.0.886943328]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebMatrixEditor_OnSelectionChanged' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | //éæ©çåå
æ ¼ |
| | | dhEnginePipelineCells.Data( selection.Copy() ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Response OnCreated () id:Response_FormEnginePipelineReport_OnCreated |
| | | { |
| | | #keys: '[415136.0.884991340]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebComponent_OnCreated' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | //if( not isnull( MacroPlan.EnginePipelineSource() ) ){ |
| | | EnginePipelineSource::Initialize( MacroPlan ); |
| | | //} |
| | | //info( '------------------1----------------' ); |
| | | table := selectobject( MacroPlan, EnginePipelineSource.Report, table, table.IsShow() ); |
| | | //info( '------------------2----------------', table.IsShow() ); |
| | | DataHolderTable.Data( table ); |
| | | |
| | | dhSearch.Data( table.Source().Search() ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: PanelExport_570/ButtonSummaryExport |
| | | Response OnClick () id:Response_PanelExport_570_ButtonSummaryExport_OnClick |
| | | { |
| | | #keys: '[415136.0.884991001]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | Precondition: |
| | | [* |
| | | return not isnull( MacroPlan ); |
| | | *] |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | binaryValue := EnginePipelineSource::Download( MacroPlan ); |
| | | |
| | | Application.Download( EnginePipelineReport::GetDefaultName() + '.xlsx', binaryValue.AsBinaryData() ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: PanelPeriod_325/DateSelectorEnd |
| | | Response OnChanged () id:Response_PanelPeriod_325_DateSelectorEnd_OnChanged |
| | | { |
| | | #keys: '[415136.0.884991002]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebDateTimeFieldBase_OnChanged' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | //æ¥ææ¹ååå·æ°æ¾ç¤º |
| | | if( this.Date() < DateSelectorStart.Date() ){ |
| | | this.HintError( 'The end date cannot be less than the start date!' ); |
| | | }else{ |
| | | if( dhSearch.Data().EndDate() <> this.Date() ){ |
| | | dhSearch.Data().EndDate( this.Date() ); |
| | | DataHolderTable.Data().Generate( dhSearch.Data(), DataHolderProduct.Data() ); |
| | | } |
| | | } |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: PanelPeriod_325/DateSelectorStart |
| | | Response OnChanged () id:Response_PanelPeriod_325_DateSelectorStart_OnChanged |
| | | { |
| | | #keys: '[415136.0.884991003]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebDateTimeFieldBase_OnChanged' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | //æ¥ææ¹ååå·æ°æ¾ç¤º |
| | | if( this.Date() > DateSelectorEnd.Date() ){ |
| | | this.HintError( 'The start date cannot be later than the end date!' ); |
| | | }else{ |
| | | if( dhSearch.Data().StartDate() <> this.Date() ){ |
| | | dhSearch.Data().StartDate( this.Date() ); |
| | | DataHolderTable.Data().Generate( dhSearch.Data(), DataHolderProduct.Data() ); |
| | | } |
| | | } |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: PanelTimeUnit/RadioButtonGroupUseForTimeUnit |
| | | Response OnChanged () id:Response_PanelTimeUnit_RadioButtonGroupUseForTimeUnit_OnChanged |
| | | { |
| | | #keys: '[415136.0.884991000]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebRadioButtonGroup_OnChanged' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | //åºé´æ¹ååå·æ°æ¾ç¤º |
| | | if( dhSearch.Data().TimeUnit() <> this.BoundValue() ){ |
| | | dhSearch.Data().TimeUnit( this.BoundValue() ); |
| | | DataHolderTable.Data().Generate( dhSearch.Data(), DataHolderProduct.Data() ); |
| | | } |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: PanelTimeUnit/RadioButtonGroupUseForTimeUnit |
| | | Response OnCreated () id:Response_PanelTimeUnit_RadioButtonGroupUseForTimeUnit_OnCreated |
| | | { |
| | | #keys: '[415136.0.884990999]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebComponent_OnCreated' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | this.ButtonValues( Translations::MP_GlobalParameters_Day() + ';' + Translations::MP_GlobalParameters_Week() + ';' + Translations::MP_GlobalParameters_Month() ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: MacroPlannerWebApp |
| | | OrphanComponent FormEnginePipelineReport |
| | | { |
| | | #keys: '[415136.0.884990753]' |
| | | BaseType: 'WebForm' |
| | | Children: |
| | | [ |
| | | Component DataHolderTable id:DataHolderTable_750 |
| | | { |
| | | #keys: '[415136.0.884990847]' |
| | | BaseType: 'WebDataHolder' |
| | | Databinding: 'EnginePipelineReport' |
| | | Properties: |
| | | [ |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | | Component dhSearch id:dhSearch_316 |
| | | { |
| | | #keys: '[415136.0.884990864]' |
| | | BaseType: 'WebDataHolder' |
| | | Databinding: 'EnginePipelineSearch' |
| | | Properties: |
| | | [ |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | | #child: PanelHeader |
| | | #child: PanelTable |
| | | Component dhEnginePipelineCells id:dhEnginePipelineCells_430 |
| | | { |
| | | #keys: '[415136.0.888401920]' |
| | | BaseType: 'WebDataHolder' |
| | | Databinding: 'structured[EnginePipelineCell]*' |
| | | Properties: |
| | | [ |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Image: 'DOCUMENT_CONNECTION' |
| | | Title: 'Engine pipeline report' |
| | | ] |
| | | } |
| | |
| | | ShowTitle: false |
| | | Taborder: 0 |
| | | Title: 'Periods' |
| | | Tooltip: '<html>Select if the periods are used for planning or merely for visualization.<br>The planning periods define the granularity at which planning is done.<br>In case of overlapping planning periods, the smallest ones are used.<br>The planning periods are shown in the period overview in blue.</html>' |
| | | ] |
| | | } |
| | | ] |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component MatrixEditorTable id:MatrixEditorTable_870 |
| | | { |
| | | #keys: '[415136.0.893820897]' |
| | | BaseType: 'WebMatrixEditor' |
| | | Children: |
| | | [ |
| | | Component MatrixEditorCellTable |
| | | { |
| | | #keys: '[415136.0.893820898]' |
| | | BaseType: 'WebMatrixEditorCell' |
| | | Children: |
| | | [ |
| | | Component DataExtractorCell |
| | | { |
| | | #keys: '[415136.0.893820899]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'MachiningPipelineReport' |
| | | Source: 'DataHolderTable' |
| | | Taborder: 0 |
| | | Transformation: 'Column.Cell' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Attributes: 'CCAssemblyPlanQty;CCProductionQty;CCTransferQty;CCInventoryQty;DLAssemblyPlanQty;DLProductionQty;DLTransferQty;DLInventoryQty;TotalInventoryQty' |
| | | Column: 'Column' |
| | | Row: 'Row' |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | | Component MatrixEditorRowsTable |
| | | { |
| | | #keys: '[415136.0.893820900]' |
| | | BaseType: 'WebMatrixEditorHeaderLevel' |
| | | Children: |
| | | [ |
| | | Component DataExtractorRow |
| | | { |
| | | #keys: '[415136.0.893820901]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'MachiningPipelineReport' |
| | | Source: 'DataHolderTable' |
| | | Taborder: 0 |
| | | Transformation: 'Row' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Legend: 'Name' |
| | | SortCriteria: 'RowNr' |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | | Component MatrixEditorColumnsTable |
| | | { |
| | | #keys: '[415136.0.893820902]' |
| | | BaseType: 'WebMatrixEditorHeaderLevel' |
| | | Children: |
| | | [ |
| | | Component DataExtractorColumn |
| | | { |
| | | #keys: '[415136.0.893820903]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'MachiningPipelineReport' |
| | | Source: 'DataHolderTable' |
| | | Taborder: 0 |
| | | Transformation: 'Column' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Legend: 'Name' |
| | | SortCriteria: 'Index' |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | #child: matrixEditorActionBarPageTable_1 |
| | | #child: matrixeditorContextMenuTable_1 |
| | | ] |
| | | Properties: |
| | | [ |
| | | AllowMultipleAttributes: true |
| | | Columns: 'MatrixEditorColumnsTable' |
| | | ContextMenu: 'matrixeditorContextMenuTable' |
| | | Rows: 'MatrixEditorRowsTable' |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelExport |
| | | { |
| | | #keys: '[415136.0.893820864]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | Component ButtonSummaryExport |
| | | { |
| | | #keys: '[415136.0.893820865]' |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
| | | Image: 'IMPORT1' |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Orientation: 'horizontal' |
| | | Taborder: 2 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelHeader id:PanelHeader_832 |
| | | { |
| | | #keys: '[415136.0.893820859]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | #child: PanelSearch_957 |
| | | ] |
| | | Properties: |
| | | [ |
| | | FixedSize: true |
| | | Taborder: 2 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelPeriod |
| | | { |
| | | #keys: '[415136.0.893820861]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | Component DateSelectorStart |
| | | { |
| | | #keys: '[415136.0.893820862]' |
| | | BaseType: 'WebDateSelector' |
| | | Properties: |
| | | [ |
| | | Label: 'Start date' |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | | Component DateSelectorEnd |
| | | { |
| | | #keys: '[415136.0.893820863]' |
| | | BaseType: 'WebDateSelector' |
| | | Properties: |
| | | [ |
| | | Date: 9999-12-31 |
| | | Label: 'End date' |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Orientation: 'horizontal' |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelSearch id:PanelSearch_957 |
| | | { |
| | | #keys: '[415136.0.893820860]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | #child: PanelPeriod |
| | | #child: PanelExport |
| | | #child: PanelTimeUnit_778 |
| | | ] |
| | | Properties: |
| | | [ |
| | | FixedSize: true |
| | | Orientation: 'horizontal' |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelTable id:PanelTable_141 |
| | | { |
| | | #keys: '[415136.0.893820896]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | #child: MatrixEditorTable_870 |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 3 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelTimeUnit id:PanelTimeUnit_778 |
| | | { |
| | | #keys: '[415136.0.893820866]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | Component RadioButtonGroupUseForTimeUnit |
| | | { |
| | | #keys: '[415136.0.893820867]' |
| | | BaseType: 'WebRadioButtonGroup' |
| | | Properties: |
| | | [ |
| | | ButtonLabels: 'Day;Week' |
| | | ButtonValues: 'Day;Week' |
| | | Orientation: 'horizontal' |
| | | ShowTitle: false |
| | | Taborder: 0 |
| | | Title: 'Periods' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Orientation: 'horizontal' |
| | | Taborder: 1 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component matrixEditorActionBarPageTable id:matrixEditorActionBarPageTable_1 |
| | | { |
| | | #keys: '[415136.0.893820904]' |
| | | BaseType: 'matrixEditorActionBarPage' |
| | | Properties: |
| | | [ |
| | | Taborder: 3 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component matrixeditorContextMenuTable id:matrixeditorContextMenuTable_1 |
| | | { |
| | | #keys: '[415136.0.893820905]' |
| | | BaseType: 'matrixeditorContextMenu' |
| | | Properties: |
| | | [ |
| | | Taborder: 4 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Response OnCreated () id:Response_FormMachiningPipelineReport_OnCreated |
| | | { |
| | | #keys: '[415136.0.897182652]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebComponent_OnCreated' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | //if( not isnull( MacroPlan.EnginePipelineSource() ) ){ |
| | | MachiningPipelineSource::Initialize( MacroPlan ); |
| | | //} |
| | | //info( '------------------1----------------' ); |
| | | table := selectobject( MacroPlan, MachiningPipelineSource.Report, table, table.IsShow() ); |
| | | //info( '------------------2----------------', table.IsShow() ); |
| | | DataHolderTable.Data( table ); |
| | | |
| | | dhSearch.Data( table.Source().Search() ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: PanelExport/ButtonSummaryExport |
| | | Response OnClick () id:Response_PanelExport_ButtonSummaryExport_OnClick |
| | | { |
| | | #keys: '[415136.0.893820856]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | Precondition: |
| | | [* |
| | | return not isnull( MacroPlan ); |
| | | *] |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | binaryValue := MachiningPipelineSource::Download( MacroPlan ); |
| | | |
| | | Application.Download( MachiningPipelineReport::GetDefaultName() + '.xlsx', binaryValue.AsBinaryData() ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: PanelPeriod/DateSelectorEnd |
| | | Response OnChanged () id:Response_PanelPeriod_DateSelectorEnd_OnChanged |
| | | { |
| | | #keys: '[415136.0.893820857]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebDateTimeFieldBase_OnChanged' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | //æ¥ææ¹ååå·æ°æ¾ç¤º |
| | | if( this.Date() < DateSelectorStart.Date() ){ |
| | | this.HintError( 'The end date cannot be less than the start date!' ); |
| | | }else{ |
| | | if( dhSearch.Data().EndDate() <> this.Date() ){ |
| | | dhSearch.Data().EndDate( this.Date() ); |
| | | DataHolderTable.Data().Generate( dhSearch.Data(), DataHolderProduct.Data() ); |
| | | } |
| | | } |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: PanelPeriod/DateSelectorStart |
| | | Response OnChanged () id:Response_PanelPeriod_DateSelectorStart_OnChanged |
| | | { |
| | | #keys: '[415136.0.893820858]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebDateTimeFieldBase_OnChanged' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | //æ¥ææ¹ååå·æ°æ¾ç¤º |
| | | if( this.Date() > DateSelectorEnd.Date() ){ |
| | | this.HintError( 'The start date cannot be later than the end date!' ); |
| | | }else{ |
| | | if( dhSearch.Data().StartDate() <> this.Date() ){ |
| | | dhSearch.Data().StartDate( this.Date() ); |
| | | DataHolderTable.Data().Generate( dhSearch.Data(), DataHolderProduct.Data() ); |
| | | } |
| | | } |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: PanelTimeUnit_778/RadioButtonGroupUseForTimeUnit |
| | | Response OnChanged () id:Response_PanelTimeUnit_778_RadioButtonGroupUseForTimeUnit_OnChanged |
| | | { |
| | | #keys: '[415136.0.893820855]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebRadioButtonGroup_OnChanged' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | //åºé´æ¹ååå·æ°æ¾ç¤º |
| | | if( dhSearch.Data().TimeUnit() <> this.BoundValue() ){ |
| | | dhSearch.Data().TimeUnit( this.BoundValue() ); |
| | | DataHolderTable.Data().Generate( dhSearch.Data(), DataHolderProduct.Data() ); |
| | | } |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: PanelTimeUnit_778/RadioButtonGroupUseForTimeUnit |
| | | Response OnCreated () id:Response_PanelTimeUnit_778_RadioButtonGroupUseForTimeUnit_OnCreated |
| | | { |
| | | #keys: '[415136.0.893820854]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebComponent_OnCreated' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | this.ButtonValues( Translations::MP_GlobalParameters_Day() + ';' + Translations::MP_GlobalParameters_Week() + ';' + Translations::MP_GlobalParameters_Month() ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: MacroPlannerWebApp |
| | | OrphanComponent FormMachiningPipelineReport |
| | | { |
| | | #keys: '[415136.0.893820723]' |
| | | BaseType: 'WebForm' |
| | | Children: |
| | | [ |
| | | Component DataHolderTable |
| | | { |
| | | #keys: '[415136.0.893820797]' |
| | | BaseType: 'WebDataHolder' |
| | | Databinding: 'MachiningPipelineReport' |
| | | Properties: |
| | | [ |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | | Component dhSearch |
| | | { |
| | | #keys: '[415136.0.893820823]' |
| | | BaseType: 'WebDataHolder' |
| | | Databinding: 'MachiningPipelineSearch' |
| | | Properties: |
| | | [ |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | | #child: PanelHeader_832 |
| | | #child: PanelTable_141 |
| | | ] |
| | | Properties: |
| | | [ |
| | | Image: 'DOCUMENT_CONNECTION' |
| | | Title: 'Machining pipeline report' |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component MatrixEditor859 |
| | | { |
| | | #keys: '[412672.1.33151379]' |
| | | BaseType: 'WebMatrixEditor' |
| | | Children: |
| | | [ |
| | | Component MatrixEditorCell642 |
| | | { |
| | | #keys: '[412672.1.33151380]' |
| | | BaseType: 'WebMatrixEditorCell' |
| | | Children: |
| | | [ |
| | | Component DataExtractor872 |
| | | { |
| | | #keys: '[412672.1.33151381]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'LocalTable' |
| | | Source: 'dhTable' |
| | | Taborder: 0 |
| | | Transformation: 'LocalRow.LocalCell.astype(LocalCell_Default)' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Attributes: 'RealValue' |
| | | Column: 'LocalColumn' |
| | | Row: 'LocalRow' |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | | Component MatrixEditorRows590 |
| | | { |
| | | #keys: '[412672.1.33151384]' |
| | | BaseType: 'WebMatrixEditorHeaderLevel' |
| | | Children: |
| | | [ |
| | | Component DataExtractor862 |
| | | { |
| | | #keys: '[412672.1.33151385]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'LocalTable' |
| | | Source: 'dhTable' |
| | | Taborder: 0 |
| | | Transformation: 'LocalRow' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Legend: 'Name' |
| | | SortCriteria: 'Index' |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | | Component MatrixEditorColumns481 |
| | | { |
| | | #keys: '[412672.1.33151388]' |
| | | BaseType: 'WebMatrixEditorHeaderLevel' |
| | | Children: |
| | | [ |
| | | Component DataExtractor661 |
| | | { |
| | | #keys: '[412672.1.33151389]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'LocalTable' |
| | | Source: 'dhTable' |
| | | Taborder: 0 |
| | | Transformation: 'LocalColumn' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Legend: 'Name' |
| | | SortCriteria: 'Index' |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | #child: matrixEditorActionBarPage681 |
| | | #child: matrixeditorContextMenu445 |
| | | ] |
| | | Properties: |
| | | [ |
| | | Columns: 'MatrixEditorColumns481' |
| | | ContextMenu: 'matrixeditorContextMenu445' |
| | | Rows: 'MatrixEditorRows590' |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component Panel743 |
| | | { |
| | | #keys: '[412672.1.33151321]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | #child: MatrixEditor859 |
| | | Component dhTable |
| | | { |
| | | #keys: '[412672.1.33151419]' |
| | | BaseType: 'WebDataHolder' |
| | | Databinding: 'LocalTable' |
| | | Properties: |
| | | [ |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 1 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component matrixEditorActionBarPage681 |
| | | { |
| | | #keys: '[412672.1.33151392]' |
| | | BaseType: 'matrixEditorActionBarPage' |
| | | Properties: |
| | | [ |
| | | Taborder: 3 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component matrixeditorContextMenu445 |
| | | { |
| | | #keys: '[412672.1.33151395]' |
| | | BaseType: 'matrixeditorContextMenu' |
| | | Properties: |
| | | [ |
| | | Taborder: 4 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component pMain |
| | | { |
| | | #keys: '[412672.1.33151242]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | #child: Panel743 |
| | | #child: pOperaction |
| | | ] |
| | | Properties: |
| | | [ |
| | | Orientation: 'horizontal' |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component pOperaction |
| | | { |
| | | #keys: '[412672.1.33151285]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | Component cbStandardHours |
| | | { |
| | | #keys: '[412672.1.33151450]' |
| | | BaseType: 'WebCheckbox' |
| | | Properties: |
| | | [ |
| | | CheckboxType: 'toggle' |
| | | Label: 'æ åå·¥æ¶å¶' |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | | Component cbComprehensiveHours |
| | | { |
| | | #keys: '[412672.1.33151469]' |
| | | BaseType: 'WebCheckbox' |
| | | Properties: |
| | | [ |
| | | CheckboxType: 'toggle' |
| | | Label: '综åå·¥æ¶å¶' |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | | Component dsStartDate |
| | | { |
| | | #keys: '[412672.1.33151495]' |
| | | BaseType: 'WebDateSelector' |
| | | Properties: |
| | | [ |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | Component dsEndDate |
| | | { |
| | | #keys: '[412672.1.33151514]' |
| | | BaseType: 'WebDateSelector' |
| | | Properties: |
| | | [ |
| | | Date: 9999-12-31 |
| | | Taborder: 3 |
| | | ] |
| | | } |
| | | Component bCalculating |
| | | { |
| | | #keys: '[412672.1.33180446]' |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
| | | Label: 'Calculating' |
| | | Taborder: 4 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | FixedSize: true |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: pOperaction/bCalculating |
| | | Response OnClick () id:Response_pOperaction_bCalculating_OnClick |
| | | { |
| | | #keys: '[412672.1.33160729]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | shiftPlans := selectset( MacroPlan,Unit.UnitPeriod.astype( UnitPeriodTime ).ShiftPlan,shiftPlan,LocalTool::IsOverlap( dsStartDate.Date(),dsEndDate.Date(),shiftPlan.UnitPeriodTime().Period_MP().StartDate(),shiftPlan.UnitPeriodTime().Period_MP().EndDate())); |
| | | |
| | | if( cbStandardHours.Checked() ){ |
| | | dhTable.Data( LocalCell_Default::GenerateStandardHoursReport( MacroPlan ,shiftPlans ,RecycleBin )); |
| | | } |
| | | if( cbComprehensiveHours.Checked()){ |
| | | dhTable.Data( LocalCell_Default::GenerateComprehensiveHoursReport( MacroPlan ,shiftPlans ,RecycleBin )); |
| | | } |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: pOperaction/cbComprehensiveHours |
| | | Response OnUserChanged () id:Response_pOperaction_cbComprehensiveHours_OnUserChanged |
| | | { |
| | | #keys: '[412672.1.33151755]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebCheckbox_OnUserChanged' |
| | | GroupServerCalls: true |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | cbStandardHours.Checked( not this.Checked() ); |
| | | if( this.Checked() ){ |
| | | FormComprehensiveStandardHoursReport.Title( "综åå·¥æ¶å¶æ¥è¡¨" ); |
| | | }else{ |
| | | FormComprehensiveStandardHoursReport.Title( "æ åå·¥æ¶å¶æ¥è¡¨" ); |
| | | } |
| | | *] |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: pOperaction/cbStandardHours |
| | | Response OnUserChanged () id:Response_pOperaction_cbStandardHours_OnUserChanged |
| | | { |
| | | #keys: '[412672.1.33151672]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebCheckbox_OnUserChanged' |
| | | GroupServerCalls: true |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | cbComprehensiveHours.Checked( not this.Checked() ); |
| | | |
| | | if( this.Checked() ){ |
| | | FormComprehensiveStandardHoursReport.Title( "æ åå·¥æ¶å¶æ¥è¡¨" ); |
| | | }else{ |
| | | FormComprehensiveStandardHoursReport.Title( "综åå·¥æ¶å¶æ¥è¡¨" ); |
| | | } |
| | | *] |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: MacroPlannerWebApp |
| | | OrphanComponent FormComprehensiveStandardHoursReport |
| | | { |
| | | #keys: '[412672.1.33151116]' |
| | | BaseType: 'WebForm' |
| | | Children: |
| | | [ |
| | | #child: pMain |
| | | ] |
| | | Properties: |
| | | [ |
| | | Image: 'DOCUMENT_CHART' |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | { |
| | | viewcontents |
| | | { |
| | | page: '' |
| | | group: '' |
| | | index: 0 |
| | | image: 'DOCUMENT_CHART' |
| | | description: '' |
| | | } |
| | | formatversion: 2 |
| | | id: 'ComprehensiveStandardHoursReport' |
| | | name: 'ComprehensiveStandardHoursReport' |
| | | isglobal: false |
| | | isroot: true |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | { |
| | | viewcontents |
| | | { |
| | | forms |
| | | { |
| | | form_FormEnginePipelineReport |
| | | { |
| | | title: 'QMacroPlanner::FormEnginePipelineReport' |
| | | shown: true |
| | | componentID: 'QMacroPlanner::FormEnginePipelineReport' |
| | | layout |
| | | { |
| | | mode: 'open' |
| | | rowPosition: 1 |
| | | rowSpan: 15 |
| | | columnPosition: 1 |
| | | columnSpan: 12 |
| | | } |
| | | components |
| | | { |
| | | FormEnginePipelineReport_PanelHeader |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormEnginePipelineReport_PanelSearch |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormEnginePipelineReport_PanelPeriod |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormEnginePipelineReport_PanelTimeUnit |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormEnginePipelineReport_PanelExport |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormEnginePipelineReport_PanelTable |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormEnginePipelineReport_MatrixEditorTable |
| | | { |
| | | gridColor: '#c4c4c4' |
| | | totalHeaderWidth: 200 |
| | | attributeHeaderWidthRatio: 0.6 |
| | | nameHeaderWidthRatio: 0.4 |
| | | columnWidth: 100 |
| | | horizontalGrid: true |
| | | verticalGrid: true |
| | | backendState |
| | | { |
| | | componentId: 'QMacroPlanner::FormEnginePipelineReport.MatrixEditorTable' |
| | | state |
| | | { |
| | | cells |
| | | { |
| | | attributes |
| | | { |
| | | attribute_Value |
| | | { |
| | | type: 'MatrixEditorWebApiCellDataModelInterest' |
| | | index: 0 |
| | | rowsubtotal: '' |
| | | columnsubtotal: '' |
| | | attribute: 'Value' |
| | | } |
| | | } |
| | | } |
| | | columns |
| | | { |
| | | sorting |
| | | { |
| | | criteria: "datamember:'Index'" |
| | | } |
| | | } |
| | | rows |
| | | { |
| | | sorting |
| | | { |
| | | criteria: "datamember:'RowNr'" |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormMachiningPipelineReport |
| | | { |
| | | title: 'QMacroPlanner::FormMachiningPipelineReport' |
| | | shown: true |
| | | componentID: 'QMacroPlanner::FormMachiningPipelineReport' |
| | | layout |
| | | { |
| | | mode: 'open' |
| | | rowPosition: 16 |
| | | rowSpan: 19 |
| | | columnPosition: 1 |
| | | columnSpan: 12 |
| | | } |
| | | components |
| | | { |
| | | FormMachiningPipelineReport_PanelHeader |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormMachiningPipelineReport_PanelSearch |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormMachiningPipelineReport_PanelPeriod |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormMachiningPipelineReport_PanelTimeUnit |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormMachiningPipelineReport_PanelExport |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormMachiningPipelineReport_PanelTable |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormMachiningPipelineReport_MatrixEditorTable |
| | | { |
| | | gridColor: '#c4c4c4' |
| | | totalHeaderWidth: 200 |
| | | attributeHeaderWidthRatio: 0.6 |
| | | nameHeaderWidthRatio: 0.4 |
| | | columnWidth: 100 |
| | | horizontalGrid: true |
| | | verticalGrid: true |
| | | backendState |
| | | { |
| | | componentId: 'QMacroPlanner::FormMachiningPipelineReport.MatrixEditorTable' |
| | | state |
| | | { |
| | | cells |
| | | { |
| | | attributes |
| | | { |
| | | attribute_CCAssemblyPlanQty |
| | | { |
| | | type: 'MatrixEditorWebApiCellDataModelInterest' |
| | | index: 0 |
| | | rowsubtotal: '' |
| | | columnsubtotal: '' |
| | | attribute: 'CCAssemblyPlanQty' |
| | | } |
| | | attribute_CCProductionQty |
| | | { |
| | | type: 'MatrixEditorWebApiCellDataModelInterest' |
| | | index: 1 |
| | | rowsubtotal: '' |
| | | columnsubtotal: '' |
| | | attribute: 'CCProductionQty' |
| | | } |
| | | attribute_CCTransferQty |
| | | { |
| | | type: 'MatrixEditorWebApiCellDataModelInterest' |
| | | index: 2 |
| | | rowsubtotal: '' |
| | | columnsubtotal: '' |
| | | attribute: 'CCTransferQty' |
| | | } |
| | | attribute_CCInventoryQty |
| | | { |
| | | type: 'MatrixEditorWebApiCellDataModelInterest' |
| | | index: 3 |
| | | rowsubtotal: '' |
| | | columnsubtotal: '' |
| | | attribute: 'CCInventoryQty' |
| | | } |
| | | attribute_DLAssemblyPlanQty |
| | | { |
| | | type: 'MatrixEditorWebApiCellDataModelInterest' |
| | | index: 4 |
| | | rowsubtotal: '' |
| | | columnsubtotal: '' |
| | | attribute: 'DLAssemblyPlanQty' |
| | | } |
| | | attribute_DLProductionQty |
| | | { |
| | | type: 'MatrixEditorWebApiCellDataModelInterest' |
| | | index: 5 |
| | | rowsubtotal: '' |
| | | columnsubtotal: '' |
| | | attribute: 'DLProductionQty' |
| | | } |
| | | attribute_DLTransferQty |
| | | { |
| | | type: 'MatrixEditorWebApiCellDataModelInterest' |
| | | index: 6 |
| | | rowsubtotal: '' |
| | | columnsubtotal: '' |
| | | attribute: 'DLTransferQty' |
| | | } |
| | | attribute_DLInventoryQty |
| | | { |
| | | type: 'MatrixEditorWebApiCellDataModelInterest' |
| | | index: 7 |
| | | rowsubtotal: '' |
| | | columnsubtotal: '' |
| | | attribute: 'DLInventoryQty' |
| | | } |
| | | attribute_TotalInventoryQty |
| | | { |
| | | type: 'MatrixEditorWebApiCellDataModelInterest' |
| | | index: 8 |
| | | rowsubtotal: '' |
| | | columnsubtotal: '' |
| | | attribute: 'TotalInventoryQty' |
| | | } |
| | | } |
| | | } |
| | | columns |
| | | { |
| | | sorting |
| | | { |
| | | criteria: "datamember:'Index'" |
| | | } |
| | | } |
| | | rows |
| | | { |
| | | sorting |
| | | { |
| | | criteria: "datamember:'RowNr'" |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormOptimizerPuzzles |
| | | { |
| | | title: 'Optimizer Puzzles' |
| | | shown: false |
| | | componentID: 'FormOptimizerPuzzles' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 0 |
| | | } |
| | | components |
| | | { |
| | | FormOptimizerPuzzles_ListOptimizerPuzzles |
| | | { |
| | | } |
| | | FormOptimizerPuzzles_DataSetLevelOptimizerPuzzles |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'Name' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 109 |
| | | } |
| | | column_Description |
| | | { |
| | | columnId: 'Description' |
| | | dataPath: 'Description' |
| | | dataType: 'string' |
| | | title: 'Description' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 207 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormKPI |
| | | { |
| | | title: 'KPI Dashboard' |
| | | shown: true |
| | | componentID: 'FormKPI' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 1 |
| | | } |
| | | components |
| | | { |
| | | FormKPI_PanelKPI |
| | | { |
| | | sizeRatio: 1 |
| | | activeChild: 'PanelKPISelection' |
| | | } |
| | | FormKPI_PanelKPIDashboard |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_PanelKPISelection |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_ListKPISelection |
| | | { |
| | | QuillViewData |
| | | { |
| | | Food_KPISetting: 'Cost of sales;Fulfillment;Fulfillment target;Inventory holding cost;Labor cost;Margin;Safety stock;Sales;Sourcing cost;Total CO2 emission;Transportation cost;Volume' |
| | | } |
| | | } |
| | | FormKPI_DataSetLevelKPISelection |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'Name' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 200 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | userconfigurableinformation |
| | | { |
| | | } |
| | | page: '' |
| | | group: '' |
| | | index: 20 |
| | | image: 'DOCUMENT_CONNECTION' |
| | | description: '' |
| | | } |
| | | formatversion: 2 |
| | | id: 'Engine_pipleline_report' |
| | | name: 'Engine pipleline report' |
| | | isglobal: false |
| | | isroot: true |
| | | } |
| | |
| | | { |
| | | viewcontents |
| | | { |
| | | image: 'MONEY_BILL_FIRE' |
| | | page: '' |
| | | group: '' |
| | | index: 0 |
| | | image: 'MONEY_BILL_FIRE' |
| | | description: '' |
| | | } |
| | | formatversion: 2 |
| | |
| | | { |
| | | viewcontents |
| | | { |
| | | image: 'COMPASSES' |
| | | page: '' |
| | | group: '' |
| | | index: 0 |
| | | image: 'COMPASSES' |
| | | description: '' |
| | | } |
| | | formatversion: 2 |