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

ACHSOCVS.m

Go to the documentation of this file.
  1. ACHSOCVS ; IHS/ITSC/PMF - SUMMARY ONLY PRT OBJCLAS CODE-VENDOR ; [ 10/16/2001 8:16 AM ]
  1. ;;3.1;CONTRACT HEALTH MGMT SYSTEM;;JUN 11, 2001
  1. ;
  1. D BRPT^ACHSFU
  1. S ACHSFAC=DUZ(2)
  1. S (ACHSOB,ACHSPAGE,C,ACHSOBST,ACHSPMST,ACHSDOCS,ACHSOBT,ACHSPMTT,ACHSDOCT,ACHSDOC,ACHSOBGT,ACHSPMGT,ACHSDGT)=0
  1. I $D(^TMP("ACHSOCV",$J,ACHSFAC,0)) S C=0 G NODATA
  1. S ACHSVNDR=""
  1. P1 ;
  1. S ACHSVNDR=$O(^TMP("ACHSOCV",$J,ACHSFAC,ACHSVNDR))
  1. G TOTL:ACHSVNDR=""
  1. D HEADER,HEADER1
  1. S ACHSOC=""
  1. P2 ;
  1. S ACHSOC=$O(^TMP("ACHSOCV",$J,ACHSFAC,ACHSVNDR,ACHSOC))
  1. G:ACHSOC="" SUBTOTL
  1. S ACHSDOC=""
  1. S ACHSDOCS=$P(^TMP("ACHSOCV",$J,ACHSFAC,ACHSVNDR,ACHSOC),U,1),ACHSOBST=$P(^(ACHSOC),U,2),ACHSPMST=$P(^(ACHSOC),U,3)
  1. S ACHSOCD=$E($P(^ACHS(3,ACHSFAC,1,ACHSOC,0),U,1),1,2)_"."_$E($P(^ACHS(3,ACHSFAC,1,ACHSOC,0),U,1),3,4),ACHSOCD=ACHSOCD_" -"_$S($P(^ACHS(3,ACHSFAC,1,ACHSOC,0),U,2)]"":$P(^(0),U,2),1:"NOT ON FILE")
  1. PRINT ;Prints data totals
  1. W !?4,ACHSOCD,?39,$J(ACHSDOCS,4)
  1. S X=ACHSOBST,X2=2
  1. D COMMA^%DTC
  1. W ?50,X
  1. S X=ACHSPMST,X2=2
  1. D COMMA^%DTC
  1. W ?66,X
  1. I IOST["P-",$Y>56 D HEADER,HEADER1
  1. I IOST["C-",'$D(IO("S")),$Y>24 W !! G END:'$$DIR^XBDIR("E") D HEADER,HEADER1
  1. S ACHSOBT=ACHSOBT+ACHSOBST,ACHSPMTT=ACHSPMTT+ACHSPMST,ACHSDOCT=ACHSDOCT+ACHSDOCS
  1. S (ACHSOBST,ACHSDOCS,ACHSPMST,C)=0
  1. G P2
  1. ;
  1. SUBTOTL ;
  1. W !!,$$REPEAT^XLFSTR("-",80),!?3,"SUBTOTAL",?39,$J(ACHSDOCT,4)
  1. S X=ACHSOBT,X2="2$"
  1. D COMMA^%DTC
  1. W ?50,X
  1. S X=ACHSPMTT,X2="2$"
  1. D COMMA^%DTC
  1. W ?66,X
  1. I ACHSOBT>0,ACHSPMTT>0 S X=(ACHSPMTT/ACHSOBT)*100 W !!?3,"PERCENTAGE OF PAYMENT TO OBLIGATED" W ?63,$E(X,1,5)_"%"
  1. S ACHSOBGT=ACHSOBGT+ACHSOBT,ACHSPMGT=ACHSPMGT+ACHSPMTT,ACHSDGT=ACHSDGT+ACHSDOCT
  1. I IOST["C-",'$D(IO("S")) W !! G END:'$$DIR^XBDIR("E")
  1. S (C,ACHSOBT,ACHSPMTT,ACHSDOCT,ACHSPAGE)=0
  1. G P1
  1. ;
  1. TOTL ;
  1. W !!!!,$$REPEAT^XLFSTR("=",80),!!?3,"TOTAL",?39,$J(ACHSDGT,4)
  1. S X=ACHSOBGT,X2="2$"
  1. D COMMA^%DTC
  1. W ?50,X
  1. S X=ACHSPMGT,X2="2$"
  1. D COMMA^%DTC
  1. W ?66,X
  1. I ACHSOBGT>0,ACHSPMGT>0 S X=(ACHSPMGT/ACHSOBGT)*100 W !!?3,"PERCENTAGE OF PAYMENT TO OBLIGATED" W ?63,$E(X,1,5)_"%"
  1. I IOST["C-",'$D(IO("S")) W !! G END:'$$DIR^XBDIR("E")
  1. END ;
  1. S:$D(ZTQUEUED) ZTREQ="@"
  1. D ^%ZISC,EN^XBVK("ACHS"),^ACHSVAR
  1. K C,I,X,X2,Y,^TMP("ACHSOCV",$J),DIR
  1. Q
  1. ;
  1. NODATA ;
  1. D HEADER
  1. W !!!,"NO DATA FOR SPECIFIED FISCAL YEAR",!!!!
  1. I IOST["C-",'$D(IO("S")) G END:'$$DIR^XBDIR("E")
  1. K ^TMP("ACHSOCV",$J,ACHSFAC,0)
  1. G END
  1. ;
  1. U IO
  1. W @IOF
  1. S ACHSPAGE=ACHSPAGE+1
  1. S Y=$$HTE^XLFDT($H),ACHSDAT=$P(Y,"@",1),ACHSTIM=$P(Y,"@",2)
  1. W !,"*",ACHSDAT
  1. S X=$$LOC^ACHS
  1. W ?((80/2)-($L(X)/2)),X
  1. W ?71,ACHSTIM,"*",!,"*User: ",ACHSUSR,?70,"Device:",IO,"*"
  1. S X="SERVICE CLASSIFICATION Summary Report BY VENDOR - Page "
  1. W !!?((80/2)-($L(X)/2)),X_ACHSPAGE
  1. S X="For FISCAL YEAR: "
  1. W !?((80/2)-($L(X)/2)),X_ACHSFY,!,$$REPEAT^XLFSTR("*",80)
  1. Q
  1. ;
  1. HEADER1 ;Prints Vendor
  1. W !?4,"Vendor: ",ACHSVNDR,!!?3,"# CODE #",?39,"# DOCS #",?52,"$ OBLIG $",?66,"$ PAYMENT $",!
  1. Q
  1. ;