Skip to content

Commit 9a8fa1c

Browse files
committed
split sp uspSSRSGetClaimOverview
1 parent a44f368 commit 9a8fa1c

3 files changed

Lines changed: 102 additions & 204 deletions

File tree

sql/base/6_bundle_stored_procedures.sql

Lines changed: 0 additions & 102 deletions
Original file line numberDiff line numberDiff line change
@@ -11546,108 +11546,6 @@ CREATE OR ALTER PROCEDURE [dbo].[uspSSRSFeedbackPrompt]
1154611546

1154711547
GO
1154811548

11549-
SET ANSI_NULLS ON
11550-
GO
11551-
SET QUOTED_IDENTIFIER ON
11552-
GO
11553-
CREATE OR ALTER PROCEDURE [dbo].[uspSSRSGetClaimOverview]
11554-
(
11555-
@HFID INT,
11556-
@LocationId INT,
11557-
@ProdId INT,
11558-
@StartDate DATE,
11559-
@EndDate DATE,
11560-
@ClaimStatus INT = NULL,
11561-
@ClaimRejReason xClaimRejReasons READONLY,
11562-
@Scope INT = NULL
11563-
)
11564-
AS
11565-
BEGIN
11566-
-- no scope -1
11567-
-- claim only 0
11568-
-- claimand rejection 1
11569-
-- all 2
11570-
;WITH TotalForItems AS
11571-
(
11572-
SELECT C.ClaimId, SUM(CI.PriceAsked * CI.QtyProvided)Claimed,
11573-
SUM(ISNULL(CI.PriceApproved, CI.PriceAsked) * ISNULL(CI.QtyApproved, CI.QtyProvided)) Approved,
11574-
SUM(CI.PriceValuated)Adjusted,
11575-
SUM(CI.RemuneratedAmount)Remunerated
11576-
FROM tblClaim C LEFT OUTER JOIN tblClaimItems CI ON C.ClaimId = CI.ClaimID
11577-
WHERE C.ValidityTo IS NULL
11578-
AND CI.ValidityTo IS NULL
11579-
GROUP BY C.ClaimID
11580-
), TotalForServices AS
11581-
(
11582-
SELECT C.ClaimId, SUM(CS.PriceAsked * CS.QtyProvided)Claimed,
11583-
SUM(ISNULL(CS.PriceApproved, CS.PriceAsked) * ISNULL(CS.QtyApproved, CS.QtyProvided)) Approved,
11584-
SUM(CS.PriceValuated)Adjusted,
11585-
SUM(CS.RemuneratedAmount)Remunerated
11586-
FROM tblClaim C
11587-
LEFT OUTER JOIN tblClaimServices CS ON C.ClaimId = CS.ClaimID
11588-
WHERE C.ValidityTo IS NULL
11589-
AND CS.ValidityTo IS NULL
11590-
GROUP BY C.ClaimID
11591-
)
11592-
11593-
SELECT C.DateClaimed, C.ClaimID, I.ItemId, S.ServiceID, HF.HFCode, HF.HFName, C.ClaimCode, C.DateClaimed, CA.LastName + ' ' + CA.OtherNames ClaimAdminName,
11594-
C.DateFrom, C.DateTo, Ins.CHFID, Ins.LastName + ' ' + Ins.OtherNames InsureeName,
11595-
CASE C.ClaimStatus WHEN 1 THEN N'Rejected' WHEN 2 THEN N'Entered' WHEN 4 THEN N'Checked' WHEN 8 THEN N'Processed' WHEN 16 THEN N'Valuated' END ClaimStatus,
11596-
C.RejectionReason, COALESCE(TFI.Claimed + TFS.Claimed, TFI.Claimed, TFS.Claimed) Claimed,
11597-
COALESCE(TFI.Approved + TFS.Approved, TFI.Approved, TFS.Approved) Approved,
11598-
COALESCE(TFI.Adjusted + TFS.Adjusted, TFI.Adjusted, TFS.Adjusted) Adjusted,
11599-
COALESCE(TFI.Remunerated + TFS.Remunerated, TFI.Remunerated, TFS.Remunerated)Paid,
11600-
CASE WHEN @Scope =2 OR CI.RejectionReason <> 0 THEN I.ItemCode ELSE NULL END RejectedItem, CI.RejectionReason ItemRejectionCode,
11601-
CASE WHEN @Scope =2 OR CS.RejectionReason <> 0 THEN S.ServCode ELSE NULL END RejectedService, CS.RejectionReason ServiceRejectionCode,
11602-
CASE WHEN @Scope =2 OR CI.QtyProvided <> COALESCE(CI.QtyApproved,CI.QtyProvided) THEN I.ItemCode ELSE NULL END AdjustedItem,
11603-
CASE WHEN @Scope =2 OR CI.QtyProvided <> COALESCE(CI.QtyApproved,CI.QtyProvided) THEN ISNULL(CI.QtyProvided,0) ELSE NULL END OrgQtyItem,
11604-
CASE WHEN @Scope =2 OR CI.QtyProvided <> COALESCE(CI.QtyApproved ,CI.QtyProvided) THEN ISNULL(CI.QtyApproved,0) ELSE NULL END AdjQtyItem,
11605-
CASE WHEN @Scope =2 OR CS.QtyProvided <> COALESCE(CS.QtyApproved,CS.QtyProvided) THEN S.ServCode ELSE NULL END AdjustedService,
11606-
CASE WHEN @Scope =2 OR CS.QtyProvided <> COALESCE(CS.QtyApproved,CS.QtyProvided) THEN ISNULL(CS.QtyProvided,0) ELSE NULL END OrgQtyService,
11607-
CASE WHEN @Scope =2 OR CS.QtyProvided <> COALESCE(CS.QtyApproved ,CS.QtyProvided) THEN ISNULL(CS.QtyApproved,0) ELSE NULL END AdjQtyService,
11608-
C.Explanation,
11609-
-- ALL claims
11610-
CASE WHEN @Scope = 2 THEN CS.QtyApproved ELSE NULL END ServiceQtyApproved,
11611-
CASE WHEN @Scope = 2 THEN CI.QtyApproved ELSE NULL END ItemQtyApproved,
11612-
CASE WHEN @Scope = 2 THEN cs.PriceAsked ELSE NULL END ServicePrice,
11613-
CASE WHEN @Scope = 2 THEN CI.PriceAsked ELSE NULL END ItemPrice,
11614-
CASE WHEN @Scope = 2 THEN ISNULL(cs.PriceApproved,0) ELSE NULL END ServicePriceApproved,
11615-
CASE WHEN @Scope = 2 THEN ISNULL(ci.PriceApproved,0) ELSE NULL END ItemPriceApproved,
11616-
CASE WHEN @Scope = 2 THEN ISNULL(cs.Justification,NULL) ELSE NULL END ServiceJustification,
11617-
CASE WHEN @Scope = 2 THEN ISNULL(CI.Justification,NULL) ELSE NULL END ItemJustification,
11618-
CASE WHEN @Scope = 2 THEN cs.ClaimServiceID ELSE NULL END ClaimServiceID,
11619-
CASE WHEN @Scope = 2 THEN CI.ClaimItemID ELSE NULL END ClaimItemID,
11620-
--,cs.PriceApproved ServicePriceApproved,ci.PriceApproved ItemPriceApproved--,
11621-
CASE WHEN @Scope > 0 THEN CONCAT(CS.RejectionReason,' - ', XCS.Name) ELSE NULL END ServiceRejectionReason,
11622-
CASE WHEN @Scope > 0 THEN CONCAT(CI.RejectionReason, ' - ', XCI.Name) ELSE NULL END ItemRejectionReason
11623-
11624-
-- end all claims
11625-
11626-
11627-
FROM tblClaim C LEFT OUTER JOIN tblClaimItems CI ON C.ClaimId = CI.ClaimID
11628-
LEFT OUTER JOIN tblClaimServices CS ON C.ClaimId = CS.ClaimID
11629-
LEFT OUTER JOIN tblItems I ON CI.ItemId = I.ItemID
11630-
LEFT OUTER JOIN tblServices S ON CS.ServiceID = S.ServiceID
11631-
--INNER JOIN tblProduct PROD ON PROD.ProdID = CS.ProdID AND PROD.ProdID = CI.ProdID
11632-
INNER JOIN tblHF HF ON C.HFID = HF.HfID
11633-
LEFT OUTER JOIN tblClaimAdmin CA ON C.ClaimAdminId = CA.ClaimAdminId
11634-
INNER JOIN tblInsuree Ins ON C.InsureeId = Ins.InsureeId
11635-
LEFT OUTER JOIN TotalForItems TFI ON C.ClaimId = TFI.ClaimID
11636-
LEFT OUTER JOIN TotalForServices TFS ON C.ClaimId = TFS.ClaimId
11637-
-- all claims
11638-
LEFT JOIN @ClaimRejReason XCI ON XCI.ID = CI.RejectionReason
11639-
LEFT JOIN @ClaimRejReason XCS ON XCS.ID = CS.RejectionReason
11640-
-- and all claims
11641-
WHERE C.ValidityTo IS NULL
11642-
AND ISNULL(C.DateTo,C.DateFrom) BETWEEN @StartDate AND @EndDate
11643-
AND (C.ClaimStatus = @ClaimStatus OR @ClaimStatus IS NULL)
11644-
AND (HF.LocationId = @LocationId OR @LocationId = 0)
11645-
AND (HF.HFID = @HFID OR @HFID = 0)
11646-
AND (CI.ProdID = @ProdId OR CS.ProdID = @ProdId
11647-
OR COALESCE(CS.ProdID, CI.ProdId) IS NULL OR @ProdId = 0)
11648-
END
11649-
11650-
GO
1165111549

1165211550
SET ANSI_NULLS ON
1165311551
GO

sql/migrations/1_migration_latest.sql

Lines changed: 0 additions & 102 deletions
Original file line numberDiff line numberDiff line change
@@ -2499,108 +2499,6 @@ CREATE PROCEDURE [dbo].[uspSSRSGetMatchingFunds]
24992499
END
25002500
Go
25012501

2502-
IF OBJECT_ID('uspSSRSGetClaimOverview', 'P') IS NOT NULL
2503-
DROP PROCEDURE uspSSRSGetClaimOverview
2504-
GO
2505-
2506-
CREATE PROCEDURE [dbo].[uspSSRSGetClaimOverview]
2507-
(
2508-
@HFID INT,
2509-
@LocationId INT,
2510-
@ProdId INT,
2511-
@StartDate DATE,
2512-
@EndDate DATE,
2513-
@ClaimStatus INT = NULL,
2514-
@ClaimRejReason xClaimRejReasons READONLY,
2515-
@Scope INT = NULL
2516-
)
2517-
AS
2518-
BEGIN
2519-
-- no scope -1
2520-
-- claim only 0
2521-
-- claimand rejection 1
2522-
-- all 2
2523-
;WITH TotalForItems AS
2524-
(
2525-
SELECT C.ClaimId, SUM(CI.PriceAsked * CI.QtyProvided)Claimed,
2526-
SUM(ISNULL(CI.PriceApproved, CI.PriceAsked) * ISNULL(CI.QtyApproved, CI.QtyProvided)) Approved,
2527-
SUM(CI.PriceValuated)Adjusted,
2528-
SUM(CI.RemuneratedAmount)Remunerated
2529-
FROM tblClaim C LEFT OUTER JOIN tblClaimItems CI ON C.ClaimId = CI.ClaimID
2530-
WHERE C.ValidityTo IS NULL
2531-
AND CI.ValidityTo IS NULL
2532-
GROUP BY C.ClaimID
2533-
), TotalForServices AS
2534-
(
2535-
SELECT C.ClaimId, SUM(CS.PriceAsked * CS.QtyProvided)Claimed,
2536-
SUM(ISNULL(CS.PriceApproved, CS.PriceAsked) * ISNULL(CS.QtyApproved, CS.QtyProvided)) Approved,
2537-
SUM(CS.PriceValuated)Adjusted,
2538-
SUM(CS.RemuneratedAmount)Remunerated
2539-
FROM tblClaim C
2540-
LEFT OUTER JOIN tblClaimServices CS ON C.ClaimId = CS.ClaimID
2541-
WHERE C.ValidityTo IS NULL
2542-
AND CS.ValidityTo IS NULL
2543-
GROUP BY C.ClaimID
2544-
)
2545-
2546-
SELECT C.DateClaimed, C.ClaimID, I.ItemId, S.ServiceID, HF.HFCode, HF.HFName, C.ClaimCode, C.DateClaimed, CA.LastName + ' ' + CA.OtherNames ClaimAdminName,
2547-
C.DateFrom, C.DateTo, Ins.CHFID, Ins.LastName + ' ' + Ins.OtherNames InsureeName,
2548-
CASE C.ClaimStatus WHEN 1 THEN N'Rejected' WHEN 2 THEN N'Entered' WHEN 4 THEN N'Checked' WHEN 8 THEN N'Processed' WHEN 16 THEN N'Valuated' END ClaimStatus,
2549-
C.RejectionReason, COALESCE(TFI.Claimed + TFS.Claimed, TFI.Claimed, TFS.Claimed) Claimed,
2550-
COALESCE(TFI.Approved + TFS.Approved, TFI.Approved, TFS.Approved) Approved,
2551-
COALESCE(TFI.Adjusted + TFS.Adjusted, TFI.Adjusted, TFS.Adjusted) Adjusted,
2552-
COALESCE(TFI.Remunerated + TFS.Remunerated, TFI.Remunerated, TFS.Remunerated)Paid,
2553-
CASE WHEN @Scope =2 OR CI.RejectionReason <> 0 THEN I.ItemCode ELSE NULL END RejectedItem, CI.RejectionReason ItemRejectionCode,
2554-
CASE WHEN @Scope =2 OR CS.RejectionReason <> 0 THEN S.ServCode ELSE NULL END RejectedService, CS.RejectionReason ServiceRejectionCode,
2555-
CASE WHEN @Scope =2 OR CI.QtyProvided <> COALESCE(CI.QtyApproved,CI.QtyProvided) THEN I.ItemCode ELSE NULL END AdjustedItem,
2556-
CASE WHEN @Scope =2 OR CI.QtyProvided <> COALESCE(CI.QtyApproved,CI.QtyProvided) THEN ISNULL(CI.QtyProvided,0) ELSE NULL END OrgQtyItem,
2557-
CASE WHEN @Scope =2 OR CI.QtyProvided <> COALESCE(CI.QtyApproved ,CI.QtyProvided) THEN ISNULL(CI.QtyApproved,0) ELSE NULL END AdjQtyItem,
2558-
CASE WHEN @Scope =2 OR CS.QtyProvided <> COALESCE(CS.QtyApproved,CS.QtyProvided) THEN S.ServCode ELSE NULL END AdjustedService,
2559-
CASE WHEN @Scope =2 OR CS.QtyProvided <> COALESCE(CS.QtyApproved,CS.QtyProvided) THEN ISNULL(CS.QtyProvided,0) ELSE NULL END OrgQtyService,
2560-
CASE WHEN @Scope =2 OR CS.QtyProvided <> COALESCE(CS.QtyApproved ,CS.QtyProvided) THEN ISNULL(CS.QtyApproved,0) ELSE NULL END AdjQtyService,
2561-
C.Explanation,
2562-
-- ALL claims
2563-
CASE WHEN @Scope = 2 THEN CS.QtyApproved ELSE NULL END ServiceQtyApproved,
2564-
CASE WHEN @Scope = 2 THEN CI.QtyApproved ELSE NULL END ItemQtyApproved,
2565-
CASE WHEN @Scope = 2 THEN cs.PriceAsked ELSE NULL END ServicePrice,
2566-
CASE WHEN @Scope = 2 THEN CI.PriceAsked ELSE NULL END ItemPrice,
2567-
CASE WHEN @Scope = 2 THEN ISNULL(cs.PriceApproved,0) ELSE NULL END ServicePriceApproved,
2568-
CASE WHEN @Scope = 2 THEN ISNULL(ci.PriceApproved,0) ELSE NULL END ItemPriceApproved,
2569-
CASE WHEN @Scope = 2 THEN ISNULL(cs.Justification,NULL) ELSE NULL END ServiceJustification,
2570-
CASE WHEN @Scope = 2 THEN ISNULL(CI.Justification,NULL) ELSE NULL END ItemJustification,
2571-
CASE WHEN @Scope = 2 THEN cs.ClaimServiceID ELSE NULL END ClaimServiceID,
2572-
CASE WHEN @Scope = 2 THEN CI.ClaimItemID ELSE NULL END ClaimItemID,
2573-
--,cs.PriceApproved ServicePriceApproved,ci.PriceApproved ItemPriceApproved--,
2574-
CASE WHEN @Scope > 0 THEN CONCAT(CS.RejectionReason,' - ', XCS.Name) ELSE NULL END ServiceRejectionReason,
2575-
CASE WHEN @Scope > 0 THEN CONCAT(CI.RejectionReason, ' - ', XCI.Name) ELSE NULL END ItemRejectionReason
2576-
2577-
-- end all claims
2578-
2579-
2580-
FROM tblClaim C LEFT OUTER JOIN tblClaimItems CI ON C.ClaimId = CI.ClaimID
2581-
LEFT OUTER JOIN tblClaimServices CS ON C.ClaimId = CS.ClaimID
2582-
LEFT OUTER JOIN tblItems I ON CI.ItemId = I.ItemID
2583-
LEFT OUTER JOIN tblServices S ON CS.ServiceID = S.ServiceID
2584-
--INNER JOIN tblProduct PROD ON PROD.ProdID = CS.ProdID AND PROD.ProdID = CI.ProdID
2585-
INNER JOIN tblHF HF ON C.HFID = HF.HfID
2586-
LEFT OUTER JOIN tblClaimAdmin CA ON C.ClaimAdminId = CA.ClaimAdminId
2587-
INNER JOIN tblInsuree Ins ON C.InsureeId = Ins.InsureeId
2588-
LEFT OUTER JOIN TotalForItems TFI ON C.ClaimId = TFI.ClaimID
2589-
LEFT OUTER JOIN TotalForServices TFS ON C.ClaimId = TFS.ClaimId
2590-
-- all claims
2591-
LEFT JOIN @ClaimRejReason XCI ON XCI.ID = CI.RejectionReason
2592-
LEFT JOIN @ClaimRejReason XCS ON XCS.ID = CS.RejectionReason
2593-
-- and all claims
2594-
WHERE C.ValidityTo IS NULL
2595-
AND ISNULL(C.DateTo,C.DateFrom) BETWEEN @StartDate AND @EndDate
2596-
AND (C.ClaimStatus = @ClaimStatus OR @ClaimStatus IS NULL)
2597-
AND (HF.LocationId = @LocationId OR @LocationId = 0)
2598-
AND (HF.HFID = @HFID OR @HFID = 0)
2599-
AND (CI.ProdID = @ProdId OR CS.ProdID = @ProdId
2600-
OR COALESCE(CS.ProdID, CI.ProdId) IS NULL OR @ProdId = 0)
2601-
END
2602-
Go
2603-
26042502

26052503
IF OBJECT_ID('uspSSRSEnroledFamilies', 'P') IS NOT NULL
26062504
DROP PROCEDURE uspSSRSEnroledFamilies
Lines changed: 102 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,102 @@
1+
2+
IF OBJECT_ID('uspSSRSGetClaimOverview', 'P') IS NOT NULL
3+
DROP PROCEDURE uspSSRSGetClaimOverview
4+
GO
5+
6+
CREATE PROCEDURE [dbo].[uspSSRSGetClaimOverview]
7+
(
8+
@HFID INT,
9+
@LocationId INT,
10+
@ProdId INT,
11+
@StartDate DATE,
12+
@EndDate DATE,
13+
@ClaimStatus INT = NULL,
14+
@ClaimRejReason xClaimRejReasons READONLY,
15+
@Scope INT = NULL
16+
)
17+
AS
18+
BEGIN
19+
-- no scope -1
20+
-- claim only 0
21+
-- claimand rejection 1
22+
-- all 2
23+
;WITH TotalForItems AS
24+
(
25+
SELECT C.ClaimId, SUM(CI.PriceAsked * CI.QtyProvided)Claimed,
26+
SUM(ISNULL(CI.PriceApproved, CI.PriceAsked) * ISNULL(CI.QtyApproved, CI.QtyProvided)) Approved,
27+
SUM(CI.PriceValuated)Adjusted,
28+
SUM(CI.RemuneratedAmount)Remunerated
29+
FROM tblClaim C LEFT OUTER JOIN tblClaimItems CI ON C.ClaimId = CI.ClaimID
30+
WHERE C.ValidityTo IS NULL
31+
AND CI.ValidityTo IS NULL
32+
GROUP BY C.ClaimID
33+
), TotalForServices AS
34+
(
35+
SELECT C.ClaimId, SUM(CS.PriceAsked * CS.QtyProvided)Claimed,
36+
SUM(ISNULL(CS.PriceApproved, CS.PriceAsked) * ISNULL(CS.QtyApproved, CS.QtyProvided)) Approved,
37+
SUM(CS.PriceValuated)Adjusted,
38+
SUM(CS.RemuneratedAmount)Remunerated
39+
FROM tblClaim C
40+
LEFT OUTER JOIN tblClaimServices CS ON C.ClaimId = CS.ClaimID
41+
WHERE C.ValidityTo IS NULL
42+
AND CS.ValidityTo IS NULL
43+
GROUP BY C.ClaimID
44+
)
45+
46+
SELECT C.DateClaimed, C.ClaimID, I.ItemId, S.ServiceID, HF.HFCode, HF.HFName, C.ClaimCode, C.DateClaimed, CA.LastName + ' ' + CA.OtherNames ClaimAdminName,
47+
C.DateFrom, C.DateTo, Ins.CHFID, Ins.LastName + ' ' + Ins.OtherNames InsureeName,
48+
CASE C.ClaimStatus WHEN 1 THEN N'Rejected' WHEN 2 THEN N'Entered' WHEN 4 THEN N'Checked' WHEN 8 THEN N'Processed' WHEN 16 THEN N'Valuated' END ClaimStatus,
49+
C.RejectionReason, COALESCE(TFI.Claimed + TFS.Claimed, TFI.Claimed, TFS.Claimed) Claimed,
50+
COALESCE(TFI.Approved + TFS.Approved, TFI.Approved, TFS.Approved) Approved,
51+
COALESCE(TFI.Adjusted + TFS.Adjusted, TFI.Adjusted, TFS.Adjusted) Adjusted,
52+
COALESCE(TFI.Remunerated + TFS.Remunerated, TFI.Remunerated, TFS.Remunerated)Paid,
53+
CASE WHEN @Scope =2 OR CI.RejectionReason <> 0 THEN I.ItemCode ELSE NULL END RejectedItem, CI.RejectionReason ItemRejectionCode,
54+
CASE WHEN @Scope =2 OR CS.RejectionReason <> 0 THEN S.ServCode ELSE NULL END RejectedService, CS.RejectionReason ServiceRejectionCode,
55+
CASE WHEN @Scope =2 OR CI.QtyProvided <> COALESCE(CI.QtyApproved,CI.QtyProvided) THEN I.ItemCode ELSE NULL END AdjustedItem,
56+
CASE WHEN @Scope =2 OR CI.QtyProvided <> COALESCE(CI.QtyApproved,CI.QtyProvided) THEN ISNULL(CI.QtyProvided,0) ELSE NULL END OrgQtyItem,
57+
CASE WHEN @Scope =2 OR CI.QtyProvided <> COALESCE(CI.QtyApproved ,CI.QtyProvided) THEN ISNULL(CI.QtyApproved,0) ELSE NULL END AdjQtyItem,
58+
CASE WHEN @Scope =2 OR CS.QtyProvided <> COALESCE(CS.QtyApproved,CS.QtyProvided) THEN S.ServCode ELSE NULL END AdjustedService,
59+
CASE WHEN @Scope =2 OR CS.QtyProvided <> COALESCE(CS.QtyApproved,CS.QtyProvided) THEN ISNULL(CS.QtyProvided,0) ELSE NULL END OrgQtyService,
60+
CASE WHEN @Scope =2 OR CS.QtyProvided <> COALESCE(CS.QtyApproved ,CS.QtyProvided) THEN ISNULL(CS.QtyApproved,0) ELSE NULL END AdjQtyService,
61+
C.Explanation,
62+
-- ALL claims
63+
CASE WHEN @Scope = 2 THEN CS.QtyApproved ELSE NULL END ServiceQtyApproved,
64+
CASE WHEN @Scope = 2 THEN CI.QtyApproved ELSE NULL END ItemQtyApproved,
65+
CASE WHEN @Scope = 2 THEN cs.PriceAsked ELSE NULL END ServicePrice,
66+
CASE WHEN @Scope = 2 THEN CI.PriceAsked ELSE NULL END ItemPrice,
67+
CASE WHEN @Scope = 2 THEN ISNULL(cs.PriceApproved,0) ELSE NULL END ServicePriceApproved,
68+
CASE WHEN @Scope = 2 THEN ISNULL(ci.PriceApproved,0) ELSE NULL END ItemPriceApproved,
69+
CASE WHEN @Scope = 2 THEN ISNULL(cs.Justification,NULL) ELSE NULL END ServiceJustification,
70+
CASE WHEN @Scope = 2 THEN ISNULL(CI.Justification,NULL) ELSE NULL END ItemJustification,
71+
CASE WHEN @Scope = 2 THEN cs.ClaimServiceID ELSE NULL END ClaimServiceID,
72+
CASE WHEN @Scope = 2 THEN CI.ClaimItemID ELSE NULL END ClaimItemID,
73+
--,cs.PriceApproved ServicePriceApproved,ci.PriceApproved ItemPriceApproved--,
74+
CASE WHEN @Scope > 0 THEN CONCAT(CS.RejectionReason,' - ', XCS.Name) ELSE NULL END ServiceRejectionReason,
75+
CASE WHEN @Scope > 0 THEN CONCAT(CI.RejectionReason, ' - ', XCI.Name) ELSE NULL END ItemRejectionReason
76+
77+
-- end all claims
78+
79+
80+
FROM tblClaim C LEFT OUTER JOIN tblClaimItems CI ON C.ClaimId = CI.ClaimID
81+
LEFT OUTER JOIN tblClaimServices CS ON C.ClaimId = CS.ClaimID
82+
LEFT OUTER JOIN tblItems I ON CI.ItemId = I.ItemID
83+
LEFT OUTER JOIN tblServices S ON CS.ServiceID = S.ServiceID
84+
--INNER JOIN tblProduct PROD ON PROD.ProdID = CS.ProdID AND PROD.ProdID = CI.ProdID
85+
INNER JOIN tblHF HF ON C.HFID = HF.HfID
86+
LEFT OUTER JOIN tblClaimAdmin CA ON C.ClaimAdminId = CA.ClaimAdminId
87+
INNER JOIN tblInsuree Ins ON C.InsureeId = Ins.InsureeId
88+
LEFT OUTER JOIN TotalForItems TFI ON C.ClaimId = TFI.ClaimID
89+
LEFT OUTER JOIN TotalForServices TFS ON C.ClaimId = TFS.ClaimId
90+
-- all claims
91+
LEFT JOIN @ClaimRejReason XCI ON XCI.ID = CI.RejectionReason
92+
LEFT JOIN @ClaimRejReason XCS ON XCS.ID = CS.RejectionReason
93+
-- and all claims
94+
WHERE C.ValidityTo IS NULL
95+
AND ISNULL(C.DateTo,C.DateFrom) BETWEEN @StartDate AND @EndDate
96+
AND (C.ClaimStatus = @ClaimStatus OR @ClaimStatus IS NULL)
97+
AND (HF.LocationId = @LocationId OR @LocationId = 0)
98+
AND (HF.HFID = @HFID OR @HFID = 0)
99+
AND (CI.ProdID = @ProdId OR CS.ProdID = @ProdId
100+
OR COALESCE(CS.ProdID, CI.ProdId) IS NULL OR @ProdId = 0)
101+
END
102+
Go

0 commit comments

Comments
 (0)