Sapforum.Biz
Логистика => Управление материальными потоками (MM) => Тема начата: вафля от Август 26, 2011, 04:57:50 pm
-
Привет комрады! Что то с условиями у меня беда.. :o
В общем создал что то на подобии НДС (скопировал с NAVS), открыл на изменение, включил в схему калькуляции, посчитал в заказе на поставку.
Но я то хочу его изменить!!! 8)
Так вот когда меняю его руками и нажимаю ентер - оно у меня снова пересчитывается игнорируя мой ввод. Вопрос может на 3 копейки, как его заставить пересчитываться только по событию (B - Провести новый расчет цен)? Или как там оно правильно делать... Предпосылки нужной в стандарте вроде не нашел, проги тоже не особо хочется писать, может какой чек бокс про есть? ::)
-
Т.е. получается, что у тебя условие расчитывается? Но изредка нужно вводить руками?
Тогда заведи два условия, одно которое расчитываемое, а второе ручного ввода. Для первого, в схеме каькуляции, укажи предпосылку, по которой первое срабатывает только если не введено второе. Для примера смотри условия PB00 и PBXX.
-
Предпосылки нужной в стандарте вроде не нашел
Да что там ту предпосылку писать то... времени на 15 минут.
-
Т.е. получается, что у тебя условие расчитывается? Но изредка нужно вводить руками?
Тогда заведи два условия, одно которое расчитываемое, а второе ручного ввода. Для первого, в схеме каькуляции, укажи предпосылку, по которой первое срабатывает только если не введено второе. Для примера смотри условия PB00 и PBXX.
Ну не совсем ) Просто НДС входящий у нас расчитывается в знп, но по факту в доках поставщика он может быть другой - отличаться на копейки. У кого - то из поставщиков 1С, а кто то на счетах считает. Ну вот ради этих целей и хочу менять уже рассчитанное условие дабы тянуть его в печ форму М4
Да что там ту предпосылку писать то... времени на 15 минут.
Да я так и понял, что придется кодить. С утра попробую поднапрячься ???
-
Кстати, комрады, предпосылка давно работает в продуктивной системе
Хоть и кряк, но все равно решил поделиться :)
sy-subrc = 4.
"подмена типа условия для предотвращения его пересчета после ручного ввода
IF komv-kbetr NE komv-kwert.
komv-kntyp = ''.
ENDIF.
" а дальше код стандартной 60й предпосылки
* Services ?
IF NOT komp-pstyp = '9'.
sy-subrc = 0.
EXIT.
ENDIF.
* read table of countries
IF t005-land1 NE komk-land1.
SELECT SINGLE * FROM t005
WHERE land1 = komk-land1.
ENDIF.
CHECK t005-kzsrv IS INITIAL.
sy-subrc = 0.