Lazarus 3.0 (2023.12.21.)
Letöltés

  • Oldal:
  • 1

TÉMA:

LazReport string megjelenítés 2016 jan. 12 11:20 #1765

  • alidax
  • alidax profilkép
  • Új tag
  • Új tag
  • Hozzászólások: 1
  • Köszönetek: 0
Egy globális változó nélküli string írás:

frReport1.LoadFromFile('sablon.lrf');
frReport1.FindObject('Memo1').Memo.text:='Tetszőleges szöveg';
frReport1.ShowReport;

LazReport string megjelenítés 2015 dec. 02 20:57 #1628

  • JohnnyK
  • JohnnyK profilkép
  • Haladó forumozó
  • Haladó forumozó
  • Hozzászólások: 78
  • Köszönetek: 16
;)

LazReport string megjelenítés 2015 dec. 02 15:50 #1627

  • makgab
  • makgab profilkép Témaindító
  • Törzsgárda tag
  • Törzsgárda tag
  • Hozzászólások: 280
  • Köszönetek: 1

JohnnyK írta: ... létre kell hozni egy saját változót a File/Variables list helyen a Variables gombra nyomva. Meg kell adni egy változó csoport nevet, majd sortörés, space, majd beírni egy változó nevet. Ezt a változó nevet be tudod írni a Memo "értékének". Végül programból így tudsz neki értéket adni:


Konkrétan így használnám. Ez korrekt?
// datamodule: itt van a frReport-om is
procedure TDM.frReportGetValue(const ParName: String; var ParValue: Variant);
begin
  case ParName of
    // 'TELEPHELY' a változó neve a Report-ban
    'TELEPHELY': ParValue := Form1.TELEPHELY;
  end;
end;    
 
// form1
  ...
  public
    { public declarations }
    TELEPHELY: string;
  end;
  ...
 
prcedure Form1ButtonClick();
begin
   ...
  DM.frReport.LoadFromFile('telephely.lrf');
  ELADO := 'valami adat';
  DM.frReport.ShowReport;
  ...
end;
 

Tehát egy publikus változón keresztül adom át a TELEPHELY változó értékét a Reportban levő 'TELEPHELY' változónak. Működik is.
Nem vagyok benne biztos, hogy ez megfelelő (szép) mód.

LazReport string megjelenítés 2015 nov. 26 18:47 #1606

  • makgab
  • makgab profilkép Témaindító
  • Törzsgárda tag
  • Törzsgárda tag
  • Hozzászólások: 280
  • Köszönetek: 1
Köszönöm!
Egyébként Linux alatt is elég nagy lett a bináris a fenti egyszerű példával (form+button+frReport+frDesigner ~30MB). :) A strip-elt méret is ~11MB.

LazReport string megjelenítés 2015 nov. 26 14:58 #1605

  • JohnnyK
  • JohnnyK profilkép
  • Haladó forumozó
  • Haladó forumozó
  • Hozzászólások: 78
  • Köszönetek: 16
Igen, megadhatsz fix szöveget nekik jobb gomb és Edit segítségével.
Adhatsz változó tartalmú szöveget is nekik. Az egyszerűbbekre vannak beépített függvény meghívások (oldalszám, aktuális dátum és idő, stb...), ha ugyanitt a Variable gombra nyomsz, és a legördülő kategóriák közül az Other-t kiválasztod.
Adhatsz te magad által programból megadott egyéb más értékeket is, ehhez létre kell hozni egy saját változót a File/Variables list helyen a Variables gombra nyomva. Meg kell adni egy változó csoport nevet, majd sortörés, space, majd beírni egy változó nevet. Ezt a változó nevet be tudod írni a Memo "értékének". Végül programból így tudsz neki értéket adni:
TForm1.frReportGetValue(const ParName: String; var ParValue: Variant);
begin
  case ParName of
    'valtozonev': ParValue := 'Az én saját bármilyen értékem';
  end;
end;

LazReport string megjelenítés 2015 nov. 26 07:23 #1603

  • makgab
  • makgab profilkép Témaindító
  • Törzsgárda tag
  • Törzsgárda tag
  • Hozzászólások: 280
  • Köszönetek: 1
Üdv!
A lazreport-ban egy stringet szeretnék megjeleníteni. A tutorialban nem látok erre utalást(?).
Rá lehet dobni a designer-ben rectangle-t, amit pl. Memo1-nek nevez el.
Ezeknek a Memo-knak át lehet adni értéket (szöveget)?

  • Oldal:
  • 1