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

MCEF.m

Go to the documentation of this file.
  1. MCEF ;WISC/MLH-FILEMAN ENTER/EDIT OF MED PROCS ;4/7/97 11:15
  1. ;;2.3;Medicine;**8,15,42**;09/13/1996;Build 1
  1. ; Reference DBIA #10061[Supported] call to VADPT
  1. ENTED ;(MCARGNAM,FULBRIEF);enter/edit entry point
  1. K DIC
  1. D MCEPROC^MCARE
  1. ; extract global loc, print name, full IT name, brief IT name, pat fld
  1. S DIC(0)="AEQLMZ"
  1. S (DIC,DIE)="^MCAR("_MCFILE_","
  1. I MCESON S DIC("S")=$$PREEDIT^MCESSCR(MCFILE)
  1. I MCPRO="GEN" S DIC("S")="I '$P(^MCAR(699.5,+Y,0),U,3)"
  1. S (DLAYGO,DIDEL)=MCFILE
  1. D DATE^MCAREH
  1. D ^DIC ; get record to edit
  1. I Y<0 K DIC Q
  1. S MCARGDA=+Y
  1. I MCFILE=691.5,$D(^MCAR(MCFILE,MCARGDA,"A")) Q:'MCESON D ESRC^MCESSCR(MCFILE,.MCARGDA) G:$D(MCBACK) BACK Q ;RMP
  1. I MCESON,("125"'[$$ESTONUM^MCESSCR(MCFILE,MCARGDA)) D ESRC^MCESSCR(MCFILE,.MCARGDA) Q:'$D(MCBACK)
  1. D:$D(MCBACK) BACK
  1. I Y'<0,MCFILE=699.5 N MCGEN S MCGEN=0 D GENEX^MCARGES(+Y,.MCGEN) Q:MCGEN
  1. K DTOUT,DUOUT ;MC*2.3*8
  1. D EDIT ;edit the record
  1. ;D ESRC^MCESSCR(MCFILE,MCARGDA) ;MC*2.3*8, MOVED DOWN
  1. K MCBACK,DIR,DIC,MCFILE,MCARGDA,DA,DFN,DR,MCPATNM,DTOUT,DUOUT
  1. Q
  1. EDIT ;
  1. ;N DA,DFN,DR,MCARGDA
  1. S (MCARGDA,DA)=+Y ; record number
  1. ; choose and format input template
  1. S DR="["_MCEPROC_"]"
  1. S DFN=$P(Y(0),U,2)
  1. D IN^MCEO ; order entry
  1. ;I '$D(DUOUT),'$D(DTOUT) D EDIT2
  1. I '$D(DUOUT) D EDIT2 ;MC*2.3*8
  1. Q
  1. EDIT2 ;
  1. D ^DIE ; edit the record
  1. I '$D(DA),$D(MCBACK) D BACKSS^MCESEDT K MCBACK
  1. Q:'$D(DA)
  1. I MCFILE=699.5 N MCGEN S MCGEN=0 D GENEX^MCARGES(MCARGDA,.MCGEN) Q:MCGEN
  1. I '$D(DUOUT) D EDIT3 ;MC*2.3*8
  1. Q
  1. EDIT3 ;
  1. S DR=MCPATFLD,DA=MCARGDA,DIQ(0)="E"
  1. S DIC="^MCAR("_MCFILE_"," ; WAA 5/14/96
  1. D EN^DIQ1
  1. S MCPATNM=$G(^UTILITY("DIQ1",$J,MCFILE,DA,MCPATFLD,"E"))
  1. I $L(MCPOSTP)>1 S X=MCPOSTP X ^%ZOSF("TEST") D:$T @MCPOSTP
  1. Q:$D(DUOUT) ;MC*2.3*8
  1. D OUT^MCEO,PCC^MCARE1 ; order entry, PCC
  1. Q:$D(DUOUT) ;MC*2.3*8
  1. D ESRC^MCESSCR(MCFILE,MCARGDA) ;MC*2.3*8
  1. Q
  1. BACK ;Set Y to the new record and allow the user to edit the new record
  1. S Y=MCY,Y(0)=MCY(0),Y(0,0)=MCY(0,0),MCARGDA=+Y K MCY,DIROUT,DUOUT,DTOUT,EXIT
  1. Q
  1. MCSEX(DFN) ;
  1. N MCSEX,VADM
  1. ; Due to Patient data merge the DIC error out referencing file 690
  1. ; Uncomment next line if patching MCEF.
  1. S:DIC="^MCAR(690," DIC="^MCAR(700,"
  1. I '$D(DFN) S DFN=$P(@(DIC_DA_",0)"),U,2)
  1. D DEM^VADPT
  1. S MCSEX=$P(VADM(5),U,1)
  1. ;D KVAR^VADPT
  1. Q $S(MCSEX="M":1,MCSEX="F":2,1:0)