Текущие компоненты

Название продукта Название компонента Тип Последняя версия Дата выхода
Атлантис 5.5BASEDLL

Справка по компоненту.

Количество версий компонента30
Количество рещенных задач150
Последная дата обработки компонента2023-03-31 13:04:50
Последная дата файла2023-03-31 12:46:37
Последная версия5.5.41.0

Новые задачи в этом компоненте

base
102.122901
BASE ( 5.5.18.0 )

Краткое описание :

Компилятор прямого SQL меняет функцию SubStr на значение NULL. Необходимо логирование подобных событий

Описание :

Прямой SQL

Что измененно :



DSQL

----- СУТЬ ПРЕДЛОЖЕНИЯ -----
Сделать ошибкой использование неизвестных функций и вообще идентификаторов вместо того, чтобы заменять их молча на NULL

Как измененно :


Реализовано.
base
101.50850
BASE ( 5.5.18.0 )

Краткое описание :

Выводить синтаксическую ошибку,так как конкатенация с #noupcase дает неверн.рез.

Описание :

MS SQL

Что измененно :



DSQL

----- СУТЬ ПРЕДЛОЖЕНИЯ -----
Выводить синтаксическую ошибку при неправильном использовании #upcase и #noupcase

Как измененно :


Реализовано
base
102.128136
BASE ( 5.5.18.0 )

Краткое описание :

Runtime при вызове procedure sqlFreeStr(var str_handle: longInt)

Описание :

Прямой SQL

Что измененно :



DSQL

----- ПРОЯВЛЕНИЕ ПРОБЛЕМЫ -----
Когда текст запроса помещён в длинную строку, выполнение запроса убивает
эту строку, и попытка использовать её позднее приводит к ошибкам.
queryManager.createQuery(longintHandleOfStr).getResultSet();
// теперь хендл longintHandleOfStr невалиден

Как измененно :


Исправлено
base
102.128742
BASE ( 5.5.18.0 )

Краткое описание :

DSQL не выбирает пустые строки

Описание :

Прямой SQL

Что измененно :



DSQL
Oracle

----- ПРОЯВЛЕНИЕ ПРОБЛЕМЫ -----
Сравнение с пустой строкой '' в коде DSQL не работает на оракле:
она ничему не равна (потому что она есть NULL).
Ожидалось, что значение строкового поля по умолчанию будет равно ''

Как измененно :


Теперь '' транслируется в ' ' на оракле.
Это имеет побочные эффекты, например, ('' <> ' ') ложно
(на платформе MSSQL так было всегда, т.к. ведущие пробелы игнорируются при сравнении)
base
101.53627
BASE ( 5.5.18.0 )

Краткое описание :

Пустое поле при вставке копии записи таблицы, если это поле ограничено правами на поля.

Описание :

Таблиц

Что измененно :



Protect

----- ПРОЯВЛЕНИЕ ПРОБЛЕМЫ -----
Если есть отдельные права на поле таблицы, то при вставке это поле считается
недоступным для записи и заполняется значением по умолчанию.
Отдельного права на INSERT нет. Можно убрать отдельные права на это поле вообще,
тогда будет работать вставка. А вот комбинацию
"вставка и модификация разрешены, чтение нет" сейчас невозможно настроить...

Как измененно :


Отдельного права на INSERT для поля по-прежнему не будет,
при вставке будут смотреть право на UPDATE конкретного поля
(если нет права INSERT на таблицу, то, конечно, ничего не вставится)
base
101.53683
BASE ( 5.5.18.0 )

Краткое описание :

Реализовать возможность выбора филиала для вставки записей в мультифилиальном режиме

Описание :

Системные интерфейсы Atlantis

Что измененно :



Филиальность

----- СУТЬ ПРЕДЛОЖЕНИЯ -----
Реализовать возможность определения филиала в качестве текущего для всех последующих создаваемых записей в мультифилиальном режиме.

Как измененно :


Реализовано. При выборе филиалов на старте приложения или из соответствующего пункта меню предоставляется возможность установить текущий филиал для вставки.
base
103.5595
BASE ( 5.5.18.0 )

Краткое описание :

DirectSQL. Не выдается ошибки в случае неправильного запроса

Описание :

Прямой SQL

Что измененно :



DSQL

----- СУТЬ ПРЕДЛОЖЕНИЯ -----
диагностировать неправильное использование алиаса поля внутри контекста
(по правилам алиас можно использовать только снаружи той подвыборки, где его присвоиили)

Как измененно :


Реализовано
base
104.20199
BASE ( 5.5.18.0 )

Краткое описание :

Некорректно работает метод addCriteria объектного интерфейса IQuery

Описание :

Прямой SQL

Что измененно :



DSQL

----- ПРОЯВЛЕНИЕ ПРОБЛЕМЫ -----
Не работает AddCriteria объектного интерфейса IQuery
(не понимает, что поля из фильтра, это поля таблицы из основного запроса)

Как измененно :


Исправлено.
base
101.46960
BASE ( 5.5.18.0 )

Краткое описание :

Неправильно отрабатывает прямой sql

Описание :

Прямой SQL

Что измененно :



DSQL

----- СУТЬ ПРЕДЛОЖЕНИЯ -----
Если во время Fetch не влез результат выборки в привязанное поле,
то для пользователя DSQL это выглядит так, будто просто конец выборки.
Надо сделать отдельный код ошибки.
Также желательно заранее проверять во время связывания, что тип результирующего поля подходящий.

Как измененно :


Реализовано.
При выполнении запроса проверяют типы и размеры связанных с колонками полей,
и пишут предупреждение в лог драйвера --
если включить параметр Database.DSQLShowOverflowWarning=WARNING
Если Database.DSQLShowOverflowWarning=ERROR,
то несоответствия будут вызывать ошибку 367
(ошибку вернет команда sqlExecute или подобная)
Всё это только когда несоответствие очень очевидное;
если тип выражения найден СУБД и не совпадает с принимающим полем --
не будет предупреждений.
Например из поля в поле LongInt->Word -- это предупреждение,
а (Word*Word)->Word -- не будет предупреждения

Потом, если во время fetch случится переполнение по факту
(оно может и не случится, если реальные данные маленькие),
то будет ошибка 366, а не 4 как раньше
base
102.100192
BASE ( 5.5.18.0 )

Краткое описание :

MS SQL настаивает, что бы подзапросы были именованными

Описание :

Прямой SQL

Что измененно :



DSQL

----- СУТЬ ПРЕДЛОЖЕНИЯ -----
Требовать при компиляции, чтобы все INLINE VIEW были именованными.
Отсутствие алиаса может и не привести к ошибке, но оно может приводить
к ошибке на только одной платформе, что затрудняет тестирование.

Как измененно :


Реализовано.
base
102.101989
BASE ( 5.5.18.0 )

Краткое описание :

Сохранять форматирование текста SQL QUERY в отладочном протоколе ORA90DRV.log

Описание :

Прямой SQL

Что измененно :



DSQL

----- СУТЬ ПРЕДЛОЖЕНИЯ -----
Сохранять по максиму форматирование текста SQL
QUERY в отладочном протоколе типа ORA90DRV.log

Как измененно :


Реализовано.

5.5.41.05.5.40.05.5.38.05.5.37.05.5.36.05.5.35.05.5.34.05.5.33.05.5.32.05.5.31.05.5.30.05.5.29.05.5.28.05.5.27.05.5.26.05.5.25.05.5.24.05.5.23.05.5.22.05.5.21.05.5.20.05.5.19.05.5.18.05.5.17.05.5.16.05.5.15.05.5.14.05.5.13.05.5.12.0