base
Краткое описание :
Direct SQL - Поддержать Cross Apply и OUTER APPLYОписание :
Прямой SQLЧто измененно :
DSQL
----- СУТЬ ПРЕДЛОЖЕНИЯ -----
Поддержать Cross Apply и OUTER APPLY в Direct SQL
Как измененно :
Доработано частично(не на всех платформах).
На платформах, не поддерживающих конструкцию (Oracle 10-11 и Pervasive)
будет сообщение об ошибке в рантайме.
Также добавлена специфичная диагностика
при попытке использовать ON после APPLY или CROSS JOIN
base
Краткое описание :
$ в идентификаторе DSQL приводит к падению на Oracle (на MS SQL - работает), а квотирование запрещено - соответственно имеем платформенную зависимостьОписание :
Прямой SQLЧто измененно :
DSQL
Oracle
----- СУТЬ ПРЕДЛОЖЕНИЯ -----
Дать возможность давать таблицам и INLINE VIEW алиасы, начинающиеся с подчерка.
Как измененно :
Если алиас содержит символы помимо букв, цифр и подчерка, либо начинается с подчерка/цифр, то он будет приведён к верхнему регистру и окавычен при передаче в СУБД.
В рамках этой проблемы не сделана возможность окавычивания идентификаторов в DSQL, поэтому большинство многообразия не пропустит транслятор DSQL.
base
Краткое описание :
Ошибка в запросе прямого sql при использовании dualОписание :
Прямой SQLЧто измененно :
DSQL
----- ПРОЯВЛЕНИЕ ПРОБЛЕМЫ -----
Не работает запрос выборки, где в одной части UNION выбор из таблиц, а в другой из DUAL (или вовсе нет from).
Как измененно :
Исправлено.
base
Краткое описание :
Реализовать системную (Windows)-аутентификацию при использовании БД OracleОписание :
ИдентификацияЧто измененно :
Oracle
Windows
----- СУТЬ ПРЕДЛОЖЕНИЯ -----
Реализовать системную (Windows)-аутентификацию при использовании БД Oracle.
Как измененно :
Реализована смешанная авторизация, т.е. часть пользователей можно создать с паролями, часть с NT-аутентификацией.
Для входа в систему с NT-аутентификацией использовать ключ /NTS в командной строке или конфигурационном файле,
при этом не будет выдаваться диалог ввода логина-пароля.
# ИНСТРУКЦИЯ ПО НАСТРОЙКЕ:
При работе с БД, установленной инсталлятором ora9inst.exe версии 5.5.28 и меньше, требуется выполнить в модуле "Восстановление БД" проверку таблиц БД с опцией "Проверка служебных объектов" (ChkBase.StoredProcs=on) в режиме исправления.
base
Краткое описание :
Добавить поле домен ПользователяОписание :
ПользователейЧто измененно :
Права доступа
Настройка
----- СУТЬ ПРЕДЛОЖЕНИЯ -----
Предоставить возможность определять, хранить и редактировать сетевую учетную запись пользователя.
Как измененно :
Реализовано.
base
Краткое описание :
Оптимизировать работу постоянных семафоровОписание :
OracleЧто измененно :
Семафоры
----- СУТЬ ПРЕДЛОЖЕНИЯ -----
Увеличить быстродействие семафоров
Как измененно :
Увеличено быстродействие постоянных семафоров.
Увеличено быстродействие сессионных семафоров на oracle.
Введен булевский параметр Database.SpanManySemaphorNames, включение которого ускоряет специфичный сценарий использования сессионных семафоров, когда имя семафора сочиняется динамически, и используются тысячи различных имен. В классических сценариях, когда используется небольшое количество семафоров с фиксированными именами, этот параметр вызовет наоборот замедление. На других платформах никак не действует. Может быть включен программно.
# ИНСТРУКЦИЯ ПО НАСТРОЙКЕ:
На платформе Oracle требуется исправление системных процедур
Запустите проверку целостности БД с опцией "Проверка служебных объектов" (ChkBase.StoredProcs=On).
base
Краткое описание :
Сделать процедуру выгрузки из таблицы в памяти во временную таблицу DSQL, использующую BULK INSERT для ускорения вставкиОписание :
Прямой SQLЧто измененно :
DSQL
----- СУТЬ ПРЕДЛОЖЕНИЯ -----
Сделать процедуру выгрузки из логической таблицы во временную таблицу DSQL, использующую BULK INSERT для ускорения вставки.
Как измененно :
Метод логической таблицы
function sqlFlushIntoTmp(iTable: integer; tableName: string; flags : word): word;
iTable -- номер узла в ЛТ, из которого копировать
tableName -- имя временной таблицы DSQL
flags:
* FIT_Create -- создать временную таблицу, совпадающую полями c узлом, но без индексов и реляций; если была другая временная таблица с таким именем, она будет удалена (аналогично sqlCreateTmpTable)
* FIT_Truncate -- очистить целевую таблицу перед вставкой
* FIT_ByName -- связывать поля по именам, а не по порядку. Имеет смысл и совместно с FIT_Create, т.к. некоторые поля исходного узла могут отсутствовать в выборке ЛТ, в этом случае сопоставление по номерам даже с клоном может быть некорректным.
Возвращает код ошибки, в частности может вернуть tsFileNotFound, если нет временной таблицы с данным именем, tsInvalidOperation, если операция не поддерживается на данной платформе, tsDuplicateKey, если нарушено уникальное ограничение в целевой таблице (в последнем случае полный откат вставки не гарантируется)
Ещё особенности:
* Не работает на платформе Pervasive (возвращает tsInvalidOperation)
* На работу влияет параметр Lot.ImportBatchRowCount
* Ограничения и фильтры не снимаются с узла! Происходит пробежка в текущих ограничениях и в текущем порядке. Если ограничения не нужны, снимите их вручную. После операции позиция в узле не восстанавливается.
* В режиме FIT_Create создаёт таблицу с опцией ctmDynamicIndex, что позволяет добавить индексы потом.
* Целевая таблица должна быть создана через Атлантис, иначе программа не найдёт информацию о её колонках.
base
Краткое описание :
При чистке журнала могут быть удалены неразосланные(не подттвержденные) записи КОРПООписание :
Общие проблемы по модулюЧто измененно :
КОРПО
Журнализация
----- ПРОЯВЛЕНИЕ ПРОБЛЕМЫ -----
При чистке журнала могут быть удалены неразосланные(не подттвержденные) записи КОРПО
Как измененно :
Исправлено
base
Краткое описание :
Ошибка компиляции запроса с использованием конструкции union dsqlОписание :
Прямой SQLЧто измененно :
DSQL
Embeded DSQL
----- ПРОЯВЛЕНИЕ ПРОБЛЕМЫ -----
Ошибка компиляции запроса с использованием конструкции union
во встроенном DSQL (при компиляции интерфейса пропадает пробел после union)
Как измененно :
Исправлено.