- XU8P586 ; BA/BP - PERSON CLASSES;09/22/11
- ;;8.0;KERNEL;**586**; July 10, 1995;Build 1
- ;;Per VHA Directive 2004-038, this routine should not be modified.
- Q
- ;
- POST ;
- D DEL ;clean entry 1174-1175 if existed
- D ADD ;add entry 1174-1175 in the file
- D DEF ;update definition for entries
- Q
- ;
- ADD ;add the entry 1174-1175
- N XUDATA
- S XUDATA="1174^Optometry^Optometry Resident^^a^^V060808^390200000X^^41^^^I"
- D ADD1(XUDATA)
- N XUDATA
- S XUDATA="1175^Podiatry^Podiatry Resident^^a^^V120213^390200000X^^48^^^I"
- D ADD1(XUDATA)
- Q
- ;^USC(8932.1,D0,0)= (#.01) PROVIDER TYPE [1F] ^ (#1) CLASSIFICATION [2F] ^
- ; ==>(#2) AREA OF SPECIALIZATION [3F] ^ (#3) STATUS [4S] ^ (#4)
- ; ==>DATE INACTIVATED [5D] ^ (#5) VA CODE [6F] ^ (#6) X12 CODE
- ; ==>[7F] ^ (#7) reserved [8F] ^ (#8) SPECIALTY CODE [9F] ^
- ;^USC(8932.1,D0,11,0)=^8932.111^^ (#11) DEFINITION
- ;^USC(8932.1,D0,11,D1,0)= (#.01) DEFINITION [1W] ^
- ;^USC(8932.1,D0,90002)= ^ (#90002) INDIVIDUAL/NON [2S] ^
- ;
- ADD1(XUDATA) ; add single entry
- N FDA,FDAIEN,XUD
- S XUD=$G(XUDATA)
- S FDAIEN(1)=$P(XUD,"^")
- S FDA(8932.1,"+1,",.01)=$P(XUD,"^",2)
- S FDA(8932.1,"+1,",1)=$P(XUD,"^",3)
- S FDA(8932.1,"+1,",2)=$P(XUD,"^",4)
- S FDA(8932.1,"+1,",3)="a"
- S FDA(8932.1,"+1,",5)=$P(XUD,"^",7)
- S FDA(8932.1,"+1,",6)=$P(XUD,"^",8)
- S FDA(8932.1,"+1,",8)=$P(XUD,"^",10)
- S FDA(8932.1,"+1,",90002)=$P(XUD,"^",12)
- D UPDATE^DIE("","FDA","FDAIEN","ERR")
- Q
- ;
- DEL ; Delete entries
- N XU581,DIK,DA
- F XU581=1174,1175 S DIK="^USC(8932.1,",DA=XU581 D ^DIK
- Q
- ;
- DEF ; Update definitions
- N XUI
- F XUI=1174,1175 D DEF1(XUI)
- Q
- ;
- DEF1(XUI) ; Update definition for single entry XUI
- N XUI1,XUDATA,XUY
- K ^TMP($J,"XUBA")
- F XUY=1:1:100 S XUDATA=$T(@XUI+XUY) Q:XUDATA=" ;;END" D
- . S ^TMP($J,"XUBA",XUI,XUY,0)=$P(XUDATA,";;",2)
- S XUI1=XUI_","
- D WP^DIE(8932.1,XUI1,11,"K","^TMP($J,""XUBA"",XUI)")
- K ^TMP($J,"XUBA")
- Q
- ;
- 1174 ;
- ;;An individual who is enrolled in an organized health care
- ;;education/training program leading to a degree, certification,
- ;;registration, and/or licensure to provide health care.
- ;;END
- 1175 ;
- ;;An individual who is enrolled in an organized health care
- ;;education/training program leading to a degree, certification,
- ;;registration, and/or licensure to provide health care.
- ;;END
- ;
- GETDEF ; get definitions
- N XUI,XUY
- F XUI=1174,1175 D
- . S XUY=$G(^USC(8932.1,XUI,11,0)),XUY=$P(XUY,"^",3)
- . I XUY>0 D GETDES(XUI,XUY)
- Q
- ;
- GETDES(XUI,XUY) ; get single entry definition
- N XUA,XUB
- W !,XUI," ;"
- F XUA=1:1:XUY W !," ;;",$G(^USC(8932.1,XUI,11,XUA,0))
- W !," ;;END"
- Q
- GET ;
- N XU586
- F XU586=1174,1175 D GET1(XU586)
- Q
- ;
- GET1(XUIEN) ; Get information of given entry from Person Class file.
- N XUI
- S XUI=" ;;"_XUIEN_"^"_$G(^USC(8932.1,XUIEN,0))
- S $P(XUI,"^",12)=$G(^USC(8932.1,XUIEN,90002))
- W !," N XUDATA"
- W !," S XUDATA=","""",$P(XUI,";;",2),""""
- W !," D ADD1(XUDATA)"
- Q
- --- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HXU8P586 3005 printed Feb 18, 2025@23:34:43 Page 2
- XU8P586 ; BA/BP - PERSON CLASSES;09/22/11
- +1 ;;8.0;KERNEL;**586**; July 10, 1995;Build 1
- +2 ;;Per VHA Directive 2004-038, this routine should not be modified.
- +3 QUIT
- +4 ;
- POST ;
- +1 ;clean entry 1174-1175 if existed
- DO DEL
- +2 ;add entry 1174-1175 in the file
- DO ADD
- +3 ;update definition for entries
- DO DEF
- +4 QUIT
- +5 ;
- ADD ;add the entry 1174-1175
- +1 NEW XUDATA
- +2 SET XUDATA="1174^Optometry^Optometry Resident^^a^^V060808^390200000X^^41^^^I"
- +3 DO ADD1(XUDATA)
- +4 NEW XUDATA
- +5 SET XUDATA="1175^Podiatry^Podiatry Resident^^a^^V120213^390200000X^^48^^^I"
- +6 DO ADD1(XUDATA)
- +7 QUIT
- +8 ;^USC(8932.1,D0,0)= (#.01) PROVIDER TYPE [1F] ^ (#1) CLASSIFICATION [2F] ^
- +9 ; ==>(#2) AREA OF SPECIALIZATION [3F] ^ (#3) STATUS [4S] ^ (#4)
- +10 ; ==>DATE INACTIVATED [5D] ^ (#5) VA CODE [6F] ^ (#6) X12 CODE
- +11 ; ==>[7F] ^ (#7) reserved [8F] ^ (#8) SPECIALTY CODE [9F] ^
- +12 ;^USC(8932.1,D0,11,0)=^8932.111^^ (#11) DEFINITION
- +13 ;^USC(8932.1,D0,11,D1,0)= (#.01) DEFINITION [1W] ^
- +14 ;^USC(8932.1,D0,90002)= ^ (#90002) INDIVIDUAL/NON [2S] ^
- +15 ;
- ADD1(XUDATA) ; add single entry
- +1 NEW FDA,FDAIEN,XUD
- +2 SET XUD=$GET(XUDATA)
- +3 SET FDAIEN(1)=$PIECE(XUD,"^")
- +4 SET FDA(8932.1,"+1,",.01)=$PIECE(XUD,"^",2)
- +5 SET FDA(8932.1,"+1,",1)=$PIECE(XUD,"^",3)
- +6 SET FDA(8932.1,"+1,",2)=$PIECE(XUD,"^",4)
- +7 SET FDA(8932.1,"+1,",3)="a"
- +8 SET FDA(8932.1,"+1,",5)=$PIECE(XUD,"^",7)
- +9 SET FDA(8932.1,"+1,",6)=$PIECE(XUD,"^",8)
- +10 SET FDA(8932.1,"+1,",8)=$PIECE(XUD,"^",10)
- +11 SET FDA(8932.1,"+1,",90002)=$PIECE(XUD,"^",12)
- +12 DO UPDATE^DIE("","FDA","FDAIEN","ERR")
- +13 QUIT
- +14 ;
- DEL ; Delete entries
- +1 NEW XU581,DIK,DA
- +2 FOR XU581=1174,1175
- SET DIK="^USC(8932.1,"
- SET DA=XU581
- DO ^DIK
- +3 QUIT
- +4 ;
- DEF ; Update definitions
- +1 NEW XUI
- +2 FOR XUI=1174,1175
- DO DEF1(XUI)
- +3 QUIT
- +4 ;
- DEF1(XUI) ; Update definition for single entry XUI
- +1 NEW XUI1,XUDATA,XUY
- +2 KILL ^TMP($JOB,"XUBA")
- +3 FOR XUY=1:1:100
- SET XUDATA=$TEXT(@XUI+XUY)
- if XUDATA=" ;;END"
- QUIT
- Begin DoDot:1
- +4 SET ^TMP($JOB,"XUBA",XUI,XUY,0)=$PIECE(XUDATA,";;",2)
- End DoDot:1
- +5 SET XUI1=XUI_","
- +6 DO WP^DIE(8932.1,XUI1,11,"K","^TMP($J,""XUBA"",XUI)")
- +7 KILL ^TMP($JOB,"XUBA")
- +8 QUIT
- +9 ;
- 1174 ;
- +1 ;;An individual who is enrolled in an organized health care
- +2 ;;education/training program leading to a degree, certification,
- +3 ;;registration, and/or licensure to provide health care.
- +4 ;;END
- 1175 ;
- +1 ;;An individual who is enrolled in an organized health care
- +2 ;;education/training program leading to a degree, certification,
- +3 ;;registration, and/or licensure to provide health care.
- +4 ;;END
- +5 ;
- GETDEF ; get definitions
- +1 NEW XUI,XUY
- +2 FOR XUI=1174,1175
- Begin DoDot:1
- +3 SET XUY=$GET(^USC(8932.1,XUI,11,0))
- SET XUY=$PIECE(XUY,"^",3)
- +4 IF XUY>0
- DO GETDES(XUI,XUY)
- End DoDot:1
- +5 QUIT
- +6 ;
- GETDES(XUI,XUY) ; get single entry definition
- +1 NEW XUA,XUB
- +2 WRITE !,XUI," ;"
- +3 FOR XUA=1:1:XUY
- WRITE !," ;;",$GET(^USC(8932.1,XUI,11,XUA,0))
- +4 WRITE !," ;;END"
- +5 QUIT
- GET ;
- +1 NEW XU586
- +2 FOR XU586=1174,1175
- DO GET1(XU586)
- +3 QUIT
- +4 ;
- GET1(XUIEN) ; Get information of given entry from Person Class file.
- +1 NEW XUI
- +2 SET XUI=" ;;"_XUIEN_"^"_$GET(^USC(8932.1,XUIEN,0))
- +3 SET $PIECE(XUI,"^",12)=$GET(^USC(8932.1,XUIEN,90002))
- +4 WRITE !," N XUDATA"
- +5 WRITE !," S XUDATA=","""",$PIECE(XUI,";;",2),""""
- +6 WRITE !," D ADD1(XUDATA)"
- +7 QUIT