Как при проведении документа добавить новый товары в таблицу и провести документ?

1. 14.10.21 09:44 Сейчас в теме
При проведении или при/перед записи нужно в таблицу Запасы документа Отчёт о розничных продажах добавить новую строку с товарам и провести документ.
Проблема в том,если при проведении или при записи получить объект этого документа и записать, то выдает ошибку "Аварийная ошибка". Без каких-то объяснений по ошибке
Использую обработку проведения из-за того,что из кассы поступает отчёт по продажам и автоматически создаётся и проводится документ.
Для доработки использую Расширение. Пытался делать перед проведением и после проведения.
Если перед проведением или после проведения добавить новую строку и не записывать,то этот новый документ не попадает в движения по регистрам, а если записывать,выдает ошибку "Аварийная ошибка"
Ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. TokarevV 14.10.21 09:49 Сейчас в теме
ПередЗаписью пробовали?
3. user1202776 14.10.21 09:54 Сейчас в теме
(2)да, пробовал. Новая запись в таблицу записывается, но по регистрам почему-то не проводится
6. RustamZz 14.10.21 10:09 Сейчас в теме
(3) А при повторной записи (интерактивной) появляются движения?
TokarevV; +1 Ответить
8. user1202776 14.10.21 13:44 Сейчас в теме
(6)нет, не появляются. Несколько раз проверил, не появляются
9. RustamZz 14.10.21 14:17 Сейчас в теме
(8) Давайте тогда еще раз. Допустим у нас документ с пустой ТЧ. Перед записью этого документа идет обращение к РС и заполняется ТЧ. Мы снова открываем этот же документ и теперь в нем появилась заполненная строка с нужными данными. Мы проводим документ ошибок при проведении нет, но и проводок у него нет. Правильно?
10. user1202776 14.10.21 15:32 Сейчас в теме
11. user1202776 14.10.21 15:32 Сейчас в теме
(9) проводки есть, но в проводке все товары, кроме моего нового товара
12. Release 14.10.21 15:49 Сейчас в теме
(11) А какая конфигурация? Типовая на поддержке или изменённая?
14. user1202776 14.10.21 16:06 Сейчас в теме
(12)УНФ. Релиз сейчас не смогу сказать. Один из самых новых. На поддержке. Дорабатываю через Расширение
16. Release 14.10.21 16:18 Сейчас в теме
(14) Схема реализации по добавленной строке заполняется?
17. user1202776 15.10.21 17:11 Сейчас в теме
(16)что значит схема реализации?
25. Release 15.10.21 22:43 Сейчас в теме
(17) Извиняюсь, в УНФ этого нет.

Можно проверить есть ли ваша новая строка на момент проведения.
Поставьте точку останова в процедуре ОбработкаПроведения() модуля объекта в её начале или на строке:
// Инициализация данных документа.
Документы.ОтчетОРозничныхПродажах.ИнициализироватьДанныеДокумента(Ссылка, ДополнительныеСвойства);
И через "Ссылка.Запасы" проверьте, есть ли там эта новая строка.

Если её нет, то тут уже нужно смотреть ваш код добавления строки в расширении.
26. user1202776 16.10.21 08:52 Сейчас в теме
27. Release 16.10.21 09:46 Сейчас в теме
(26) Тогда даже не знаю, я сделал подобное расширение и у меня по регистрам всё отлично отразилось. При добавлении просто копировал данные первой строки:
&Перед("ПередЗаписью")
Процедура Расш1_ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
	НоваяСтрока = Запасы.Добавить();
	
	ЗаполнитьЗначенияСвойств(НоваяСтрока, Запасы.Получить(0));
КонецПроцедуры

Там при проведении, в запросе, только одна проверка в ТЧ Запасы по каждой строке на значение в поле "Всего" > 0. Ну и на остатки ещё, но тогда бы ругалось, что не хватает на остатке и не проводилось.

Пробуйте, для эксперимента, сделать как я - копировать данные первой строки в новую. Главное, чтобы по ней остатки были. Если так по новой строке проводки будут (они должны свернуться с первой, т.е. числовые значения удвоятся), то проверяйте всё же ваше заполнение новой строки при добавлении.
13. RustamZz 14.10.21 15:57 Сейчас в теме
(11) У меня в примере нет ничего в ТЧ, а у вас какие-то проводки. Вы можете для тестовых целей удалить все строки из документа перед его записью?
15. user1202776 14.10.21 16:08 Сейчас в теме
(13)да. Через несколько часов сделаю, когда будет доступ к компу
18. user1202776 15.10.21 17:16 Сейчас в теме
(13) удалил все строки перед записью. В таблицу добавился мой новыйтовар, но в проводках нет этого товара
19. user1202776 15.10.21 17:17 Сейчас в теме
(13) если второй раз интерактивно провести документ, все равно проводки по этому товару не появляются
20. RustamZz 15.10.21 17:20 Сейчас в теме
(19) А ошибка какая? Это же УНФ? ТипНоменклатурыЗапас не забыл заполнить?
21. user1202776 15.10.21 17:27 Сейчас в теме
(20)никакой ошибки нет. Просто не проводится и все
22. user1202776 15.10.21 17:27 Сейчас в теме
(20) очень странно конечно, но проводок нет
23. user1202776 15.10.21 17:47 Сейчас в теме
(20)да, УНФ 1.6
Такого реквизита вообще не нахожу
24. user1202776 15.10.21 18:30 Сейчас в теме
(20)у номенклатуры тип Номенклатуры установлен запас
4. RustamZz 14.10.21 09:54 Сейчас в теме
(1) Если добавлять, то уж ПередЗаписью, но то что делаете очень похоже на абсурд. Сколько раз будет записываться документ столько добавится строк? Бухгалтера иногда по нескольку раз закрывают месяц в этот момент перепроводятся, а значит перезаписываются все документы.
VladimirB; +1 Ответить
5. user1202776 14.10.21 09:58 Сейчас в теме
(4)не абсурд. С базой будет работать только человек,который знает что и как работает. Из регистра сведений будет добавляться одна строка (при определенных условиях) и после этого эта запись будет удалена из регистра. Таким образом в документ будет добавлять одна одна строка
7. TokarevV 14.10.21 10:36 Сейчас в теме
(5) Ответьте на 3. А при повторной записи (интерактивной) появляются движения?
Оставьте свое сообщение
Вопросы с вознаграждением
Вакансии
Программист 1С
Москва
зарплата от 150 000 руб. до 200 000 руб.
Полный день

Ведущий разработчик 1С
Москва
зарплата от 250 000 руб.
Полный день

Руководитель проектов 1С
Москва
зарплата от 200 000 руб.
Полный день

Консультант-аналитик 1С
Нижний Новгород
зарплата от 55 000 руб. до 100 000 руб.
Полный день

Аналитик 1С ERP
Санкт-Петербург
зарплата до 200 000 руб.
Полный день