20 |
IdExplicitTLSClientServerBase, IdFTP, IdException, |
IdExplicitTLSClientServerBase, IdFTP, IdException, |
21 |
ShellApi, ClipBrd, Buttons, wininet, |
ShellApi, ClipBrd, Buttons, wininet, |
22 |
UITypes, |
UITypes, |
23 |
PakkeshopLabels, |
LabelData, |
24 |
Utils, |
Utils, |
25 |
ParentForm, |
ParentForm, |
26 |
LabelPrint, |
LabelPrint, |
202 |
procedure LogMessage( msg : string); |
procedure LogMessage( msg : string); |
203 |
procedure SetPrinterstatusText( txt: string; alert: boolean); |
procedure SetPrinterstatusText( txt: string; alert: boolean); |
204 |
function GetFormObject() : TForm; |
function GetFormObject() : TForm; |
205 |
|
function GetXMLDocument() : TXMLDocument; |
206 |
|
procedure chkEmballageRepareretClick(Sender: TObject); |
207 |
|
procedure chkUdenforSpecifikationClick(Sender: TObject); |
208 |
|
|
209 |
|
|
210 |
|
|
247 |
|
|
248 |
procedure HentPakkeInfoFraServer(const Sted, PakkeNr : String; var RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted : String; var PrintNyLabel: Boolean; BoghandlerNummer : String = ''); |
procedure HentPakkeInfoFraServer(const Sted, PakkeNr : String; var RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted : String; var PrintNyLabel: Boolean; BoghandlerNummer : String = ''); |
249 |
procedure CheckCode(); |
procedure CheckCode(); |
250 |
procedure IndlesManglendeScanninger(); |
procedure IndlesManglendeScanningerAntal(); |
251 |
|
procedure IndlesManglendeScanningerListe(); |
252 |
procedure IndlesRuteskiftFil(var filnavn : string); |
procedure IndlesRuteskiftFil(var filnavn : string); |
253 |
procedure IndlesKontrolFil(var filnavn : string); |
procedure IndlesKontrolFil(var filnavn : string); |
254 |
procedure IndlesScanningLogFil(); |
procedure IndlesScanningLogFil(); |
542 |
|
|
543 |
// Sætter lige en default panel størrelse |
// Sætter lige en default panel størrelse |
544 |
MainForm.ClientWidth := 1000; |
MainForm.ClientWidth := 1000; |
545 |
MainForm.ClientHeight := 820; |
MainForm.ClientHeight := 920; |
546 |
|
|
547 |
Config := TConfiguration.Create(); |
Config := TConfiguration.Create(); |
548 |
Config.ReadFromInifile( TIniFile.Create(ChangeFileExt(Application.ExeName,'.ini')) ); //ToDo: clean up duplicate ini ref |
Config.ReadFromInifile( TIniFile.Create(ChangeFileExt(Application.ExeName,'.ini')) ); //ToDo: clean up duplicate ini ref |
557 |
Sted := ReadString('Settings','Sted',''); |
Sted := ReadString('Settings','Sted',''); |
558 |
StedNavn := ReadString('Settings','Stednavn',''); |
StedNavn := ReadString('Settings','Stednavn',''); |
559 |
|
|
560 |
|
Scanningtype := 'A'; //hardcoded |
561 |
|
Pakketype := '0'; |
562 |
|
|
563 |
|
|
564 |
|
|
565 |
|
|
973 |
// Opbygger PanelManglendePakker information |
// Opbygger PanelManglendePakker information |
974 |
gemScanningtype := Scanningtype; |
gemScanningtype := Scanningtype; |
975 |
|
|
976 |
if PanelValg6.Enabled then |
IndlesManglendeScanningerAntal(); |
|
begin |
|
|
Scanningtype := '6'; |
|
|
IndlesManglendeScanninger(); |
|
|
end; |
|
|
|
|
|
if PanelValg5.Enabled then |
|
|
begin |
|
|
Scanningtype := '5'; |
|
|
IndlesManglendeScanninger(); |
|
|
end; |
|
|
|
|
|
if PanelValg4.Enabled then |
|
|
begin |
|
|
Scanningtype := '4'; |
|
|
IndlesManglendeScanninger(); |
|
|
end; |
|
|
|
|
|
if PanelValg3.Enabled then |
|
|
begin |
|
|
Scanningtype := '3'; |
|
|
IndlesManglendeScanninger(); |
|
|
end; |
|
|
|
|
|
if PanelValg2.Enabled then |
|
|
begin |
|
|
Scanningtype := '2'; |
|
|
IndlesManglendeScanninger(); |
|
|
end; |
|
977 |
|
|
978 |
if PanelValg1.Enabled then |
// if PanelValg6.Enabled then |
979 |
begin |
// begin |
980 |
Scanningtype := '1'; |
// Scanningtype := '6'; |
981 |
IndlesManglendeScanninger(); |
// IndlesManglendeScanningerAntal(); |
982 |
end; |
// end; |
983 |
|
// |
984 |
|
// if PanelValg5.Enabled then |
985 |
|
// begin |
986 |
|
// Scanningtype := '5'; |
987 |
|
// IndlesManglendeScanningerAntal(); |
988 |
|
// end; |
989 |
|
// |
990 |
|
// if PanelValg4.Enabled then |
991 |
|
// begin |
992 |
|
// Scanningtype := '4'; |
993 |
|
// IndlesManglendeScanningerAntal(); |
994 |
|
// end; |
995 |
|
// |
996 |
|
// if PanelValg3.Enabled then |
997 |
|
// begin |
998 |
|
// Scanningtype := '3'; |
999 |
|
// IndlesManglendeScanningerAntal(); |
1000 |
|
// end; |
1001 |
|
// |
1002 |
|
// if PanelValg2.Enabled then |
1003 |
|
// begin |
1004 |
|
// Scanningtype := '2'; |
1005 |
|
// IndlesManglendeScanningerAntal(); |
1006 |
|
// end; |
1007 |
|
// |
1008 |
|
// if PanelValg1.Enabled then |
1009 |
|
// begin |
1010 |
|
// Scanningtype := '1'; |
1011 |
|
// IndlesManglendeScanningerAntal(); |
1012 |
|
// end; |
1013 |
|
|
1014 |
Scanningtype := gemScanningtype; |
Scanningtype := gemScanningtype; |
1015 |
|
|
1435 |
end; |
end; |
1436 |
end; |
end; |
1437 |
|
|
1438 |
|
// EmballageRepareret skal bare sætte reklamationkoden, |
1439 |
|
// og så ellers fortsætte med scanning som normalt |
1440 |
|
if (chkEmballageRepareret.Checked = True) then |
1441 |
|
begin |
1442 |
|
URLStr := Format(Config.UrlEmballageRepareret,[Sted,Stregkode]); |
1443 |
|
WebSvar := IdHTTP1.Get(URLStr); |
1444 |
|
|
1445 |
|
chkEmballageRepareret.Checked := False; |
1446 |
|
end; |
1447 |
|
|
1448 |
|
if (chkUdenforSpecifikation.Checked = True) then |
1449 |
|
begin |
1450 |
|
URLStr := Format(Config.URLUdenforSpecifikation,[Sted,Stregkode]); |
1451 |
|
//InputBox( '1', '1', URLStr); |
1452 |
|
|
1453 |
|
WebSvar := IdHTTP1.Get(URLStr); |
1454 |
|
//InputBox( '2', '2', WebSvar ); |
1455 |
|
|
1456 |
|
chkUdenforSpecifikation.Checked := False; |
1457 |
|
LabelPrint.PrintLabel(Stregkode); |
1458 |
|
|
1459 |
|
StregkodeST.Caption := ''; |
1460 |
|
Stregkode := ''; |
1461 |
|
|
1462 |
|
RuteNummerST.Caption := ''; |
1463 |
|
BoghandlerNavnST.Caption := ''; |
1464 |
|
KommentarST.Caption := 'Retur til leverandør'; |
1465 |
|
|
1466 |
|
|
1467 |
|
|
1468 |
|
|
1469 |
|
exit; //leave procedure |
1470 |
|
end; |
1471 |
|
|
1472 |
|
|
1473 |
|
|
1474 |
|
|
1475 |
if (PakkeshopText1.Visible = true) and (PakkeshopText1.Caption = 'Stregkode') and menuAutomatiskTjekkodeStyring.Checked then |
if (PakkeshopText1.Visible = true) and (PakkeshopText1.Caption = 'Stregkode') and menuAutomatiskTjekkodeStyring.Checked then |
1574 |
|
|
1575 |
exit; |
exit; |
1576 |
end; |
end; |
1577 |
if (menuNatXpress1.Checked or menuDaoDirekte1.Checked or menuPakkeshop1.Checked) then |
if (menuNatXpress1.Checked or menuDaoDirekte1.Checked or menuPakkeshop1.Checked or menuPakkeshopRetur1.Checked) then |
1578 |
begin |
begin |
1579 |
PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel); |
PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel); |
1580 |
pakkeErScannet := pos('PAKKEN ER SCANNET', BoghandlerNavn); |
pakkeErScannet := pos('PAKKEN ER SCANNET', BoghandlerNavn); |
1908 |
BladhusKontrolfil_server := 'franordjyske/RuteKontrol.txt'; |
BladhusKontrolfil_server := 'franordjyske/RuteKontrol.txt'; |
1909 |
BladhusKontrolfil_lokal := 'RuteKontrol.txt'; |
BladhusKontrolfil_lokal := 'RuteKontrol.txt'; |
1910 |
DownloadBladhusKontrolfil(); |
DownloadBladhusKontrolfil(); |
1911 |
IndlesManglendeScanninger(); |
IndlesManglendeScanningerAntal(); |
1912 |
end; |
end; |
1913 |
02 : |
02 : |
1914 |
begin; // BK |
begin; // BK |
1921 |
BtnOpdaterListen.Enabled := true; |
BtnOpdaterListen.Enabled := true; |
1922 |
IdFTP1.Passive := true; |
IdFTP1.Passive := true; |
1923 |
IdFTP1.PassiveUseControlHost := true; |
IdFTP1.PassiveUseControlHost := true; |
1924 |
IndlesManglendeScanninger(); |
IndlesManglendeScanningerAntal(); |
1925 |
end; |
end; |
1926 |
03 : |
03 : |
1927 |
begin; // FD |
begin; // FD |
1947 |
BladhusKontrolfil_server := 'frafd/RuteKontrol.txt'; |
BladhusKontrolfil_server := 'frafd/RuteKontrol.txt'; |
1948 |
BladhusKontrolfil_lokal := 'RuteKontrol.txt'; |
BladhusKontrolfil_lokal := 'RuteKontrol.txt'; |
1949 |
DownloadBladhusKontrolfil(); |
DownloadBladhusKontrolfil(); |
1950 |
IndlesManglendeScanninger(); |
IndlesManglendeScanningerAntal(); |
1951 |
end; |
end; |
1952 |
04 : begin; // DBK |
04 : begin; // DBK |
1953 |
Testprinter1.Visible := true; |
Testprinter1.Visible := true; |
1973 |
pakkestorrelse : String; |
pakkestorrelse : String; |
1974 |
PrintNyLabelInteger : Integer; |
PrintNyLabelInteger : Integer; |
1975 |
|
|
1976 |
PakkeshopLabel: TPakkeshopLabel; |
PakkeshopLabel: TLabelData; |
1977 |
begin |
begin |
1978 |
if radioStorPakke.Checked then |
if radioStorPakke.Checked then |
1979 |
begin |
begin |
2059 |
BoghandlerNavn := BoghandlerNavn + ' ' + XMLDocument1.ChildNodes.FindNode('PakkeKontrol').ChildNodes.FindNode('PakkeshopNavn').Text; |
BoghandlerNavn := BoghandlerNavn + ' ' + XMLDocument1.ChildNodes.FindNode('PakkeKontrol').ChildNodes.FindNode('PakkeshopNavn').Text; |
2060 |
PrintNyLabel := False; |
PrintNyLabel := False; |
2061 |
|
|
2062 |
if menuPakkeshop1.Checked then |
try |
2063 |
|
PrintNyLabelInteger := StrToInt(XMLDocument1.ChildNodes.FindNode('PakkeKontrol').ChildNodes.FindNode('PakkeshopPrintPakkeLabel').Text); |
2064 |
|
except on e:exception do |
2065 |
|
PrintNyLabelInteger := 0; |
2066 |
|
end; |
2067 |
|
if (PrintNyLabelInteger = 1) then |
2068 |
begin |
begin |
2069 |
try |
PrintNyLabel := True; |
|
PrintNyLabelInteger := StrToInt(XMLDocument1.ChildNodes.FindNode('PakkeKontrol').ChildNodes.FindNode('PakkeshopPrintPakkeLabel').Text); |
|
|
except on e:exception do |
|
|
PrintNyLabelInteger := 0; |
|
|
end; |
|
|
if (PrintNyLabelInteger = 1) then |
|
|
begin |
|
|
PrintNyLabel := True; |
|
|
end; |
|
2070 |
end; |
end; |
2071 |
|
|
2072 |
end |
end |
2073 |
else if menuIndlevering.Checked or chkForstorTilDirekte.Checked then |
else if menuIndlevering.Checked or chkForstorTilDirekte.Checked then |
2074 |
begin |
begin |
2080 |
if (Kommentar = 'Ok') then |
if (Kommentar = 'Ok') then |
2081 |
begin |
begin |
2082 |
PrintNyLabel := True; //Indleveringskode vil ALTID udskrive label |
PrintNyLabel := True; //Indleveringskode vil ALTID udskrive label |
2083 |
PakkeshopLabel := TPakkeshopLabel.Create( XMLDocument1 ); //Opret struct og parse xml doc |
PakkeshopLabel := TLabelData.Create( XMLDocument1 ); //Opret struct og parse xml doc |
2084 |
RuteNummer := PakkeshopLabel.Koreliste + ' -> ' + PakkeshopLabel.PakkeshopTurid; |
RuteNummer := PakkeshopLabel.Koreliste + ' -> ' + PakkeshopLabel.PakkeshopTurid; |
2085 |
Stregkode := PakkeshopLabel.Stregkode; |
Stregkode := PakkeshopLabel.Stregkode; |
2086 |
|
|
2087 |
LabelPrint.PrintFuldPakkeLabel( PakkeshopLabel ); |
LabelPrint.PrintLabel(PakkeshopLabel.Stregkode); |
2088 |
chkForstorTilDirekte.Checked := false; |
|
2089 |
|
// LabelPrint.PrintFuldPakkeLabel( PakkeshopLabel ); |
2090 |
|
// chkForstorTilDirekte.Checked := false; |
2091 |
|
|
2092 |
end; |
end; |
2093 |
|
|
2131 |
begin |
begin |
2132 |
if (Leveringssted <> BladhusStedKode[BladhusSted]) and (BladhusStedKode[BladhusSted] <> 'DBK') then |
if (Leveringssted <> BladhusStedKode[BladhusSted]) and (BladhusStedKode[BladhusSted] <> 'DBK') then |
2133 |
begin |
begin |
2134 |
Kommentar := Kommentar + 'Pakke burde være hos ' + Leveringssted; |
Kommentar := Kommentar + ' Pakke burde være hos ' + Leveringssted; |
2135 |
PrintNyLabel := False; |
//PrintNyLabel := False; //ved fuld-daekning / X-ruter skal vi altid skrive label alligevel |
2136 |
end; |
end; |
2137 |
end |
end |
2138 |
else if (menuDaoDirekte1.Checked) and (Leveringssted <> Sted) And (Leveringssted <> '') then |
else if (menuDaoDirekte1.Checked) and (Leveringssted <> Sted) And (Leveringssted <> '') then |
2139 |
begin |
begin |
2140 |
if (Leveringssted = 'E') and (Sted = 'DBK') then |
Kommentar := Kommentar + ' Pakke burde være hos ' + Leveringssted; |
2141 |
begin |
//PrintNyLabel := False; //ved fuld-daekning / X-ruter skal vi altid skrive label alligevel |
|
// Det er ok at DBK scanner pakker til E (Schenker) |
|
|
end |
|
|
else |
|
|
begin |
|
|
Kommentar := Kommentar + 'Pakke burde være hos ' + Leveringssted; |
|
|
PrintNyLabel := False; |
|
|
end; |
|
2142 |
end; |
end; |
2143 |
except on e:exception do |
except on e:exception do |
2144 |
raise exception.CreateFmt('Fejl i XML-format: %s',[e.Message]); |
raise exception.CreateFmt('Fejl i XML-format: %s',[e.Message]); |
2239 |
kontrolKoreliste : string; |
kontrolKoreliste : string; |
2240 |
nytRuteNummer, nyFarve : String; |
nytRuteNummer, nyFarve : String; |
2241 |
begin |
begin |
2242 |
|
// if (PrintNyLabel = True OR chkAltidPrintLabel.Checked = True) then |
2243 |
|
// begin |
2244 |
|
// LabelPrint.PrintLabel( Stregkode ); |
2245 |
|
// end; |
2246 |
|
// |
2247 |
|
// exit; |
2248 |
|
|
2249 |
if menuDaoDirekte1.Checked then |
if menuDaoDirekte1.Checked then |
2250 |
RuteNummerST.Color := TUtils.HexToTColor(Farve); |
RuteNummerST.Color := TUtils.HexToTColor(Farve); |
2251 |
|
|
2310 |
logTekst := RightStr(List1Msg, Length(List1Msg)-10); |
logTekst := RightStr(List1Msg, Length(List1Msg)-10); |
2311 |
SkrivScanningLogFil(logTekst); |
SkrivScanningLogFil(logTekst); |
2312 |
|
|
2313 |
if (Config.PrinterNavn = 'Ingen') then |
// if (Config.PrinterNavn = 'Ingen') then |
2314 |
begin |
// begin |
2315 |
PrintNyLabel := false; |
// PrintNyLabel := false; |
2316 |
end; |
// end; |
2317 |
|
|
2318 |
if (PrintNyLabel = false) then // Hvis vi ikke printer label skal vi vise en 'rød skærm' alarm |
if (PrintNyLabel = false) then // Hvis vi ikke printer label skal vi vise en 'rød skærm' alarm |
2319 |
begin |
begin |
2365 |
if PrintNyLabel or (RuteNummer = 'Rutenr') then |
if PrintNyLabel or (RuteNummer = 'Rutenr') then |
2366 |
// 20150304: slut |
// 20150304: slut |
2367 |
begin |
begin |
2368 |
LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer); |
//LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer); |
2369 |
|
LabelPrint.PrintLabel( Stregkode ); |
2370 |
end; |
end; |
2371 |
end; |
end; |
2372 |
01 : begin; |
01 : begin; |
2374 |
// Ovenstående test er lidt speciel fordi der i programmet nogle steder er byttet rundt på rute og køreliste |
// Ovenstående test er lidt speciel fordi der i programmet nogle steder er byttet rundt på rute og køreliste |
2375 |
// Meningen er at der kun skal printes hvis der er forskel i kørelisterne eller ruterne - eller vi kommer fra test funktionen (Rutenr = 'Rutenr') |
// Meningen er at der kun skal printes hvis der er forskel i kørelisterne eller ruterne - eller vi kommer fra test funktionen (Rutenr = 'Rutenr') |
2376 |
begin |
begin |
2377 |
LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer); |
//LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer); |
2378 |
|
LabelPrint.PrintLabel( Stregkode ); |
2379 |
end; |
end; |
2380 |
end; |
end; |
2381 |
02 : begin; |
02 : begin; |
2382 |
if PrintNyLabel or (RuteNummer = 'Rutenr') then // Hvis RuteNummer = 'Rutenr' er vi igang med en printer test |
if PrintNyLabel or (RuteNummer = 'Rutenr') then // Hvis RuteNummer = 'Rutenr' er vi igang med en printer test |
2383 |
begin |
begin |
2384 |
LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer); |
//LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer); |
2385 |
|
LabelPrint.PrintLabel( Stregkode ); |
2386 |
end; |
end; |
2387 |
end; |
end; |
2388 |
03 : begin; |
03 : begin; |
2390 |
// Ovenstående test er lidt speciel fordi der i programmet nogle steder er byttet rundt på rute og køreliste |
// Ovenstående test er lidt speciel fordi der i programmet nogle steder er byttet rundt på rute og køreliste |
2391 |
// Meningen er at der kun skal printes hvis der er forskel i kørelisterne eller ruterne - eller vi kommer fra test funktionen (Rutenr = 'Rutenr') |
// Meningen er at der kun skal printes hvis der er forskel i kørelisterne eller ruterne - eller vi kommer fra test funktionen (Rutenr = 'Rutenr') |
2392 |
begin |
begin |
2393 |
LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer); |
//LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer); |
2394 |
|
LabelPrint.PrintLabel( Stregkode ); |
2395 |
end; |
end; |
2396 |
end; |
end; |
2397 |
04 : begin; |
04 : begin; |
2398 |
if PrintNyLabel or (RuteNummer = 'Rutenr') then // Hvis RuteNummer = 'Rutenr' er vi igang med en printer test |
if PrintNyLabel or (RuteNummer = 'Rutenr') then // Hvis RuteNummer = 'Rutenr' er vi igang med en printer test |
2399 |
begin |
begin |
2400 |
LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer); |
//LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer); |
2401 |
|
LabelPrint.PrintLabel( Stregkode ); |
2402 |
end; |
end; |
2403 |
end; |
end; |
|
else |
|
|
ShowMessage('Ukendt Bladhus sted: ' + IntToStr(BladhusSted)); |
|
2404 |
end; |
end; |
2405 |
end; |
end; |
2406 |
|
|
2433 |
logTekst := logTekst + ' for '+BoghandlerNavn; |
logTekst := logTekst + ' for '+BoghandlerNavn; |
2434 |
SkrivScanningLogFil(logTekst); |
SkrivScanningLogFil(logTekst); |
2435 |
|
|
2436 |
LabelPrint.PrintDaodirekteLabel( RuteNummer, Kommentar, BoghandlerNavn) ; |
//LabelPrint.PrintDaodirekteLabel( RuteNummer, Kommentar, BoghandlerNavn) ; |
2437 |
|
LabelPrint.PrintLabel( Stregkode ); |
2438 |
|
exit; |
2439 |
|
|
2440 |
end; |
end; |
2441 |
end; |
end; |
2442 |
|
|
2443 |
|
// tilføjet 20161020 |
2444 |
|
if (menuPakkeshop1.Checked OR menuPakkeshopRetur1.Checked) then |
2445 |
|
begin |
2446 |
|
if (PrintNyLabel = True OR chkAltidPrintLabel.Checked = True) then |
2447 |
|
begin |
2448 |
|
LabelPrint.PrintLabel( Stregkode ); |
2449 |
|
exit; |
2450 |
|
end; |
2451 |
|
|
2452 |
|
end; |
2453 |
|
|
2454 |
end; |
end; |
2455 |
|
|
2456 |
|
|
2481 |
end; |
end; |
2482 |
|
|
2483 |
|
|
2484 |
|
procedure TMainForm.chkUdenforSpecifikationClick(Sender: TObject); |
2485 |
|
begin |
2486 |
|
if (chkUdenforSpecifikation.Checked = true) then |
2487 |
|
begin |
2488 |
|
chkEmballageRepareret.Checked := false; |
2489 |
|
end; |
2490 |
|
end; |
2491 |
|
|
2492 |
|
procedure TMainForm.chkEmballageRepareretClick(Sender: TObject); |
2493 |
|
begin |
2494 |
|
if (chkEmballageRepareret.Checked = true) then |
2495 |
|
begin |
2496 |
|
chkUdenforSpecifikation.Checked := false; |
2497 |
|
end; |
2498 |
|
end; |
2499 |
|
|
2500 |
procedure TMainForm.chkAltidPrintLabelClick(Sender: TObject); |
procedure TMainForm.chkAltidPrintLabelClick(Sender: TObject); |
2501 |
begin |
begin |
2502 |
if chkAltidPrintLabel.Checked then |
if chkAltidPrintLabel.Checked then |
2510 |
|
|
2511 |
end; |
end; |
2512 |
|
|
2513 |
|
|
2514 |
|
|
2515 |
procedure TMainForm.chkScanTjekkodeClick(Sender: TObject); |
procedure TMainForm.chkScanTjekkodeClick(Sender: TObject); |
2516 |
begin |
begin |
2517 |
if chkScanTjekkode.Checked then |
if chkScanTjekkode.Checked then |
2896 |
SmsKode := '999999'; |
SmsKode := '999999'; |
2897 |
DBKbane := '999'; |
DBKbane := '999'; |
2898 |
Leveringssted := 'XXX'; |
Leveringssted := 'XXX'; |
2899 |
|
|
2900 |
|
|
2901 |
PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, Falsk); |
PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, Falsk); |
2902 |
FocusControl(StregkodeST); |
FocusControl(StregkodeST); |
2903 |
end; |
end; |
2911 |
Kommentar : String; |
Kommentar : String; |
2912 |
BoghandlerNavn : String; |
BoghandlerNavn : String; |
2913 |
Koreliste : String; |
Koreliste : String; |
2914 |
Falsk : Boolean; |
// Falsk : Boolean; |
2915 |
SmsKode : String; |
// SmsKode : String; |
2916 |
DBKbane : String; |
// DBKbane : String; |
2917 |
Leveringssted : String; |
// Leveringssted : String; |
2918 |
begin |
begin |
2919 |
RuteNummer := 'Rutenr'; |
RuteNummer := 'Rutenr'; |
2920 |
Kommentar := '***** Kommentar *****'; |
Kommentar := '***** Kommentar *****'; |
2921 |
BoghandlerNavn := 'Modtagernavn'; |
BoghandlerNavn := 'Modtagernavn'; |
2922 |
Falsk := False; |
// Falsk := False; |
2923 |
|
|
2924 |
|
|
2925 |
if (LabelPrint.GetPrinterCount() = 0) then |
if (LabelPrint.GetPrinterCount() = 0) then |
2926 |
begin |
begin |
2927 |
ShowMessage('Der er ikke installeret en printer på denne PC.'); |
ShowMessage('Der er ikke installeret en printer på denne PC.'); |
2928 |
end |
end |
2929 |
else if Config.PrinterNavn = 'Ingen' then |
// else if Config.PrinterNavn = 'Ingen' then //Det giver ikke længere mening at kunne fravælge printer |
2930 |
begin |
// begin |
2931 |
ShowMessage('Der er fravalgt printer i dette program.'); |
// ShowMessage('Der er fravalgt printer i dette program.'); |
2932 |
end |
// end |
2933 |
else |
else |
2934 |
begin |
begin |
2935 |
UpdateScreen(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, ''); |
UpdateScreen(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, ''); |
2936 |
SmsKode := '999999'; |
// SmsKode := '999999'; |
2937 |
DBKbane := '999'; |
// DBKbane := '999'; |
2938 |
Leveringssted := 'XXX'; |
// Leveringssted := 'XXX'; |
2939 |
PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, Falsk); |
// PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, Falsk); |
2940 |
|
|
2941 |
|
LabelPrint.PrintTestLabel(); |
2942 |
|
|
2943 |
LabelPrint.CheckPrintQue('Test', Config.PrinterNavn); |
LabelPrint.CheckPrintQue('Test', Config.PrinterNavn); |
2944 |
|
|
2945 |
end; |
end; |
2946 |
FocusControl(StregkodeST); |
FocusControl(StregkodeST); |
2947 |
end; |
end; |
3172 |
if BladhusSted = 0 then |
if BladhusSted = 0 then |
3173 |
begin |
begin |
3174 |
IndlesScanningLogFil(); |
IndlesScanningLogFil(); |
3175 |
IndlesManglendeScanninger(); |
IndlesManglendeScanningerAntal(); |
3176 |
end; |
end; |
3177 |
end; |
end; |
3178 |
|
|
3272 |
if (BladhusSted = 0) or (BladhusSted = 2) or (BladhusSted = 3) then |
if (BladhusSted = 0) or (BladhusSted = 2) or (BladhusSted = 3) then |
3273 |
begin |
begin |
3274 |
IndlesScanningLogFil(); |
IndlesScanningLogFil(); |
3275 |
IndlesManglendeScanninger(); |
IndlesManglendeScanningerAntal(); |
3276 |
end; |
end; |
3277 |
|
|
3278 |
end; |
end; |
3311 |
IndlesScanningLogFil(); |
IndlesScanningLogFil(); |
3312 |
if BladhusSted = 0 then |
if BladhusSted = 0 then |
3313 |
begin |
begin |
3314 |
IndlesManglendeScanninger(); |
IndlesManglendeScanningerAntal(); |
3315 |
end; |
end; |
3316 |
IdFTP1.Passive := true; |
IdFTP1.Passive := true; |
3317 |
IdFTP1.PassiveUseControlHost := true; |
IdFTP1.PassiveUseControlHost := true; |
3351 |
IndlesScanningLogFil(); |
IndlesScanningLogFil(); |
3352 |
if BladhusSted = 0 then |
if BladhusSted = 0 then |
3353 |
begin |
begin |
3354 |
IndlesManglendeScanninger(); |
IndlesManglendeScanningerAntal(); |
3355 |
end; |
end; |
3356 |
IdFTP1.Passive := true; |
IdFTP1.Passive := true; |
3357 |
IdFTP1.PassiveUseControlHost := true; |
IdFTP1.PassiveUseControlHost := true; |
3403 |
IndlesScanningLogFil(); |
IndlesScanningLogFil(); |
3404 |
if BladhusSted = 0 then |
if BladhusSted = 0 then |
3405 |
begin |
begin |
3406 |
IndlesManglendeScanninger(); |
IndlesManglendeScanningerAntal(); |
3407 |
end; |
end; |
3408 |
IdFTP1.Passive := true; |
IdFTP1.Passive := true; |
3409 |
IdFTP1.PassiveUseControlHost := true; |
IdFTP1.PassiveUseControlHost := true; |
4117 |
crlf = Chr(13) + Chr(10) ; // Carriage return & Linefeed |
crlf = Chr(13) + Chr(10) ; // Carriage return & Linefeed |
4118 |
|
|
4119 |
begin |
begin |
4120 |
IndlesManglendeScanninger(); |
IndlesManglendeScanningerListe(); |
4121 |
ListBox1.SetFocus; // for at flytte fokus væk fra download knappen så denne ikke aktiveres ved scanning / indtastning af stregkode |
ListBox1.SetFocus; // for at flytte fokus væk fra download knappen så denne ikke aktiveres ved scanning / indtastning af stregkode |
4122 |
end; |
end; |
4123 |
|
|
4131 |
end; |
end; |
4132 |
|
|
4133 |
|
|
4134 |
|
procedure TMainForm.IndlesManglendeScanningerAntal(); |
4135 |
|
var |
4136 |
|
Node: IXMLNode; |
4137 |
|
|
4138 |
|
URLStr : String; |
4139 |
|
StedKode : String; |
4140 |
|
WebSvar : String; |
4141 |
|
|
4142 |
|
i : Integer; |
4143 |
|
|
4144 |
|
PakkeType : String; |
4145 |
|
TotalAntal : String; |
4146 |
|
AntalProdDato : String; |
4147 |
|
|
4148 |
|
CurrentPanel : TPanel; |
4149 |
|
|
4150 |
|
begin |
4151 |
|
ListBox2.Clear(); |
4152 |
|
|
4153 |
|
if (BladhusSted > 00) and (BladhusSted < Length(BladhusStedNavn)) then |
4154 |
|
begin |
4155 |
|
StedKode := BladhusStedKode[BladhusSted]; |
4156 |
|
end |
4157 |
|
else |
4158 |
|
begin |
4159 |
|
StedKode := Sted; |
4160 |
|
end; |
4161 |
|
|
4162 |
|
URLStr := Format(Config.UrlHentPakkeAntal, [StedKode]); |
4163 |
|
|
4164 |
|
|
4165 |
|
try |
4166 |
|
WebSvar := IdHTTP1.Get(URLStr); |
4167 |
|
except |
4168 |
|
on e:EIdConnClosedGracefully do |
4169 |
|
begin |
4170 |
|
// Her skal vi ikke gøre noget - men vi skal forespørge igen |
4171 |
|
WebSvar := IdHTTP1.Get(URLStr); |
4172 |
|
end; |
4173 |
|
on e:exception do |
4174 |
|
begin |
4175 |
|
ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Fejl i web forespørgsel: '+e.Message); |
4176 |
|
logTekst := 'Fejl i web forespørgsel: '+e.Message; |
4177 |
|
SkrivScanningLogFil(logTekst); |
4178 |
|
raise exception.CreateFmt('Fejl i web forespørgsel: %s',[e.Message]); |
4179 |
|
end; |
4180 |
|
end; |
4181 |
|
|
4182 |
|
|
4183 |
|
|
4184 |
procedure TMainForm.IndlesManglendeScanninger(); |
try |
4185 |
|
|
4186 |
|
XMLDocument1.LoadFromXML(WebSvar); |
4187 |
|
|
4188 |
|
for i:= 0 to XMLDocument1.DocumentElement.ChildNodes.Count - 1 do begin |
4189 |
|
Node:= XMLDocument1.DocumentElement.ChildNodes[I]; |
4190 |
|
|
4191 |
|
PakkeType := Node.ChildValues['PakkeType']; |
4192 |
|
TotalAntal := Node.ChildValues['TotalAntal']; |
4193 |
|
AntalProdDato := Node.ChildValues['AntalProdDato']; |
4194 |
|
|
4195 |
|
|
4196 |
|
CurrentPanel := nil; |
4197 |
|
|
4198 |
|
if (PakkeType = 'natxpress') then |
4199 |
|
begin |
4200 |
|
CurrentPanel := PanelManglendePakker1; |
4201 |
|
end; |
4202 |
|
|
4203 |
|
if (PakkeType = 'daodirekte') then |
4204 |
|
begin |
4205 |
|
CurrentPanel := PanelManglendePakker4; |
4206 |
|
end; |
4207 |
|
|
4208 |
|
if (PakkeType = 'pakkeshop') then |
4209 |
|
begin |
4210 |
|
CurrentPanel := PanelManglendePakker5; |
4211 |
|
end; |
4212 |
|
|
4213 |
|
if (CurrentPanel <> nil) then |
4214 |
|
begin |
4215 |
|
CurrentPanel.Caption := TotalAntal; |
4216 |
|
if ( StrToInt(TotalAntal) > 0) then |
4217 |
|
begin |
4218 |
|
CurrentPanel.Visible := true; |
4219 |
|
end |
4220 |
|
else |
4221 |
|
begin |
4222 |
|
CurrentPanel.Visible := false; |
4223 |
|
end; |
4224 |
|
end; |
4225 |
|
|
4226 |
|
|
4227 |
|
end; |
4228 |
|
|
4229 |
|
|
4230 |
|
except on e:exception do |
4231 |
|
begin |
4232 |
|
ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Fejl i XML-format: '+e.Message); |
4233 |
|
logTekst := 'Fejl i XML-format: '+e.Message; |
4234 |
|
SkrivScanningLogFil(logTekst); |
4235 |
|
raise exception.CreateFmt('Fejl i XML-format: %s',[e.Message]); |
4236 |
|
end; |
4237 |
|
end; |
4238 |
|
|
4239 |
|
|
4240 |
|
|
4241 |
|
ListBox1.Items.Insert(0,'Pakkeantal indlæst - klar til scanning'); |
4242 |
|
|
4243 |
|
end; |
4244 |
|
|
4245 |
|
procedure TMainForm.IndlesManglendeScanningerListe(); |
4246 |
var |
var |
4247 |
WebSvar : String; |
WebSvar : String; |
4248 |
URLStr : String; |
URLStr : String; |
4405 |
logTekst := logTekst + '.'; |
logTekst := logTekst + '.'; |
4406 |
|
|
4407 |
SkrivScanningLogFil(logTekst); |
SkrivScanningLogFil(logTekst); |
4408 |
|
time.stop('Antal Linier2');//DEBUG |
4409 |
|
|
4410 |
|
|
4411 |
for I:= 0 to XMLDocument1.DocumentElement.ChildNodes.Count - 1 do begin |
for I:= 0 to XMLDocument1.DocumentElement.ChildNodes.Count - 1 do begin |
4466 |
if antalFelterFundet = antalLiniefelter then |
if antalFelterFundet = antalLiniefelter then |
4467 |
begin |
begin |
4468 |
if (ScanningType = '1') then |
if (ScanningType = '1') then |
4469 |
ListBox2.Items.Add(pakketype+'; '+stregkode+'; '+modtagernavn+'; '+modtageradresse+'; '+kommentar+'; '+tjekkodestatus) |
ListBox2.Items.Add(pakketype+'; '+stregkode+'; '+modtagernavn+'; '+modtageradresse+'; '+kommentar+'; '+tjekkodestatus) |
4470 |
else if (ScanningType = '4') then |
else if (ScanningType = '4') then |
4471 |
ListBox2.Items.Add(pakketype+'; '+stregkode+'; '+modtagernavn+'; '+modtageradresse+'; '+kommentar) |
ListBox2.Items.Add(pakketype+'; '+stregkode+'; '+modtagernavn+'; '+modtageradresse+'; '+kommentar) |
4472 |
else if (ScanningType = '5') then |
else if (ScanningType = '5') then |
5056 |
Result := self; |
Result := self; |
5057 |
end; |
end; |
5058 |
|
|
5059 |
|
//Nedarvet fra IParentForm |
5060 |
|
function TMainForm.GetXMLDocument() : TXMLDocument; |
5061 |
|
begin |
5062 |
|
Result := XMLDocument1 |
5063 |
|
end; |
5064 |
|
|
5065 |
|
|
5066 |
end. |
end. |
5067 |
|
|