| | |
| | | #parent: #root |
| | | InfoMessages id:#InfoMessages #extension |
| | | { |
| | | InfoMessage A_VWED_GeneralExcelImportAndExportDataSource_UploadError1 |
| | | { |
| | | DefaultText: 'Please upload a file in the format xlsx or xls' |
| | | } |
| | | InfoMessage A_VWED_GeneralExcelImportAndExportDataSource_UploadError2 |
| | | { |
| | | DefaultText: 'File name mismatch' |
| | | } |
| | | InfoMessage A_VWED_PR_PP_Budget_VerificationRules1 ( |
| | | const String fieldName |
| | | ) |
| | |
| | | { |
| | | DefaultText: 'The vehicle model, engine part number, and existing data do not match' |
| | | } |
| | | InfoMessage A_VWED_SixDigitCode_Code |
| | | { |
| | | DefaultText: 'Code' |
| | | } |
| | | InfoMessage A_VWED_SixDigitCode_Curve |
| | | { |
| | | DefaultText: 'Curve' |
| | | } |
| | | InfoMessage A_VWED_SixDigitCode_VerificationRules1 ( |
| | | constcontent String fieldName |
| | | ) |
| | | { |
| | | DefaultText: 'Missing mandatory fieldï¼@fieldName@' |
| | | } |
| | | InfoMessage A_VWED_SixDigitCode_VerificationRules2 |
| | | { |
| | | DefaultText: 'There are duplicate six digit codes present' |
| | | } |
| | | InfoMessage A_VWED_SixDigitCode_VerificationRules3 |
| | | { |
| | | DefaultText: 'Inconsistent model and system Sales Segments' |
| | | } |
| | | InfoMessage A_VWED_SixDigitCode_VerificationRules4 |
| | | { |
| | | DefaultText: 'The engine part number is inconsistent with the system Products' |
| | | } |
| | | InfoMessage A_VWED_Success |
| | | { |
| | | DefaultText: 'Success' |
| | | } |
| | | InfoMessage A_VWED_ThreeDigitCode_VerificationRules2 |
| | | { |
| | | DefaultText: 'There are duplicate three digit codes present' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation GeneralExcelImportAndExportDataColumn_GeneralExcelImportAndExportDataCell_GeneralExcelImportAndExportDataCell_GeneralExcelImportAndExportDataColumn |
| | | { |
| | | #keys: '1[413988.0.1161870213]' |
| | | ProceduralSequenceRelationStrategy |
| | | { |
| | | #keys: '13[0.0.0][413988.0.1161870232][413988.0.1161870226][413988.0.1161870233][413988.0.1161870227][413988.0.1161870234][413988.0.1161870228][413988.0.1161870235][413988.0.1161870229][413988.0.1161870236][413988.0.1161870230][413988.0.1161870237][413988.0.1161870231]' |
| | | SequenceElementSuffix: 'CellInColumn' |
| | | SequenceSuffix: 'CellInColumn' |
| | | } |
| | | RelationSide.LeftSide GeneralExcelImportAndExportDataCell |
| | | { |
| | | #keys: '3[413988.0.1161870215][413988.0.1161870214][413988.0.1161870216]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: GeneralExcelImportAndExportDataColumn |
| | | OwningSide: 'Owned' |
| | | } |
| | | RelationSide.RightSide GeneralExcelImportAndExportDataColumn |
| | | { |
| | | #keys: '3[413988.0.1161870218][413988.0.1161870217][413988.0.1161870219]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: GeneralExcelImportAndExportDataCell |
| | | OwningSide: 'Reference' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation GeneralExcelImportAndExportDataRow_GeneralExcelImportAndExportDataCell_GeneralExcelImportAndExportDataCell_GeneralExcelImportAndExportDataRow |
| | | { |
| | | #keys: '1[413988.0.1161870263]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide GeneralExcelImportAndExportDataCell |
| | | { |
| | | #keys: '3[413988.0.1161870265][413988.0.1161870264][413988.0.1161870266]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: GeneralExcelImportAndExportDataRow |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide GeneralExcelImportAndExportDataRow |
| | | { |
| | | #keys: '3[413988.0.1161870268][413988.0.1161870267][413988.0.1161870269]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: GeneralExcelImportAndExportDataCell |
| | | OwningSide: 'Reference' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation GeneralExcelImportAndExportDataSource_Archive_Archive_GeneralExcelImportAndExportDataSource |
| | | { |
| | | #keys: '1[413988.0.1161870117]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide Archive |
| | | { |
| | | #keys: '3[413988.0.1161870119][413988.0.1161870118][413988.0.1161870120]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: GeneralExcelImportAndExportDataSource |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide GeneralExcelImportAndExportDataSource |
| | | { |
| | | #keys: '3[413988.0.1161870122][413988.0.1161870121][413988.0.1161870123]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: Archive |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation GeneralExcelImportAndExportDataTable_GeneralExcelImportAndExportDataSource_GeneralExcelImportAndExportDataSource_GeneralExcelImportAndExportDataTable |
| | | { |
| | | #keys: '1[413988.0.1161910094]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide GeneralExcelImportAndExportDataSource |
| | | { |
| | | #keys: '3[413988.0.1161910096][413988.0.1161910095][413988.0.1161910097]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: GeneralExcelImportAndExportDataTable |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide GeneralExcelImportAndExportDataTable |
| | | { |
| | | #keys: '3[413988.0.1161910099][413988.0.1161910098][413988.0.1161910100]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: GeneralExcelImportAndExportDataSource |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation GeneralExcelImportAndExportDataTable_GeneralExcelImportAndExportDataRow_GeneralExcelImportAndExportDataRow_GeneralExcelImportAndExportDataTable |
| | | { |
| | | #keys: '1[413988.0.1161910076]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide GeneralExcelImportAndExportDataRow |
| | | { |
| | | #keys: '3[413988.0.1161910078][413988.0.1161910077][413988.0.1161910079]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: GeneralExcelImportAndExportDataTable |
| | | OwningSide: 'Owned' |
| | | } |
| | | RelationSide.RightSide GeneralExcelImportAndExportDataTable |
| | | { |
| | | #keys: '3[413988.0.1161910081][413988.0.1161910080][413988.0.1161910082]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: GeneralExcelImportAndExportDataRow |
| | | OwningSide: 'Reference' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation GeneralExcelImportAndExportDataTable_GeneralExcelImportAndExportDataColumn_GeneralExcelImportAndExportDataColumn_GeneralExcelImportAndExportDataTable |
| | | { |
| | | #keys: '1[413988.0.1161910041]' |
| | | ProceduralSequenceRelationStrategy |
| | | { |
| | | #keys: '13[0.0.0][413988.0.1161910060][413988.0.1161910054][413988.0.1161910061][413988.0.1161910055][413988.0.1161910062][413988.0.1161910056][413988.0.1161910063][413988.0.1161910057][413988.0.1161910064][413988.0.1161910058][413988.0.1161910065][413988.0.1161910059]' |
| | | SequenceElementSuffix: 'Column' |
| | | SequenceSuffix: 'Column' |
| | | } |
| | | RelationSide.LeftSide GeneralExcelImportAndExportDataColumn |
| | | { |
| | | #keys: '3[413988.0.1161910043][413988.0.1161910042][413988.0.1161910044]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: GeneralExcelImportAndExportDataTable |
| | | OwningSide: 'Owned' |
| | | } |
| | | RelationSide.RightSide GeneralExcelImportAndExportDataTable |
| | | { |
| | | #keys: '3[413988.0.1161910046][413988.0.1161910045][413988.0.1161910047]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: GeneralExcelImportAndExportDataColumn |
| | | OwningSide: 'Reference' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod VerifyTheFileName ( |
| | | JSON uploadJson |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | fileNames := uploadJson.Get( "name" ).GetString().Tokenize( "." ); |
| | | |
| | | fileNameSuffix := fileNames.Element( fileNames.Size() - 1 ); |
| | | |
| | | if ( fileNameSuffix <> "xlsx" and fileNameSuffix <> "xls" ) { |
| | | error( Translations::A_VWED_GeneralExcelImportAndExportDataSource_UploadError1() ); |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Value |
| | | { |
| | | #keys: '3[413988.0.1161870283][413988.0.1161870282][413988.0.1161870284]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type GeneralExcelImportAndExportDataCell |
| | | { |
| | | #keys: '5[413988.0.1161910028][413988.0.1161910026][0.0.0][413988.0.1161910027][413988.0.1161910029]' |
| | | BaseType: Object |
| | | StructuredName: 'GeneralExcelImportAndExportDataCells' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute ColumnIndex |
| | | { |
| | | #keys: '3[413988.0.1161870194][413988.0.1161870193][413988.0.1161870195]' |
| | | ValueType: Number |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Name |
| | | { |
| | | #keys: '3[413988.0.1161870204][413988.0.1161870203][413988.0.1161870205]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Function CalcColumnIndex |
| | | { |
| | | TextBody: |
| | | [* |
| | | // lihongji May-16-2024 (created) |
| | | |
| | | value := ifexpr( isnull( this.PreviousColumn() ), 0, this.PreviousColumn().ColumnIndex() + 1 ); |
| | | |
| | | this.ColumnIndex( value ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type GeneralExcelImportAndExportDataColumn |
| | | { |
| | | #keys: '5[413988.0.1161910023][413988.0.1161910021][0.0.0][413988.0.1161910022][413988.0.1161910024]' |
| | | BaseType: Object |
| | | StructuredName: 'GeneralExcelImportAndExportDataColumns' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute RowNr |
| | | { |
| | | #keys: '3[413988.0.1161870163][413988.0.1161870162][413988.0.1161870164]' |
| | | ValueType: Number |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type GeneralExcelImportAndExportDataRow |
| | | { |
| | | #keys: '5[413988.0.1161910018][413988.0.1161910016][0.0.0][413988.0.1161910017][413988.0.1161910019]' |
| | | BaseType: Object |
| | | StructuredName: 'GeneralExcelImportAndExportDataRows' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute FileBinaryValue |
| | | { |
| | | #keys: '3[413988.0.1161870068][413988.0.1161870067][413988.0.1161870069]' |
| | | ValueType: BinaryValue |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute IsXLSX |
| | | { |
| | | #keys: '3[413988.0.1161870078][413988.0.1161870077][413988.0.1161870079]' |
| | | ValueType: Boolean |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Name |
| | | { |
| | | #keys: '3[413988.0.1161870088][413988.0.1161870087][413988.0.1161870089]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute UploadDateTime |
| | | { |
| | | #keys: '3[413988.0.1161870098][413988.0.1161870097][413988.0.1161870099]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute UploadUser |
| | | { |
| | | #keys: '3[413988.0.1161870108][413988.0.1161870107][413988.0.1161870109]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method ReadStructure |
| | | { |
| | | TextBody: |
| | | [* |
| | | tableGroupHandle := TableGroupHandle::Create( this.Name() ); |
| | | tableGroupHandle := XLS::LoadTableGroupFromBinaryData( this.FileBinaryValue().AsBinaryData(), tableGroupHandle, true, this.IsXLSX() ); |
| | | sheets := tableGroupHandle.TableNames(); |
| | | |
| | | traverse ( sheets, Elements, sheetName ) { |
| | | tableHandle := tableGroupHandle.Table( sheetName ); |
| | | tableXML := TableHandle::ExportXML( tableHandle ); |
| | | |
| | | // info( tableXML.AsQUILL() ); |
| | | |
| | | GeneralExcelImportAndExportDataTable::XMLImportGeneralExcelImportAndExportDataTableXMLHeaders( tableXML ); |
| | | xlstable := GeneralExcelImportAndExportDataTable::XMLImportGeneralExcelImportAndExportDataTableXML( tableXML ); |
| | | |
| | | xlstable.SyncRows(); |
| | | |
| | | xlstable.Name( sheetName ); |
| | | this.GeneralExcelImportAndExportDataTable( relinsert, &xlstable ); |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod Upload ( |
| | | Archive archive, |
| | | BinaryValue binaryValue, |
| | | String filePath |
| | | ) as GeneralExcelImportAndExportDataSource |
| | | { |
| | | TextBody: |
| | | [* |
| | | fileName := filePath.Tokenize( "\" ).Element( filePath.Tokenize( "\" ).Size() - 1 ); |
| | | |
| | | generalExcelImportAndExportDataSource := archive.GeneralExcelImportAndExportDataSource( relnew, |
| | | FileBinaryValue := binaryValue, |
| | | Name := fileName, |
| | | IsXLSX := fileName.EndsWith( "xlsx" ), |
| | | UploadDateTime := DateTime::ActualTime().Format( "Y-M2-D2 H:m:s" ), |
| | | UploadUser := guard( QuintiqUser::CurrentUser().Username(), "" ) ); |
| | | |
| | | return generalExcelImportAndExportDataSource; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type GeneralExcelImportAndExportDataSource |
| | | { |
| | | #keys: '5[413988.0.1161870062][413988.0.1161870060][0.0.0][413988.0.1161870061][413988.0.1161870063]' |
| | | BaseType: Object |
| | | StructuredName: 'GeneralExcelImportAndExportDataSources' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Name |
| | | { |
| | | #keys: '3[413988.0.1161910032][413988.0.1161910031][413988.0.1161910033]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method SyncRows |
| | | { |
| | | TextBody: |
| | | [* |
| | | totalRows := 0; |
| | | totalColumns := this.GeneralExcelImportAndExportDataColumn( relsize ); |
| | | |
| | | if ( totalColumns > 0 ) { |
| | | randomCol := select( this, GeneralExcelImportAndExportDataColumn, tempGEIAEDC, true ); |
| | | totalRows := randomCol.GeneralExcelImportAndExportDataCell( relsize ); |
| | | |
| | | this.GeneralExcelImportAndExportDataRow( relflush ); |
| | | |
| | | cells := construct( GeneralExcelImportAndExportDataCells ); |
| | | traverse ( this, GeneralExcelImportAndExportDataColumn, geiaedc ) { |
| | | cells.Add( geiaedc.FirstCellInColumn() ); |
| | | } |
| | | |
| | | for ( i := 0; i < totalRows; i++ ) { |
| | | assert( selectvalues( cells, Elements, c, true, c.GeneralExcelImportAndExportDataColumn().ColumnIndex() ).ToString( "" ) = |
| | | selectvalues( selectsortedset( cells, Elements, c, true, c.GeneralExcelImportAndExportDataColumn().ColumnIndex() ), Elements, c, true, c.GeneralExcelImportAndExportDataColumn().ColumnIndex() ).ToString( "" ), |
| | | "Assertion error in FrockDataTable::syncRows: Cells not sorted by column index" ); |
| | | row := this.GeneralExcelImportAndExportDataRow( relnew, RowNr := i ); |
| | | |
| | | newCells := construct( GeneralExcelImportAndExportDataCells ); |
| | | |
| | | traverse ( cells, Elements, c ) { |
| | | row.GeneralExcelImportAndExportDataCell( relinsert, c ); |
| | | |
| | | newCells.Add( c.NextCellInColumn() ); |
| | | } |
| | | |
| | | cells := &newCells; |
| | | } |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | XMLElementId |
| | | { |
| | | XMLAddressType { } |
| | | XMLID Key { } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | XMLElementId |
| | | { |
| | | XMLID QuintiqType { } |
| | | XMLQualifierType { } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | XMLObjectBase.ObjectDefinitions |
| | | { |
| | | IdField: Key |
| | | ObjectTypeField: QuintiqType |
| | | TargetType: GeneralExcelImportAndExportDataCell |
| | | XMLID cell { } |
| | | Attributes: |
| | | [ |
| | | XMLAttribute |
| | | { |
| | | Attribute: Value |
| | | XMLID value { } |
| | | } |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | XMLObjectBase.ObjectDefinitions |
| | | { |
| | | IdField: Key |
| | | ObjectTypeField: QuintiqType |
| | | TargetType: GeneralExcelImportAndExportDataColumn |
| | | XMLID column { } |
| | | Aggregates: |
| | | [ |
| | | XMLAggregate |
| | | { |
| | | ElementDefinition: cell |
| | | GenerateOutput: false |
| | | Relation: GeneralExcelImportAndExportDataCell |
| | | XMLID GeneralExcelImportAndExportDataCell { } |
| | | } |
| | | ] |
| | | Attributes: |
| | | [ |
| | | XMLAttribute |
| | | { |
| | | Attribute: Name |
| | | XMLID name { } |
| | | } |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | XMLObjectBase.ObjectDefinitions |
| | | { |
| | | IdField: Key |
| | | ObjectTypeField: QuintiqType |
| | | TargetType: GeneralExcelImportAndExportDataTable |
| | | XMLID table { } |
| | | Aggregates: |
| | | [ |
| | | XMLAggregate |
| | | { |
| | | ElementDefinition: column |
| | | GenerateOutput: false |
| | | Relation: GeneralExcelImportAndExportDataColumn |
| | | XMLID GeneralExcelImportAndExportDataColumn { } |
| | | } |
| | | ] |
| | | Attributes: |
| | | [ |
| | | XMLAttribute |
| | | { |
| | | Attribute: Name |
| | | XMLID name { } |
| | | } |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #root |
| | | XML GeneralExcelImportAndExportDataTableXML |
| | | { |
| | | Direction: 'ImportExport' |
| | | Root: table |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | XMLElementId |
| | | { |
| | | XMLAddressType { } |
| | | XMLID Key { } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | XMLElementId |
| | | { |
| | | XMLID QuintiqType { } |
| | | XMLQualifierType { } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | XMLObjectBase.ObjectDefinitions |
| | | { |
| | | IdField: Key |
| | | ObjectTypeField: QuintiqType |
| | | TargetType: GeneralExcelImportAndExportDataColumn |
| | | XMLID column { } |
| | | Attributes: |
| | | [ |
| | | XMLAttribute |
| | | { |
| | | Attribute: Name |
| | | XMLID name { } |
| | | } |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | XMLObjectBase.ObjectDefinitions |
| | | { |
| | | IdField: Key |
| | | ObjectTypeField: QuintiqType |
| | | TargetType: GeneralExcelImportAndExportDataTable |
| | | XMLID table { } |
| | | Aggregates: |
| | | [ |
| | | XMLAggregate |
| | | { |
| | | ElementDefinition: column |
| | | GenerateOutput: false |
| | | Relation: GeneralExcelImportAndExportDataColumn |
| | | XMLID GeneralExcelImportAndExportDataColumn { } |
| | | } |
| | | ] |
| | | Attributes: |
| | | [ |
| | | XMLAttribute |
| | | { |
| | | Attribute: Name |
| | | XMLID name { } |
| | | } |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #root |
| | | XML GeneralExcelImportAndExportDataTableXMLHeaders |
| | | { |
| | | Direction: 'ImportExport' |
| | | Root: table |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type GeneralExcelImportAndExportDataTable |
| | | { |
| | | #keys: '5[413988.0.1161910013][413988.0.1161910011][0.0.0][413988.0.1161910012][413988.0.1161910014]' |
| | | BaseType: Object |
| | | StructuredName: 'GeneralExcelImportAndExportDataTables' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod Upload ( |
| | | MacroPlan macroPlan, |
| | | GeneralExcelImportAndExportDataTable table |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // æ¸
空åå§æ°æ® |
| | | macroPlan.PR_PP_Budget( relflush ); |
| | | |
| | | // æ ¡éªæä»¶å |
| | | if ( table.GeneralExcelImportAndExportDataSource().Name() <> "å卿ºå¹é
-PR&PP&Budget.xlsx" ) { |
| | | error( Translations::A_VWED_GeneralExcelImportAndExportDataSource_UploadError2() ); |
| | | } |
| | | |
| | | // çææ°æ® |
| | | rowSize := table.GeneralExcelImportAndExportDataRow( relsize ); |
| | | |
| | | for ( rowIndex := 0; rowIndex < rowSize; rowIndex++ ) { |
| | | row := select( table, GeneralExcelImportAndExportDataRow, tempGEIAEDR, tempGEIAEDR.RowNr() = rowIndex ); |
| | | |
| | | modelCell := select( row, GeneralExcelImportAndExportDataCell, tempGEIAEDC, tempGEIAEDC.GeneralExcelImportAndExportDataColumn().ColumnIndex() = 0 ); |
| | | modelCodeCell := select( row, GeneralExcelImportAndExportDataCell, tempGEIAEDC, tempGEIAEDC.GeneralExcelImportAndExportDataColumn().ColumnIndex() = 1 ); |
| | | engineCell := select( row, GeneralExcelImportAndExportDataCell, tempGEIAEDC, tempGEIAEDC.GeneralExcelImportAndExportDataColumn().ColumnIndex() = 2 ); |
| | | //producingAreaCell := select( row, GeneralExcelImportAndExportDataCell, tempGEIAEDC, tempGEIAEDC.GeneralExcelImportAndExportDataColumn().ColumnIndex() = 3 ); |
| | | vehicleModelCell := select( row, GeneralExcelImportAndExportDataCell, tempGEIAEDC, tempGEIAEDC.GeneralExcelImportAndExportDataColumn().ColumnIndex() = 4 ); |
| | | enginePartNumberCell := select( row, GeneralExcelImportAndExportDataCell, tempGEIAEDC, tempGEIAEDC.GeneralExcelImportAndExportDataColumn().ColumnIndex() = 5 ); |
| | | //engineFourDigitCodeCell := select( row, GeneralExcelImportAndExportDataCell, tempGEIAEDC, tempGEIAEDC.GeneralExcelImportAndExportDataColumn().ColumnIndex() = 6 ); |
| | | |
| | | macroPlan.PR_PP_Budget( relnew, |
| | | Model := guard( modelCell.Value(), "" ), |
| | | ModelCode := guard( modelCodeCell.Value(), "" ), |
| | | Engine := guard( engineCell.Value(), "" ), |
| | | ProducingArea := guard( select( macroPlan, SalesSegment_MP, tempSSMP, tempSSMP.Name() = guard( vehicleModelCell.Value(), "" ) ).Parent().Parent().Name(), "" ), |
| | | VehicleModel := guard( vehicleModelCell.Value(), "" ), |
| | | EnginePartNumber := guard( enginePartNumberCell.Value(), "" ), |
| | | EngineFourDigitCode := guard( select( macroPlan, Product_MP, tempPMP, tempPMP.ID() = guard( enginePartNumberCell.Value(), "" ) ).Notes(), "" ) ); |
| | | } |
| | | |
| | | // æ ¡éªæ°æ® |
| | | feedback := ""; |
| | | sanitycheckfeedback := ""; |
| | | flag := true; |
| | | |
| | | traverse ( macroPlan, PR_PP_Budget, prppb, flag ) { |
| | | PR_PP_Budget::ValidateInput( feedback, sanitycheckfeedback, macroPlan, prppb.Model(), prppb.ModelCode(), prppb.Engine(), prppb.ProducingArea(), prppb.VehicleModel(), prppb.EnginePartNumber(), |
| | | prppb.EngineFourDigitCode(), prppb ); |
| | | flag := feedback = ""; |
| | | } |
| | | |
| | | if ( not flag ) { |
| | | error( feedback ); |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod Download ( |
| | | MacroPlan macroPlan |
| | | ) as BinaryValue |
| | | { |
| | | TextBody: |
| | | [* |
| | | xmlDOMI := XMLDOMImplementation::Create(); |
| | | xmlDOM := xmlDOMI.CreateDocumentFromString( '<?xml version="1.0" encoding="UTF-16"?><table><name>Sheet1</name><column><name>å
ä½ç </name><type>String</type></column><column><name>Curve</name><type>String</type></column><column><name>车å</name><type>String</type></column><column><name>产å°</name><type>String</type></column><column><name>å卿º</name><type>String</type></column><column><name>åç</name><type>String</type></column><column><name>å卿ºé¶ä»¶å·</name><type>String</type></column><column><name>å卿ºåä½ç </name><type>String</type></column><column><name>夿³¨</name><type>String</type></column></table>' ); |
| | | |
| | | tableElement := xmlDOM.GetElementByTagName( "table", 0 ); |
| | | |
| | | codeColumn := tableElement.GetElementByTagName( "column", 0 ); // Code |
| | | curveColumn := tableElement.GetElementByTagName( "column", 1 ); // Curve |
| | | vehicleModelColumn := tableElement.GetElementByTagName( "column", 2 ); // 车å |
| | | productingAreaColumn := tableElement.GetElementByTagName( "column", 3 ); // äº§å° |
| | | engineColumn := tableElement.GetElementByTagName( "column", 4 ); // å卿º |
| | | powerColumn := tableElement.GetElementByTagName( "column", 5 ); // åç |
| | | enginePartNumberColumn := tableElement.GetElementByTagName( "column", 6 ); // å卿ºé¶ä»¶å· |
| | | engineFourDigitCodeColumn := tableElement.GetElementByTagName( "column", 7 ); // å卿ºåä½ç |
| | | remarksColumn := tableElement.GetElementByTagName( "column", 8 ); // 夿³¨ |
| | | |
| | | traverse ( macroPlan, SixDigitCode, sdc ) { |
| | | PR_PP_Budget::ExportCreateCell( xmlDOM, codeColumn, sdc.Code() ); // Code |
| | | PR_PP_Budget::ExportCreateCell( xmlDOM, curveColumn, sdc.Curve() ); // Curve |
| | | PR_PP_Budget::ExportCreateCell( xmlDOM, vehicleModelColumn, sdc.VehicleModel() ); // 车å |
| | | PR_PP_Budget::ExportCreateCell( xmlDOM, productingAreaColumn, sdc.ProducingArea() ); // äº§å° |
| | | PR_PP_Budget::ExportCreateCell( xmlDOM, engineColumn, sdc.Engine() ); // å卿º |
| | | PR_PP_Budget::ExportCreateCell( xmlDOM, powerColumn, sdc.Power() ); // åç |
| | | PR_PP_Budget::ExportCreateCell( xmlDOM, enginePartNumberColumn, sdc.EnginePartNumber() ); // å卿ºé¶ä»¶å· |
| | | PR_PP_Budget::ExportCreateCell( xmlDOM, engineFourDigitCodeColumn, sdc.EngineFourDigitCode() ); // å卿ºåä½ç |
| | | PR_PP_Budget::ExportCreateCell( xmlDOM, remarksColumn, sdc.Remarks() ); // å卿ºé¶ä»¶å· |
| | | } |
| | | |
| | | xmlString := xmlDOMI.CreateSerializer().WriteToString( xmlDOM ) |
| | | |
| | | //info( xmlString ); |
| | | |
| | | tableGroupHandle := TableGroupHandle::Create( "Sheet1" ); |
| | | tableHandle := TableHandle::ImportXML( BinaryValue::Construct( xmlString ) ); |
| | | tableGroupHandle.Add( tableHandle ); |
| | | |
| | | binaryData := XLS::SaveTableGroupToBinaryData( tableGroupHandle, true ); |
| | | |
| | | return binaryData.AsBinaryValue(); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod Upload ( |
| | | MacroPlan macroPlan, |
| | | GeneralExcelImportAndExportDataTable table |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // æ¸
空åå§æ°æ® |
| | | macroPlan.SixDigitCode( relflush ); |
| | | |
| | | // æ ¡éªæä»¶å |
| | | if ( table.GeneralExcelImportAndExportDataSource().Name() <> "å卿ºå¹é
-å
ä½ç .xlsx" ) { |
| | | error( Translations::A_VWED_GeneralExcelImportAndExportDataSource_UploadError2() ); |
| | | } |
| | | |
| | | // çææ°æ® |
| | | rowSize := table.GeneralExcelImportAndExportDataRow( relsize ); |
| | | |
| | | for ( rowIndex := 0; rowIndex < rowSize; rowIndex++ ) { |
| | | row := select( table, GeneralExcelImportAndExportDataRow, tempGEIAEDR, tempGEIAEDR.RowNr() = rowIndex ); |
| | | |
| | | codeCell := select( row, GeneralExcelImportAndExportDataCell, tempGEIAEDC, tempGEIAEDC.GeneralExcelImportAndExportDataColumn().ColumnIndex() = 0 ); |
| | | curveCell := select( row, GeneralExcelImportAndExportDataCell, tempGEIAEDC, tempGEIAEDC.GeneralExcelImportAndExportDataColumn().ColumnIndex() = 1 ); |
| | | vehicleModelCell := select( row, GeneralExcelImportAndExportDataCell, tempGEIAEDC, tempGEIAEDC.GeneralExcelImportAndExportDataColumn().ColumnIndex() = 2 ); |
| | | engineCell := select( row, GeneralExcelImportAndExportDataCell, tempGEIAEDC, tempGEIAEDC.GeneralExcelImportAndExportDataColumn().ColumnIndex() = 4 ); |
| | | powerCell := select( row, GeneralExcelImportAndExportDataCell, tempGEIAEDC, tempGEIAEDC.GeneralExcelImportAndExportDataColumn().ColumnIndex() = 5 ); |
| | | enginePartNumberCell := select( row, GeneralExcelImportAndExportDataCell, tempGEIAEDC, tempGEIAEDC.GeneralExcelImportAndExportDataColumn().ColumnIndex() = 6 ); |
| | | remarksCell := select( row, GeneralExcelImportAndExportDataCell, tempGEIAEDC, tempGEIAEDC.GeneralExcelImportAndExportDataColumn().ColumnIndex() = 8 ); |
| | | |
| | | macroPlan.SixDigitCode( relnew, |
| | | Code := guard( codeCell.Value(), "" ), |
| | | Curve := guard( curveCell.Value(), "" ), |
| | | VehicleModel := guard( vehicleModelCell.Value(), "" ), |
| | | ProducingArea := guard( select( macroPlan, SalesSegment_MP, tempSSMP, tempSSMP.Name() = guard( vehicleModelCell.Value(), "" ) ).Parent().Parent().Name(), "" ), |
| | | Engine := guard( engineCell.Value(), "" ), |
| | | Power := guard( powerCell.Value(), "" ), |
| | | EnginePartNumber := guard( enginePartNumberCell.Value(), "" ), |
| | | EngineFourDigitCode := guard( select( macroPlan, Product_MP, tempPMP, tempPMP.ID() = guard( enginePartNumberCell.Value(), "" ) ).Notes(), "" ), |
| | | Remarks := guard( remarksCell.Value(), "" ) ); |
| | | } |
| | | |
| | | // æ ¡éªæ°æ® |
| | | feedback := ""; |
| | | sanitycheckfeedback := ""; |
| | | flag := true; |
| | | |
| | | traverse ( macroPlan, SixDigitCode, sdc, flag ) { |
| | | SixDigitCode::ValidateInput( feedback, sanitycheckfeedback, macroPlan, sdc.Code(), sdc.Curve(), sdc.VehicleModel(), sdc.ProducingArea(), sdc.Engine(), sdc.Power(), sdc.EnginePartNumber(), |
| | | sdc.EngineFourDigitCode(), sdc.Remarks(), sdc ); |
| | | flag := feedback = ""; |
| | | } |
| | | |
| | | if ( not flag ) { |
| | | error( feedback ); |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod ValidateInput ( |
| | | output String feedback_o, |
| | | output String sanitycheckfeedback_o, |
| | | MacroPlan macroPlan, |
| | | String code, |
| | | String curve, |
| | | String vehicleModel, |
| | | String productingArea, |
| | | String engine, |
| | | String power, |
| | | String enginePartNumber, |
| | | String engineFourDigitCode, |
| | | String remarks, |
| | | SixDigitCode selection |
| | | ) declarative remote as Boolean |
| | | { |
| | | TextBody: |
| | | [* |
| | | // lihongji May-14-2024 (created) |
| | | feedback_o := ""; |
| | | sanitycheckfeedback_o := ""; |
| | | |
| | | if ( code.TrimBoth() = "" or curve.TrimBoth() = "" or vehicleModel.TrimBoth() = "" or enginePartNumber.TrimBoth() = "" ) { |
| | | feedback_o := ifexpr( code.TrimBoth() = "", Translations::A_VWED_SixDigitCode_Code() + "ã", "" ) + |
| | | ifexpr( curve.TrimBoth() = "", Translations::A_VWED_SixDigitCode_Curve() + "ã", "" ) + |
| | | ifexpr( vehicleModel.TrimBoth() = "", Translations::A_VWED_PR_PP_Budget_VehicleModel() + "ã", "" ) + |
| | | ifexpr( enginePartNumber.TrimBoth() = "", Translations::A_VWED_PR_PP_Budget_EnginePartNumber() + "ã", "" ); |
| | | feedback_o := Translations::A_VWED_SixDigitCode_VerificationRules1( guard( feedback_o.SubString( 0, feedback_o.Length() - 1 ), "error" ) ); |
| | | sanitycheckfeedback_o := SanityCheckCategoryLevel::GetSanityCheckCategoryPlanningWarning(); |
| | | } else if ( code.TrimBoth() <> "" and exists( macroPlan, SixDigitCode, tempSDC, tempSDC.Code() = code and tempSDC <> selection ) ) { |
| | | feedback_o := Translations::A_VWED_SixDigitCode_VerificationRules2(); |
| | | sanitycheckfeedback_o := SanityCheckCategoryLevel::GetSanityCheckCategoryPlanningWarning(); |
| | | } else if ( vehicleModel.TrimBoth() <> "" and not exists( macroPlan, SalesSegment_MP, tempSSMP, tempSSMP.Name() = vehicleModel ) ) { |
| | | feedback_o := Translations::A_VWED_SixDigitCode_VerificationRules3(); |
| | | sanitycheckfeedback_o := SanityCheckCategoryLevel::GetSanityCheckCategoryPlanningWarning(); |
| | | } else if ( enginePartNumber.TrimBoth() <> "" and not exists( macroPlan, Product_MP, tempPMP, tempPMP.ID() = enginePartNumber ) ) { |
| | | feedback_o := Translations::A_VWED_SixDigitCode_VerificationRules4(); |
| | | sanitycheckfeedback_o := SanityCheckCategoryLevel::GetSanityCheckCategoryPlanningWarning(); |
| | | } |
| | | |
| | | return feedback_o = ""; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod Download ( |
| | | MacroPlan macroPlan |
| | | ) as BinaryValue |
| | | { |
| | | TextBody: |
| | | [* |
| | | xmlDOMI := XMLDOMImplementation::Create(); |
| | | xmlDOM := xmlDOMI.CreateDocumentFromString( '<?xml version="1.0" encoding="UTF-16"?><table><name>Sheet1</name><column><name>ä¸ä½ç </name><type>String</type></column><column><name>车å</name><type>String</type></column></table>' ); |
| | | |
| | | tableElement := xmlDOM.GetElementByTagName( "table", 0 ); |
| | | |
| | | codeColumn := tableElement.GetElementByTagName( "column", 0 ); // Code |
| | | vehicleModelColumn := tableElement.GetElementByTagName( "column", 1 ); // 车å |
| | | |
| | | traverse ( macroPlan, ThreeDigitCode, sdc ) { |
| | | PR_PP_Budget::ExportCreateCell( xmlDOM, codeColumn, sdc.Code() ); // Code |
| | | PR_PP_Budget::ExportCreateCell( xmlDOM, vehicleModelColumn, sdc.VehicleModel() ); // 车å |
| | | } |
| | | |
| | | xmlString := xmlDOMI.CreateSerializer().WriteToString( xmlDOM ) |
| | | |
| | | //info( xmlString ); |
| | | |
| | | tableGroupHandle := TableGroupHandle::Create( "Sheet1" ); |
| | | tableHandle := TableHandle::ImportXML( BinaryValue::Construct( xmlString ) ); |
| | | tableGroupHandle.Add( tableHandle ); |
| | | |
| | | binaryData := XLS::SaveTableGroupToBinaryData( tableGroupHandle, true ); |
| | | |
| | | return binaryData.AsBinaryValue(); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod Upload ( |
| | | MacroPlan macroPlan, |
| | | GeneralExcelImportAndExportDataTable table |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // æ¸
空åå§æ°æ® |
| | | macroPlan.ThreeDigitCode( relflush ); |
| | | |
| | | // æ ¡éªæä»¶å |
| | | if ( table.GeneralExcelImportAndExportDataSource().Name() <> "å卿ºå¹é
-ä¸ä½ç .xlsx" ) { |
| | | error( Translations::A_VWED_GeneralExcelImportAndExportDataSource_UploadError2() ); |
| | | } |
| | | |
| | | // çææ°æ® |
| | | rowSize := table.GeneralExcelImportAndExportDataRow( relsize ); |
| | | |
| | | for ( rowIndex := 0; rowIndex < rowSize; rowIndex++ ) { |
| | | row := select( table, GeneralExcelImportAndExportDataRow, tempGEIAEDR, tempGEIAEDR.RowNr() = rowIndex ); |
| | | |
| | | codeCell := select( row, GeneralExcelImportAndExportDataCell, tempGEIAEDC, tempGEIAEDC.GeneralExcelImportAndExportDataColumn().ColumnIndex() = 0 ); |
| | | vehicleModelCell := select( row, GeneralExcelImportAndExportDataCell, tempGEIAEDC, tempGEIAEDC.GeneralExcelImportAndExportDataColumn().ColumnIndex() = 1 ); |
| | | |
| | | macroPlan.ThreeDigitCode( relnew, |
| | | Code := guard( codeCell.Value(), "" ), |
| | | VehicleModel := guard( vehicleModelCell.Value(), "" ) ); |
| | | } |
| | | |
| | | // æ ¡éªæ°æ® |
| | | feedback := ""; |
| | | sanitycheckfeedback := ""; |
| | | flag := true; |
| | | |
| | | traverse ( macroPlan, ThreeDigitCode, tdc, flag ) { |
| | | ThreeDigitCode::ValidateInput( feedback, sanitycheckfeedback, macroPlan, tdc.Code(), tdc.VehicleModel(), tdc ); |
| | | flag := feedback = ""; |
| | | } |
| | | |
| | | if ( not flag ) { |
| | | error( feedback ); |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod ValidateInput ( |
| | | output String feedback_o, |
| | | output String sanitycheckfeedback_o, |
| | | MacroPlan macroPlan, |
| | | String code, |
| | | String vehicleModel, |
| | | ThreeDigitCode selection |
| | | ) declarative remote as Boolean |
| | | { |
| | | TextBody: |
| | | [* |
| | | // lihongji May-14-2024 (created) |
| | | feedback_o := ""; |
| | | sanitycheckfeedback_o := ""; |
| | | |
| | | if ( code.TrimBoth() = "" or vehicleModel.TrimBoth() = "" ) { |
| | | feedback_o := ifexpr( code.TrimBoth() = "", Translations::A_VWED_SixDigitCode_Code() + "ã", "" ) + |
| | | ifexpr( vehicleModel.TrimBoth() = "", Translations::A_VWED_PR_PP_Budget_VehicleModel() + "ã", "" ); |
| | | feedback_o := Translations::A_VWED_SixDigitCode_VerificationRules1( guard( feedback_o.SubString( 0, feedback_o.Length() - 1 ), "error" ) ); |
| | | sanitycheckfeedback_o := SanityCheckCategoryLevel::GetSanityCheckCategoryPlanningWarning(); |
| | | } else if ( code.TrimBoth() <> "" and exists( macroPlan, ThreeDigitCode, tempTDC, tempTDC.Code() = code and tempTDC <> selection ) ) { |
| | | feedback_o := Translations::A_VWED_ThreeDigitCode_VerificationRules2(); |
| | | sanitycheckfeedback_o := SanityCheckCategoryLevel::GetSanityCheckCategoryPlanningWarning(); |
| | | } else if ( vehicleModel.TrimBoth() <> "" and not exists( macroPlan, SalesSegment_MP, tempSSMP, tempSSMP.Name() = vehicleModel ) ) { |
| | | feedback_o := Translations::A_VWED_SixDigitCode_VerificationRules3(); |
| | | sanitycheckfeedback_o := SanityCheckCategoryLevel::GetSanityCheckCategoryPlanningWarning(); |
| | | } |
| | | |
| | | return feedback_o = ""; |
| | | *] |
| | | } |
| | |
| | | } |
| | | ] |
| | | } |
| | | Component menuSeparator833 { #keys: '[413988.0.1164544044]' BaseType: 'Menu' Properties: [ Separator: true ] } |
| | | Component ComponentMenu469 { #keys: '[413988.0.1164544687]' BaseType: 'ComponentMenu' Properties: [ ComponentType: 'frmStandardAnalysis857' Text: '' ] } |
| | | ] |
| | | Properties: |
| | | [ |
| | | ModeledStringList ChildOrdering |
| | | { |
| | | c: MenuFunctions |
| | | c: MenuSeparatorFunctions |
| | | c: MenuConfiguration |
| | | c: Menu38 |
| | | c: MenuEditKnowledgeTables |
| | | c: Menu18 |
| | | c: MenuAuthorization |
| | | c: MenuAdministrativeTools1 |
| | | c: Menu8 |
| | | c: MenuSelectDemoDataset |
| | | c: menuSeparator833 |
| | | c: ComponentMenu469 |
| | | } |
| | | ] |
| | | } |
| | | ] |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component List1 |
| | | { |
| | | #keys: '[530.0.3531950]' |
| | | BaseType: 'List1' |
| | | IsDerived: true |
| | | Children: |
| | | [ |
| | | Component popupList1 |
| | | { |
| | | #keys: '[530.0.5957094]' |
| | | BaseType: 'popupList1' |
| | | IsDerived: true |
| | | Children: |
| | | [ |
| | | Component PopupParent |
| | | { |
| | | #keys: '[514.0.129466]' |
| | | BaseType: 'PopupParent' |
| | | IsDerived: true |
| | | Children: |
| | | [ |
| | | Component menuSeparator { #keys: '[413988.0.1164545508]' BaseType: 'Menu' Properties: [ Separator: true ] } |
| | | Component MenuDelete { #keys: '[413988.0.1164545559]' BaseType: 'Menu' Properties: [ Image: 'DELETE' Text: 'Delete' ] } |
| | | ] |
| | | Properties: |
| | | [ |
| | | ModeledStringList ChildOrdering |
| | | { |
| | | c: MenuActions |
| | | c: MenuFilter |
| | | c: menuListQuintiqSetQuantor |
| | | c: menuOLSeparator0 |
| | | c: menuUseFilter |
| | | c: menuAppendFilter |
| | | c: menuClearAnalysisFilter |
| | | c: MenuClearAnalysisConfigurationsList |
| | | c: menuSeparator |
| | | c: MenuDelete |
| | | } |
| | | ] |
| | | } |
| | | ] |
| | | } |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component swBottom |
| | | { |
| | | #keys: '[530.0.3531811]' |
| | | BaseType: 'swBottom' |
| | | IsDerived: true |
| | | Children: |
| | | [ |
| | | Component spBottomRight |
| | | { |
| | | #keys: '[530.0.3531813]' |
| | | BaseType: 'spBottomRight' |
| | | IsDerived: true |
| | | Children: |
| | | [ |
| | | #child: List1 |
| | | ] |
| | | } |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component swTop |
| | | { |
| | | #keys: '[530.0.3531806]' |
| | | BaseType: 'swTop' |
| | | IsDerived: true |
| | | Children: |
| | | [ |
| | | Component spTopLeft |
| | | { |
| | | #keys: '[530.0.3531807]' |
| | | BaseType: 'spTopLeft' |
| | | IsDerived: true |
| | | Children: |
| | | [ |
| | | Component Analysis |
| | | { |
| | | #keys: '[530.0.3532065]' |
| | | BaseType: 'Analysis' |
| | | IsDerived: true |
| | | Properties: |
| | | [ |
| | | GlobalInstance: 'Archive' |
| | | ] |
| | | } |
| | | ] |
| | | } |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component swTopMost |
| | | { |
| | | #keys: '[530.0.3531801]' |
| | | BaseType: 'swTopMost' |
| | | IsDerived: true |
| | | Children: |
| | | [ |
| | | Component SplitterPane1 |
| | | { |
| | | #keys: '[530.0.3531802]' |
| | | BaseType: 'SplitterPane1' |
| | | IsDerived: true |
| | | Children: |
| | | [ |
| | | #child: swTop |
| | | ] |
| | | } |
| | | Component SplitterPane2 |
| | | { |
| | | #keys: '[530.0.3531803]' |
| | | BaseType: 'SplitterPane2' |
| | | IsDerived: true |
| | | Children: |
| | | [ |
| | | #child: swBottom |
| | | ] |
| | | } |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: List1 |
| | | Response OnClick ( |
| | | structured[Object] selection |
| | | ) id:Response_List1_MenuDelete_OnClick |
| | | { |
| | | #keys: '[413988.0.1164545589]' |
| | | Body: |
| | | [* |
| | | MacroPlan::DeleteObjects( selection ); |
| | | *] |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_List1_Menu_OnClick' |
| | | Initiator: 'MenuDelete' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: MacroPlanner |
| | | OrphanComponent frmStandardAnalysis857 |
| | | { |
| | | #keys: '[413988.0.1164544060]' |
| | | BaseType: 'frmStandardAnalysis' |
| | | Children: |
| | | [ |
| | | #child: swTopMost |
| | | ] |
| | | Properties: |
| | | [ |
| | | Height: 506 |
| | | Title: 'Archive' |
| | | Width: 965 |
| | | ] |
| | | } |
| | |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | | Component efVehicleModel |
| | | { |
| | | #keys: '[413988.0.1148720711]' |
| | | BaseType: 'WebEditField' |
| | | Properties: |
| | | [ |
| | | DataBinding: 'DataHolderDialogData.Data.VehicleModel' |
| | | Label: 'Vehicle Model' |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | Component efProducingArea |
| | | { |
| | | #keys: '[413988.0.1148720713]' |
| | |
| | | Properties: |
| | | [ |
| | | DataBinding: 'DataHolderDialogData.Data.ProducingArea' |
| | | Enabled: false |
| | | Label: 'Producing Area' |
| | | Taborder: 3 |
| | | ] |
| | |
| | | Taborder: 5 |
| | | ] |
| | | } |
| | | Component efEnginePartNumber |
| | | { |
| | | #keys: '[413988.0.1148720719]' |
| | | BaseType: 'WebEditField' |
| | | Properties: |
| | | [ |
| | | DataBinding: 'DataHolderDialogData.Data.EnginePartNumber' |
| | | Label: 'Engine Part Number' |
| | | Taborder: 6 |
| | | ] |
| | | } |
| | | Component efEngineFourDigitCode |
| | | { |
| | | #keys: '[413988.0.1148720721]' |
| | |
| | | Properties: |
| | | [ |
| | | DataBinding: 'DataHolderDialogData.Data.EngineFourDigitCode' |
| | | Enabled: false |
| | | Label: 'Engine Four Digit Code' |
| | | Taborder: 7 |
| | | ] |
| | |
| | | Taborder: 8 |
| | | ] |
| | | } |
| | | Component ddlVehicleModel id:ddlVehicleModel_119 |
| | | { |
| | | #keys: '[413988.0.1167500317]' |
| | | BaseType: 'WebDropDownList' |
| | | Databinding: 'SalesSegment_MP' |
| | | Children: |
| | | [ |
| | | Component deContent199 id:deContent199_720 |
| | | { |
| | | #keys: '[413988.0.1167500318]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'MacroPlan' |
| | | Source: 'MacroPlan' |
| | | Taborder: 0 |
| | | Transformation: 'SalesSegment_MP' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | DisplayField: 'Name' |
| | | Label: 'Vehicle Model' |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | Component ddlEnginePartNumber id:ddlEnginePartNumber_582 |
| | | { |
| | | #keys: '[413988.0.1167500457]' |
| | | BaseType: 'WebDropDownList' |
| | | Databinding: 'Product_MP' |
| | | Children: |
| | | [ |
| | | Component deContent id:deContent_144 |
| | | { |
| | | #keys: '[413988.0.1167500458]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'MacroPlan' |
| | | Source: 'MacroPlan' |
| | | Taborder: 0 |
| | | Transformation: 'Product_MP' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | DisplayField: 'ID' |
| | | Label: 'Engine Part Number' |
| | | Taborder: 6 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | |
| | | [* |
| | | data := shadow( selection ); |
| | | |
| | | ssmp := select( MacroPlan, SalesSegment_MP, tempSSMP, tempSSMP.Name() = selection.VehicleModel() ); |
| | | ddlVehicleModel.Data( ssmp ); |
| | | |
| | | pmp := select( MacroPlan, Product_MP, tempPMP, tempPMP.ID() = selection.EnginePartNumber() ); |
| | | ddlEnginePartNumber.Data( pmp ); |
| | | |
| | | DataHolderDialogData.Data( &data ); |
| | | dhSelectionSixDigitCode.Data( selection ); |
| | | |
| | | ApplicationMacroPlanner.ShowFormModal( this ); |
| | | *] |
| | |
| | | // On ok |
| | | Form.ApplyChanges(); |
| | | |
| | | DataHolderDialogData.Data().Commit(); |
| | | data := DataHolderDialogData.Data(); |
| | | |
| | | data.VehicleModel( guard( ddlVehicleModel.Data().Name(), "" ) ); |
| | | data.EnginePartNumber( guard( ddlEnginePartNumber.Data().ID(), "" ) ); |
| | | |
| | | data.Commit(); |
| | | |
| | | Form.Close(); |
| | | *] |
| | |
| | | { |
| | | #keys: '[413988.0.1148570679]' |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | Precondition: |
| | | [* |
| | | sanitycheckfeedback := ''; |
| | | return SixDigitCode::ValidateInput( feedback, |
| | | sanitycheckfeedback, |
| | | MacroPlan, |
| | | efCode.Text(), |
| | | efCurve.Text(), |
| | | ddlVehicleModel.Data().Name(), |
| | | efProducingArea.Text(), |
| | | efEngine.Text(), |
| | | efPower.Text(), |
| | | ddlEnginePartNumber.Data().ID(), |
| | | efEngineFourDigitCode.Text(), |
| | | efRemarks.Text(), |
| | | dhSelectionSixDigitCode.Data() ); |
| | | *] |
| | | QuillAction |
| | | { |
| | | Body: |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: pnlContent/ddlEnginePartNumber_582 |
| | | Response OnSelectionChanged () id:Response_pnlContent_ddlEnginePartNumber_OnSelectionChanged_537 |
| | | { |
| | | #keys: '[413988.0.1167500455]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebDropDownList_OnSelectionChanged' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | efEngineFourDigitCode.Text( guard( this.Data().Notes(), "" ) ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: pnlContent/ddlVehicleModel_119 |
| | | Response OnSelectionChanged () id:Response_pnlContent_ddlVehicleModel_OnSelectionChanged_640 |
| | | { |
| | | #keys: '[413988.0.1167500315]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebDropDownList_OnSelectionChanged' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | efProducingArea.Text( guard( this.Data().Parent().Parent().Name(), "" ) ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
| | |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | Component dhSelectionSixDigitCode |
| | | { |
| | | #keys: '[413988.0.1166161525]' |
| | | BaseType: 'WebDataHolder' |
| | | Databinding: 'SixDigitCode' |
| | | Properties: |
| | | [ |
| | | Taborder: 3 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | | Component efVehicleModel |
| | | Component ddlVehicleModel |
| | | { |
| | | #keys: '[413988.0.1149413314]' |
| | | BaseType: 'WebEditField' |
| | | #keys: '[413988.0.1167810823]' |
| | | BaseType: 'WebDropDownList' |
| | | Databinding: 'SalesSegment_MP' |
| | | Children: |
| | | [ |
| | | Component deContent199 |
| | | { |
| | | #keys: '[413988.0.1167810824]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'MacroPlan' |
| | | Source: 'MacroPlan' |
| | | Taborder: 0 |
| | | Transformation: 'SalesSegment_MP' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | DataBinding: 'DataHolderDialogData.Data.VehicleModel' |
| | | DisplayField: 'Name' |
| | | Label: 'Vehicle Model' |
| | | Taborder: 1 |
| | | ] |
| | |
| | | [* |
| | | data := shadow( selection ); |
| | | |
| | | ssmp := select( MacroPlan, SalesSegment_MP, tempSSMP, tempSSMP.Name() = selection.VehicleModel() ); |
| | | ddlVehicleModel.Data( ssmp ); |
| | | |
| | | DataHolderDialogData.Data( &data ); |
| | | dhSelectionThreeDigitCode.Data( selection ); |
| | | |
| | | ApplicationMacroPlanner.ShowFormModal( this ); |
| | | *] |
| | |
| | | // On ok |
| | | Form.ApplyChanges(); |
| | | |
| | | DataHolderDialogData.Data().Commit(); |
| | | data := DataHolderDialogData.Data(); |
| | | |
| | | data.VehicleModel( guard( ddlVehicleModel.Data().Name(), "" ) ); |
| | | |
| | | data.Commit(); |
| | | |
| | | Form.Close(); |
| | | *] |
| | |
| | | { |
| | | #keys: '[413988.0.1149411986]' |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | Precondition: |
| | | [* |
| | | sanitycheckfeedback := ''; |
| | | return ThreeDigitCode::ValidateInput( feedback, |
| | | sanitycheckfeedback, |
| | | MacroPlan, |
| | | efCode.Text(), |
| | | ddlVehicleModel.Data().Name(), |
| | | dhSelectionThreeDigitCode.Data() ); |
| | | *] |
| | | QuillAction |
| | | { |
| | | Body: |
| | |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | Component dhSelectionThreeDigitCode |
| | | { |
| | | #keys: '[413988.0.1167410600]' |
| | | BaseType: 'WebDataHolder' |
| | | Databinding: 'ThreeDigitCode' |
| | | Properties: |
| | | [ |
| | | Taborder: 3 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | |
| | | #keys: '[413988.0.1147413980]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | Precondition: |
| | | [* |
| | | return not isnull( MacroPlan ); |
| | | *] |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | binaryValue := ThreeDigitCode::Download( MacroPlan ); |
| | | |
| | | Application.Download( "å卿ºå¹é
-ä¸ä½ç .xlsx", binaryValue.AsBinaryData() ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
| | |
| | | #keys: '[413988.0.1147413979]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | Precondition: |
| | | [* |
| | | return not isnull( MacroPlan ); |
| | | *] |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | try { |
| | | uploadJsonString := Application.GetFile(); |
| | | if ( uploadJsonString <> "" ) { |
| | | uploadJson := JSON::Parse( uploadJsonString ); |
| | | Archive::VerifyTheFileName( uploadJson ); |
| | | |
| | | fileName := uploadJson.Get( "name" ).GetString(); |
| | | base64String := uploadJson.Get( "data" ).GetString(); |
| | | |
| | | webFileBinaryData := BinaryData::FromBase64EncodedString( base64String ).AsBinaryValue(); |
| | | |
| | | generalExcelImportAndExportDataSource := GeneralExcelImportAndExportDataSource::Upload( Archive, webFileBinaryData, fileName ); |
| | | generalExcelImportAndExportDataSource.ReadStructure(); |
| | | |
| | | selection := select( generalExcelImportAndExportDataSource, GeneralExcelImportAndExportDataTable, tempGEIAEDT, tempGEIAEDT.Name() = "Sheet1" ); |
| | | |
| | | ThreeDigitCode::Upload( MacroPlan, selection ); |
| | | |
| | | // åç»å é¤ |
| | | generalExcelImportAndExportDataSource.Delete(); |
| | | |
| | | WebMessageBox::Success( Translations::A_VWED_Success() ); |
| | | } |
| | | } onerror { |
| | | WebMessageBox::Error( e.GeneralInformation() ); |
| | | } |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
| | |
| | | #keys: '[413988.0.1141930584]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | Precondition: |
| | | [* |
| | | return not isnull( MacroPlan ); |
| | | *] |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | try { |
| | | uploadJsonString := Application.GetFile(); |
| | | if ( uploadJsonString <> "" ) { |
| | | uploadJson := JSON::Parse( uploadJsonString ); |
| | | Archive::VerifyTheFileName( uploadJson ); |
| | | |
| | | fileName := uploadJson.Get( "name" ).GetString(); |
| | | base64String := uploadJson.Get( "data" ).GetString(); |
| | | |
| | | webFileBinaryData := BinaryData::FromBase64EncodedString( base64String ).AsBinaryValue(); |
| | | |
| | | generalExcelImportAndExportDataSource := GeneralExcelImportAndExportDataSource::Upload( Archive, webFileBinaryData, fileName ); |
| | | generalExcelImportAndExportDataSource.ReadStructure(); |
| | | |
| | | selection := select( generalExcelImportAndExportDataSource, GeneralExcelImportAndExportDataTable, tempGEIAEDT, tempGEIAEDT.Name() = "Sheet1" ); |
| | | |
| | | PR_PP_Budget::Upload( MacroPlan, selection ); |
| | | |
| | | // åç»å é¤ |
| | | generalExcelImportAndExportDataSource.Delete(); |
| | | |
| | | WebMessageBox::Success( Translations::A_VWED_Success() ); |
| | | } |
| | | } onerror { |
| | | WebMessageBox::Error( e.GeneralInformation() ); |
| | | } |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
| | |
| | | #keys: '[413988.0.1146140232]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | Precondition: |
| | | [* |
| | | return not isnull( MacroPlan ); |
| | | *] |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | binaryValue := SixDigitCode::Download( MacroPlan ); |
| | | |
| | | Application.Download( "å卿ºå¹é
-å
ä½ç .xlsx", binaryValue.AsBinaryData() ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
| | |
| | | #keys: '[413988.0.1146140231]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | Precondition: |
| | | [* |
| | | return not isnull( MacroPlan ); |
| | | *] |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | try { |
| | | uploadJsonString := Application.GetFile(); |
| | | if ( uploadJsonString <> "" ) { |
| | | uploadJson := JSON::Parse( uploadJsonString ); |
| | | Archive::VerifyTheFileName( uploadJson ); |
| | | |
| | | fileName := uploadJson.Get( "name" ).GetString(); |
| | | base64String := uploadJson.Get( "data" ).GetString(); |
| | | |
| | | webFileBinaryData := BinaryData::FromBase64EncodedString( base64String ).AsBinaryValue(); |
| | | |
| | | generalExcelImportAndExportDataSource := GeneralExcelImportAndExportDataSource::Upload( Archive, webFileBinaryData, fileName ); |
| | | generalExcelImportAndExportDataSource.ReadStructure(); |
| | | |
| | | selection := select( generalExcelImportAndExportDataSource, GeneralExcelImportAndExportDataTable, tempGEIAEDT, tempGEIAEDT.Name() = "Sheet1" ); |
| | | |
| | | SixDigitCode::Upload( MacroPlan, selection ); |
| | | |
| | | // åç»å é¤ |
| | | generalExcelImportAndExportDataSource.Delete(); |
| | | |
| | | WebMessageBox::Success( Translations::A_VWED_Success() ); |
| | | } |
| | | } onerror { |
| | | WebMessageBox::Error( e.GeneralInformation() ); |
| | | } |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |