Текущее время: Чт, июл 24 2025, 02:45

Часовой пояс: 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 часа


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

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

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