BLEXPO4 G BEGIN ;Vertaling van de Sales Forecast; [ 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 Set StartWeek=$$CALCDATE^vhDTyp(+$H,"W","MD",+1) Set AantalWeken=12 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^BLEXPO3 Quit:'$D(^HULP(%J)) Lock +^BLExport:60 Else Quit Kill ^BLExport Do TRUB^BLEXPO2 ; Transmissie begin Do MSB^BLEXPO2 ; Message begin For I=1:1:AantalWeken Do . Set RefWeek=$$CALCDATE^vhDTyp(StartWeek,"W",I-1,"MD") . Set BlumKLNr="" . For Set BlumKLNr=$O(^HULP(%J,BlumKLNr)) Quit:BlumKLNr="" Do . . Set InvCnt=0 . . Do ForecastRapport(RefWeek) . . Do ForecastKlant(BlumKLNr) . . Set PRNr="" . . For Set PRNr=$O(^HULP(%J,BlumKLNr,PRNr)) Quit:PRNr="" Do . . . Set InvCnt=$I(InvCnt) . . . Do ForecastProduct(InvCnt,BlumKLNr,PRNr,RefWeek) Do MSEForecast ; Message einde Do BerichtConfirmatie^BLEXPO2 ; Bericht bevestiging Do TRUE^BLEXPO2 ; Transmissie einde Do ^BLEXP ; Wegschrijven van de ^BLExp global naar een EDI bestand Kill ^HULP(%J) Lock -^BLExport Quit ;FORT30\FOLINE\FOKSNR\FOEANR\FOIDNO\FOQTY\FOUNME\FOF300 FmtForecastProduct ;@"300";C;L;3\InvCnt;0N+.;R;6\;C;L;20\;C;L;13\FOIDNO;0N+.;R;8\FOQTY;-0N0.;R;15\;C;L;3\;C;L;60 ForecastProduct(InvCnt,BlumKLNr,PRNr,RefWeek) ;Opzetten van het forecast product record New KindVkp,R,WVStock Set FOIDNO=$TR($P(^KPR(PRNr,"J"_BlumNr),D,3),".","") Set List=##class(BL.Blum.LogSteuer).%AantallenScan(PRNr,RefWeek,1,0) ; Een element en geen markering voor uitzondering Set FOQTY=$LG(List) Set FL(1)=$P($T(FmtForecastProduct),"@",2) Do CONV^BLEXPO2 Quit ; FORT100\FOREPT\FOCRDT\FOBEDT\FOQBEDT\FOSEND\FODEST\FOF100 FmtForecastRapport ;@"100";C;L;3\FOREPT;C;L;35\FOCRDT;C;L;17\FOBEDT;C;L;17\"616";C;L;3\BLEXP(3);C;L;20\"LVH";C;L;3\;C;L;39 ForecastRapport(RefWeek) ; Opzetten van het inventory rapport record Set FOCRDT=$TR($ZDT($H,8)," :","") Set FOBEDT=$TR($$EXTDATE^vhDTyp(RefWeek,"DW4"),"/-.","") Set FOREPT=$E(FOBEDT,1,6)_$E(FOCRDT,1,8) ; Proposal key Set FL(1)=$P($T(FmtForecastRapport),"@",2) Do CONV^BLEXPO2 Quit ; FORT200\FOSUPB\FOSUPC\FOBUYB\FOBUYC\FOBUYE\FOCONB\FOCONC\FOCONE\FOF200 FmtForecastKlant ;@"200";C;L;3\"BAU";C;L;3\;C;L;20\BlumKLNr;C;L;8\;C;L;20\;C;L;13\BlumKLNr;C;L;8\;C;L;20\;C;L;13\;C;L;20 ForecastKlant(BlumKLNr) ; Opzetten van het inventory klant record Set FL(1)=$P($T(FmtForecastKlant),"@",2) Do CONV^BLEXPO2 Quit MSEForecast ; Afsluiten van het inventory bericht Set MIINTY="SFO",MIINTS="DI",MINETC="C",MIACRQ=1 Do MSE^BLEXPO2 Quit