Primeri Datalab funkcij
Primeri Datalab funkcij
V tem poglavju so navedeni primeri za funkcije v FastReportu, ki so bile napisane posebej za Pantheon 5.5 in jih ni v standardnem FastReportu. Opis funkcij si lahko ogledate v Vodiču po Datalab PANTHEON-u 5.5.
Primer uporabe funkcije CallQRBeforeBandPrint
procedure TitleOnBeforePrint(Sender: TfrxComponent);
begin
CallQRBeforeBandPrint(Sender, TfrxBand(sender).visible);
end;
Primer uporabe funkcije dlBoolToYesNo
Na izpisu obračuna servisa izpišemo, ali je izdelek v garanciji
[dlBoolToYesNo(<qReportIzpis."anWarrenty"> = 'T')]
Primer uporabe funkcije dlDiv
[dlDiv(<qReportIzpis."anQty">, <qReportIzpis."anUMToUM2">)]
Primer uporabe funkcije dlDpaExecute
dlDpaExecute('A000042');
Primer uporabe funkcij dlGetCurrentUserID in dlGetCurrentUserName
[dlGetCurrentUserID] - [dlGetCurrentUserName]
Primer uporabe funkcij dlGetKeyViewFromKey
[dlGetKeyViewFromKey(<qReportIzpis."acKey">)]
Primer uporabe funkcij dlGetSaldoStr
[dlSaldoStr(nSaldo,'0')]
[dlSaldoStr(SUM(<qReportIzpis."anDebit"> - <qReportIzpis."anCredit">),'B')]
Primer uporabe funkcij dlGetSQLString
Najpogostejši primer uporabe funkcije je, da se ob zagonu izpisa v oknu izpiše celoten SELECT stavek, ki je določen za izbrani dataset. Največkrat se izpiše SELECT stavek, ki pripada pasu z imenom Detail:
begin
ShowMessage(dlGetSQLString(Detail.Dataset));
end.
Primer uporabe funkcij dlIsORA
Server is [IIF(dlIsORA,'ORACLE','MS-SQL')]
Primer uporabe funkcij dlLoadCompanyImage
Na poljuben izpis damo slikovni objekt Picture1 in v njegovem dogodku OnBeforePrint napišemo:
procedure Picture1OnBeforePrint(Sender: TfrxComponent);
begin
dlLoadCompanyImage(Picture1);
end;
Primer uporabe funkcij dlLoadProductImage
Sliko identa na izpisu 16B, ki je v programu v meniju Blago | Obračun izdanih računov | Obračun računov in razlike v ceni, prikažemo tako, da damo na izpis na pas IdentFooter slikovni objekt Picture1 in mu priredimo dogodek Picture1OnBeforePrint .
V kodo napišemo:
procedure Picture1OnBeforePrint(Sender: TfrxComponent);
begin
dlLoadProductImage(Picture1, <qReportIzpis."acIdent">);
end;
Primer uporabe funkcij dlNumberInWords
[dlNumberInWords(1000,'EUR','SI')]
Izpis ne glede na jezik in lokalizacijo programa: tisoč EUR 00/100
[dlNumberInWords(<qReportIzpisD."anForPay">, <qReportIzpisD."acCurrency">, '')]
[dlNumberInWords(dlTextToFloat(fZaPlacilo.Text), <qReportIzpisD."acCurrency">, 'HR')]
Primer uporabe funkcij dlStringReplace
Na izpisu 10A, ki je v programu v meniju Blago | Obračun izdanih računov dodamo v pas z imenom Detail izpišemo serijske številke, ki pripadajo izbrani poziciji in izbranemu računu. Funkcija SQLExp vrne vse zapise, vsakega v svojo vrsto, mi pa želimo zapisati serijske številke v eni vrsti, ločene z vejicami.
[dlStringReplace(SQLExp('SELECT acSerialNo, FROM tHE_MoveItemSerialNo WHERE acKey = ''' + <qReportIzpis."acKey"> + ''' AND acIdent = ''' + <qReportIzpis."acIdent"> + ''' GROUP BY acSerialNo UNION ALL SELECT acSerialNo FROM tHE_OrderItemSerialNo WHERE acKey = ''' + <qReportIzpis."acKey"> + ''' AND acIdent = ''' + <qReportIzpis."acIdent"> + ''' GROUP BY acSerialNo ORDER BY acSerialNo'), #13#10, ', ', 'rfReplaceAll', '')]
Primer uporabe funkcij dlStrToFloatDef
[dlStrToFloatDef('',0)]
Primer uporabe funkcij dlStrToIntDef
[dlStrToIntDef('',0)]
Primer uporabe funkcij dlTextToFloat
Na izpisu 241, ki je v programu v meniju Blago | Izdaja | Dokument (npr. 3000 – Veleprodaja), pretvorimo znesek trošarine v število jo izpišemo brez skupinskega separatorja.
[dlTextToFloat(fTrosarina.Text)]
Primer uporabe funkcij ExtractMonth in ExtractWeek
[ExtractMonth(<qReportIzpisD."adDate">)]
[ExtractWeek(<qReportIzpisD."adDate">)]
Primer uporabe funkcije GetFormValue
Ident na izpisu trenutne zaloge:
[GetFormValue('PrometIzpisTrenZaloga.fIdent')]
Primer uporabe funkcije GetOurCompany
Naziv našega podjetja: [GetOurCompany]
Primer uporabe funkcije GetSubject
[GetSubject(<qSubjIzpis."acSubject">, <qSubjIzpis."acName">)]
[GetSubject(<qSubjIzpis."acSubject">, '']
Primer uporabe funkcije SQLExp
Drugi naziv našega podjetja:
[SQLExp('select S.acName2 from tHE_SetSubj S, tPA_SysParam P where S.acSubject = P.acOurCompany')]