Не получается программно провести документ реализации в УТ 10.3
В УТ 10.3 программно создаю документ и провожу его.
При проведении документа возникает ошибка:
Невозможно провести документ. "Номенклатура такая-то" формирует отрицательные остатки.
При этом если я пробую программно документ лишь записать, после чего интерактивно пробую его провести (также неоперативно), то он успешно проводится.
Как понять, чем в конкретной ситуации программное проведение отличается от интерактивного и как устранить данную ошибку?
При проведении документа возникает ошибка:
Невозможно провести документ. "Номенклатура такая-то" формирует отрицательные остатки.
При этом если я пробую программно документ лишь записать, после чего интерактивно пробую его провести (также неоперативно), то он успешно проводится.
Как понять, чем в конкретной ситуации программное проведение отличается от интерактивного и как устранить данную ошибку?
По теме из базы знаний
- РАУЗ: составление уравнений для расчета себестоимости товаров в программе 1С:Управление торговлей, редакция 11
- Перенос данных из УТ 10.3 в УТ 11 / КА 2 / ERP 2. Переносятся документы, справочники и остатки
- Перенос остатков, документов и справочников из БП 3.0 в УТ 10.3. Переносятся остатки товаров, взаиморасчетов и денежных средств, а также документы и справочники
- Перенос данных из УПП 1.3 в ERP 2 / УТ 11 / КА 2. Переносятся документы, справочная информация и остатки
- Перенос данных из ERP 2/ КА 2 / УТ 11 в УПП 1.3 / КА 1.1 / УТ 10.3. Переносятся все возможные документы и справочники
Ответы
В избранное
Подписаться на ответы
Сортировка:
Древо развёрнутое
Свернуть все
(1)При проведении не оперативно остатки не проверяются, а только когда оперативно.
Нужно в коде написать
Попытка
Документ.Записать();
Документ.Записать(РежимЗаписиДокумента.Проведение. РежимПроведенияДокумента.Неоперативный);
Исключение
Сообщить(ОписаниеОшибки());
КонецПопытки;
Нужно в коде написать
Попытка
Документ.Записать();
Документ.Записать(РежимЗаписиДокумента.Проведение. РежимПроведенияДокумента.Неоперативный);
Исключение
Сообщить(ОписаниеОшибки());
КонецПопытки;
Смотришь запрос проверяющий остатки в базе. Програмно или нет - но там проверка должна проходить. Смотришь что возвращает запрос в консоле запросов. Смотришь параметры которые туда передаются и что влияет на проверку.
В общем проблема оказалась чуть сложнее: у меня одновременно создавались реализации и оприходования в одной транзакции. Но я не учёл, что сначала надо создавать оприходования, а потом реализации =). Не весь контекст в вопросе раскрыл. Сам виноват. И действительно, при неоперативном проведении остатки не сверялись.
Вакансии
Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)