On-programme Funding Data Definition 2009/2010

A_OP_PAYMENT_P1 to A_OP_PAYMENT_P12, A_OP_PAYMENT_Y2D, A_OP_PAYMENT_EFY, A_OP_SLN_P1 to A_OP_SLN_P12, A_OP_SLN_Y2D, A_OP_SLN_EFY, L_OP_PAYMENT_P1 to L_OP_PAYMENT_P12, L_OP_PAYMENT_Y2D, L_OP_PAYMENT_EFY, L_OP_SLN_P1 to L_OP_SLN_P12, L_OP_SLN_Y2D, L_OP_SLN_EFY



PURPOSE

1. To enable on-programme funding information to be used from the funding calculation outputs.

2. These variables were defined in the MI views specification in 2008/09. New variables have been added to display the expected payments and SLN for the full year.

Note that these variables should still be calculated for the entitlement aims produced by the funding calculation, which are identified by A05=99.

RELEVANT COLLECTIONS

  • ILR ( ER )
  • ILR ( LR )

SOURCE DATA

Field Name Label Dataset
ER_ON_PROG_CASH Employer On Programme Monthly Cash Value ER AIM_PERIOD
ON_PROG_SLN_INST On Programme SLN Instalment ER AIM_PERIOD
LR_CASH Learner Responsive Cash Value LR AIM_PERIOD
PERIOD Period

ER AIM_PERIOD and
LR AIM_PERIOD


DERIVED VARIABLES AND DATASETS

3. The definitions produce the following derived variable(s)

Field Name Label Dataset
A_OP_PAYMENT_P1 to A_OP_PAYMENT_P12

A_OP_PAYMENT_P1 On Programme Payment in period 1 to
A_OP_PAYMENT_P12 On Programme Payment in period 12.

ER_AIMS_DLF and LR_AIMS_DLF
A_OP_PAYMENT_Y2D A_OP_PAYMENT_Y2D On Programme Payment for year to date. ER_AIMS_DLF and LR_AIMS_DLF
A_OP_PAYMENT_EFY A_OP_PAYMENT_EFY On Programme Payment Expected for Full Year. ER_AIMS_DLF and LR_AIMS_DLF

A_OP_SLN_P1 to
A_OP_SLN_P12

A_OP_SLN_P1 On Programme SLN in period 1 to
A_OP_SLN_P12 On Programme SLN in period 12

ER_AIMS_DLF
A_OP_SLN_Y2D A_OP_SLN_Y2D On Programme SLN for year to date. ER_AIMS_DLF
A_OP_SLN_EFY A_OP_SLN_EFY On Programme SLN Expected for Year. ER_AIMS_DLF
L_OP_PAYMENT_P1 to L_OP_PAYMENT_P12

L_OP_PAYMENT_P1 Sum of On Programme Payments in period 1 for all aims of the learner to
L_OP_PAYMENT_P12 Sum of On Programme Payments in period 12 for all aims of the learner.

ER_Learner_DLF and LR_Learner_DLF
L_OP_PAYMENT_Y2D L_OP_PAYMENT_Y2D Sum of On Programme Payment for year to date for all aims of the learner. ER_Learner_DLF and LR_Learner_DLF
L_OP_PAYMENT_EFY L_OP_PAYMENT_EFY Sum of On Programme Payment Expected for Full Year for all aims of the learner. ER_Learner_DLF and LR_Learner_DLF

L_OP_SLN_P1 to L_OP_SLN_P12

L_OP_SLN_P1 Sum of On Programme SLN in period 1 for all aims of the learner to
L_OP_SLN_P12 Sum of On Programme SLN in period 12 for all aims of the learner.

ER_Learner_DLF
L_OP_SLN_Y2D L_OP_SLN_Y2D Sum of On Programme SLN for year to date for all aims of the learner. ER_Learner_DLF
L_OP_SLN_EFY L_OP_SLN_EFY Sum of On Programme SLN Expected for Full Year for all aims of the learner. ER_Learner_DLF

DETAILED DEFINITION

4. These variables are dependant on output from the funding calculation. The funding calculation must have completed before these variables are derived.

5. These DVs make the ER on-programme SLN values, and the ER and LR cash values available from the funding calculation’s AIM_PERIOD data structures available to users. Learner level versions are also defined.

6. Current period is defined by the collection and is as follows:

For ER:

Collection Current period
W01 1
W02 2
W03 3
W04 4
W05 5
W06 6
W07 7
W08 8
W09 9
W10 10
W11 11
W12 12
W13 12


For LR :

Collection Current period
F01 3
F02 6
F03 9
F04 12
F05 12


7. The following illustrates how to calculate periodic On Programme Payment at Aim Level:

A_OP_PAYMENT_P1 = for ER: (ER_ON_PROG_CASH where PERIOD = 1) for LR: (LR_CASH where PERIOD = 1).

A_OP_PAYMENT_P2 = for ER: (ER_ON_PROG_CASH where PERIOD = 2) for LR: (LR_CASH where PERIOD = 2).

A_OP_PAYMENT_P3 = for ER: (ER_ON_PROG_CASH where PERIOD = 3) for LR: (LR_CASH where PERIOD = 3).

A_OP_PAYMENT_P4 = for ER: (ER_ON_PROG_CASH where PERIOD = 4) for LR: (LR_CASH where PERIOD = 4).

A_OP_PAYMENT_P5 = for ER: (ER_ON_PROG_CASH where PERIOD = 5) for LR: (LR_CASH where PERIOD = 5).

A_OP_PAYMENT_P6 = for ER: (ER_ON_PROG_CASH where PERIOD = 6) for LR: (LR_CASH where PERIOD = 6).

A_OP_PAYMENT_P7 = for ER: (ER_ON_PROG_CASH where PERIOD = 7) for LR: (LR_CASH where PERIOD = 7).

A_OP_PAYMENT_P8 = for ER: (ER_ON_PROG_CASH where PERIOD = 8) for LR: (LR_CASH where PERIOD = 8).

A_OP_PAYMENT_P9 = for ER: (ER_ON_PROG_CASH where PERIOD = 9) for LR: (LR_CASH where PERIOD = 9).

A_OP_PAYMENT_P10 = for ER: (ER_ON_PROG_CASH where PERIOD = 10) for LR: (LR_CASH where PERIOD = 10).

A_OP_PAYMENT_P11 = for ER: (ER_ON_PROG_CASH where PERIOD = 11) for LR: (LR_CASH where PERIOD = 11).

A_OP_PAYMENT_P12 = for ER: (ER_ON_PROG_CASH where PERIOD = 12) for LR: (LR_CASH where PERIOD = 12).

A_OP_PAYMENT_Y2D = for ER: (ER_ON_PROG_CASH for PERIOD of 1 to current period) for LR: (LR_CASH for PERIOD of 1 to current period).

A_OP_PAYMENT_EFY = for ER: (Sum of ER_ON_PROG_CASH for all PERIODs) for LR: (Sum of LR_CASH for all PERIODs).


8.
The following SQL code illustrates how to calculate periodic On Programme Payment at Aim Level:

--for ER

select

      L01, L03, A05
      , case when B.PERIOD = 1 then ER_ON_PROG_CASH else 0 end as A_OP_PAYMENT_P1
      , case when B.PERIOD = 2 then ER_ON_PROG_CASH else 0 end as A_OP_PAYMENT_P2
      , case when B.PERIOD = 3 then ER_ON_PROG_CASH else 0 end as A_OP_PAYMENT_P3
      , case when B.PERIOD = 4 then ER_ON_PROG_CASH else 0 end as A_OP_PAYMENT_P4
      , case when B.PERIOD = 5 then ER_ON_PROG_CASH else 0 end as A_OP_PAYMENT_P5
      , case when B.PERIOD = 6 then ER_ON_PROG_CASH else 0 end as A_OP_PAYMENT_P6
      , case when B.PERIOD = 7 then ER_ON_PROG_CASH else 0 end as A_OP_PAYMENT_P7
      , case when B.PERIOD = 8 then ER_ON_PROG_CASH else 0 end as A_OP_PAYMENT_P8
      , case when B.PERIOD = 9 then ER_ON_PROG_CASH else 0 end as A_OP_PAYMENT_P9
      , case when B.PERIOD = 10 then ER_ON_PROG_CASH else 0 end as A_OP_PAYMENT_P10
      , case when B.PERIOD = 11 then ER_ON_PROG_CASH else 0 end as A_OP_PAYMENT_P11
      , case when B.PERIOD = 12 then ER_ON_PROG_CASH else 0 end as A_OP_PAYMENT_P12
      , case when B.PERIOD between 1 and A.PERIOD then SUM(ER_ON_PROG_CASH) else 0 end as A_OP_PAYMENT_Y2D
      , case when B.PERIOD in (1,2,3,4,5,6,7,8,9,10,11,12) then SUM(ER_ON_PROG_CASH) else 0 end as A_OP_PAYMENT_EFY

from

      ILR0910_E_AIMS_DLF A

      left outer join

      ER_AIM_PERIOD B

           on A.L01=B.L01 and A.L03=B.L03 and A.A05=B.A05

--for LR

select

      L01, L03, A05
      , case when B.PERIOD = 1 then LR_CASH else 0 end as A_OP_PAYMENT_P1
      , case when B.PERIOD = 2 then LR_CASH else 0 end as A_OP_PAYMENT_P2
      , case when B.PERIOD = 3 then LR_CASH else 0 end as A_OP_PAYMENT_P3
      , case when B.PERIOD = 4 then LR_CASH else 0 end as A_OP_PAYMENT_P4
      , case when B.PERIOD = 5 then LR_CASH else 0 end as A_OP_PAYMENT_P5
      , case when B.PERIOD = 6 then LR_CASH else 0 end as A_OP_PAYMENT_P6
      , case when B.PERIOD = 7 then LR_CASH else 0 end as A_OP_PAYMENT_P7
      , case when B.PERIOD = 8 then LR_CASH else 0 end as A_OP_PAYMENT_P8
      , case when B.PERIOD = 9 then LR_CASH else 0 end as A_OP_PAYMENT_P9
      , case when B.PERIOD = 10 then LR_CASH else 0 end as A_OP_PAYMENT_P10
      , case when B.PERIOD = 11 then LR_CASH else 0 end as A_OP_PAYMENT_P11
      , case when B.PERIOD = 12 then LR_CASH else 0 end as A_OP_PAYMENT_P12
      , case when B.PERIOD between 1 and A.PERIOD then SUM(LR_CASH) else 0 end as A_OP_PAYMENT_Y2D
      , case when B.PERIOD in (1,2,3,4,5,6,7,8,9,10,11,12) then SUM(LR_CASH) else 0 end as A_OP_PAYMENT_EFY

from

      ILR0910_E_AIMS_DLF A

      left outer join

      LR_AIM_PERIOD B

           on A.L01=B.L01 and A.L03=B.L03 and A.A05=B.A05




9. The following illustrates how to calculate periodic On Programme Payment at Learner Level: 

L_OP_PAYMENT_P1 = sum of A_OP_PAYMENT_P1 for all aims of the learner.

L_OP_PAYMENT_P2 = sum of A_OP_PAYMENT_P2 for all aims of the learner.

L_OP_PAYMENT_P3 = sum of A_OP_PAYMENT_P3 for all aims of the learner.

L_OP_PAYMENT_P4 = sum of A_OP_PAYMENT_P4 for all aims of the learner.

L_OP_PAYMENT_P5 = sum of A_OP_PAYMENT_P5 for all aims of the learner.

L_OP_PAYMENT_P6 = sum of A_OP_PAYMENT_P6 for all aims of the learner.

L_OP_PAYMENT_P7 = sum of A_OP_PAYMENT_P7 for all aims of the learner.

L_OP_PAYMENT_P8 = sum of A_OP_PAYMENT_P8 for all aims of the learner.

L_OP_PAYMENT_P9 = sum of A_OP_PAYMENT_P9 for all aims of the learner.

L_OP_PAYMENT_P10 = sum of A_OP_PAYMENT_P10 for all aims of the learner.

L_OP_PAYMENT_P11 = sum of A_OP_PAYMENT_P11 for all aims of the learner.

L_OP_PAYMENT_P12 = sum of A_OP_PAYMENT_P12 for all aims of the learner.

L_OP_PAYMENT_Y2D = sum of A_OP_PAYMENT_Y2D for all aims of the learner.

L_OP_PAYMENT_EFY = sum of A_OP_PAYMENT_EFY for all aims of the learner.

10. The following SQL code illustrates how to calculate periodic On Programme Payment at Learner Level:

select

      L01, L03, count(a05) as aims
      , sum(A_OP_PAYMENT_P1) as L_OP_PAYMENT_P1
      , sum(A_OP_PAYMENT_P2) as L_OP_PAYMENT_P2
      , sum(A_OP_PAYMENT_P3) as L_OP_PAYMENT_P3
      , sum(A_OP_PAYMENT_P4) as L_OP_PAYMENT_P4
      , sum(A_OP_PAYMENT_P5) as L_OP_PAYMENT_P5
      , sum(A_OP_PAYMENT_P6) as L_OP_PAYMENT_P6
      , sum(A_OP_PAYMENT_P7) as L_OP_PAYMENT_P7
      , sum(A_OP_PAYMENT_P8) as L_OP_PAYMENT_P8
      , sum(A_OP_PAYMENT_P9) as L_OP_PAYMENT_P9
      , sum(A_OP_PAYMENT_P10) as L_OP_PAYMENT_P10
      , sum(A_OP_PAYMENT_P11) as L_OP_PAYMENT_P11
      , sum(A_OP_PAYMENT_P12) as L_OP_PAYMENT_P12
      , sum(A_OP_PAYMENT_Y2D) as L_OP_PAYMENT_Y2D
      , sum(A_OP_PAYMENT_EFY) as L_OP_PAYMENT_EFY

from

     ILR0910_E_AIMS_DLF

group by

      L01, L03

order by

      L01, L03



11. The following illustrates how to calculate periodic On Programme SLN at Aim Level: 

A_OP_SLN_P1 = ON_PROG_SLN_INST where PERIOD = 1.

A_OP_SLN_P2 = ON_PROG_SLN_INST where PERIOD = 2.

A_OP_SLN_P3 = ON_PROG_SLN_INST where PERIOD = 3.

A_OP_SLN_P4 = ON_PROG_SLN_INST where PERIOD = 4.

A_OP_SLN_P5 = ON_PROG_SLN_INST where PERIOD = 5.

A_OP_SLN_P6 = ON_PROG_SLN_INST where PERIOD = 6.

A_OP_SLN_P7 = ON_PROG_SLN_INST where PERIOD = 7.

A_OP_SLN_P8 = ON_PROG_SLN_INST where PERIOD = 8.

A_OP_SLN_P9 = ON_PROG_SLN_INST where PERIOD = 9.

A_OP_SLN_P10 = ON_PROG_SLN_INST where PERIOD = 10.

A_OP_SLN_P11 = ON_PROG_SLN_INST where PERIOD = 11.

A_OP_SLN_P12 = ON_PROG_SLN_INST where PERIOD = 12.

A_OP_SLN_Y2D = sum of ON_PROG_SLN_INST for PERIOD from 1 to current period.

A_OP_SLN_EFY = sum of ON_PROG_SLN_INST for all PERIODs.


12.
The following SQL code illustrates how to calculate periodic On Programme SLN at Aim Level: 

select

      L01, L03, A05
      , case when B.PERIOD = 1 then ON_PROG_SLN_INST else 0 end as A_OP_SLN_P1
      , case when B.PERIOD = 2 then ON_PROG_SLN_INST else 0 end as A_OP_SLN_P2
      , case when B.PERIOD = 3 then ON_PROG_SLN_INST else 0 end as A_OP_SLN_P3
      , case when B.PERIOD = 4 then ON_PROG_SLN_INST else 0 end as A_OP_SLN_P4
      , case when B.PERIOD = 5 then ON_PROG_SLN_INST else 0 end as A_OP_SLN_P5
      , case when B.PERIOD = 6 then ON_PROG_SLN_INST else 0 end as A_OP_SLN_P6
      , case when B.PERIOD = 7 then ON_PROG_SLN_INST else 0 end as A_OP_SLN_P7
      , case when B.PERIOD = 8 then ON_PROG_SLN_INST else 0 end as A_OP_SLN_P8
      , case when B.PERIOD = 9 then ON_PROG_SLN_INST else 0 end as A_OP_SLN_P9
      , case when B.PERIOD = 10 then ON_PROG_SLN_INST else 0 end as A_OP_SLN_P10
      , case when B.PERIOD = 11 then ON_PROG_SLN_INST else 0 end as A_OP_SLN_P11
      , case when B.PERIOD = 12 then ON_PROG_SLN_INST else 0 end as A_OP_SLN_P12
      , case when B.PERIOD between 1 and A.PERIOD then ON_PROG_SLN_INST else 0 end as A_OP_SLN_Y2D
      , case when B.PERIOD in (1,2,3,4,5,6,7,8,9,10,11,12) then SUM(ON_PROG_SLN_INST) else 0 end as A_OP_SLN_EFY

from

      ILR0910_E_AIMS_DLF A

      left outer join

      ER_AIM_PERIOD B

           on A.L01=B.L01 and A.L03=B.L03 and A.A05=B.A05



13. The following illustrates how to calculate periodic On Programme SLN at Learner Level: 

L_OP_SLN_P1 = sum of A_OP_SLN_P1 for all aims of the learner.

L_OP_SLN_P2 = sum of A_OP_SLN_P2 for all aims of the learner.

L_OP_SLN_P3 = sum of A_OP_SLN_P3 for all aims of the learner.

L_OP_SLN_P4 = sum of A_OP_SLN_P4 for all aims of the learner.

L_OP_SLN_P5 = sum of A_OP_SLN_P5 for all aims of the learner.

L_OP_SLN_P6 = sum of A_OP_SLN_P6 for all aims of the learner.

L_OP_SLN_P7 = sum of A_OP_SLN_P7 for all aims of the learner.

L_OP_SLN_P8 = sum of A_OP_SLN_P8 for all aims of the learner.

L_OP_SLN_P9 = sum of A_OP_SLN_P9 for all aims of the learner.

L_OP_SLN_P10 = sum of A_OP_SLN_P10 for all aims of the learner.

L_OP_SLN_P11 = sum of A_OP_SLN_P11 for all aims of the learner.

L_OP_SLN_P12 = sum of A_OP_SLN_P12 for all aims of the learner.

L_OP_SLN_Y2D = sum of A_OP_SLN_Y2D for all aims of the learner.

L_OP_SLN_EFY = sum of A_OP_SLN_EFY for all aims of the learner.


14.
The following illustrates how to calculate periodic On Programme SLN at Learner Level:

select

      L01, L03, count(a05) as aims
      , sum(A_OP_SLN_P1) as L_OP_SLN_P1
      , sum(A_OP_SLN_P2) as L_OP_SLN_P2
      , sum(A_OP_SLN_P3) as L_OP_SLN_P3
      , sum(A_OP_SLN_P4) as L_OP_SLN_P4
      , sum(A_OP_SLN_P5) as L_OP_SLN_P5
      , sum(A_OP_SLN_P6) as L_OP_SLN_P6
      , sum(A_OP_SLN_P7) as L_OP_SLN_P7
      , sum(A_OP_SLN_P8) as L_OP_SLN_P8
      , sum(A_OP_SLN_P9) as L_OP_SLN_P9
      , sum(A_OP_SLN_P10) as L_OP_SLN_P10
      , sum(A_OP_SLN_P11) as L_OP_SLN_P11
      , sum(A_OP_SLN_P12) as L_OP_SLN_P12
      , sum(A_OP_SLN_Y2D) as L_OP_SLN_Y2D
      , sum(A_OP_SLN_EFY) as L_OP_SLN_EFY

from

     ILR0910_E_AIMS_DLF

group by

      L01, L03

order by

      L01, L03




Date Modified : 02nd December 2009