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

SIMPLE REPORTS

Former Member
0 Likes
748

HI FRIENDS

MY REQUIRMENT IS

Selection should contain two radio buttons

One for Purchase Order

Another for Sales Order

Each radio button should have once text box associated to that

By default the Purchase Order Radio button should select

If purchase order radio button selected, text box associated for sales order should be input disable and text box associated for purchase order should be input enabled

If Sales Order radio button is selected, text box associated for sales order should be input enable and text box associated for purchase order should be input disable

See if you can help.

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
704

Hi,

Please take the help from this code (check and run) :

tables : vbak, ekko.

selection-screen begin of block b1 with frame.

PARAMETERS: purchase RADIOBUTTON GROUP rad USER-COMMAND radio.

SELECT-OPTIONS: ebeln FOR ekko-ebeln MODIF ID sl1.

PARAMETERS: sale RADIOBUTTON GROUP rad.

SELECT-OPTIONS: vbeln FOR vbak-vbeln MODIF ID sl2.

selection-screen end of block b1.

at selection-screen output.

loop at screen.

IF purchase = 'X'.

IF screen-group1 = 'SL2'.

screen-input = 0.

ENDIF.

ELSEIF sale = 'X'.

IF screen-group1 = 'SL1'.

screen-input = 0.

ENDIF.

ENDIF.

Modify screen.

endloop.

Reward points, if helpful,

Sandeep Kaushik

5 REPLIES 5
Read only

Former Member
0 Likes
704

hi,

check this one

&----


*& Report ZREPORT_EXE

*&

&----


*&

*&

&----


REPORT ZREPORT_EXEREPORT

NO STANDARD PAGE HEADING

LINE-SIZE 60

LINE-COUNT 35(5).

TABLES: MARA,

MAKT,

VBAK,

VBAP.

DATA : TVBAK LIKE VBAK OCCURS 0 WITH HEADER LINE,

TVBAP LIKE VBAP OCCURS 0 WITH HEADER LINE,

TEMP TYPE p decimals 5 VALUE '0.0' ,

A type i,

TMARA LIKE MARA OCCURS 0 WITH HEADER LINE,

TMAKT LIKE MAKT OCCURS 0 WITH HEADER LINE.

selection-screen begin of block block0 with frame titLE text-000.

selection-screen skip.

SELECTION-SCREEN BEGIN OF LINE.

parameter: rd1 radiobutton group rad1 USER-COMMAND CHECK .

selection-screen comment 10(20) com2 .

SELECTION-SCREEN END OF LINE.

SELECTION-SCREEN BEGIN OF LINE.

parameter: rd2 radiobutton group rad1 DEFAULT 'X' .

selection-screen comment 10(20) com3.

SELECTION-SCREEN END OF LINE.

selection-screen skip.

selection-screen END of block BLOCK0 .

*

selection-screen begin of block block1 with frame titLE text-001.

selection-screen skip.

selection-screen begin of line.

selection-screen comment 5(20) com0.

SELECT-OPTIONS CK1 FOR MARA-MATNR MODIF ID ABC OBLIGATORY.

selection-screen end of line.

selection-screen skip.

selection-screen begin of line.

selection-screen comment 5(20) com1.

SELECT-OPTIONS CK2 FOR VBAK-VBELN MODIF ID XYZ .

selection-screen end of line.

selection-screen END of block BLOCK1 .

*----


Initialization .

IF RD1 = 'X'.

CK1-LOW = 23.

CK1-HIGH = 2000.

CK1-SIGN = 'I'.

CK1-OPTION = 'BT'.

APPEND CK1.

ELSE.

CK2-low = 4000.

CK2-high = 7000.

CK2-option = 'BT'.

CK2-sign = 'I'.

APPEND CK2.

ENDIF.

*----


AT SELECTION-SCREEN .

IF RD2 = 'X'.

SELECT *

FROM VBAK

INTO TABLE TVBAK

WHERE VBELN IN CK2 .

IF sy-subrc ne 0.

MESSAGE 'ENTERED ORDER NOT FOUND' TYPE 'E'.

ENDIF.

ELSE.

SELECT *

FROM MARA

INTO TABLE TMARA

WHERE MATNR in CK1 .

IF sy-subrc ne 0.

MESSAGE 'ENTERED ORDER NOT FOUND' TYPE 'E'.

ENDIF.

ENDIF.

*----


START-OF-SELECTION.

REFRESH : TVBAK,

TMARA.

IF RD2 = 'X'.

SELECT *

FROM VBAK

INTO TABLE TVBAK

WHERE VBELN IN CK2.

ELSE.

SELECT *

FROM MARA

INTO TABLE TMARA

WHERE MATNR IN CK1.

ENDIF.

*----


END-OF-SELECTION.

IF RD2 = 'X'.

LOOP AT TVBAK.

WRITE: /2 SY-VLINE, TVBAK-VBELN INPUT ON,

15 SY-VLINE,TVBAK-ERDAT HOTSPOT ON,

30 SY-VLINE, 35 TVBAK-ERNAM,

49 SY-VLINE.

hide: tvbak-vbeln.

ENDLOOP.

A = SY-LINCT - SY-LINNO - 1.

SKIP A .

ELSE.

LOOP AT TMARA.

WRITE: /2 SY-VLINE, TMARA-MATNR INPUT ON,

15 SY-VLINE,TMARA-ERSDA,

30 SY-VLINE, 35 TMARA-ERNAM,

49 SY-VLINE.

hide: TMARA-MATNR.

ENDLOOP.

A = SY-LINCT - SY-LINNO - 1.

SKIP A .

ENDIF.

*----


AT SELECTION-SCREEN OUTPUT.

COM0 = 'MATERIAL NUMBER '.

COM1 = 'SALES ORDER NUMBER '.

COM2 = ' MATERIAL MASTER DETAIL '.

COM3 = ' SALES ORDER DETAIL '.

LOOP AT SCREEN.

IF RD1 = 'X' AND SCREEN-GROUP1 = 'XYZ' .

SCREEN-INPUT = '0'.

  • screen-active = 0.

MODIFY SCREEN.

ELSEIF RD2 = 'X' AND SCREEN-GROUP1 = 'ABC'.

SCREEN-INPUT = '0'.

  • screen-active = 0.

MODIFY SCREEN.

ENDIF.

ENDLOOP.

*----


TOP-OF-PAGE.

IF RD2 = 'X'.

ULINE.

WRITE /15 ' SALES ORDER REPORT ' COLOR = 1 .

ULINE.

WRITE : /7 ' VBELN ' ,

19 ' ERDAT ' ,

34 ' ERNAM ' .

ULINE.

ELSE.

ULINE.

WRITE /15 ' MATERIAL ORDER REPORT ' COLOR = 1 .

ULINE.

WRITE : /7 ' MATNR ' ,

19 ' ERSDA ',

34 ' ERNAM ' .

ULINE.

ENDIF.

*----


END-OF-PAGE.

IF SY-LSIND = 0.

ULINE.

A = SY-LINNO - A.

WRITE : /2 'NUMBER OF LINE IN THIS PAGE = ', A .

SKIP.

WRITE: /30 'PAGE NUMBER = ',SY-PAGNO.

ULINE.

ENDIF.

IF RD2 = 'X' AND SY-LSIND = 1.

ULINE.

WRITE : /12 'TOTAL PRICE = ' ,TEMP.

CLEAR TEMP.

SKIP.

WRITE : /30 'PAGE NUMBER = ', SY-PAGNO.

ULINE.

ELSE.

ULINE.

SKIP.

WRITE : /30 'PAGE NUMBER = ', SY-PAGNO .

ULINE.

ENDIF.

*----


at line-selection.

IF RD2 = 'X'.

IF SY-LSIND = 1.

SELECT

*

FROM VBAP

INTO TABLE TVBAP

WHERE VBELN = tvbak-vbeln.

LOOP AT TVBAP.

TEMP = TEMP + TVBAP-NETPR.

WRITE : /2 SY-VLINE, TVBAP-matnr,

17 SY-VLINE,TVBAP-VBELN,

30 SY-VLINE,TVBAP-NETPR,

49 SY-VLINE.

ENDLOOP.

ULINE.

A = SY-LINCT - SY-LINNO - 1.

SKIP A .

ELSEIF SY-LSIND = 2.

MESSAGE I002(ZSALES).

ENDIF.

ELSE.

IF SY-LSIND = 1.

SELECT

*

FROM MAKT

INTO TABLE TMAKT

WHERE MATNR = TMARA-MATNR.

LOOP AT TMAKT.

WRITE : /2 SY-VLINE, TMAKT-matnr,

10 SY-VLINE,TMAKT-SPRAS,

15 SY-VLINE,TMAKT-MAKTX,

SY-VLINE.

ENDLOOP.

ULINE.

A = SY-LINCT - SY-LINNO - 1.

SKIP A .

ENDIF.

ENDIF.

*----


TOP-OF-PAGE DURING LINE-SELECTION.

IF RD2 = 'X'.

WRITE : / SY-ULINE,

/7 ' DETAIL OF GIVEN SALES ORDER ' COLOR = 5,

/ SY-ULINE,

/4 'MATNR',

22 'VBELN',

35 'NETPR',

/ SY-ULINE.

ELSE.

WRITE : / SY-ULINE,

/7 ' DETAIL OF GIVEN MATERIAL ORDER ' COLOR = 5,

/ SY-ULINE,

/2 'MATNR',

11 'SPRAS',

35 'MAKTX',

/ SY-ULINE.

ENDIF.

*----


*-

Regards

ASHOK KUMAR

Read only

Former Member
0 Likes
705

Hi,

Please take the help from this code (check and run) :

tables : vbak, ekko.

selection-screen begin of block b1 with frame.

PARAMETERS: purchase RADIOBUTTON GROUP rad USER-COMMAND radio.

SELECT-OPTIONS: ebeln FOR ekko-ebeln MODIF ID sl1.

PARAMETERS: sale RADIOBUTTON GROUP rad.

SELECT-OPTIONS: vbeln FOR vbak-vbeln MODIF ID sl2.

selection-screen end of block b1.

at selection-screen output.

loop at screen.

IF purchase = 'X'.

IF screen-group1 = 'SL2'.

screen-input = 0.

ENDIF.

ELSEIF sale = 'X'.

IF screen-group1 = 'SL1'.

screen-input = 0.

ENDIF.

ENDIF.

Modify screen.

endloop.

Reward points, if helpful,

Sandeep Kaushik

Read only

Former Member
0 Likes
704

Hello,


SELECTION-SCREEN BEGIN OF BLOCK block11.

SELECTION-SCREEN BEGIN OF LINE.

PARAMETERS:p_po RADIOBUTTON GROUP sdat DEFAULT 'X' user-command uid. "PO
SELECTION-SCREEN COMMENT 3(31) text-m01 FOR FIELD p_po.
PARAMETERS: p_postr TYPE char25 .
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.

PARAMETERS:p_so RADIOBUTTON GROUP sdat . "SO
SELECTION-SCREEN COMMENT 3(31) text-m02 FOR FIELD p_so.
PARAMETERS: p_sostr TYPE char25.
SELECTION-SCREEN END OF LINE.

SELECTION-SCREEN END OF BLOCK block11.

AT SELECTION-SCREEN OUTPUT.

  LOOP AT SCREEN.

    IF screen-name = 'P_SOSTR' AND p_po = 'X'.
      screen-input = '0'.
      MODIFY SCREEN.
    ENDIF.

    IF p_so = 'X'.
      IF screen-name = 'P_POSTR' AND p_so = 'X'.
        screen-input = '0'.
        MODIFY SCREEN.
      ENDIF.
    ENDIF.
  ENDLOOP.

Regards,

Deepu.K

Read only

Former Member
0 Likes
704

HI I HAD CREATED THIS PROGRAM WITH PURCHESE ORDER AND PLANT DETAILS

THE REQUIREMENT IS SAME SO YOU CAN JUST CHANGE THE FEILDS

REWARD IF USEFUL

REPORT ZNNR_REPORT NO STANDARD PAGE HEADING MESSAGE-ID ZNNR LINE-SIZE 100 LINE-COUNT 65(4).

******DATA DECLARATIONS**********

DATA : BEGIN OF IT_PLANT OCCURS 0,

MATNR LIKE MARA-MATNR,

WERKS LIKE MARC-WERKS,

PSTAT LIKE MARC-PSTAT,

EKGRP LIKE MARC-EKGRP,

END OF IT_PLANT.

DATA : BEGIN OF IT_PONO OCCURS 0,

EBELN LIKE EKKO-EBELN,

EBELP LIKE EKPO-EBELP,

MATNR LIKE EKPO-MATNR,

WERKS LIKE EKPO-WERKS,

LGORT LIKE EKPO-LGORT,

END OF IT_PONO.

TABLES EKKO.

********END OF DATA DECLARATIONS*********

********SELECTION SCREEN DESIGN ***********

SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.

PARAMETER : P_WERKS LIKE MARC-WERKS VALUE CHECK MODIF ID S1.

SELECT-OPTIONS : S_EBELN FOR EKKO-EBELN OBLIGATORY NO INTERVALS MODIF ID S2.

SELECTION-SCREEN END OF BLOCK B1.

SELECTION-SCREEN BEGIN OF BLOCK B2 WITH FRAME TITLE TEXT-004.

SELECTION-SCREEN BEGIN OF LINE.

PARAMETERS : R1 RADIOBUTTON GROUP G1 DEFAULT 'X' USER-COMMAND UC1.

SELECTION-SCREEN COMMENT 5(20) TEXT-002 FOR FIELD R1.

SELECTION-SCREEN END OF LINE.

SELECTION-SCREEN BEGIN OF LINE.

PARAMETERS : R2 RADIOBUTTON GROUP G1.

SELECTION-SCREEN COMMENT 5(20) TEXT-003 FOR FIELD R2.

SELECTION-SCREEN END OF LINE.

SELECTION-SCREEN END OF BLOCK B2.

******END OF SELECTION SCREEN DESIGN****************

*********INITIALIZATION OF SELECTION SCREEN ELEMENTS.*****

INITIALIZATION.

P_WERKS = '1000'.

S_EBELN-LOW = '4500016926'.

S_EBELN-OPTION = 'EQ'.

S_EBELN-SIGN = 'I'.

APPEND S_EBELN.

CLEAR S_EBELN.

************END OF INITIALIZATION***********************

************SCREEN MODIFICATIONS*******************

AT SELECTION-SCREEN OUTPUT.

LOOP AT SCREEN .

IF R1 EQ 'X' AND SCREEN-GROUP1 EQ 'S2'.

SCREEN-INPUT = 0.

MODIFY SCREEN.

ENDIF.

IF R2 EQ 'X' AND SCREEN-GROUP1 EQ 'S1'.

SCREEN-INPUT = 0.

MODIFY SCREEN.

ENDIF.

ENDLOOP.

********END OF SCREEN MODIFICATIONS*****************

***************SCREEN VALIDATIONS *****************

SELECT SINGLE *

FROM EKKO

INTO EKKO

WHERE EBELN IN S_EBELN.

IF SY-SUBRC <> 0.

SET CURSOR FIELD 'S_EBELN-LOW'.

MESSAGE E999 with text-005.

endif.

********end of screen validation*****************

START-OF-SELECTION.

IF R1 EQ 'X'.

SELECT MATNR

WERKS

PSTAT

EKGRP

FROM MARC

INTO TABLE IT_PLANT

WHERE WERKS = P_WERKS.

LOOP AT IT_PLANT.

WRITE : SY-VLINE , 2 IT_PLANT-MATNR COLOR COL_KEY,

21 SY-VLINE , 22 IT_PLANT-WERKS COLOR COL_KEY,

27 SY-VLINE ,28 IT_PLANT-PSTAT COLOR COL_NORMAL,

43 SY-VLINE ,44 IT_PLANT-EKGRP COLOR COL_NORMAL.

ENDLOOP.

ENDIF.

IF R2 EQ 'X'.

SELECT EBELN EBELP MATNR WERKS LGORT

FROM EKPO

INTO TABLE IT_PONO

WHERE EBELN IN S_EBELN.

LOOP AT IT_PONO.

WRITE : SY-VLINE , 2 IT_PONO-EBELN COLOR COL_KEY,

12 SY-VLINE , 13 IT_PONO-EBELP COLOR COL_KEY,

18 SY-VLINE , 19 IT_PONO-MATNR COLOR COL_NORMAL,

37 SY-VLINE , 38 IT_PONO-WERKS COLOR COL_NORMAL,

44 SY-VLINE , 45 IT_PONO-LGORT COLOR COL_NORMAL, 49 SY-VLINE..

ENDLOOP.

ENDIF.

TOP-OF-PAGE.

IF R1 EQ 'X'.

*ULINE AT /1(48).

WRITE : SY-VLINE ,2 'MATERIAL NUMBER',

21 SY-VLINE , 22 'PLANT',

27 SY-VLINE , 28 'STATUS',

43 SY-VLINE , 44 'GRUP', 48 SY-VLINE.

ULINE AT /1(48).

ENDIF.

IF R2 EQ 'X'.

WRITE : SY-VLINE , 2 'PO NUMBER',

12 SY-VLINE, 13 'ITEM',

18 SY-VLINE,19 'MATERIAL NUMBER',

37 SY-VLINE, 38 'PLANT',

44 SY-VLINE, 45 'GRUP',

49 SY-VLINE.

ULINE AT /1(50).

ENDIF.

END-OF-PAGE.

ULINE AT /1(50).

Read only

Former Member
0 Likes
704

HI,

Check the following code:

parameters: p_erdat like zirpactivity-erdat modif id SC1 ,

r1 radiobutton group RAD1 user-command ABC default 'X',

r2 radiobutton group RAD1.

AT SELECTION-SCREEN.

check sy-ucomm = 'ABC'.

check sy-ucomm = 'F8'.

AT SELECTION-SCREEN OUTPUT.

loop at screen.

if r1 = 'X' and screen-group1 = 'SC1' .

screen-input = 0.

ENDIF.

IF r2 = 'X'.

screen-group1 = 'SC1' .

screen-input = 1.

endif.

modify screen.

endloop.

Hope this helps.

Reward if helpful.

Regards,

Sipra