Skip to content

Commit 187d87f

Browse files
committed
move uspSSRSProcessBatchWithClaim
1 parent ab69418 commit 187d87f

3 files changed

Lines changed: 73 additions & 159 deletions

File tree

sql/base/6_bundle_stored_procedures.sql

Lines changed: 0 additions & 86 deletions
Original file line numberDiff line numberDiff line change
@@ -12510,92 +12510,6 @@ CREATE OR ALTER PROCEDURE [dbo].[uspSSRSProcessBatch]
1251012510
END
1251112511
GO
1251212512

12513-
SET ANSI_NULLS ON
12514-
GO
12515-
SET QUOTED_IDENTIFIER ON
12516-
GO
12517-
12518-
CREATE OR ALTER PROCEDURE [dbo].[uspSSRSProcessBatchWithClaim]
12519-
(
12520-
@LocationId INT = 0,
12521-
@ProdId INT = 0,
12522-
@RunID INT = 0,
12523-
@HFID INT = 0,
12524-
@HFLevel CHAR(1) = N'',
12525-
@DateFrom DATE = NULL,
12526-
@DateTo DATE = NULL
12527-
)
12528-
AS
12529-
BEGIN
12530-
12531-
IF @DateFrom = '' OR @DateFrom IS NULL OR @DateTo = '' OR @DateTo IS NULL
12532-
BEGIN
12533-
SET @DateFrom = N'1900-01-01'
12534-
SET @DateTo = N'3000-12-31'
12535-
END
12536-
12537-
;WITH CDetails AS
12538-
(
12539-
SELECT CI.ClaimId, CI.ProdId,
12540-
SUM(ISNULL(CI.PriceApproved, CI.PriceAsked) * ISNULL(CI.QtyApproved, CI.QtyProvided)) PriceApproved,
12541-
SUM(CI.PriceValuated) PriceAdjusted, SUM(CI.RemuneratedAmount)RemuneratedAmount
12542-
FROM tblClaimItems CI
12543-
WHERE CI.ValidityTo IS NULL
12544-
AND CI.ClaimItemStatus = 1
12545-
GROUP BY CI.ClaimId, CI.ProdId
12546-
UNION ALL
12547-
12548-
SELECT CS.ClaimId, CS.ProdId,
12549-
SUM(ISNULL(CS.PriceApproved, CS.PriceAsked) * ISNULL(CS.QtyApproved, CS.QtyProvided)) PriceApproved,
12550-
SUM(CS.PriceValuated) PriceValuated, SUM(CS.RemuneratedAmount) RemuneratedAmount
12551-
12552-
FROM tblClaimServices CS
12553-
WHERE CS.ValidityTo IS NULL
12554-
AND CS.ClaimServiceStatus = 1
12555-
GROUP BY CS.CLaimId, CS.ProdId
12556-
)
12557-
SELECT C.ClaimCode, C.DateClaimed, CA.OtherNames OtherNamesAdmin, CA.LastName LastNameAdmin, C.DateFrom, C.DateTo, I.CHFID, I.OtherNames,
12558-
I.LastName, C.HFID, HF.HFCode, HF.HFName, HF.AccCode, Prod.ProdID, Prod.ProductCode, Prod.ProductName,
12559-
C.Claimed PriceAsked, SUM(CDetails.PriceApproved)PriceApproved, SUM(CDetails.PriceAdjusted)PriceAdjusted, SUM(CDetails.RemuneratedAmount)RemuneratedAmount,
12560-
D.DistrictID, D.DistrictName, R.RegionId, R.RegionName
12561-
12562-
FROM tblClaim C
12563-
LEFT OUTER JOIN tblClaimAdmin CA ON CA.ClaimAdminId = C.ClaimAdminId
12564-
INNER JOIN tblInsuree I ON I.InsureeId = C.InsureeID
12565-
INNER JOIN tblHF HF ON HF.HFID = C.HFID
12566-
INNER JOIN CDetails ON CDetails.ClaimId = C.ClaimID
12567-
INNER JOIN tblProduct Prod ON Prod.ProdId = CDetails.ProdID
12568-
INNER JOIN tblFamilies F ON F.FamilyId = I.FamilyID
12569-
INNER JOIN tblVillages V ON V.VillageID = F.LocationId
12570-
INNER JOIN tblWards W ON W.WardId = V.WardId
12571-
INNER JOIN tblDistricts D ON D.DistrictID = W.DistrictId
12572-
INNER JOIN tblRegions R ON R.RegionId = D.Region
12573-
12574-
WHERE C.ValidityTo IS NULL
12575-
AND (Prod.LocationId = @LocationId OR @LocationId = 0 OR Prod.LocationId IS NULL)
12576-
AND(Prod.ProdId = @ProdId OR @ProdId = 0)
12577-
AND (C.RunId IS NULL)
12578-
AND (HF.HFId = @HFID OR @HFId = 0)
12579-
AND (HF.HFLevel = @HFLevel OR @HFLevel = N'')
12580-
AND (C.DateTo BETWEEN @DateFrom AND @DateTo)
12581-
-- TO AVOID DOUBLE COUNT WITH CAPITATION
12582-
AND CONCAT(HF.HFLevel,'.',HF.HFSublevel) NOT IN (
12583-
SELECT CONCAT(HFlevel,'.',HFSublevel)
12584-
FROM (values ('H'), ('C'), ('D')) v(HFLevel)
12585-
JOIN tblHFSublevel on 1=1
12586-
INNER JOIN tblProduct Prod on prodid = @ProdID
12587-
AND
12588-
( (Prod.Level1 = HFLevel and Prod.Sublevel1 is NULL or Prod.Level1 = HFLevel and Prod.Sublevel1=HFSublevel)
12589-
OR (Prod.Level2 = HFLevel and Prod.Sublevel2 is NULL or Prod.Level2 = HFLevel and Prod.Sublevel2=HFSublevel)
12590-
OR (Prod.Level3 = HFLevel and Prod.Sublevel2 is NULL or Prod.Level2 = HFLevel and Prod.Sublevel3=HFSublevel)
12591-
OR (Prod.Level4 = HFLevel and Prod.Sublevel2 is NULL or Prod.Level2 = HFLevel and Prod.Sublevel4=HFSublevel)
12592-
)
12593-
)
12594-
GROUP BY C.ClaimCode, C.DateClaimed, CA.OtherNames, CA.LastName , C.DateFrom, C.DateTo, I.CHFID, I.OtherNames,
12595-
I.LastName, C.HFID, HF.HFCode, HF.HFName, HF.AccCode, Prod.ProdID, Prod.ProductCode, Prod.ProductName, C.Claimed,
12596-
D.DistrictId, D.DistrictName, R.RegionId, R.RegionName
12597-
END
12598-
GO
1259912513

1260012514
SET ANSI_NULLS ON
1260112515
GO

sql/migrations/1_migration_latest.sql

Lines changed: 0 additions & 73 deletions
Original file line numberDiff line numberDiff line change
@@ -2688,79 +2688,6 @@ CREATE PROCEDURE [dbo].[uspSSRSGetClaimOverview]
26882688
END
26892689
Go
26902690

2691-
IF OBJECT_ID('uspSSRSProcessBatchWithClaim', 'P') IS NOT NULL
2692-
DROP PROCEDURE uspSSRSProcessBatchWithClaim
2693-
GO
2694-
2695-
CREATE PROCEDURE [dbo].[uspSSRSProcessBatchWithClaim]
2696-
(
2697-
@LocationId INT = 0,
2698-
@ProdId INT = 0,
2699-
@RunID INT = 0,
2700-
@HFID INT = 0,
2701-
@HFLevel CHAR(1) = N'',
2702-
@DateFrom DATE = NULL,
2703-
@DateTo DATE = NULL
2704-
)
2705-
AS
2706-
BEGIN
2707-
2708-
IF @DateFrom = '' OR @DateFrom IS NULL OR @DateTo = '' OR @DateTo IS NULL
2709-
BEGIN
2710-
SET @DateFrom = N'1900-01-01'
2711-
SET @DateTo = N'3000-12-31'
2712-
END
2713-
2714-
;WITH CDetails AS
2715-
(
2716-
SELECT CI.ClaimId, CI.ProdId,
2717-
SUM(ISNULL(CI.PriceApproved, CI.PriceAsked) * ISNULL(CI.QtyApproved, CI.QtyProvided)) PriceApproved,
2718-
SUM(CI.PriceValuated) PriceAdjusted, SUM(CI.RemuneratedAmount)RemuneratedAmount
2719-
FROM tblClaimItems CI
2720-
WHERE CI.ValidityTo IS NULL
2721-
AND CI.ClaimItemStatus = 1
2722-
GROUP BY CI.ClaimId, CI.ProdId
2723-
UNION ALL
2724-
2725-
SELECT CS.ClaimId, CS.ProdId,
2726-
SUM(ISNULL(CS.PriceApproved, CS.PriceAsked) * ISNULL(CS.QtyApproved, CS.QtyProvided)) PriceApproved,
2727-
SUM(CS.PriceValuated) PriceValuated, SUM(CS.RemuneratedAmount) RemuneratedAmount
2728-
2729-
FROM tblClaimServices CS
2730-
WHERE CS.ValidityTo IS NULL
2731-
AND CS.ClaimServiceStatus = 1
2732-
GROUP BY CS.CLaimId, CS.ProdId
2733-
)
2734-
SELECT C.ClaimCode, C.DateClaimed, CA.OtherNames OtherNamesAdmin, CA.LastName LastNameAdmin, C.DateFrom, C.DateTo, I.CHFID, I.OtherNames,
2735-
I.LastName, C.HFID, HF.HFCode, HF.HFName, HF.AccCode, Prod.ProdID, Prod.ProductCode, Prod.ProductName,
2736-
C.Claimed PriceAsked, SUM(CDetails.PriceApproved)PriceApproved, SUM(CDetails.PriceAdjusted)PriceAdjusted, SUM(CDetails.RemuneratedAmount)RemuneratedAmount,
2737-
D.DistrictID, D.DistrictName, R.RegionId, R.RegionName
2738-
2739-
FROM tblClaim C
2740-
LEFT OUTER JOIN tblClaimAdmin CA ON CA.ClaimAdminId = C.ClaimAdminId
2741-
INNER JOIN tblInsuree I ON I.InsureeId = C.InsureeID
2742-
INNER JOIN tblHF HF ON HF.HFID = C.HFID
2743-
INNER JOIN CDetails ON CDetails.ClaimId = C.ClaimID
2744-
INNER JOIN tblProduct Prod ON Prod.ProdId = CDetails.ProdID
2745-
INNER JOIN tblFamilies F ON F.FamilyId = I.FamilyID
2746-
INNER JOIN tblVillages V ON V.VillageID = F.LocationId
2747-
INNER JOIN tblWards W ON W.WardId = V.WardId
2748-
INNER JOIN tblDistricts D ON D.DistrictID = W.DistrictId
2749-
INNER JOIN tblRegions R ON R.RegionId = D.Region
2750-
2751-
WHERE C.ValidityTo IS NULL
2752-
AND (Prod.LocationId = @LocationId OR @LocationId = 0 OR Prod.LocationId IS NULL)
2753-
AND(Prod.ProdId = @ProdId OR @ProdId = 0)
2754-
AND (C.RunId IS NULL)
2755-
AND (HF.HFId = @HFID OR @HFId = 0)
2756-
AND (HF.HFLevel = @HFLevel OR @HFLevel = N'')
2757-
AND (C.DateTo BETWEEN @DateFrom AND @DateTo)
2758-
2759-
GROUP BY C.ClaimCode, C.DateClaimed, CA.OtherNames, CA.LastName , C.DateFrom, C.DateTo, I.CHFID, I.OtherNames,
2760-
I.LastName, C.HFID, HF.HFCode, HF.HFName, HF.AccCode, Prod.ProdID, Prod.ProductCode, Prod.ProductName, C.Claimed,
2761-
D.DistrictId, D.DistrictName, R.RegionId, R.RegionName
2762-
END
2763-
GO
27642691

27652692
IF OBJECT_ID('uspSSRSEnroledFamilies', 'P') IS NOT NULL
27662693
DROP PROCEDURE uspSSRSEnroledFamilies
Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
IF OBJECT_ID('uspSSRSProcessBatchWithClaim', 'P') IS NOT NULL
2+
DROP PROCEDURE uspSSRSProcessBatchWithClaim
3+
GO
4+
5+
CREATE PROCEDURE [dbo].[uspSSRSProcessBatchWithClaim]
6+
(
7+
@LocationId INT = 0,
8+
@ProdId INT = 0,
9+
@RunID INT = 0,
10+
@HFID INT = 0,
11+
@HFLevel CHAR(1) = N'',
12+
@DateFrom DATE = NULL,
13+
@DateTo DATE = NULL
14+
)
15+
AS
16+
BEGIN
17+
18+
IF @DateFrom = '' OR @DateFrom IS NULL OR @DateTo = '' OR @DateTo IS NULL
19+
BEGIN
20+
SET @DateFrom = N'1900-01-01'
21+
SET @DateTo = N'3000-12-31'
22+
END
23+
24+
;WITH CDetails AS
25+
(
26+
SELECT CI.ClaimId, CI.ProdId,
27+
SUM(ISNULL(CI.PriceApproved, CI.PriceAsked) * ISNULL(CI.QtyApproved, CI.QtyProvided)) PriceApproved,
28+
SUM(CI.PriceValuated) PriceAdjusted, SUM(CI.RemuneratedAmount)RemuneratedAmount
29+
FROM tblClaimItems CI
30+
WHERE CI.ValidityTo IS NULL
31+
AND CI.ClaimItemStatus = 1
32+
GROUP BY CI.ClaimId, CI.ProdId
33+
UNION ALL
34+
35+
SELECT CS.ClaimId, CS.ProdId,
36+
SUM(ISNULL(CS.PriceApproved, CS.PriceAsked) * ISNULL(CS.QtyApproved, CS.QtyProvided)) PriceApproved,
37+
SUM(CS.PriceValuated) PriceValuated, SUM(CS.RemuneratedAmount) RemuneratedAmount
38+
39+
FROM tblClaimServices CS
40+
WHERE CS.ValidityTo IS NULL
41+
AND CS.ClaimServiceStatus = 1
42+
GROUP BY CS.CLaimId, CS.ProdId
43+
)
44+
SELECT C.ClaimCode, C.DateClaimed, CA.OtherNames OtherNamesAdmin, CA.LastName LastNameAdmin, C.DateFrom, C.DateTo, I.CHFID, I.OtherNames,
45+
I.LastName, C.HFID, HF.HFCode, HF.HFName, HF.AccCode, Prod.ProdID, Prod.ProductCode, Prod.ProductName,
46+
C.Claimed PriceAsked, SUM(CDetails.PriceApproved)PriceApproved, SUM(CDetails.PriceAdjusted)PriceAdjusted, SUM(CDetails.RemuneratedAmount)RemuneratedAmount,
47+
D.DistrictID, D.DistrictName, R.RegionId, R.RegionName
48+
49+
FROM tblClaim C
50+
LEFT OUTER JOIN tblClaimAdmin CA ON CA.ClaimAdminId = C.ClaimAdminId
51+
INNER JOIN tblInsuree I ON I.InsureeId = C.InsureeID
52+
INNER JOIN tblHF HF ON HF.HFID = C.HFID
53+
INNER JOIN CDetails ON CDetails.ClaimId = C.ClaimID
54+
INNER JOIN tblProduct Prod ON Prod.ProdId = CDetails.ProdID
55+
INNER JOIN tblFamilies F ON F.FamilyId = I.FamilyID
56+
INNER JOIN tblVillages V ON V.VillageID = F.LocationId
57+
INNER JOIN tblWards W ON W.WardId = V.WardId
58+
INNER JOIN tblDistricts D ON D.DistrictID = W.DistrictId
59+
INNER JOIN tblRegions R ON R.RegionId = D.Region
60+
61+
WHERE C.ValidityTo IS NULL
62+
AND (Prod.LocationId = @LocationId OR @LocationId = 0 OR Prod.LocationId IS NULL)
63+
AND(Prod.ProdId = @ProdId OR @ProdId = 0)
64+
AND (C.RunId IS NULL)
65+
AND (HF.HFId = @HFID OR @HFId = 0)
66+
AND (HF.HFLevel = @HFLevel OR @HFLevel = N'')
67+
AND (C.DateTo BETWEEN @DateFrom AND @DateTo)
68+
69+
GROUP BY C.ClaimCode, C.DateClaimed, CA.OtherNames, CA.LastName , C.DateFrom, C.DateTo, I.CHFID, I.OtherNames,
70+
I.LastName, C.HFID, HF.HFCode, HF.HFName, HF.AccCode, Prod.ProdID, Prod.ProductCode, Prod.ProductName, C.Claimed,
71+
D.DistrictId, D.DistrictName, R.RegionId, R.RegionName
72+
END
73+
GO

0 commit comments

Comments
 (0)