DGCV ;ALB/DW,ERC,BRM,TMK,LBD,JAM - COMBAT VET ELIGIBILTY; 10/15/05 ; 6/16/09 10:40am
Source file <DGCV.m>
Name | Comments | DBIA/ICR reference |
---|---|---|
CVELIG(DFN) | ;
|
|
RES(DG1,DG2) | ;determine the final RESULT code from DG1 & DG2
|
|
CHKDATE(DGDATE,I,SSD) | ;check to see if date is imprecise or missing
|
|
SETCV(DFN,DGSRV) | ;calculate CV end date
; DGSRV is the most recent of the Service Separation Date ; or the OEF/OIF To Date, called from file #2 new style ; cross reference "ACVCOM" |
|
CALCCV(DFN,DGSRV) | ; Calculate CV end date given DFN and date to start
; calculation from ; Function returns null or CV end date calculated |
|
CVRULES(DFN,DGSRV,DGNDAA,DGYRS) | ;apply rules for the CV End Date
|
|
CVEDT(DFN,DGDT) | ;Provide Combat Vet Eligibility End Date, if eligible
|
|
PARSE | ;GETS^DIQ called in CVELIG - in this subroutine stuff results into array
|
|
CHKSSD(DFN) | ;check the Serv Sep Date [Last]
; DGSRV=last SSD ; Output - RESULT ; 1 - Date is present and after 11/11/1998 ; 0 - Date is present but before 11/11/1998 ; A - Date is imprecise & either is or potentially is after 11/11/98 ; F - Date is missing |
|
CHKREST(DGDATE,SSD) | ;
; SSD = optional, = to the last serv sep date |
|
MISS(DFN,DGLEN,DGRES) | ;there is at least one missing date, and in order to
|
|
DELCV(DFN) | ;called by the Kill logic of the ACVCOM cross reference
|
FileNo | Call Tags |
---|---|
^DPT - [#2] | GET1^DIQ, GETS^DIQ |
^DGEN(27.11 - [#27.11] | GET1^DIQ |
Name | Line Occurrences (* Changed, ! Killed) |
---|---|
^DGEN(27.11 - [#27.11] | CVRULES+18 |
^DPT - [#2] | CVELIG+31, CALCCV+5, CVEDT+16, PARSE+3, DELCV+9 |
^TMP("DGCVE" | CVELIG+33, SETCV+6 |
Name | Line Occurrences |
---|---|
$$CALCCV | SETCV+9 |
$$CHKDATE | CHKSSD+9, CHKREST+11 |
$$CHKREST | CVELIG+50 |
$$CHKSSD | CVELIG+40, CVELIG+47 |
$$MISS | CHKREST+20 |
$$RES | CVELIG+51 |
CVRULES | CALCCV+7 |
PARSE | CVELIG+38 |
>> | Not killed explicitly |
* | Changed |
! | Killed |
~ | Newed |
Name | Field # of Occurrence |
---|---|
DFN | CVELIG~, CVELIG+30, CVELIG+31, CVELIG+33, CVELIG+37, CVELIG+40, CVELIG+47, SETCV~, SETCV+6, SETCV+8 , SETCV+9, SETCV+11, CALCCV~, CALCCV+4, CALCCV+5, CALCCV+7, CVRULES~, CVRULES+17, CVEDT~, CVEDT+15 , CVEDT+16, CVEDT+21, PARSE+3, PARSE+4, PARSE+5, PARSE+6, PARSE+7, PARSE+8, PARSE+9, PARSE+11 , CHKSSD~, CHKREST+20, MISS~, MISS+6, MISS+7, MISS+8, MISS+9, MISS+10, DELCV~, DELCV+8 , DELCV+9, DELCV+10, DELCV+13 |
DG1 | CVELIG+27~, CVELIG+29*, CVELIG+40*, CVELIG+43, CVELIG+48*, CVELIG+51, RES~, RES+2, RES+4, RES+5 , RES+6, RES+8, RES+9, CHKSSD+7~, CHKSSD+9*, CHKSSD+10*, CHKSSD+11 |
DG2 | CVELIG+27~, CVELIG+29*, CVELIG+50*, CVELIG+51, RES~, RES+2, RES+4, RES+5, RES+6, RES+8* , RES+9 |
DG3 | CHKREST+2~, CHKREST+3*, CHKREST+12*, CHKREST+13, CHKREST+15, CHKREST+16*, CHKREST+20 |
DG4 | CHKREST+2~, CHKREST+3*, CHKREST+11*, CHKREST+12 |
DGARR | CVELIG+36~, MISS+3~ |
DGARR(2 | PARSE+4, PARSE+5, PARSE+6, PARSE+7, PARSE+8, PARSE+9, MISS+7, MISS+8, MISS+9, MISS+10 |
DGCHAR | CHKREST+15*, CHKREST+16, CHKREST+17, MISS+3~, MISS+5*, MISS+11*, MISS+12, MISS+13, MISS+14, MISS+15 |
DGCIEN | CVRULES+9~, CVRULES+17*, CVRULES+18, CVRULES+19, CVRULES+22, CVRULES+29 |
DGCIND | MISS+4~, MISS+7*, MISS+12 |
DGCOM | CVELIG+28~, CVELIG+41, PARSE+5* |
DGCUTOFF | CVRULES+9~, CVRULES+16*, CVRULES+31, CVRULES+35 |
DGCV | DELCV+5~, DELCV+10*, DELCV+11 |
DGCVDT | CVELIG+28~, PARSE+9* |
DGCVEDT | SETCV+4~, SETCV+9*, SETCV+10, SETCV+11, CALCCV+3~, CALCCV+17*, CALCCV+18*, CALCCV+19 |
DGCVFLG | CVELIG+28~, DELCV+6!, DELCV+7*, DELCV+12* |
DGDATE | CVELIG+41*, CVELIG+43, CVELIG+47, CVELIG+50, CHKDATE~, CHKDATE+6, CHKDATE+8, CHKDATE+9, CHKDATE+10, CHKDATE+15 , CHKREST~, CHKREST+9 |
DGDT | CVEDT~, CVEDT+18*, CVEDT+19*, CVEDT+20, CVEDT+23, CHKREST+2~, CHKREST+9*, CHKREST+10, CHKREST+11 |
DGENRDT | CVRULES+9~, CVRULES+19*, CVRULES+20, CVRULES+21, CVRULES+24*, CVRULES+25, CVRULES+26 |
DGERR | CVELIG+36~, MISS+3~ |
DGFDA | SETCV+4~, DELCV+5~ |
DGFDA(2 | SETCV+11*, DELCV+13* |
DGFLG | CHKREST+2~, CHKREST+5*, CHKREST+10*, CHKREST+20 |
DGGULF | CVELIG+28~, CVELIG+41, PARSE+6* |
DGLEN | CHKREST+2~, CHKREST+13*, CHKREST+15, CHKREST+20, MISS~, MISS+11 |
DGNDAA | CALCCV+3~, CALCCV+6*, CALCCV+7, CALCCV+16, CVRULES~, CVRULES+20, CVRULES+21, CVRULES+26 |
DGOEIF | CVELIG+28~, CVELIG+41, PARSE+11* |
DGPGIND | MISS+4~, MISS+10*, MISS+15 |
DGPIEN | CVRULES+9~, CVRULES+22*, CVRULES+23*, CVRULES+24 |
DGPLUS3 | CALCCV+3~ |
DGPRI | CVRULES+9~, CVRULES+15*, CVRULES+20*, CVRULES+26*, CVRULES+28 |
DGQ | CHKREST+2~, CHKREST+4*, CHKREST+14*, CHKREST+15, CHKREST+16*, CHKREST+17*, CHKREST+18, CHKREST+19, MISS+3~, MISS+5* , MISS+11, MISS+12*, MISS+13*, MISS+14* |
DGQT | CVRULES+9~, CVRULES+15*, CVRULES+23, CVRULES+26* |
DGR | CHKREST+2~, CHKREST+3*, CHKREST+17*, CHKREST+19, MISS+3~, MISS+5*, MISS+12*, MISS+13*, MISS+14*, MISS+15* , MISS+16 |
DGRES | CHKREST+2~, CHKREST+3*, CHKREST+20*, CHKREST+21, MISS~, MISS+11 |
DGSIND | MISS+4~, MISS+9*, MISS+14 |
DGSOM | CVELIG+28~, CVELIG+41, PARSE+7* |
DGSRV | CVELIG+28~, CVELIG+43, CVELIG+46~, CVELIG+47*, CVELIG+50, SETCV~, SETCV+9, CALCCV~, CALCCV+4, CALCCV+7 , CALCCV+16, CVRULES~, CVRULES+14, CVRULES+31, CVRULES+35, PARSE+3*, PARSE+4*, CHKSSD+8, CHKSSD+9 |
DGSTAT | CVRULES+9~, CVRULES+29*, CVRULES+30 |
DGTMPDT | CALCCV+3~, CALCCV+16*, CALCCV+17 |
DGX | CHKREST+2~, CHKREST+8*, CHKREST+9, CHKREST+10, CHKREST+11, CHKREST+15*, MISS+3~, MISS+11* |
DGYIND | MISS+4~, MISS+8*, MISS+13 |
DGYRS | CALCCV+3~, CALCCV+7, CALCCV+10, CALCCV+16, CALCCV+17, CVRULES~, CVRULES+13*, CVRULES+14*, CVRULES+31*, CVRULES+35* |
DGYUG | CVELIG+28~, CVELIG+41, PARSE+8* |
DT | CVEDT+18 |
I | CVELIG+27~, CHKDATE~, CHKDATE+6, CHKDATE+7, CHKDATE+9, CHKDATE+13 |
RES | CHKDATE+4~, CHKDATE+5*, CHKDATE+6, CHKDATE+7*, CHKDATE+9*, CHKDATE+13*, CHKDATE+14, CHKDATE+15*, CHKDATE+16 |
RESULT | CVELIG+27~, CVELIG+29*, CVELIG+30, CVELIG+31, CVELIG+33, CVELIG+51*, CVELIG+52, CVEDT+13~, CVEDT+14*, CVEDT+21* , CVEDT+22, CVEDT+23*, CVEDT+24*, CVEDT+25 |
SSD | CHKDATE~, CHKREST~, CHKREST+11 |
U | CVELIG+43, CVELIG+47, PARSE+3, PARSE+11, CHKREST+9 |
Z | CVELIG+46~, CVELIG+47*, CVELIG+48 |