首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

ASP 網頁顯示資料庫明細並在最後新增匯總行:累加變數法實作

     編輯:程式設計綜合問答

需求

使用 Dreamweaver 產生的 ASP 重複區域顯示資料表,需在最後一行後追加一行「匯總」,顯示數值欄位總和。

核心邏輯:迴圈中累加,迴圈後輸出

<%
Dim sumSales, sumShip, sumRec, sumNewArs, sumTotalArs, sumMonthShip, sumRecRate
sumSales = 0: sumShip = 0: sumRec = 0: sumNewArs = 0: sumTotalArs = 0: sumMonthShip = 0: sumRecRate = 0
%>

<% While ((Repeat1__numRows <> 0) AND (NOT Recordset1.EOF)) %>
  <tr>
    <td><%=(Recordset1.Fields.Item("Dpt").Value)%></td>
    <td><%=(Recordset1.Fields.Item("SalesTarget").Value)%></td>
    <td><%=(Recordset1.Fields.Item("CurYearShipAmt").Value)%></td>
    <td><%=(Recordset1.Fields.Item("CurYearRecAmt").Value)%></td>
    <td><%=(Recordset1.Fields.Item("CurYearNewArs").Value)%></td>
    <td><%=(Recordset1.Fields.Item("ToTalArs").Value)%></td>
    <td><%=(Recordset1.Fields.Item("CurMonthShip").Value)%></td>
    <td><%=FormatPercent((Recordset1.Fields.Item("RecRate").Value))%></td>
  </tr>
  <%
    ' 累加
    sumSales      = sumSales      + CDbl(Recordset1.Fields.Item("SalesTarget").Value)
    sumShip       = sumShip       + CDbl(Recordset1.Fields.Item("CurYearShipAmt").Value)
    sumRec        = sumRec        + CDbl(Recordset1.Fields.Item("CurYearRecAmt").Value)
    sumNewArs     = sumNewArs     + CDbl(Recordset1.Fields.Item("CurYearNewArs").Value)
    sumTotalArs   = sumTotalArs   + CDbl(Recordset1.Fields.Item("ToTalArs").Value)
    sumMonthShip  = sumMonthShip  + CDbl(Recordset1.Fields.Item("CurMonthShip").Value)
    sumRecRate    = sumRecRate    + CDbl(Recordset1.Fields.Item("RecRate").Value)
    Recordset1.MoveNext()
  Wend
%>

<!-- 匯總行 -->
<tr style="font-weight:bold; background:#f0f0f0;">
  <td>合計</td>
  <td><%=sumSales%></td>
  <td><%=sumShip%></td>
  <td><%=sumRec%></td>
  <td><%=sumNewArs%></td>
  <td><%=sumTotalArs%></td>
  <td><%=sumMonthShip%></td>
  <td><%=FormatPercent(sumRecRate / Repeat1__totalRows)%></td> <!-- 平均值 -->
</tr>

關鍵點

  • 在 While 迴圈前宣告累加變數並歸零。
  • 迴圈內每行輸出時同步累加(用 CDbl 防止 Null/字串導致型別錯誤)。
  • 迴圈結束後(Wend 之後)直接輸出匯總 <tr>。
  • 百分比類欄位通常取「平均值」而非總和,視業務調整。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved