Главная страница
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.47 MB
Время: 0.022 c
3-1080138624
alex123
2004-03-24 17:30
2004.04.18
Список готовых DataSet Actions в ActionList не полон?


1-1080473055
Александр из Минска
2004-03-28 15:24
2004.04.18
КАК разбить на листы при печати TStringGrid?


6-1076660282
Layner
2004-02-13 11:18
2004.04.18
Можно ли создать TIdSMTP в безформеном приложении? (=сервис NT)


14-1080183367
Думкин
2004-03-25 05:56
2004.04.18
С днем рождения! 25 марта.


1-1081012325
DADUD
2004-04-03 21:12
2004.04.18
Открыть HTML страничку в определённом окне