1+ BEGIN
2+
3+ -- Update the database to be used
4+ use [openIMIS-demo];
5+
6+ DECLARE @monthShift INT
7+
8+ -- Get number of months to shift the policy by, using FamilyID 22 which is a renewal example described on the Wiki
9+ SELECT TOP (1 ) @monthShift = DATEDIFF (month , expirydate, GETDATE ()) FROM [tblPolicy] where ValidityTo is NULL
10+
11+ -- Shift Enrolldate by @monthShift
12+ UPDATE [tblPolicy] SET EnrollDate = DATEADD (month , @monthShift, EnrollDate)
13+
14+ -- Shift StartDate by @monthShift
15+ UPDATE [tblPolicy] SET StartDate = DATEADD (month , @monthShift, StartDate)
16+
17+ -- Shift EffectiveDate by @monthShift
18+ UPDATE [tblPolicy] SET EffectiveDate = DATEADD (month , @monthShift, EffectiveDate)
19+ WHERE EffectiveDate is not NULL
20+
21+ -- Shift ExpiryDate by @monthShift
22+ UPDATE [tblPolicy] SET ExpiryDate = DATEADD (month , @monthShift, ExpiryDate)
23+
24+ -- Update InsureePolicy dates
25+ UPDATE IP
26+ SET IP.[EnrollmentDate] = P.[EnrollDate],
27+ IP.[StartDate] = P.[StartDate],
28+ IP.[EffectiveDate] = P.[EffectiveDate],
29+ IP.[ExpiryDate] = P.[ExpiryDate]
30+ FROM [tblInsureePolicy] IP
31+ INNER JOIN [tblPolicy] P
32+ ON IP .PolicyID = P .PolicyID
33+
34+
35+ -- Shift PayDate to EnrollDate
36+ UPDATE premium
37+ SET PayDate = EnrollDate
38+ FROM [tblPremium] premium
39+ INNER JOIN [tblPolicy] policy
40+ ON premium .PolicyID = policy .PolicyID
41+
42+ UPDATE [tblClaim]
43+ SET DateFrom = DATEADD (month , @monthShift, DateFrom),
44+ DateTo = DATEADD (month , @monthShift, DateTo),
45+ DateClaimed = DATEADD (month , @monthShift, DateClaimed)
46+
47+ -- Add Enquire right to Claim Administrator role
48+ -- insert into [tblRoleRight] (RoleID, RightID, ValidityFrom) values (9, 101105, CURRENT_TIMESTAMP)
49+
50+ END
0 commit comments