Всем привет! Поставил себе Фастрепор 2.53, нарисовал формочку, и хочу ее заполнить не из таблицы, а из формы. Как я понял там есть библиотека переменных, я создал переменную, бросил ее на форму. Щелкаю предварительный просмотр форма показывается, только без значений. Теперь из кода программы хочу заполнить данными переменную, но не знаю как? Предполагаю что где-то здесь frReport1.Dictionary. а вот чего дальне не могу найти.
Вторая проблема не могу заставить открыться отчет из программы.
Вот такой код использую
If frReport1.PrepareReport then
frReport1.ShowReport;
Какое-то окно маргнет быстро и ничего больше не происходит, опять же предполагаю, что это окно подготовки отчета.
Изучаю FastReport, нужна помощьч
Модераторы: Duncon, Naeel Maqsudov, Игорь Акопян, Хыиуду
-
- Сообщения: 407
- Зарегистрирован: 13 сен 2004, 12:05
- Откуда: Курган
- Контактная информация:
Чем проще - тем оригинальней, а значит гениально, т.к. все гениальное - просто!
Да! Кстати! Ctrl+V реально вставляет!!! ХDD

-
- Сообщения: 407
- Зарегистрирован: 13 сен 2004, 12:05
- Откуда: Курган
- Контактная информация:
Так, похоже чуток начал разбираться, чтобы вывести отчет, его нужно сохранить в файл, потом перед открытием отчета его загружать
frReport1.LoadFromFile('C:\Program Files\Borland\Delphi6\Projects\Untitled1.frf');
If frReport1.PrepareReport then
frReport1.ShowReport;
А чтобы присвоить к переменной значение нужно в коде написать следующее
frReport1.Dictionary.Variables.Value[1]:='1111';
Но, тут бы хотелось обращаться к переменной по ее имени, а не по индексу в списке...
frReport1.LoadFromFile('C:\Program Files\Borland\Delphi6\Projects\Untitled1.frf');
If frReport1.PrepareReport then
frReport1.ShowReport;
А чтобы присвоить к переменной значение нужно в коде написать следующее
frReport1.Dictionary.Variables.Value[1]:='1111';
Но, тут бы хотелось обращаться к переменной по ее имени, а не по индексу в списке...
Чем проще - тем оригинальней, а значит гениально, т.к. все гениальное - просто!
Да! Кстати! Ctrl+V реально вставляет!!! ХDD

-
- Сообщения: 407
- Зарегистрирован: 13 сен 2004, 12:05
- Откуда: Курган
- Контактная информация:
Вот проблемка, не могу присвоить переменной текст! Цифры присваиваются, а строки нет... что не так?
frReport1.Dictionary.Variables.Variable['Сумма_прописью']:=Edit25.Text;
frReport1.Dictionary.Variables.Variable['Фирма.ИНН']:=Edit8.Text;
Причем вот во втором случае все нормально, а в первом пишет неизвестный идентификатор 'Пятьсот'.
Мне нужно закидывать данные из Edit и Memo в переменные, все что цыфры - работает, а все что буквы нет.
frReport1.Dictionary.Variables.Variable['Сумма_прописью']:=Edit25.Text;
frReport1.Dictionary.Variables.Variable['Фирма.ИНН']:=Edit8.Text;
Причем вот во втором случае все нормально, а в первом пишет неизвестный идентификатор 'Пятьсот'.
Мне нужно закидывать данные из Edit и Memo в переменные, все что цыфры - работает, а все что буквы нет.

Чем проще - тем оригинальней, а значит гениально, т.к. все гениальное - просто!
Да! Кстати! Ctrl+V реально вставляет!!! ХDD

- Naeel Maqsudov
- Сообщения: 2570
- Зарегистрирован: 20 фев 2004, 19:17
- Откуда: Moscow, Russia
- Контактная информация:
Не обязательно. Если хотите, чтобы то что разрабатывается в DesignTime так сказать "вкомпилировалось" в EXE, то свойство StoreInDFM установите в True." писал(а):чтобы вывести отчет, его нужно сохранить в файл
Если переменной присваивается текстовая константа, то она должна быть заключена в одинарные кавычки. Что-то типа этого:" писал(а):пишет неизвестный идентификатор 'Пятьсот'.
frReport1.Dictionary.Variables.Variable['Сумма_прописью']:='''Пятьсот тридцать два''';
-
- Сообщения: 407
- Зарегистрирован: 13 сен 2004, 12:05
- Откуда: Курган
- Контактная информация:
Еще вопрос: как использовать функцию Count? В отчете сделал два банда, мастер детаил и мастер футтер, в мастере футтер кинул мемо и задал ей [COUNT(MasterData1)] все посчитала. А вот как в мастере данных сделать чтоб шло по порядку нумерация строк?
Еще одна штука, у меня выводится в отчете поля (ФИО,р/с,сумма кредита,срок кредита) как сделать, если сумма кредита равна 0 то не выводить всю строку?
Тут же, как посчитать сумму кредита у тех ФИО срок который равен 5 лет?
Мне нужны хотябы примеры подобного, а там уже соображу как к себе приковырять.
Еще одна штука, у меня выводится в отчете поля (ФИО,р/с,сумма кредита,срок кредита) как сделать, если сумма кредита равна 0 то не выводить всю строку?
Тут же, как посчитать сумму кредита у тех ФИО срок который равен 5 лет?
Мне нужны хотябы примеры подобного, а там уже соображу как к себе приковырять.
Чем проще - тем оригинальней, а значит гениально, т.к. все гениальное - просто!
Да! Кстати! Ctrl+V реально вставляет!!! ХDD

-
- Сообщения: 407
- Зарегистрирован: 13 сен 2004, 12:05
- Откуда: Курган
- Контактная информация:
т.е. в поле srok имеются значения либо 5 либо 2." писал(а):Тут же, как посчитать сумму кредита у тех ФИО срок который равен 5 лет?
Чем проще - тем оригинальней, а значит гениально, т.к. все гениальное - просто!
Да! Кстати! Ctrl+V реально вставляет!!! ХDD

-
- Сообщения: 340
- Зарегистрирован: 22 ноя 2004, 19:15
- Откуда: Минск
- Контактная информация:
procedure TfrmNagruzka.frxReport1GetValue(const VarName: String;
var Value: Variant);
begin
if CompareText(VarName,'MemoRasp')=0 then Value:=ElLabelRasp.Caption;
end;
На отчет поставь надпись с [MemoRasp]
var Value: Variant);
begin
if CompareText(VarName,'MemoRasp')=0 then Value:=ElLabelRasp.Caption;
end;
На отчет поставь надпись с [MemoRasp]
Просто набрать исходники может и любая обезьяна, а придумать и отладить не каждый человек.