Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

Корректность обхода выборки с созданием недостающих элементов справочника

Корректность обхода выборки с созданием недостающих элементов справочника
Я
   Franchiser
 
25.09.18 - 15:23
Могут ли быть проблемы, описанные ниже, в случае когда нужно обойти выборку, при этом если значение 1 поле (например, Контрагент) не заполнено, то в коде происходит создание нового Контрагента.

"Следует учитывать, что если в процессе обхода выборки данные изменяются (в данной сессии, или другими сессиями), то могут возникать такие ситуации, как получение данных удаленного объекта, получение в выборке одного объекта два раза, не попадание некоторых записей в выборку и т.д.

Это объясняется описанными выше технологическими особенностями работы динамической выборки. Например, после считывания первого блока записей выполнено изменение одного из объектов и в результате значения полей по которым упорядочена выборка изменились. Тогда эта запись может попасть в выборку повторно, если в результате изменения она стала в порядке следования позже, чем была раньше. Если в процессе выборки выполняемой одной сессией в другой сессии объект изменился и в результате изменений в порядке выборки он стал раньше, чем был до изменения, то при определенном совпадении по времени этих процессов, объект вообще не попадет в выборку. Например, пока выборка обходила товары на букву "А", товар "Бета" переименовали в "Альфа". В этом случае, он может не "успеть" попасть в часть выборки на букву "Б" и "опоздать" попасть в часть выборки на букву "А"." https://its.1c.ru/db/metod8dev#content:2703:hdoc
 
 
   PR
 
1 - 25.09.18 - 15:25
Заинтриговал
Продолжай
   dmt
 
2 - 25.09.18 - 15:26
(0) обходи выборку из результатов запроса
   Franchiser
 
3 - 25.09.18 - 15:30
Ну что продолжать
Есть выборка:
Документ, Код Контрагента,  ИНН, СсылкаНаКонтрагента

СсылкаНаКонтрагента может быть заполненная или нет, В процессе обхода выборки я создаю контрагентов, которые остутствуют.

Может быть в результате такой операции произойти что-то с выборкой: одна строка, которая уже была в выборке попасться повторно, или же какая-то строка вообще пропуститься? Существующие объекты я не меняю, но создаю новые.
   Franchiser
 
4 - 25.09.18 - 15:32
(2) а я что делаю? обхожу выборку из результатов запроса.
   Franchiser
 
5 - 25.09.18 - 15:33
Правильно я понимаю, что к запросам это отношение не имеет, а только к менеджерам прикладных объектов?

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует