xiaoding721
2024-05-27 191fc5cc2e5eeaff377b749dfa7e497fe503506b
_Main/BL/Type_Archive/StaticMethod_RequirementProcessing.qbl
@@ -20,7 +20,8 @@
  String curveFileName,
  BinaryValue curveBinaryValue,
  String idsFileName,
  BinaryValue idsBinaryValue
  BinaryValue idsBinaryValue,
  Boolean isOverwriteFile
)
{
  TextBody:
@@ -30,15 +31,25 @@
    
    // 创建执行状态
    archiveExecutionStatus.RequirementImportExecutionStatus( relnew, 
                                                             ExecutionCode      := -1,
                                                             ExecutionStatus    := "InProgress",
                                                             ExecutionUserName  := userName );
    
    if ( prBinaryValue.Size() > 0 ) {
      archive -> Archive::HandlePR( macroPlan, userName, prFileName, prBinaryValue, isPRArchive, filePath ) ->Archive::Success() -> Exception() -> Archive::OnException( archiveExecutionStatus, userName );
      archive -> Archive::HandlePR( macroPlan, userName, prFileName, prBinaryValue, isPRArchive, filePath, isOverwriteFile )
              -> Archive::Success( macroPlan, archiveExecutionStatus, userName )
              -> Exception()
              -> Archive::OnException( archiveExecutionStatus, userName );
    } else if ( ppBinaryValue.Size() > 0 ) {
      Archive::HandlePP( archive, macroPlan, userName, ppFileName, ppBinaryValue, isPPArchive, filePath );
      archive -> Archive::HandlePP( macroPlan, userName, ppFileName, ppBinaryValue, isPPArchive, filePath, isOverwriteFile )
              -> Archive::Success( macroPlan, archiveExecutionStatus, userName )
              -> Exception()
              -> Archive::OnException( archiveExecutionStatus, userName );
    } else if ( budgetBinaryValue.Size() > 0 ) {
      Archive::HandleBudget( archive, macroPlan, userName, budgetFileName, budgetBinaryValue, isBudgetArchive, filePath );
      archive -> Archive::HandleBudget( macroPlan, userName, budgetFileName, budgetBinaryValue, isBudgetArchive, filePath, isOverwriteFile )
              -> Archive::Success( macroPlan, archiveExecutionStatus, userName )
              -> Exception()
              -> Archive::OnException( archiveExecutionStatus, userName );
    } else {
      Archive::HandlePPA_Curve_IDS( archive, macroPlan, userName, ppaFileName, ppaBinaryValue, isPPAArchive, curveFileName, curveBinaryValue, idsFileName, idsBinaryValue, filePath );
    }