Текущее время: Пт, июл 25 2025, 15:52

Часовой пояс: UTC + 3 часа


Правила форума


Вопросы по ППМ (MRP) - сюда.
Вопросы по классификации - сюда.
Вопросы по входящим поставкам - сюда.



Начать новую тему Ответить на тему  [ Сообщений: 15 ] 
Автор Сообщение
 Заголовок сообщения: Копирование номера накладной в ссыл. поле FI документа
СообщениеДобавлено: Сб, ноя 04 2006, 17:55 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Ср, июл 19 2006, 11:52
Сообщения: 148
Откуда: Минск
Ситуация:

При поступлении/отпуске материала с помощью транзакций MB1A/1C/1B заполняется номер накладной.

Нужно копировать номер накладной в пораждаемый документ FI (поле XBLNR).

Подскажите плиз методы, кто сталкивался с подобной ситуацией.

с уважением,
Влад.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Сб, ноя 04 2006, 18:37 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
В exite(не помню что лучше взять) записываем в мемори ид значение, в замещении считываем и записываем куда надо.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, ноя 08 2006, 12:36 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Ср, июл 19 2006, 11:52
Сообщения: 148
Откуда: Минск
Besa написал:
В exite(не помню что лучше взять) записываем в мемори ид значение, в замещении считываем и записываем куда надо.


А без memory ID не обойтись никак?

насколько я понимаю с копированием в ММ туго в противовес SD.

Есть идея попробовать сделать это в замещении Fi(без копир в memory), ведь у нас будет ссылка на док. ММ и мы можем вычитать из него все что хотим и затем уже записать.

Влад.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, ноя 08 2006, 17:20 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Сб, окт 16 2004, 11:27
Сообщения: 348
Откуда: Москау
Пол: Мужской
DVT написал(а):
Besa написал:
В exite(не помню что лучше взять) записываем в мемори ид значение, в замещении считываем и записываем куда надо.


А без memory ID не обойтись никак?

насколько я понимаю с копированием в ММ туго в противовес SD.

Есть идея попробовать сделать это в замещении Fi(без копир в memory), ведь у нас будет ссылка на док. ММ и мы можем вычитать из него все что хотим и затем уже записать.

Влад.


Вот только учтите, что в момент проводки имеется не физический документ в базе. а только его модель - ссылку придется через память выдирать. Но это в 100 раз надежнее, чем через memory ID.

Есть еще BAdI при при создании документа материала: можно в нем через указатели в таблицу acchd загнать ссылку...

_________________
Тот, у кого хватит храбрости и терпения всю жизнь вглядываться во мрак, первым увидит в нём проблеск света


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, ноя 08 2006, 19:01 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
[quote="Старик"]
ссылку придется через память выдирать. Но это в 100 раз надежнее, чем через memory ID.

Есть еще BAdI при при создании документа материала: можно в нем через указатели в таблицу acchd загнать ссылку...[/quote]

Поделись технологией - как это через память (какими операторами найти в памяти нужное и как в память залезть) все ни как не могу в процессе отладки увидеть содержимое памяти. Подскажи как можно сделать.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, ноя 08 2006, 19:11 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Сб, окт 16 2004, 11:27
Сообщения: 348
Откуда: Москау
Пол: Мужской
Besa написал:
Старик написал:
ссылку придется через память выдирать. Но это в 100 раз надежнее, чем через memory ID.

Есть еще BAdI при при создании документа материала: можно в нем через указатели в таблицу acchd загнать ссылку...


Поделись технологией - как это через память (какими операторами найти в памяти нужное и как в память залезть) все ни как не могу в процессе отладки увидеть содержимое памяти. Подскажи как можно сделать.


это уже ABAPерские причиндалы...

определяется указатель (field-symbol), он "натравливается" (assign) на поле структуры (надо определить в какой программе и в какой именно структуре) и присваивается значение...

_________________
Тот, у кого хватит храбрости и терпения всю жизнь вглядываться во мрак, первым увидит в нём проблеск света


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, ноя 08 2006, 19:25 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
[quote="Старик"]это уже ABAPерские причиндалы...

определяется указатель (field-symbol), он "натравливается" (assign) на поле структуры (надо определить в какой программе и в какой именно структуре) и присваивается значение...[/quote]

Это делали, но в вышеупомянутом случае это не сработает.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, ноя 08 2006, 19:34 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Сб, окт 16 2004, 11:27
Сообщения: 348
Откуда: Москау
Пол: Мужской
Besa написал:
Старик написал:
это уже ABAPерские причиндалы...

определяется указатель (field-symbol), он "натравливается" (assign) на поле структуры (надо определить в какой программе и в какой именно структуре) и присваивается значение...


Это делали, но в вышеупомянутом случае это не сработает.


указатели всегда работают! просто необходимо в нужном месте и на правильный объект сослаться... :)

_________________
Тот, у кого хватит храбрости и терпения всю жизнь вглядываться во мрак, первым увидит в нём проблеск света


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, ноя 09 2006, 12:07 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Ср, июл 19 2006, 11:52
Сообщения: 148
Откуда: Минск
Старик написал:
указатели всегда работают! просто необходимо в нужном месте и на правильный объект сослаться... :)


Может всеже поделитесь конкретным именем инклюда и структуры? :) (время поджимает :( )


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, ноя 09 2006, 12:18 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Сб, окт 16 2004, 11:27
Сообщения: 348
Откуда: Москау
Пол: Мужской
DVT написал(а):
Старик написал:
указатели всегда работают! просто необходимо в нужном месте и на правильный объект сослаться... :)


Может всеже поделитесь конкретным именем инклюда и структуры? :) (время поджимает :( )



BAdI 'MB_DOCUMENT_BADI'
Метод 'MB_DOCUMENT_BEFORE_UPDATE'

Нужно записать во внутр. табл. acchd (вроде так заголовок обзывается)

Как точно обзывается, смотрим на break-point в методе и смотрим вызываемые программы - в них ищем нужную структуру...

_________________
Тот, у кого хватит храбрости и терпения всю жизнь вглядываться во мрак, первым увидит в нём проблеск света


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, ноя 09 2006, 18:45 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
Старик просветил меня... понял.

Только получилось через замещение FI, ставите там

FIELD-SYMBOLS <f1> TYPE ANY.
ASSIGN ('(SAPLMBWL)xmkpf-xblnr') TO <f1>.

и пишете значение <f1> куда хотите.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, ноя 09 2006, 19:58 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Ср, июл 19 2006, 11:52
Сообщения: 148
Откуда: Минск
Besa написал:
Старик просветил меня... понял.

Только получилось через замещение FI, ставите там

FIELD-SYMBOLS <f1> TYPE ANY.
ASSIGN ('(SAPLMBWL)xmkpf-xblnr') TO <f1>.

и пишете значение <f1> куда хотите.


А я вот что-то не допер :(

Замещение FI срабатывает быстрее чем БАДИ, поэтому смысла передавать значение через memory ID нету :(

На сколько я понял Вас, предлагается использовать
ASSIGN ('(SAPLMBWL)xmkpf-xblnr') TO <f1>.
в замещении FI.

Попробовал, но assign не проходит :(
Вроде бы Include SAPLMBWL такой есть ... система ЕСС 6.0

Помогите плиз.

Влад.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, ноя 10 2006, 07:09 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, авг 24 2004, 07:19
Сообщения: 3952
Откуда: ECC 6.0, South Kazakhstan
ну накрутили, зачем ASSIGN в замещении FI, если там это присвоение можно сделать напрямую?

Ведь было же уже предложено стандартное решение:
1. Где-нибудь в экзите (при обработке ММ документа) закинуть в память значение номера накладной
2. В замещении взять из памяти и присвоить BKPF-XBLNR.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, ноя 10 2006, 12:51 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Ср, июл 19 2006, 11:52
Сообщения: 148
Откуда: Минск
OlegDm написал(а):
ну накрутили, зачем ASSIGN в замещении FI, если там это присвоение можно сделать напрямую?


Ну почему накрутили?
На мой взгляд удобнее внести изменения в одном месте, чем в 2-х.
(конечно, в экзите ММ мы можем более четко определиться с ситуациией, когда нужно передавать значение, а когда нет)

Я не нашел экзита в ММ(чтобы работал до вызова замещения FI), в который бы передавались сразу все позиции документа. Т.е. если есть 2 позиции, то в экзит попадаем 2 раза.

В замещении на заголовок (!) фин. документа почему-то тоже заходим количество раз равное количеству позиций этого документа.

Может быть кто-то знает как это победить? :)

с уважением,
Влад.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, ноя 10 2006, 12:59 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, авг 24 2004, 07:19
Сообщения: 3952
Откуда: ECC 6.0, South Kazakhstan
ну это победить легко - все обработки делаем когда обрабатываем 1-ю позицию


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 15 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB