Страница 1 из 1

FastReport форма добавить поле из БД

Добавлено: 18 апр 2011, 19:22
RavageR
Добрый день.
Много смотрел по форуму и в интернете, но все же так окончательно и не решил как проще всего вытянуть поле из БД Галактики в уже имеющую печатную форму документа реализованную на FR. В частности в FR форму накладной нужно вытащить значение цены из прейскуранта отличного от того, на основании которого выписана эта накладная. Т.е. накладная и прайс вообще не связаны.
Так вот как мне проще всего это сделать в FR.
Править имеющийся поток данных или можно в самом FR Накладной это сделать? Или может еще какой способ есть.
Заранее всем благодарен за ответ.

Re: FastReport форма добавить поле из БД

Добавлено: 18 апр 2011, 19:42
m0p3e
Докомпиляцией интерфейса и потока в нем.

Код: Выделить всё

alter interface PrintT13;

overload
 datastream FRTabel13;
end;

DataStream FRTABEL13
(
 Table inherited::FRHEADER
 (
   Table inherited::FRTABPARTS
   (
    Table inherited::FRPARTDETAIL
    (
    );
   );
 );
)
end;

Re: FastReport форма добавить поле из БД

Добавлено: 13 май 2011, 15:24
RavageR
m0p3e писал(а):Докомпиляцией интерфейса и потока в нем.

Код: Выделить всё

alter interface PrintT13;

overload
 datastream FRTabel13;
end;

DataStream FRTABEL13
(
 Table inherited::FRHEADER
 (
   Table inherited::FRTABPARTS
   (
    Table inherited::FRPARTDETAIL
    (
    );
   );
 );
)
end;
Добрый день.
Подскажите где именно это делается? Куда зайти что запустить? а дальше уже разберусь. А также что можно по этому поводу почитать? Спасибо.

Re: FastReport форма добавить поле из БД

Добавлено: 13 май 2011, 16:18
m0p3e
RavageR писал(а):Подскажите где именно это делается? Куда зайти что запустить? а дальше уже разберусь. А также что можно по этому поводу почитать? Спасибо.
Делается обычный файл. Компилируется vip-ом. Если есть опыт программирования, то проблем никаких возникнуть не должно. Исходный поток проще всего увидеть в консоли управления.
Насчет почитать даже не знаю. Может LaaLaa подскажет. Возможность докомпиляции FR потоков появилась сравнительно недавно.

Re: FastReport форма добавить поле из БД

Добавлено: 21 мар 2012, 17:55
savov
Подскажите, спецы!
Вот я докомпилирую фейс, например, L_ADVREP::DOGURGENT.
Вижу там броузеры BRDOGOVOR, BRURGENTM. Первый содержит список договоров и нужных мне полей, которые надо выводить, второй содержит список мероприятий по этим договорам. Мне надо в отчет вывести все договора и информацию по ним(первый броузер) и ниже перечень мероприятий к каждому договору. Т.е. структура мастер-дитейл.
Так вот, я должен что писать в соответствии с данным примером

Код: Выделить всё

alter interface DOGURGENT;

overload
datastream FRTabel13;
end;

DataStream FRTABEL13
(
Table inherited::FRHEADER
(
   Table inherited::FRTABPARTS
   (
    Table inherited::FRPARTDETAIL
    (
    );
   );
);
)
end;
названия этих таблиц? Датастрим должен иметь некое уже определенное название или мое? нужно ли перекрывать handleevent?
Или надо делать свою вьюху и связывать с существующим датастримом? Как, кстати, узнать его название имея только конфигуратор в распоряжении?

Т.е. поясните сам принцип докомпиляции потока.

Re: FastReport форма добавить поле из БД

Добавлено: 21 мар 2012, 18:38
oiko
Я бы не заморачивался с разбором того что есть а написал собственный фейс для отчета передавая туда нрек договора,
перехватив событие печати или введя свою кнопку. Вы же не ставите задачу угодить всем а решаете конкретный пример.
И сопровождать его проще.

Re: FastReport форма добавить поле из БД

Добавлено: 21 мар 2012, 18:42
savov
Дело в том, что фейс Галактики имеет кроме хорошего представления информации кучу фильтров, к нем уже привык пользователь. Логично печатать из него. Да и ваять свой фейс с разными фильтрами тоже не охота. Кроме того, учиться всегда пригодится, я думаю , тема перспективная.
Ну уж если не получу ответа быстро, то тогда по-старинке...

Re: FastReport форма добавить поле из БД

Добавлено: 23 мар 2012, 13:07
edward_K
ТАБЛИЦЫ МОЖНО ПОСМОТРЕТЬ В РЕДАКТИРОВАНИИ ФОРМЫ.Другой вопрос какой именн спосб вывода использует разработчик-чассто это как раз отдельный фейс идокомпилять нужно его