Lieferschein mit Sets und Bildern: Unterschied zwischen den Versionen
Aus GEVITAS
(→Der Code dazu) |
|||
| Zeile 38: | Zeile 38: | ||
| − | procedure DetailData1OnBeforePrint(Sender: TfrxComponent); | + | procedure DetailData1OnBeforePrint(Sender: TfrxComponent); |
| − | begin | + | begin |
// Erst mal Grundstellung für alles, was unten verändert werden kann: | // Erst mal Grundstellung für alles, was unten verändert werden kann: | ||
DetailData1.Visible := True; | DetailData1.Visible := True; | ||
| Zeile 61: | Zeile 61: | ||
end; | end; | ||
end; | end; | ||
| − | end; | + | end; |
| + | == Die Bilder == | ||
| + | Auf dem Band liegt eine Image-Komponente, die mit diesem Code versehen ist: | ||
| + | |||
| + | |||
| + | procedure SubdetailData1OnBeforePrint(Sender: TfrxComponent); | ||
| + | begin | ||
| + | if <ArtikelBild."DateiName"> > '' then | ||
| + | begin | ||
| + | if ( Pos( '.JPG',Uppercase(<ArtikelBild."DateiName">) ) > 0 ) | ||
| + | or ( Pos( '.JPEG',Uppercase(<ArtikelBild."DateiName">) ) > 0 ) | ||
| + | or ( Pos( '.PNG',Uppercase(<ArtikelBild."DateiName">) ) > 0 ) | ||
| + | or ( Pos( '.BMP',Uppercase(<ArtikelBild."DateiName">) ) > 0 ) | ||
| + | or ( Pos( '.WMF',Uppercase(<ArtikelBild."DateiName">) ) > 0 ) | ||
| + | or ( Pos( '.EMF',Uppercase(<ArtikelBild."DateiName">) ) > 0 ) | ||
| + | or ( Pos( '.ICO',Uppercase(<ArtikelBild."DateiName">) ) > 0 ) then | ||
| + | PictureArtikel.Picture.LoadFromFile( trim(<ArtikelBild."Pfadname">) + trim(<ArtikelBild."Dateiname">) ) | ||
| + | else | ||
| + | PictureArtikel.Picture := Nil; | ||
| + | end | ||
| + | else | ||
| + | PictureArtikel.Picture := Nil; | ||
| + | end; | ||
== Standard-Reports == | == Standard-Reports == | ||
Version vom 20. November 2020, 23:06 Uhr
Inhaltsverzeichnis
1 Allgemeines
Hier wird die Verwendung eines Reports für einen Lieferschein beschrieben, der Sets besonders hervorheben soll und Artikel-Bilder anzeigt.
2 Ergebnis
So soll der Lieferschein aussehen:
(1) Position mit dem Set-Häuptling in Fettschrift
(2) Position mit den Set-Positionen eingerückt nicht fett
(3) Position ohne Set nicht eingerückt, nicht fett
(4) Artikel-Bilder
3 Der Report dazu
4 Das Ereignis OnBeforePrint
5 Der Code dazu
procedure DetailData1OnBeforePrint(Sender: TfrxComponent); begin // Erst mal Grundstellung für alles, was unten verändert werden kann: DetailData1.Visible := True; ChildDetailSetPos.Visible := False; memoLieferscheinPositionenBezeichnung.Font.Style := 0;
// Besonderheiten bei Set's:
if <AuftrPosZuLieferschPos."SetNr"> > 0 then
begin
// Position kommt aus einem Set! Schrift in Fett:
if StrToInt( <AuftrPosZuLieferschPos."SetNrHauptArtikel"> ) > 0 then
begin
// Es ist der Hauptartikel des Set's:
memoLieferscheinPositionenBezeichnung.Font.Style := fsBold; // Fett
end
else
begin
// Es ist NICHT der Hauptartikel des Set's:
DetailData1.Visible := False; // Das eigentliche Detail-Band ausschalten. Dazu Option "Child drucken wenn unsichtbar!" einschalten!
ChildDetailSetPos.Visible := True; // Das Child-Band mit den Einrückungen einschalten.
end;
end;
end;
6 Die Bilder
Auf dem Band liegt eine Image-Komponente, die mit diesem Code versehen ist:
procedure SubdetailData1OnBeforePrint(Sender: TfrxComponent);
begin
if <ArtikelBild."DateiName"> > then
begin
if ( Pos( '.JPG',Uppercase(<ArtikelBild."DateiName">) ) > 0 )
or ( Pos( '.JPEG',Uppercase(<ArtikelBild."DateiName">) ) > 0 )
or ( Pos( '.PNG',Uppercase(<ArtikelBild."DateiName">) ) > 0 )
or ( Pos( '.BMP',Uppercase(<ArtikelBild."DateiName">) ) > 0 )
or ( Pos( '.WMF',Uppercase(<ArtikelBild."DateiName">) ) > 0 )
or ( Pos( '.EMF',Uppercase(<ArtikelBild."DateiName">) ) > 0 )
or ( Pos( '.ICO',Uppercase(<ArtikelBild."DateiName">) ) > 0 ) then
PictureArtikel.Picture.LoadFromFile( trim(<ArtikelBild."Pfadname">) + trim(<ArtikelBild."Dateiname">) )
else
PictureArtikel.Picture := Nil;
end
else
PictureArtikel.Picture := Nil;
end;
7 Standard-Reports


