Sapforum.Biz

Инструменты => ABAP - Инструментальные средства => Тема начата: jacknk88 от Июль 16, 2013, 03:01:36 pm

Название: BADI: глобальная переменная
Отправлено: jacknk88 от Июль 16, 2013, 03:01:36 pm
здравствуйте. Для проверки при проводке (тр. MB1B ) по виду движения 309/310 и 391/392 необходимо сделать проверки по количеству материала в проводке. Для этого, до меня уже, был создан Z-ий класс, метод которого срабатывает при нажатии на Сохранить или Enter. Если пользователь у отдающего материала использует сразу несколько партий, то этот метод вызывается столько же раз. Мне надо определить количество в проводке по всем указанным партиям, пр., по  1-ой партии надо menge = 10, по 2-й - 15, по 3-ей - 5, то в сумме 30. Это чтобы потом сравнить с количеством в страхового запаса и объемом свободного используемого запаса.  Понятия не имею где можно объявить глобальную переменную. SET и GET PARAMETR не работает.
Название: Re: BADI: глобальная переменная
Отправлено: Uukrul от Июль 16, 2013, 03:11:24 pm
Это вы используете старую реализацию BADI или новую? Если новую то там довольно прозрачно все хранится, но сейчас объяснить не смогу, вечером постараюсь написать.
Название: Re: BADI: глобальная переменная
Отправлено: jacknk88 от Июль 16, 2013, 03:16:04 pm
You are not allowed to view links. Register or Login
Это вы используете старую реализацию BADI или новую?
  старую....это уже давно до меня делали....в SE19 есть "Новая" и "Классическая"....я использую старую
Название: Re: BADI: глобальная переменная
Отправлено: crxcrvs от Июль 17, 2013, 08:33:49 am
You are not allowed to view links. Register or Login
  старую....это уже давно до меня делали....в SE19 есть "Новая" и "Классическая"....я использую старую
Это совершенно без разницы старая бади  или новая в z классе создаете статический атрибут и в нем накаплиыавете нужное вам значение.
Название: Re: BADI: глобальная переменная
Отправлено: jacknk88 от Июль 17, 2013, 08:34:58 am
вроде получилось...вот отрывок кода

Код: You are not allowed to view links. Register or Login
DATA: menge TYPE BSTMG, " количество в проводке
            mng TYPE string.

if is_mseg-zeile > 1. " чтобы при первом вызове метода не считывать из памяти
     IMPORT p1 = mng FROM MEMORY ID 'MENGE'.
     FREE MEMORY ID 'MENGE'.
      menge = mng.
endif.
   menge = menge + is_mseg-menge.
   mng = menge.
   EXPORT p1 = mng TO MEMORY ID 'MENGE'.
Название: Re: BADI: глобальная переменная
Отправлено: jacknk88 от Июль 17, 2013, 08:35:57 am
You are not allowed to view links. Register or Login
Это совершенно без разницы старая бади  или новая в z классе создаете статический атрибут и в нем накаплиыавете нужное вам значение.

ок..спасибо..попробую