74 lines
3.4 KiB
Mathematica
74 lines
3.4 KiB
Mathematica
ENPOST ;(WASH ISC)/DH-PostInitialization Routine ;8-16-93
|
|
;;7.0;ENGINEERING;;Aug 17, 1993
|
|
;
|
|
EN I '$D(ENDATE) S %DT="",X="T" D ^%DT X ^DD("DD") S ENDATE=Y
|
|
S ENX=$S($D(^%ZOSF("VOL")):^%ZOSF("VOL"),1:"ENG"),^ENG("VERSION",7.0,ENX,"DD")=ENDATE
|
|
I $D(^ENG("VERSION"))#10=0 G EXIT
|
|
;Convert CMR official to pointer
|
|
F DA=0:0 S DA=$O(^ENG(6914.1,DA)) Q:DA'>0 S X=$P(^ENG(6914.1,DA,0),U,2) I X]"",$D(^VA(200,"B",X)) S X=$O(^VA(200,"B",X,0)) S:X>0 $P(^ENG(6914.1,DA,0),U,2)=X
|
|
S DIK="^ENG(""SP"",",DIK(1)=".01^AF" D ENALL^DIK K DIK
|
|
I $E(^ENG("VERSION"))=7 G EXIT
|
|
K ^ENG("WO","C"),^ENG("WO","E"),^ENG("WO","F"),^ENG("WO","G")
|
|
K ^ENG("WO","H"),^ENG("WO","X")
|
|
W !!,"Now re-building your Work Order File."
|
|
F DA=0:0 S DA=$O(^ENG("WO",DA)) Q:DA'>0 D
|
|
. Q:'$D(^ENG("WO",DA,0)) I $E(^ENG("WO",DA,0))="*" Q
|
|
. I $D(^ENG("WO",DA,5)) S ENX=$P(^(5),U) I ENX>0 S $P(^(5),U)="" I $D(^ENG("ACT",ENX)) S ^ENG("WO",DA,8,0)="^6920.035PA^1^1",ENX(0)=$P(^ENG("ACT",ENX,0),U,2),^ENG("WO",DA,8,1,0)=ENX(0)
|
|
. S %X="^ENG(""WO"",DA,",%Y="^ENG(6920,DA," D %XY^%RCR K ^ENG("WO",DA) W:'(DA#20) "."
|
|
K ^ENG("WO")
|
|
W !,"Now re-indexing Work Order File. This could take awhile..."
|
|
S DIU(0)=""
|
|
S DIK="^ENG(6920," D IXALL^DIK
|
|
K DIK
|
|
LOC ;Convert LOCATIONS from free text into pointers
|
|
W !!,"Now converting LOCATIONS in your Equipment File"
|
|
F DA=0:0 S DA=$O(^ENG(6914,DA)) Q:DA'>0 W:'(DA#30) "." D
|
|
. I $D(^ENG(6914,DA,3)) S ENX=$P(^(3),U,5) I ENX]"" D
|
|
.. S ENX1=$O(^ENG("SP","B",ENX,0)) I ENX1>0 D
|
|
... S $P(^ENG(6914,DA,3),U,5)=ENX1
|
|
... K ^ENG(6914,"D",ENX,DA)
|
|
... S ^ENG(6914,"D",ENX1,DA)=""
|
|
W !!,"Now converting Work Order LOCATIONS"
|
|
F DA=0:0 S DA=$O(^ENG(6920,DA)) Q:DA'>0 W:'(DA#30) "." D
|
|
. Q:'$D(^ENG(6920,DA,0)) S ENX=$P(^(0),U,4) I ENX]"",ENX'=" " D
|
|
.. S ENX1=$O(^ENG("SP","B",ENX,0)) I ENX1>0 D
|
|
... S $P(^ENG(6920,DA,0),U,4)=ENX1
|
|
... K ^ENG(6920,"C",ENX,DA)
|
|
... S ^ENG(6920,"C",ENX1,DA)=""
|
|
PROJ ;Convert data in File 6925
|
|
W !!,"Now converting a few data elements in your existing construction projects."
|
|
W !,"This shouldn't take very long."
|
|
F DA=0:0 S DA=$O(^ENG("PROJ",DA)) Q:DA'>0 D W:'(DA#20) "."
|
|
. N STATION Q:'$D(^ENG("PROJ",DA,0)) S STATION=$P(^(0),"-") D:STATION]""
|
|
.. S ENX=$O(^DIC(4,"D",STATION,0)) I ENX>0 S $P(^ENG("PROJ",DA,0),U,4)=ENX
|
|
. I $D(^ENG("PROJ",DA,1)) S EN=^(1) D
|
|
.. S EN1=$P(EN,U,3) I EN1]"" D
|
|
... S EN1(0)=$S(EN1="A/E":8,EN1="PP":9,EN1="WD":11,EN1="AA":13,EN1="CO":15,1:"")
|
|
... I EN1(0)'="" S $P(EN,U,3)=EN1(0)
|
|
.. S EN2=$P(EN,U,4) I EN2]"" D
|
|
... S EN2(0)=$S(EN2="HCF":3,EN2="A/E":1,EN2="O/F":1,1:"")
|
|
... I EN2(0)'="" S $P(EN,U,4)=EN2(0)
|
|
.. S EN3=$P(EN,U,5) I EN3]"" D
|
|
... S EN3(0)=$S(EN3="CONTR":1,EN3="P&H":2,EN3="8(a)":4,EN3="HCF":3,1:"")
|
|
... I EN3(0)'="" S $P(EN,U,5)=EN3(0)
|
|
.. S $P(EN,U,9)=$P(EN,U,6),$P(EN,U,6)=""
|
|
.. S ^ENG("PROJ",DA,1)=EN
|
|
. I $D(^ENG("PROJ",DA,2)) D
|
|
.. S $P(^ENG("PROJ",DA,50),U,2)=$P(^(2),U,2),$P(^(2),U,2)=""
|
|
.. S $P(^ENG("PROJ",DA,50),U,3)=$P(^(2),U,3),$P(^(2),U,3)=""
|
|
. I $D(^ENG("PROJ",DA,3)) D
|
|
.. S $P(^ENG("PROJ",DA,50),U,17)=$P(^(3),U),$P(^(3),U)=""
|
|
.. S $P(^ENG("PROJ",DA,50),U,18)=$P(^(3),U,2),$P(^(3),U,2)=""
|
|
. I $D(^ENG("PROJ",DA,4)) S EN=^(4) D S ^ENG("PROJ",DA,4)=EN
|
|
.. S $P(EN,U,14)=$P(EN,U,5),$P(EN,U,5)=""
|
|
.. S $P(EN,U,15)=$P(EN,U,6),$P(EN,U,6)=""
|
|
W !,"Now re-indexing"
|
|
S DIK="^ENG(""PROJ""," D IXALL^DIK
|
|
EXIT ;
|
|
S ^ENG("VERSION")=7.0
|
|
S %DT="T",X="N" D ^%DT,DD^%DT W !!,"Finished at ",Y,"."
|
|
L K ENDATE,ENX,ENX1,DA,%X,%Y,DIK,DIU
|
|
K EN,EN1,EN2,EN3
|
|
Q
|
|
;ENPOST
|