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

ADEKNT6.m

Go to the documentation of this file.
  1. ADEKNT6 ; IHS/HQT/MJL - COMPILE DENTAL REPORTS ; [ 03/24/1999 9:04 AM ]
  1. ;;6.0;ADE;;APRIL 1999
  1. ;
  1. ;Send mail message with California FY statistics.
  1. ;Enter at top to receive prompt for fiscal year.
  1. ;Enter at CFBULL for non-interactive creation of mailman
  1. ;message containing fiscal year statistics.
  1. ;
  1. N ADEYQ
  1. S ADEYQ=$$ASKFY^ADEKNT61()
  1. Q:'+ADEYQ
  1. D CFBULL(ADEYQ)
  1. W !!,"Message Created!"
  1. Q
  1. ;
  1. ;
  1. CFBULL(ADEYQ) ;EP
  1. ;Y2K - FHL 09/04/98 ADEYQ="YYYY.Q" and Q must = 3
  1. Q:$P(ADEYQ,".",2)'=3 ;FY Year-end only
  1. ;Y2K - FHL 09/04/98
  1. Q:$L($P(ADEYQ,".",1))'=4 ;Y2000
  1. ;
  1. N XMB,XMDUZ,ADEED,ADEBD,ADEPER,ADE,ADEBA,ADEAGE,ADEFY
  1. S ADEPER=$$PERIOD^ADEKNT5($P(ADEYQ,"."),$P(ADEYQ,".",2))
  1. S ADEBD=$P(ADEPER,U,4)
  1. S ADEED=$P(ADEPER,U,2)
  1. ;Y2K - FHL 09/04/98
  1. ;S ADEFY=$E(ADEED,2,3)
  1. ;Y2K - FHL 09/04/98
  1. S ADEFY=1700+$E(ADEED,1,3) ;Y2000
  1. S Y=ADEBD X ^DD("DD") S ADEBD=Y
  1. S Y=ADEED X ^DD("DD") S ADEED=Y
  1. D CONST^ADEKRP5 ;Load ADE() array with constants
  1. S ADEAGE="0:125"
  1. ;
  1. S XMB="ADEK-CALIF"
  1. S XMDUZ="THE DENTAL REPORT BULLETIN"
  1. ;Set the XMB() array
  1. ;
  1. S XMB(10)="" ;RPMS Site
  1. S XMB(10)=$O(^ADEPARAM(0)),XMB(10)=$P(^ADEPARAM(XMB(10),0),U),XMB(10)=$P(^DIC(4,XMB(10),0),U)
  1. ;
  1. S XMB(20)=ADEFY ;Fiscal year corresponding to ADEYQ
  1. S XMB(30)=ADEBD,XMB(40)=ADEED
  1. S XMB(45)=$$FMAT("^Indian^Non-Indian^Total")
  1. ;
  1. S $P(XMB(50),U)="Total Individual Patients Seen (0000)"
  1. S $P(XMB(50),U,2)=$P($$GETCNT^ADEKRP(ADEYQ,ADE("PTS IND"),ADEAGE),U,2)
  1. S $P(XMB(50),U,3)=$P($$GETCNT^ADEKRP(ADEYQ,ADE("PTS NON-IND"),ADEAGE),U,2)
  1. S $P(XMB(50),U,4)=$P(XMB(50),U,2)+$P(XMB(50),U,3)
  1. S XMB(50)=$$FMAT(XMB(50))
  1. ;
  1. S $P(XMB(60),U)="Total Visits"
  1. S $P(XMB(60),U,2)=$P($$GETCNT^ADEKRP(ADEYQ,ADE("VIS IND"),ADEAGE),U,2)
  1. S $P(XMB(60),U,3)=$P($$GETCNT^ADEKRP(ADEYQ,ADE("VIS NON-IND"),ADEAGE),U,2)
  1. S $P(XMB(60),U,4)=$P(XMB(60),U,2)+$P(XMB(60),U,3)
  1. S XMB(60)=$$FMAT(XMB(60))
  1. ;
  1. S $P(XMB(70),U)="Total Clinical Services"
  1. S $P(XMB(70),U,2)=$P($$GETCNT^ADEKRP(ADEYQ,ADE("SVC IND"),ADEAGE),U,2)
  1. S $P(XMB(70),U,3)=$P($$GETCNT^ADEKRP(ADEYQ,ADE("SVC NON-IND"),ADEAGE),U,2)
  1. S $P(XMB(70),U,4)=$P(XMB(70),U,2)+$P(XMB(70),U,3)
  1. S XMB(70)=$$FMAT(XMB(70))
  1. ;
  1. S $P(XMB(80),U)="Total Clinical Service Minutes"
  1. S $P(XMB(80),U,2)=$P($$GETCNT^ADEKRP(ADEYQ,ADE("MIN IND"),ADEAGE),U,2)
  1. S $P(XMB(80),U,3)=$P($$GETCNT^ADEKRP(ADEYQ,ADE("MIN NON-IND"),ADEAGE),U,2)
  1. S $P(XMB(80),U,4)=$P(XMB(80),U,2)+$P(XMB(80),U,3)
  1. S XMB(80)=$$FMAT(XMB(80))
  1. ;
  1. S ADEBA=$P($$GETCNT^ADEKRP(ADEYQ,ADE("BA"),ADEAGE),U,2)
  1. S XMB(90)="Number of Broken Appointments for FY"_ADEFY_": "_ADEBA
  1. S XMB(90)=XMB(90)_" = "_(ADEBA/2)_" Hours"
  1. ;
  1. ;Call ^XMB
  1. D ^XMB
  1. Q
  1. ;
  1. FMAT(ADELIN) ;EP
  1. ;ADELIN is a 4-^ piece string where
  1. ;piece 1 is row label and pieces 2,3,4 are values
  1. ;
  1. ;This function returns row label padded to 40
  1. ;and values right justified in 13-column spaces
  1. ;
  1. N ADES,ADELBL,ADEV,J
  1. S $P(ADES," ",80)=""
  1. S ADELBL=$P(ADELIN,U)
  1. S ADELBL=ADELBL_ADES
  1. S ADELBL=$E(ADELBL,1,40)
  1. ;
  1. F J=2:1:4 D
  1. . S ADEV=$P(ADELIN,U,J)
  1. . S ADEV=$J(ADEV,13)
  1. . S ADELBL=ADELBL_ADEV
  1. ;
  1. Q ADELBL