定製QC工作流,限制上傳附件大小

TIB發表於2010-01-24

為了防止某些測試人員上傳過大的附件到QC中,可以採用下面指令碼來定製QC的工作流:

 

Sub Attachment_New(Attachment)
  'Use ActiveModule and ActiveDialogName to get the current context.
  On Error Resume Next
 
    'Remove new attachment if file size is too big
    If Attachment.Type = 1 then 'Attachment is of type TDATT_FILE - a file.
       MaxFileSize = 3145728 'Set the maximum attachment size in Bytes <<- 3mb is our limit!
       If Attachment.FileSize > MaxFileSize then
          Select Case Attachment.Field("CR_ENTITY")
                 'Requirement
                 Case "REQ"
                      Set attRec = ReqFactory.Item(Attachment.Field("CR_KEY_1"))
                 'TestPlan
                 Case "ALL_LISTS" 'Folder
                      Set attRec = TreeManager.NodeByID(Attachment.Field("CR_KEY_1"))
                      msgbox attRec.ID
                 Case "TEST" ' Test
                      Set attRec = TestFactory.Item(Attachment.Field("CR_KEY_1"))
                 Case "DESSTEPS" 'Test step
                      Set attTest = TestFactory.Item(Test_Fields("DS_TEST_ID").Value)
                      Set attRec = attTest.DesignStepFactory.Item(Attachment.Field("CR_KEY_1"))
                 'TestLab
                 Case "CYCL_FOLD" 'Folder
                      Set attRec = TestSetTreeManager.NodeById(Attachment.Field("CR_KEY_1"))
                 Case "CYCLE" 'Test Set
                      Set attRec = TestSetFactory.Item(Attachment.Field("CR_KEY_1"))
                 Case "TESTCYCL" 'TestInstance
                      Set attRec = TSTestFactory.Item(Attachment.Field("CR_KEY_1"))
                 Case "RUN" 'Run
                      Set attRec = RunFactory.Item(Attachment.Field("CR_KEY_1"))
                 Case "STEP"  'Run Step
                      Set attRun = RunFactory.Item(Step_Fields("ST_RUN_ID").Value)
                      Set attRec = attRun.StepFactory.Item(Attachment.Field("CR_KEY_1"))
                 'Defects
                 Case "BUG"
                      Set attRec = BugFactory.Item(Attachment.Field("CR_KEY_1"))
          End Select
          set AttFac = attRec.Attachments
          Msgbox "Please exit this record and refresh the QC page. The file: " & vbLF & _
                 Attachment.Name & vbLf & " has been removed as it exceeds the required file size of 3mb."
          AttFac.RemoveItem(Attachment.ID)
       End If
    End If
 
  On Error GoTo 0
End Sub

 

 

參考:

http://www.jds.net.au/tech-tips/quality-center-attachments/

相關文章