23 июля 2019

Delphi 7 HELP под Windows 10

    "В интернетах" пугают о проблемах при установке и работе Borland Delphi 7 под Windows 10. Недавно мне пришлось установить Delphi 7 под Windows 10. Запустил - работает. Установил на него обновление, запустил - работает. Установил библиотеки, скомпилировал модули проекта - все работает без проблем. Мне даже не пришлось запускать delphi32.exe в режиме совместимости (Compatibility mode) или от имени администратора (Run this program as an administrator).
    А где обещанные проблемы?

19 июля 2019

Релиз Delphi / C++Builder / RAD Studio 10.3.2


Вчера состоялся релиз RAD Studio 10.3 Rio Release 2.

Новые ключевые возможности:
  • Delphi Linux Client Application Support
  • macOS 64-bit support for Delphi
  • C++ 17 for Windows 64-bit
  • C++ LSP Code Insight Improvements
  • RAD Server Wizards and Deployment Improvements
  • Enhanced Firebase Android Support

Коротко о том, что заинтересовало меня:
Runtime Library Performance
  • VCL DFM files loading optimization
  • Variants conversions performance

VCL Quality Improvements
  • Significant VCL quality improvements, with over 50 VCL customer reported issues fixed
  • Improvements in many components including ComboBox, MainMenu and PopupMenu, TreeView, StatusBar, PageControl, Button, DateTimePicker
  • Improvements in forms, frames, painting and styling primitives

IDE
  • A number of quality IDE improvements, especially when resizing and moving the IDE
  • Delphi background compilation in the IDE for all platforms
  • Performance improvements loading forms
  • Significant UI and UX quality improvements, including issues around the IDE’s toolbars, title bar and search, scrolling in the Options dialog, switching between layouts such as when starting debugging, flicker, previously unthemed elements now themed, the guided tour, and more
  • Faster file search operations

Web Clients
  • REST Client Library quality improvements
И главное: пофикшено около 400 баг-репортов от пользователей программистов.

18 марта 2019

Чтение из MS Excel. Кто быстрее?


    При написании "Заполнение страницы MS Excel одной командой" я вспомнил про библиотеки работающие с файлом MS Excel "напрямую". Посмотрим, насколько чтение информации из MS Excel "напрямую" быстрее, чем при использовании OLE.
    Создадим файл с 1 000 000 строк по 5 столбцов и прочитаем его различными способами.

11 марта 2019

Заполнение листа MS Excel одной командой


 "А чё, так можно было, что ли?!?"
 © Уральские пельмени

    Недавно, правя баги в чужом проекте, я в методе генерации отчета в шаблон MS Excel обнаружил то, о чем сам никогда не задумывался... Среди сотни строк присвоения значений ячейкам, я заметил, что одна таблица из сотни ячеек копируется на лист MS Excel одной строкой...
    Алгоритм очень прост: создаем динамический двумерный вариантный массив, заполняем его значениями и присваиваем диапазону ячеек:

21 февраля 2019

Автоподбор высоты строки MS Excel после объединения ячеек

    Шел 2019-й год... а MS Excel по-прежнему не научился рассчитывать высоту строки если в ней есть объединённые ячейки... И метод Range.AutoFit, который "Changes the height of the rows in the range to achieve the best fit", нас не спасёт.

Например, объединим ячейки A1 и B1 и поместим в них многострочный текст:
Var
  ea: TExcelApplication;
  ovRange: OleVariant;
begin
  ...
  ovRange := ea.Range['A1', 'B1'];
  ovRange.Merge;
  ovRange.Value := '1'#13#10'2'#13#10'3'#13#10'4'#13#10'5';
  ovRange.EntireRow.AutoFit;

28 ноября 2017

Oracle Streams и AQ_TM_PROCESSES

    Параметр Oracle AQ_TM_PROCESSES в очередях сообщений контролирует мониторинг времени и обработку сообщений с задержкой и заданным сроком действия. Он может принимать значение от 0 до 10. Установка параметра AQ_TM_PROCESSES в ноль отключает Queue Monitor Coordinator, что, как написано в документации Oracle, приведет к серьезным проблемам в работе Oracle Streams. Но даже значение отличное от нуля может привести к проблемам. У моего заказчика при AQ_TM_PROCESSES = 1 трейс-файлы начали "распухать" от сообщений "Streams AQ: waiting for messages in the queue".

19 ноября 2015

RAD Studio 10 Seattle Update 1

   Компания Embarcadero Technologies выпустила первое обновление RAD Studio 10 Seattle. Оно исправляет несколько сотен ошибок, подробнее... В этой бочке мёда не обошлось без ложки дёгтя: это обновление только для владельцев RAD Studio 10 Seattle с лицензией "Update Subscription" (в менеджере лицензий в описании лицензии должен быть пункт "Is Subscription"). Таким образом, остальные покупатели RAD Studio 10 - в пролете, и после установки этого обновления будут вынуждены поставить старую версию.

Delphi 10 Seattle Web Install (includes Update 1)
C++Builder 10 Seattle Web Install (includes Update 1)
RAD Studio 10 Seattle Web Install (includes Update 1)