Datalab функции
CallQRBeforeBandPrint
Процедурата CallQRBeforeBandPrint повикува програмски код во PANTHEON напишан за оваа банда. Напишан е во настанот на бандата OnBeforePrint.
Хедер
процедура CallQRBeforeBandPrint(Sender: TfrxComponent; var PrintBand: Boolean);
Пример
процедура TitleOnBeforePrint(Sender: TfrxComponent);
почни
CallQRBeforeBandPrint(Sender, TfrxBand(sender).visible);
крај;
dlBoolToYesNo
Функцијата dlBoolToYesNo враќа 'Да' ако вредноста на параметарот е True, инаку враќа 'Не'.
Хедер
функција dlBoolToYesNo(bCondition: Boolean): String;
Пример
Во извештаите за сервисни изјави враќа дали ставката е под гаранција.
[dlBoolToYesNo(<qReportIzpis."anWarrenty"> = 'T')]
dlDiv
Функцијата dlDiv враќа делот од два броја ако вториот параметар не е 0. Ако вториот параметар е 0, враќа 0.
Хедер
функција dlDiv(nNum1, nNum2: Real): Real;
Пример
[dlDiv(<qReportIzpis."anQty">, <qReportIzpis."anUMToUM2">)]
dlDPAExecute
Функцијата dlDPAExecute извршува PANTHEON аплет (DPA). Параметарот е ID на DPA.
Хедер
процедура dlDpaExecute(cKey: String);
Пример
dlDpaExecute('A000042');
dlGetCurrentUserID и dlGetCurrentUserName
Функцијата dlGetCurrentUserID враќа ID на тековниот корисник.
Функцијата dlGetCurrentUserName враќа име на тековниот корисник.
Хедери
функција dlGetCurrentUserID: String;
функција dlGetCurrentUserName: String;
Пример
Тековен корисник:
[dlGetCurrentUserID] - [dlGetCurrentUserName]
dlGetKeyViewFromKey
Функцијата dlGetKeyViewFromKey конвертира неконвертиран клуч на документ во конвертиран во зависност од поставките на административната табла.
Хедер
функција dlGetKeyViewFromKey(cKey: String);
Пример
[dlGetKeyViewFromKey(<qReportIzpis."acKey">)]
dlGetPostCode
Функцијата dlGetPostCode враќа поштенски код без префикс или постфикс.
Хедер
функција dlGetPostCode(cKey: String);
Пример
[dlGetPostCode(<qReportIzpis1."acPost">)]
dlGetSaldoStr
Функцијата dlGetSaldoStr конвертира број во нотација со карактерот D (што значи дебит) или C (што значи кредит) на крајот. Се користи во модулот Деметер (Финансии).
Ако првиот параметар е поголем од 0, враќа го првиот параметар и карактерот D на крајот.
Ако првиот параметар е помал од 0, враќа апсолутната вредност на првиот параметар, и карактерот C на крајот.
Ако првиот параметар е 0 и вториот параметар е B, враќа текст 'BALANCED'.
Ако првиот параметар е 0 и вториот параметар е НЕ B, враќа го вториот параметар.
Хедер
функција dlSaldoStr(nSaldo: Currency; cStr: String): String;
Примери
[dlSaldoStr(nSaldo,'0')]
[dlSaldoStr(SUM(<qReportIzpis."anDebit"> - <qReportIzpis."anCredit">),'B')]
dlGetTempDirectory
Функцијата dlGetTempDirectory враќа привремена Windows директорија. Ова е удобно кога работите со фајлови бидејќи е единствената папка во која пишувањето и читањето на фајлови е секогаш можно.
Хедер
функција dlGetTempDirectory: String;
Пример
Привремена директорија на Windows: [dlGetTempDirectory]
dlLoadCompanyImage
Процедурата dlLoadCompanyImage вчитува логото на вашата компанија дефинирано во административната табла во објект за слика на печат.
Хедер
процедура dlLoadCompanyImage(Picture: TfrxPictureView);
Пример
Ставете го објектот за слика именуван Picture1 на произволен печат и напишете во неговиот настан OnBeforePrint:
процедура Picture1OnBeforePrint(Sender: TfrxComponent);
почни
dlLoadCompanyImage(Picture1);
крај;
dlLoadProductImage
Процедурата dlLoadProductImage вчитува логото на ставката дефинирано во регистарот на ставките во објект за слика на печат.
Хедер
процедура dlLoadProductImage(Picture: TfrxPictureView; cIdent: String);
Пример
Ставете го објектот за слика именуван Picture1 на произволен печат и напишете го настанот OnBeforePrint:
процедура Picture1OnBeforePrint(Sender: TfrxComponent);
почни
dlLoadProductImage(Picture1, <qReportIzpis."acIdent">);
крај;
dlLoadUserSignature
Процедурата dlLoadUserSignature вчитува потписот на корисникот дефиниран во регистарот на предмети во објект за слика на печат.
Хедер
процедура dlLoadUserSignature(Picture: TfrxPictureView; cIdent: String);
Пример
За да го прикажете потписот на тековниот корисник, ставете го објектот за слика именуван Picture1 на произволен печат и напишете го настанот OnBeforePrint:
процедура Picture1OnBeforePrint(Sender: TfrxComponent);
почни
dlLoadUserSignature(Picture1, < dlGetCurrentUserID>);
крај;
За да го прикажете потписот на 1ви потписник на печатот на фактурата, ставете го објектот за слика именуван Picture1 на печатот и напишете го настанот OnBeforePrint.
процедура Picture1OnBeforePrint(Sender: TfrxComponent);
почни
dlLoadUserSignature(Picture1,<qReportIzpisD."anSigner1">);
крај;
dlNumberInWords
Функцијата dlNumberInWords враќа број како зборови.
Првиот параметар на функцијата е број (монетарна вредност).
Вториот параметар е валута.
Третиот параметар е јазикот на кој текстот треба да биде вратен. Ако третиот параметар е празен, враќа резултатот на јазикот на програмата. Ако јазикот не постои, враќа празен текст.
Хедер
функција dlNumberInWords(nNumber: Currency; cCurrency, cLanguage: String): String;
Пример
Резултат на англиски без оглед на јазикот на програмата: илјада EUR 00/100:
[dlNumberInWords(1000,'EUR','EN')]
Печати текст за плаќање на фактура издадена на јазикот на програмата:
[dlNumberInWords(<qReportIzpisD."anForPay">, <qReportIzpisD."acCurrency">, '')]
Печати текст за плаќање на англиски без оглед на јазикот на програмата:
[dlNumberInWords(dlTextToFloat(fZaPlacilo.Text), <qReportIzpisD."acCurrency">, 'EN')]
dlQuotedStr
Процедурата dlQuotedStr имитира ја функцијата Delphi QuotedStr за решавање случаи каде што постојат наводници (') во текстот на податоците.
Хедер
процедура dlQuotedStr(Str: String): String;
Пример
[SQLExp('select acCode from tHE_SetItemExtItemSubj where acSubject = ' + dlQuotedStr(<qReportIzpis."acSubject">) + ' ')]
dlStringReplace
Функцијата dlStringReplace имитира ја функцијата Delphi StringReplace. Разликата е што флаговите се пишуваат како низи наместо како опционални елементи. Ако опции не се користат, мора да се користат празни низи.
флагови
rfReplaceAll – променете ги сите пронајдени низи, инаку променете само првото појавување на текстот.
rfIgnoreCase – не разликувајте мали и големи букви.
Хедер
функција dlStringReplace(const S, OldPattern, NewPattern: String; Flags1, Flag2: String): String;
Пример
На печатите на салдо, каде што кодовите на активноста можат да се напишат со точка (на пример 15.110) или без неа (на пример 15110), точката ќе биде избришана ако постои.
[dlStringReplace(<qReportIzpis2."acActivityCode">,'.','','rfReplaceAll','')]
dlStrToFloatDef
Функцијата dlStrToFloatDef конвертира текст во децимален број. Ако конверзијата не успее, враќа го вториот параметар.
Хедер
функција dlStrToFloatDef(S: String; Default: Extended): Extended;
Пример
[dlStrToFloatDef(SQLExp('select SUM(anAmount) from tHE_SADCost where acKey = ''' + <qReportIzpis."acKey"> + ''''), 0)]
dlStrToIntDef
Функцијата dlStrToIntDef конвертира текст во цели броеви. Ако конверзијата не успее, враќа го вториот параметар.
Хедер
функција dlStrToIntDef(S: String; Default: Integer): Integer;
Пример
[dlStrToIntDef(FormatDateTime('d',<qReportIzpis."adDateDue">),0)]
dlTextToFloat
Функцијата dlTextToFloat конвертира текст со разделувач на илјадници во децимален број. Ако конверзијата не успее враќа 0.
Хедер
функција dlTextToFloat(S: String): Extended;
Пример
Печати ја точната сума без разделувач на илјадници на фактурите за издавање на стоки.
[dlTextToFloat(fTrosarina.Text)]
ExtractMonth и ExtractWeek
Функцијата ExtractMonth враќа месец од одредена дата во форма на број.
Функцијата ExtractWeek враќа недела од одредена дата во форма на број.
Хедери
функција ExtractMonth(Date: TDate): String;
функција ExtractWeek(Date: TDate): String;
Пример
Тековен месец и недела:
[ExtractMonth(DATE)]
[ExtractWeek(DATE)]
GetFormValue
Функцијата GetFormValue враќа вредноста на објектот во PANTHEON прозорецот. Параметарот е името на објектот вклучувајќи го PANTHEON прозорецот на кој е поставен. Ако објектот не постои или не е создаден, функцијата враќа празна низа.
Хедер
функција GetFormValue(FormComponentName: String): Variant;
Пример
Печати ја вредноста во полето за уредување за кодот на ставката на залиха на датумот на печатот:
[GetFormValue('PrometIzpisTrenZaloga.fIdent')]
SQLExp
Функцијата SQLExp враќа резултат од SQL изјавата извршена на базата на податоци.
Хедер
функција SQLExp(sql: String): String;
Пример
Градот на нашата компанија:
[SQLExp('select dbo.fHE_GetOurCompanyCity()')]
Второто име на нашата компанија:
[SQLExp('select S.acName2 from tHE_SetSubj S, tPA_SysParam P where S.acSubject = P.acOurCompany')]
GetOurCompany
Функцијата GetOurCompany враќа ID на предметот или име 2 на нашата компанија според поставката 'Користи име 2 како Име на предмет' во административната табла на табот Поставки | Параметри на програмата | Компанија | Текстови на документи.
Хедер
функција GetOurCompany: String;
Пример
Име на нашата компанија: [GetOurCompany]
GetSubject
Функцијата GetSubject враќа ID или име 2 на предметот според поставката 'Користи име 2 како Име на предмет' во административната табла на табот Поставки | Параметри на програмата | Компанија | Текстови на документи.
Во случај кога поставката НЕ е проверена, враќа вредност на првиот параметар.
Ако поставката Е проверена, функцијата враќа вториот параметар ако не е празен. Ако вториот параметар е празен, враќа име 2 на предметот. Ако второто име на предметот е во податочниот сет на извештајот, препорачуваме да ја користите првата опција бидејќи е побрза.
Хедер
функција GetSubject(cSubject, cName2: String): String;
Примери
[GetSubject(<qSubjIzpis."acSubject">, <qSubjIzpis."acName">)]
[GetSubject(<qSubjIzpis."acSubject">, '']
dlGetSQLString
Функцијата dlGetSQLString враќа SQL клаузула која е единствениот параметар.
Хедер
функција dlGetSQLString(ADataset: TfrxDataset): String;
Примери
Најчестата употреба на функцијата dlGetSQLStringе да се прикаже целата SELECT клаузула која е специфицирана за избраниот податочен сет кога извештајот е започнат. Најчесто прикажуваме податочен сет кој припаѓа на бандата именувана Детали:
почни
ShowMessage(dlGetSQLString(Detail.Dataset));
крај.
Можете исто така да повикате податочен сет по име како што е прикажано во следниот пример.
почни
ShowMessage(dlGetSQLString(report.GetDataset('qReportIzpis')));
крај.