Имя: Пароль:
1C
1С v8
Где в SQL хранится ХранилищеНастроек?
0 bolero
 
05.01.19
17:10
Добрых трудовыходных!

Пытаюсь вытащить установки цен в УТ11 с устаревшими параметрами компоновки данных через SQL запрос.

В модуле есть такого плана конструкции:

ПараметрыСхемКомпоновкиДанныхВидовЦен = ПолучитьИзВременногоХранилища(АдресХранилищаПараметровСхемКомпоновкиПоВидамЦен);

В ТЧ УстановкаЦенНоменклатуры_ВидыЦен есть поле НастройкиКомпоновкиДанных, и оно длиной 18 байт вместо 16. Т.е. это не guid. _Возможно_, что первые два байта - тип ссылки, а остаток - guid, но никаких связей не обнаружил.

https://its.1c.ru/db/metod8dev#content:1798:hdoc уже прокурил насквозь, просветления не наступило. ПолучитьСтруктуруХраненияБазыДанных() по поводу хранилища также молчит.

Сам факт, что настройки, касающиеся содержимого документа, хранятся во _временном хранилище_ сам по себе доставляет, но придется с этим жить.

В какой таблице их раскопать? И что за 18 байт, почему не 16?
1 МихаилМ
 
05.01.19
17:41
2 bolero
 
05.01.19
18:24
(1) Спасибо! Временное хранилище действительно там, но оказалось, что я не туда копал. В хранилище все-таки настройки формы, которую пользователь даже не заполняет.

Настройки параметров вида цены хранятся прямо в поле НастройкиКомпоновкиДанных ТЧ УстановкаЦенНоменклатуры_ВидыЦен в виде XML + какие-то служебные поля.

А 18 байт - минимальный размер этих служебных полей (пустые настройки). Надо было всего-лишь долистать до непустых, чтобы это увидеть.
3 МихаилМ
 
05.01.19
18:52
не проверял, но вряд ли в виде xml . а в виде внутренней структуры, которую легко привести заменой к xml.
Оптимист верит, что мы живем в лучшем из миров. Пессимист боится, что так оно и есть.