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

XTVSLPD1.m

Go to the documentation of this file.
  1. XTVSLPD1 ;ALBANY FO/GTS - VistA Package Sizing Manager - Caption display APIs; 12-JUL-2016
  1. ;;7.3;TOOLKIT;**143,152**;Apr 25, 1995;Build 3
  1. ;Per VA Directive 6402, this routine should not be modified.
  1. ;
  1. ;APIs
  1. BADRNG(X) ;Checks user entered File Range (used by DIR call)
  1. SET RESULT=0
  1. IF ((X'?1.N."."0.6N1"-"1.N."."0.6N)!($P(X,"-",2)<$P(X,"-"))) SET RESULT=1
  1. QUIT RESULT
  1. ;
  1. SETSTR(CAPARY) ;Return a string of Package File Lineitem (Concatonate fields to 1 HDR line)
  1. NEW LINEITM,LPCNT,FLD
  1. SET LINEITM=""
  1. SET LPCNT=0
  1. FOR SET LPCNT=$O(@CAPARY@(LPCNT)) Q:LPCNT="" DO
  1. . SET FLD=$O(@CAPARY@(LPCNT,""))
  1. . SET LINEITM=LINEITM_@CAPARY@(LPCNT,FLD)_$S(LPCNT<9:"^",1:"")
  1. QUIT LINEITM
  1. ;
  1. EDPKGPRM(PKGNME) ; Edit Package Parameters
  1. NEW DATANUM,EDITARY,DATANAME,GETOUT,UPDATLST
  1. SET EDITARY="^TMP(""XTVS-PARAM-CAP"","_$J_","""_PKGNME_""")"
  1. SET DATANUM=0
  1. FOR SET DATANUM=$O(@EDITARY@(DATANUM)) QUIT:+DATANUM=0 QUIT:($D(DTOUT)!($D(DUOUT))) DO
  1. . SET DATANAME=$O(@EDITARY@(DATANUM,""))
  1. . NEW DIR,X,Y
  1. . SET DIR("A")=DATANAME_": " ;Set DIR("A") default prompt
  1. . IF @EDITARY@(DATANUM,DATANAME)]"" SET DIR("B")=@EDITARY@(DATANUM,DATANAME) ;Set Prompt for DIR read
  1. . ;
  1. . ;Primary Prefix (2)
  1. . IF (DATANUM=2) DO PRIMPFX^XTVSLPD2(DIR("A"),$G(DIR("B")))
  1. . ;
  1. . ;*Lowest File# (3) & *Highest File# (4)
  1. . IF ((DATANUM=3)!(DATANUM=4)) DO HILOFLE^XTVSLPD2(DIR("A"),$G(DIR("B")))
  1. . ;
  1. . ;Additional Prefixes (5) & Excepted Prefixes (6)
  1. . IF ((DATANUM=5)!(DATANUM=6)) DO EXADPFX^XTVSLPD2(DIR("A"),$G(DIR("B")))
  1. . ;
  1. . ; File Numbers (7)
  1. . IF (DATANUM=7) DO FLENUM^XTVSLPD2(DIR("A"),$G(DIR("B")))
  1. . ;
  1. . ; File Ranges (8)
  1. . IF (DATANUM=8) DO FLERNG^XTVSLPD2(DIR("A"),$G(DIR("B")))
  1. . ;
  1. . ;Parent Package (9)
  1. . IF (DATANUM=9) DO PRNTPKG^XTVSLPD2(DIR("A"),$G(DIR("B")))
  1. . ;
  1. . KILL DIR,X,Y
  1. ;
  1. KILL DIR,DIRUT,DTOUT,DUOUT,X,Y
  1. QUIT
  1. ;
  1. EDCHK(PKGNME) ; Check for edit
  1. ; Input PKGNME - Name of selected package
  1. ; Output XTEDIT - 0: Not Edited
  1. ; 1: Edited
  1. NEW XTEDIT
  1. SET XTEDIT=0
  1. SET:'XTEDIT XTEDIT=(^TMP("XTVS-PARAM-BI",$J,PKGNME,2,"Primary Prefix")'=$G(^TMP("XTVS-PARAM-CAP",$J,PKGNME,2,"Primary Prefix")))
  1. SET:'XTEDIT XTEDIT=(^TMP("XTVS-PARAM-BI",$J,PKGNME,3,"*Lowest File#")'=$G(^TMP("XTVS-PARAM-CAP",$J,PKGNME,3,"*Lowest File#")))
  1. SET:'XTEDIT XTEDIT=(^TMP("XTVS-PARAM-BI",$J,PKGNME,4,"*Highest File#")'=$G(^TMP("XTVS-PARAM-CAP",$J,PKGNME,4,"*Highest File#")))
  1. IF 'XTEDIT DO ;If no edit yet, first check for a difference in BI and CAP nodes
  1. . SET XTEDIT=(^TMP("XTVS-PARAM-BI",$J,PKGNME,5,"Additional Prefixes")'=$G(^TMP("XTVS-PARAM-CAP",$J,PKGNME,5,"Additional Prefixes")))
  1. . IF XTEDIT DO ;If a difference between BI and CAP nodes, check for data reorg
  1. .. NEW BIDATA,EDDATA
  1. .. SET BIDATA=$G(^TMP("XTVS-PARAM-BI",$J,PKGNME,5,"Additional Prefixes"))
  1. .. SET EDDATA=$G(^TMP("XTVS-PARAM-CAP",$J,PKGNME,5,"Additional Prefixes"))
  1. .. SET XTEDIT=$$DATCHK(BIDATA,EDDATA)
  1. IF 'XTEDIT DO
  1. . SET XTEDIT=(^TMP("XTVS-PARAM-BI",$J,PKGNME,6,"Excepted Prefixes")'=$G(^TMP("XTVS-PARAM-CAP",$J,PKGNME,6,"Excepted Prefixes")))
  1. . IF XTEDIT DO
  1. .. NEW BIDATA,EDDATA
  1. .. SET BIDATA=$G(^TMP("XTVS-PARAM-BI",$J,PKGNME,6,"Excepted Prefixes"))
  1. .. SET EDDATA=$G(^TMP("XTVS-PARAM-CAP",$J,PKGNME,6,"Excepted Prefixes"))
  1. .. SET XTEDIT=$$DATCHK(BIDATA,EDDATA)
  1. IF 'XTEDIT DO
  1. . SET XTEDIT=(^TMP("XTVS-PARAM-BI",$J,PKGNME,7,"File Numbers")'=$G(^TMP("XTVS-PARAM-CAP",$J,PKGNME,7,"File Numbers")))
  1. . IF XTEDIT DO
  1. .. NEW BIDATA,EDDATA
  1. .. SET BIDATA=$G(^TMP("XTVS-PARAM-BI",$J,PKGNME,7,"File Numbers"))
  1. .. SET EDDATA=$G(^TMP("XTVS-PARAM-CAP",$J,PKGNME,7,"File Numbers"))
  1. .. SET XTEDIT=$$DATCHK(BIDATA,EDDATA)
  1. IF 'XTEDIT DO
  1. . SET XTEDIT=(^TMP("XTVS-PARAM-BI",$J,PKGNME,8,"File Ranges")'=$G(^TMP("XTVS-PARAM-CAP",$J,PKGNME,8,"File Ranges")))
  1. . IF XTEDIT DO
  1. .. NEW BIDATA,EDDATA
  1. .. SET BIDATA=$G(^TMP("XTVS-PARAM-BI",$J,PKGNME,8,"File Ranges"))
  1. .. SET EDDATA=$G(^TMP("XTVS-PARAM-CAP",$J,PKGNME,8,"File Ranges"))
  1. .. SET XTEDIT=$$DATCHK(BIDATA,EDDATA)
  1. SET:'XTEDIT XTEDIT=(^TMP("XTVS-PARAM-BI",$J,PKGNME,9,"Parent Package")'=$G(^TMP("XTVS-PARAM-CAP",$J,PKGNME,9,"Parent Package")))
  1. QUIT XTEDIT
  1. ;
  1. DATCHK(BIDATA,EDDATA) ;Compare data for Add, Change, Delete OR find if all same data in different '|' pces
  1. NEW XTEDIT,BIPCE,EDPCE,BICHK,EQDATFND
  1. SET XTEDIT=($L(BIDATA,"|")'=$L(EDDATA,"|")) ;NOT same # '|' pces, then EDITED no need to continue
  1. IF 'XTEDIT DO
  1. .FOR BIPCE=1:1 QUIT:XTEDIT QUIT:$P(BIDATA,"|",BIPCE)="" DO ;Check each '|' pce of Before Image
  1. .. SET BICHK=$P(BIDATA,"|",BIPCE)
  1. .. SET EQDATFND=0
  1. .. FOR EDPCE=1:1 QUIT:$P(EDDATA,"|",EDPCE)="" QUIT:EQDATFND SET EQDATFND=(BICHK=$P(EDDATA,"|",EDPCE))
  1. .. SET XTEDIT='EQDATFND ;If BICHK not found on EDDATA, then EDITED
  1. QUIT XTEDIT
  1. ;
  1. BEFORIMG(PKGNME) ; Create "^TMP(""XTVS-PARAM-BI"","_$J_","""_PKGNME_""")" to record initial package definitions before edits
  1. IF '$D(^TMP("XTVS-PARAM-BI",$J,PKGNME)) DO
  1. . SET ^TMP("XTVS-PARAM-BI",$J,PKGNME,2,"Primary Prefix")=$G(^TMP("XTVS-PARAM-CAP",$J,PKGNME,2,"Primary Prefix"))
  1. . SET ^TMP("XTVS-PARAM-BI",$J,PKGNME,3,"*Lowest File#")=$G(^TMP("XTVS-PARAM-CAP",$J,PKGNME,3,"*Lowest File#"))
  1. . SET ^TMP("XTVS-PARAM-BI",$J,PKGNME,4,"*Highest File#")=$G(^TMP("XTVS-PARAM-CAP",$J,PKGNME,4,"*Highest File#"))
  1. . SET ^TMP("XTVS-PARAM-BI",$J,PKGNME,5,"Additional Prefixes")=$G(^TMP("XTVS-PARAM-CAP",$J,PKGNME,5,"Additional Prefixes"))
  1. . SET ^TMP("XTVS-PARAM-BI",$J,PKGNME,6,"Excepted Prefixes")=$G(^TMP("XTVS-PARAM-CAP",$J,PKGNME,6,"Excepted Prefixes"))
  1. . SET ^TMP("XTVS-PARAM-BI",$J,PKGNME,7,"File Numbers")=$G(^TMP("XTVS-PARAM-CAP",$J,PKGNME,7,"File Numbers"))
  1. . SET ^TMP("XTVS-PARAM-BI",$J,PKGNME,8,"File Ranges")=$G(^TMP("XTVS-PARAM-CAP",$J,PKGNME,8,"File Ranges"))
  1. . SET ^TMP("XTVS-PARAM-BI",$J,PKGNME,9,"Parent Package")=$G(^TMP("XTVS-PARAM-CAP",$J,PKGNME,9,"Parent Package"))
  1. QUIT