/[projects]/dao/DelphiScanner/LabelData.pas
ViewVC logotype

Diff of /dao/DelphiScanner/LabelData.pas

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

dao/DelphiScanner/PakkeshopLabels.pas revision 2668 by torben, Tue Aug 25 16:34:41 2015 UTC dao/DelphiScanner/LabelData.pas revision 3095 by torben, Sun Aug 21 20:51:45 2016 UTC
# Line 1  Line 1 
1  unit PakkeshopLabels;  unit LabelData;
2    
3  // Denne klasse bruges til at samle alle de parametre der skal bruges omkring indleveringspakker  // Denne klasse bruges til at samle alle de parametre der skal bruges omkring indleveringspakker
4  // Constructor'en har selv ansvaret for at pille de relevante data ud af XML dokumentet  // Constructor'en har selv ansvaret for at pille de relevante data ud af XML dokumentet
# Line 6  unit PakkeshopLabels; Line 6  unit PakkeshopLabels;
6    
7  interface  interface
8  uses  uses
9    XMLDoc;    XMLDoc,
10      Xml.XMLIntf,
11      SysUtils;
12    
13  type  type
14    TPakkeshopLabel = class    TLabelData = class
15    public    public
16    
17        LabelType : string;
18    
19        Overskrift : string;
20    
21      Stregkode : string;      Stregkode : string;
22      Tjekkode : string;      Tjekkode : string;
23    
24        //Modtager
25      Navn : string;      Navn : string;
26      Vejnavn : string;      Vejnavn : string;
27      Postnr : string;      Postnr : string;
28    
29        //Afsender
30        AfsenderNavn: string;
31        AfsenderAdresse: string;
32        AfsenderPostnr: string;
33    
34    
35      PakkeshopNr : string;      PakkeshopNr : string;
36      PakkeshopNavn : string;      PakkeshopNavn : string;
37      PakkeshopAddr : string;      PakkeshopAddr : string;
38      PakkeshopPostnr : string;      PakkeshopPostnr : string;
39    
40        PakkeshopSted : string;
41      PakkeshopTurid : string;      PakkeshopTurid : string;
42    
43        Koreliste : string;
44    
45        Shop2Direkte : string;
46    
47        SimpelLinie1, SimpelLinie2, SimpelLinie3: String;
48    
49        ZPL : string;
50    
51      constructor Create(xmlDoc : TXMLDocument);      constructor Create(xmlDoc : TXMLDocument);
52    
53        function GetValue(ParentNode: Xml.XMLIntf.IXMLNode; NodeName: String) : String;
54        function GetOptionalValue(ParentNode: Xml.XMLIntf.IXMLNode; NodeName: String; DefaultValue: String) : String;
55    
56    end;    end;
57    
58    
# Line 35  type Line 60  type
60  implementation  implementation
61    
62    
63  constructor TPakkeshopLabel.Create(xmlDoc: TXMLDocument);  constructor TLabelData.Create(xmlDoc: TXMLDocument);
64    var
65      PakkeKontrolNode: Xml.XMLIntf.IXMLNode;
66      TmpNode:          Xml.XMLIntf.IXMLNode;
67  begin  begin
68    
69    Stregkode := xmlDoc.ChildNodes.FindNode('PakkeKontrol').ChildNodes.FindNode('Stregkode').Text;    PakkeKontrolNode := xmlDoc.ChildNodes.FindNode('PakkeKontrol');  // Cache opslaget der finder PakkeKontrol noden
70    Tjekkode := xmlDoc.ChildNodes.FindNode('PakkeKontrol').ChildNodes.FindNode('Tjekkode').Text;  
71      LabelType := GetOptionalValue(PakkeKontrolNode, 'LabelType', 'FuldLabel');
72      LabelType := AnsiLowerCase(LabelType);
73    
74      Overskrift := GetValue( PakkeKontrolNode, 'Overskrift');
75    
76      Stregkode := PakkeKontrolNode.ChildNodes.FindNode('Stregkode').Text;
77      Tjekkode := PakkeKontrolNode.ChildNodes.FindNode('Tjekkode').Text;
78    
79      Navn := PakkeKontrolNode.ChildNodes.FindNode('Navn').Text;
80      Vejnavn := PakkeKontrolNode.ChildNodes.FindNode('Vejnavn').Text;
81      Postnr := PakkeKontrolNode.ChildNodes.FindNode('Postnr').Text;
82    
83    Navn := xmlDoc.ChildNodes.FindNode('PakkeKontrol').ChildNodes.FindNode('Navn').Text;    AfsenderNavn := PakkeKontrolNode.ChildNodes.FindNode('AfsenderNavn').Text;
84    Vejnavn := xmlDoc.ChildNodes.FindNode('PakkeKontrol').ChildNodes.FindNode('Vejnavn').Text;    AfsenderAdresse := PakkeKontrolNode.ChildNodes.FindNode('AfsenderAdresse').Text;
85    Postnr := xmlDoc.ChildNodes.FindNode('PakkeKontrol').ChildNodes.FindNode('Postnr').Text;    AfsenderPostnr := PakkeKontrolNode.ChildNodes.FindNode('AfsenderPostnr').Text;
86    
87    
88    PakkeshopNr := xmlDoc.ChildNodes.FindNode('PakkeKontrol').ChildNodes.FindNode('PakkeshopNr').Text;    PakkeshopNr := PakkeKontrolNode.ChildNodes.FindNode('PakkeshopNr').Text;
89    PakkeshopNavn := xmlDoc.ChildNodes.FindNode('PakkeKontrol').ChildNodes.FindNode('PakkeshopNavn').Text;    PakkeshopNavn := PakkeKontrolNode.ChildNodes.FindNode('PakkeshopNavn').Text;
90    PakkeshopAddr := xmlDoc.ChildNodes.FindNode('PakkeKontrol').ChildNodes.FindNode('PakkeshopAddr').Text;    PakkeshopAddr := PakkeKontrolNode.ChildNodes.FindNode('PakkeshopAddr').Text;
91    PakkeshopPostnr := xmlDoc.ChildNodes.FindNode('PakkeKontrol').ChildNodes.FindNode('PakkeshopPostnr').Text;    PakkeshopPostnr := PakkeKontrolNode.ChildNodes.FindNode('PakkeshopPostnr').Text;
92    PakkeshopTurid := xmlDoc.ChildNodes.FindNode('PakkeKontrol').ChildNodes.FindNode('PakkeshopTurid').Text;    PakkeshopTurid := PakkeKontrolNode.ChildNodes.FindNode('PakkeshopTurid').Text;
93    
94      PakkeshopSted := PakkeKontrolNode.ChildNodes.FindNode('PakkeshopSted').Text;
95    
96      Koreliste := PakkeKontrolNode.ChildNodes.FindNode('Koreliste').Text;
97    
98      Shop2Direkte := GetOptionalValue(PakkeKontrolNode, 'Shop2Direkte', '');
99    
100    
101      ZPL := GetOptionalValue(PakkeKontrolNode, 'ZPL', '');
102    
103      SimpelLinie1 := GetOptionalValue(PakkeKontrolNode, 'SimpelLinie1', '');
104      SimpelLinie2 := GetOptionalValue(PakkeKontrolNode, 'SimpelLinie2', '');
105      SimpelLinie3 := GetOptionalValue(PakkeKontrolNode, 'SimpelLinie3', '');
106    
107    end;
108    
109    function TLabelData.GetOptionalValue(ParentNode: Xml.XMLIntf.IXMLNode; NodeName: String; DefaultValue: String) : String;
110    var
111      TmpNode:          Xml.XMLIntf.IXMLNode;
112    begin
113      TmpNode := ParentNode.ChildNodes.FindNode(NodeName);
114      if TmpNode <> nil then
115      begin
116        result := TmpNode.Text;
117      end
118      else
119      begin
120        result := DefaultValue;
121      end;
122    end;
123    
124    function TLabelData.GetValue(ParentNode: Xml.XMLIntf.IXMLNode; NodeName: String) : String;
125    begin
126      result := ParentNode.ChildNodes.FindNode(NodeName).Text;
127  end;  end;
128    
129    

Legend:
Removed from v.2668  
changed lines
  Added in v.3095

  ViewVC Help
Powered by ViewVC 1.1.20