Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Help me

Former Member
0 Likes
740

Hi all,

&----


*& Report ZTEST1

*&

&----


*&

*&

&----


REPORT ztest1.

TABLES : MARA, " Material Master

MAKT, " Material Description

MARC, " Plant Data for Materials

AUSP, " Characteristic Values

CABN, " Characteristic

KSSK, " Allocation Table: Object to Class

KLAH. " Class Header Data

DATA : BEGIN OF T_CHAR OCCURS 0,

LVORM LIKE MARA-LVORM,

MATPOS_MARA LIKE MARA-MTPOS_MARA,

OBJEK LIKE AUSP-OBJEK,

ATINN LIKE AUSP-ATINN,

ATWRT LIKE AUSP-ATWRT,

CLASS LIKE KLAH-CLASS,

KLART LIKE KLAH-KLART,

ATNAM LIKE CABN-ATNAM,

CLINT LIKE KSSK-CLINT,

END OF T_CHAR.

DATA : BEGIN OF T_CHAR1 OCCURS 0,

OBJEK LIKE AUSP-OBJEK,

LVORM LIKE MARA-LVORM,

PRCTR LIKE MARC-PRCTR,

MATPOS_MARA LIKE MARA-MTPOS_MARA,

ATINN LIKE AUSP-ATINN,

ATWRT LIKE AUSP-ATWRT,

ATNAM LIKE CABN-ATNAM,

END OF T_CHAR1.

*----


*Selection Screen.

*----


selection-screen: begin of block sel with frame title text-sel.

PARAMETERS : P_MATNR LIKE MARA-MATNR.

selection-screen: end of block sel.

*----


*Selection Screen.

*----


SELECT AUSPOBJEK AUSPATINN AUSPATWRT CABNATNAM

KSSKCLINT KLAHCLASS KLAH~KLART INTO CORRESPONDING FIELDS OF TABLE T_CHAR

FROM MARA INNER JOIN AUSP ON AUSPOBJEK = P_MATNR AND AUSPKLART = '001'

INNER JOIN CABN ON CABNATINN = AUSPATINN

INNER JOIN KSSK ON KSSKOBJEK = AUSPOBJEK

INNER JOIN KLAH ON KLAHCLINT = KSSKCLINT.

*----


DELETE ADJACENT DUPLICATES FROM T_CHAR COMPARING ATINN ATNAM.

LOOP AT T_CHAR.

SELECT SINGLE * FROM MARC WHERE MATNR EQ T_CHAR-OBJEK.

IF SY-SUBRC EQ 0.

MOVE MARC-PRCTR TO T_CHAR1-PRCTR.

ENDIF.

MOVE T_CHAR-OBJEK TO T_CHAR1-OBJEK.

MOVE T_CHAR-LVORM TO T_CHAR1-LVORM.

MOVE T_CHAR-MATPOS_MARA TO T_CHAR1-MATPOS_MARA.

MOVE T_CHAR-ATNAM TO T_CHAR1-ATNAM.

MOVE T_CHAR-ATWRT TO T_CHAR1-ATWRT.

APPEND T_CHAR1.

CLEAR T_CHAR1.

ENDLOOP.

*----


LOOP AT T_CHAR1.

WRITE 😕 sy-vline,T_CHAR1-OBJEK,sy-vline,T_CHAR1-LVORM,sy-vline,T_CHAR1-PRCTR,sy-vline,

T_CHAR1-MATPOS_MARA,sy-vline,T_CHAR1-ATWRT,sy-vline,T_CHAR1-ATNAM,sy-vline.

ENDLOOP.

ULINE.

*----


CALL FUNCTION 'EXCEL_OLE_STANDARD_DAT'

EXPORTING

file_name = 'C:\TEMP\T_CHAR1.XLS'

  • CREATE_PIVOT = 0

  • DATA_SHEET_NAME = ' '

  • PIVOT_SHEET_NAME = ' '

  • PASSWORD = ' '

  • PASSWORD_OPTION = 0

TABLES

  • PIVOT_FIELD_TAB =

DATA_TAB = T_CHAR1

  • FIELDNAMES =

EXCEPTIONS

FILE_NOT_EXIST = 1

FILENAME_EXPECTED = 2

COMMUNICATION_ERROR = 3

OLE_OBJECT_METHOD_ERROR = 4

OLE_OBJECT_PROPERTY_ERROR = 5

INVALID_PIVOT_FIELDS = 6

DOWNLOAD_PROBLEM = 7

OTHERS = 8

.

IF sy-subrc <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

<u>Output</u>

P00038 0 P XX_LICTYPE

P00038 0 BOX XX_PROGRAM

P00038 0 I XX_AUTHUSEMDL

P00038 0 0 XX_UPGRADE

P00038 0 NALA XX_REGION

P00038 0 11.5 XX_RELLVL

P00038 0 206 XX_OPSYS

P00038 0 C XX_DISTCHAIN

P00038 0 N XX_MAINT

P00038 0 0 XX_MAINT_DURN

But i weant out put like this

Del.Flag Cost Center Item Category Group XX_LICTYPE XX_PROGRAM XX_AUTHUSEMDL XX_UPGRADE XX_REGION XX_RELLVL XX_OPSYS XX_DISTCHAIN XX_MAINT XX_MAINT_DURN

P00038 P BOX I 0 NALA 11.5 206 C N 0

Advanced Thankx to your reply

Plz suggest me the modificationes in my code

i look forward to your reply

Thanks & Regards

SEK

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
696

Hi

is this how u want ur output to be

line1:P00038 XX_LICTYPE XX_PROGRAM XX_AUTHUSEMDL XX_UPGRADE XX_REGION XX_RELLVL XX_OPSYS XX_DISTCHAIN XX_MAINT XX_MAINT_DURN

line2:P00038 P BOX I 0 NALA 11.5 206 C N 0

take this one this will work surely.

Write:/ T_CHAR1-OBJEK.

LOOP AT T_CHAR1.

WRITE 😕 sy-vline, T_CHAR1-ATNAM, sy-vline.

ENDLOOP.

LOOP AT T_CHAR1.

WRITE 😕 sy-vline, T_CHAR1-ATWRT, sy-vline.

ENDLOOP.

i am not sure if T_CHAR1-ATNAM corressponds to XX_LICTYPE

and T_CHAR1-ATwrt corressponds to p .

regards

vijay.

get back for more help.

get u tomorrow

5 REPLIES 5
Read only

Former Member
0 Likes
696

hi,

remove the sy-vline s from the write statement.

regs,

jaga

Read only

Former Member
0 Likes
696

i didnot understand u r question.what is the question?

Thanks

Vikranth Khimavath

Read only

Former Member
0 Likes
696

SELECT ausp~objek
ausp~atinn
ausp~atwrt
cabn~atnam
kssk~clint
klah~class
klah~klart
INTO CORRESPONDING FIELDS OF TABLE t_char
FROM mara INNER JOIN ausp ON ausp~objek = p_matnr AND ausp~klart = '001'
INNER JOIN cabn ON cabn~atinn = ausp~atinn
INNER JOIN kssk ON kssk~objek = ausp~objek
INNER JOIN klah ON klah~clint = kssk~clint.

There is some thing wrong in your join....

regards

vijay

Read only

Former Member
0 Likes
696

can u split one line of output <b>P00038 0 P XX_LICTYPE</b> into 6 fields of ur T_CHAR1.is this the commbination of 6 fields

Read only

Former Member
0 Likes
697

Hi

is this how u want ur output to be

line1:P00038 XX_LICTYPE XX_PROGRAM XX_AUTHUSEMDL XX_UPGRADE XX_REGION XX_RELLVL XX_OPSYS XX_DISTCHAIN XX_MAINT XX_MAINT_DURN

line2:P00038 P BOX I 0 NALA 11.5 206 C N 0

take this one this will work surely.

Write:/ T_CHAR1-OBJEK.

LOOP AT T_CHAR1.

WRITE 😕 sy-vline, T_CHAR1-ATNAM, sy-vline.

ENDLOOP.

LOOP AT T_CHAR1.

WRITE 😕 sy-vline, T_CHAR1-ATWRT, sy-vline.

ENDLOOP.

i am not sure if T_CHAR1-ATNAM corressponds to XX_LICTYPE

and T_CHAR1-ATwrt corressponds to p .

regards

vijay.

get back for more help.

get u tomorrow