Снова выхожу на связь.
В доке V8Update.htm написано
Цитата:
Версия 8.3.1 не включает изменения, выполненные в версии 8.2.17
То есть она является каким то форком 8.2.16? А изменения в 8.2.19 в нее входят?
Почитал еще, видимо,
режим раздельных оптимальных агрегатов для разных баз РИБ доступен только начиная с режима совместимости с 8.3.3.
Кто-нибудь использовал его? Пока сам глазами не увижу - очень интересно, как это работает.
Далее.
В 8.3.1 появился объект ОбновлениеКонфигурацииИнформационнойБазы (получаемый методом ПолучитьОбновлениеКонфигурацииБазыДанных()) и его свойства - на кластере все время крутится спец.фоновое задание, которое обновляет конфу БД и требует монопольного доступа только в самом конце и ненадолго. Пока не понятно как этим пользоваться, нужон пример. Доступно только в клиент-серверном варианте и только при изменениях в структуре БД.
Теоретически, можно пользователям всякую ненужную им информацию выводить, типа "фоновое обновление конфигурации завершено на 56%. До вылета всех из 1С осталось ~n секунд".
Интересует в первую очередь, как сами разработчики конфигураций 1С используют этот функционал? Желательно примеры кода или хотя бы наводка на конфу и версию конфы, где это используется.
Далее.
Допустим, у нас есть некий запрос в отчете на СКД, с механизмом характеристик. В 8.2.19 все было прекрасно.
На 8.3.6.2152 в режиме совместимости 8.2.16 не работает такой запрос вида
Код запроса с характеристиками, который не работает в 8.3.6 Код:
ВЫБРАТЬ
Т.Ссылка ИЗ Справочник.Товары КАК Т
{ХАРАКТЕРИСТИКИ
ТИП(Справочник.Товары)
ВИДЫХАРАКТЕРИСТИК (ВЫБРАТЬ
"КодЭфеса" КАК Ключ,
"Код Эфеса" КАК Имя,
ТИП(СТРОКА) КАК Тип
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ РАЗЛИЧНЫЕ
КодыПроизводителей.Контракт,
"Код по контракту " + КодыПроизводителей.Контракт.Наименование + "",
ТИП(СТРОКА)
ИЗ
РегистрСведений.КодыПроизводителей КАК КодыПроизводителей
ГДЕ
КодыПроизводителей.Контракт <> ЗНАЧЕНИЕ(Справочник.Контракты.ПустаяСсылка))
ПОЛЕКЛЮЧА Ключ
ПОЛЕИМЕНИ Имя
ПОЛЕТИПАЗНАЧЕНИЯ Тип
ЗНАЧЕНИЯХАРАКТЕРИСТИК (ВЫБРАТЬ
Т.Объект,
"КодЭфеса" КАК Вид,
Т.КодЭфес КАК Значение
ИЗ
РегистрСведений.артЭфесСведения КАК Т
ГДЕ
Т.Объект ССЫЛКА Справочник.Товары
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
КодыПроизводителей.Объект,
КодыПроизводителей.Контракт,
КодыПроизводителей.КодПроизводителя
ИЗ
РегистрСведений.КодыПроизводителей КАК КодыПроизводителей
ГДЕ
КодыПроизводителей.Контракт <> ЗНАЧЕНИЕ(Справочник.Контракты.ПустаяСсылка))
ПОЛЕОБЪЕКТА Объект
ПОЛЕВИДА Вид
ПОЛЕЗНАЧЕНИЯ Значение }
Ругается на выражение ОБЪЕДИНИТЬ ВСЕ в секции ВИДЫХАРАКТЕРИСТИК ()
Нужно текст запроса характеристик разбивать на два выражения ХАРАКТЕРИСТИКИ, чтобы стало так
Код запроса с характеристиками, который работает в 8.3.6 Код:
ВЫБРАТЬ
Товары.Ссылка
ИЗ
Справочник.Товары КАК Товары
{ХАРАКТЕРИСТИКИ
ТИП(Справочник.Товары)
ВИДЫХАРАКТЕРИСТИК (ВЫБРАТЬ
"КодЭфеса" КАК Ключ,
"Код Эфеса" КАК Имя,
ТИП(СТРОКА) КАК Тип)
ПОЛЕКЛЮЧА Ключ
ПОЛЕИМЕНИ Имя
ПОЛЕТИПАЗНАЧЕНИЯ Тип
ЗНАЧЕНИЯХАРАКТЕРИСТИК (ВЫБРАТЬ
Т.Объект,
"КодЭфеса" КАК Вид,
Т.КодЭфес КАК Значение
ИЗ
РегистрСведений.артЭфесСведения КАК Т
ГДЕ
Т.Объект ССЫЛКА Справочник.Товары)
ПОЛЕОБЪЕКТА Объект
ПОЛЕВИДА Вид
ПОЛЕЗНАЧЕНИЯ Значение }
{ХАРАКТЕРИСТИКИ
ТИП(Справочник.Товары)
ВИДЫХАРАКТЕРИСТИК (ВЫБРАТЬ РАЗЛИЧНЫЕ
КодыПроизводителей.Контракт КАК Ключ,
"Код по контракту """ + КодыПроизводителей.Контракт.Наименование + "" КАК Имя,
ТИП(СТРОКА) КАК Тип
ИЗ
РегистрСведений.КодыПроизводителей КАК КодыПроизводителей
ГДЕ
КодыПроизводителей.Контракт <> ЗНАЧЕНИЕ(Справочник.Контракты.ПустаяСсылка))
ПОЛЕКЛЮЧА Ключ
ПОЛЕИМЕНИ Имя
ПОЛЕТИПАЗНАЧЕНИЯ Тип
ЗНАЧЕНИЯХАРАКТЕРИСТИК (ВЫБРАТЬ
КодыПроизводителей.Объект,
КодыПроизводителей.Контракт,
КодыПроизводителей.КодПроизводителя
ИЗ
РегистрСведений.КодыПроизводителей КАК КодыПроизводителей
ГДЕ
КодыПроизводителей.Контракт <> ЗНАЧЕНИЕ(Справочник.Контракты.ПустаяСсылка))
ПОЛЕОБЪЕКТА Объект
ПОЛЕВИДА Контракт
ПОЛЕЗНАЧЕНИЯ КодПроизводителя }
При этом наверняка усложняется сам фактический запрос, отправляемый в СУБД, но не тестировал. Вариант 2 работает как на 8.2.19, так и на 8.3.6.2152
Если запрос формируется программно, очень удобно собирать такие запросы в консоли компоновки данных ИР, затем переносить текст запроса в консоль запросов ИР и делать "Копировать текст в буфер обмена в виде выражения встроенного языка".