Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.18;
Скачать: CL | DM;

Вниз

Отчеты через Rave   Найти похожие ветки 

 
erusto   (2004-03-31 01:09) [0]

Осваиваю Rave. На форме таблица, в которой данные в ячейках
заносятся с помощью Edit-ов. Каким образом и какому компонету в готовом шаблоне Rave присвоить
значения Edit.Text? База данных не используется - прямой ввод на форме и далее на принтер.


 
Sun bittern ©   (2004-03-31 09:34) [1]

>> На форме таблица, в которой данные в ячейках
заносятся с помощью Edit-ов.

Предположим у тебя TStringGrid. Для этого тебе на форму нужно бросить: TRvProject; TRvSystem; TRvCustomConnection.

TRvCustomConnection - события
***
OnOpen
 RC := 0; // Глобальная переменная, считает сколько наборов данных (строк) занесено в TRvCustomConnection
 // Определяет максимум набора данных (строк) в TRvCustomConnection
 Connection.DataRows := StringGrid1.RowCount - 2;
***
OnGetCols
 // Определяем какие будут поля (какого типа)
 with Connection do
 begin
   WriteField("PosName", dtString, 30, "PosName", "");
   WriteField("Setting", dtString, 20, "Setting", "");
 end;
***
OnGetRow
 var
   I: Integer;
begin
 with Connection do
 begin
 // Порядок записи данных в поля должен строго соответсвовать
 // порядку в котором эти поля создавались
   if RC <= StringGrid1.RowCount - 2 then
     for I := 0 to StringGrid1.ColCount - 1 do
       WriteStrData("", StringGrid1.Cells[I, RC + 1]);
 end;
 Inc(RC);
end;


 
ekusto   (2004-04-01 00:14) [2]

Спасибо за ответ. Но немного не то.
У меня таблица, где ячейки - Edit-ы.
Мне просто надо назначить значение Text Edit-а
соответствующему полю в уже готовом шаблоне Rave,
как, к примеру, назначаются помещаемые в шаблон
данные с использованием полей базы данных.
Но моя прога не использует базы (набор данных).
А я не могу указать шаблону Rave где взять эти Edit-ы и
куда их сунуть (предвкушаю реакцию!).


 
Sun bittern ©   (2004-04-01 06:49) [3]

ekusto   (01.04.04 00:14) [2]

http://www.delphimaster.ru/cgi-bin/download.pl?look=1&id=1078393953&n=1

Небольшой кусманчик из моей программы (надеюсь я верно тебя понял, не будет работать спрашивай, но вроде все написал):

uses RvClass, RvCsStd;

var
 TmpRavePage: TRavePage;

TmpRavePage := RvProject1.ProjMan.ActiveReport.PageList.First;
 for I := 0 to TmpRavePage.ComponentCount - 1 do
 begin
   if TmpRavePage.Components[I] is TRaveText then
   begin
     ...
     if TRaveText(TmpRavePage.Components[I]).Tag = 1 then
       if H2 = 19 then TRaveText(TmpRavePage.Components[I]).Text := "Первая смена" else TRaveText(TmpRavePage.Components[I]).Text := "Вторая смена";
     ...
   end;
 end;
 RvProject1.ExecuteReport("ReportViolation");



Страницы: 1 вся ветка

Текущий архив: 2004.04.18;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.036 c
7-1076673135
AlexMan
2004-02-13 14:52
2004.04.18
Перехват обращения к реестру.


1-1080677294
Mishenka
2004-03-31 00:08
2004.04.18
Как в методе получить указатель на перем-ю, которая вызвала метод


1-1080459979
Neep
2004-03-28 11:46
2004.04.18
Помогите разобраться с CallBack


14-1080548648
Temp
2004-03-29 12:24
2004.04.18
Delphi VS Builder


7-1077179495
CC
2004-02-19 11:31
2004.04.18
Как поместить иконку в Tray ?