Разбираю пример Структура предприятия(иерарх), на форме висит источник данных bda.task, что это за источник, что тут является библиотекой, что является классом.
2. Как можно скачать примеры с этого сайта(http://www.bestnet.ru/support/forum/?PAGE_NAME=read&FID=11&TID=4225), у меня почему-то не скачивается
3. С чего начинают разбор стандартных отчетов
4. Какой порядок загрузки методов (например есть форма, вначале выполняется метод Load, потом Activate, Init и т.д.)
5. Какой язык используется в Дизайнере отчетов..
begin
//messagebox(1,nl);
Line4.left := Name.left-Line5.Width;
if cury < Lev[NL] then begin
maxLevel:= DataSet1.Params['Ìàêñ_óðîâåíü'];
for i:=0 to maxLevel do begin
Это Паскаль? Xbase,VFP,HRB
// - это комментарий? или это комментарий {cIerFiltr && Иерархический фильтр}, или это команда, директива, что делает эта команда..
Как можно добавить в код "окно сообщений", попытался в код программы добавить messagebox("1111"), вышла ошибка...
Изменено: Serg St - 30.07.2013 12:43:32(добавление)
1.BDA.Task - это специальный источник для передачи параметров из БЭСТа в отчет. Поля этого источника собственно и являются передаваемыми параметрами. Поля источника задаются программистами, и разработчиками отчетов изменены быть не могут. Написан BDA.Task не на FOX-е, поэтому библиотеки и класса в явном виде у него не существует. Может использоваться в любом отчете, но список передаваемых через этот источник параметров будет меняться в зависимости от того, из какого пункта меню (или из какой формы) вызывается отчет.
3.Не совсем понятно какие отчеты Вы называете "стандартными", но разбор можно начать с используемых в в отчете источников. Посмотреть какие параметры в них передаются, какие поля возвращаются, к каким бэндам отчета они привязаны (а может и не привязаны, а используются для показа справочников в карточке запроса). Потом можно изучить логику работы карточки запроса (прежде всего основные скрипты: на событии OnActivate карточки запроса и на кнопке "Выполнить", если есть эта кнопка). Далее смотреть логику работы самого отчета - скрипты на бэндах. Но это довольно примерный алгоритм, можно делать и по-другому - как будет удобно.
4.У форм диалога (карточек запроса) для программирования доступен всего один метод - OnActivate. О каком порядке загрузки ?
5.Язык программирования в FastReport-е, строго говоря, свой собственный, но по синтаксису - это почти Паскаль.
Всё что после "двух косых" // и до конца строки - это комментарий
Всё что между фигурными скобками - тоже комментарий.
messagebox("1111") надо писать с одинарными кавычками: messagebox('1111')
Все строковые константы в этом языке пишутся в одинарных кавычках.
>3.Не совсем понятно какие отчеты Вы называете "стандартными",
Стандартные отчеты, это те, которые поставляются разработчиками БЭСТ, в составе пакета БЭСТ, и в которые не вносились изменения торонними разработчиками...
>О каком порядке загрузки ?
Например отчет Структура предприятия имеет три страницы, но каким то образом определяется, что форма на стр.2, будет запущено первой(по какому свойству?), далее на форме стр.2 положены два источника данных, какой из них запускается первым.., этот источник(запрос), запускается перед открытием формы, или после того, как нажимается кнопка Выполнить, но в кнопке Выполнить, нет команды на update запроса, в этой кнопке передаются только параметры
if StrToInt([text_ierarID.Text]) <> 0 then begin
reestr.params['nStruct']:=[text_ierarID.Text];
end;
reestr.params['nGrupp']:=1 ;
reestr.params['dEnd']:=d_Rep.date;
Где команда вывести стр.3 с отчетом тоже не ясно..
Вообще формы запускаются в том порядке, в котором они нарисованы в отчете, но исключение составляют те формы, в свойстве Caption которых первым указан символ "~". Эти формы автоматически не запускаются, их отображение выполняется вызовом функции showform(...), но они должны располагаться левее той формы из которой вызываются. Специальной команды для вывода стр.3 с отчетом не требуется. После нажатия кнопки "Выполнить" (MODALRESULT := mrOk) выполняется переход к следующей форме шаблона отчета, то есть непосредственно к стр.3.
Источники данных, которые используются в отчете открываются автоматически при первом к ним обращении (то есть уже после нажатия кнопки "Выполнить" и после отработки скрипта на этой кнопке, в котором устанавливаются значения параметров). Источники, которые используются для отображения справочников из карточки запроса, должны либо открываться в скрипте (обычно на событии OnActivate карточки запроса), либо у них надо сразу в инспекторе объектов установить свойство Active в True.