Информация о файле обновления Галактика EXCELLIB_DLL_810120.txt


Описание файла обновления:
ФайлEXCELLIB_DLL_810120.txt
ОбновлениеEXCELLIB_DLL_810120
НазначениеОбщее
ПродуктГалактика 8.10
Релиз03.11.2006 : Atlantis 5.2.8
КомпонентEXCELLIB
ТипDLL
Версия8.10.12.0
Дата2013-03-29 15:25:50
Проблема ПИРПервое решениеОписаниеПроектДетализация
Что изменено:Как изменено:
102.1213028.10.11.0Формирование "больших" отчетов в MS Excel 2007 - (add1)Отчеты в Microsoft Office ExcelОтчеты в XLS в целом
Функционал формирования отчетов в Excel, в текущей реализации работает следующим образом: При формировании отчета, производится предварительная проверка на возможность изменения данных ячеек. Если изменение невозможно, по причине превышения допустимого количества строк или колонок, то пользователю выдается соответствующее сообщение с рекомендациями по решению проблемы. Данная проверка происходит в 2-х местах: 1. При выводе в Excel данных из Галактики ("библиотека функций работы с Excel" - ExcelLib3X.dll). При не удачном результате этой проверки сессия работы с Excel принудительно закрывается. 2. При отработке системных макросов функционала формирования "XLT-отчетов" по переносу выгруженных данных в шаблон отчета (Excel надстройка - GalRepBuilder.xla). При не удачном результате этой проверки, формирование отчета по шаблону принудительно прерывается. В принципе это хорошо. Но такая проверка появилась относительно не давно. Ко времени ее появления накопилась и широко используется масса отчетов, некоторые из которых были реализованы в логике работы без существования проверки п.1. Например: 1. Есть случай, когда в коде проверяется возможность выводы "больших" отчетов, путем преднамеренной записи в ячейки лежащие за допустимым диапазоном Excel 2003 2. Есть случай, когда код был написан небрежно. Были обращения к ячейкам, лежащим за допустимым диапазоном. Во всех этих случаях: 1. До существования проверки п.1. - отчеты все же работали, пусть иногда и не корректно, но с появлением проверки перестали работать. 2. Эти случаи относятся к отчетам, формируемым по технологии прямого использования "библиотеки функций работы с Excel", а выводимое сообщение с рекомендацией решения проблемы, относится только к отчетам формируемым по технологии "XLT-отчетов". Поэтому предлагаю убрать проверку п.1.При отработке системных макросов функционала формирования "XLT-отчетов" по переносу выгруженных данных в шаблон отчета (Excel надстройка - GalRepBuilder.xla), производится предварительная проверка на не превышение допустимого количества строк или колонок. При не удачном результате этой проверки: 1. Пользователю выдается соответствующее сообщение с рекомендациями по решению проблемы 2. Процесс формирования отчета по шаблону прерывается При аналогичной ситуации в функционале "Библиотеки функций работы с Excel" (ExcelLib3X.dll): 1. Функции обращения к ячейкам, лежащим вне допустимого диапазона, возвращают "false" 2. Дополнительные сообщения не возникают 3. Сессия работы с Excel не прерывается
102.1131508.10.10.0Формирование "больших" отчетов в MS Excel 2007Отчеты в Microsoft Office ExcelXLS-Отчеты по шаблонам
В MS Excel версии менее 2007, существуют ограничения на количество выводимых: - строк < 65535 - столбцов < 256 Шаблоны XLT-отчетов поставляются Галактикой для MS Excel 2003, поэтому все эти ограничения остаются и для пользователей использующих Excel версии 2007 и выше. Хотя в этих версиях такие ограничения уже были сняты. В случае использования пользователем Excel версии 2007 и выше, для возможности формирования "больших" отчетов, обычно службой поддержки дается рекомендация следующего содержания: "Шаблон версии 2003 "сохранить как" шаблон версии 2007 "с макросами" (*.XLTM), и затем для формирования отчета использовать его". Однако такие вопросы от пользователей, поступают постоянно. Проблема усугубляется тем, что при формировании "большого" отчета, по шаблону Excel 2003, в случае превышения вышеуказанных ограничений, возникает системное сообщение об ошибке. Данное сообщение выдается системой VB Excel, и расценивается пользователем как ошибка.При формировании отчета, производится предварительная проверка на возможность изменения данных ячеек. Если изменение невозможно, по причине превышения допустимого количества строк или колонок, то пользователю выдается соответствующее сообщение с рекомендациями по решению проблемы: - Если используется "старая версия" MS Excel (2003 и ранее), то предлагается установить "новую версию MS Excel" (2007 и выше) - Если используется "новая версия" MS Excel, но XLT-шаблон из "старой версии", то предлагается пере-сохранить этот шаблон в "новой версии".
106.95718.10.9.0Ошибка при формировании оборотной складской ведомости в excel для дома и бизнесаОтчеты в Microsoft Office ExcelОтчеты в XLS в целом
При формировании Excel-отчетов в Excel 2010, бывают ситуации когда сформированный отчет не показывается на экране. Хотя в "Диспетчере задач", видно что Excel есть. Происходит это, как правило, при формировании отчетов большого объема и в представлении с разбивкой на страницы ("ВИД" = "Страничный режим"). При расследовании выяснено, что в описанной ситуации, на команде "покажись" (Application.Visible := True), возникает "исключение" -"Ошибка при системном вызове". А если чуть подождать и еще попросить, то все нормально.Переработан метод визуализации Excel: 1. Происходит 10-ть попыток визуализации Excel, с задержкой в 1 сек. 2. Если в итоге не получилось, то задается запрос пользователю: "Ошибка при визуализации Excel! Попробовать еще раз?" 2.1. Если еще раз, то п.1. 2.2. Если пробовать пользователь больше не хочет, то Excel закрывается автоматически. Пользователь в этом случае так и не увидит отчет. ВНИМАНИЕ! При формировании Excel-отчетов, на экране обычно располагается окошко визуализации процесса. При этом курсор мыши, принимает вид "процесса", и может быть использован только для нажатия кнопки "прервать" (процесс). В итоге, в большинстве отчетов, при появлении запроса пользователю (в п.2.), курсор мыши не сможет быть использован. В этой ситуации придется делать выбор только с помощью клавиатуры.
101.470458.10.8.0Проблема с Excel_Lib. Не корректно передается строковый параметр содержащий кириОтчеты в Microsoft Office ExcelОтчеты в XLS в целом
Проблема при запуске макросов, с помощью функции xlRunMacro(). Нельзя использовать наименование макроса или его параметра в "кирилице".ДЛЯ ПРОГРАММИСТОВ Теперь можно запускать макрос, в названии и в параметрах которых используется "кирилица". Для этого доработана функция xlRunMacro(). В нее добавлена функция преобразования строки в Win кодировку shortstrtowin(). Передача параметров в "кирилице" также осуществляется корректно.
102.1037138.10.7.0Нужна функция для определения версии ExcelОтчеты в Microsoft Office ExcelОтчеты в XLS в целом
Нужны: 1. Функция для определения версии Excel 2. Функция для определения типа Excel-файла. Например: 2003, 2007 без макросов, 2007 с макросами... Т.к. функционал системный, то также потребуется VIP-интерфейс для тестирования разработанного функционала.Добавлены функции: - xlCheckExcelInstall():boolean - определение установлен ли Excel на компьютер. - xlGetVersionExcelInstall(var sVersion : string):boolean. Параметром sVersion возвращается версия Excel установленная на компьютере.
102.1058968.10.7.0Обновление XLA-библиотеки GalRepBuilderОтчеты в Microsoft Office ExcelXLS-Отчеты по шаблонам
По умолчанию необходимые для работы XLA-библиотеки, находятся в каталоге EXEXLSF_XLSREP и инсталлируются в Excel именно оттуда. Однако при изменении пути на ресурсы Галактики, в самом Excel-е придется вручную изменить пути для загрузки этих библиотек. Это может оказаться не простой задачей. Дело в том что, если в менеджере надстроек Excel, просто изменить путь на инсталлированную уже XLA-библиотеку, то при следующей загрузке Excel, путь на библиотеку останется прежним. Чтобы обойти эту проблему Excel-а, официально рекомендуется выполнение следующих действий: 1. Закрыли все запущенные на данный момент Excel-приложения 2. Загрузили Excel 3. В менеджере надстроек Excel, отключили заданную библиотеку 4. Закрыли Excel 5. Загрузили Excel 6. В менеджере надстроек Excel, с помощью кнопки "Обзор" выбрали заданную библиотеку в соответствующем каталоге на диске (на вопрос "Файл уже существует заменить?", ответили "Да") 7. Закрыли Excel 8. Загрузили Excel Все это надо проделать на каждой клиентской станции, т.к. путь на "надстройки" хранится в системном реестре Windows. /*Предлагаю, по аналогии с существующим функционалом "Обновление шаблонов", требуется разработать окно "Обновление надстроек Excel".*/ Предлагаю в стандартное окно "Обновление шаблонов", добавить функционал для обновления XLA-библиотеки GalRepBuilder. В окне должна быть поля: 1. "Надстройка пользователя". Показывается путь на инсталлированную в Excel, на рабочей станции пользователя надстройку GalRepBuilder.xla. В случае если пользователь удалит значение этого поля, должно автоматически подставиться значение поля "Надстройка по умолчанию". При любых изменениях этого поля, в Excel, должна быть инсталлирована надстройка GalRepBuilder, по этому пути. 2. "Надстройка по умолчанию". Показывается путь на стандартную надстройку находящийся на клиенте - EXEXLSF_XLSREPGalRepBuilder.xla Напротив каждого поля должны быть кнопки "Обновить". При обновлении, соответствующий файл обновляется "Базовой надстройкой". "Базовой надстройкой" считается файл находящийся на сервере: - для 2-х уровневой архитектуры, по пути EXEXLSDISTRF_XLSREPGalRepBuilder.xla - для 3-х уровневой архитектуры, по пути EXEXLSF_XLSREPGalRepBuilder.xlaВ окне настройки XLT-шаблона в локальное меню добавлена функция: "Изменение надстроек" в вызванном окне появится окно для изменения надстройки GalRepBuilder.xla. Окно состоит из двух полей: "Идентификатор" отображает название надстройки F_XLSRepGalRepBuilder "Надстройка пользователя" - показывает путь на инсталлированную в Excel, на рабочей станции пользователя надстройку GalRepBuilder.xla. В случае если пользователь удалит значение этого поля, должно автоматически подставиться значение поля "Надстройка по умолчанию".. и Кнопки: "Обновление" - загружает окно с возможностью обновления файлов надстроек. "Выход" - закрытие окна. Окно "Обновление надстроек" состоит из двух полей: "Надстройка пользователя" "Надстройка по умолчанию" напротив каждого поля есть кнопка "обновить" При обновлении, соответствующий файл обновляется "Базовой надстройкой". "Базовой надстройкой" считается файл находящийся на сервере: - для 2-х уровневой архитектуры, по пути EXEXLSDISTRF_XLSREPGalRepBuilder.xla - для 3-х уровневой архитектуры, по пути EXEXLSF_XLSREPGalRepBuilder.xla
102.919428.10.7.0Режимы переключения "MS Excel" - "OO Calc"Отчеты в Microsoft Office ExcelОтчеты в XLS в целом
В galnet.cfg в секцию [Excel] добавлен параметр XLSGlobalLibImplementationMode, который устанавливает режим работы MSOffice или OpenOffice: 0 - берет настройки из переменной окружения GalXLSLibImplementationMode. Ноль возвращается если параметр XLSGlobalLibImplementationMode в galnet.cfg не указан, т.е. работает страый алгоритм установки режима. 1 - MsOffice 2 - OpenOfficeВ galnet.cfg в секцию [Excel] добавлен параметр XLSGlobalLibImplementationMode, который устанавливает режим работы MSOffice или OpenOffice: 0 - берет настройки из переменной окружения GalXLSLibImplementationMode. Ноль возвращается если параметр XLSGlobalLibImplementationMode в galnet.cfg не указан, т.е. работает страый алгоритм установки режима. 1 - MsOffice 2 - OpenOffice При установке режива 1 или 2 для параметра XLSGlobalLibImplementationMode в Галактике им соответсвуют 1->0 и 2->1 Для получения информации о установленном режиме можно использовать функцию: function xlGetImplementationMode : word. Для изменения режима на время работы Галактики, используйте функцию: function xlSetImplementationMode(wMode:word) : boolean. Данное изменение действует до первой выгрузки Excel отчета (до выполнения KillExcel), далее загружается режим по умолчанию. Внимание!!! На данный момент, включение режима работы с "Open Office Calc", имеет смысл отлько для отчетов непосредственно использующих "Библиотеку функций работы с Excel". Отчеты формируемых по XLT-шаблонам с помошью объекта iXLSRepBuilder, пока работать с "Open Office Calc" не могут. Также будет некорректным формирование отчетов, использующих какие-либо макросы
102.1076008.10.6.0xlGetThousandSeparator возвращает "я"Отчеты в Microsoft Office ExcelОтчеты в XLS в целом
Функционал работы с Excel. Функции, возвращающие значения "разделителя тысяч": - GetThousandSeparator (разделителя тысяч в Windows) - xlGetThousandSeparator (разделителя тысяч в Exce;) Возвращают символ "я", вместо того чтобы возвращать требуемый разделитель.Функционал работы с Excel. Функции, возвращающие значения "разделителя тысяч": - GetThousandSeparator (разделителя тысяч в Windows) - xlGetThousandSeparator (разделителя тысяч в Exce;) Возвращают символ " ".
102.956778.10.5.0ограничение 911 при выводе длинных строк через массивОтчеты в Microsoft Office ExcelОтчеты в XLS в целом
Если установлен MS Office версии < 2007. то при выводе длинных строк, будет ошибка, если длина строки > 911 символов. Ограничение 911, действует только для матричного вывода, если выводить по ячейкам, то вывод длинных работает. Проблема усугубляется тем, что при формировании XLT-отчетов, используется матричный вывод.Изменен фукнционал: 1. Библиотеки фукнций работы с Excel 2. Функционал формирования XLT-отчетов Изменения такие - при одновременном выполнении всех условий: 1. Если используем матричный вывод 2. Если установлен MS Office версии < 2007 3. Если в матрице встречаются строки длинной > 911 символов Производим вывод значений матрицы по каждой ячейке в отдельности. В следствии таких изменений, возможны естественное замедление работы измененных функционалов.
104.190238.10.4.0Теряется украинская буква "I" при выводе в ExcelОтчеты в Microsoft Office ExcelОтчеты в XLS в целом
В украинской раскладке, некоторые функции библиотеки работы с Excel, не работают с украинской буквой "I" и "i" (читается "и", она находится на той же клавише, что и русская "Ы"). В часности не работают фукнции: - xlSetCellStringValue - xlGetCellValue - комбинация xlReadMatrixFromExcel и xlReadFromMatrix Однако в тоже время корректно работает комбинация фукнций: - xlWriteMatrixToExcel и xlStWriteToMatrixВ фукнции перевода кодировки DOS<->WINDOWS, добавлены перевод для символов "I" и "i" украинской раскладки.
102.912098.10.3.0Переключение "Библиотека функций работы с Excel" на работу с "Open Office Calc"Отчеты в Microsoft Office ExcelБиблиотека работы с Excel-функциями на 3х уровневой архитектуре
На данный момент существует "Библиотека функций работы с Excel", которая позволяет формировать отчеты в Microsoft Office Excel. Требуется реализовать возможность переключать работу этого фукнционала на работу с Open Office Calc, Т.е. в библиотеку требуется добавить функцию, которая бы позволяла указать текущий программный продукт для формирования отчетов в электронных таблицах: - либо "Microsoft Office Excel" - либо "Open Office Calc" Сами же фукнции библиотеки должны остаться прежними.Реализована возможность переключать функционал "Библиотека функций работы с Excel", на работу с "Open Office Calc". Для управления режимом работу, в библиотеку добавлены фукнции: function xlGetImplementationMode: word; function xlSetImplementationMode(wMode: word): boolean; Режим (wMode) может иметь следиущие значения: 0 - "Microsoft Office Excel" 1 - "Open Office Calc" Эти фукнции доступны как из кода на VIP, так во время работы Галактики по CTRL+F4. Например если по CTRL+F4 выполнить : "xlSetImplementationMode(1)", то включится режим работы с "Open Office Calc". По умолчанию Галактика загружается в режиме работы с "Microsoft Office Excel". Однако режим по умолчанию можно изменить, определив переменую окружения: set GalXLSLibImplementationMode=1 На данный момент, включение режима работы с "Open Office Calc", имеет смысл отлько для отчетов непосредственно использующих "Библиотеку функций работы с Excel". Отчеты формируемых по XLT-шаблонам с помошью объекта iXLSRepBuilder, пока работать с "Open Office Calc" не могут.
102.912208.10.3.0Вывод Мемо-полей в XLT-отчетахОтчеты в Microsoft Office ExcelXLS-Отчеты по шаблонам
Требуется иметь возможность при формировании отчетов по XLT-шаблонам выволить Мемо-поля, длиной более 256 символов.Реализована возможность при формировании отчетов по XLT-шаблонам выволить строковые поля, длиной более 256 символов. А также реализована возможность выводить Мемо-поле таблицы AllMemo. Для подключения ноовго функционала следует использовать ObjInterface iXLSRepBuilder_V01(iXLSRepBuilder), описанный в xlReport.Vih.
102.751078.10.2.0нужен контроль по датеОтчеты в Microsoft Office ExcelОтчеты в XLS в целом
нужен контроль по дате при выводе в Ехсел, когда по каким-то причинам выводится значение, не проходящее под внутреннее ограничение Ехсел: как правило, 1.1.1900. Проблема в том, что при попытке вывода в рамках матрицы мы теряем не только эту строку, но и все последующие, что плохо. Более предпочтителен вариант вывода, например, пустой даты, чем потеря данных вообще, т.е. дату 12.06.1856 надо приводить к ДД.ММ.ГГГГ или чему-то подобному.Добавлен контроль: если "дата" < "01/01/1900", то дата передается в Excel как "00/00/0000"