#include Prod.Product BLIMPPR ;Importeren van het BLUM produktenbestand (BLProd) uit het Import bestand;BLIMPPR; [ 02/24/2001 11:07 AM ] Goto BEGIN ; BEGIN ; New BLOld L ^BLProd:2 E X ^cTXT(0,"N",46) G MENU C1 ; Verwerking hoofding Set LEVNr=5005 Set RecNaam="MSGB",(RecInp,MsgRec)=^BLImp(MsgId) Set ^BLProd=$P(RecInp,"\",1)_D_$P(RecInp,"\",6)_D_$P(RecInp,"\",5) Set PrijsLijst="" Set RecCnt=$P(RecInp,"\",8) Set UpDate=$TR($P(RecInp,"\",6),"-","."),RecNr=-1 ; Record 11 C2a Do NextRec Goto C6:RecNr=-1 G C2c:RecType=21 G C2a:RecType'=11 Set PrijsLijst="" Set RecNaam="DMS-OC-11" Do TF Set PrijsLijst=$S(+PrijsLijst=43:"K",1:"E")_+PrijsLijst C2b Do NextRec Goto C6:RecNr=-1 C2c G C2b:RecType'=21 Set RecNaam="DMS-OC-21",(SetNr,ComNr,LanNr)=1 Do TF Goto:'$D(^BLProd("D",OCIDNO)) C2b ; Product bestaat niet in BLProd Set ModProd(OCIDNO)=MsgRec ; om een mail te versturen zie ^BLVWIMP ; Record 22 Do NextRec Goto C6:RecNr=-1 Goto C2c:RecType'=22 Set RecNaam="DMS-OC-22" Do TF ; Record 26 Do NextRec Goto C6:RecNr=-1 Goto C2c:RecType'=26 Set RecNaam="DMS-OC-26" Do TF ; Record 27 - wordt geskipped ; Verwerken Kill BLOld Merge BLOld=^BLProd("D",OCIDNO) Set BLRec=^BLProd("D",OCIDNO) Set $P(BLRec,D,1)=OCSHDS ; Korttekst Set $P(BLRec,D,2)=OCICSC ; IC Code Set $P(BLRec,D,4)=OCQTY1 Set $P(BLRec,D,5)=OCQTY2 Set $P(BLRec,D,6)=OCQTY3 Set $P(BLRec,D,17)=UpDate Set $P(BLRec,D,18)=OCMBEN ; Stocking unit qty Set $P(BLRec,D,19)=OCCLAS Set $P(BLRec,D,20)=$S($TR(OCEAN,"0","")="":"",1:OCEAN) Set $P(BLRec,D,21)=OCMUTMSN Set $P(BLRec,D,22)=$S(+OCMFAK:+OCMFAK,1:"") Set $P(BLRec,D,23)=$S(+OCDMLGA:+OCDMLGA,1:"") Set $P(BLRec,D,24)=$S(+OCDMBRA:+OCDMBRA,1:"") Set $P(BLRec,D,25)=$S(+OCDMHOA:+OCDMHOA,1:"") Set $P(BLRec,D,9)=OCWGHT*$S(OCWGDI=0:1000,OCWGDI=1:100,OCWGDI=2:10,OCWGDI=4:0.1,1:1) ;Set $P(BLRec,D,26)=PRWNET*$S(PRWGDI=0:1000,PRWGDI=1:100,PRWGDI=2:10,1:1) Set $P(BLRec,D,27)=OCTARA*$S(OCWGDI=0:1000,OCWGDI=1:100,OCWGDI=2:10,OCWGDI=4:0.1,1:1) Set $P(BLRec,D,28)=OCGFO Set $P(BLRec,D,29)=OCVOLUB Set $P(BLRec,D,30)=OCVDIM Set SOCSHDS=$$TC($P(^BLProd("D",OCIDNO),D)) Kill ^BLProd("I",SOCSHDS_D_OCIDNO) ; Verwijderen index op korttekst Set ^BLProd("D",OCIDNO)=BLRec Set SOCSHDS=$$TC($P(BLRec,D)) Set ^BLProd("I",SOCSHDS_D_OCIDNO)="" ; Build index op korttekst Do LOG^BLIMPPR(OCIDNO,.BLOld,"H") Do CopyBlumID^BLPROD(OCIDNO) ; aanpassen van het VH-producten bestand Goto C2a ; Verwijderen niet gewijzigde indien complete update C6 Goto MENU ;verwijderen is kortgesloten;:MINETC'="C" Set PRIDNO=-1 C7 Set PRIDNO=$N(^BLProd("D",PRIDNO)) Goto MENU:PRIDNO=-1 Set R=^(PRIDNO) Goto C7:$P(R,D,17)=UpDate Set PRSHDS=$P(R,D,1) Do TC Kill ^(PRIDNO),^BLProd("I",SPRSHDS_D_PRIDNO) Goto C7 MENU L Q ; Ophalen volgend record NextRec Set RecNr=$N(^BLImp(MsgId,RecNr)) Q:RecNr=-1 Set RecInp=^(RecNr),RecType=$E(RecInp,2,3) Q ; Verwerken record TF SET Tptr=0,Tptr=$N(^BLRecDef(LEVNr,RecNaam,Tptr)),R="" TLoop Q:Tptr=-1 Set TRec=^(Tptr),Piece=$P(TRec,D,4),Local=$P(TRec,D,5),Type=$P(TRec,D,6) If 'Piece&(Local="") Set Tptr=$N(^(Tptr)) Goto TLoop Set Mem=$E(RecInp,$P(TRec,D,1),$P(TRec,D,2)) LTRIM ;If $E(Mem,1)=" " Set Mem=$E(Mem,2,999) Goto LTRIM RTRIM If $E(Mem,$L(Mem))=" " Set Mem=$E(Mem,1,$L(Mem)-1) Goto RTRIM Set:Type="N" Mem=+Mem ; Numeriek Set:Type="D"&(Mem="000000") Mem="" Set:Type="D"&($P(TRec,D,3)=6) Mem=$E(Mem,5,6)_"."_$E(Mem,3,4)_"."_$E(Mem,1,2) ; Datum 6 char Set:Type="D"&($P(TRec,D,3)=8) Mem=$E(Mem,7,8)_"."_$E(Mem,5,6)_"."_$E(Mem,1,4) ; Datum 8 char If Piece Set $P(R,D,Piece)=Mem If Local'="" Set @Local=Mem Set Tptr=$N(^(Tptr)) Goto TLoop ; Compressing korttekst TC(OCSHDS) Set I=0,SOCSHDS="" TC1 Set I=I+1 If I'>$L(OCSHDS) S Y=$E(OCSHDS,I) S:Y'?1P SOCSHDS=SOCSHDS_Y G TC1 Quit SOCSHDS ; Kill oude informatie Kold Set XX=$N(^BLProd("D",PRIDNO,X)),XX=X Kold1 Set XX=$N(^(XX)) If $E(XX,1)=X Kill ^(XX) Goto Kold1 Q ;