Dbcross

отредактировано 08:37 Раздел: FastReport 4.0
Добрый день!
В Demo есть пример MasterDetailUDS.. в нем используетс массив
Detail: array[1..15, 1..2] of ShortString = ( // master Id, detail name
('1', 'detail 1.1'), ('1', 'detail 1.2'), ('1', 'detail 1.3'),
('1', 'detail 1.4'), ('1', 'detail 1.5'), ('2', 'detail 2.1'),
('2', 'detail 2.2'), ('2', 'detail 2.3'), ('2', 'detail 2.4'),
('2', 'detail 2.5'), ('3', 'detail 3.1'), ('3', 'detail 3.2'),
('3', 'detail 3.3'), ('3', 'detail 3.4'), ('3', 'detail 3.5'));
по которому заполняется таблица(вместо Memo использую DBCross).
Не подскажете как можно изменить этот пример, чтобы количество строк в таблице было перемменным..строк в таблице может быть от 2-N..столбцов от 2 - M...

Комментарии

  • отредактировано 08:37
    С сохранением синтаксиса ? Пожалуй никак, это ограничение Delphi.
    На мой взгляд, самый простой вариант такой:
    type
      TRecord = array of ShortString;
      TDetails = array of TRecord;
    
    function R( const A, B: ShortString ): TRecord;
    begin
      Result := TRecord.Create( A, B );
    end;
    
    var
      Detail: TDetails;
    
    begin
      Detail := TDetails.Create(
        R('1', 'detail 1.1'),
        R('1', 'detail 1.2'),
        R('1', 'detail 1.3'),
        R('1', 'detail 1.4'),
        R('1', 'detail 1.5'),
        R('2', 'detail 2.1'),
        R('2', 'detail 2.2'),
        R('2', 'detail 2.3'),
        R('2', 'detail 2.4'),
        R('2', 'detail 2.5'),
        R('3', 'detail 3.1'),
        R('3', 'detail 3.2'),
        R('3', 'detail 3.3'),
        R('3', 'detail 3.4'),
        R('3', 'detail 3.5') );
    end.
    

Оставить комментарий

Многофункциональный текстовый редактор. Чтобы отредактировать стиль параграфа, нажмите TAB, чтобы перейти к меню абзаца. Там вы можете выбрать стиль. По умолчанию не выбран ни один стиль. Когда вы выберете текст, появится встроенное меню форматирования. Нажмите TAB, чтобы войти в него. Некоторые элементы, такие как многофункциональные вставки ссылок, картинок, индикаторов загрузки и сообщений об ошибок могут быть вставлены в редактор. Вы можете перемещаться по ним, используя стрелки внутри редактора и удалять с помощью клавиш delete или backspace.