#include Prod.Product BLEXPO5 G BEGIN ;Vertaling van de DMS/CO; [ 12/27/2003 9:44 AM ] ;Parameters : ; BLEXP(1)= Tabelnaam waarin de nummers van de te verzenden toeleveringen staan opgeslagen. ; (2)= Alleen aanpassingen (default=empty wat betekend alles.) ; (3)= Naam van de zender, def = "LVH" ; (4)= Naam van de ontvanger, def = "BLUM" ; ; Invullen van de defaults BEGIN New BLID,%J,BlumNr Set:'$D(BLEXP(2)) BLEXP(2)="" Set:'$D(BLEXP(3)) BLEXP(3)="PETER VDR" Set:'$D(BLEXP(4)) BLEXP(4)="BAU03436 " Set BlumNr="5005" Set %J=$$%J^vhRtn1() Kill ^HULP(%J) Do ScanProd Quit:'$D(^HULP(%J)) Lock +^BLExport:60 Else Quit Kill ^BLExport Do TRUB^BLEXPO2 ; Transmissie begin Do MSB^BLEXPO2 ; Message begin Set BLID="" Do OCKlant("LVH") For Set BLID=$O(^HULP(%J,BLID)) Quit:BLID="" Do . Do OCProduct(BLID) Do MSEOC ; Message einde Do BerichtConfirmatie^BLEXPO2 ; Bericht bevestiging Do TRUE^BLEXPO2 ; Transmissie einde Do ^BLEXP ; Wegschrijven van de ^BLExport global naar een EDI bestand Do MarkProd Lock -^BLExport Kill ^HULP(%J) Quit ; OFRECT/OCIDNO/OSSHDS/OCCLAS/OCICSC/FILLER FmtForecastProduct1 ;@"""";C;L;1\"21";C;L;2\BLID;0N+.;R;8\KortTekst;C;L;30\OCCLAS;C;L;7\ICCode;C;L;1\;C;L;44\OCMFAK;C;R;10\;C;L;24\"""";C;L;1 FmtForecastProduct2 ;@"""";C;L;1\"22";C;L;2\EANCode;0N+.;R;13\;C;L;111\"""";C;L;1 OCProduct(BLID) ;Opzetten van het forecast product record New FL,PRNr,Stock,ICCode,KortTekst New KortTekst,ICCode,EANCode Set PRNr=$$GETVH^BLPROD(BLID) Set Stock=$S(PRNr'?4.7N:0,1:$$$PRGet($$$StockType)) Set ICCode=$P(^BLProd("D",BLID),D,2) ;$S(Stock:0,1:6) Set KortTekst=$P(^BLProd("D",BLID),D) Set EANCode=$P(^BLProd("D",BLID),D,20) Set OCMFAK=$P(^BLProd("D",BLID),D,22) Set OCMFAK=$J(OCMFAK,0,4),OCMFAK=$E("0000000000",$L(OCMFAK)+1,10)_OCMFAK Set OCCLAS=$P(^BLProd("D",BLID),D,19) Set FL(1)=$P($T(FmtForecastProduct1),"@",2) ; record 21 Do CONV^BLEXPO2 Set FL(1)=$P($T(FmtForecastProduct2),"@",2) ; record 22 Do CONV^BLEXPO2 Quit ; OCRECT\OCSRCO\OCFILL FmtOCKlant ;@"""";C;L;1\"11";C;L;2\KlantRef;C;L;3\;C;L;121\"""";C;L;1 OCKlant(KlantRef) ; Opzetten van het inventory klant record New FL Set FL(1)=$P($T(FmtOCKlant),"@",2) Do CONV^BLEXPO2 Quit MSEOC ; Afsluiten van het inventory bericht New MIINTY,MIINTS,MIETC,MIACRQ Set MIINTY="DMS",MIINTS="OC",MINETC="N",MIACRQ=1 Do MSE^BLEXPO2 Quit MarkProd ; Markeren van de producten die nu verzonden worden New BLID Set BLID="" For Set BLID=$O(^HULP(%J,BLID)) Quit:BLID="" Do . Set $P(^BLProd("D",BLID),D,16)=$H Quit ScanProd ; Welke producten zijn nog niet verzonder met DMS-OC New BLID,BLRec Set BLID="" For Set BLID=$O(^BLProd("D",BLID)) Quit:BLID="" Do . Set BLRec=$G(^BLProd("D",BLID)) . Quit:BLRec="" . Quit:$P(BLRec,D,16)'="" ;already transmitted with DMS-OC . Set ^HULP(%J,BLID)="" Quit