2007 Jun 04 4:34 PM
I am have got the following code which updates VBAK fine with the new purchase order number but for some reason does not update VBKD. Can anyone help?
I need the new purchase order number to appear when you go into VA02/3 which seems to come from VBKD.
DATA: zznewdate(10).
LOOP AT xvbap WHERE abgru <> ''.
EXIT.
ENDLOOP.
IF sy-subrc = 0 AND
sy-tcode = 'VA02' AND
ccdata-ccins = 'ZADV' AND
zzreject <> 'X'.
IF xvbak-bstnk = ''.
WRITE sy-datum TO zznewdate.
CONCATENATE zznewdate vbak-bstnk INTO zzbstnk.
vbak-bstnk = zzbstnk.
vbkd-bstkd = zzbstnk.
ELSE.
WRITE sy-datum TO zznewdate.
CONCATENATE zznewdate xvbak-bstnk INTO zzbstnk.
vbak-bstnk = zzbstnk.
vbkd-bstkd = zzbstnk.
ENDIF.
ENDIF.Kind Regards
Carly
2007 Jun 04 5:01 PM
Hi,
Please try this.
IF sy-subrc = 0 AND
sy-tcode = 'VA02' AND
ccdata-ccins = 'ZADV' AND
zzreject <> 'X'.
IF xvbak-bstnk = ''.
WRITE sy-datum TO zznewdate.
CONCATENATE zznewdate vbak-bstnk INTO zzbstnk.
vbak-bstnk = zzbstnk.
xvbkd-bstkd = zzbstnk. "<-- change here
xvbkd-updkz = 'U'. "<-- add here
ELSE.
WRITE sy-datum TO zznewdate.
CONCATENATE zznewdate xvbak-bstnk INTO zzbstnk.
vbak-bstnk = zzbstnk.
xvbkd-bstkd = zzbstnk. "<-- change here
xvbkd-updkz = 'U'. "<-- add here
ENDIF.
ENDIF.
Regards,
Ferry Lianto
I am have got the following code which updates VBAK fine with the new purchase order number but for some reason does not update VBKD. Can anyone help?
I need the new purchase order number to appear when you go into VA02/3 which seems to come from VBKD.
DATA: zznewdate(10).
LOOP AT xvbap WHERE abgru <> ''.
EXIT.
ENDLOOP.
IF sy-subrc = 0 AND
sy-tcode = 'VA02' AND
ccdata-ccins = 'ZADV' AND
zzreject <> 'X'.
IF xvbak-bstnk = ''.
WRITE sy-datum TO zznewdate.
CONCATENATE zznewdate vbak-bstnk INTO zzbstnk.
vbak-bstnk = zzbstnk.
vbkd-bstkd = zzbstnk.
ELSE.
WRITE sy-datum TO zznewdate.
CONCATENATE zznewdate xvbak-bstnk INTO zzbstnk.
vbak-bstnk = zzbstnk.
vbkd-bstkd = zzbstnk.
ENDIF.
ENDIF.Kind Regards
Carly
2007 Jun 04 5:01 PM
Hi,
Please try this.
IF sy-subrc = 0 AND
sy-tcode = 'VA02' AND
ccdata-ccins = 'ZADV' AND
zzreject <> 'X'.
IF xvbak-bstnk = ''.
WRITE sy-datum TO zznewdate.
CONCATENATE zznewdate vbak-bstnk INTO zzbstnk.
vbak-bstnk = zzbstnk.
xvbkd-bstkd = zzbstnk. "<-- change here
xvbkd-updkz = 'U'. "<-- add here
ELSE.
WRITE sy-datum TO zznewdate.
CONCATENATE zznewdate xvbak-bstnk INTO zzbstnk.
vbak-bstnk = zzbstnk.
xvbkd-bstkd = zzbstnk. "<-- change here
xvbkd-updkz = 'U'. "<-- add here
ENDIF.
ENDIF.
Regards,
Ferry Lianto
2007 Jun 04 5:09 PM
IN addition ..
IF sy-subrc = 0 AND
sy-tcode = 'VA02' AND
ccdata-ccins = 'ZADV' AND
zzreject <> 'X'.
IF xvbak-bstnk = ''.
WRITE sy-datum TO zznewdate.
CONCATENATE zznewdate vbak-bstnk INTO zzbstnk.
vbak-bstnk = zzbstnk.
xvbkd-bstkd = zzbstnk.
xvbkd-updkz = 'U'.
MODIFY XVBKD. " <----- Add this
ELSE.
WRITE sy-datum TO zznewdate.
CONCATENATE zznewdate xvbak-bstnk INTO zzbstnk.
vbak-bstnk = zzbstnk.
xvbkd-bstkd = zzbstnk.
xvbkd-updkz = 'U'.
MODIFY XVBKD. " <------ Add this
ENDIF.
ENDIF.@Ferry
I think XVBKD is an internal table structure right .
DATA: BEGIN OF XVBKD OCCURS 5.
INCLUDE STRUCTURE VBKDVB.
DATA: END OF XVBKD.
in include VBKDDATA.
Regards,
Vijay
2007 Jun 05 8:54 AM
Ferry & Sniper,
I have tried both bits of code and without the MODIFY, it still only updates VBAK and not VBKD and with the MODIFY I get a TABLE_ILLEGAL_STATEMENT short dump.
The Errror Analysis is:
You attempted to change, delete or create a line in the internal table "PROGRAM=SAPMV45ADATA=XVBKD[]", but no valid cursor exists for the table.
Possible reasons:
1. The relevent ABAP/4 statement does not include the addition
"...INDEX...", although the statement is not
inside a "LOOP...ENDLOOP" loop processing this table.
2. The relevent ABAP/4 statement was called from within a
"LOOP...ENDLOOP" loop after a DELETE "PROGRAM=SAPMV45ADATA=XVBKD[]".Can anyone help?
| User | Count |
|---|---|
| 4 | |
| 2 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |