Текущее время: Сб, июл 26 2025, 04:25

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


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


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ 1 сообщение ] 
Автор Сообщение
 Заголовок сообщения: userexit_batch_determination
СообщениеДобавлено: Пн, авг 22 2011, 15:11 
Младший специалист
Младший специалист

Зарегистрирован:
Ср, мар 21 2007, 07:42
Сообщения: 51
Привет всем,

Может кто пользовался этим расширением userexit_batch_determination?

В нем я пытаюсь сделать разделение партий, но проблема в том что при сохранении поставки позиции которые я добавил не сохраняются.

При создании я их вижу на экране все нормально.

Может я неправильно заполняю xlips таблицу или может еще куда добавить нужно.

Ниже кусок кода который я дописал в эту форму.


IF sy-mandt = 510 OR
sy-mandt = 610.

IF lips-mtart = 'FERT'.
SELECT * FROM zmcha_v INTO CORRESPONDING FIELDS OF TABLE lt_mcha
WHERE matnr = lips-matnr
AND werks = lips-werks
AND bwtar = lips-bwtar.

SORT lt_mcha ASCENDING BY hsdat.

LOOP AT lt_mcha.
SELECT SINGLE * FROM mchb INTO ls_mchb
WHERE matnr = lt_mcha-matnr
AND werks = lt_mcha-werks
AND lgort = lips-lgort
AND charg = lt_mcha-charg.

APPEND ls_mchb TO lt_mchb.
ENDLOOP.


IF likp-vkorg = '3000' OR " V001
likp-vkorg = '3001' OR " V001
likp-vkorg = '3010' OR " V001
likp-vkorg = '3011' OR " V001
likp-vkorg = '3020' OR " V001
likp-vkorg = '3021' OR " V001
likp-vkorg = '3030' OR " V001
likp-vkorg = '3031'. " V001

DELETE lt_mchb WHERE clabs = 0. " V001
SORT lt_mchb BY ersda. " V001
DATA: lt_lips TYPE lips OCCURS 0 WITH HEADER LINE. " V001
DATA: lfimg LIKE lips-lfimg. " V001
DATA: posnr LIKE lips-posnr VALUE '900000'. " V001
DATA: lt_xlips LIKE xlips OCCURS 0 WITH HEADER LINE." V001
DATA: clabs LIKE lt_mchb-clabs. " V001
CLEAR: lfimg, clabs. " V001

lfimg = lips-lfimg. " V001

*** find previous number of position
lt_xlips[] = xlips[]. " V001
DELETE lt_xlips WHERE pstyv NE 'Z001'. " V001
SORT lt_xlips BY posnr DESCENDING. " V001
READ TABLE lt_xlips INDEX 1. " V001
IF sy-subrc = 0. " V001
posnr = lt_xlips-posnr. " V001
ENDIF. " V001
*** delete quantity what is used before
LOOP AT lt_xlips. " V001
LOOP AT lt_mchb " V001
WHERE matnr = lt_xlips-matnr AND " V001
lgort = lt_xlips-lgort AND " V001
charg = lt_xlips-charg. " V001
SUBTRACT lt_xlips-lfimg FROM lt_mchb-clabs. " V001
MODIFY lt_mchb. " V001
ENDLOOP. " V001
ENDLOOP. " V001
DELETE lt_mchb WHERE clabs = 0. " V001
SORT lt_mchb BY ersda. " V001
***

*** Batch split
LOOP AT lt_mchb. " V001
clabs = lt_mchb-clabs. " V001
SUBTRACT lfimg FROM clabs. " V001
IF clabs > 0. " V001
lips-charg = lt_mchb-charg. " V001
MOVE-CORRESPONDING lips TO lt_lips. " V001
lt_lips-lfimg = lfimg. " V001
lt_lips-lgmng = lfimg. " V001
lt_lips-lfimg_flo = lfimg. " V001
lt_lips-lgmng_flo = lfimg. " V001
IF sy-tabix > 1. " V001
ADD 1 TO posnr. " V001
lt_lips-posnr = posnr. " V001
lt_lips-pstyv = 'Z001'. " V001
lt_lips-uepos = lips-posnr. " V001
lt_lips-uecha = lips-posnr. " V001
CLEAR: lips-charg. " V001
ENDIF. " V001
APPEND lt_lips. " V001
CLEAR: lt_lips. " V001
EXIT. " V001
ELSE. " V001
MOVE-CORRESPONDING lips TO lt_lips. " V001
ADD 1 TO posnr. " V001
lt_lips-posnr = posnr. " V001
lt_lips-pstyv = 'Z001'. " V001
lt_lips-uepos = lips-posnr. " V001
lt_lips-uecha = lips-posnr. " V001
lt_lips-lfimg = lt_mchb-clabs. " V001
lt_lips-lgmng = lt_mchb-clabs. " V001
lt_lips-lfimg_flo = lt_mchb-clabs. " V001
lt_lips-lgmng_flo = lt_mchb-clabs. " V001
lt_lips-charg = lt_mchb-charg. " V001
SUBTRACT lt_mchb-clabs FROM lfimg. " V001
APPEND lt_lips. " V001
CLEAR: lt_lips. " V001
CLEAR: lips-charg. " V001
ENDIF. " V001
ENDLOOP. " V001
APPEND LINES OF lt_lips TO xlips. " V001


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

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


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

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


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

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