Сравнение файлов
Проблема ПИРПервое решениеОписаниеПроектДетализация
Что изменено:Как изменено:
102.182986NEWПериодические рантаймы при нагрузочном тестированииПоддержка различных платформ баз данныхPostgreSQL
PostgreSQL ----- ПРОЯВЛЕНИЕ ПРОБЛЕМЫ ----- Периодические рантаймы при нагрузочном тестировании.Исправлено.
101.65390NEWRuntime error 217 при вызове FastReport через Shift+F12 с добавленным вычисляемым полемИнструментарий прикладного программистаFastReport - встроенный генератор отчетов
Генератор отчетов Fast Report ----- ОПИСАНИЕ ОШИБКИ ---- При добавлении через конфигуратор вычисляемого поля с дублирующим именем одного из полей потока данных и дальнейшим формированием отчета FastReport возникает исключение.Добавлена проверка на дублирование полей по имени.
102.182098NEWПри отсутствии установленного драйвера Oracle адаптер ERP не запускается и никакой информации о причине не попадаетв в LogERPОбщие задачи по проекту
Ядро рабочего процесса 2-хуровневого Атлантис-приложения ----- СУТЬ ПРЕДЛОЖЕНИЯ ----- Предусмотреть индикацию ошибок, возникающих при обработке списка предварительно загружаемых динамических библиотек, понизить важность таких ошибок.При невозможности загрузить библиотеку в консоль выдаётся диагностическое сообщение с кодом ошибки. Ошибка при этом не считается критической, выполнение кода инициализации AtlWp.dll продолжается.
102.176812NEWТребуется обеспечить возможность вызова Атлантического кода в произвольном потоке .NET без накдадных расходов на переключение потоковERPОбщие задачи по проекту
Ядро рабочего процесса 2-хуровневого Атлантис-приложения (AtlWP.dll) ----- СУТЬ ПРЕДЛОЖЕНИЯ ----- Требуется обеспечить возможность вызова Атлантического кода в произвольном потоке .NET без накдадных расходов на переключение потоков.Реализован набор методов для управления пользовательскими контекстами и выполнения в них произвольных функций. В таком контексте инициализируется полноценное Атлантис-приложение, только вместо передачи управления его модальному циклу вызывается точка расширения epAppInit. Экспортируются из AtlWP.dll: // возвращает дескриптор текущего рабочего контекста GetCurrentWorkerContext: function (var ContextHandle: HUserContext): boolean; StdCall = nil; // создаёт рабочий контекст CreateWorkerContext: function(var ContextHandle: HUserContext): boolean; StdCall = nil; // уничтожает рабочий контекст DestroyWorkerContext: function(var ContextHandle: HUserContext): boolean; StdCall = nil; // ключевой метод: выполняет Func с параметром Param в текущем потоке, используя рабочий контекст ExecuteInWorkerContext: function(ContextHandle: HUserContext; Func: TWorkerFunction; Param: pointer = nil): boolean; StdCall = nil; // следующие методы использовать только в качестве аргумента в вызове ExecuteInWorkerContext // инициализирует пользовательские переменные (user(thread)-local storage) InitializeWorkerContext: function(DummyParam: pointer = nil): boolean; StdCall = nil; // финализирует пользовательские переменные FinalizeWorkerContext: function(DummyParam: pointer = nil): boolean; StdCall = nil; // инициализирует приложение InitializeApplication: function(CommandLine: PChar): boolean; StdCall = nil; // выполняет точку расширения epAppInit RunApplication: function(DummyParam: pointer = nil): boolean; StdCall = nil; // финализирует приложение FinalizeApplication: function(DummyParam: pointer = nil): boolean; StdCall = nil;