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

DGPTFCR.m

Go to the documentation of this file.
  1. DGPTFCR ;ALB/JDS - CREATE IN PATIENT PTF RECORD ;Sep 22, 2020@16:34
  1. ;;5.3;Registration;**932,1020**;Aug 13, 1993;Build 11
  1. ;
  1. EN D LO^DGUTL F DGDUMB=0:0 K DFN D SEL Q:'$D(DFN)
  1. Q K %,D0,DQ,T,Y,X,DGDUMB Q
  1. ;
  1. SEL ; -- pt select
  1. W ! K DIC
  1. S DIC(0)="AEQMZ",DIC="^DPT(",DIC("S")="I $D(^DGPM(""APTT1"",+Y))",DIC("A")="Select Patient: "
  1. D ^DIC K DIC G SELQ:Y'>0 S DFN=+Y
  1. ;
  1. ; -- adm mvt select
  1. ; will change to use ^DGPM("ADFN") cross-reference when available
  1. W !
  1. S DIC(0)="EQZ",DIC="^DGPM(",DIC("S")="I $P(^(0),U,2)=1,'$P(^(0),U,26),'$D(^DGPT(+$P(^(0),U,16),0))",DIC("A")="Select Admission Date: "
  1. D DFN^DGPMUTL K DIC G SELQ:Y'>0
  1. ;
  1. N DGPMCA,DGPMAN,DGPMDN
  1. S DGPMCA=+Y,DGPMAN=Y(0),DGPMDN=$S($D(^DGPM(+$P(DGPMAN,"^",17),0)):^(0),1:""),DGTY=$S($D(^DG(405.2,+$P(DGPMDN,"^",18),0)):$P(^(0),"^",8),1:0)
  1. S Y=1 D RTY^DGPTUTL S Y=+DGPMAN
  1. W !!?5,"Creating new PTF record..."
  1. D CREATE I +Y<0 W *7,"unable to create record." G SELQ
  1. S PTF=+Y,DR="[DG PTF ATTACH]",DIE="^DGPM(",DA=DGPMCA D ^DIE
  1. W !?5,"record #",PTF," created.",!
  1. SELQ ; -- clean-up
  1. K DR,X,DA,DIE,DIC,DGTY,DGRTY,DGRTY0,PTF,I,J,Y,DQ,DG
  1. Q
  1. ;
  1. CREATE ; -- entry point to create a new PTF record
  1. ; input: DFN := pt number
  1. ; Y := admission d/t ^ fee record
  1. ; DGRTY := type of record (1-PTF ; 2-CENSUS)
  1. ; (PTF assumed if undefined)
  1. ; output: Y := ifn of ^DGPT
  1. ;
  1. I $S('$D(DFN):1,'DFN:1,1:'Y) S Y=-1,Y(0)="" G CREATEQ
  1. S DGPTDATA=U_Y,DIC="^DGPT(",DIC("DR")="[DG PTF CREATE PTF ENTRY]"
  1. S DIC(0)="FLZ",X=DFN K DD,DO D FILE^DICN S Y=+Y
  1. I $S('$D(DGRTY):1,1:DGRTY=1) N PTF K DA S (PTF,DA)=Y,DIE="^DGPT(",DR="[DG PTF POST CREATE]" D ^DIE:DA>0 S Y=PTF
  1. CREATEQ K DA,DIC,DGPTDATA,DIE,DR Q