‎2006 Oct 25 10:57 AM
Hi All!
I have the code:
......
LOOP AT IT_VBRK.
AT NEW VBELN.
SELECT OBJKY KAPPL KSCHL NACHA VSZTP USNAM LDEST
ERDAT ERUHR
INTO TABLE IT_NAST
FROM NAST
WHERE OBJKY = IT_VBRK-VBELN AND
KAPPL = 'V3' AND KSCHL = 'RD00'.
IF SY-SUBRC = 4.
WRITE : / 'No RD00 record in NAST for:' , IT_VBRK-VBELN.
ENDIF.
ENDAT.
AT END OF VBELN.
ENDAT.
ENDLOOP.
SORT IT_NAST BY OBJKY AS TEXT ASCENDING.
.....
LOOP AT IT_VBRK.
WA_VBRK = IT_VBRK.
AT NEW VBELN.
WRITE : /5 WA_VBRK-VBELN , WA_VBRK-FKART , WA_VBRK-FKDAT ,
WA_VBRK-VKORG , WA_VBRK-VTWEG , WA_VBRK-KKBER , WA_VBRK-SPART ,WA_VBRK-KUNAG , WA_VBRK-ERNAM , WA_VBRK-ERZET , WA_VBRK-WERKS .
LOOP AT IT_NAST.
WA_NAST = IT_NAST.
IF IT_NAST-OBJKY = IT_VBRK-VBELN.
WRITE : WA_NAST-OBJKY , WA_NAST-KSCHL .
ENDIF.
ENDLOOP.
ENDAT.
AT END OF VBELN.
ENDAT.
ENDLOOP.
..........
The effect is that the list of the information from NAST is outputed only for the last record from IT_VBRK.
I don't know which one is the cause? May be the fact that in IT_NAST I may have more records for the same OBJKY?
Thank you.
Florina C.
‎2006 Oct 25 11:02 AM
You can make changes in below two ways:
LOOP AT IT_VBRK.
AT NEW VBELN.
SELECT OBJKY KAPPL KSCHL NACHA VSZTP
USNAM LDEST ERDAT ERUHR
<b>APPENDING</b> TABLE IT_NAST
FROM NAST
WHERE OBJKY = IT_VBRK-VBELN AND
KAPPL = 'V3' AND KSCHL = 'RD00'.
IF SY-SUBRC = 4.
WRITE : / 'No RD00 record in NAST for:' , IT_VBRK-VBELN.
ENDIF.
ENDAT.
AT END OF VBELN.
ENDAT.
ENDLOOP.
SORT IT_NAST BY OBJKY AS TEXT ASCENDING.
.....
<b>OR</b>
<b>CHECK NOT IT_VBRK[] IS INITIAL</b>.
SELECT OBJKY KAPPL KSCHL NACHA VSZTP
USNAM LDEST ERDAT ERUHR
INTO TABLE IT_NAST
FROM NAST
<b>FOR ALL ENTRIES IN IT_VBRK</b>
WHERE OBJKY = IT_VBRK-VBELN AND
KAPPL = 'V3' AND KSCHL = 'RD00'.
SORT IT_NAST BY OBJKY AS TEXT ASCENDING.
.....Kind Regards
Eswar
‎2006 Oct 25 11:02 AM
You can make changes in below two ways:
LOOP AT IT_VBRK.
AT NEW VBELN.
SELECT OBJKY KAPPL KSCHL NACHA VSZTP
USNAM LDEST ERDAT ERUHR
<b>APPENDING</b> TABLE IT_NAST
FROM NAST
WHERE OBJKY = IT_VBRK-VBELN AND
KAPPL = 'V3' AND KSCHL = 'RD00'.
IF SY-SUBRC = 4.
WRITE : / 'No RD00 record in NAST for:' , IT_VBRK-VBELN.
ENDIF.
ENDAT.
AT END OF VBELN.
ENDAT.
ENDLOOP.
SORT IT_NAST BY OBJKY AS TEXT ASCENDING.
.....
<b>OR</b>
<b>CHECK NOT IT_VBRK[] IS INITIAL</b>.
SELECT OBJKY KAPPL KSCHL NACHA VSZTP
USNAM LDEST ERDAT ERUHR
INTO TABLE IT_NAST
FROM NAST
<b>FOR ALL ENTRIES IN IT_VBRK</b>
WHERE OBJKY = IT_VBRK-VBELN AND
KAPPL = 'V3' AND KSCHL = 'RD00'.
SORT IT_NAST BY OBJKY AS TEXT ASCENDING.
.....Kind Regards
Eswar
‎2006 Oct 25 11:33 AM
Thank you Eswar!
For the first variant I have in IT_NAST just one record from NAST for the OBJKY (the last one) (and I want to have all the records).
The second variant is not working, IT_VBRK-VBELN and OBJKY have not the same type and length.
Your suggestions helped me.
Florina C.
‎2006 Oct 25 11:39 AM