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

PRCPENE2.m

Go to the documentation of this file.
  1. PRCPENE2 ;WISC/RFJ-enter/edit inv parameters (list manager) ;06 Jan 94
  1. V ;;5.1;IFCAP;**1**;Oct 20, 2000
  1. ;Per VHA Directive 10-93-142, this routine should not be modified.
  1. Q
  1. ;
  1. ;
  1. DISTRPTS ; edit distribution points
  1. D FULL^VALM1
  1. N CLREND,COLUMN,INVPT,FLAG,LINE,PRCPDATA
  1. F W ! S INVPT=$$INVPT^PRCPUINV(PRC("SITE"),$S(PRCPTYPE="W":"P",1:"S"),1,1,"") Q:'INVPT D
  1. . I '$D(^PRCP(445,PRCPINPT,2,INVPT)) D I %<1 Q
  1. . . S FLAG=0
  1. . . I PRCPTYPE="P" D I FLAG Q
  1. . . . N PRCPSB S PRCPSB=0
  1. . . . S PRCPSB=$O(^PRCP(445,"AB",INVPT,PRCPSB))
  1. . . . I PRCPSB D EN^DDIOL("This secondary is already stocked by "_$$INVNAME^PRCPUX1(PRCPSB)_".") S FLAG=1,%=0 Q
  1. . . S XP="THIS INVENTORY IS NOT BEING STOCKED BY "_$$INVNAME^PRCPUX1(PRCPINPT)_".",XP(1)="DO YOU WANT TO MAKE IT A DISTRIBUTION POINT"
  1. . . W ! S %=$$YN^PRCPUYN(2) I %'=1 Q
  1. . . D ADD^PRCPENU1(PRCPINPT,INVPT) S %=1
  1. . N PRCPINPT,PRCPTYPE
  1. . S PRCPINPT=INVPT,PRCPTYPE=$P($G(^PRCP(445,PRCPINPT,0)),"^",3)
  1. . I '$D(^PRCP(445,PRCPINPT,4,DUZ,0)) W !,"YOU ARE NOT AN AUTHORIZED USER FOR THIS INVENTORY POINT." Q
  1. . I '$$KEY^PRCPUREP("PRCP"_$TR(PRCPTYPE,"WSP","W2")_" MGRKEY",DUZ)
  1. . L +^PRCP(445,PRCPINPT,0):1 I '$T D SHOWWHO^PRCPULOC(445,PRCPINPT_"-0",0)
  1. . I PRCPTYPE="S" L +^PRCP(445,PRCPINPT,5):1 I '$T D Q
  1. . . D SHOWWHO^PRCPULOC(445,PRCPINPT_"-0",5)
  1. . . L -^PRCP(445,PRCPINPT,0)
  1. . D ADD^PRCPULOC(445,PRCPINPT_"-0",0,"Enter/Edit Inventory Parameters")
  1. . I PRCPTYPE="S" D ADD^PRCPULOC(445,PRCPINPT_"-5",0,"Enter/Edit Inventory Parameters")
  1. . D EN^VALM("PRCP INVENTORY PARAMETERS")
  1. . D CLEAR^PRCPULOC(445,PRCPINPT_"-0",0)
  1. . I PRCPTYPE="S" D CLEAR^PRCPULOC(445,PRCPINPT_"-5",0)
  1. . L -^PRCP(445,PRCPINPT,0)
  1. . I PRCPTYPE="S" L -^PRCP(445,PRCPINPT,5)
  1. D INIT^PRCPENLM
  1. S VALMBCK="R"
  1. Q
  1. ;
  1. ;
  1. STOCKED ; edit who stocks inventory point
  1. D FULL^VALM1
  1. N DA,DATA,DINUM,INVPT,INVPTNM,PRCPINNM,PRCPFLAG,SCREEN,X
  1. S PRCPINNM=$$INVNAME^PRCPUX1(PRCPINPT)
  1. W !!,"CHECKING INVENTORY POINTS DISTRIBUTING TO '",PRCPINNM,"':" W:PRCPTYPE="W" !,"(THERE SHOULD NOT BE ANY)"
  1. S SCREEN=$P($G(^DD(445.03,.01,0)),"^",5,99)
  1. S DA=0 F S DA=$O(^PRCP(445,"AB",PRCPINPT,DA)) Q:'DA S DATA=$G(^PRCP(445,DA,0)) I DATA D
  1. . W !?5,$P(DATA,"^"),?40,"TYPE: ",$S($P(DATA,"^",3)="W":"WAREHOUSE",$P(DATA,"^",3)="P":"PRIMARY",$P(DATA,"^",3)="S":"SECONDARY",1:"??")
  1. . I SCREEN="" Q
  1. . S X=PRCPINPT X SCREEN I $D(X) Q
  1. . D DELETE^PRCPENU1(DA,PRCPINPT)
  1. ;
  1. I PRCPTYPE="P" W ! S INVPT=0 F S INVPT=$O(^PRCP(445,"AC","W",INVPT)) Q:'INVPT!($G(PRCPFLAG)) S INVPTNM=$$INVNAME^PRCPUX1(INVPT) I +INVPTNM=PRC("SITE") D
  1. . I $D(^PRCP(445,INVPT,2,PRCPINPT)) D Q
  1. . . S XP="THIS PRIMARY INVENTORY POINT '"_PRCPINNM_"' IS CURRENTLY DISTRIBUTED",XP(1)="TO BY THE WAREHOUSE INVENTORY POINT '"_INVPTNM_"'.",XP(2)=" DO YOU WANT TO REMOVE IT AS A WAREHOUSE DISTRIBUTION POINT"
  1. . . S XH="ENTER 'YES' TO REMOVE IT, 'NO' TO LEAVE IT AS A DISTRIBUTION POINT."
  1. . . W ! S %=$$YN^PRCPUYN(2) I '% S PRCPFLAG=1 Q
  1. . . I %=1 D DELETE^PRCPENU1(INVPT,PRCPINPT)
  1. . ;
  1. . S XP="WILL THIS PRIMARY INVENTORY POINT '"_PRCPINNM_"' BE A",XP(1)="DISTRIBUTION POINT FOR THE WAREHOUSE INVENTORY POINT '"_INVPTNM_"'",XH="ENTER 'YES' TO ADD THE PRIMARY AS A WAREHOUSE DISTRIBUTION POINT."
  1. . W ! S %=$$YN^PRCPUYN(1) I '% S PRCPFLAG=1 Q
  1. . I %=1 D ADD^PRCPENU1(INVPT,PRCPINPT)
  1. ;
  1. I PRCPTYPE="S" D
  1. . ; restrict update if supply station IP has regular orders
  1. . S SCREEN=$P($G(^PRCP(445,PRCPINPT,5)),"^",1) ; supply station?
  1. . I SCREEN]"" S SCREEN=$$ORDCHK^PRCPUITM(0,PRCPINPT,"R","")
  1. . I 'SCREEN D
  1. . . W ! S INVPT=0
  1. . . F S INVPT=$O(^PRCP(445,"AB",PRCPINPT,INVPT)) Q:'INVPT!($G(PRCPFLAG)) D
  1. . . . S INVPTNM=$$INVNAME^PRCPUX1(INVPT)
  1. . . . S XP="THIS SECONDARY INVENTORY POINT, '"_PRCPINNM_"', IS CURRENTLY DISTRIBUTED"
  1. . . . S XP(1)="TO BY THE PRIMARY INVENTORY POINT, '"_INVPTNM_"'."
  1. . . . S XP(2)=" DO YOU WANT TO REMOVE IT AS A PRIMARY DISTRIBUTION POINT"
  1. . . . S XH="ENTER 'YES' TO REMOVE IT, 'NO' TO LEAVE IT AS A DISTRIBUTION POINT."
  1. . . . W ! S %=$$YN^PRCPUYN(2) I '% S PRCPFLAG=1 Q
  1. . . . I %=1 D DELETE^PRCPENU1(INVPT,PRCPINPT)
  1. . I SCREEN D
  1. . . W ! S INVPT=0
  1. . . S INVPT=$O(^PRCP(445,"AB",PRCPINPT,INVPT)),INVPTNM=$$INVNAME^PRCPUX1(INVPT)
  1. . . D EN^DDIOL("THIS SECONDARY INVENTORY POINT, '"_PRCPINNM_"', IS STOCKED BY THE PRIMARY")
  1. . . D EN^DDIOL("INVENTORY POINT, '"_INVPTNM_"', AND HAS OUTSTANDING REGULAR ORDERS.")
  1. . . D EN^DDIOL(" You must post or delete these orders before removing the primary")
  1. . . D EN^DDIOL(" distribution point.")
  1. . . D P^PRCPUREP ; pause to allow user to see message
  1. ;
  1. D INIT^PRCPENLM
  1. S VALMBCK="R"
  1. Q