Lieferschein mit Sets und Bildern: Unterschied zwischen den Versionen

Aus GEVITAS
Wechseln zu: Navigation, Suche
(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

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:

LieferscheinSetsUndBilder 01Bsp.png

(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

LieferscheinSetsUndBilder 02Report.png


4 Das Ereignis OnBeforePrint

LieferscheinSetsUndBilder 03Ereigniss.png


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


8 Links