В чём суть кода: есть ТЧ в РТУ и регистр СНО, в котором номенклатура и сно. Пытаюсь сделать, чтобы в РТУ можно было нажать кнопку и товары поделились по СНО и на каждый СНО создался отдельный документ РТУ.
Но по нажатию ничего не происходит. Точку остановки ставил, даже на ней не останавливается, уже кнопку на саму форму пробовал добавить.
Но по нажатию ничего не происходит. Точку остановки ставил, даже на ней не останавливается, уже кнопку на саму форму пробовал добавить.
Процедура РазделитьСно ()
Запрос = Новый Запрос;
Запрос.Текст =
"
|ВЫБРАТЬ
| Товары.Номенклатура КАК Товар,
| Товары.Количество КАК Количество,
| Товары.Цена КАК Цена,
| РегСНО.СНО КАК СНО
|ИЗ
| Документ.РеализацияТоваровУслуг.Товары КАК Товары
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СНОПоТоварам КАК РегСНО
| ПО Товары.Номенклатура = РегСНО.Номенклатура";
Результат = Запрос.Выполнить().Выбрать();
ТаблицыПоСНО = Новый Соответствие;
Пока Результат.Следующий() Цикл
Если Не ТаблицыПоСНО.СодержитКлюч(Результат.СНО) Тогда
ТаблицыПоСНО.Вставить(Результат.СНО, Новый ТаблицаЗначений);
ТаблицыПоСНО[Результат.СНО].Колонки.Добавить("Номенклатура");
ТаблицыПоСНО[Результат.СНО].Колонки.Добавить("Количество");
ТаблицыПоСНО[Результат.СНО].Колонки.Добавить("Цена");
КонецЕсли;
НоваяСтрока = ТаблицыПоСНО[Результат.СНО].Добавить();
НоваяСтрока.Номенклатура = Результат.Товар;
НоваяСтрока.Количество = Результат.Количество;
НоваяСтрока.Цена = Результат.Цена;
КонецЦикла;
Для Каждого СНО Из ТаблицыПоСНО Цикл
НовыйДокумент = Документы.РеализацияТоваровУслуг.СоздатьДокумент();
Для Каждого Товар Из ТаблицыПоСНО[СНО] Цикл
НоваяСтрока = НовыйДокумент.Товары.Добавить();
НоваяСтрока.Номенклатура = Товар.Номенклатура;
НоваяСтрока.Количество = Товар.Количество;
НоваяСтрока.Цена = Товар.Цена;
КонецЦикла;
НовыйДокумент.СНО = СНО;
НовыйДокумент.Записать();
КонецЦикла;
КонецПроцедуры
ПоказатьПо теме из базы знаний
- Реализация подбора на основе управляемых форм 1С 8.2
- Разработка технического задания. Что это такое, зачем оно нужно, с чего начать и как должно выглядеть?
- Методология i3 как основа новой экономики. Индустрия 5.0
- Как мы создаем виртуального помощника
- Нестандартные приемы безопасной разработки и эксплуатации ПО на платформе 1С, категория "18+"
Найденные решения
А если этих СНО несколько на один товар? А если ни одного? А если в документе несколько строк с одним товаром? А почему мы вообще все реализации загоняем в этот запрос? Код выглядит наброском для начала размышлений о необходимости учебы...
И не в порядке поучений, но рассмотри такой объект как дерево значений. Очень удобная штука для деления всяких списков по одному из реквизитов.
(1)
это да, вопрос. Тут надо с самого начала, в кнопке какой код, какая процедура, там ставим остановку отладчика, дальше по шагам. Может проблема и не в этом коде, а где-то раньше.
И не в порядке поучений, но рассмотри такой объект как дерево значений. Очень удобная штука для деления всяких списков по одному из реквизитов.
(1)
Но по нажатию ничего не происходит
это да, вопрос. Тут надо с самого начала, в кнопке какой код, какая процедура, там ставим остановку отладчика, дальше по шагам. Может проблема и не в этом коде, а где-то раньше.
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
А если этих СНО несколько на один товар? А если ни одного? А если в документе несколько строк с одним товаром? А почему мы вообще все реализации загоняем в этот запрос? Код выглядит наброском для начала размышлений о необходимости учебы...
И не в порядке поучений, но рассмотри такой объект как дерево значений. Очень удобная штука для деления всяких списков по одному из реквизитов.
(1)
это да, вопрос. Тут надо с самого начала, в кнопке какой код, какая процедура, там ставим остановку отладчика, дальше по шагам. Может проблема и не в этом коде, а где-то раньше.
И не в порядке поучений, но рассмотри такой объект как дерево значений. Очень удобная штука для деления всяких списков по одному из реквизитов.
(1)
Но по нажатию ничего не происходит
это да, вопрос. Тут надо с самого начала, в кнопке какой код, какая процедура, там ставим остановку отладчика, дальше по шагам. Может проблема и не в этом коде, а где-то раньше.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот