51Testing软件测试网Qp7~8W7`'t
CAX 51Testing软件测试网S `U9\0qc(@hI Flag = IsFriday()51Testing软件测试网N
pnFY;{ 51Testing软件测试网MS(G~nsS0i;fyWYIf Flag = True Then51Testing软件测试网$DuG5d
`J Call ProjectInfo("xxxxx","xxx","xxx","xxx") 1[.g}TA|3]0End If m:V5Y |4z'Si;\$T051Testing软件测试网2]hJh]"~ {|'获取QC上所有项目,循环统计 k+HE CUyq0Function ProjectInfo(qcUrl,qcUsername,qcPassword,qcDomain) %V|1D0f V/L1j0 Set Tdc = CreateObject("TDApiOle80.TDConnection.1")51Testing软件测试网'P8LNY;z~#^U.{G If Not Tdc.Connected Then51Testing软件测试网N8v(hB\6z]|+x{ Tdc.InitConnectionEx qcUrl $QpV/o d\.@"S["z)q0 Tdc.Login qcUsername,qcPassword ;k$Zyvl_2T{0 Else
R1|"J;m;[#lb)jx0 Tdc.Disconnect51Testing软件测试网,mN:ka)~ Tdc.Logout #g+u(nY[c0 Tdc.ReleaseConnection v0QnZ1YkD(BQ [+]0 Tdc.Login qcUsername,qcPassword51Testing软件测试网%eT7Q)i-fi End If }lR
\(t}KP{6P1|0 51Testing软件测试网BW-`Y5bt
P Message = "" "\
ht6D2E/{b}0 Msg = "" mvN
FW5g,\0 51Testing软件测试网'gN(P-r7k For Each project In tdc.VisibleProjects(qcDomain)51Testing软件测试网o _ e-jf_u&V Tdc.Disconnect +l)Mv!y1pt'?0 Tdc.Connect qcDomain,project51Testing软件测试网CDD(g)d5Lj^ Set BugFac = tdc.BugFactory51Testing软件测试网#_f9d8~O#y'i3l Set BugList = BugFac.NewList("") /p R)T8n/z0' MsgBox BugList.count51Testing软件测试网-_I|!XY BugCount = 0 -JsXz(Hyo0 ReferCount = 0 '提交 o^Io\0 RejectCount = 0 '拒绝51Testing软件测试网T0V R-i/H^&d DeployCount = 0 ' 部署51Testing软件测试网]nOo
`8_Y ValidateCount = 0 '验证 F!H0x&MJ:_0 ClosedCount = 0 '关闭 e2R9I0ec B;H0 ReopenCount = 0 '未修复51Testing软件测试网_:] i/b;jWy For Each Bug In BugList y,A2mC(w0 BugDate = CDate(Bug.Field("BG_DETECTION_DATE")) 51Testing软件测试网yaF"SB|
V
s
q CurrentDate = Date
gf3y3oE0 LastDate = GetLastWeekDate()51Testing软件测试网[.g7]&SSFM If (BugDate <= CDate(CurrentDate) And BugDate >= CDate(LastDate)) Then 7u3W9\7C j;i0 '缺陷总数51Testing软件测试网G3HsN7b+?6f1Y BugCount = BugCount + 1 N+D)gZ!ra {6`0 '已提交总数 ,C2gAp1|r~WZf0 If Bug.Field("BG_USER_01") = "已提交" Then U
UF0~2x+?(B0 ReferCount = ReferCount + 151Testing软件测试网&w*X1m#B9mo$LV End If51Testing软件测试网(v*M P+u*E '已驳回总数 LBNM6V{}c5k?0 If Bug.Field("BG_USER_01") = "已驳回" Then el$uV"_S0 RejectCount = RejectCount + 1 Q(da?4Ys0 End If51Testing软件测试网v$IWJ)T:le
c '待部署总数51Testing软件测试网L#m(@d5Abc` If Bug.Field("BG_USER_01") = "待部署" Then51Testing软件测试网RNU8V ^ DeployCount = DeployCount + 1 [8y%_$g1Q
x0 End If 0h7~gK)Oc0 '待验证总数51Testing软件测试网r'g:Wv H1n0_"Mn If Bug.Field("BG_USER_01") = "待验证" Then s&k%su9]FYL0 ValidateCount = ValidateCount + 1
u8G&ns.W0 End If }"h*L7nzm0 '未修复总数51Testing软件测试网 R[8w&h`\U If Bug.Field("BG_USER_01") = "未修复" Then51Testing软件测试网5~$D`7@4u'aS1Q~ ReopenCount = ReopenCount + 1 +ejZ a~+t Y_[0 End If51Testing软件测试网t"lKF(l '已关闭总数 {)k/EE^0r0 If Bug.Field("BG_USER_01") = "已关闭" Then IO5A%jWR-I J[0 ClosedCount = ClosedCount + 1 3C;P Z r;O$JqA0 End If51Testing软件测试网q7q9bZ"fsl End If51Testing软件测试网Zw8w$b$z,Q-v Next
fPP#jH)B0 Message = Message + "<p><table width=100 border=""1"" align=""left"">"& VbCrLf &_ Sx RO,U0 "<th colspan=2>"&project&"</th>"& VbCrLf &_51Testing软件测试网)\$_:@0S(c]b "<tr><td width=60%>"&"已提交"&"</td><td width=40%>"&ReferCount&"</td></tr>"& VbCrLf &_51Testing软件测试网M.|~)t8Sjp5R "<tr><td>"&"已驳回"&"</td><td>"&RejectCount&"</td></tr>"& VbCrLf &_51Testing软件测试网k5WB4q#G+}t(}2R$j{ "<tr><td>"&"待部署"&"</td><td>"&DeployCount&"</td></tr>"& VbCrLf &_51Testing软件测试网9uiM
su} "<tr><td>"&"待验证"&"</td><td>"&ValidateCount&"</td></tr>"& VbCrLf &_ oE,C.s+?:rK;mh2x0 "<tr><td>"&"未修复"&"</td><td>"&ReopenCount&"</td></tr>"& VbCrLf &_ n f_}'|f
bdvo9j0 "<tr><td>"&"已关闭"&"</td><td>"&ClosedCount&"</td></tr>"& VbCrLf &_51Testing软件测试网2a
Y-_5E:`vf^ "</Table></p>"& VbCrLf 7O*TkB"M~p2[H0' MsgBox Message51Testing软件测试网V!v DNZ!q"~ Set BugList = Nothing51Testing软件测试网)\]a5[5FI Set BugFac = Nothing 8~JGJ8y0 Next 2Hi8d.v}z5ApaY0 Msg = "<html><head><title></title>" &VbCrLf &_51Testing软件测试网s)D5j2N;C&m.g!n "<style. type='text/css'>"&VbCrLf &_ #f yN^/J.CW!@5?/w0 "td,form,select,input,p,table,.font {font-size: 12px;line-height: 20px}"&VbCrLf &_ 6T
NshU#?C0 "table"&VbCrLf &_51Testing软件测试网gd4o7_ {q "{border-collapse: collapse}"&VbCrLf &_ +{DYj5a0 "</style>"&VBCRLF &_51Testing软件测试网9r+JX(G4c'P "</head><body>"&Message&"</body></html>"51Testing软件测试网!o@9b+vR*N Call SendMailMessage("xxx","xxx","xxx","xx",msg,"xxx")51Testing软件测试网 W BrwM{a Tdc.Disconnect #V+w$M&m7P^/`
AU Aq0 Tdc.Logout51Testing软件测试网J!KO$~&W9P%? Tdc.ReleaseConnection51Testing软件测试网&Mx:G0{4Ga/Y;k8H5v Set Tdc = Nothing ~4gJ"yjbG'O9q0End Function51Testing软件测试网CB1C@{ P 51Testing软件测试网%Z]~tQ3c,j|:?'邮件发送方法 x'Ja7Uqf
u%B9FQ0Sub SendMailMessage(FromMail,MailPassword,ToMail,MailName,MailMessage,SmtpServer) sfM;|2ek0Z
J0 FromMailName=Split(FromMail , "@", -1, vbTextCompare)51Testing软件测试网ih,J&q-Wnw sXQ MS_Space = "http://schemas.microsoft.com/cdo/configuration/" .jm
Eh/JW0 Set Email = CreateObject("CDO.Message") 'wD*zl@h0 oEmail.From = FromMail '发送邮件地址51Testing软件测试网f
TE/L%i oEmail.To = ToMail '送达邮件地址 {R7O0\ ^3`5Z(Q|2]8A%X0 '处理中文乱码51Testing软件测试网S IC2jn3`\$a Set BodyPart = oEmail.BodyPart !t*_-ZQdw3t)h0 oBodyPart.Charset = "UTF-8" ncJf)YQN0 oEmail.Subject = MailName '邮件标题51Testing软件测试网sqSfVWd8]&_ oEmail.HTMLBody = MailMessage '邮件正文 T2j.^9H1YT2I0 '配置邮件发送51Testing软件测试网.r9Msn&]3w:sB!` With oEmail.Configuration.Fields51Testing软件测试网P"~j{3SfD .Item(MS_Space&"sendusing") = 2 '发信端口 6BNJ
M6\BZ0 .Item(MS_Space&"smtpserver") = SmtpServer 'SMTP服务器地址 U
q6c1]"I)w q/Y2L*q0 .Item(MS_Space&"smtpserverport") = 25 'SMTP服务器端口51Testing软件测试网$V*b _A4{9UJ .Item(MS_Space&"smtpauthenticate") = 1 7]3xYqDe,o%F7od0 .Item(MS_Space&"sendusername") = FromMailName(0) '邮件帐号 AHXSQ0 .Item(MS_Space&"sendpassword") = MailPassword51Testing软件测试网M$tmT}\ ' .Item(MS_Space&"cdoSendlanguagecode")="UTF-8"51Testing软件测试网\6Z'x%~#y7eAk#i .Update 2o_2MZ(` W8r0 End With d"z
@4L%V])g0 '发送邮件51Testing软件测试网(KI5ls5t oEmail.Send51Testing软件测试网8VzES%p(^4j '释放对象51Testing软件测试网b8@t)xXHAKxU Set BodyPart = Nothing \+[DFQ#Hv0 Set Email = Nothing51Testing软件测试网t m;ge
c _ End Sub u!O5k%}#dW0SQsJn
Z2O9k"u KB0'判断当前日期是否星期五51Testing软件测试网f.vs!_` Df,[5H Function IsFriday() -XvfrXXY0 CurrentDate = Date51Testing软件测试网|kSB2g"w+A Num = Weekday(CurrentDate,2)51Testing软件测试网p'P{ W)a)U If Num = 5 Then51Testing软件测试网&w/w3FvfP8X4`B Flag = True51Testing软件测试网\.O~@4Cx$U$D
l Else51Testing软件测试网\&JhU*PC8W[ Flag = False oEL2M5P0 End If Ia$bhj%O0 IsFriday = Flag 0{\N6?yg F3Yje8]0End Function51Testing软件测试网|3I9L6X+nG yrO7z 51Testing软件测试网)t"QQ!@6t#f-B/k#c'获取当前日期前一周日期 h6Y2C3Ui&z0Function GetLastWeekDate() (I;x['F5e-k"Z
cV@0 CurrentDate = Date S0F2a!E(TN
EL0 LastWeekDate = DateAdd("d",-7,CurrentDate) 7WZ"nV#V9[0 GetLastWeekDate = LastWeekDate g qK M\(U2wyE.P0End Function51Testing软件测试网qm
n7I.y`pyQ R |