Monday, April 20, 2009

Getting F4 help from the internal table[the values fetched].


Screenshot


Getting F4 help from the internal table[the values fetched].

PARAMETERS: p_table TYPE dd02l-tabname,
p_field(30) TYPE c,
p_field1(30) TYPE c.

DATA: w_tabname TYPE w_tabname,
w_choice TYPE sy-tabix.
DATA: BEGIN OF t_field OCCURS 0,
field TYPE dd03l-fieldname,
END OF t_field.
DATA:t_return LIKE ddshretval OCCURS 0 WITH HEADER LINE.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_field.
w_tabname = p_table.

SELECT fieldname
FROM
dd03l
INTO TABLE t_field
WHERE tabname = w_tabname.

CALL FUNCTION 'POPUP_WITH_TABLE_DISPLAY'
EXPORTING
endpos_col = 10
endpos_row = 10
startpos_col = 1
startpos_row = 1
Titletext = 'FIELDNAME'
IMPORTING
choise = w_choice
TABLES
valuetab = t_field
EXCEPTIONS
break_off = 1
OTHERS = 2.

IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.

READ TABLE t_field INDEX w_choice.
p_field = t_field-field.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_field1.

CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield = 'FIELDNAME'
value_org = 'S'
TABLES
value_tab = t_field
return_tab = t_return
.
IF sy-subrc = 0.
read table t_return index 1.
p_field1 = t_return-fieldval.
Else.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.



Gives day of the week



Screen shots



Report which gives the day of the week

data:w_day type scal-indicator,
w_day1(20) type c.
Parameter: p_date like scal-date obligatory default sy-datum.
Select-options: p_date1 for sy-datum.
Start-of-selection.

call function 'DATE_COMPUTE_DAY'
exporting
Date = p_date
Importing
Day = w_day
.
case w_day.
When '1'.
w_day1 = 'MONDAY'.
when '2'.
w_day1 = 'TUESDAY'.
When '3'.
w_day1 = 'WEDNESDAY'.
When '4'.
w_day1 = 'THURSDAY'.
when '5'.
w_day1 = 'FRIDAY'.
When '6'.
w_day1 = 'SATURDAY'.
When '7'.
w_day1 = 'SUNDAY'.
endcase.
write: p_date,
'DAY OF THE WEEK', w_day,
w_day1.