powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / [игнор отключен] [закрыт для гостей] / выгрузка данных из 1С 8.1 поле _RecorderTRef
7 сообщений из 7, страница 1 из 1
выгрузка данных из 1С 8.1 поле _RecorderTRef
    #35405630
В таблице произвольного регистра накопления имеется поле
_RecorderTRef - binary(16) - идентификатор типа документа-регистратора.
В какой таблице БД MSSQL2005 искать значения этого поля, чтобы определить строковое название типа документа, например, платежное поручение исходящее?
...
Рейтинг: 0 / 0
выгрузка данных из 1С 8.1 поле _RecorderTRef
    #35406152
pail
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вообще-то где-то в недрах дерева метаданных - в таблице Config.
Но проще спросить у самой 8.1 - метод ПолучитьСтруктуруХраненияБазыДанных()

Каждая таблица и каждое поле в 1С своем имени имеет числовой идентификатор, уникальный в данной БД (это просто последовательный номер, он присваивается при появлении нового элемента в конфигурации, и никогда не уменьшается).
По значению поля _RecorderTRef ( NN ) можно найти, какому типу данных это соответствует - не обращая внимания на то, что таблица будет называться _DocumentNN ;
...
Рейтинг: 0 / 0
выгрузка данных из 1С 8.1 поле _RecorderTRef
    #35406396
Спасибо!
Правда ли, что поле _IDRRef глобально уникально для всех таблиц _DocumentNN одновременно?
...
Рейтинг: 0 / 0
выгрузка данных из 1С 8.1 поле _RecorderTRef
    #35406409
pail
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вообще-то это GUID - для которого microsoft обещала абсолютную уникальность и неповторяемость в пределах всего мира. Тем более - всех данных одной базы.
...
Рейтинг: 0 / 0
выгрузка данных из 1С 8.1 поле _RecorderTRef
    #35407244
Спасибо! Теперь все понятно : делаем cast(_RecorderTRef as int), получаем число NNN, смотрим таблицу _DocumentNNN с помощью ПолучитьСтруктуруХраненияБазыДанных(), видим что это Документ.Авансовый отчет и т.д.
Еще один вопрос. Получается, если регистр отражает движения по 40 типам документов и я хочу выгрузить все записи регистра вместе с номерами документов-регистраторов, я должен сделать в запросе 40 внешних соединений таблицы _AccumRegXXX с таблицами вида _DocumentNNN ? Не будет ли такой запрос тормозить?
...
Рейтинг: 0 / 0
выгрузка данных из 1С 8.1 поле _RecorderTRef
    #35409367
RMih
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pailвообще-то это GUID - для которого microsoft обещала абсолютную уникальность и неповторяемость в пределах всего мира. Тем более - всех данных одной базы.
Это все так и есть, если не происходит копирования GUID'ов, например при обмене между базами с синхронизацией по ссылкам. Тогда гуиды в разных таблицах могут совпадать. В одной - всегда уникальны.

Артур Бондаренко
Еще один вопрос. Получается, если регистр отражает движения по 40 типам документов и я хочу выгрузить все записи регистра вместе с номерами документов-регистраторов, я должен сделать в запросе 40 внешних соединений таблицы _AccumRegXXX с таблицами вида _DocumentNNN ? Не будет ли такой запрос тормозить?

Будет тормозить, 1С всегда так делает и ее запросы тормозят.

Более продвинутый способ: выбрать _RecorderTRef и _RecorderRRef, а также другие нужные поля из _AccumRegXXX. Затем, программно, на стороне клиента, определить какие виды документов есть в результате запроса, и выполнить отдельный запрос к таблице документов каждого вида. Полученные данные соединить вручную с таблицей проводок. Работает быстрее, чем 40 соединений.
...
Рейтинг: 0 / 0
выгрузка данных из 1С 8.1 поле _RecorderTRef
    #35411979
Re: RMih

Спасибо, так и буду делать.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / [игнор отключен] [закрыт для гостей] / выгрузка данных из 1С 8.1 поле _RecorderTRef
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]