Текущее время: Ср, май 14 2025, 08:42

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


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


ВНИМАНИЕ!

Вопросы по исходящим поставкам - сюда



Начать новую тему Ответить на тему  [ Сообщений: 15 ] 
Автор Сообщение
 Заголовок сообщения: Добавление новой позиции в Sales Order
СообщениеДобавлено: Ср, апр 19 2006, 20:07 
Гость
Привет всем !

Есть задача:
При сохранении нового заказа (тр. VA01), в случае выполнения определенных условий, необходимо добавить еще одну позицию в заказ.

Пытаюсь сделать это в user-exit SAVE_DOCUMENT_PREPARE:
1. Проверяю условия
2. Пытаюсь добавить еще одну запись в XVBAP. Здесь возникли сложности. Мне известны только номер материала который нужно добавить и количество. Не знаю как получить остальные данные для XVBAP по этому материалу. При добавлении материала в заказ вручную все данные по нему подтягиваются автоматически. Может есть какой-нить ФМ который это делает?

Может кто-нибудь уже сталкивался с такой задачей?

Спасибо!


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, апр 20 2006, 07:35 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Чт, авг 26 2004, 09:14
Сообщения: 92
Откуда: Киев
а конкретнее описать ситуацию нельзя?? :))

просто у нас тоже есть такая потребность.. но мы разрулили с помощью спецификаций.. и работает это только в ручном режиме.
Т.е. создаёшь на материал несколько спецификаций.. и при создании заказа уже сбытовик сам решает какую спецификацию вставлять...

как сделать это автоматически... ну я даже и не знаю :)

_________________
Сохрани нас Бог от дураков, а уж с врагами мы сами справимся...


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, апр 20 2006, 08:34 
Специалист
Специалист

Зарегистрирован:
Вт, ноя 01 2005, 13:15
Сообщения: 228
Откуда: Москва
Мне кажется, вы явно пошли не по тому пути. Лучше дейстовать через конфигурацию и спецификацию. В крайнем случае добавить позицию через BAPI после сохранения. Лучше опишите бизнес процесс.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, апр 20 2006, 10:55 
Гость
Большое спасибо всем за ваши ответы !

Если конкретнее, то ситуация следующая. При создании Sales Order, если Payer заказа есть в пользовательской таблице, то в заказ необходимо добавить еще одну позицию. Известен номер материала который нужно добавить, кол-во всегда 1, и сумма (берется из пользовательской таблицы).

Я понимаю что это извращение, но так уж мне поставили задачу.

Если можно это реализовать через "конфигурацию и спецификацию", то подскажите как или где можно почитать как это сделать,

Кстати, какую BAPI можно использовать для добавления позиции в заказ уже после сохранения? Может примерчик есть?

Еще раз спасибо !

P.S.
Сорри за англицкие термины, у меня только западные проекты были и с русским SAP-ом работать не довелось ...


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, апр 20 2006, 11:24 
Специалист
Специалист

Зарегистрирован:
Вт, ноя 01 2005, 13:15
Сообщения: 228
Откуда: Москва
Могу только поделится идеей. Воплощение будет долгим и мучительным. Идея такая:
1. создаете конфигурируемую позицию в заказе. (она может быть даже без цены)
2. Либо руками, либо через код заполняете в конфигурации некий тригер. (может можно обойтись и без кода или почти без кода)
3. Создаете BOM для вашей позиции и вставляете в него материал, который вы хотите подсасывать. Прописываете в БОМе, что материал действителен при нужном значении тригера.
4. Соответственно БОМ раскроется либо пустым либо с вашим материалом в зависимости от тригера.

Это только набросок. Деталей масса.
Насчет BAPI. Меня удивляет почему так много народу спрашивает про них, как будто они спрятаны в каком то секретном месте.
Найдите бизнес объект "Sales Order" и посмотрите какие методы в нем есть.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, апр 20 2006, 11:46 
Гуру-эксперт
Гуру-эксперт

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


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, апр 20 2006, 11:48 
Специалист
Специалист

Зарегистрирован:
Вт, ноя 01 2005, 13:15
Сообщения: 228
Откуда: Москва
Кстати, вы уверены, что вам нужна именно новая позиция. Может устроит surcharge в старой?


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, апр 20 2006, 11:51 
Специалист
Специалист

Зарегистрирован:
Вт, ноя 01 2005, 13:15
Сообщения: 228
Откуда: Москва
OlegDm написал(а):
что-то странная постановка задачи, больше похоже на то, что определенным дебиторам просто дополнительно выставляется какая-то сумма - может проще это в калькуляции разрулить через введение еще одного условия?


Одновременно спросили об одном. Теоретически можно представить, что нужна именно позиция, когда речь идет о физическом обекте в довесок, а не просто о лишних деньгах.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, апр 20 2006, 11:54 
Гуру-эксперт
Гуру-эксперт

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


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, апр 20 2006, 11:58 
Специалист
Специалист

Зарегистрирован:
Вт, ноя 01 2005, 13:15
Сообщения: 228
Откуда: Москва
OlegDm написал(а):
Если не блатной, то за право купить 1 позицию, в довесок обязан взять и 2-ю :)

Если фантазировать, то речь может, например, идти о возвратной таре. Кому то продаем в своих цистернах, кто-то высылает свои. Но фантазировать можно до бесконечности.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, апр 20 2006, 18:05 
Старший специалист
Старший специалист

Зарегистрирован:
Вт, авг 17 2004, 12:04
Сообщения: 256
Откуда: Санкт-Петербург
Пол: Женский
можно попробовать и без концигурации, а просто с областью действия параметров


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:   Тема решена
СообщениеДобавлено: Пт, апр 21 2006, 15:04 
Начинающий
Начинающий

Зарегистрирован:
Пт, апр 21 2006, 14:53
Сообщения: 22
Можно попробовать так:
Создаете FM в котором строите BDC для добавления позиции, затем пытаетесь заблокировать заказ , предположим 20 раз через секунду, и вызываете VA02. Этот FM вызываете в UE Save_document in new task.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, апр 26 2006, 12:37 
Гость
Спасибо большое ВСЕМ за ваши ответы!

Я решил проблему следующим способом:
1. Создал новый Output Type, который отрабатывает сразу после сохранения Sales Order и вызывает подпрограмму в моем отчете.
2. В отчете, в подпрограмме, реализовано добавление новой позиции в заказ через вызов BAPI_SALESORDER_CHANGE.


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, май 04 2006, 11:19 
Гость
да.. это самое странное использование output type, которое я когда либо видел. Не жалко вам людей которые это будут поддерживать потом?:))


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, май 04 2006, 13:50 
Специалист
Специалист

Зарегистрирован:
Вт, ноя 01 2005, 13:15
Сообщения: 228
Откуда: Москва
А мне понравилось. И не такой уж странный. Workflow тоже запускается через output type (один из стандартных вариантов), а смысл очень похож.


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

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


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

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


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

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