Получить список восторженных отчетов в delphi

#delphi #rave-reports

#delphi #восторженные отчеты

Вопрос:

У меня есть проект отчетов Rave, который содержит несколько отчетов (от 4 до 6), и я хотел бы добавить их в поле со списком, чтобы пользователь мог выбрать, какой отчет он хочет использовать. Как я могу получить список отчетов, которые я получил в проекте Rave Report, и передать его в поле со списком.

 procedure TForm1.Button4Click(Sender: TObject);
var
 i: Integer ;
 list : TStrings;
begin
   RvProject1.GetReportList(list,True)   ;
        for i := 0 to list.Count - 1 do

    ComboBox1.AddItem(list[i],nil);
end;
  

Я пробовал это, но это не работает, я получаю Access Violation at adress... ошибку.
Кто-нибудь может помочь мне с решением?

Комментарии:

1. Вы должны создать свой экземпляр list перед переходом к этому методу.

2. Спасибо, теперь это работает, я публикую решение.

Ответ №1:

Я нашел свое решение. Мне пришлось создать экземпляр list списка строк, переданного в GetReportList метод:

 procedure TForm1.Button4Click(Sender: TObject);
var
  list: TStringList;
begin
  list := TStringList.Create;
  try
    RvProject1.GetReportList(list, True);
    ComboBox1.Items.Assign(list);
  finally
    list.Free;
  end;
end;
  

Комментарии:

1. Без тестирования: RvProject1.GetReportList(ComboBox1.Items, True); без отдельного TStringlist экземпляра тоже может сработать.