lihongji
2024-05-20 486c6d489d32dc7a2e55fa38fc465aef8b357acd
需求文件上传
已添加57个文件
已修改10个文件
851 ■■■■■ 文件已修改
_Main/BL/Relations/Relation_ArchiveBudget_Archive_Archive_ArchiveBudget.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_ArchiveCurve_Archive_Archive_ArchiveCurve.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_ArchiveIDS_Archive_Archive_ArchiveIDS.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_ArchivePP_Archive_Archive_ArchivePP.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_Archive/Attribute_JavaInterfaceAddress.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_Archive/Attribute_JavaInterfacePort.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_Archive/StaticMethod_HandleBudget.qbl 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_Archive/StaticMethod_HandlePP.qbl 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_Archive/StaticMethod_HandlePPA_Curve_IDS.qbl 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_Archive/StaticMethod_HandlePR.qbl 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_Archive/StaticMethod_RequirementProcessing.qbl 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_Archive/StaticMethod_WriteTempFile.qbl 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ArchiveBudget/Attribute_DateTime.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ArchiveBudget/Attribute_FilePath.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ArchiveBudget/Attribute_Name.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ArchiveBudget/Attribute_UserName.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ArchiveBudget/DefaultValue_FilePath.qbl 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ArchiveBudget/DefaultValue_Name.qbl 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ArchiveBudget/DefaultValue_UserName.qbl 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ArchiveBudget/_ROOT_Type_ArchiveBudget.qbl 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ArchiveCurve/Attribute_DateTime.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ArchiveCurve/Attribute_FilePath.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ArchiveCurve/Attribute_Name.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ArchiveCurve/Attribute_UserName.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ArchiveCurve/DefaultValue_FilePath.qbl 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ArchiveCurve/DefaultValue_Name.qbl 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ArchiveCurve/DefaultValue_UserName.qbl 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ArchiveCurve/_ROOT_Type_ArchiveCurve.qbl 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ArchiveIDS/Attribute_DateTime.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ArchiveIDS/Attribute_FilePath.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ArchiveIDS/Attribute_Name.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ArchiveIDS/Attribute_UserName.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ArchiveIDS/DefaultValue_FilePath.qbl 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ArchiveIDS/DefaultValue_Name.qbl 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ArchiveIDS/DefaultValue_UserName.qbl 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ArchiveIDS/_ROOT_Type_ArchiveIDS.qbl 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ArchivePP/Attribute_DateTime.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ArchivePP/Attribute_FilePath.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ArchivePP/Attribute_Name.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ArchivePP/Attribute_UserName.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ArchivePP/DefaultValue_FilePath.qbl 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ArchivePP/DefaultValue_Name.qbl 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ArchivePP/DefaultValue_UserName.qbl 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ArchivePP/_ROOT_Type_ArchivePP.qbl 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ContextMenu687.def 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_abgConfigureTechnical.def 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_applicationConfigureActionBarPageDef.def 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ContextMenu687_mFileArchivePath_OnClick.def 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/_ROOT_Component_ApplicationMacroPlanner.def 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogFileArchivePath/Component_pnlActions.def 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogFileArchivePath/Component_pnlContent.def 47 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogFileArchivePath/Response_pnlActions_btnCancel_OnClick.def 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogFileArchivePath/Response_pnlActions_btnOk_OnClick.def 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogFileArchivePath/_ROOT_Component_DialogFileArchivePath.def 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogRequirementUpload/Method_OnOK.def 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogRequirementUpload/Method_UploadVerification.def 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogRequirementUpload/Response_pBudget_efBudget_OnUserChanged.def 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogRequirementUpload/Response_pCurveEnable_cCurveEnable_OnChanged.def 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogRequirementUpload/Response_pCurve_efCurve_OnUserChanged.def 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogRequirementUpload/Response_pIDS_efIDS_OnUserChanged.def 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogRequirementUpload/Response_pPPAArchiveEnable_cPPAPPAArchiveEnable_OnCreated.def 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogRequirementUpload/Response_pPPAEnable_cPPAEnable_OnChanged.def 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogRequirementUpload/Response_pPPA_efPPA_OnUserChanged.def 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogRequirementUpload/Response_pPP_efPP_OnUserChanged.def 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogRequirementUpload/Response_pPR_efPR_OnUserChanged.def 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogRequirementUpload/Response_pPreviousEditionCurve_cPreviousEditionCurve_OnCreated.def 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogRequirementUpload/Response_pnlActionsRight_btnOk_OnClick#958.def 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_ArchiveBudget_Archive_Archive_ArchiveBudget.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation ArchiveBudget_Archive_Archive_ArchiveBudget
{
  #keys: '1[413988.0.1193510089]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide Archive
  {
    #keys: '3[413988.0.1193510091][413988.0.1193510090][413988.0.1193510092]'
    Cardinality: '0to1'
    ObjectDefinition: ArchiveBudget
    OwningSide: 'Reference'
  }
  RelationSide.RightSide ArchiveBudget
  {
    #keys: '3[413988.0.1193510094][413988.0.1193510093][413988.0.1193510095]'
    Cardinality: '1toN'
    ObjectDefinition: Archive
    OwningSide: 'Owned'
  }
}
_Main/BL/Relations/Relation_ArchiveCurve_Archive_Archive_ArchiveCurve.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation ArchiveCurve_Archive_Archive_ArchiveCurve
{
  #keys: '1[413988.0.1193510162]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide Archive
  {
    #keys: '3[413988.0.1193510164][413988.0.1193510163][413988.0.1193510165]'
    Cardinality: '0to1'
    ObjectDefinition: ArchiveCurve
    OwningSide: 'Reference'
  }
  RelationSide.RightSide ArchiveCurve
  {
    #keys: '3[413988.0.1193510167][413988.0.1193510166][413988.0.1193510168]'
    Cardinality: '1toN'
    ObjectDefinition: Archive
    OwningSide: 'Owned'
  }
}
_Main/BL/Relations/Relation_ArchiveIDS_Archive_Archive_ArchiveIDS.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation ArchiveIDS_Archive_Archive_ArchiveIDS
{
  #keys: '1[413988.0.1193510197]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide Archive
  {
    #keys: '3[413988.0.1193510199][413988.0.1193510198][413988.0.1193510200]'
    Cardinality: '0to1'
    ObjectDefinition: ArchiveIDS
    OwningSide: 'Reference'
  }
  RelationSide.RightSide ArchiveIDS
  {
    #keys: '3[413988.0.1193510202][413988.0.1193510201][413988.0.1193510203]'
    Cardinality: '1toN'
    ObjectDefinition: Archive
    OwningSide: 'Owned'
  }
}
_Main/BL/Relations/Relation_ArchivePP_Archive_Archive_ArchivePP.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation ArchivePP_Archive_Archive_ArchivePP
{
  #keys: '1[413988.0.1193510127]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide Archive
  {
    #keys: '3[413988.0.1193510129][413988.0.1193510128][413988.0.1193510130]'
    Cardinality: '0to1'
    ObjectDefinition: ArchivePP
    OwningSide: 'Reference'
  }
  RelationSide.RightSide ArchivePP
  {
    #keys: '3[413988.0.1193510132][413988.0.1193510131][413988.0.1193510133]'
    Cardinality: '1toN'
    ObjectDefinition: Archive
    OwningSide: 'Owned'
  }
}
_Main/BL/Type_Archive/Attribute_JavaInterfaceAddress.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute JavaInterfaceAddress
{
  #keys: '3[413988.0.1200600129][413988.0.1200600128][413988.0.1200600130]'
  ValueType: String
}
_Main/BL/Type_Archive/Attribute_JavaInterfacePort.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute JavaInterfacePort
{
  #keys: '3[413988.0.1200600139][413988.0.1200600138][413988.0.1200600140]'
  ValueType: Number
}
_Main/BL/Type_Archive/StaticMethod_HandleBudget.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,13 @@
Quintiq file version 2.0
#parent: #root
StaticMethod HandleBudget (
  Archive archive,
  MacroPlan macroPlan,
  String userName,
  String budgetFileName,
  BinaryValue budgetBinaryValue,
  Boolean isBudgetArchive,
  String filePath
)
{
}
_Main/BL/Type_Archive/StaticMethod_HandlePP.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,13 @@
Quintiq file version 2.0
#parent: #root
StaticMethod HandlePP (
  Archive archive,
  MacroPlan macroPlan,
  String userName,
  String ppFileName,
  BinaryValue ppBinaryValue,
  Boolean isPPArchive,
  String filePath
)
{
}
_Main/BL/Type_Archive/StaticMethod_HandlePPA_Curve_IDS.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
Quintiq file version 2.0
#parent: #root
StaticMethod HandlePPA_Curve_IDS (
  Archive archive,
  MacroPlan macroPlan,
  String userName,
  String ppaFileName,
  BinaryValue ppaBinaryValue,
  Boolean isPPAArchive,
  String curveFileName,
  BinaryValue curveBinaryValue,
  String idsFileName,
  BinaryValue idsBinaryValue,
  String filePath
)
{
}
_Main/BL/Type_Archive/StaticMethod_HandlePR.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,41 @@
Quintiq file version 2.0
#parent: #root
StaticMethod HandlePR (
  Archive archive,
  MacroPlan macroPlan,
  String userName,
  String prFileName,
  BinaryValue prBinaryValue,
  Boolean isPRArchive,
  String filePath
)
{
  TextBody:
  [*
    // è¯·æ±‚参数
    pathPR    := filePath + prFileName;
    isArchive := ifexpr( isPRArchive, "true", "false" );
    minorKey  := [String]macroPlan.MDSID().MinorKey();
    json      := JSON::Object()
                 .Add( "pathPR", pathPR )
                 .Add( "isArchive", isArchive )
                 .Add( "minorKey", minorKey ).Build().AsString();
    // å†™å…¥ä¸´æ—¶æ–‡ä»¶
    Archive::WriteTempFile( pathPR, prBinaryValue );
    // è°ƒç”¨æŽ¥å£
    //url := "/PR/Import";
    //i := HTTPInterface::Create( archive.JavaInterfaceAddress(), archive.JavaInterfacePort() );
    //i.URL( url );
    //i.PostMethod( true );
    //
    //try {
    //  i.Call( json );
    //
    //  htmlresult := i.Result();
    //} onerror {
    //
    //}
  *]
}
_Main/BL/Type_Archive/StaticMethod_RequirementProcessing.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,40 @@
Quintiq file version 2.0
#parent: #root
StaticMethod RequirementProcessing (
  Archive archive,
  MacroPlan macroPlan,
  String userName,
  String prFileName,
  BinaryValue prBinaryValue,
  Boolean isPRArchive,
  String ppFileName,
  BinaryValue ppBinaryValue,
  Boolean isPPArchive,
  String budgetFileName,
  BinaryValue budgetBinaryValue,
  Boolean isBudgetArchive,
  String ppaFileName,
  BinaryValue ppaBinaryValue,
  Boolean isPPAArchive,
  String curveFileName,
  BinaryValue curveBinaryValue,
  String idsFileName,
  BinaryValue idsBinaryValue
)
{
  TextBody:
  [*
    filePath := archive.FileArchivePath() + "\" + "temp" + "\";
    OS::CreateDirectory( filePath );
    if ( prBinaryValue.Size() > 0 ) {
      Archive::HandlePR( archive, macroPlan, userName, prFileName, prBinaryValue, isPRArchive, filePath );
    } else if ( ppBinaryValue.Size() > 0 ) {
      Archive::HandlePP( archive, macroPlan, userName, ppFileName, ppBinaryValue, isPPArchive, filePath );
    } else if ( budgetBinaryValue.Size() > 0 ) {
      Archive::HandleBudget( archive, macroPlan, userName, budgetFileName, budgetBinaryValue, isBudgetArchive, filePath );
    } else {
      Archive::HandlePPA_Curve_IDS( archive, macroPlan, userName, ppaFileName, ppaBinaryValue, isPPAArchive, curveFileName, curveBinaryValue, idsFileName, idsBinaryValue, filePath );
    }
  *]
}
_Main/BL/Type_Archive/StaticMethod_WriteTempFile.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
Quintiq file version 2.0
#parent: #root
StaticMethod WriteTempFile (
  String filePath,
  BinaryValue binaryValue
)
{
  TextBody:
  [*
    file := OSFile::Construct();
    file.Open( filePath, "Write", false );
    file.WriteBinary( binaryValue );
    file.Close();
  *]
}
_Main/BL/Type_ArchiveBudget/Attribute_DateTime.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute DateTime
{
  #keys: '3[413988.0.1193510074][413988.0.1193510073][413988.0.1193510075]'
  ValueType: DateTime
}
_Main/BL/Type_ArchiveBudget/Attribute_FilePath.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute FilePath
{
  #keys: '3[413988.0.1193510077][413988.0.1193510076][413988.0.1193510078]'
  ValueType: String
}
_Main/BL/Type_ArchiveBudget/Attribute_Name.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute Name
{
  #keys: '3[413988.0.1193510080][413988.0.1193510079][413988.0.1193510081]'
  ValueType: String
}
_Main/BL/Type_ArchiveBudget/Attribute_UserName.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute UserName
{
  #keys: '3[413988.0.1193510083][413988.0.1193510082][413988.0.1193510084]'
  ValueType: String
}
_Main/BL/Type_ArchiveBudget/DefaultValue_FilePath.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
Quintiq file version 2.0
#parent: #root
DefaultValue
{
  TargetAttribute: FilePath
}
_Main/BL/Type_ArchiveBudget/DefaultValue_Name.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
Quintiq file version 2.0
#parent: #root
DefaultValue
{
  TargetAttribute: Name
}
_Main/BL/Type_ArchiveBudget/DefaultValue_UserName.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
Quintiq file version 2.0
#parent: #root
DefaultValue
{
  TargetAttribute: UserName
}
_Main/BL/Type_ArchiveBudget/_ROOT_Type_ArchiveBudget.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
Quintiq file version 2.0
#root
#parent: #DomainModel
Type ArchiveBudget
{
  #keys: '5[413988.0.1193510071][413988.0.1193510069][0.0.0][413988.0.1193510070][413988.0.1193510072]'
  BaseType: Object
  StructuredName: 'ArchiveBudgets'
}
_Main/BL/Type_ArchiveCurve/Attribute_DateTime.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute DateTime
{
  #keys: '3[413988.0.1193510147][413988.0.1193510146][413988.0.1193510148]'
  ValueType: DateTime
}
_Main/BL/Type_ArchiveCurve/Attribute_FilePath.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute FilePath
{
  #keys: '3[413988.0.1193510150][413988.0.1193510149][413988.0.1193510151]'
  ValueType: String
}
_Main/BL/Type_ArchiveCurve/Attribute_Name.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute Name
{
  #keys: '3[413988.0.1193510153][413988.0.1193510152][413988.0.1193510154]'
  ValueType: String
}
_Main/BL/Type_ArchiveCurve/Attribute_UserName.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute UserName
{
  #keys: '3[413988.0.1193510156][413988.0.1193510155][413988.0.1193510157]'
  ValueType: String
}
_Main/BL/Type_ArchiveCurve/DefaultValue_FilePath.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
Quintiq file version 2.0
#parent: #root
DefaultValue
{
  TargetAttribute: FilePath
}
_Main/BL/Type_ArchiveCurve/DefaultValue_Name.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
Quintiq file version 2.0
#parent: #root
DefaultValue
{
  TargetAttribute: Name
}
_Main/BL/Type_ArchiveCurve/DefaultValue_UserName.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
Quintiq file version 2.0
#parent: #root
DefaultValue
{
  TargetAttribute: UserName
}
_Main/BL/Type_ArchiveCurve/_ROOT_Type_ArchiveCurve.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
Quintiq file version 2.0
#root
#parent: #DomainModel
Type ArchiveCurve
{
  #keys: '5[413988.0.1193510144][413988.0.1193510142][0.0.0][413988.0.1193510143][413988.0.1193510145]'
  BaseType: Object
  StructuredName: 'ArchiveCurves'
}
_Main/BL/Type_ArchiveIDS/Attribute_DateTime.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute DateTime
{
  #keys: '3[413988.0.1193510182][413988.0.1193510181][413988.0.1193510183]'
  ValueType: DateTime
}
_Main/BL/Type_ArchiveIDS/Attribute_FilePath.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute FilePath
{
  #keys: '3[413988.0.1193510185][413988.0.1193510184][413988.0.1193510186]'
  ValueType: String
}
_Main/BL/Type_ArchiveIDS/Attribute_Name.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute Name
{
  #keys: '3[413988.0.1193510188][413988.0.1193510187][413988.0.1193510189]'
  ValueType: String
}
_Main/BL/Type_ArchiveIDS/Attribute_UserName.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute UserName
{
  #keys: '3[413988.0.1193510191][413988.0.1193510190][413988.0.1193510192]'
  ValueType: String
}
_Main/BL/Type_ArchiveIDS/DefaultValue_FilePath.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
Quintiq file version 2.0
#parent: #root
DefaultValue
{
  TargetAttribute: FilePath
}
_Main/BL/Type_ArchiveIDS/DefaultValue_Name.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
Quintiq file version 2.0
#parent: #root
DefaultValue
{
  TargetAttribute: Name
}
_Main/BL/Type_ArchiveIDS/DefaultValue_UserName.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
Quintiq file version 2.0
#parent: #root
DefaultValue
{
  TargetAttribute: UserName
}
_Main/BL/Type_ArchiveIDS/_ROOT_Type_ArchiveIDS.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
Quintiq file version 2.0
#root
#parent: #DomainModel
Type ArchiveIDS
{
  #keys: '5[413988.0.1193510179][413988.0.1193510177][0.0.0][413988.0.1193510178][413988.0.1193510180]'
  BaseType: Object
  StructuredName: 'ArchiveIDSs'
}
_Main/BL/Type_ArchivePP/Attribute_DateTime.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute DateTime
{
  #keys: '3[413988.0.1193510112][413988.0.1193510111][413988.0.1193510113]'
  ValueType: DateTime
}
_Main/BL/Type_ArchivePP/Attribute_FilePath.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute FilePath
{
  #keys: '3[413988.0.1193510115][413988.0.1193510114][413988.0.1193510116]'
  ValueType: String
}
_Main/BL/Type_ArchivePP/Attribute_Name.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute Name
{
  #keys: '3[413988.0.1193510118][413988.0.1193510117][413988.0.1193510119]'
  ValueType: String
}
_Main/BL/Type_ArchivePP/Attribute_UserName.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute UserName
{
  #keys: '3[413988.0.1193510121][413988.0.1193510120][413988.0.1193510122]'
  ValueType: String
}
_Main/BL/Type_ArchivePP/DefaultValue_FilePath.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
Quintiq file version 2.0
#parent: #root
DefaultValue
{
  TargetAttribute: FilePath
}
_Main/BL/Type_ArchivePP/DefaultValue_Name.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
Quintiq file version 2.0
#parent: #root
DefaultValue
{
  TargetAttribute: Name
}
_Main/BL/Type_ArchivePP/DefaultValue_UserName.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
Quintiq file version 2.0
#parent: #root
DefaultValue
{
  TargetAttribute: UserName
}
_Main/BL/Type_ArchivePP/_ROOT_Type_ArchivePP.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
Quintiq file version 2.0
#root
#parent: #DomainModel
Type ArchivePP
{
  #keys: '5[413988.0.1193510109][413988.0.1193510107][0.0.0][413988.0.1193510108][413988.0.1193510110]'
  BaseType: Object
  StructuredName: 'ArchivePPs'
}
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ContextMenu687.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,24 @@
Quintiq file version 2.0
Component ContextMenu687
{
  #keys: '[413988.0.1196530457]'
  BaseType: 'WebContextMenu'
  Children:
  [
    Component mFileArchivePath
    {
      #keys: '[413988.0.1196530458]'
      BaseType: 'WebMenu'
      Properties:
      [
        Image: 'ADDRESS_BOOK'
        Taborder: 0
        Title: '需求管理参数'
      ]
    }
  ]
  Properties:
  [
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_abgConfigureTechnical.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,22 @@
Quintiq file version 2.0
Component abgConfigureTechnical #extension
{
  Children:
  [
    Component bSecondaryConfigurationItems
    {
      #keys: '[413988.0.1195400280]'
      BaseType: 'WebButton'
      Children:
      [
        #child: ContextMenu687
      ]
      Properties:
      [
        Image: 'DOCUMENT_PLAIN'
        Label: '系统参数'
        Taborder: 0
      ]
    }
  ]
}
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_applicationConfigureActionBarPageDef.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
Component applicationConfigureActionBarPageDef #extension
{
  Children:
  [
    #child: abgConfigureTechnical
  ]
}
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ContextMenu687_mFileArchivePath_OnClick.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,22 @@
Quintiq file version 2.0
#parent: ContextMenu687/mFileArchivePath
Response OnClick () id:Response_MacroPlanner_ContextMenu687_mFileArchivePath_OnClick
{
  #keys: '[413988.0.1196600943]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebMenu_OnClick'
  Precondition:
  [*
    return not isnull( Archive );
  *]
  QuillAction
  {
    Body:
    [*
      dlg := construct( DialogFileArchivePath );
      ApplicationMacroPlanner.ShowFormModal( dlg );
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/_ROOT_Component_ApplicationMacroPlanner.def
@@ -11,6 +11,7 @@
      [
        #child: ActionBarPageData
        #child: ActionBarPageSales
        #child: applicationConfigureActionBarPageDef
      ]
    }
  ]
_Main/UI/MacroPlannerWebApp/Component_DialogFileArchivePath/Component_pnlActions.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,40 @@
Quintiq file version 2.0
Component pnlActions
{
  #keys: '[413988.0.1196600799]'
  BaseType: 'WebPanel'
  Children:
  [
    Component btnOk
    {
      #keys: '[413988.0.1196600803]'
      BaseType: 'WebButton'
      Properties:
      [
        Label: 'OK'
        Taborder: 0
      ]
    }
    Component btnCancel
    {
      #keys: '[413988.0.1196600805]'
      BaseType: 'WebButton'
      Properties:
      [
        Label: 'Cancel'
        Taborder: 1
      ]
    }
  ]
  Properties:
  [
    Alignment: 'trailing'
    Border: true
    ExcludeFromActiveComponent: true
    FixedSize: true
    Orientation: 'horizontal'
    Padding: 'true'
    Style: 'footer'
    Taborder: 1
  ]
}
_Main/UI/MacroPlannerWebApp/Component_DialogFileArchivePath/Component_pnlContent.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,47 @@
Quintiq file version 2.0
Component pnlContent
{
  #keys: '[413988.0.1196600797]'
  BaseType: 'WebPanel'
  Children:
  [
    Component efFileArchivePath
    {
      #keys: '[413988.0.1196600854]'
      BaseType: 'WebEditField'
      Properties:
      [
        DataBinding: 'Archive.FileArchivePath'
        Label: 'File Archive Path'
        Taborder: 0
      ]
    }
    Component efJavaInterfaceAddress
    {
      #keys: '[413988.0.1198321556]'
      BaseType: 'WebEditField'
      Properties:
      [
        DataBinding: 'Archive.JavaInterfaceAddress'
        Label: 'Java Interface Address'
        Taborder: 1
      ]
    }
    Component efJavaInterfacePort
    {
      #keys: '[413988.0.1198321576]'
      BaseType: 'WebEditField'
      Properties:
      [
        DataBinding: 'Archive.JavaInterfacePort'
        Label: 'Java Interface Port'
        Taborder: 2
      ]
    }
  ]
  Properties:
  [
    Padding: 'true'
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_DialogFileArchivePath/Response_pnlActions_btnCancel_OnClick.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,15 @@
Quintiq file version 2.0
#parent: pnlActions/btnCancel
Response OnClick () id:Response_pnlActions_btnCancel_OnClick
{
  #keys: '[413988.0.1196600809]'
  DefinitionID: 'Responsedef_WebButton_OnClick'
  GroupServerCalls: true
  QuillAction
  {
    Body:
    [*
      Form.Close();
    *]
  }
}
_Main/UI/MacroPlannerWebApp/Component_DialogFileArchivePath/Response_pnlActions_btnOk_OnClick.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
Quintiq file version 2.0
#parent: pnlActions/btnOk
Response OnClick () id:Response_pnlActions_btnOk_OnClick
{
  #keys: '[413988.0.1196600808]'
  DefinitionID: 'Responsedef_WebButton_OnClick'
  GroupServerCalls: true
  QuillAction
  {
    Body:
    [*
      Form.ApplyChanges();
      Form.Close();
    *]
  }
}
_Main/UI/MacroPlannerWebApp/Component_DialogFileArchivePath/_ROOT_Component_DialogFileArchivePath.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,22 @@
Quintiq file version 2.0
#root
#parent: MacroPlannerWebApp
OrphanComponent DialogFileArchivePath
{
  #keys: '[413988.0.1196600795]'
  BaseType: 'WebForm'
  Children:
  [
    #child: pnlContent
    #child: pnlActions
  ]
  Properties:
  [
    Alignment: 'trailing'
    EnterButton: 'btnOk'
    EscapeButton: 'btnCancel'
    ExcludeFromActiveComponent: true
    Padding: 'false'
    Title: 'FileArchivePath'
  ]
}
_Main/UI/MacroPlannerWebApp/Component_DialogRequirementUpload/Method_OnOK.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,20 @@
Quintiq file version 2.0
#parent: #root
Method OnOK () id:Method_DialogRequirementUpload_OnOK
{
  #keys: '[413988.0.1196530995]'
  Body:
  [*
    Form.ApplyChanges();
    Archive::RequirementProcessing( Archive, MacroPlan, ApplicationMacroPlanner.GetUserName(),
                                    efPR.Text()                                                                          , guard( dhBinaryDataPR.Data().AsBinaryValue(), BinaryValue::Construct( 0 ) ), cPR.Checked(),
                                    efPP.Text()                                                                          , guard( dhBinaryDataPP.Data().AsBinaryValue(), BinaryValue::Construct( 0 ) ), cPP.Checked(),
                                    efBudget.Text()                                                                      , guard( dhBinaryDataBudget.Data().AsBinaryValue(), BinaryValue::Construct( 0 ) ), cBudget.Checked(),
                                    ifexpr( cPPAPPAArchiveEnable.Checked(), ddlPPAArchive.Data().Name(), efCurve.Text() ), guard( dhBinaryDataPPA.Data().AsBinaryValue(), BinaryValue::Construct( 0 ) ), cPPA.Checked(),
                                    efCurve.Text()                                                                       , guard( dhBinaryDataCurve.Data().AsBinaryValue(), BinaryValue::Construct( 0 ) ),
                                    efIDS.Text()                                                                         , guard( dhBinaryDataIDS.Data().AsBinaryValue(), BinaryValue::Construct( 0 ) ) );
    Form.Close();
  *]
}
_Main/UI/MacroPlannerWebApp/Component_DialogRequirementUpload/Method_UploadVerification.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,26 @@
Quintiq file version 2.0
#parent: #root
Method UploadVerification () as Boolean id:Method_DialogRequirementUpload_UploadVerification
{
  #keys: '[413988.0.1193691205]'
  Body:
  [*
    flag := efPR.Text() <> "" or efPP.Text() <> "" or efBudget.Text() <> "" or cPPAEnable.Checked() or cCurveEnable.Checked() or efIDS.Text() <> "";
    if ( flag and efPR.Text() <> "" ) {
      flag := efPP.Text() = "" and efBudget.Text() = "" and not cPPAEnable.Checked() and not cCurveEnable.Checked() and efIDS.Text() = "";
    } else if ( flag and efPP.Text() <> "" ) {
      flag := efPR.Text() = "" and efBudget.Text() = "" and not cPPAEnable.Checked() and not cCurveEnable.Checked() and efIDS.Text() = "";
    } else if ( flag and efBudget.Text() <> "" ) {
      flag := efPR.Text() = "" and efPP.Text() = "" and not cPPAEnable.Checked() and not cCurveEnable.Checked() and efIDS.Text() = "";
    } else if ( flag and cPPAEnable.Checked() ) {
      flag := cCurveEnable.Checked();
    } else if ( flag and cCurveEnable.Checked() ) {
      flag := cPPAEnable.Checked();
    } else if ( flag and efIDS.Text() <> "" ) {
      flag := cPPAEnable.Checked() or cCurveEnable.Checked();
    }
    return flag;
  *]
}
_Main/UI/MacroPlannerWebApp/Component_DialogRequirementUpload/Response_pBudget_efBudget_OnUserChanged.def
@@ -13,11 +13,16 @@
      
      flag := not this.Text().EndsWith( ".xlsx" );
      
      if ( flag ) {
        WebMessageBox::Warning( "文件需要以.xlsx为后缀" );
        this.Text( dhOriginalFileNameBudget.Data() );
      if ( not isnull( dhBinaryDataBudget.Data() ) ) {
        if ( flag ) {
          WebMessageBox::Warning( "文件需要以.xlsx为后缀" );
          this.Text( dhOriginalFileNameBudget.Data() );
        } else {
          dhOriginalFileNameBudget.Data( this.Text() );
        }
      } else {
        dhOriginalFileNameBudget.Data( this.Text() );
        WebMessageBox::Warning( "请先上传文件在命名" );
        this.Text( "" );
      }
    *]
    GroupServerCalls: false
_Main/UI/MacroPlannerWebApp/Component_DialogRequirementUpload/Response_pCurveEnable_cCurveEnable_OnChanged.def
@@ -10,6 +10,7 @@
    Body:
    [*
      efCurve.Enabled( this.Checked(), "" );
      cPreviousEditionCurve.Enabled( this.Checked(), "" );
    *]
    GroupServerCalls: false
  }
_Main/UI/MacroPlannerWebApp/Component_DialogRequirementUpload/Response_pCurve_efCurve_OnUserChanged.def
@@ -13,11 +13,16 @@
      
      flag := not this.Text().EndsWith( ".xlsx" );
      
      if ( flag ) {
        WebMessageBox::Warning( "文件需要以.xlsx为后缀" );
        this.Text( dhOriginalFileNameCurve.Data() );
      if ( not isnull( dhBinaryDataCurve.Data() ) ) {
        if ( flag ) {
          WebMessageBox::Warning( "文件需要以.xlsx为后缀" );
          this.Text( dhOriginalFileNameCurve.Data() );
        } else {
          dhOriginalFileNameCurve.Data( this.Text() );
        }
      } else {
        dhOriginalFileNameCurve.Data( this.Text() );
        WebMessageBox::Warning( "请先上传文件在命名" );
        this.Text( "" );
      }
    *]
    GroupServerCalls: false
_Main/UI/MacroPlannerWebApp/Component_DialogRequirementUpload/Response_pIDS_efIDS_OnUserChanged.def
@@ -13,11 +13,16 @@
      
      flag := not this.Text().EndsWith( ".xlsx" );
      
      if ( flag ) {
        WebMessageBox::Warning( "文件需要以.xlsx为后缀" );
        this.Text( dhOriginalFileNameIDS.Data() );
      if ( not isnull( dhBinaryDataIDS.Data() ) ) {
        if ( flag ) {
          WebMessageBox::Warning( "文件需要以.xlsx为后缀" );
          this.Text( dhOriginalFileNameIDS.Data() );
        } else {
          dhOriginalFileNameIDS.Data( this.Text() );
        }
      } else {
        dhOriginalFileNameIDS.Data( this.Text() );
        WebMessageBox::Warning( "请先上传文件在命名" );
        this.Text( "" );
      }
    *]
    GroupServerCalls: false
_Main/UI/MacroPlannerWebApp/Component_DialogRequirementUpload/Response_pPPAArchiveEnable_cPPAPPAArchiveEnable_OnCreated.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
Quintiq file version 2.0
#parent: pPPAArchiveEnable/cPPAPPAArchiveEnable
Response OnCreated () id:Response_pPPAArchiveEnable_cPPAPPAArchiveEnable_OnCreated
{
  #keys: '[413988.0.1193811053]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebComponent_OnCreated'
  QuillAction
  {
    Body:
    [*
      this.Enabled( cPPAEnable.Checked(), "" );
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_DialogRequirementUpload/Response_pPPAEnable_cPPAEnable_OnChanged.def
@@ -11,6 +11,7 @@
    [*
      efPPA.Enabled( this.Checked(), "" );
      cPPA.Enabled( this.Checked(), "" );
      cPPAPPAArchiveEnable.Enabled( this.Checked(), "" );
    *]
    GroupServerCalls: false
  }
_Main/UI/MacroPlannerWebApp/Component_DialogRequirementUpload/Response_pPPA_efPPA_OnUserChanged.def
@@ -13,11 +13,16 @@
      
      flag := not this.Text().EndsWith( ".xlsx" );
      
      if ( flag ) {
        WebMessageBox::Warning( "文件需要以.xlsx为后缀" );
        this.Text( dhOriginalFileNamePPA.Data() );
      if ( not isnull( dhBinaryDataPPA.Data() ) ) {
        if ( flag ) {
          WebMessageBox::Warning( "文件需要以.xlsx为后缀" );
          this.Text( dhOriginalFileNamePPA.Data() );
        } else {
          dhOriginalFileNamePPA.Data( this.Text() );
        }
      } else {
        dhOriginalFileNamePPA.Data( this.Text() );
        WebMessageBox::Warning( "请先上传文件在命名" );
        this.Text( "" );
      }
    *]
    GroupServerCalls: false
_Main/UI/MacroPlannerWebApp/Component_DialogRequirementUpload/Response_pPP_efPP_OnUserChanged.def
@@ -13,11 +13,16 @@
      
      flag := not this.Text().EndsWith( ".xlsx" );
      
      if ( flag ) {
        WebMessageBox::Warning( "文件需要以.xlsx为后缀" );
        this.Text( dhOriginalFileNamePP.Data() );
      if ( not isnull( dhBinaryDataPP.Data() ) ) {
        if ( flag ) {
          WebMessageBox::Warning( "文件需要以.xlsx为后缀" );
          this.Text( dhOriginalFileNamePP.Data() );
        } else {
          dhOriginalFileNamePP.Data( this.Text() );
        }
      } else {
        dhOriginalFileNamePP.Data( this.Text() );
        WebMessageBox::Warning( "请先上传文件在命名" );
        this.Text( "" );
      }
    *]
    GroupServerCalls: false
_Main/UI/MacroPlannerWebApp/Component_DialogRequirementUpload/Response_pPR_efPR_OnUserChanged.def
@@ -13,11 +13,16 @@
      
      flag := not this.Text().EndsWith( ".xlsx" );
      
      if ( flag ) {
        WebMessageBox::Warning( "文件需要以.xlsx为后缀" );
        this.Text( dhOriginalFileNamePR.Data() );
      if ( not isnull( dhBinaryDataPR.Data() ) ) {
        if ( flag ) {
          WebMessageBox::Warning( "文件需要以.xlsx为后缀" );
          this.Text( dhOriginalFileNamePR.Data() );
        } else {
          dhOriginalFileNamePR.Data( this.Text() );
        }
      } else {
        dhOriginalFileNamePR.Data( this.Text() );
        WebMessageBox::Warning( "请先上传文件在命名" );
        this.Text( "" );
      }
    *]
    GroupServerCalls: false
_Main/UI/MacroPlannerWebApp/Component_DialogRequirementUpload/Response_pPreviousEditionCurve_cPreviousEditionCurve_OnCreated.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
Quintiq file version 2.0
#parent: pPreviousEditionCurve/cPreviousEditionCurve
Response OnCreated () id:Response_pPreviousEditionCurve_cPreviousEditionCurve_OnCreated
{
  #keys: '[413988.0.1193811546]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebComponent_OnCreated'
  QuillAction
  {
    Body:
    [*
      this.Enabled( cCurveEnable.Checked(), "" );
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_DialogRequirementUpload/Response_pnlActionsRight_btnOk_OnClick#958.def
@@ -4,13 +4,16 @@
{
  #keys: '[413988.0.1171443037]'
  DefinitionID: 'Responsedef_WebButton_OnClick'
  GroupServerCalls: true
  Precondition:
  [*
    return not isnull( Archive ) and not isnull( MacroPlan ) and Form.UploadVerification();
  *]
  QuillAction
  {
    Body:
    [*
      Form.ApplyChanges();
      Form.Close();
      Form.OnOK();
    *]
    GroupServerCalls: false
  }
}