- DG53819B ;ALB/MJB - TREATING SPECIALTIES UPDATES ; 3/12/07 7:21am
- ;;5.3;PIMS;**1016**;JUN 30, 2012;Build 20
- ;
- Q
- EN ;Add Treating Specialties to the SPECIALITY file (#42.4)
- N DGI,DGERR,DGSPEC,DGIFN,DGQUES
- S DGIFN=0
- ;add new treating specialties
- F DGI=1:1 S DGSPEC=$P($T(TRSP+DGI),";;",2) Q:DGSPEC="QUIT" D
- .D TSPEC
- .S DGQUES=$P(DGSPEC,U,9)
- .D FAC
- .Q
- ;edit existing treating specialties
- ;D EDIT
- ;inactivate existing treating specialties
- D INACT
- ;edit existing surgical specialties
- ;D EDIT^DG53813R
- Q
- TSPEC ;Add treating specialty to SPECIALTY File (#42.4)
- D BMES^XPDUTL(">>>"_$P(DGSPEC,U,2)_">>>")
- N DA,DGFILE,DGMULT,DIC,DIE,DGDA1,DINUM,DLAYGO,DR,X,Y
- ;S DGERR=0
- S DIC="^DIC(42.4,"
- S DIC(0)="LX"
- S DINUM=$P(DGSPEC,U)
- S X=$P(DGSPEC,U,2)
- S DLAYGO=42.4
- D ^DIC
- S (DGIFN,DGDA1)=DGSPEC
- I +DGIFN=-1 D Q
- .D MES^XPDUTL(" Entry not added to SPECIALTY File (#42.4). No further updating will occur.")
- .D MES^XPDUTL(" Please contact Customer Service for assistance.")
- .Q
- ;I $P(DGIFN,U,3)'=1&(+DGIFN'=$P(DGSPEC,U)) D Q
- ;.D MES^XPDUTL(" Entry exists in SPECIALTY File (#42.4), but with a different PTF Code #.")
- ;.D MES^XPDUTL(" No further updating will occur. Please review entry.")
- ;.S DGERR=1
- ;.Q
- D MES^XPDUTL(" Entry added to SPECIALTY File (#42.4).")
- D MES^XPDUTL(" Updating SPECIALTY File fields.")
- S DIE=DIC
- S DR=".01///"_$P(DGSPEC,U,2)_";1///"_$P(DGSPEC,U,3)_";3///"_$P(DGSPEC,U,4)_";4///"_$P(DGSPEC,U,5)_";5///"_$P(DGSPEC,U,6)_";6///"_$P(DGSPEC,U,7)_";7///"_$P(DGSPEC,U,10)
- S DA=+DGIFN
- D ^DIE
- S DGFILE=42.4
- S DGMULT=10
- S DIC="^DIC(42.4,"_+DGIFN_",""E"","
- D MULT
- Q
- FAC ;Add treating specialty to Facility Treating Specialty file (#45.7)
- N DA,DGFILE,DGMULT,DIC,DIE,DLAYGO,DR,X,Y
- S DIC="^DIC(45.7,"
- S DIC(0)="LXZ"
- S DLAYGO=45.7
- S X=$P(DGSPEC,U,2)
- D ^DIC
- S DGDA1=Y
- I +DGDA1=-1 D BMES^XPDUTL(" Entry not added to FACILITY TREATING SPECIALTY File(#45.7).") Q
- I $P(DGDA1,U,3)'=1&($P(Y(0),U,2)'=$P(DGSPEC,U)) D Q
- .D BMES^XPDUTL(" Entry exists in FACILITY TREATING SPECIALTY File (#45.7), but with")
- .D MES^XPDUTL(" a different PTF Code #. No further updating will occur.")
- .D MES^XPDUTL(" Please review entry.")
- .Q
- D BMES^XPDUTL(" Entry "_$S($P(DGDA1,U,3)=1:"added to",1:"exists in")_" FACILITY TREATING SPECIALTY File (#45.7).")
- D MES^XPDUTL(" Updating SPECIALTY field...")
- S DIE=DIC
- S DA=+DGDA1
- S DR="1////"_$P(DGSPEC,U)
- D ^DIE
- S DGFILE=45.7
- S DGMULT=100
- S DIC="^DIC(45.7,"_+DGDA1_",""E"","
- D MULT
- Q
- MULT ;Add Effective Date
- N DA,DIE,DR
- S DA(1)=+DGDA1
- S DIC(0)="LX"
- S DIC("P")=$P(^DD(DGFILE,DGMULT,0),"^",2)
- S X=3100101
- D ^DIC
- S DA=+Y
- I +Y=-1 D MES^XPDUTL(" Effective date not added.") Q
- D MES^XPDUTL(" Effective date added.")
- S DIE=DIC
- S DR=".02///Y"
- D ^DIE
- Q
- INACT ;inactivate treating specialties
- N DA,DIE,DR,X,DGTSP
- F DGTSP=36,62 D
- . S DIC="^DIC(42.4,"_DGTSP_",""E"","
- . S DA(1)=DGTSP
- . S DIC(0)="LX"
- . S DIC("P")=$P(^DD(42.4,10,0),"^",2)
- . S X=3100601
- . D ^DIC
- . S DA=+Y
- . I +Y=-1 D BMES^XPDUTL(">>>Inactive date not added to TS code "_DGTSP_" in the Specialty file.<<<") Q
- . D BMES^XPDUTL(">>>Inactive date added to TS code "_DGTSP_" in the Specialty file.<<<")
- . S DIE=DIC
- . S DR=".02///N"
- . D ^DIE
- . ;check for CODES in the Facility Treating Specialty File (45.7
- . ;add inactivation date of 2/1/2010
- . D BMES^XPDUTL(" ")
- . D MES^XPDUTL(" FACILITY TREATING SPECIALTY FILE being checked to see if any entries are")
- . D MES^XPDUTL(" pointing to "_DGTSP_". If so, they will be inactivated.>>>")
- .N DAA F DAA=0:0 S DAA=$O(^DIC(45.7,"ASPEC",DGTSP,DAA)) Q:'DAA D
- .. N DIE,DR,TS,X S TS=""
- ..S TS=$P($G(^DIC(45.7,DAA,0)),"^")
- ..S DIC="^DIC(45.7,"_DAA_",""E"","
- ..S DA(1)=DAA
- ..S DIC(0)="LX"
- ..S X=3100601
- ..D ^DIC
- ..S DA=+Y
- ..I +Y=-1 D BMES^XPDUTL(" Inactive date not added to "_TS_"in the Facility Treating Specialty file.") Q
- ..D BMES^XPDUTL(" Inactive date added to "_TS_" in the Facility Treating Specialty file.<<<")
- ..S DIE=DIC
- ..S DR=".02///N"
- ..D ^DIE
- Q
- EDIT ;Edit treating specialties
- ;
- N DS,DIE,DR,DGI
- S DIE="^DIC(42.4,"
- S DIC(0)="LX"
- F DGI=1:1 S DGSPEC=$P($T(ETRSP+DGI),";;",2) Q:DGSPEC="QUIT" D
- . S DGERR=0
- . S DA=$P(DGSPEC,U)
- . S DR=".01///"_$P(DGSPEC,U,2)_";1///"_$P(DGSPEC,U,3)_";3///"_$P(DGSPEC,U,4)_";4///"_$P(DGSPEC,U,5)_";5///"_$P(DGSPEC,U,6)_";6///"_$P(DGSPEC,U,7)
- . D ^DIE
- . D BMES^XPDUTL(" ")
- . D BMES^XPDUTL(" ")
- . D BMES^XPDUTL(">>>"_$P(DGSPEC,U)_" code updated to "_$P(DGSPEC,U,2)_" in the Specialty file.>>>")
- N DS,DIE,DR,DGI,DGII,DGSP,CNT,DGSPEC,DGSPEC1
- S DIE="^DIC(45.7,"
- S DIC(0)="LX"
- F DGI=1:1 S DGSPEC=$P($T(ETRSP+DGI),";;",2) Q:DGSPEC="QUIT" D
- . S DGERR=0
- . S DGSP=$P(DGSPEC,U)
- . S CNT=0,DGSPEC1=0 F DGII=0:0 S DGSPEC1=$O(^DIC(45.7,"ASPEC",DGSP,DGSPEC1)) Q:'DGSPEC1 S CNT=CNT+1 D
- .. I CNT=1 D
- ... I $$ACTIVE^DGACT(45.7,DGSPEC1)'=1 S CNT=0 Q
- ... S DA=DGSPEC1,DR=".01///"_$P(DGSPEC,U,2)_";99///@"
- ... D BMES^XPDUTL(" "_$P(^DIC(45.7,DGSPEC1,0),U)_" name has been changed to "_$P(DGSPEC,U,2)_" in the Facility Treating Specialty file.")
- ... D ^DIE
- .. E D
- ... S TS=""
- ... S TS=$P($G(^DIC(45.7,DGSPEC1,0)),"^")
- ... D BMES^XPDUTL(" Please review Facility Treating Specialty "_TS_". The entry name may need changing or entry may need inactivating since more than one entry points to "_$P(DGSPEC,U,2)_" in the Specialty file.<<<")
- Q
- TRSP ;PTF CODE^SPECIALTY^PRINT NAME^SERVICE^ASK PSYCH^BILLING BEDSECTION^CDR/MPCR^^QUES#^AUSTIN PTF CODE
- ;;112^POLYTRAUMA REHAB UNIT^^REHAB MEDICINE^N^REHABILITATION MEDICINE^1113^^^1N
- ;;QUIT
- ETRSP ;PTF CODE^SPECIALTY^PRINT NAME^SERVICE^ASK PSYCH^BILLING BEDSECTION^CDR/MPCR
- ;;QUIT
- DG53819B ;ALB/MJB - TREATING SPECIALTIES UPDATES ; 3/12/07 7:21am
- +1 ;;5.3;PIMS;**1016**;JUN 30, 2012;Build 20
- +2 ;
- +3 QUIT
- EN ;Add Treating Specialties to the SPECIALITY file (#42.4)
- +1 NEW DGI,DGERR,DGSPEC,DGIFN,DGQUES
- +2 SET DGIFN=0
- +3 ;add new treating specialties
- +4 FOR DGI=1:1
- SET DGSPEC=$PIECE($TEXT(TRSP+DGI),";;",2)
- IF DGSPEC="QUIT"
- QUIT
- Begin DoDot:1
- +5 DO TSPEC
- +6 SET DGQUES=$PIECE(DGSPEC,U,9)
- +7 DO FAC
- +8 QUIT
- End DoDot:1
- +9 ;edit existing treating specialties
- +10 ;D EDIT
- +11 ;inactivate existing treating specialties
- +12 DO INACT
- +13 ;edit existing surgical specialties
- +14 ;D EDIT^DG53813R
- +15 QUIT
- TSPEC ;Add treating specialty to SPECIALTY File (#42.4)
- +1 DO BMES^XPDUTL(">>>"_$PIECE(DGSPEC,U,2)_">>>")
- +2 NEW DA,DGFILE,DGMULT,DIC,DIE,DGDA1,DINUM,DLAYGO,DR,X,Y
- +3 ;S DGERR=0
- +4 SET DIC="^DIC(42.4,"
- +5 SET DIC(0)="LX"
- +6 SET DINUM=$PIECE(DGSPEC,U)
- +7 SET X=$PIECE(DGSPEC,U,2)
- +8 SET DLAYGO=42.4
- +9 DO ^DIC
- +10 SET (DGIFN,DGDA1)=DGSPEC
- +11 IF +DGIFN=-1
- Begin DoDot:1
- +12 DO MES^XPDUTL(" Entry not added to SPECIALTY File (#42.4). No further updating will occur.")
- +13 DO MES^XPDUTL(" Please contact Customer Service for assistance.")
- +14 QUIT
- End DoDot:1
- QUIT
- +15 ;I $P(DGIFN,U,3)'=1&(+DGIFN'=$P(DGSPEC,U)) D Q
- +16 ;.D MES^XPDUTL(" Entry exists in SPECIALTY File (#42.4), but with a different PTF Code #.")
- +17 ;.D MES^XPDUTL(" No further updating will occur. Please review entry.")
- +18 ;.S DGERR=1
- +19 ;.Q
- +20 DO MES^XPDUTL(" Entry added to SPECIALTY File (#42.4).")
- +21 DO MES^XPDUTL(" Updating SPECIALTY File fields.")
- +22 SET DIE=DIC
- +23 SET DR=".01///"_$PIECE(DGSPEC,U,2)_";1///"_$PIECE(DGSPEC,U,3)_";3///"_$PIECE(DGSPEC,U,4)_";4///"_$PIECE(DGSPEC,U,5)_";5///"_$PIECE(DGSPEC,U,6)_";6///"_$PIECE(DGSPEC,U,7)_";7///"_$PIECE(DGSPEC,U,10)
- +24 SET DA=+DGIFN
- +25 DO ^DIE
- +26 SET DGFILE=42.4
- +27 SET DGMULT=10
- +28 SET DIC="^DIC(42.4,"_+DGIFN_",""E"","
- +29 DO MULT
- +30 QUIT
- FAC ;Add treating specialty to Facility Treating Specialty file (#45.7)
- +1 NEW DA,DGFILE,DGMULT,DIC,DIE,DLAYGO,DR,X,Y
- +2 SET DIC="^DIC(45.7,"
- +3 SET DIC(0)="LXZ"
- +4 SET DLAYGO=45.7
- +5 SET X=$PIECE(DGSPEC,U,2)
- +6 DO ^DIC
- +7 SET DGDA1=Y
- +8 IF +DGDA1=-1
- DO BMES^XPDUTL(" Entry not added to FACILITY TREATING SPECIALTY File(#45.7).")
- QUIT
- +9 IF $PIECE(DGDA1,U,3)'=1&($PIECE(Y(0),U,2)'=$PIECE(DGSPEC,U))
- Begin DoDot:1
- +10 DO BMES^XPDUTL(" Entry exists in FACILITY TREATING SPECIALTY File (#45.7), but with")
- +11 DO MES^XPDUTL(" a different PTF Code #. No further updating will occur.")
- +12 DO MES^XPDUTL(" Please review entry.")
- +13 QUIT
- End DoDot:1
- QUIT
- +14 DO BMES^XPDUTL(" Entry "_$SELECT($PIECE(DGDA1,U,3)=1:"added to",1:"exists in")_" FACILITY TREATING SPECIALTY File (#45.7).")
- +15 DO MES^XPDUTL(" Updating SPECIALTY field...")
- +16 SET DIE=DIC
- +17 SET DA=+DGDA1
- +18 SET DR="1////"_$PIECE(DGSPEC,U)
- +19 DO ^DIE
- +20 SET DGFILE=45.7
- +21 SET DGMULT=100
- +22 SET DIC="^DIC(45.7,"_+DGDA1_",""E"","
- +23 DO MULT
- +24 QUIT
- MULT ;Add Effective Date
- +1 NEW DA,DIE,DR
- +2 SET DA(1)=+DGDA1
- +3 SET DIC(0)="LX"
- +4 SET DIC("P")=$PIECE(^DD(DGFILE,DGMULT,0),"^",2)
- +5 SET X=3100101
- +6 DO ^DIC
- +7 SET DA=+Y
- +8 IF +Y=-1
- DO MES^XPDUTL(" Effective date not added.")
- QUIT
- +9 DO MES^XPDUTL(" Effective date added.")
- +10 SET DIE=DIC
- +11 SET DR=".02///Y"
- +12 DO ^DIE
- +13 QUIT
- INACT ;inactivate treating specialties
- +1 NEW DA,DIE,DR,X,DGTSP
- +2 FOR DGTSP=36,62
- Begin DoDot:1
- +3 SET DIC="^DIC(42.4,"_DGTSP_",""E"","
- +4 SET DA(1)=DGTSP
- +5 SET DIC(0)="LX"
- +6 SET DIC("P")=$PIECE(^DD(42.4,10,0),"^",2)
- +7 SET X=3100601
- +8 DO ^DIC
- +9 SET DA=+Y
- +10 IF +Y=-1
- DO BMES^XPDUTL(">>>Inactive date not added to TS code "_DGTSP_" in the Specialty file.<<<")
- QUIT
- +11 DO BMES^XPDUTL(">>>Inactive date added to TS code "_DGTSP_" in the Specialty file.<<<")
- +12 SET DIE=DIC
- +13 SET DR=".02///N"
- +14 DO ^DIE
- +15 ;check for CODES in the Facility Treating Specialty File (45.7
- +16 ;add inactivation date of 2/1/2010
- +17 DO BMES^XPDUTL(" ")
- +18 DO MES^XPDUTL(" FACILITY TREATING SPECIALTY FILE being checked to see if any entries are")
- +19 DO MES^XPDUTL(" pointing to "_DGTSP_". If so, they will be inactivated.>>>")
- +20 NEW DAA
- FOR DAA=0:0
- SET DAA=$ORDER(^DIC(45.7,"ASPEC",DGTSP,DAA))
- IF 'DAA
- QUIT
- Begin DoDot:2
- +21 NEW DIE,DR,TS,X
- SET TS=""
- +22 SET TS=$PIECE($GET(^DIC(45.7,DAA,0)),"^")
- +23 SET DIC="^DIC(45.7,"_DAA_",""E"","
- +24 SET DA(1)=DAA
- +25 SET DIC(0)="LX"
- +26 SET X=3100601
- +27 DO ^DIC
- +28 SET DA=+Y
- +29 IF +Y=-1
- DO BMES^XPDUTL(" Inactive date not added to "_TS_"in the Facility Treating Specialty file.")
- QUIT
- +30 DO BMES^XPDUTL(" Inactive date added to "_TS_" in the Facility Treating Specialty file.<<<")
- +31 SET DIE=DIC
- +32 SET DR=".02///N"
- +33 DO ^DIE
- End DoDot:2
- End DoDot:1
- +34 QUIT
- EDIT ;Edit treating specialties
- +1 ;
- +2 NEW DS,DIE,DR,DGI
- +3 SET DIE="^DIC(42.4,"
- +4 SET DIC(0)="LX"
- +5 FOR DGI=1:1
- SET DGSPEC=$PIECE($TEXT(ETRSP+DGI),";;",2)
- IF DGSPEC="QUIT"
- QUIT
- Begin DoDot:1
- +6 SET DGERR=0
- +7 SET DA=$PIECE(DGSPEC,U)
- +8 SET DR=".01///"_$PIECE(DGSPEC,U,2)_";1///"_$PIECE(DGSPEC,U,3)_";3///"_$PIECE(DGSPEC,U,4)_";4///"_$PIECE(DGSPEC,U,5)_";5///"_$PIECE(DGSPEC,U,6)_";6///"_$PIECE(DGSPEC,U,7)
- +9 DO ^DIE
- +10 DO BMES^XPDUTL(" ")
- +11 DO BMES^XPDUTL(" ")
- +12 DO BMES^XPDUTL(">>>"_$PIECE(DGSPEC,U)_" code updated to "_$PIECE(DGSPEC,U,2)_" in the Specialty file.>>>")
- End DoDot:1
- +13 NEW DS,DIE,DR,DGI,DGII,DGSP,CNT,DGSPEC,DGSPEC1
- +14 SET DIE="^DIC(45.7,"
- +15 SET DIC(0)="LX"
- +16 FOR DGI=1:1
- SET DGSPEC=$PIECE($TEXT(ETRSP+DGI),";;",2)
- IF DGSPEC="QUIT"
- QUIT
- Begin DoDot:1
- +17 SET DGERR=0
- +18 SET DGSP=$PIECE(DGSPEC,U)
- +19 SET CNT=0
- SET DGSPEC1=0
- FOR DGII=0:0
- SET DGSPEC1=$ORDER(^DIC(45.7,"ASPEC",DGSP,DGSPEC1))
- IF 'DGSPEC1
- QUIT
- SET CNT=CNT+1
- Begin DoDot:2
- +20 IF CNT=1
- Begin DoDot:3
- +21 IF $$ACTIVE^DGACT(45.7,DGSPEC1)'=1
- SET CNT=0
- QUIT
- +22 SET DA=DGSPEC1
- SET DR=".01///"_$PIECE(DGSPEC,U,2)_";99///@"
- +23 DO BMES^XPDUTL(" "_$PIECE(^DIC(45.7,DGSPEC1,0),U)_" name has been changed to "_$PIECE(DGSPEC,U,2)_" in the Facility Treating Specialty file.")
- +24 DO ^DIE
- End DoDot:3
- +25 IF '$TEST
- Begin DoDot:3
- +26 SET TS=""
- +27 SET TS=$PIECE($GET(^DIC(45.7,DGSPEC1,0)),"^")
- +28 DO BMES^XPDUTL(" Please review Facility Treating Specialty "_TS_". The entry name may need changing or entry may need inactivating since more than one entry points to "_$PIECE(DGSPEC,U,2)_" in the Specialty file.<<<
- ")
- End DoDot:3
- End DoDot:2
- End DoDot:1
- +29 QUIT
- TRSP ;PTF CODE^SPECIALTY^PRINT NAME^SERVICE^ASK PSYCH^BILLING BEDSECTION^CDR/MPCR^^QUES#^AUSTIN PTF CODE
- +1 ;;112^POLYTRAUMA REHAB UNIT^^REHAB MEDICINE^N^REHABILITATION MEDICINE^1113^^^1N
- +2 ;;QUIT
- ETRSP ;PTF CODE^SPECIALTY^PRINT NAME^SERVICE^ASK PSYCH^BILLING BEDSECTION^CDR/MPCR
- +1 ;;QUIT