|   |   | 
| 
 | УТ 11 динамическое изменение функциональной опции | ☑ | ||
|---|---|---|---|---|
| 0
    
        m1_1976 27.02.23✎ 16:09 | 
        УТ 11.5.10.xx
 1) Важно: Про "интеркампани" знаю!!!! СУТЬ: 2) Сейчас в УТ три организации По двум из них расходные документы хочу проводить со снятой галочкой КОНТРОЛИРОВАТЬ ОСТАТКИ ОРГАНИЗАЦИЙ - всегда галочка снята 3) А вот по одной организации (из 300 документов в день только 5-10 штук по ней проходит) нужно контролировать остатки организации. Попытка такая: Это пробую в Расширении в модуле объекта Реализация товаров и услуг. Важно: В УТ 11.5 проверка идет в ПЕРЕДЗАПИСЬЮ... а не в обработке проведения. Перед("ПередЗаписью") Процедура м1ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения) Если РежимЗаписи = РежимЗаписиДокумента.Проведение Тогда Если СОКРЛП(Организация.ИНН)=НУЖНЫЙ_ИНН тогда //НУЖНАЯ мне организация! Константы.КонтролироватьОстаткиТоваровОрганизаций.Установить(Истина); Иначе Константы.КонтролироватьОстаткиТоваровОрганизаций.Установить(Ложь); КонецЕсли; КонецЕсли; КонецПроцедуры &После("ПередЗаписью") Процедура м1ПередЗаписьюПосле(Отказ, РежимЗаписи, РежимПроведения) Константы.КонтролироватьОстаткиТоваровОрганизаций.Установить(Ложь); КонецПроцедуры ================ Не срабатывает! Я так понимаю это одна транзакция и на момент проверок константа так и остается в ЛОЖЬ :(((( ================ Подскажите может есть еще какой простой способ в лоб решить задачу | |||
| 1
    
        unenu 27.02.23✎ 17:45 | 
        при выключении есть сноска в форме (на время сеанса)
 в сторону этой сноски и копайте - она говорит о том, что отключение можно дифференцировать. ну глобальным поиском поищете в коде по полям настройки. | |||
| 2
    
        m1_1976 27.02.23✎ 20:31 | 
        (1) Вы что-то спутали. Кнопка отключить на время сеанса отключает вообще контроль остатков. А мне надо именно Контроль остатков организации.
 Сейчас операторы делают так. Проводят из 300 -> 290 документов по второй и третьей фирме - где все перепутано. В этот момент галочка "Контроль остатков организации" не стоит! Там один купил, второй продал ну или наоборот. Там все ок! Так можно. А потом вручную ставят галочку "Контролировать остатки организации" и проводят документы по третьей фирме - которая торгует только своим. Там проверка работает. Она нужна. Ассортимент сильно пересекается. Хотел их избавить от необходимости вручную ставить эту галочку. А тут вот... | |||
| 3
    
        m1_1976 27.02.23✎ 20:33 | 
        (1) Ой - ... сорри. Это я напутал... Да действительно. Все так как Вы пишете. 
 Спасибо! Буду завтра курить это дело!!! Там вообще - то что нужно. Для контректного пользователя. Прям вот то что нужно! | |||
| 4
    
        m1_1976 09.03.23✎ 09:12 | 
        В общем с трудом решил задачу.
 Суть была такая два ИП могут продавать товар друг друга, а ООО - только свой. Оказывается эта опция "КонтролироватьОстаткиТоваровОрганизаций" срабатывает только при проведении из непроведенного документа!! Если до этого документ уже провели - она не срабатывает. Я так понял. Задачу решил добавлением такого кода: &Перед("ПередЗаписью") Процедура м1ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения) Если РежимЗаписи = РежимЗаписиДокумента.Проведение Тогда Если СОКРЛП(Организация.ИНН)=НУЖНЫЙ_ИНН тогда //ООО Если Проведен ТОгда Записать(РежимЗаписиДокумента.ОтменаПроведения); Конецесли; Константы.КонтролироватьОстаткиТоваровОрганизаций.Установить(Истина); Иначе Константы.КонтролироватьОстаткиТоваровОрганизаций.Установить(Ложь); КонецЕсли; КонецЕсли; КонецПроцедуры | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |