helpf.pro
Регистрация
 +1 
Распечатать

1С 8.x : Как Получить, Прочитать, Изменить Движения документа по регистру?

Если необходимо просто прочитать движения, без последующей модификации, можно воспользоваться запросом к нужному регистру:
Код 1C v 8.х
 // Чтение движений документа с помощью запроса
Запрос = Новый Запрос;

Запрос.Текст =
"ВЫБРАТЬ
| *
|ИЗ
| РегистрНакопления.ОстаткиНоменклатуры КАК ОстаткиНоменклатуры
|ГДЕ
| ОстаткиНоменклатуры.Регистратор = &Регистратор";

Запрос.УстановитьПараметр("Регистратор", ПолеВводаРегистратор);

В запросе выбираем все поля (кроме виртуальных) из таблицы регистра РегистрНакопления.ОстаткиНоменклатуры с отбором по регистратору. Значением параметра Регистратор нужно будет установить ссылку на документ.

Если же нужно чтение с последующей модификацией движений, следует воспользоваться объектной моделью представления информации: в свойстве Движения объекта документа обратиться к нужному регистру (в нашем случае это регистр ОстаткиНоменклатуры) и прочитать набор записей регистра.
Код 1C v 8.х
 // Чтение движений документа
НаборЗаписейРегистра = Движения.ОстаткиНоменклатуры;

НаборЗаписейРегистра.Прочитать();

Для Каждого Запись из НаборЗаписейРегистра Цикл

// Чтение и модификация очередного движения.

КонецЦикла;


Если требуется изменить движения документа по всем регистрам, нужно обойти фиксированную коллекцию, содержащуюся в свойстве Движения:
Код 1C v 8.х
 // Изменение движений документа
Для Каждого НаборЗаписейРегистра из Движения Цикл
НаборЗаписейРегистра.Прочитать();

Для Каждого Запись из НаборЗаписейРегистра Цикл

// Чтение и модификация очередного движения.

КонецЦикла;

КонецЦикла;

Сначала открываем цикл перебора свойств свойства Движения – коллекций наборов записей регистров, для которых наш документ является регистратором.
Далее читаем наборы записей каждой коллекции и открываем цикл перебора записей данного набора записей.
Разместил:   Версии: | 8.x | 8.2 УП |  Дата:   Прочитано: 27473
 +1 
Распечатать
Возможно, вас также заинтересует
Cообщение: "Не удалось удалить чеки ККМ!" 2
Пользователь с правами Администратор ККМ проводит Закрытие кассовой смены (Z). Выходит сообщение: " Не удалось удалить чеки ККМ!" ФР печатает Z -отчет, но Отчет о рознчничных продажах не формируется. Необходимо дать...
Автоматизация обмена данных используя обработку "Универсальный обмен данными в формате XML" 3
Автоматизация обмена между базами используя обработку " Универсальный обмен данными в формате XML" В основу данной публикации положены найденные мною материалы по cозданию обмена между двумя базами с использованием ...
Автоматическая выгрузка загрузка данных используя регламентное задание 1
Для обмена данными между программами необходимо сделать следующее: 1. При помощи Конвертации Данных создать правила выгрузки данных 2. Нужно чтобы в конфигурации была обработка УниверсальныйОбменДаннымиXML ,...
Блокировка записей, невозможно изменить или удалить из регистра. Конфликт блокировок MS SQL + 1C 1
При попытке удалить запись из регистра сведений - получаю ошибку: она заблокирована, ошибка блокировок и т.д. Отключил всех пользователей, перезапустил сервер, пробую удалить - опять ошибка блокировки :( Путем тестов...
Восстановление партионного учета в УТ 0
Проблема следующая: при выполнении стандартной обработки " проведение по партиям" , непонятно почему, но граница актуальности партионного учета не сдвигается, хотя при перепроведении документов никаких ошибок не...
Посмотреть все результаты поиска похожих
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.