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

BWOLD.m

Go to the documentation of this file.
  1. BWOLD ;IHS/ANMC/MWR - CONVERT DATA FROM OLD PAP PKG;
  1. ;;2.0;WOMEN'S HEALTH;;MAY 16, 1996
  1. ;;* MICHAEL REMILLARD, DDS * ALASKA NATIVE MEDICAL CENTER *
  1. ;; CONVERT OLD DATA TO NEW. PROGRAMMER UTILITY, NOT CALLED
  1. ;; FROM MENUS.
  1. ;
  1. W !!!?5,"WARNING! THIS ROUTINE SHOULD ONLY BE RUN ONCE AT A SITE!"
  1. S DIR("A")=" Do you wish to continue"
  1. S DIR(0)="Y",DIR("B")="NO" D ^DIR K DIR W !!
  1. Q:$D(DIRUT)!(Y<1)
  1. ;
  1. ;
  1. D SETVARS^BWUTL5
  1. S (N,BWPATS,BWPAPS,BWCOLPS)=0
  1. F S N=$O(^AMCH(86,N)) Q:'N D
  1. .S M=0,BWDFN=N,BWPATS=BWPATS+1
  1. .F S M=$O(^AMCH(86,N,"DS",M)) Q:'M D
  1. ..I $D(^AMCH(86,N,"DS",M,0)) D PAP
  1. ..S NN=0
  1. ..F S NN=$O(^AMCH(86,N,"DS",M,2,NN)) Q:'NN D
  1. ...I $D(^AMCH(86,N,"DS",M,2,NN,0)) D COLP
  1. W !!?3,"PATIENTS ADDED: ",BWPATS
  1. W ?28,"PAPS ADDED: ",BWPAPS
  1. W ?52,"COLPOSCOPIES ADDED: ",BWCOLPS
  1. W !!?10,"* DON'T FORGET TO CHECK GLOBAL ^BWOLD FOR ERRORS! *",!
  1. Q
  1. ;
  1. ;
  1. PAP ;EP
  1. ;---> COPY THIS PAP INTO NEW DATABASE.
  1. N BWY,BWPOP S BWY=^AMCH(86,N,"DS",M,0),BWPOP=0
  1. ;---> BWDFN=DFN, BWPCDN=1="PAP SMEAR", BWDATE=DATE OF PAP.
  1. S BWPCDN=1,BWDATE=$P(BWY,U)
  1. ;---> SET PRIMARY AND SECONDARY DIAGNOSES FOR THIS PAP.
  1. S BW1DX=$P(BWY,U,2),BW1DX=$$PAPDX(BW1DX)
  1. S BW2DX=$P(BWY,U,3),BW2DX=$$PAPDX(BW2DX)
  1. ;
  1. I '$D(^AUPNPAT(BWDFN)) D Q
  1. .S ^BWOLD(N,M,"PAT")="PATIENT DOES NOT EXIST IN PATIENT FILE."
  1. ;
  1. ;---> IF PATIENT IS NOT ALREADY IN DATABASE, ADD HER.
  1. S BWERR=1
  1. D:'$D(^BWP(BWDFN)) AUTOADD^BWPATE(BWDFN,DUZ(2),.BWERR)
  1. I BWERR<0 S ^BWOLD(N,M,"PAT")="FAILED TO ADD PATIENT." Q
  1. ;
  1. ;---> NOW GENERATE ACCESSION# FOR BW PROCEDURE FILE ENTRY.
  1. S X=$$ACCSSN^BWUTL5(1)
  1. I X']"" S ^BWOLD(N,M,"ACC#")="FAILED TO ADD ACC#." Q
  1. ;
  1. ;---> NOW ADD(TRANSFER) THE PROCEDURE.
  1. S DIC("DR")=".02////"_BWDFN_";.04////"_BWPCDN_";.12////"_BWDATE
  1. S DIC("DR")=DIC("DR")_";.05////"_BW1DX_";.06////"_BW2DX_";.14////c"
  1. K DD,DO S DIC="^BWPCD(",DIC(0)="ML",DLAYGO=9002086
  1. D FILE^DICN
  1. W !?3,$$NAME^BWUTL1(BWDFN),?35,$$HRCN^BWUTL1(BWDFN)
  1. W ?45,"ACC#: ",$P(Y,U,2)
  1. S BWPAPS=BWPAPS+1
  1. ;---> IF Y<0, CHECK PERMISSIONS.
  1. I Y<0 S ^BWOLD(N,M,"PCD")="UNABLE TO CREATE NEW PROCEDURE."
  1. Q
  1. ;
  1. ;
  1. COLP ;EP
  1. ;---> COPY THIS COLP INTO NEW DATABASE.
  1. N BWY S BWY=^AMCH(86,N,"DS",M,2,NN,0)
  1. ;---> BWDFN=DFN, BWPCDN=2="COLPOSCOPY", BWDATE=DATE OF COLP.
  1. S BWDFN=N,BWPCDN=2,BWDATE=$P(BWY,U)
  1. ;---> SET PRIMARY AND SECONDARY DIAGNOSES FOR THIS PAP.
  1. S BW1DX=$P(BWY,U,2),BW1DX=$$COLPDX(BW1DX)
  1. S BW2DX=$P(BWY,U,5),BW2DX=$$COLPDX(BW2DX)
  1. ;
  1. ;---> NOW GENERATE ACCESSION# FOR BW PROCEDURE FILE ENTRY.
  1. S X=$$ACCSSN^BWUTL5(2)
  1. I X']"" S ^BWOLD(N,M,NN,"ACC#")="FAILED TO ADD ACC#." Q
  1. S DIC("DR")=".02////"_BWDFN_";.04////"_BWPCDN_";.12////"_BWDATE
  1. S DIC("DR")=DIC("DR")_";.05////"_BW1DX_";.26////"_BW2DX_";.14////c"
  1. K DD,DO S DIC="^BWPCD(",DIC(0)="ML",DLAYGO=9002086
  1. D FILE^DICN
  1. W !?3,$$NAME^BWUTL1(BWDFN),?35,$$HRCN^BWUTL1(BWDFN)
  1. W ?45,"ACC#: ",$P(Y,U,2)
  1. S BWCOLPS=BWCOLPS+1
  1. ;---> IF Y<0, CHECK PERMISSIONS.
  1. I Y<0 S ^BWOLD(N,M,NN,"PCD")="UNABLE TO CREATE NEW PROCEDURE."
  1. Q
  1. ;
  1. PAPDX(Y) ;EP
  1. ;---> THE Y=IEN IN ^AMCH(86.1 - OLD PAP RESULTS FILE #9002086.1
  1. Q:Y="" ""
  1. Q:Y=3 5
  1. Q:Y=5 3
  1. Q:Y=6 42
  1. Q:Y=7 11
  1. Q:Y=12 12
  1. Q:Y=14 46
  1. Q:Y=15 13
  1. Q:Y=16 33
  1. Q:Y=17 33
  1. Q:Y=19 32
  1. Q:Y=21 50
  1. Q:Y=22 22
  1. Q:Y=23 39
  1. Q ""
  1. ;
  1. COLPDX(Y) ;EP
  1. ;---> THE Y=IEN IN ^AMCH(86.3 - OLD COLPO&BIOPSY DIAG FILE #9002086.3
  1. Q:Y="" ""
  1. Q:Y=1 11
  1. Q:Y=2 30
  1. Q:Y=3 30
  1. Q:Y=4 15
  1. Q:Y=5 15
  1. Q:Y=6 16
  1. Q:Y=7 16
  1. Q:Y=8 17
  1. Q:Y=9 18
  1. Q:Y=10 19
  1. Q:Y=11 1
  1. Q:Y=12 1
  1. Q:Y=13 1
  1. Q:Y=14 12
  1. Q:Y=15 32
  1. Q:Y=16 51
  1. Q ""