From 8c5557b992ac917c11f0f24d9716af1a16045777 Mon Sep 17 00:00:00 2001 From: hongjli <3117313295@qq.com> Date: 星期一, 18 九月 2023 21:04:27 +0800 Subject: [PATCH] 全局代理 --- _Main/BL/Type_GlobalDTOTable/Method_ApiBuildPostRequestBody.qbl | 27 + _Main/BL/Type_Global_MappingProduct_MP/Attribute_KeyProduct.qbl | 7 _Main/BL/Relations/Relation_GlobalOTDTable_Global_MappingConversionFactor_Global_MappingConvers.qbl | 23 _Main/BL/Type_Global_MappingCurrencyRate_MP/Attribute_CurrencyID.qbl | 7 _Main/BL/Type_Global_MappingProduct_MP/Attribute_ShelfLife.qbl | 7 _Main/BL/Type_Global_MappingProduct_MP/Attribute_EndDate.qbl | 7 _Main/BL/Type_GlobalDTOTable/StaticMethod_SynchronizationAllMappingBrokerAndAPI.qbl | 24 + _Main/BL/Type_Global_MappingConversionFactor/Attribute_ProductID.qbl | 8 _Main/BL/Type_Global_MappingConversionFactor/Attribute_SourceUnitOfMeasureName.qbl | 8 _Main/BL/Type_Global_MappingProduct_MP/_ROOT_Type_Global_MappingProduct_MP.qbl | 9 _Main/BL/Type_Global_MappingConversionFactor/Attribute_IsEnabled.qbl | 8 _Main/BL/Type_Global_MappingStockingPoint_MP/Attribute_id.qbl | 7 _Main/BL/Type_Global_MappingStockingPoint_MP/Attribute_UnitID.qbl | 7 _Main/BL/Type_Global_MappingSalesSegment_MP/Attribute_Name.qbl | 8 _Main/BL/Type_Global_MappingProduct_MP/Attribute_ProductSubclassType.qbl | 7 _Main/BL/Type_Global_MappingUnitOfMeasure_MP/Attribute_IsDefault.qbl | 7 _Main/BL/Type_Global_MappingConversionFactor/TypeIndex_TypeIndex.qbl | 24 + _Main/BL/Type_Global_MappingCurrencyRate_MP/StaticMethod_CreateByAPI.qbl | 41 + _Main/BL/Type_Global_MappingProduct_MP/Attribute_ID.qbl | 8 _Main/BL/Type_Global_MappingSalesSegment_MP/Attribute_BusinessType.qbl | 8 _Main/BL/Type_Global_MappingStockingPoint_MP/_ROOT_Type_Global_MappingStockingPoint_MP.qbl | 9 _Main/BL/Type_Global_MappingConversionFactor/Attribute_Factor.qbl | 7 _Main/BL/Type_Global_MappingConversionFactor/_ROOT_Type_Global_MappingConversionFactor.qbl | 9 _Main/BL/Type_Global_MappingCurrencyRate_MP/Attribute_Start.qbl | 7 _Main/BL/Type_Global_MappingProduct_MP/Attribute_BusinessType.qbl | 8 _Main/BL/Type_Global_MappingProduct_MP/Attribute_UnitOfMeasureName.qbl | 7 _Main/BL/EDI/Broker_GlobalOTDTable_Product_MP.qbl | 169 +++++++ _Main/BL/Relations/Relation_GlobalOTDTable_Global_MappingCurrency_MP_Global_MappingCurrency_MP_.qbl | 23 _Main/BL/EDI/Broker_GlobalOTDTable_ConversionFactor.qbl | 78 +++ _Main/BL/EDI/Broker_GlobalOTDTable_UnitOfMeasure_MP.qbl | 55 ++ _Main/BL/Relations/Relation_GlobalOTDTable_Global_MappingProduct_MP_Global_MappingProduct_MP_Gl.qbl | 23 _Main/BL/Type_Global_MappingStockingPoint_MP/StaticMethod_CreateByAPI.qbl | 38 + _Main/BL/Type_Global_MappingCurrency_MP/Attribute_ID.qbl | 7 _Main/UI/MacroPlannerWebApp/Component_DialogCreateEditScenario/Method_CopyScenario.def | 29 + _Main/BL/Type_GlobalDTOTable/StaticMethod_SynchronizationStockingPoint_MP.qbl | 8 _Main/BL/Type_Global_MappingCurrencyRate_MP/_ROOT_Type_Global_MappingCurrencyRate_MP.qbl | 9 _Main/BL/Type_MacroPlan/Method_InitialUnitAndStockingPoint.qbl | 104 +--- _Main/BL/Relations/Relation_GlobalOTDTable_Global_MappingCurrencyRate_MP_Global_MappingCurrency.qbl | 23 _Main/BL/Type_Global_MappingSalesSegment_MP/Attribute_ParentName.qbl | 7 _Main/BL/Type_Global_MappingCurrency_MP/_ROOT_Type_Global_MappingCurrency_MP.qbl | 9 _Main/BL/Type_Global_MappingCurrency_MP/StaticMethod_CreateByAPI.qbl | 38 + _Main/BL/Type_Global_MappingSalesSegment_MP/_ROOT_Type_Global_MappingSalesSegment_MP.qbl | 9 _Main/BL/Type_GlobalDTOTable/StaticMethod_SynchronizationUnitOfMeasure_MP.qbl | 23 _Main/BL/Type_Global_MappingCurrency_MP/Attribute_IsBase.qbl | 7 _Main/BL/Type_Global_MappingProduct_MP/Attribute_CommonBusiness.qbl | 7 _Main/BL/Type_Global_MappingProduct_MP/Attribute_IsCommon.qbl | 7 _Main/BL/Type_Global_MappingStockingPoint_MP/Attribute_Name.qbl | 7 _Main/BL/Type_Global_MappingConversionFactor/Attribute_TargetUnitOfMeasureName.qbl | 8 _Main/UI/MacroPlanner/Component_ScenarioManager_FormScenario/Component_SplitterWndScenarioManager.def | 113 ++++ _Main/BL/Relations/Relation_GlobalOTDTable_Global_MappingUnitOfMeasure_MP_Global_MappingUnitOfM.qbl | 23 _Main/BL/Type_Global_MappingUnitOfMeasure_MP/TypeIndex_TypeIndexName.qbl | 12 _Main/BL/EDI/Broker_GlobalOTDTable_SalesSegment_MP.qbl | 92 +++ _Main/UI/MacroPlanner/Component_ScenarioManager_FormScenario/Response_TIANMA_JITUAN_SplitterWndScenarioManager_Button897_OnClick.def | 12 _Main/BL/Relations/Relation_GlobalOTDTable_Global_MappingStockingPoint_MP_Global_MappingStockin.qbl | 23 _Main/BL/Type_Global_MappingProduct_MP/Attribute_Name.qbl | 7 _Main/BL/Type_Global_MappingProduct_MP/TypeIndex_TypeIndexIDAndBusinessType.qbl | 16 _Main/BL/Type_Global_MappingSalesSegment_MP/TypeIndex_TypeIndexBusinessTypeAndName.qbl | 16 _Main/BL/Type_Global_MappingCurrencyRate_MP/Attribute_Rate.qbl | 7 _Main/BL/Type_Global_MappingCurrency_MP/Attribute_Name.qbl | 7 _Main/BL/Type_Global_MappingProduct_MP/Attribute_Notes.qbl | 7 _Main/BL/Relations/Relation_GlobalOTDTable_Global_MappingSalesSegment_MP_Global_MappingSalesSeg.qbl | 23 _Main/BL/Type_Global_MappingSalesSegment_MP/Attribute_DisplayIndex.qbl | 7 _Main/BL/Type_Global_MappingProduct_MP/Attribute_ProductMajorType.qbl | 7 _Main/BL/Type_Global_MappingUnitOfMeasure_MP/_ROOT_Type_Global_MappingUnitOfMeasure_MP.qbl | 9 _Main/BL/Type_GlobalDTOTable/StaticMethod_SynchronizationSalesSegment_MP.qbl | 31 + _Main/BL/Type_Global_MappingUnitOfMeasure_MP/Attribute_Name.qbl | 8 66 files changed, 1,328 insertions(+), 79 deletions(-) diff --git a/_Main/BL/EDI/Broker_GlobalOTDTable_ConversionFactor.qbl b/_Main/BL/EDI/Broker_GlobalOTDTable_ConversionFactor.qbl new file mode 100644 index 0000000..a3d464b --- /dev/null +++ b/_Main/BL/EDI/Broker_GlobalOTDTable_ConversionFactor.qbl @@ -0,0 +1,78 @@ +Quintiq file version 2.0 +#parent: #root +EDIBroker GlobalOTDTable_ConversionFactor +{ + MDSDefinition: GlobalOTDTable + TimeZone: 'ACT' + UseOSTimeZone: false + EDIModelLink.Destination Destination4 + { + EDIMLTable Global_MappingConversionFactor + { + PrimaryKeyColumns: IsEnabled + PrimaryKeyColumns: ProductID + PrimaryKeyColumns: SourceUnitOfMeasureName + PrimaryKeyColumns: TargetUnitOfMeasureName + TargetType: Global_MappingConversionFactor + TypeIndex: TypeIndex + EDIMLColumn Factor { Attribute: Factor ValueType: Real } + EDIMLColumn IsEnabled { Attribute: IsEnabled ValueType: Boolean } + EDIMLColumn ProductID { Attribute: ProductID ValueType: String } + EDIMLColumn SourceUnitOfMeasureName { Attribute: SourceUnitOfMeasureName ValueType: String } + EDIMLColumn TargetUnitOfMeasureName { Attribute: TargetUnitOfMeasureName ValueType: String } + } + } + EDIODBCLink.Source Source3 + { + DataIntegrityStrategy: 'Disabled' + SettingsEngineLink: 'domainmodel.ediremotedatasourcedefinition.remotestorage.oracle' + EDIODBCLinkTable MID_BASECONVERSIONFACTORS + { + OthersMayCreateTable: true + OthersMayDeleteRow: true + OthersMayDropTable: true + OthersMayFlushTable: true + OthersMayInsertRow: true + Parameters: '/owner="OTD"' + RecordModificationHintStrategy: 'None' + EDIODBCLinkColumn FACTOR + { + OthersMayUpdateColumn: true + ValueType: Real + } + EDIODBCLinkColumn ISENABLED + { + OthersMayUpdateColumn: true + ValueType: String + } + EDIODBCLinkColumn PRODUCTID + { + OthersMayUpdateColumn: true + ValueType: String + } + EDIODBCLinkColumn SOURCEUNITOFMEASURENAME + { + OthersMayUpdateColumn: true + ValueType: String + } + EDIODBCLinkColumn TARGETUNITOFMEASURENAME + { + OthersMayUpdateColumn: true + ValueType: String + } + } + } + EDITransformation.Transformation Transformation3 + { + EDITableTransformation + { + InputTable: MID_BASECONVERSIONFACTORS + OutputTable: Global_MappingConversionFactor + EDIColumnMatch { InputColumn: FACTOR OutputColumn: Factor } + EDIColumnMatch { InputColumn: ISENABLED OutputColumn: IsEnabled } + EDIColumnMatch { InputColumn: PRODUCTID OutputColumn: ProductID } + EDIColumnMatch { InputColumn: SOURCEUNITOFMEASURENAME OutputColumn: SourceUnitOfMeasureName } + EDIColumnMatch { InputColumn: TARGETUNITOFMEASURENAME OutputColumn: TargetUnitOfMeasureName } + } + } +} diff --git a/_Main/BL/EDI/Broker_GlobalOTDTable_Product_MP.qbl b/_Main/BL/EDI/Broker_GlobalOTDTable_Product_MP.qbl new file mode 100644 index 0000000..5ff2900 --- /dev/null +++ b/_Main/BL/EDI/Broker_GlobalOTDTable_Product_MP.qbl @@ -0,0 +1,169 @@ +Quintiq file version 2.0 +#parent: #root +EDIBroker GlobalOTDTable_Product_MP +{ + MDSDefinition: GlobalOTDTable + TimeZone: 'ACT' + UseOSTimeZone: false + EDIModelLink.Destination Destination3 + { + EDIMLTable Global_MappingProduct_MP + { + PrimaryKeyColumns: BusinessType + PrimaryKeyColumns: ID + TargetType: Global_MappingProduct_MP + TypeIndex: TypeIndexIDAndBusinessType + EDIMLColumn BusinessType { Attribute: BusinessType ValueType: String } + EDIMLColumn CommonBusiness { Attribute: CommonBusiness ValueType: String } + EDIMLColumn EndDate { Attribute: EndDate ValueType: Date } + EDIMLColumn ID { Attribute: ID ValueType: String } + EDIMLColumn IsCommon { Attribute: IsCommon ValueType: Boolean } + EDIMLColumn KeyProduct { Attribute: KeyProduct ValueType: Boolean } + EDIMLColumn Name { Attribute: Name ValueType: String } + EDIMLColumn Notes { Attribute: Notes ValueType: String } + EDIMLColumn ProductMajorType { Attribute: ProductMajorType ValueType: String } + EDIMLColumn ProductSubclassType { Attribute: ProductSubclassType ValueType: String } + EDIMLColumn ShelfLife { Attribute: ShelfLife ValueType: Real } + EDIMLColumn UnitOfMeasureName { Attribute: UnitOfMeasureName ValueType: String } + } + } + EDIODBCLink.Source Source2 + { + DataIntegrityStrategy: 'Disabled' + SettingsEngineLink: 'domainmodel.ediremotedatasourcedefinition.remotestorage.oracle' + EDIODBCLinkTable MID_PRODUCT + { + OthersMayCreateTable: true + OthersMayDeleteRow: true + OthersMayDropTable: true + OthersMayFlushTable: true + OthersMayInsertRow: true + Parameters: '/owner="OTD"' + PrimaryKeyColumns: BUSINESSTYPE + PrimaryKeyColumns: ID + RecordModificationHintStrategy: 'None' + EDIODBCLinkColumn BUSINESSTYPE + { + OthersMayUpdateColumn: true + ValueType: String + } + EDIODBCLinkColumn COMMONBUSINESS + { + OthersMayUpdateColumn: true + ValueType: String + } + EDIODBCLinkColumn COST + { + OthersMayUpdateColumn: true + ValueType: Real + } + EDIODBCLinkColumn ENDDATE + { + OthersMayUpdateColumn: true + ValueType: DateTime + } + EDIODBCLinkColumn ID + { + OthersMayUpdateColumn: true + ValueType: String + } + EDIODBCLinkColumn INTEGRATIONDEGREE + { + OthersMayUpdateColumn: true + ValueType: Real + } + EDIODBCLinkColumn ISCOMMON + { + OthersMayUpdateColumn: true + ValueType: String + } + EDIODBCLinkColumn KEYPRODUCT + { + OthersMayUpdateColumn: true + ValueType: String + } + EDIODBCLinkColumn MATERIALFLAG1 + { + OthersMayUpdateColumn: true + ValueType: String + } + EDIODBCLinkColumn MATERIALFLAG2 + { + OthersMayUpdateColumn: true + ValueType: String + } + EDIODBCLinkColumn NAME + { + OthersMayUpdateColumn: true + ValueType: String + } + EDIODBCLinkColumn NOTE + { + OthersMayUpdateColumn: true + ValueType: String + } + EDIODBCLinkColumn NUMBEROFLAYOUTS + { + OthersMayUpdateColumn: true + ValueType: Real + } + EDIODBCLinkColumn PRODUCTMAJORTYPE + { + OthersMayUpdateColumn: true + ValueType: String + } + EDIODBCLinkColumn PRODUCTSUBCLASSTYPE + { + OthersMayUpdateColumn: true + ValueType: String + } + EDIODBCLinkColumn SHELFLIFE + { + OthersMayUpdateColumn: true + ValueType: Real + } + EDIODBCLinkColumn UNITOFMEAURENAME + { + OthersMayUpdateColumn: true + ValueType: String + } + } + } + EDITransformation.Transformation Transformation2 + { + EDITableTransformation + { + InputTable: MID_PRODUCT + OutputTable: Global_MappingProduct_MP + EDIColumnMatch { InputColumn: BUSINESSTYPE OutputColumn: BusinessType } + EDIColumnMatch { InputColumn: COMMONBUSINESS OutputColumn: CommonBusiness } + EDIColumnMatch + { + InputColumn: ENDDATE + OutputColumn: EndDate + Converter + { + XMLDefinition: + [* + <?xml version="1.0" encoding="UTF-16"?> + <DateTimeToDate xmlns="http://www.quintiq.com/GEB/DateTimeToDate" Key="@1"> + <IsStandard>true</IsStandard> + <IsISO>false</IsISO> + <IsCustom>false</IsCustom> + <ConversionType>0</ConversionType> + </DateTimeToDate> + *] + } + } + EDIColumnMatch { InputColumn: ID OutputColumn: ID } + EDIColumnMatch { InputColumn: ISCOMMON OutputColumn: IsCommon } + EDIColumnMatch { InputColumn: KEYPRODUCT OutputColumn: KeyProduct } + EDIColumnMatch { InputColumn: NAME OutputColumn: Name } + EDIColumnMatch { InputColumn: NOTE OutputColumn: Notes } + EDIColumnMatch { InputColumn: PRODUCTMAJORTYPE OutputColumn: ProductMajorType } + EDIColumnMatch { InputColumn: PRODUCTSUBCLASSTYPE OutputColumn: ProductSubclassType } + EDIColumnMatch { InputColumn: SHELFLIFE OutputColumn: ShelfLife } + EDIColumnMatch { InputColumn: UNITOFMEAURENAME OutputColumn: UnitOfMeasureName } + } + } +} diff --git a/_Main/BL/EDI/Broker_GlobalOTDTable_SalesSegment_MP.qbl b/_Main/BL/EDI/Broker_GlobalOTDTable_SalesSegment_MP.qbl new file mode 100644 index 0000000..26442e4 --- /dev/null +++ b/_Main/BL/EDI/Broker_GlobalOTDTable_SalesSegment_MP.qbl @@ -0,0 +1,92 @@ +Quintiq file version 2.0 +#parent: #root +EDIBroker GlobalOTDTable_SalesSegment_MP +{ + MDSDefinition: GlobalOTDTable + TimeZone: 'ACT' + UseOSTimeZone: false + EDIModelLink.Destination Destination2 + { + EDIMLTable Global_MappingSalesSegment_MP + { + PrimaryKeyColumns: BusinessType + PrimaryKeyColumns: Name + TargetType: Global_MappingSalesSegment_MP + TypeIndex: TypeIndexBusinessTypeAndName + EDIMLColumn BusinessType { Attribute: BusinessType ValueType: String } + EDIMLColumn DisplayIndex { Attribute: DisplayIndex ValueType: Number } + EDIMLColumn Name { Attribute: Name ValueType: String } + EDIMLColumn ParentName { Attribute: ParentName ValueType: String } + } + } + EDIODBCLink.Source Source1 + { + DataIntegrityStrategy: 'Disabled' + SettingsEngineLink: 'domainmodel.ediremotedatasourcedefinition.remotestorage.oracle' + EDIODBCLinkTable MID_SALESSEGMENT + { + OthersMayCreateTable: true + OthersMayDeleteRow: true + OthersMayDropTable: true + OthersMayFlushTable: true + OthersMayInsertRow: true + Parameters: '/owner="OTD"' + PrimaryKeyColumns: BUSINESSTYPE + PrimaryKeyColumns: NAME + RecordModificationHintStrategy: 'None' + EDIODBCLinkColumn BUSINESSTYPE + { + OthersMayUpdateColumn: true + ValueType: String + } + EDIODBCLinkColumn DISPLAYINDEX + { + OthersMayUpdateColumn: true + ValueType: String + } + EDIODBCLinkColumn NAME + { + OthersMayUpdateColumn: true + ValueType: String + } + EDIODBCLinkColumn PARENTNAME + { + OthersMayUpdateColumn: true + ValueType: String + } + } + } + EDITransformation.Transformation Transformation1 + { + EDITableTransformation + { + InputTable: MID_SALESSEGMENT + OutputTable: Global_MappingSalesSegment_MP + EDIColumnMatch { InputColumn: BUSINESSTYPE OutputColumn: BusinessType } + EDIColumnMatch + { + InputColumn: DISPLAYINDEX + OutputColumn: DisplayIndex + Converter + { + XMLDefinition: + [* + <?xml version="1.0" encoding="UTF-16"?> + <StringToNumber xmlns="http://www.quintiq.com/GEB/StringToNumber" Key="@1"> + <IsStandard>true</IsStandard> + <IsISO>false</IsISO> + <IsCustom>false</IsCustom> + <ConversionType>0</ConversionType> + <NumericFormatString>Standard</NumericFormatString> + <LocaleString>Chinese (China)</LocaleString> + <CurrencyString></CurrencyString> + <CustomFormatString></CustomFormatString> + </StringToNumber> + *] + } + } + EDIColumnMatch { InputColumn: NAME OutputColumn: Name } + EDIColumnMatch { InputColumn: PARENTNAME OutputColumn: ParentName } + } + } +} diff --git a/_Main/BL/EDI/Broker_GlobalOTDTable_UnitOfMeasure_MP.qbl b/_Main/BL/EDI/Broker_GlobalOTDTable_UnitOfMeasure_MP.qbl new file mode 100644 index 0000000..2311cb5 --- /dev/null +++ b/_Main/BL/EDI/Broker_GlobalOTDTable_UnitOfMeasure_MP.qbl @@ -0,0 +1,55 @@ +Quintiq file version 2.0 +#parent: #root +EDIBroker GlobalOTDTable_UnitOfMeasure_MP +{ + MDSDefinition: GlobalOTDTable + TimeZone: 'ACT' + UseOSTimeZone: false + EDIModelLink.Destination Destination1 + { + EDIMLTable Global_MappingUnitOfMeasure_MP + { + PrimaryKeyColumns: Name + TargetType: Global_MappingUnitOfMeasure_MP + TypeIndex: TypeIndexName + EDIMLColumn IsDefault { Attribute: IsDefault ValueType: Boolean } + EDIMLColumn Name { Attribute: Name ValueType: String } + } + } + EDIODBCLink.Source Source + { + DataIntegrityStrategy: 'Disabled' + SettingsEngineLink: 'domainmodel.ediremotedatasourcedefinition.remotestorage.oracle' + EDIODBCLinkTable MID_UNITOFMEASURES + { + OthersMayCreateTable: true + OthersMayDeleteRow: true + OthersMayDropTable: true + OthersMayFlushTable: true + OthersMayInsertRow: true + Parameters: '/owner="OTD"' + PrimaryKeyColumns: NAME + RecordModificationHintStrategy: 'None' + EDIODBCLinkColumn ISDEFAULT + { + OthersMayUpdateColumn: true + ValueType: String + } + EDIODBCLinkColumn NAME + { + OthersMayUpdateColumn: true + ValueType: String + } + } + } + EDITransformation.Transformation Transformation0 + { + EDITableTransformation + { + InputTable: MID_UNITOFMEASURES + OutputTable: Global_MappingUnitOfMeasure_MP + EDIColumnMatch { InputColumn: ISDEFAULT OutputColumn: IsDefault } + EDIColumnMatch { InputColumn: NAME OutputColumn: Name } + } + } +} diff --git a/_Main/BL/Relations/Relation_GlobalOTDTable_Global_MappingConversionFactor_Global_MappingConvers.qbl b/_Main/BL/Relations/Relation_GlobalOTDTable_Global_MappingConversionFactor_Global_MappingConvers.qbl new file mode 100644 index 0000000..9f0aefd --- /dev/null +++ b/_Main/BL/Relations/Relation_GlobalOTDTable_Global_MappingConversionFactor_Global_MappingConvers.qbl @@ -0,0 +1,23 @@ +Quintiq file version 2.0 +#parent: #root +Relation GlobalOTDTable_Global_MappingConversionFactor_Global_MappingConversionFactor_GlobalOTDTable +{ + #keys: '1[414702.0.247716835]' + DefaultRelationStrategy + { + } + RelationSide.LeftSide Global_MappingConversionFactor + { + #keys: '3[414702.0.247716837][414702.0.247716836][414702.0.247716838]' + Cardinality: '1toN' + ObjectDefinition: GlobalOTDTable + OwningSide: 'Owned' + } + RelationSide.RightSide GlobalOTDTable + { + #keys: '3[414702.0.247716840][414702.0.247716839][414702.0.247716841]' + Cardinality: '0to1' + ObjectDefinition: Global_MappingConversionFactor + OwningSide: 'Reference' + } +} diff --git a/_Main/BL/Relations/Relation_GlobalOTDTable_Global_MappingCurrencyRate_MP_Global_MappingCurrency.qbl b/_Main/BL/Relations/Relation_GlobalOTDTable_Global_MappingCurrencyRate_MP_Global_MappingCurrency.qbl new file mode 100644 index 0000000..e3219cd --- /dev/null +++ b/_Main/BL/Relations/Relation_GlobalOTDTable_Global_MappingCurrencyRate_MP_Global_MappingCurrency.qbl @@ -0,0 +1,23 @@ +Quintiq file version 2.0 +#parent: #root +Relation GlobalOTDTable_Global_MappingCurrencyRate_MP_Global_MappingCurrencyRate_MP_GlobalOTDTable +{ + #keys: '1[414702.0.247665116]' + DefaultRelationStrategy + { + } + RelationSide.LeftSide Global_MappingCurrencyRate_MP + { + #keys: '3[414702.0.247665118][414702.0.247665117][414702.0.247665119]' + Cardinality: '1toN' + ObjectDefinition: GlobalOTDTable + OwningSide: 'Owned' + } + RelationSide.RightSide GlobalOTDTable + { + #keys: '3[414702.0.247665121][414702.0.247665120][414702.0.247665122]' + Cardinality: '0to1' + ObjectDefinition: Global_MappingCurrencyRate_MP + OwningSide: 'Reference' + } +} diff --git a/_Main/BL/Relations/Relation_GlobalOTDTable_Global_MappingCurrency_MP_Global_MappingCurrency_MP_.qbl b/_Main/BL/Relations/Relation_GlobalOTDTable_Global_MappingCurrency_MP_Global_MappingCurrency_MP_.qbl new file mode 100644 index 0000000..fdfa37e --- /dev/null +++ b/_Main/BL/Relations/Relation_GlobalOTDTable_Global_MappingCurrency_MP_Global_MappingCurrency_MP_.qbl @@ -0,0 +1,23 @@ +Quintiq file version 2.0 +#parent: #root +Relation GlobalOTDTable_Global_MappingCurrency_MP_Global_MappingCurrency_MP_GlobalOTDTable +{ + #keys: '1[414702.0.247705877]' + DefaultRelationStrategy + { + } + RelationSide.LeftSide Global_MappingCurrency_MP + { + #keys: '3[414702.0.247705879][414702.0.247705878][414702.0.247705880]' + Cardinality: '1toN' + ObjectDefinition: GlobalOTDTable + OwningSide: 'Owned' + } + RelationSide.RightSide GlobalOTDTable + { + #keys: '3[414702.0.247705882][414702.0.247705881][414702.0.247705883]' + Cardinality: '0to1' + ObjectDefinition: Global_MappingCurrency_MP + OwningSide: 'Reference' + } +} diff --git a/_Main/BL/Relations/Relation_GlobalOTDTable_Global_MappingProduct_MP_Global_MappingProduct_MP_Gl.qbl b/_Main/BL/Relations/Relation_GlobalOTDTable_Global_MappingProduct_MP_Global_MappingProduct_MP_Gl.qbl new file mode 100644 index 0000000..3b3a458 --- /dev/null +++ b/_Main/BL/Relations/Relation_GlobalOTDTable_Global_MappingProduct_MP_Global_MappingProduct_MP_Gl.qbl @@ -0,0 +1,23 @@ +Quintiq file version 2.0 +#parent: #root +Relation GlobalOTDTable_Global_MappingProduct_MP_Global_MappingProduct_MP_GlobalOTDTable +{ + #keys: '1[414702.0.247665570]' + DefaultRelationStrategy + { + } + RelationSide.LeftSide Global_MappingProduct_MP + { + #keys: '3[414702.0.247665572][414702.0.247665571][414702.0.247665573]' + Cardinality: '1toN' + ObjectDefinition: GlobalOTDTable + OwningSide: 'Owned' + } + RelationSide.RightSide GlobalOTDTable + { + #keys: '3[414702.0.247665575][414702.0.247665574][414702.0.247665576]' + Cardinality: '0to1' + ObjectDefinition: Global_MappingProduct_MP + OwningSide: 'Reference' + } +} diff --git a/_Main/BL/Relations/Relation_GlobalOTDTable_Global_MappingSalesSegment_MP_Global_MappingSalesSeg.qbl b/_Main/BL/Relations/Relation_GlobalOTDTable_Global_MappingSalesSegment_MP_Global_MappingSalesSeg.qbl new file mode 100644 index 0000000..47895e9 --- /dev/null +++ b/_Main/BL/Relations/Relation_GlobalOTDTable_Global_MappingSalesSegment_MP_Global_MappingSalesSeg.qbl @@ -0,0 +1,23 @@ +Quintiq file version 2.0 +#parent: #root +Relation GlobalOTDTable_Global_MappingSalesSegment_MP_Global_MappingSalesSegment_MP_GlobalOTDTable +{ + #keys: '1[414702.0.238159190]' + DefaultRelationStrategy + { + } + RelationSide.LeftSide Global_MappingSalesSegment_MP + { + #keys: '3[414702.0.238159192][414702.0.238159191][414702.0.238159193]' + Cardinality: '1toN' + ObjectDefinition: GlobalOTDTable + OwningSide: 'Owned' + } + RelationSide.RightSide GlobalOTDTable + { + #keys: '3[414702.0.238159195][414702.0.238159194][414702.0.238159196]' + Cardinality: '0to1' + ObjectDefinition: Global_MappingSalesSegment_MP + OwningSide: 'Reference' + } +} diff --git a/_Main/BL/Relations/Relation_GlobalOTDTable_Global_MappingStockingPoint_MP_Global_MappingStockin.qbl b/_Main/BL/Relations/Relation_GlobalOTDTable_Global_MappingStockingPoint_MP_Global_MappingStockin.qbl new file mode 100644 index 0000000..3861954 --- /dev/null +++ b/_Main/BL/Relations/Relation_GlobalOTDTable_Global_MappingStockingPoint_MP_Global_MappingStockin.qbl @@ -0,0 +1,23 @@ +Quintiq file version 2.0 +#parent: #root +Relation GlobalOTDTable_Global_MappingStockingPoint_MP_Global_MappingStockingPoint_MP_GlobalOTDTable +{ + #keys: '1[414702.0.239762044]' + DefaultRelationStrategy + { + } + RelationSide.LeftSide Global_MappingStockingPoint_MP + { + #keys: '3[414702.0.239762046][414702.0.239762045][414702.0.239762047]' + Cardinality: '1toN' + ObjectDefinition: GlobalOTDTable + OwningSide: 'Owned' + } + RelationSide.RightSide GlobalOTDTable + { + #keys: '3[414702.0.239762049][414702.0.239762048][414702.0.239762050]' + Cardinality: '0to1' + ObjectDefinition: Global_MappingStockingPoint_MP + OwningSide: 'Reference' + } +} diff --git a/_Main/BL/Relations/Relation_GlobalOTDTable_Global_MappingUnitOfMeasure_MP_Global_MappingUnitOfM.qbl b/_Main/BL/Relations/Relation_GlobalOTDTable_Global_MappingUnitOfMeasure_MP_Global_MappingUnitOfM.qbl new file mode 100644 index 0000000..a312b2f --- /dev/null +++ b/_Main/BL/Relations/Relation_GlobalOTDTable_Global_MappingUnitOfMeasure_MP_Global_MappingUnitOfM.qbl @@ -0,0 +1,23 @@ +Quintiq file version 2.0 +#parent: #root +Relation GlobalOTDTable_Global_MappingUnitOfMeasure_MP_Global_MappingUnitOfMeasure_MP_GlobalOTDTable +{ + #keys: '1[414702.0.238140119]' + DefaultRelationStrategy + { + } + RelationSide.LeftSide Global_MappingUnitOfMeasure_MP + { + #keys: '3[414702.0.238140121][414702.0.238140120][414702.0.238140122]' + Cardinality: '1toN' + ObjectDefinition: GlobalOTDTable + OwningSide: 'Owned' + } + RelationSide.RightSide GlobalOTDTable + { + #keys: '3[414702.0.238140124][414702.0.238140123][414702.0.238140125]' + Cardinality: '0to1' + ObjectDefinition: Global_MappingUnitOfMeasure_MP + OwningSide: 'Reference' + } +} diff --git a/_Main/BL/Type_GlobalDTOTable/Method_ApiBuildPostRequestBody.qbl b/_Main/BL/Type_GlobalDTOTable/Method_ApiBuildPostRequestBody.qbl new file mode 100644 index 0000000..d7970e3 --- /dev/null +++ b/_Main/BL/Type_GlobalDTOTable/Method_ApiBuildPostRequestBody.qbl @@ -0,0 +1,27 @@ +Quintiq file version 2.0 +#parent: #root +Method ApiBuildPostRequestBody ( + String bodynumber +) as String +{ + TextBody: + [* + // Administrator Aug-18-2023 (created) + + postrequestbody := JSON::Object() + .Add( "serviceInterfaceCode", "ESBOTDH000" + bodynumber ) + .Add( "fromSystemCode", "OTDH000" + bodynumber ) + .Add( "toInterfaceCode", "QIDH000" + bodynumber ) + .Add( "ouZone", "OU_TMSH" ) + .Add( "uuid", "1617355496bb588e353e80147eea5f45" ) + .Add( "requestTime", DateTime::Now().Format( "Y-M2-D2 H:m:s" ) ) + .Add( "dataType", "JSON" ) + .Add( "data", JSON::Object() + .Add( "pageIndex", "1" ) ).Build(); + + info( DateTime::Now().Format( "Y-M2-D2 H:m:s" ) ); + postrequestbodystring := postrequestbody.AsString(); + + return postrequestbodystring; + *] +} diff --git a/_Main/BL/Type_GlobalDTOTable/StaticMethod_SynchronizationAllMappingBrokerAndAPI.qbl b/_Main/BL/Type_GlobalDTOTable/StaticMethod_SynchronizationAllMappingBrokerAndAPI.qbl new file mode 100644 index 0000000..65c9dda --- /dev/null +++ b/_Main/BL/Type_GlobalDTOTable/StaticMethod_SynchronizationAllMappingBrokerAndAPI.qbl @@ -0,0 +1,24 @@ +Quintiq file version 2.0 +#parent: #root +StaticMethod SynchronizationAllMappingBrokerAndAPI ( + MacroPlan macroPlan, + GlobalOTDTable globalOTDTable +) +{ + TextBody: + [* + //globalOTDTable.GlobalOTDTable_UnitOfMeasure_MP().Execute(); + + //globalOTDTable.GlobalOTDTable_SalesSegment_MP().Execute(); + + //Global_MappingStockingPoint_MP::CreateByAPI( globalOTDTable ); + + //Global_MappingCurrency_MP::CreateByAPI( globalOTDTable ); + + //Global_MappingCurrencyRate_MP::CreateByAPI( globalOTDTable ); + + //globalOTDTable.GlobalOTDTable_Product_MP().Execute(); + + //globalOTDTable.GlobalOTDTable_ConversionFactor().Execute(); + *] +} diff --git a/_Main/BL/Type_GlobalDTOTable/StaticMethod_SynchronizationSalesSegment_MP.qbl b/_Main/BL/Type_GlobalDTOTable/StaticMethod_SynchronizationSalesSegment_MP.qbl new file mode 100644 index 0000000..01a32c3 --- /dev/null +++ b/_Main/BL/Type_GlobalDTOTable/StaticMethod_SynchronizationSalesSegment_MP.qbl @@ -0,0 +1,31 @@ +Quintiq file version 2.0 +#parent: #root +StaticMethod SynchronizationSalesSegment_MP ( + MacroPlan macroPlan, + GlobalOTDTable globalOTDTable, + Strings businessTypes +) +{ + TextBody: + [* + businessType := businessTypes.Element( 0 ); + + targetGlobal_MappingSalesSegment_MPs := selectsortedset( globalOTDTable, + Global_MappingSalesSegment_MP, + tempGMSSMP, + tempGMSSMP.BusinessType() = businessType, + tempGMSSMP.DisplayIndex() + ); + + maxLevel := 0; + traverse ( targetGlobal_MappingSalesSegment_MPs, Elements, gmssmp ) { + targetParentSalesSegment_MP := select( macroPlan, SalesSegment_MP, tempSSMP, tempSSMP.Name() = gmssmp.ParentName() ); + SalesSegment_MP::Create( macroPlan, targetParentSalesSegment_MP, gmssmp.Name(), gmssmp.DisplayIndex(), false ); + maxLevel := maxvalue( maxLevel, gmssmp.DisplayIndex() ); + } + + for ( i := 1; i <= maxLevel; i++ ) { + SalesLevel_MP::Create( [String]i, macroPlan, false ); + } + *] +} diff --git a/_Main/BL/Type_GlobalDTOTable/StaticMethod_SynchronizationStockingPoint_MP.qbl b/_Main/BL/Type_GlobalDTOTable/StaticMethod_SynchronizationStockingPoint_MP.qbl new file mode 100644 index 0000000..d933711 --- /dev/null +++ b/_Main/BL/Type_GlobalDTOTable/StaticMethod_SynchronizationStockingPoint_MP.qbl @@ -0,0 +1,8 @@ +Quintiq file version 2.0 +#parent: #root +StaticMethod SynchronizationStockingPoint_MP ( + MacroPlan macroPlan, + GlobalOTDTable globalOTDTable +) +{ +} diff --git a/_Main/BL/Type_GlobalDTOTable/StaticMethod_SynchronizationUnitOfMeasure_MP.qbl b/_Main/BL/Type_GlobalDTOTable/StaticMethod_SynchronizationUnitOfMeasure_MP.qbl new file mode 100644 index 0000000..d4805bf --- /dev/null +++ b/_Main/BL/Type_GlobalDTOTable/StaticMethod_SynchronizationUnitOfMeasure_MP.qbl @@ -0,0 +1,23 @@ +Quintiq file version 2.0 +#parent: #root +StaticMethod SynchronizationUnitOfMeasure_MP ( + MacroPlan macroPlan, + GlobalOTDTable globalOTDTable +) +{ + TextBody: + [* + info( "鍒濆鍖栧畬鎴�, 寮�濮嬫墽琛� UnitOfMeasure_MP Data Broker" ); + //globalOTDTable.GlobalOTDTable_UnitOfMeasure_MP().Execute(); + + info( "UnitOfMeasure_MP Data Broker 鎵ц瀹屾垚, Start UnitOfMeasure_MP Mapping" ) + traverse ( globalOTDTable, Global_MappingUnitOfMeasure_MP, tempGMUOMMP, true ) { + if ( isnull( UnitOfMeasure_MP::FindByName( macroPlan, tempGMUOMMP.Name() ) ) ) { + targetUnitOfMeasure_MP := UnitOfMeasure_MP::Create( macroPlan, tempGMUOMMP.Name(), false, false ); + if ( tempGMUOMMP.IsDefault() ) { + targetUnitOfMeasure_MP.SetAsDefault(); + } + } + } + *] +} diff --git a/_Main/BL/Type_Global_MappingConversionFactor/Attribute_Factor.qbl b/_Main/BL/Type_Global_MappingConversionFactor/Attribute_Factor.qbl new file mode 100644 index 0000000..cad933e --- /dev/null +++ b/_Main/BL/Type_Global_MappingConversionFactor/Attribute_Factor.qbl @@ -0,0 +1,7 @@ +Quintiq file version 2.0 +#parent: #root +Attribute Factor +{ + #keys: '3[414702.0.247716851][414702.0.247716850][414702.0.247716852]' + ValueType: Real +} diff --git a/_Main/BL/Type_Global_MappingConversionFactor/Attribute_IsEnabled.qbl b/_Main/BL/Type_Global_MappingConversionFactor/Attribute_IsEnabled.qbl new file mode 100644 index 0000000..74bd9eb --- /dev/null +++ b/_Main/BL/Type_Global_MappingConversionFactor/Attribute_IsEnabled.qbl @@ -0,0 +1,8 @@ +Quintiq file version 2.0 +#parent: #root +Attribute IsEnabled +{ + #keys: '3[414702.0.247716861][414702.0.247716860][414702.0.247716862]' + IsReadOnly: true + ValueType: Boolean +} diff --git a/_Main/BL/Type_Global_MappingConversionFactor/Attribute_ProductID.qbl b/_Main/BL/Type_Global_MappingConversionFactor/Attribute_ProductID.qbl new file mode 100644 index 0000000..ffb1677 --- /dev/null +++ b/_Main/BL/Type_Global_MappingConversionFactor/Attribute_ProductID.qbl @@ -0,0 +1,8 @@ +Quintiq file version 2.0 +#parent: #root +Attribute ProductID +{ + #keys: '3[414702.0.247716871][414702.0.247716870][414702.0.247716872]' + IsReadOnly: true + ValueType: String +} diff --git a/_Main/BL/Type_Global_MappingConversionFactor/Attribute_SourceUnitOfMeasureName.qbl b/_Main/BL/Type_Global_MappingConversionFactor/Attribute_SourceUnitOfMeasureName.qbl new file mode 100644 index 0000000..547cf24 --- /dev/null +++ b/_Main/BL/Type_Global_MappingConversionFactor/Attribute_SourceUnitOfMeasureName.qbl @@ -0,0 +1,8 @@ +Quintiq file version 2.0 +#parent: #root +Attribute SourceUnitOfMeasureName +{ + #keys: '3[414702.0.247716881][414702.0.247716880][414702.0.247716882]' + IsReadOnly: true + ValueType: String +} diff --git a/_Main/BL/Type_Global_MappingConversionFactor/Attribute_TargetUnitOfMeasureName.qbl b/_Main/BL/Type_Global_MappingConversionFactor/Attribute_TargetUnitOfMeasureName.qbl new file mode 100644 index 0000000..9ef2e49 --- /dev/null +++ b/_Main/BL/Type_Global_MappingConversionFactor/Attribute_TargetUnitOfMeasureName.qbl @@ -0,0 +1,8 @@ +Quintiq file version 2.0 +#parent: #root +Attribute TargetUnitOfMeasureName +{ + #keys: '3[414702.0.247716891][414702.0.247716890][414702.0.247716892]' + IsReadOnly: true + ValueType: String +} diff --git a/_Main/BL/Type_Global_MappingConversionFactor/TypeIndex_TypeIndex.qbl b/_Main/BL/Type_Global_MappingConversionFactor/TypeIndex_TypeIndex.qbl new file mode 100644 index 0000000..370a05f --- /dev/null +++ b/_Main/BL/Type_Global_MappingConversionFactor/TypeIndex_TypeIndex.qbl @@ -0,0 +1,24 @@ +Quintiq file version 2.0 +#parent: #root +TypeIndex TypeIndex +{ + Attributes: + [ + TypeIndexAttribute + { + ModelElement: IsEnabled + } + TypeIndexAttribute + { + ModelElement: ProductID + } + TypeIndexAttribute + { + ModelElement: SourceUnitOfMeasureName + } + TypeIndexAttribute + { + ModelElement: TargetUnitOfMeasureName + } + ] +} diff --git a/_Main/BL/Type_Global_MappingConversionFactor/_ROOT_Type_Global_MappingConversionFactor.qbl b/_Main/BL/Type_Global_MappingConversionFactor/_ROOT_Type_Global_MappingConversionFactor.qbl new file mode 100644 index 0000000..3d26d6d --- /dev/null +++ b/_Main/BL/Type_Global_MappingConversionFactor/_ROOT_Type_Global_MappingConversionFactor.qbl @@ -0,0 +1,9 @@ +Quintiq file version 2.0 +#root +#parent: #DomainModel +Type Global_MappingConversionFactor +{ + #keys: '5[414702.0.247716832][414702.0.247716830][0.0.0][414702.0.247716831][414702.0.247716833]' + BaseType: Object + StructuredName: 'Global_MappingConversionFactors' +} diff --git a/_Main/BL/Type_Global_MappingCurrencyRate_MP/Attribute_CurrencyID.qbl b/_Main/BL/Type_Global_MappingCurrencyRate_MP/Attribute_CurrencyID.qbl new file mode 100644 index 0000000..70588bf --- /dev/null +++ b/_Main/BL/Type_Global_MappingCurrencyRate_MP/Attribute_CurrencyID.qbl @@ -0,0 +1,7 @@ +Quintiq file version 2.0 +#parent: #root +Attribute CurrencyID +{ + #keys: '3[414702.0.247706552][414702.0.247706551][414702.0.247706553]' + ValueType: String +} diff --git a/_Main/BL/Type_Global_MappingCurrencyRate_MP/Attribute_Rate.qbl b/_Main/BL/Type_Global_MappingCurrencyRate_MP/Attribute_Rate.qbl new file mode 100644 index 0000000..a601632 --- /dev/null +++ b/_Main/BL/Type_Global_MappingCurrencyRate_MP/Attribute_Rate.qbl @@ -0,0 +1,7 @@ +Quintiq file version 2.0 +#parent: #root +Attribute Rate +{ + #keys: '3[414702.0.247706562][414702.0.247706561][414702.0.247706563]' + ValueType: Real +} diff --git a/_Main/BL/Type_Global_MappingCurrencyRate_MP/Attribute_Start.qbl b/_Main/BL/Type_Global_MappingCurrencyRate_MP/Attribute_Start.qbl new file mode 100644 index 0000000..0300fcf --- /dev/null +++ b/_Main/BL/Type_Global_MappingCurrencyRate_MP/Attribute_Start.qbl @@ -0,0 +1,7 @@ +Quintiq file version 2.0 +#parent: #root +Attribute Start +{ + #keys: '3[414702.0.247706575][414702.0.247706574][414702.0.247706576]' + ValueType: Date +} diff --git a/_Main/BL/Type_Global_MappingCurrencyRate_MP/StaticMethod_CreateByAPI.qbl b/_Main/BL/Type_Global_MappingCurrencyRate_MP/StaticMethod_CreateByAPI.qbl new file mode 100644 index 0000000..b927816 --- /dev/null +++ b/_Main/BL/Type_Global_MappingCurrencyRate_MP/StaticMethod_CreateByAPI.qbl @@ -0,0 +1,41 @@ +Quintiq file version 2.0 +#parent: #root +StaticMethod CreateByAPI ( + GlobalOTDTable globalOTDTable +) +{ + TextBody: + [* + globalOTDTable.Global_MappingCurrencyRate_MP( relflush ); + + bodynumber := "5"; + postrequestbody := globalOTDTable.ApiBuildPostRequestBody( bodynumber ); + address := "api-uat-sgc.tianma.cn"; + url := "/otdService/https/GetCurrencyRatesInfo"; + port := 443; + i := HTTPInterface::Create( address, port); + i.URL( url ); + i.SSL( true ); + i.SSLKeystore( "MyKeystore" ); + i.PostMethod( true ); //it's a POST method + + i.Call( postrequestbody ); // Call's argument is for POST method's content. + htmlresult := i.Result(); + + htmlresponse := JSON::Parse( htmlresult ); + reponseDataJson := htmlresponse.Get( "responseData" ); + datalist := reponseDataJson.Get( "dataList" ); + + cnv2 := StringToDate::StandardConverter(); + cnv2.SetCustomConversion(); + cnv2.CustomFormatString( 'yyyy-MM-dd' ); + total := datalist.Size(); + for ( j := 0; j < total; j++ ) { + globalOTDTable.Global_MappingCurrencyRate_MP( relnew, + CurrencyID := guard( datalist.Get( j ).Get( "currencyid" ).GetString(), "" ), + Rate := guard( [Real]datalist.Get( j ).Get( "rate" ).GetString(), 0.0 ), + Start := guard( cnv2.Convert( datalist.Get( j ).Get( "start" ).GetString() ), Date::MinDate() ) + ); + } + *] +} diff --git a/_Main/BL/Type_Global_MappingCurrencyRate_MP/_ROOT_Type_Global_MappingCurrencyRate_MP.qbl b/_Main/BL/Type_Global_MappingCurrencyRate_MP/_ROOT_Type_Global_MappingCurrencyRate_MP.qbl new file mode 100644 index 0000000..95c9609 --- /dev/null +++ b/_Main/BL/Type_Global_MappingCurrencyRate_MP/_ROOT_Type_Global_MappingCurrencyRate_MP.qbl @@ -0,0 +1,9 @@ +Quintiq file version 2.0 +#root +#parent: #DomainModel +Type Global_MappingCurrencyRate_MP +{ + #keys: '5[414702.0.247665113][414702.0.247665111][0.0.0][414702.0.247665112][414702.0.247665114]' + BaseType: Object + StructuredName: 'Global_MappingCurrencyRate_MPs' +} diff --git a/_Main/BL/Type_Global_MappingCurrency_MP/Attribute_ID.qbl b/_Main/BL/Type_Global_MappingCurrency_MP/Attribute_ID.qbl new file mode 100644 index 0000000..1ffa886 --- /dev/null +++ b/_Main/BL/Type_Global_MappingCurrency_MP/Attribute_ID.qbl @@ -0,0 +1,7 @@ +Quintiq file version 2.0 +#parent: #root +Attribute ID +{ + #keys: '3[414702.0.247705924][414702.0.247705923][414702.0.247705925]' + ValueType: String +} diff --git a/_Main/BL/Type_Global_MappingCurrency_MP/Attribute_IsBase.qbl b/_Main/BL/Type_Global_MappingCurrency_MP/Attribute_IsBase.qbl new file mode 100644 index 0000000..ec6c69b --- /dev/null +++ b/_Main/BL/Type_Global_MappingCurrency_MP/Attribute_IsBase.qbl @@ -0,0 +1,7 @@ +Quintiq file version 2.0 +#parent: #root +Attribute IsBase +{ + #keys: '3[414702.0.247664837][414702.0.247664836][414702.0.247664838]' + ValueType: Boolean +} diff --git a/_Main/BL/Type_Global_MappingCurrency_MP/Attribute_Name.qbl b/_Main/BL/Type_Global_MappingCurrency_MP/Attribute_Name.qbl new file mode 100644 index 0000000..59d3a9c --- /dev/null +++ b/_Main/BL/Type_Global_MappingCurrency_MP/Attribute_Name.qbl @@ -0,0 +1,7 @@ +Quintiq file version 2.0 +#parent: #root +Attribute Name +{ + #keys: '3[414702.0.247664827][414702.0.247664826][414702.0.247664828]' + ValueType: String +} diff --git a/_Main/BL/Type_Global_MappingCurrency_MP/StaticMethod_CreateByAPI.qbl b/_Main/BL/Type_Global_MappingCurrency_MP/StaticMethod_CreateByAPI.qbl new file mode 100644 index 0000000..a2f745b --- /dev/null +++ b/_Main/BL/Type_Global_MappingCurrency_MP/StaticMethod_CreateByAPI.qbl @@ -0,0 +1,38 @@ +Quintiq file version 2.0 +#parent: #root +StaticMethod CreateByAPI ( + GlobalOTDTable globalOTDTable +) +{ + TextBody: + [* + globalOTDTable.Global_MappingCurrency_MP( relflush ); + + bodynumber := "1"; + postrequestbody := globalOTDTable.ApiBuildPostRequestBody( bodynumber ); + address := "api-uat-sgc.tianma.cn"; + url := "/otdService/https/GetCurrenciesInfo"; + port := 443; + i := HTTPInterface::Create( address, port); + i.URL( url ); + i.SSL( true ); + i.SSLKeystore( "MyKeystore" ); + i.PostMethod( true ); //it's a POST method + + i.Call( postrequestbody ); // Call's argument is for POST method's content. + htmlresult := i.Result(); + + htmlresponse := JSON::Parse( htmlresult ); + reponseDataJson := htmlresponse.Get( "responseData" ); + datalist := reponseDataJson.Get( "dataList" ); + + total := datalist.Size(); + for ( j := 0; j < total; j++ ) { + globalOTDTable.Global_MappingCurrency_MP( relnew, + ID := guard( datalist.Get( j ).Get( "id" ).GetString(), "" ), + Name := guard( datalist.Get( j ).Get( "name" ).GetString(), "" ), + IsBase := guard( datalist.Get( j ).Get( "isbase" ).GetBoolean(), false ) + ); + } + *] +} diff --git a/_Main/BL/Type_Global_MappingCurrency_MP/_ROOT_Type_Global_MappingCurrency_MP.qbl b/_Main/BL/Type_Global_MappingCurrency_MP/_ROOT_Type_Global_MappingCurrency_MP.qbl new file mode 100644 index 0000000..d93f74c --- /dev/null +++ b/_Main/BL/Type_Global_MappingCurrency_MP/_ROOT_Type_Global_MappingCurrency_MP.qbl @@ -0,0 +1,9 @@ +Quintiq file version 2.0 +#root +#parent: #DomainModel +Type Global_MappingCurrency_MP +{ + #keys: '5[414702.0.247705874][414702.0.247705872][0.0.0][414702.0.247705873][414702.0.247705875]' + BaseType: Object + StructuredName: 'Global_MappingCurrency_MPs' +} diff --git a/_Main/BL/Type_Global_MappingProduct_MP/Attribute_BusinessType.qbl b/_Main/BL/Type_Global_MappingProduct_MP/Attribute_BusinessType.qbl new file mode 100644 index 0000000..0d9f5ca --- /dev/null +++ b/_Main/BL/Type_Global_MappingProduct_MP/Attribute_BusinessType.qbl @@ -0,0 +1,8 @@ +Quintiq file version 2.0 +#parent: #root +Attribute BusinessType +{ + #keys: '3[414702.0.247710960][414702.0.247710959][414702.0.247710961]' + IsReadOnly: true + ValueType: String +} diff --git a/_Main/BL/Type_Global_MappingProduct_MP/Attribute_CommonBusiness.qbl b/_Main/BL/Type_Global_MappingProduct_MP/Attribute_CommonBusiness.qbl new file mode 100644 index 0000000..f2d8b21 --- /dev/null +++ b/_Main/BL/Type_Global_MappingProduct_MP/Attribute_CommonBusiness.qbl @@ -0,0 +1,7 @@ +Quintiq file version 2.0 +#parent: #root +Attribute CommonBusiness +{ + #keys: '3[414702.0.247710970][414702.0.247710969][414702.0.247710971]' + ValueType: String +} diff --git a/_Main/BL/Type_Global_MappingProduct_MP/Attribute_EndDate.qbl b/_Main/BL/Type_Global_MappingProduct_MP/Attribute_EndDate.qbl new file mode 100644 index 0000000..efb4082 --- /dev/null +++ b/_Main/BL/Type_Global_MappingProduct_MP/Attribute_EndDate.qbl @@ -0,0 +1,7 @@ +Quintiq file version 2.0 +#parent: #root +Attribute EndDate +{ + #keys: '3[414702.0.247710980][414702.0.247710979][414702.0.247710981]' + ValueType: Date +} diff --git a/_Main/BL/Type_Global_MappingProduct_MP/Attribute_ID.qbl b/_Main/BL/Type_Global_MappingProduct_MP/Attribute_ID.qbl new file mode 100644 index 0000000..927e312 --- /dev/null +++ b/_Main/BL/Type_Global_MappingProduct_MP/Attribute_ID.qbl @@ -0,0 +1,8 @@ +Quintiq file version 2.0 +#parent: #root +Attribute ID +{ + #keys: '3[414702.0.247710990][414702.0.247710989][414702.0.247710991]' + IsReadOnly: true + ValueType: String +} diff --git a/_Main/BL/Type_Global_MappingProduct_MP/Attribute_IsCommon.qbl b/_Main/BL/Type_Global_MappingProduct_MP/Attribute_IsCommon.qbl new file mode 100644 index 0000000..32fd75c --- /dev/null +++ b/_Main/BL/Type_Global_MappingProduct_MP/Attribute_IsCommon.qbl @@ -0,0 +1,7 @@ +Quintiq file version 2.0 +#parent: #root +Attribute IsCommon +{ + #keys: '3[414702.0.247711000][414702.0.247710999][414702.0.247711001]' + ValueType: Boolean +} diff --git a/_Main/BL/Type_Global_MappingProduct_MP/Attribute_KeyProduct.qbl b/_Main/BL/Type_Global_MappingProduct_MP/Attribute_KeyProduct.qbl new file mode 100644 index 0000000..431f730 --- /dev/null +++ b/_Main/BL/Type_Global_MappingProduct_MP/Attribute_KeyProduct.qbl @@ -0,0 +1,7 @@ +Quintiq file version 2.0 +#parent: #root +Attribute KeyProduct +{ + #keys: '3[414702.0.247711010][414702.0.247711009][414702.0.247711011]' + ValueType: Boolean +} diff --git a/_Main/BL/Type_Global_MappingProduct_MP/Attribute_Name.qbl b/_Main/BL/Type_Global_MappingProduct_MP/Attribute_Name.qbl new file mode 100644 index 0000000..befa0dc --- /dev/null +++ b/_Main/BL/Type_Global_MappingProduct_MP/Attribute_Name.qbl @@ -0,0 +1,7 @@ +Quintiq file version 2.0 +#parent: #root +Attribute Name +{ + #keys: '3[414702.0.247711020][414702.0.247711019][414702.0.247711021]' + ValueType: String +} diff --git a/_Main/BL/Type_Global_MappingProduct_MP/Attribute_Notes.qbl b/_Main/BL/Type_Global_MappingProduct_MP/Attribute_Notes.qbl new file mode 100644 index 0000000..81b9008 --- /dev/null +++ b/_Main/BL/Type_Global_MappingProduct_MP/Attribute_Notes.qbl @@ -0,0 +1,7 @@ +Quintiq file version 2.0 +#parent: #root +Attribute Notes +{ + #keys: '3[414702.0.247711030][414702.0.247711029][414702.0.247711031]' + ValueType: String +} diff --git a/_Main/BL/Type_Global_MappingProduct_MP/Attribute_ProductMajorType.qbl b/_Main/BL/Type_Global_MappingProduct_MP/Attribute_ProductMajorType.qbl new file mode 100644 index 0000000..0fd5b40 --- /dev/null +++ b/_Main/BL/Type_Global_MappingProduct_MP/Attribute_ProductMajorType.qbl @@ -0,0 +1,7 @@ +Quintiq file version 2.0 +#parent: #root +Attribute ProductMajorType +{ + #keys: '3[414702.0.247711040][414702.0.247711039][414702.0.247711041]' + ValueType: String +} diff --git a/_Main/BL/Type_Global_MappingProduct_MP/Attribute_ProductSubclassType.qbl b/_Main/BL/Type_Global_MappingProduct_MP/Attribute_ProductSubclassType.qbl new file mode 100644 index 0000000..935fa0b --- /dev/null +++ b/_Main/BL/Type_Global_MappingProduct_MP/Attribute_ProductSubclassType.qbl @@ -0,0 +1,7 @@ +Quintiq file version 2.0 +#parent: #root +Attribute ProductSubclassType +{ + #keys: '3[414702.0.247711050][414702.0.247711049][414702.0.247711051]' + ValueType: String +} diff --git a/_Main/BL/Type_Global_MappingProduct_MP/Attribute_ShelfLife.qbl b/_Main/BL/Type_Global_MappingProduct_MP/Attribute_ShelfLife.qbl new file mode 100644 index 0000000..2dbff7f --- /dev/null +++ b/_Main/BL/Type_Global_MappingProduct_MP/Attribute_ShelfLife.qbl @@ -0,0 +1,7 @@ +Quintiq file version 2.0 +#parent: #root +Attribute ShelfLife +{ + #keys: '3[414702.0.247711060][414702.0.247711059][414702.0.247711061]' + ValueType: Real +} diff --git a/_Main/BL/Type_Global_MappingProduct_MP/Attribute_UnitOfMeasureName.qbl b/_Main/BL/Type_Global_MappingProduct_MP/Attribute_UnitOfMeasureName.qbl new file mode 100644 index 0000000..741605b --- /dev/null +++ b/_Main/BL/Type_Global_MappingProduct_MP/Attribute_UnitOfMeasureName.qbl @@ -0,0 +1,7 @@ +Quintiq file version 2.0 +#parent: #root +Attribute UnitOfMeasureName +{ + #keys: '3[414702.0.247711070][414702.0.247711069][414702.0.247711071]' + ValueType: String +} diff --git a/_Main/BL/Type_Global_MappingProduct_MP/TypeIndex_TypeIndexIDAndBusinessType.qbl b/_Main/BL/Type_Global_MappingProduct_MP/TypeIndex_TypeIndexIDAndBusinessType.qbl new file mode 100644 index 0000000..bca6c7b --- /dev/null +++ b/_Main/BL/Type_Global_MappingProduct_MP/TypeIndex_TypeIndexIDAndBusinessType.qbl @@ -0,0 +1,16 @@ +Quintiq file version 2.0 +#parent: #root +TypeIndex TypeIndexIDAndBusinessType +{ + Attributes: + [ + TypeIndexAttribute + { + ModelElement: ID + } + TypeIndexAttribute + { + ModelElement: BusinessType + } + ] +} diff --git a/_Main/BL/Type_Global_MappingProduct_MP/_ROOT_Type_Global_MappingProduct_MP.qbl b/_Main/BL/Type_Global_MappingProduct_MP/_ROOT_Type_Global_MappingProduct_MP.qbl new file mode 100644 index 0000000..7265bc5 --- /dev/null +++ b/_Main/BL/Type_Global_MappingProduct_MP/_ROOT_Type_Global_MappingProduct_MP.qbl @@ -0,0 +1,9 @@ +Quintiq file version 2.0 +#root +#parent: #DomainModel +Type Global_MappingProduct_MP +{ + #keys: '5[414702.0.247665567][414702.0.247665565][0.0.0][414702.0.247665566][414702.0.247665568]' + BaseType: Object + StructuredName: 'Global_MappingProduct_MPs' +} diff --git a/_Main/BL/Type_Global_MappingSalesSegment_MP/Attribute_BusinessType.qbl b/_Main/BL/Type_Global_MappingSalesSegment_MP/Attribute_BusinessType.qbl new file mode 100644 index 0000000..81da35c --- /dev/null +++ b/_Main/BL/Type_Global_MappingSalesSegment_MP/Attribute_BusinessType.qbl @@ -0,0 +1,8 @@ +Quintiq file version 2.0 +#parent: #root +Attribute BusinessType +{ + #keys: '3[414702.0.238159206][414702.0.238159205][414702.0.238159207]' + IsReadOnly: true + ValueType: String +} diff --git a/_Main/BL/Type_Global_MappingSalesSegment_MP/Attribute_DisplayIndex.qbl b/_Main/BL/Type_Global_MappingSalesSegment_MP/Attribute_DisplayIndex.qbl new file mode 100644 index 0000000..92e49ea --- /dev/null +++ b/_Main/BL/Type_Global_MappingSalesSegment_MP/Attribute_DisplayIndex.qbl @@ -0,0 +1,7 @@ +Quintiq file version 2.0 +#parent: #root +Attribute DisplayIndex +{ + #keys: '3[414702.0.238159219][414702.0.238159218][414702.0.238159220]' + ValueType: Number +} diff --git a/_Main/BL/Type_Global_MappingSalesSegment_MP/Attribute_Name.qbl b/_Main/BL/Type_Global_MappingSalesSegment_MP/Attribute_Name.qbl new file mode 100644 index 0000000..b9b05d0 --- /dev/null +++ b/_Main/BL/Type_Global_MappingSalesSegment_MP/Attribute_Name.qbl @@ -0,0 +1,8 @@ +Quintiq file version 2.0 +#parent: #root +Attribute Name +{ + #keys: '3[414702.0.238159229][414702.0.238159228][414702.0.238159230]' + IsReadOnly: true + ValueType: String +} diff --git a/_Main/BL/Type_Global_MappingSalesSegment_MP/Attribute_ParentName.qbl b/_Main/BL/Type_Global_MappingSalesSegment_MP/Attribute_ParentName.qbl new file mode 100644 index 0000000..4b2842b --- /dev/null +++ b/_Main/BL/Type_Global_MappingSalesSegment_MP/Attribute_ParentName.qbl @@ -0,0 +1,7 @@ +Quintiq file version 2.0 +#parent: #root +Attribute ParentName +{ + #keys: '3[414702.0.238159239][414702.0.238159238][414702.0.238159240]' + ValueType: String +} diff --git a/_Main/BL/Type_Global_MappingSalesSegment_MP/TypeIndex_TypeIndexBusinessTypeAndName.qbl b/_Main/BL/Type_Global_MappingSalesSegment_MP/TypeIndex_TypeIndexBusinessTypeAndName.qbl new file mode 100644 index 0000000..fef133c --- /dev/null +++ b/_Main/BL/Type_Global_MappingSalesSegment_MP/TypeIndex_TypeIndexBusinessTypeAndName.qbl @@ -0,0 +1,16 @@ +Quintiq file version 2.0 +#parent: #root +TypeIndex TypeIndexBusinessTypeAndName +{ + Attributes: + [ + TypeIndexAttribute + { + ModelElement: BusinessType + } + TypeIndexAttribute + { + ModelElement: Name + } + ] +} diff --git a/_Main/BL/Type_Global_MappingSalesSegment_MP/_ROOT_Type_Global_MappingSalesSegment_MP.qbl b/_Main/BL/Type_Global_MappingSalesSegment_MP/_ROOT_Type_Global_MappingSalesSegment_MP.qbl new file mode 100644 index 0000000..644aaf7 --- /dev/null +++ b/_Main/BL/Type_Global_MappingSalesSegment_MP/_ROOT_Type_Global_MappingSalesSegment_MP.qbl @@ -0,0 +1,9 @@ +Quintiq file version 2.0 +#root +#parent: #DomainModel +Type Global_MappingSalesSegment_MP +{ + #keys: '5[414702.0.238159187][414702.0.238159185][0.0.0][414702.0.238159186][414702.0.238159188]' + BaseType: Object + StructuredName: 'Global_MappingSalesSegment_MPs' +} diff --git a/_Main/BL/Type_Global_MappingStockingPoint_MP/Attribute_Name.qbl b/_Main/BL/Type_Global_MappingStockingPoint_MP/Attribute_Name.qbl new file mode 100644 index 0000000..bc1f32a --- /dev/null +++ b/_Main/BL/Type_Global_MappingStockingPoint_MP/Attribute_Name.qbl @@ -0,0 +1,7 @@ +Quintiq file version 2.0 +#parent: #root +Attribute Name +{ + #keys: '3[414702.0.247664695][414702.0.247664694][414702.0.247664696]' + ValueType: String +} diff --git a/_Main/BL/Type_Global_MappingStockingPoint_MP/Attribute_UnitID.qbl b/_Main/BL/Type_Global_MappingStockingPoint_MP/Attribute_UnitID.qbl new file mode 100644 index 0000000..bd54057 --- /dev/null +++ b/_Main/BL/Type_Global_MappingStockingPoint_MP/Attribute_UnitID.qbl @@ -0,0 +1,7 @@ +Quintiq file version 2.0 +#parent: #root +Attribute UnitID +{ + #keys: '3[414702.0.247664705][414702.0.247664704][414702.0.247664706]' + ValueType: String +} diff --git a/_Main/BL/Type_Global_MappingStockingPoint_MP/Attribute_id.qbl b/_Main/BL/Type_Global_MappingStockingPoint_MP/Attribute_id.qbl new file mode 100644 index 0000000..739ec3d --- /dev/null +++ b/_Main/BL/Type_Global_MappingStockingPoint_MP/Attribute_id.qbl @@ -0,0 +1,7 @@ +Quintiq file version 2.0 +#parent: #root +Attribute ID +{ + #keys: '3[414702.0.247705763][414702.0.247705762][414702.0.247705764]' + ValueType: String +} diff --git a/_Main/BL/Type_Global_MappingStockingPoint_MP/StaticMethod_CreateByAPI.qbl b/_Main/BL/Type_Global_MappingStockingPoint_MP/StaticMethod_CreateByAPI.qbl new file mode 100644 index 0000000..58e6677 --- /dev/null +++ b/_Main/BL/Type_Global_MappingStockingPoint_MP/StaticMethod_CreateByAPI.qbl @@ -0,0 +1,38 @@ +Quintiq file version 2.0 +#parent: #root +StaticMethod CreateByAPI ( + GlobalOTDTable globalOTDTable +) +{ + TextBody: + [* + globalOTDTable.Global_MappingStockingPoint_MP( relflush ); + + bodynumber := "2"; + postrequestbody := globalOTDTable.ApiBuildPostRequestBody( bodynumber ); + address := "api-uat-sgc.tianma.cn"; + url := "/otdService/https/GetStockingPointsInfo"; + port := 443; + i := HTTPInterface::Create( address, port); + i.URL( url ); + i.SSL( true ); + i.SSLKeystore( "MyKeystore" ); + i.PostMethod( true ); //it's a POST method + + i.Call( postrequestbody ); // Call's argument is for POST method's content. + htmlresult := i.Result(); + + htmlresponse := JSON::Parse( htmlresult ); + reponseDataJson := htmlresponse.Get( "responseData" ); + datalist := reponseDataJson.Get( "dataList" ); + + total := datalist.Size(); + for ( j := 0; j < total; j++ ) { + globalOTDTable.Global_MappingStockingPoint_MP( relnew, + ID := guard( datalist.Get( j ).Get( "id" ).GetString(), "" ), + Name := guard( datalist.Get( j ).Get( "name" ).GetString(), "" ), + UnitID := guard( datalist.Get( j ).Get( "unitid" ).GetString(), "" ) + ); + } + *] +} diff --git a/_Main/BL/Type_Global_MappingStockingPoint_MP/_ROOT_Type_Global_MappingStockingPoint_MP.qbl b/_Main/BL/Type_Global_MappingStockingPoint_MP/_ROOT_Type_Global_MappingStockingPoint_MP.qbl new file mode 100644 index 0000000..4281efe --- /dev/null +++ b/_Main/BL/Type_Global_MappingStockingPoint_MP/_ROOT_Type_Global_MappingStockingPoint_MP.qbl @@ -0,0 +1,9 @@ +Quintiq file version 2.0 +#root +#parent: #DomainModel +Type Global_MappingStockingPoint_MP +{ + #keys: '5[414702.0.239762041][414702.0.239762039][0.0.0][414702.0.239762040][414702.0.239762042]' + BaseType: Object + StructuredName: 'Global_MappingStockingPoint_MPs' +} diff --git a/_Main/BL/Type_Global_MappingUnitOfMeasure_MP/Attribute_IsDefault.qbl b/_Main/BL/Type_Global_MappingUnitOfMeasure_MP/Attribute_IsDefault.qbl new file mode 100644 index 0000000..cbf856e --- /dev/null +++ b/_Main/BL/Type_Global_MappingUnitOfMeasure_MP/Attribute_IsDefault.qbl @@ -0,0 +1,7 @@ +Quintiq file version 2.0 +#parent: #root +Attribute IsDefault +{ + #keys: '3[414702.0.238140135][414702.0.238140134][414702.0.238140136]' + ValueType: Boolean +} diff --git a/_Main/BL/Type_Global_MappingUnitOfMeasure_MP/Attribute_Name.qbl b/_Main/BL/Type_Global_MappingUnitOfMeasure_MP/Attribute_Name.qbl new file mode 100644 index 0000000..6673dd3 --- /dev/null +++ b/_Main/BL/Type_Global_MappingUnitOfMeasure_MP/Attribute_Name.qbl @@ -0,0 +1,8 @@ +Quintiq file version 2.0 +#parent: #root +Attribute Name +{ + #keys: '3[414702.0.238140145][414702.0.238140144][414702.0.238140146]' + IsReadOnly: true + ValueType: String +} diff --git a/_Main/BL/Type_Global_MappingUnitOfMeasure_MP/TypeIndex_TypeIndexName.qbl b/_Main/BL/Type_Global_MappingUnitOfMeasure_MP/TypeIndex_TypeIndexName.qbl new file mode 100644 index 0000000..c459f2c --- /dev/null +++ b/_Main/BL/Type_Global_MappingUnitOfMeasure_MP/TypeIndex_TypeIndexName.qbl @@ -0,0 +1,12 @@ +Quintiq file version 2.0 +#parent: #root +TypeIndex TypeIndexName +{ + Attributes: + [ + TypeIndexAttribute + { + ModelElement: Name + } + ] +} diff --git a/_Main/BL/Type_Global_MappingUnitOfMeasure_MP/_ROOT_Type_Global_MappingUnitOfMeasure_MP.qbl b/_Main/BL/Type_Global_MappingUnitOfMeasure_MP/_ROOT_Type_Global_MappingUnitOfMeasure_MP.qbl new file mode 100644 index 0000000..cadf447 --- /dev/null +++ b/_Main/BL/Type_Global_MappingUnitOfMeasure_MP/_ROOT_Type_Global_MappingUnitOfMeasure_MP.qbl @@ -0,0 +1,9 @@ +Quintiq file version 2.0 +#root +#parent: #DomainModel +Type Global_MappingUnitOfMeasure_MP +{ + #keys: '5[414702.0.238140113][414702.0.238140111][0.0.0][414702.0.238140112][414702.0.238140114]' + BaseType: Object + StructuredName: 'Global_MappingUnitOfMeasure_MPs' +} diff --git a/_Main/BL/Type_MacroPlan/Method_InitialUnitAndStockingPoint.qbl b/_Main/BL/Type_MacroPlan/Method_InitialUnitAndStockingPoint.qbl index d030255..767523f 100644 --- a/_Main/BL/Type_MacroPlan/Method_InitialUnitAndStockingPoint.qbl +++ b/_Main/BL/Type_MacroPlan/Method_InitialUnitAndStockingPoint.qbl @@ -6,105 +6,51 @@ [* // Administrator Sep-1-2023 (created) + unitOfMeasure_MP := UnitOfMeasure_MP::FindByName( this, "PCS" ); + if ( isnull( unitOfMeasure_MP ) ) { + unitOfMeasure_MP := UnitOfMeasure_MP::Create( this, "PCS", false, false ); + } + //Set the Default values unitofmeasurename := "PCS"; - currencyid := "CNY"; - startdate := Date::Date( 1900, 1, 1 ); - enddate := Date::Date( 9999, 12, 31 ); capacitytype := "Transport quantity"; - if( isnull( Unit::FindById( this, "绌鸿繍" ) ) ){ - this.Unit( relnew, - ID := "绌鸿繍", - Name := "绌鸿繍", - UnitOfMeasureName := unitofmeasurename, - CurrencyID := currencyid, - StartDate := startdate, - EndDate := enddate, - CapacityType := capacitytype ); - } + if ( isnull( Unit::FindById( this, "绌鸿繍" ) ) ) { + Unit::Create( "绌鸿繍", this, "绌鸿繍", unitOfMeasure_MP, null( Unit ), capacitytype, "", null( SupplyChainView ), 0, 0, false ); + } - if( isnull( Unit::FindById( this, "搴撳瓨浜嬪姟澶勭悊" ) ) ){ - this.Unit( relnew, - ID := "搴撳瓨浜嬪姟澶勭悊", - Name := "搴撳瓨浜嬪姟澶勭悊", - UnitOfMeasureName := unitofmeasurename, - CurrencyID := currencyid, - StartDate := startdate, - EndDate := enddate, - CapacityType := capacitytype ); + if ( isnull( Unit::FindById( this, "搴撳瓨浜嬪姟澶勭悊" ) ) ) { + Unit::Create( "搴撳瓨浜嬪姟澶勭悊", this, "搴撳瓨浜嬪姟澶勭悊", unitOfMeasure_MP, null( Unit ), capacitytype, "", null( SupplyChainView ), 0, 0, false ); } unitofmeasurename := "PCS"; - name := "鎵嬪姩鍒涘缓搴撳瓨鐐�"; - currencyname := "CNY"; - isplannedinfinite := false; - datestart := Date::Construct(1900, 1, 1) ; - dateend := Date::Construct(9999, 12, 31); - groupname := " "; - description := " "; - isfromdb := true; - if( isnull( StockingPoint_MP::FindById( this, "F13_FG_STOCK" ) ) ){ - StockingPoint_MP::Create( this, - "F13_FG_STOCK", - "F13", - name, - unitofmeasurename, - currencyname, - isplannedinfinite, - datestart, - dateend, - groupname, - description, - isfromdb ); + if ( isnull( StockingPoint_MP::FindById( this, "F13_FG_STOCK" ) ) ) { + StockingPoint_MP::Create( "F13_FG_STOCK", this, null( Unit ), "F13_FG_STOCK", null( SupplyChainView ), 0, 0, false ); } - if( isnull( StockingPoint_MP::FindById( this, "H10_SA_STOCK" ) ) ){ - StockingPoint_MP::Create( this, - "H10_SA_STOCK", - "H10", - name, - unitofmeasurename, - currencyname, - isplannedinfinite, - datestart, - dateend, - groupname, - description, - isfromdb ); + if ( isnull( StockingPoint_MP::FindById( this, "H10_SA_STOCK" ) ) ) { + StockingPoint_MP::Create( "H10_SA_STOCK", this, null( Unit ), "H10_SA_STOCK", null( SupplyChainView ), 0, 0, false ); } - if( isnull( StockingPoint_MP::FindById( this, "Q10_FG_STOCK" ) ) ){ - StockingPoint_MP::Create( this, - "Q10_FG_STOCK", - "Q10", - name, - unitofmeasurename, - currencyname, - isplannedinfinite, - datestart, - dateend, - groupname, - description, - isfromdb ); + if ( isnull( StockingPoint_MP::FindById( this, "Q10_FG_STOCK" ) ) ) { + StockingPoint_MP::Create( "Q10_FG_STOCK", this, null( Unit ), "Q10_FG_STOCK", null( SupplyChainView ), 0, 0, false ); } - existcurrency := Currency_MP::FindById( this, "CNY" ); - if( isnull( existcurrency ) ){ - Currency_MP::CreateCurrency( this, "CNY", "CNY", "", true ); - currency := Currency_MP::FindById( this, "EUR" ); - currency.IsBase(false); - Transaction::Transaction().Propagate(); - } + if ( isnull( Currency_MP::FindById( this, "CNY" ) ) ) { + Currency_MP::Create( "CNY", this, "CNY", "", false, false ); + } isproductcatagory := false; isfromdb := false; - existproductlevel := ProductLevel_MP::FindProductLevelTypeIndex( "2" ); - if( isnull( existproductlevel ) ){ + if ( isnull( ProductLevel_MP::FindProductLevelTypeIndex( "1" ) ) ) { ProductLevel_MP::Create( "1", isproductcatagory, this, isfromdb ); + } + if ( isnull( ProductLevel_MP::FindProductLevelTypeIndex( "2" ) ) ) { ProductLevel_MP::Create( "2", isproductcatagory, this, isfromdb ); + } + if ( isnull( ProductLevel_MP::FindProductLevelTypeIndex( "3" ) ) ) { ProductLevel_MP::Create( "3", isproductcatagory, this, isfromdb ); - } + } *] } diff --git a/_Main/UI/MacroPlanner/Component_ScenarioManager_FormScenario/Component_SplitterWndScenarioManager.def b/_Main/UI/MacroPlanner/Component_ScenarioManager_FormScenario/Component_SplitterWndScenarioManager.def index 3c15ce4..51ce736 100644 --- a/_Main/UI/MacroPlanner/Component_ScenarioManager_FormScenario/Component_SplitterWndScenarioManager.def +++ b/_Main/UI/MacroPlanner/Component_ScenarioManager_FormScenario/Component_SplitterWndScenarioManager.def @@ -5,9 +5,122 @@ [ Component SplitterPaneScenario #extension { + GBLayout + { + Type: 'internal[GBLayoutDefinition]' + Columns: + [ + GBFlow.Column { grow: 0 id: 9 parent: 0 } + GBFlow.Column { grow: 0 id: 22 parent: 0 } + GBFlow.Column { grow: 0 id: 35 parent: 0 } + GBFlow.Column { grow: 0 id: 37 parent: 0 } + GBFlow.Column { grow: 0 id: 24 parent: 0 } + GBFlow.Column { grow: 0 id: 138 parent: 0 } + GBFlow.Column { grow: 0 id: 588 parent: 0 } + GBFlow.Column { grow: 0 id: 780 parent: 0 } + GBFlow.Column { grow: 0 id: 508 parent: 0 } + GBFlow.Column { grow: 128 id: 27 parent: 0 } + ] + Elements: + [ + GBElement + { + Component => /SplitterWnd1 + Position { startcolumn: 9 startrow: 2 endcolumn: 27 endrow: 2 } + } + GBElement + { + Component => ButtonRefreshKPIs + Position { startcolumn: 9 startrow: 5 endcolumn: 9 endrow: 5 } + } + GBElement + { + Component => LabelImportExportStatusTitle + Position { startcolumn: 22 startrow: 5 endcolumn: 22 endrow: 5 } + } + GBElement + { + Component => LabelLastDataExchangeDate + Position { startcolumn: 24 startrow: 5 endcolumn: 24 endrow: 5 } + } + GBElement + { + Component => LabelLastDataExchangeAction + Position { startcolumn: 35 startrow: 5 endcolumn: 35 endrow: 5 } + } + GBElement + { + Component => LabelActionOn + Position { startcolumn: 37 startrow: 5 endcolumn: 37 endrow: 5 } + } + GBElement + { + Component => ButtonCreateScenariosFromDatasets + Position { startcolumn: 138 startrow: 5 endcolumn: 138 endrow: 5 } + } + GBElement + { + Component => ButtonRefreshScenarios + Position { startcolumn: 588 startrow: 5 endcolumn: 588 endrow: 5 } + } + GBElement + { + Component: 'Button897' + Position { startcolumn: 780 startrow: 5 endcolumn: 780 endrow: 5 } + } + GBElement + { + Component: 'Button482' + Position { startcolumn: 508 startrow: 5 endcolumn: 508 endrow: 5 } + } + ] + Gaps: [ left: 0 right: 0 top: 0 bottom: 0 inner: 5 ] + Rows: + [ + GBFlow.Row { grow: 0 id: 5 parent: 0 } + GBFlow.Row { grow: 128 id: 2 parent: 0 } + ] + } Children: [ #child: SplitterWnd1 + Component Button897 + { + #keys: '[414702.0.239704572]' + BaseType: 'Button' + Properties: + [ + Image: 'BIRD' + LayoutGroup: 'Button0' + Text: '鎵ц鍏ㄥ眬浠g悊' + ] + } + Component Button482 + { + #keys: '[414702.0.239704587]' + BaseType: 'Button' + Properties: + [ + LayoutGroup: 'Button0' + Text: 'Button' + ] + } + ] + Properties: + [ + ModeledStringList ChildOrdering + { + c: ButtonRefreshKPIs + c: LabelImportExportStatusTitle + c: ButtonCreateScenariosFromDatasets + c: LabelLastDataExchangeAction + c: SplitterWnd1 + c: LabelLastDataExchangeDate + c: LabelActionOn + c: ButtonRefreshScenarios + c: Button897 + c: Button482 + } ] } ] diff --git a/_Main/UI/MacroPlanner/Component_ScenarioManager_FormScenario/Response_TIANMA_JITUAN_SplitterWndScenarioManager_Button897_OnClick.def b/_Main/UI/MacroPlanner/Component_ScenarioManager_FormScenario/Response_TIANMA_JITUAN_SplitterWndScenarioManager_Button897_OnClick.def new file mode 100644 index 0000000..d5aa442 --- /dev/null +++ b/_Main/UI/MacroPlanner/Component_ScenarioManager_FormScenario/Response_TIANMA_JITUAN_SplitterWndScenarioManager_Button897_OnClick.def @@ -0,0 +1,12 @@ +Quintiq file version 2.0 +#parent: SplitterWndScenarioManager/Button897 +Response OnClick () id:Response_TIANMA_JITUAN_SplitterWndScenarioManager_Button897_OnClick +{ + #keys: '[414702.0.239704677]' + Body: + [* + GlobalOTDTable::SynchronizationAllMappingBroker( MacroPlan, GlobalOTDTable ); + *] + CanBindMultiple: false + DefinitionID: 'Responsedef_GUIButtonBase_OnClick' +} diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditScenario/Method_CopyScenario.def b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditScenario/Method_CopyScenario.def new file mode 100644 index 0000000..c0a6fa5 --- /dev/null +++ b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditScenario/Method_CopyScenario.def @@ -0,0 +1,29 @@ +Quintiq file version 2.0 +#parent: #root +Method CopyScenario ( + ScenarioMP source +) id:Method_DialogCreateEditScenario_CopyScenario #extension +{ + Body: + [* + // Copy scenario + scenario := ScenarioManager.ScenarioNode( relshadow, + ScenarioMP, + Parent := source, + Name := ScenarioManager.GetUniqueScenarioName( source.Name() ), + SelectedStrategy := source.SelectedStrategy(), + State := source.State() ); + + DataHolderActionCopy.Data( true ); + DataHolderDialogData.Data( &scenario ); + + // do not distribute + DataHolderDialogData.Data().EnableSync( false ); + checkboxEnableSync.Visible( false ); + dropDownStringListGeneral.Visible( false ); + checkboxIsKeyProduct.Visible( false ); + checkboxCreatePurchaseSupplyProduct.Visible( false ); + + ApplicationMacroPlanner.ShowFormModal( this ); + *] +} -- Gitblit v1.9.3