2011 Mar 08 9:22 AM
Hi,
Inculde MV45AFZZ.
In FORM USEREXIT_SAVE_DOCUMENT I am writting my logic for checking duplicate PO ..and in the screen it self I want to change the PO but getting error ''item 00010 doesnot exit ''with stop symbol pop up.
Can somebody let me know why i am unable to change PO in sales order screen. ??Need help
program.
TABLES:tvarvc.
TYPES:BEGIN OF t_vbak,
vbeln TYPE vbeln,
bstnk TYPE vbak-bstnk,
erdat TYPE vbak-erdat,
END OF t_vbak.
DATA:gt_vbak TYPE TABLE OF t_vbak,
gs_vbak LIKE LINE OF gt_vbak.
TYPES:BEGIN OF t_vbkd,
vbeln TYPE vbkd-vbeln,
bstkd TYPE vbkd-bstkd,
END OF t_vbkd.
DATA:gt_vbkd TYPE TABLE OF t_vbkd,
gs_vbkd LIKE LINE OF gt_vbkd.
DATA: gv_scrno TYPE sy-dynnr.
DATA:p_date TYPE sy-datum.
DATA:w_durdd TYPE psen_duration.
*Ranges
RANGES:gs_date FOR sy-datum.
DATA:l_nd TYPE i.
DATA:t_tvarvc TYPE TABLE OF tvarvc,
w_tvarvc LIKE LINE OF t_tvarvc.
DATA:t_vbkd TYPE STANDARD TABLE OF vbkd,
w_vbkd LIKE LINE OF t_vbkd.
check sy-tcode = 'VA01'.
*CLEAR vbak-vbeln.
SELECT SINGLE *
FROM tvarvc
WHERE name = 'Z_DOC_TYPE_NO_OF_DAYS'
AND low = vbak-auart.
IF sy-subrc NE 0.
EXIT.
ENDIF.
l_nd = tvarvc-high .
MOVE l_nd TO w_durdd-durdd .
*FM used for calculation from current date minus number of days
CALL FUNCTION 'HR_99S_DATE_ADD_SUB_DURATION'
EXPORTING
im_date = sy-datum
im_operator = '-'
im_duration = w_durdd
IMPORTING
ex_date = p_date.
*Range from calculated date
CLEAR gs_date.
gs_date-sign = 'I'.
gs_date-option = 'BT'.
gs_date-low = p_date .
gs_date-high = sy-datum.
APPEND gs_date .
CLEAR gv_scrno.
gv_scrno = sy-dynnr.
SELECT vbeln bstnk erdat
FROM vbak
INTO CORRESPONDING FIELDS OF TABLE
gt_vbak
WHERE auart = tvarvc-low
AND erdat IN gs_date
AND bstnk = vbkd-bstkd.
IF sy-subrc = 0.
MESSAGE w180(zv).
LEAVE TO SCREEN gv_scrno.
CLEAR gv_scrno.
ELSE.
EXIT.
ENDIF.
2011 Mar 08 3:22 PM
Are you using USEREXIT_SAVE_DOCUMENT for checking duplicate PO? Please consider using USEREXIT_SAVE_DOCUMENT_PREPARE...
Hi,
Inculde MV45AFZZ.
In FORM USEREXIT_SAVE_DOCUMENT I am writting my logic for checking duplicate PO ..and in the screen it self I want to change the PO but getting error ''item 00010 doesnot exit ''with stop symbol pop up.
Can somebody let me know why i am unable to change PO in sales order screen. ??Need help
program.
TABLES:tvarvc.
TYPES:BEGIN OF t_vbak,
vbeln TYPE vbeln,
bstnk TYPE vbak-bstnk,
erdat TYPE vbak-erdat,
END OF t_vbak.
DATA:gt_vbak TYPE TABLE OF t_vbak,
gs_vbak LIKE LINE OF gt_vbak.
TYPES:BEGIN OF t_vbkd,
vbeln TYPE vbkd-vbeln,
bstkd TYPE vbkd-bstkd,
END OF t_vbkd.
DATA:gt_vbkd TYPE TABLE OF t_vbkd,
gs_vbkd LIKE LINE OF gt_vbkd.
DATA: gv_scrno TYPE sy-dynnr.
DATA:p_date TYPE sy-datum.
DATA:w_durdd TYPE psen_duration.
*Ranges
RANGES:gs_date FOR sy-datum.
DATA:l_nd TYPE i.
DATA:t_tvarvc TYPE TABLE OF tvarvc,
w_tvarvc LIKE LINE OF t_tvarvc.
DATA:t_vbkd TYPE STANDARD TABLE OF vbkd,
w_vbkd LIKE LINE OF t_vbkd.
check sy-tcode = 'VA01'.
*CLEAR vbak-vbeln.
SELECT SINGLE *
FROM tvarvc
WHERE name = 'Z_DOC_TYPE_NO_OF_DAYS'
AND low = vbak-auart.
IF sy-subrc NE 0.
EXIT.
ENDIF.
l_nd = tvarvc-high .
MOVE l_nd TO w_durdd-durdd .
*FM used for calculation from current date minus number of days
CALL FUNCTION 'HR_99S_DATE_ADD_SUB_DURATION'
EXPORTING
im_date = sy-datum
im_operator = '-'
im_duration = w_durdd
IMPORTING
ex_date = p_date.
*Range from calculated date
CLEAR gs_date.
gs_date-sign = 'I'.
gs_date-option = 'BT'.
gs_date-low = p_date .
gs_date-high = sy-datum.
APPEND gs_date .
CLEAR gv_scrno.
gv_scrno = sy-dynnr.
SELECT vbeln bstnk erdat
FROM vbak
INTO CORRESPONDING FIELDS OF TABLE
gt_vbak
WHERE auart = tvarvc-low
AND erdat IN gs_date
AND bstnk = vbkd-bstkd.
IF sy-subrc = 0.
MESSAGE w180(zv).
LEAVE TO SCREEN gv_scrno.
CLEAR gv_scrno.
ELSE.
EXIT.
ENDIF.
2011 Mar 08 2:59 PM
Hi,
Try to replace the error message by the call of function module TH_POPUP.
Regards
Eduardo
2011 Mar 08 3:22 PM
Are you using USEREXIT_SAVE_DOCUMENT for checking duplicate PO? Please consider using USEREXIT_SAVE_DOCUMENT_PREPARE...
2011 Mar 08 3:29 PM
Hi Kris,
Exactly you are right .It slolved my probleam.
Thanks very much ...
2011 Mar 08 3:51 PM
You are welcome.. you can also consider any of the CHECK subroutines in MV45AFZB (if you want to check before saving)...
| User | Count |
|---|---|
| 3 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |