Skip to content

Commit 001f195

Browse files
committed
fixing filters
1 parent 27ea421 commit 001f195

4 files changed

Lines changed: 40 additions & 56 deletions

File tree

sql/stored_procedures/uspInsertIndexMonthly.sql

Lines changed: 15 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -43,12 +43,12 @@ BEGIN TRY
4343
CASE WHEN @CI='H' THEN HF.HFLevel WHEN DATEDIFF(d,c.DateFrom,ISNULL(c.DateTo,c.DateFrom))<1 THEN 'D' ELSE 'H' END = 'H')
4444
OR (@TYPE = 'O' and (c.ProcessStamp BETWEEN @startDate AND @endDate) AND
4545
CASE WHEN @CI='H' THEN HF.HFLevel WHEN DATEDIFF(d,c.DateFrom,ISNULL(c.DateTo,c.DateFrom))<1 THEN 'D' ELSE 'H' END <> 'H')
46-
)AND NOT (
47-
((HF.HFLevel = @Level1) AND (HF.HFSublevel = @SubLevel1 OR @SubLevel1 IS NULL))
48-
OR ((HF.HFLevel = @Level2 ) AND (HF.HFSublevel = @SubLevel2 OR @SubLevel2 IS NULL))
49-
OR ((HF.HFLevel = @Level3) AND (HF.HFSublevel = @SubLevel3 OR @SubLevel3 IS NULL))
50-
OR ((HF.HFLevel = @Level4) AND (HF.HFSublevel = @SubLevel4 OR @SubLevel4 IS NULL))
51-
)
46+
)
47+
AND NOT (HF.HFLevel = ISNULL(@Level1,'A') AND (HF.HFSublevel = ISNULL(@SubLevel1,HF.HFSublevel)))
48+
AND NOT (HF.HFLevel = ISNULL(@Level2,'A') AND (HF.HFSublevel = ISNULL(@SubLevel2,HF.HFSublevel)))
49+
AND NOT (HF.HFLevel = ISNULL(@Level3,'A') AND (HF.HFSublevel = ISNULL(@SubLevel3,HF.HFSublevel)))
50+
AND NOT (HF.HFLevel =ISNULL(@Level4,'A') AND (HF.HFSublevel = ISNULL(@SubLevel4,HF.HFSublevel)))
51+
5252
-- sum of service value
5353
SELECT @ClaimValueservices = SUM(ISNULL(d.PriceValuated,0) )
5454
FROM tblClaimServices d
@@ -63,12 +63,11 @@ BEGIN TRY
6363
CASE WHEN @CI='H' THEN HF.HFLevel WHEN DATEDIFF(d,c.DateFrom,ISNULL(c.DateTo,c.DateFrom))<1 THEN 'D' ELSE 'H' END = 'H')
6464
OR (@TYPE = 'O' and (c.ProcessStamp BETWEEN @startDate AND @endDate) AND
6565
CASE WHEN @CI='H' THEN HF.HFLevel WHEN DATEDIFF(d,c.DateFrom,ISNULL(c.DateTo,c.DateFrom))<1 THEN 'D' ELSE 'H' END <> 'H')
66-
)AND NOT (
67-
((HF.HFLevel = @Level1) AND (HF.HFSublevel = @SubLevel1 OR @SubLevel1 IS NULL))
68-
OR ((HF.HFLevel = @Level2 ) AND (HF.HFSublevel = @SubLevel2 OR @SubLevel2 IS NULL))
69-
OR ((HF.HFLevel = @Level3) AND (HF.HFSublevel = @SubLevel3 OR @SubLevel3 IS NULL))
70-
OR ((HF.HFLevel = @Level4) AND (HF.HFSublevel = @SubLevel4 OR @SubLevel4 IS NULL))
71-
)
66+
) AND NOT (HF.HFLevel = ISNULL(@Level1,'A') AND (HF.HFSublevel = ISNULL(@SubLevel1,HF.HFSublevel)))
67+
AND NOT (HF.HFLevel = ISNULL(@Level2,'A') AND (HF.HFSublevel = ISNULL(@SubLevel2,HF.HFSublevel)))
68+
AND NOT (HF.HFLevel = ISNULL(@Level3,'A') AND (HF.HFSublevel = ISNULL(@SubLevel3,HF.HFSublevel)))
69+
AND NOT (HF.HFLevel =ISNULL(@Level4,'A') AND (HF.HFSublevel = ISNULL(@SubLevel4,HF.HFSublevel)))
70+
7271

7372
SET @ClaimValueItems =ISNULL(@ClaimValueItems,0)
7473
SET @ClaimValueservices =ISNULL( @ClaimValueservices,0)
@@ -78,14 +77,14 @@ BEGIN TRY
7877
--basically all 100% is available
7978
SET @RtnStatus = 0
8079
SET @RelIndex = 1.0
81-
INSERT INTO [tblRelIndex] ([ProdID],[RelType],[RelCareType],[RelYear],[RelPeriod],[CalcDate],[RelIndex],[AuditUserID],[LocationId] )
82-
VALUES (@ProductID,@RelType,@Type,YEAR(@startDate),@Period,GETDATE(),@RelIndex,@AuditUser,@LocationId )
80+
INSERT INTO [tblRelIndex] ([ProdID],[RelType],[RelCareType],[RelYear],[RelPeriod],[CalcDate],[RelIndex],[AuditUserID],[LocationId],PrdValue )
81+
VALUES (@ProductID,@RelType,@Type,YEAR(@startDate),@Period,GETDATE(),@RelIndex,@AuditUser,@LocationId, @PrdValue )
8382
END
8483
ELSE
8584
BEGIN
8685
SET @RelIndex = CAST((@PrdValue * @DistrPerc) as Decimal(18,4)) / (@ClaimValueItems + @ClaimValueservices)
87-
INSERT INTO [tblRelIndex] ([ProdID],[RelType],[RelCareType],[RelYear],[RelPeriod],[CalcDate],[RelIndex],[AuditUserID],[LocationId])
88-
VALUES (@ProductID,@RelType,@Type,YEAR(@startDate),@Period,GETDATE(),@RelIndex,@AuditUser,@LocationId )
86+
INSERT INTO [tblRelIndex] ([ProdID],[RelType],[RelCareType],[RelYear],[RelPeriod],[CalcDate],[RelIndex],[AuditUserID],[LocationId],PrdValue)
87+
VALUES (@ProductID,@RelType,@Type,YEAR(@startDate),@Period,GETDATE(),@RelIndex,@AuditUser,@LocationId, @PrdValue )
8988
SET @RtnStatus = 0
9089
END
9190

sql/stored_procedures/uspProcessbatch.sql

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -152,7 +152,9 @@ BEGIN
152152
IF ISNULL(@Index,0) > 0 OR ISNULL(@IndexIP,0) > 0
153153
BEGIN
154154
UPDATE d SET RemuneratedAmount = CAST(
155-
CASE WHEN d.PriceOrigin <> 'R' THEN 1.0
155+
CASE
156+
WHEN d.PriceOrigin <> 'R' THEN 1.0
157+
156158
WHEN (CASE WHEN @CI='H' THEN HF.HFLevel WHEN DATEDIFF(d,c.DateFrom,ISNULL(c.DateTo,c.DateFrom))<1 THEN 'D' ELSE 'H' END) <>'H' THEN @Index
157159
ELSE @IndexIP END
158160
as decimal(18, 4)) * isnull(d.PriceValuated, ISNULL(PriceApproved, PriceAdjusted) * isnull(QtyApproved,QtyProvided))
@@ -168,16 +170,16 @@ BEGIN
168170
CASE WHEN @CI='H' THEN HF.HFLevel WHEN DATEDIFF(d,c.DateFrom,ISNULL(c.DateTo,c.DateFrom))<1 THEN 'D' ELSE 'H' END = 'H')
169171
OR (@startDateOP is not NULL and (c.ProcessStamp BETWEEN @startDateOP AND @endDate) AND
170172
CASE WHEN @CI='H' THEN HF.HFLevel WHEN DATEDIFF(d,c.DateFrom,ISNULL(c.DateTo,c.DateFrom))<1 THEN 'D' ELSE 'H' END <> 'H')
171-
)AND NOT (
172-
((HF.HFLevel = @Level1) AND (HF.HFSublevel = @SubLevel1 OR @SubLevel1 IS NULL))
173-
OR ((HF.HFLevel = @Level2 ) AND (HF.HFSublevel = @SubLevel2 OR @SubLevel2 IS NULL))
174-
OR ((HF.HFLevel = @Level3) AND (HF.HFSublevel = @SubLevel3 OR @SubLevel3 IS NULL))
175-
OR ((HF.HFLevel = @Level4) AND (HF.HFSublevel = @SubLevel4 OR @SubLevel4 IS NULL))
176-
)
173+
) AND NOT (HF.HFLevel = ISNULL(@Level1,'A') AND (HF.HFSublevel = ISNULL(@SubLevel1,HF.HFSublevel)))
174+
AND NOT (HF.HFLevel = ISNULL(@Level2,'A') AND (HF.HFSublevel = ISNULL(@SubLevel2,HF.HFSublevel)))
175+
AND NOT (HF.HFLevel = ISNULL(@Level3,'A') AND (HF.HFSublevel = ISNULL(@SubLevel3,HF.HFSublevel)))
176+
AND NOT (HF.HFLevel =ISNULL(@Level4,'A') AND (HF.HFSublevel = ISNULL(@SubLevel4,HF.HFSublevel)))
177177

178178

179179
UPDATE d SET RemuneratedAmount = CAST(
180-
CASE WHEN d.PriceOrigin <> 'R' THEN 1.0
180+
CASE
181+
WHEN d.PriceOrigin <> 'R' THEN 1.0
182+
181183
WHEN (CASE WHEN @CI='H' THEN HF.HFLevel WHEN DATEDIFF(d,c.DateFrom,ISNULL(c.DateTo,c.DateFrom))<1 THEN 'D' ELSE 'H' END) <>'H' THEN @Index
182184
ELSE @IndexIP END
183185
as decimal(18, 4)) * isnull(d.PriceValuated, ISNULL(PriceApproved, PriceAdjusted) * isnull(QtyApproved,QtyProvided))
@@ -193,12 +195,10 @@ BEGIN
193195
CASE WHEN @CI='H' THEN HF.HFLevel WHEN DATEDIFF(d,c.DateFrom,ISNULL(c.DateTo,c.DateFrom))<1 THEN 'D' ELSE 'H' END = 'H')
194196
OR (@startDateOP is not NULL and (c.ProcessStamp BETWEEN @startDateOP AND @endDate) AND
195197
CASE WHEN @CI='H' THEN HF.HFLevel WHEN DATEDIFF(d,c.DateFrom,ISNULL(c.DateTo,c.DateFrom))<1 THEN 'D' ELSE 'H' END <> 'H')
196-
)AND NOT (
197-
((HF.HFLevel = @Level1) AND (HF.HFSublevel = @SubLevel1 OR @SubLevel1 IS NULL))
198-
OR ((HF.HFLevel = @Level2 ) AND (HF.HFSublevel = @SubLevel2 OR @SubLevel2 IS NULL))
199-
OR ((HF.HFLevel = @Level3) AND (HF.HFSublevel = @SubLevel3 OR @SubLevel3 IS NULL))
200-
OR ((HF.HFLevel = @Level4) AND (HF.HFSublevel = @SubLevel4 OR @SubLevel4 IS NULL))
201-
)
198+
) AND NOT (HF.HFLevel = ISNULL(@Level1,'A') AND (HF.HFSublevel = ISNULL(@SubLevel1,HF.HFSublevel)))
199+
AND NOT (HF.HFLevel = ISNULL(@Level2,'A') AND (HF.HFSublevel = ISNULL(@SubLevel2,HF.HFSublevel)))
200+
AND NOT (HF.HFLevel = ISNULL(@Level3,'A') AND (HF.HFSublevel = ISNULL(@SubLevel3,HF.HFSublevel)))
201+
AND NOT (HF.HFLevel =ISNULL(@Level4,'A') AND (HF.HFSublevel = ISNULL(@SubLevel4,HF.HFSublevel)))
202202

203203

204204
END

sql/stored_procedures/uspSSRSProcessBatch.sql

Lines changed: 4 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -68,19 +68,10 @@ CREATE PROCEDURE [dbo].[uspSSRSProcessBatch]
6868
AND (HF.HFLevel = @HFLevel OR @HFLevel = N'')
6969
AND (C.DateTo BETWEEN @DateFrom AND @DateTo)
7070
-- TO AVOID DOUBLE COUNT WITH CAPITATION
71-
AND CONCAT(HF.HFLevel,'.',HF.HFSublevel) NOT IN (
72-
SELECT CONCAT(HFlevel,'.',HFSublevel)
73-
FROM (values ('H'), ('C'), ('D')) v(HFLevel)
74-
JOIN tblHFSublevel on 1=1
75-
INNER JOIN tblProduct Prod on prodid = @ProdID
76-
AND NOT (
77-
((HF.HFLevel = prod.Level1) AND (HF.HFSublevel = Prod.SubLevel1 OR Prod.SubLevel1 IS NULL))
78-
OR ((HF.HFLevel = Prod.Level2 ) AND (HF.HFSublevel = Prod.SubLevel2 OR Prod.SubLevel2 IS NULL))
79-
OR ((HF.HFLevel = Prod.Level3) AND (HF.HFSublevel = Prod.SubLevel3 OR Prod.SubLevel3 IS NULL))
80-
OR ((HF.HFLevel = Prod.Level4) AND (HF.HFSublevel = Prod.SubLevel4 OR Prod.SubLevel4 IS NULL))
81-
)
82-
)
83-
71+
AND NOT (HF.HFLevel = ISNULL(prod.Level1,'A') AND (HF.HFSublevel = ISNULL(Prod.SubLevel1,HF.HFSublevel)))
72+
AND NOT (HF.HFLevel = ISNULL(prod.Level2,'A') AND (HF.HFSublevel = ISNULL(Prod.SubLevel2,HF.HFSublevel)))
73+
AND NOT (HF.HFLevel = ISNULL(prod.Level3,'A') AND (HF.HFSublevel = ISNULL(Prod.SubLevel3,HF.HFSublevel)))
74+
AND NOT (HF.HFLevel =ISNULL(prod.Level4,'A') AND (HF.HFSublevel = ISNULL(Prod.SubLevel4,HF.HFSublevel)))
8475
GROUP BY R.RegionName,D.DistrictName, HF.HFCode, HF.HFName, Prod.ProductCode, Prod.ProductName, Prod.AccCodeRemuneration, HF.AccCode
8576
HAVING SUM(CDetails.RemuneratedAmount) > @MinRemunerated
8677
END

sql/stored_procedures/uspSSRSProcessBatchWithClaim.sql

Lines changed: 7 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -71,21 +71,15 @@ CREATE PROCEDURE [dbo].[uspSSRSProcessBatchWithClaim]
7171
AND (HF.HFLevel = @HFLevel OR @HFLevel = N'')
7272
AND (C.DateTo BETWEEN @DateFrom AND @DateTo)
7373
-- TO AVOID DOUBLE COUNT WITH CAPITATION
74-
AND CONCAT(HF.HFLevel,'.',HF.HFSublevel) NOT IN (
75-
SELECT CONCAT(HFlevel,'.',HFSublevel)
76-
FROM (values ('H'), ('C'), ('D')) v(HFLevel)
77-
JOIN tblHFSublevel on 1=1
78-
INNER JOIN tblProduct Prod on prodid = @ProdID
79-
and NOT (
80-
((HF.HFLevel = prod.Level1) AND (HF.HFSublevel = Prod.SubLevel1 OR Prod.SubLevel1 IS NULL))
81-
OR ((HF.HFLevel = Prod.Level2 ) AND (HF.HFSublevel = Prod.SubLevel2 OR Prod.SubLevel2 IS NULL))
82-
OR ((HF.HFLevel = Prod.Level3) AND (HF.HFSublevel = Prod.SubLevel3 OR Prod.SubLevel3 IS NULL))
83-
OR ((HF.HFLevel = Prod.Level4) AND (HF.HFSublevel = Prod.SubLevel4 OR Prod.SubLevel4 IS NULL))
84-
)
85-
)
74+
AND NOT (HF.HFLevel = ISNULL(prod.Level1,'A') AND (HF.HFSublevel = ISNULL(Prod.SubLevel1,HF.HFSublevel)))
75+
AND NOT (HF.HFLevel = ISNULL(prod.Level2,'A') AND (HF.HFSublevel = ISNULL(Prod.SubLevel2,HF.HFSublevel)))
76+
AND NOT (HF.HFLevel = ISNULL(prod.Level3,'A') AND (HF.HFSublevel = ISNULL(Prod.SubLevel3,HF.HFSublevel)))
77+
AND NOT (HF.HFLevel =ISNULL(prod.Level4,'A') AND (HF.HFSublevel = ISNULL(Prod.SubLevel4,HF.HFSublevel)))
78+
79+
8680

8781
GROUP BY C.ClaimCode, C.DateClaimed, CA.OtherNames, CA.LastName , C.DateFrom, C.DateTo, I.CHFID, I.OtherNames,
8882
I.LastName, C.HFID, HF.HFCode, HF.HFName, HF.AccCode, Prod.ProdID, Prod.ProductCode, Prod.ProductName, C.Claimed,
8983
D.DistrictId, D.DistrictName, R.RegionId, R.RegionName
90-
END
84+
EN
9185
GO

0 commit comments

Comments
 (0)