Добрый день!
Платформа 8.2 УТ 10.3 Есть сводная накладная в которой формируются документы РТиУ по водителю или экспедитору. Как запретить изменение или перепроведение накладной РТиУ, если накладная уже попала в сводную накладную. и сводная проведена.
Подскажите где, что читать или вообще откуда начать.
Платформа 8.2 УТ 10.3 Есть сводная накладная в которой формируются документы РТиУ по водителю или экспедитору. Как запретить изменение или перепроведение накладной РТиУ, если накладная уже попала в сводную накладную. и сводная проведена.
Подскажите где, что читать или вообще откуда начать.
Найденные решения
(2) Спасибо за помощь.
Решил таким образом через КЗ, не знаю правильно ли, но оно работает. В Модуль объекта документа РТУ в ОбработкеПроведения, в конце добавил запрос
Решил таким образом через КЗ, не знаю правильно ли, но оно работает. В Модуль объекта документа РТУ в ОбработкеПроведения, в конце добавил запрос
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
| СводнаяНакладнаяРасходныеНакладные.РасходнаяНакладная
|ИЗ
| Документ.СводнаяНакладная.РасходныеНакладные КАК СводнаяНакладнаяРасходныеНакладные
|ГДЕ
| СводнаяНакладнаяРасходныеНакладные.РасходнаяНакладная = &Ссылка
| И СводнаяНакладнаяРасходныеНакладные.РасходнаяНакладная.Проведен";
Запрос.УстановитьПараметр("Ссылка", Ссылка);
РезультатЗапроса = Запрос.Выполнить();
Если Не РезультатЗапроса.Пустой() Тогда
Отказ = истина
КонецЕсли;
Показать
(8) Правильно, но по смыслу условие "И СводнаяНакладнаяРасходныеНакладные.РасходнаяНакладная.Проведен" надо заменить на "И СводнаяНакладнаяРасходныеНакладные.Ссылка.Проведен", т.е. лучше искать не проведенные расходные накладные, а проведенную сводную накладную.
Легко провести тест. Если расходная накладная попала в проведенную сводную и сводная проведена, то непроведенная расходная накладная проведется, и наоборот, если сводная распроведена или например помечена на удаление, но в ней есть реализация, то реализацию нельзя будет провести. По мне так, это не хорошо.
И еще надо проверить отмену проведения документа реализации, скорее всего туда тоже надо поставить проверку.
Легко провести тест. Если расходная накладная попала в проведенную сводную и сводная проведена, то непроведенная расходная накладная проведется, и наоборот, если сводная распроведена или например помечена на удаление, но в ней есть реализация, то реализацию нельзя будет провести. По мне так, это не хорошо.
И еще надо проверить отмену проведения документа реализации, скорее всего туда тоже надо поставить проверку.
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Как вариант, в обработке проведения РТиУ добавить что-то вроде
Запрос = Новый Запрос;
Запрос.Текст = "Выбрать Т.РеализацияТоваровУслуг из Документы.СводнаяНакладная.НеЗнаюКакНазываетсяТЧГдеЛежатРТиУ КАК Т Где РеализацияТоваровУслуг = &Ссылка И Документы.СводнаяНакладная.Проведен";
Запрос.УстановитьПараметр("Ссылка", Ссылка);
РезультатЗапроса = Запрос.Выполнить();
Если Не РеузультатЗапроса.Пустой() Тогда
Отказ = истина
КонецЕсли;
(2) Спасибо за помощь.
Решил таким образом через КЗ, не знаю правильно ли, но оно работает. В Модуль объекта документа РТУ в ОбработкеПроведения, в конце добавил запрос
Решил таким образом через КЗ, не знаю правильно ли, но оно работает. В Модуль объекта документа РТУ в ОбработкеПроведения, в конце добавил запрос
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
| СводнаяНакладнаяРасходныеНакладные.РасходнаяНакладная
|ИЗ
| Документ.СводнаяНакладная.РасходныеНакладные КАК СводнаяНакладнаяРасходныеНакладные
|ГДЕ
| СводнаяНакладнаяРасходныеНакладные.РасходнаяНакладная = &Ссылка
| И СводнаяНакладнаяРасходныеНакладные.РасходнаяНакладная.Проведен";
Запрос.УстановитьПараметр("Ссылка", Ссылка);
РезультатЗапроса = Запрос.Выполнить();
Если Не РезультатЗапроса.Пустой() Тогда
Отказ = истина
КонецЕсли;
Показать
(8) Правильно, но по смыслу условие "И СводнаяНакладнаяРасходныеНакладные.РасходнаяНакладная.Проведен" надо заменить на "И СводнаяНакладнаяРасходныеНакладные.Ссылка.Проведен", т.е. лучше искать не проведенные расходные накладные, а проведенную сводную накладную.
Легко провести тест. Если расходная накладная попала в проведенную сводную и сводная проведена, то непроведенная расходная накладная проведется, и наоборот, если сводная распроведена или например помечена на удаление, но в ней есть реализация, то реализацию нельзя будет провести. По мне так, это не хорошо.
И еще надо проверить отмену проведения документа реализации, скорее всего туда тоже надо поставить проверку.
Легко провести тест. Если расходная накладная попала в проведенную сводную и сводная проведена, то непроведенная расходная накладная проведется, и наоборот, если сводная распроведена или например помечена на удаление, но в ней есть реализация, то реализацию нельзя будет провести. По мне так, это не хорошо.
И еще надо проверить отмену проведения документа реализации, скорее всего туда тоже надо поставить проверку.
{Документ.РеализацияТоваровУслуг.МодульОбъекта(5474)}: Ошибка при вызове метода контекста (Выполнить)
РезультатЗапроса = Запрос.Выполнить();
по причине:
{(1, 37)}: Таблица не найдена "Документы.СводнаяНакладная.РасходныеНакладные"
Выбрать Т.РеализацияТоваровУслуг из <<?>>Документы.СводнаяНакладная.РасходныеНакладные КАК Т Где РеализацияТоваровУслуг = &Ссылка И Документы.СводнаяНакладная.Проведен
РезультатЗапроса = Запрос.Выполнить();
по причине:
{(1, 37)}: Таблица не найдена "Документы.СводнаяНакладная.РасходныеНакладные"
Выбрать Т.РеализацияТоваровУслуг из <<?>>Документы.СводнаяНакладная.РасходныеНакладные КАК Т Где РеализацияТоваровУслуг = &Ссылка И Документы.СводнаяНакладная.Проведен
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот