Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: TIUPXAPM

TIUPXAPM.m

Go to the documentation of this file.
  1. TIUPXAPM ;SLC/RMO - CPT Modifier API(s) ;03/06/03@1500
  1. ;;1.0;TEXT INTEGRATION UTILITIES;**82,161**;Jun 20, 1997
  1. ;
  1. ;Pass in encounter date for CSV **161**
  1. MOD(CPT,TIUI,TIUVDT) ;Select CPT Modifiers for CPT Code
  1. ; Input -- CPT CPT Selection Array
  1. ; TIUI Item Number in CPT Selection Array
  1. ; TIUVDT Encounter Date
  1. ; Output -- CPT CPT Selection Array
  1. N CPTIEN,I,MOD,MODATA,MODCNT
  1. S CPTIEN=+CPT(TIUI)
  1. ;
  1. ;Check if there are any selectable CPT Modifiers for the CPT Code
  1. ;Current date passed to ICPTCOD, changed to encounter date for CSV **161**
  1. I +$$CODM^ICPTCOD(CPTIEN,,"",TIUVDT)'>0 G MODQ
  1. ;
  1. ;Set CPT Modifier Selection Array for pre-selected CPT Modifiers
  1. S (I,MODCNT)=0
  1. F S I=$O(CPT(TIUI,"MOD",I)) Q:'I D
  1. . S MODCNT=MODCNT+1
  1. . S MOD(+$G(CPT(TIUI,"MOD",MODCNT)))=""
  1. ;
  1. ;Display pre-selected CPT Modifiers
  1. D DISMOD(.CPT,TIUI,1)
  1. ;
  1. ;Ask CPT Modifiers
  1. S MODCNT=$S($G(MODCNT):MODCNT,1:0)
  1. ;Pass encounter date to ASKMOD for CSV **161**
  1. F Q:'$$ASKMOD(CPTIEN,.MOD,MODCNT,.MODATA,TIUVDT) D
  1. . S MOD(+MODATA)=""
  1. . S MODCNT=MODCNT+1
  1. . S CPT(TIUI,"MOD",MODCNT)=MODATA
  1. . S MODATA=""
  1. MODQ Q
  1. ;
  1. ;Pass in encounter date for CSV **161**
  1. ASKMOD(CPTIEN,MOD,MODCNT,MODATA,TIUVDT) ;Ask CPT Modifier
  1. ; Input -- CPTIEN CPT file (#81) IEN
  1. ; MOD CPT Modifier Selection Array
  1. ; MODCNT Number of Modifiers Selected
  1. ; TIUVDT Encounter Date
  1. ; Output -- 1=Successful and 0=Failure
  1. ; MODATA Modifier Data from Modifier file (#81.3)
  1. ; 1st Piece=IEN
  1. ; 2nd Piece=Modifier field (#.01)
  1. ; 3rd Piece=Name field (#.02)
  1. N DIR,DTOUT,DUOUT,Y
  1. S DIR(0)="PAO^81.3:AEMQZ^K:'$$CHKMOD^TIUPXAPM(.MOD,+Y) X"
  1. S DIR("A")="Select "_$S($G(MODCNT):"another ",1:"")_"CPT MODIFIER: "
  1. ;Pass encounter date to ICPTMOD for CSV **161**
  1. S DIR("S")="I +$$MODP^ICPTMOD(CPTIEN,+Y,""I"",TIUVDT)>0"
  1. D ^DIR
  1. I Y>0 S MODATA=+Y_U_$P(Y(0),U,1,2)
  1. Q $S($G(MODATA)="":0,1:1)
  1. ;
  1. CHKMOD(MOD,MODIEN) ;Check Selected CPT Modifier
  1. ; Input -- MOD CPT Modifier Selection Array
  1. ; MODIEN Modifier file (#81.3) IEN
  1. ; Output -- 1=Successful and 0=Failure
  1. N Y
  1. S Y=1
  1. ;Check if CPT Modifier has already been selected
  1. I $D(MOD(MODIEN)) D EN^DDIOL("This CPT Modifier has already been selected.","","!?5") S Y=0
  1. Q +$G(Y)
  1. ;
  1. DISMOD(CPT,TIUI,TIUSELF) ;Display Selected CPT Modifiers
  1. ; Input -- CPT CPT Selection Array
  1. ; TIUI Item Number in CPT Selection Array
  1. ; TIUSELF Selection Process Flag (Optional)
  1. ; 1=Selection Process
  1. ; Output -- None
  1. N CAP,MODATA,MODCNT,TC
  1. ;
  1. ;Set caption and format parameter
  1. I $G(TIUSELF) D
  1. . S CAP="Current CPT Modifiers:",TC=0
  1. ELSE D
  1. . S CAP="CPT Modifier(s):",TC=8
  1. S MODCNT=0
  1. F S MODCNT=$O(CPT(TIUI,"MOD",MODCNT)) Q:'MODCNT D
  1. . S MODATA=$G(CPT(TIUI,"MOD",MODCNT))
  1. . W:MODCNT=1 !,?TC,CAP
  1. . W !?12,"-",$P(MODATA,U,2),?19,$P(MODATA,U,3)
  1. Q