簡體   English   中英

計數字段水晶報表

[英]Count Field Crystal Report

我有一些數據庫視圖

在這里查看

select main.processId,
main.departmentname as DepartmentName,
dpaudit.DropdownlistName DdlAudit, 
main.PICForAudit,
main.DateOfAudit,
main.ReferenceDetail,
main.finding as Finding,
CASE dpfinding.DropdownlistName WHEN 'RFI' THEN 'X' ELSE '' END AS IsRFi,
CASE dpfinding.DropdownlistName WHEN 'Minor NC' THEN 'X' ELSE '' END AS IsMinor,
CASE dpfinding.DropdownlistName WHEN 'Major NC' THEN 'X' ELSE '' END AS IsMajor,
iird.description as Description,
CASE spdl.DropdownlistName WHEN 'High Priority' THEN 'X' ELSE '' END AS High,
CASE spdl.DropdownlistName WHEN 'Medium Priority' THEN 'X' ELSE '' END AS Medium,
CASE spdl.DropdownlistName WHEN 'Low Priority' THEN 'X' ELSE '' END AS Low,
bc.DropdownlistName as RootCause,
iird.CorrectiveActionPlan,
iird.picResponsibilityName,
iird.TargetDateCompletion,
pos.positionname as Position
from SheAuditMain main 
join IncidentInvestigationRecommendationDescription iird on main.ProcessId = iird.PIDSource
join SheProgramsDropdownlistMenu spdl on spdl.dropdownlistcode = iird.priority
join SheProgramsDropdownlistMenu dpaudit on main.TypeOfAudit = dpaudit.DropdownlistCode 
join SheProgramsDropdownlistMenu dpfinding on main.TypeOfFinding = dpfinding.DropdownlistCode 
join SheProgramsDropdownlistMenu bc on bc.dropdownlistcode = iird.basiccause
join vwusrposOs pos on iird.picResponsibility = pos.positionid

然后我想使用水晶報表創建報表,所以報表看起來像這樣

https://ibb.co/eq924T

正如我們看到的[L,M,H]優先級計數不正確,

我為此先做一些代碼,我從每個字段[L,M,H]中添加運行總計字段,然后在公式中編寫代碼

高值字段的公式字段的示例,因為低值和med相同

Local numberVar i := 0;
Local numberVar TotalHigh := 0;

for i := 0 to {#RTotalHigh} - 1 do   <{#RTotalHigh} coming from running total
    (
    if ({VwCheckPrior.High} = 'X') then
        TotalHigh := TotalHigh + 1
    else 
        0 
     );
TotalHigh  

如何顯示正確的計算?

[抱歉圖片,我之前忘記了我的帳戶]

我認為您應該在該情況下使用NULL而不是空字符串(''),因為當您使用空字符串時,它將總計

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM