экспорт Biff8

2»

Комментарии

  • отредактировано 12:25
    Draeden написал: »
    Посмотрел файл. Результат экспорта ожидаемый. Сначала экспорт проверяет десятичный разделитель мемки - там пусто. Затем он берёт FormatSettings.DecimalSeparator - там точка. Получается, что в числе "123,456" запятая это просто ненужный символ с точки зрения экспорта, потому что десятичный разделитель это точка. Если в настройках мемки поставить запятую в качестве разделителя, то всё ок.

    Да ничего он у вас не берет.
    Модуль frxBiffConverter строка 414:
      with obj.Style.DisplayFormat do
          if DecimalSeparator <> '' then
            Sep := AnsiChar(DecimalSeparator[1]);
    

    , a если сделать так:
    with obj.Style.DisplayFormat do
          if DecimalSeparator <> '' then
            Sep := AnsiChar(DecimalSeparator[1])
          else
            sep := SysUtils.DecimalSeparator;
    

    то все экспортирует нормально.
    А что за переменная FormatSettings.DecimalSeparator, где ее нужно установить?.
    Насчет установки в мемке разделителя, по умолчанию в текущей версии он не устанавливается, а должен бы наверное быть равным SysUtils.DecimalSeparator




  • отредактировано 12:25
    Какой то у Вас древний frxBiffConverter. У Вас точно последняя версия?
  • отредактировано 12:25
    У меня установлено 4.11.7
    Вы писали:
    написал:
    В обновлении 4.11.8 нету ничего из того, что здесь обсуждали.

    Сейчас поставлю 4.11.8.
  • отредактировано 12:25
    Установил 4.11.8, все работает.

    Есть такая хотелка, при SingleSheet = FALSE, выгружать количетсво страниц как в дизайнере,
    например 2 страницы на каждой по гриду, эуспортировать с 2 страницами, на каждой странице нужное количество листов.
  • отредактировано 12:25
    Покажите fp3 файл, чтобы мне было понятнее.
  • отредактировано 12:25
  • xlaalaaxlaalaa Минск
    отредактировано 12:25
    Bali написал: »
    В 1 отчете на 1 странице Excel должна быть таблица с доходами (лист 1-3), на второй с налогами (лист 5-6)
    2 отчет аналогично в Excel должно быть 2 страницы, на каждой листов сколько получится

    Нам тоже что-то такое нужно. Может у листов FR добавить свойство типа "начало нового раздела" или "имя раздела".
    А при экспорте в эксель-листы создавать по именам разделов.

    Может быть в качестве имени раздела можно использовать поле TfrxReportPage.OutlineText?
  • PNPPNP
    отредактировано June 2011
    Напоролся на странный глюк..
    Если у ячейки есть FrameWidth, FrameStyle (если отрабатывает procedure XFBorder(var b: TBiffLine); ... if s.FrameWidth > 1e-6 then блаблабла ), то в экселе при нажатии на такую ячейку и выборе "формат ячейки" - ничего не происходит.. Т.е. не появляется окно свойств.

    косяк где-то в этом куске:
    procedure TBiffXF.Flush(Stream: TBiffStream);
    ...
        X.BStyle1   :=
          $0000000f and LongWord(L.Style) or
          $000000f0 and (LongWord(R.Style) shl 4) or
          $00000f00 and (LongWord(T.Style) shl 8) or
          $0000f000 and (LongWord(B.Style) shl 12) or
          $007f0000 and (LongWord(L.Color) shl 16) or
          $3f800000 and (LongWord(R.Color) shl 23) or
          $40000000 and (LongWord(LTRB) shl 30) or
          $80000000 and (LongWord(LBRT) shl 31);
    ...
    
  • PNPPNP
    отредактировано 12:25
    Хотя, вроде бы все по стандарту.. Но если этот блок закомментировать - то все нормально (только ячейки без бордеров естественно)
  • отредактировано 12:25
    Посмотрю как вернусь из отпуска.
  • PNPPNP
    отредактировано 12:25
    Ну, что-то прояснилось или нет?
  • отредактировано 12:25
    Да, я исправил это. Там была проблема в том, что для ячейки с чёрной рамкой экспорт применяет чёрный цвет с индексом ноль. В документации сказано, что в палитре цветов первые восемь индексов заняты стандартными цветами: чёрный, белый, красный и т.д. Однако Excel не может показать свойства ячейки которая использует цвета с индексами 0..6 (как ни странно, индекс 7 не смущает Excel). Я обошёл эту проблему за счёт игнорирования первых 7-ми цветов в палитре: экспорт ведёт себя так, будто их нет и добавляет в палитру чёрный цвет не смотря на то, что он уже есть под индексом ноль.
  • отредактировано 12:25
    Bali, по поводу вашего work.zip. Это не сложно сделать: надо будет добавить к экспортам методы StartPageGroup/FinishPageGroup и немного изменить движок. Проблема в том, что сейчас код движка трансформируется в FR5 и новые фичи не появятся до релиза FR5. Лучше всего если вы откроете тикет и подробно опишите, что нужно (можете прямо своё сообщение скопировать и приложить этот work.zip).
  • PNPPNP
    отредактировано 12:25
    Draeden написал: »
    Да, я исправил это. Там была проблема в том, что для ячейки с чёрной рамкой экспорт применяет чёрный цвет с индексом ноль. В документации сказано, что в палитре цветов первые восемь индексов заняты стандартными цветами: чёрный, белый, красный и т.д. Однако Excel не может показать свойства ячейки которая использует цвета с индексами 0..6 (как ни странно, индекс 7 не смущает Excel). Я обошёл эту проблему за счёт игнорирования первых 7-ми цветов в палитре: экспорт ведёт себя так, будто их нет и добавляет в палитру чёрный цвет не смотря на то, что он уже есть под индексом ноль.
    Ура! :) Теперь нормально работает. Спасибо.

    Тут попутно еще один вопрос нарисовался - а есть ли возможность в ячейках использовать формулы?
    Очень было бы удобно.
  • отредактировано 12:25
    Нельзя пока что. В бинарном xls файле формулы записываются в виде разновидности машинного кода и чтобы экспортировать формулы надо написать простой компилятор. Как только руководство сочтёт целесообразным потратить время на эту фичу - я её сделаю :)
  • Stalker4Stalker4 123
    отредактировано 12:25
    2Draeden:

    Сейчас последняя версия FR это 4.11.11.
    Вопрос: Есть ли там изменения касательно экспорта Biff8, которые обсуждались в этой теме ?
  • отредактировано 12:25
    См. в changes.txt В версии 4.11.11 вроде бы нет. На следующей неделе (18-го июля) будет новая сборка и там в BIFF появится свойство RowHeightScale для растягивания ячеек.
  • Stalker4Stalker4 123
    отредактировано 12:25
    Draeden написал: »
    См. в changes.txt В версии 4.11.11 вроде бы нет.
    В changes.txt к сожалению нет ни какой информации про изменения в FR после 4.11.
    Draeden написал: »
    На следующей неделе (18-го июля) будет новая сборка и там в BIFF появится свойство RowHeightScale для растягивания ячеек.
    В общем то уже есть новая версия 4.11.12 от 19.07.2011. Там как я понимаю уже есть и RowHeightScale и другие исправления для biff8, про которые шла речь в этой теме ?

  • отредактировано 12:25
    RowHeightScale есть.
  • PNPPNP
    отредактировано November 2011
    Есть проблемы с экспортом - если в отчете имеются картинки (например, объект штрихкод, который преобразуется в картинку), то файл .xls невозможно открыть в офисе 2003. Офис 2010 и 2007 открывают такой файл, но выводят сообщение что файл поврежден. Если в опциях экспорта снять галочку "изображения" - то файл открывается нормально.

    Наблюдается в версиях как 4.12 так и 4.12.1

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

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