📄 timesheetreport.aspx.vb
字号:
Imports System.Data
Partial Class TimeSheetReport
Inherits System.Web.UI.Page
'Private variables and objects
Private blnEvenRow As Boolean = True
Private strReport As String
Private strManagerID As String
Private dteWeekEndingDate As Date
Private objTimeSheetDS As New DataSet
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) _
Handles Me.Load
If Not IsPostBack Then
'Save the QueryString values
strReport = Request.QueryString("Report")
dteWeekEndingDate = CType(Request.QueryString("WeekEndingDate"), Date)
strManagerID = Request.QueryString("ManagerID")
End If
End Sub
Public Sub Main()
Using objReports As New TimeSheetsWS.Reports
objReports.Credentials = _
System.Net.CredentialCache.DefaultCredentials
Select Case strReport
Case "TimesheetsDue"
objTimeSheetDS = objReports.TimeSheetsDue( _
New Guid(strManagerID), dteWeekEndingDate)
Call WriteReportHeader()
Call ProcessShortReport()
Case "TimesheetsSubmitted"
objTimeSheetDS = objReports.TimeSheetsSubmitted( _
New Guid(strManagerID), dteWeekEndingDate)
Call WriteReportHeader()
Call ProcessShortReport()
Case "TimesheetsMTD"
objTimeSheetDS = objReports.TimeSheetsMTD( _
New Guid(strManagerID))
Call WriteReportHeader()
Call ProcessLongReport()
Case "TimesheetsQTD"
objTimeSheetDS = objReports.TimeSheetsQTD( _
New Guid(strManagerID))
Call WriteReportHeader()
Call ProcessLongReport()
Case "TimesheetsYTD"
objTimeSheetDS = objReports.TimeSheetsYTD( _
New Guid(strManagerID))
Call WriteReportHeader()
Call ProcessLongReport()
End Select
End Using
End Sub
Private Sub WriteReportHeader()
Response.Write("<table cellspacing=""0"" cellpadding=""3""" & _
"border=""0"">")
Response.Write("<tr>")
Response.Write("<td colspan=""3"" align=""center""" & _
"class=""ReportTitle"">" & _
objTimeSheetDS.Tables("ReportHeader").Rows(0).Item("Title") & _
"</td>")
Response.Write("</tr>")
Response.Write("<tr>")
Response.Write("<td nowrap><font class=""SubTitleBold"">" & _
"Manager:</font><font class=""SubTitleNormal"">" & _
objTimeSheetDS.Tables("ReportHeader").Rows(0).Item("ManagerName") & _
"</font></td>")
Response.Write("<td width=""100%""> </td>")
Select Case strReport
Case "TimesheetsDue", "TimesheetsSubmitted"
Response.Write("<td align=""right"" nowrap>" & _
"<font class=""SubTitleBold"">Week Ending Date:</font>" & _
"<font class=""SubTitleNormal""> " & _
Format(objTimeSheetDS.Tables("ReportHeader").Rows(0).Item( _
"Date"), "Short Date") & "</font></td>")
Case "TimesheetsMTD", "TimesheetsQTD", "TimesheetsYTD"
Response.Write("<td align=""right"" nowrap>" & _
"<font class=""SubTitleBold"">Report Date:</font>" & _
"<font class=""SubTitleNormal""> " & _
Format(objTimeSheetDS.Tables("ReportHeader").Rows(0).Item( _
"Date"), "Short Date") & "</font></td>")
End Select
Response.Write("</tr>")
Response.Write("<tr>")
Response.Write("<td colspan=""3"" width=""100%""> </td>")
Response.Write("</tr>")
Response.Write("</table>")
End Sub
Private Sub ProcessShortReport()
Response.Write("<table cellspacing=""0"" cellpadding=""3""" & _
"border=""0"">")
Response.Write("<tr class=""ReportHeader"">")
Response.Write("<td nowrap width=""200px"">Employee</td>")
Response.Write("<td nowrap>Total Hours</td>")
Response.Write("<td width=""100%""> </td>")
Response.Write("</tr>")
For intIndex As Integer = 0 To _
objTimeSheetDS.Tables("TimeSheets").Rows.Count - 1
blnEvenRow = Not blnEvenRow
If blnEvenRow Then
Response.Write("<tr class=""EvenRow"">")
Else
Response.Write("<tr class=""OddRow"">")
End If
If strReport = "TimesheetsDue" Then
Response.Write("<td class=""ReportText""><a href=""mailto:" & _
objTimeSheetDS.Tables("TimeSheets").Rows(intIndex).Item( _
"Email") & "?subject=Timesheet Due&body=Your timesheet " & _
"for week ending date " & dteWeekEndingDate.ToString & _
" is due. Please submit your timesheet for approval."">" & _
objTimeSheetDS.Tables("TimeSheets").Rows(intIndex).Item( _
"UserName") & "</a></td>")
Else
Response.Write("<td class=""ReportText"">" & _
objTimeSheetDS.Tables("TimeSheets").Rows(intIndex).Item( _
"UserName") & "</td>")
End If
Response.Write("<td class=""ReportText"" align=""right"">" & _
objTimeSheetDS.Tables( _
"TimeSheets").Rows(intIndex).Item("TotalHours") & "</td>")
Response.Write("<td> </td>")
Response.Write("</tr>")
Next
Response.Write("</table>")
End Sub
Private Sub ProcessLongReport()
Response.Write("<table cellspacing=""0"" cellpadding=""3""" & _
"border=""0"">")
Response.Write("<tr class=""ReportHeader"">")
Response.Write("<td nowrap width=""200px"">Employee</td>")
Response.Write("<td nowrap>Total Hours</td>")
Response.Write("<td width=""5px""> </td>")
Response.Write("<td nowrap>Week Ending Date</td>")
Response.Write("<td width=""5px""> </td>")
Response.Write("<td nowrap>Approval Date</td>")
Response.Write("<td width=""100%""> </td>")
Response.Write("</tr>")
For intIndex As Integer = 0 To _
objTimeSheetDS.Tables("TimeSheets").Rows.Count - 1
blnEvenRow = Not blnEvenRow
If blnEvenRow Then
Response.Write("<tr class=""EvenRow"">")
Else
Response.Write("<tr class=""OddRow"">")
End If
Response.Write("<td class=""ReportText"">" & objTimeSheetDS.Tables( _
"TimeSheets").Rows(intIndex).Item("UserName") & "</td>")
Response.Write("<td class=""ReportText"" align=""right"">" & _
objTimeSheetDS.Tables("TimeSheets").Rows(intIndex).Item( _
"TotalHours") & "</td>")
Response.Write("<td> </td>")
Response.Write("<td class=""ReportText"" align=""right"">" & _
objTimeSheetDS.Tables( _
"TimeSheets").Rows(intIndex).Item("WeekEndingDate") & "</td>")
Response.Write("<td> </td>")
Response.Write("<td class=""ReportText"" align=""right"">")
If IsDBNull(objTimeSheetDS.Tables( _
"TimeSheets").Rows(intIndex).Item("ApprovalDate")) Then
Response.Write("</td>")
Else
Response.Write(Format(objTimeSheetDS.Tables( _
"TimeSheets").Rows(intIndex).Item( _
"ApprovalDate"), "Short Date") & "</td>")
End If
Response.Write("<td> </td>")
Response.Write("</tr>")
Next
Response.Write("</table>")
End Sub
End Class
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -