Посоветуйте, пожалуйста, альтернативное решение. Обратила внимание, что выборка нечасто передается в качестве параметров, наверное есть этому причины.
Запрос.УстановитьПараметр("Сотрудник", Объект.Сотрудник);
РезультатЗапроса = Запрос.Выполнить();
Если НЕ РезультатЗапроса.Пустой() Тогда
Выборка = РезультатЗапроса.Выбрать();
Пока Выборка.Следующий() Цикл
Если Выборка.РегистраторНомер = "№xxx" Тогда
Выборка.Сбросить();
СоздатьНовыйПеренос(Выборка);
Иначе
Выборка.Сбросить();
ЗаполнитьТаблицуКадровыеДанные(Выборка);
КонецЕсли;
Прервать;
КонецЦикла;
КонецЕсли;
ПоказатьПо теме из базы знаний
- Как можно "положить" SQL сервер с помощью обычной консоли запросов 1С
- Кому и зачем нужна автоматизация? Кто и как ее должен делать?
- Маркировка: как не надо печатать этикетки SSCC
- Как избавиться от большого количества комментариев в коде с использованием EDT + Git
- 7 смертных грехов начинающего тимлида. Или как пережить трансформацию из разработчика в руководителя и не сгореть
Найденные решения
(4) Цикл явно лишний, почему вы игнорируете предыдущие комментарии? Не вдаваясь в логику вашего решения, код можно оформить так:
Запрос.УстановитьПараметр("Сотрудник", Объект.Сотрудник);
Выборка = Запрос.Выполнить().Выбрать();
Если Выборка.Следующий() Тогда
Если Выборка.РегистраторНомер = "№xxx" Тогда
Выборка.Сбросить();
СоздатьНовыйПеренос(Выборка);
Иначе
Выборка.Сбросить();
ЗаполнитьТаблицуКадровыеДанные(Выборка);
КонецЕсли;
КонецЕсли;
ПоказатьОстальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(2) Объясню суть задачи. Есть один документ ПереносДанных (далее ПД)в котором один РС, примерно 30 тысяч записей. Нужен механизм, который позволит пользователю исправлять данные этого регистра.
Суть обработки в том, из этого одного большого ПД удаляю записи по сотруднику, и создаю новый ПД для одного сотрудника.
Вариант что по одному сотруднику два регистратора не предусматривается - записи либо в старом, либо в новом ПД. Поэтому определяюсь с регистратором (Выборка.РегистраторНомер = "№xxx"), а затем либо создаю новый ПД + заполняю ТЧ обработки, либо сразу заполняю ТЧ обработки (новый ПД уже создан).
Суть обработки в том, из этого одного большого ПД удаляю записи по сотруднику, и создаю новый ПД для одного сотрудника.
Вариант что по одному сотруднику два регистратора не предусматривается - записи либо в старом, либо в новом ПД. Поэтому определяюсь с регистратором (Выборка.РегистраторНомер = "№xxx"), а затем либо создаю новый ПД + заполняю ТЧ обработки, либо сразу заполняю ТЧ обработки (новый ПД уже создан).
(4) Цикл явно лишний, почему вы игнорируете предыдущие комментарии? Не вдаваясь в логику вашего решения, код можно оформить так:
Запрос.УстановитьПараметр("Сотрудник", Объект.Сотрудник);
Выборка = Запрос.Выполнить().Выбрать();
Если Выборка.Следующий() Тогда
Если Выборка.РегистраторНомер = "№xxx" Тогда
Выборка.Сбросить();
СоздатьНовыйПеренос(Выборка);
Иначе
Выборка.Сбросить();
ЗаполнитьТаблицуКадровыеДанные(Выборка);
КонецЕсли;
КонецЕсли;
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот