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

ACHSCPTA.m

Go to the documentation of this file.
  1. ACHSCPTA ; IHS/ITSC/PMF - QUEUE CHS CPT CODE REPORT-SUMMARY ONLY ; [ 10/16/2001 8:16 AM ]
  1. ;;3.1;CONTRACT HEALTH MGMT SYSTEM;;JUN 11, 2001
  1. ;
  1. K ^TMP("ACHSCPT",$J)
  1. S ACHSUSR=$$USR^ACHS,ACHSFAC=DUZ(2)
  1. W !!!?15,"***** CPT Code Summary for ",$P($G(^DIC(4,ACHSFAC,0)),U)," *****",!
  1. CPTCODE ;
  1. K ACHSCODE
  1. S Y=$$DIR^XBDIR("Y","Summary for ALL CPT CODES","YES","","","",1)
  1. I $D(DUOUT)!($D(DIROUT))!($D(DTOUT)) D END Q
  1. I Y=1 S ACHSCODE(0)="ALL" G DOS
  1. HELP ;
  1. W *7,*7,!!?8,$$REPEAT^XLFSTR("*",20)
  1. W " SELECTING CPT CODES ",$$REPEAT^XLFSTR("*",20)
  1. W !!?8,"1. You may enter '??' at any time for a list of valid codes."
  1. W !?8,"2. You may enter CPT CODES by NAME or NUMBER."
  1. W !?8,"3. You may enter from 1 to 10 CPT CODES."
  1. W !?8,"4. Press <RETURN> to terminate the selection process."
  1. W !?8,"5. Enter '^^' at any prompt to EXIT THIS PROGRAM."
  1. W *7,*7,!!?8,$$REPEAT^XLFSTR("*",61)
  1. W !!
  1. S ACHS=0
  1. K DIR
  1. ENTCODE ;
  1. S DIR(0)="PO^ICPT(:EMZQ",DIR("A")="Enter CPT CODE"
  1. D ^DIR
  1. G DOS:$D(DIRUT)&$D(ACHSCODE),CPTCODE:$D(DUOUT),END:$D(DTOUT)!$D(DIROUT)
  1. I ACHS=10 W *7,*7,!!?15,"That's 10!" G DOS
  1. S ACHS=ACHS+1
  1. S:+Y>0 ACHSCODE(+Y)=""
  1. I '$D(ACHSCODE),+Y'>0 W *7,!!?22,"At least one entry is required.",!?10,"Please select a CPT CODE or enter '^^' to exit this program.",! K ACHSCODE
  1. G ENTCODE
  1. ;
  1. DOS ;Select Dates of Service
  1. SELBEG ;
  1. S ACHSBEG=$$DIR^XBDIR("D^:NOW:EX","Enter the BEGINNING DATE OF SERVICE","","","","",1)
  1. G CPTCODE:$D(DUOUT),END:$D(DIROUT)!$D(DTOUT)
  1. SELEND ;
  1. S ACHSEND=$$DIR^XBDIR("D^:NOW:EX","Enter the ENDING DATE OF SERVICE",$$FMTE^XLFDT(DT),"","",1)
  1. G SELBEG:$D(DUOUT),END:$D(DIROUT)!$D(DTOUT)
  1. G:$$EBB^ACHS(ACHSBEG,ACHSEND) SELEND
  1. DEVICE ;Device Selection
  1. W *7,!!?20,"This report may take awhile to compile.",!?15," It is recommended that you QUEUE to a PRINTER.",!
  1. K DIR
  1. S %=$$PB^ACHS
  1. I %=U!$D(DTOUT)!$D(DUOUT) D END Q
  1. I %="B" D VIEWR^XBLM("^ACHSCPTB"),EN^XBVK("VALM"),END Q
  1. S %ZIS="PQ"
  1. D ^%ZIS
  1. I POP W !,"NO DEVICE SELECTED - REQUEST ABORTED" S DIR(0)="E" D ^DIR D HOME^%ZIS G END:Y=0,CPTCODE:Y=1
  1. I '$D(IO("Q")) W:'$D(IO("S")) ! D:'$D(IO("S")) WAIT^DICD G ^ACHSCPTB
  1. ZTLOAD ;Loads Taskman
  1. S ZTRTN="^ACHSCPTB",ZTIO="",ZTDESC="CPT SUMMARY REPORT",ACHSQIO=ION_";"_IOST_";"_IOM_";"_IOSL
  1. F %="ACHSFAC","ACHSUSR","ACHSQIO","ACHSCODE(","ACHSBEG","ACHSEND" S ZTSAVE(%)=""
  1. D ^%ZTLOAD
  1. K IO("Q"),ZTSK
  1. D HOME^%ZIS
  1. END ;
  1. K DIR,DIROUT,DTOUT,DUOUT,Y,C,I
  1. D EN^XBVK("ACHS"),^ACHSVAR,HOME^%ZIS
  1. Q
  1. ;