‎2006 Dec 19 9:54 AM
Hi,
I am to make ALV(OO) using LDB(PNPCE) . can anyone provide some code or some help ... how to get data from LDB to internal table .
‎2006 Dec 19 3:20 PM
Following report using PNP and displays in ALV:-
You can see the code to know how it works.
REPORT ZPT_REPT_OVERTIME_001.
----
*TABLES
----
TABLES: PERNR.
----
INFOTYPE DECLARATION
INFOTYPE DESCRIPTION
0001 Organisation Assignment.
2001 Absences
2002 Attendances
----
INFOTYPES: 2001,2002,0001.
----
VARIABLE DECLARATION
VARIABLE TYPE SIZE DESCRIPTION
CALCULATE CHAR 4 Stores the total working hours of
an employee
NO_EMPL INTEGER Stores total number of employee
----
DATA: CALCULATE(4),
NO_EMPL TYPE I VALUE 0.
----
Type-Pool (Includes SAP standard types and constants of a type group)*
----
TYPE-POOLS:SLIS. " Must include in ALV reports
----
INTERNAL TABLE DECLARATION
INTERNAL TABLE NAME: IT_OVERTIME
*
FIELDS DESCRIPTION
PERNR Personnel number
SNAME Employee's Name
ENDDA End Date
ABRTG Payroll days
BEGDA Start Date
BEGUZ Start Time
ENDUZ End Time
STDAZ Attendance hours
INTERMEDIATE1(4) Stores the intermediate overtime(1.5@x)
INTERMEDIATE2(4) Stores the intermediate overtime(2@x)
OVERTIME(4) Stores the overtime of an employee
AWART Attendance or Absence Type
ATEXT Text for Attendance/Absence Type
----
DATA: BEGIN OF IT_OVERTIME OCCURS 0,
PERNR(8),
SNAME LIKE PA0001-SNAME,
ENDDA LIKE PA2002-ENDDA,
ABRTG LIKE PA2002-ABRTG,
BEGDA LIKE PA2002-BEGDA,
BEGUZ LIKE PA2002-BEGUZ,
ENDUZ LIKE PA2002-ENDUZ,
STDAZ LIKE PA2002-STDAZ,
INTERMEDIATE1(4),
INTERMEDIATE2(4),
OVERTIME(4),
AWART LIKE PA2001-AWART,
ATEXT LIKE T554T-ATEXT,
END OF IT_OVERTIME.
----
VARIABLE DECLARATION FOR ALV
----
DATA: IS_LAYOUT TYPE SLIS_LAYOUT_ALV,
I_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV,
I_FIELDCAT_LOG TYPE SLIS_T_FIELDCAT_ALV,
FIELDCAT TYPE SLIS_FIELDCAT_ALV,
I_EVENTS TYPE SLIS_T_EVENT,
EVENTS TYPE SLIS_ALV_EVENT,
ALV_TOP_OF_PAGE TYPE SLIS_T_LISTHEADER,
GS_LINE TYPE SLIS_LISTHEADER,
ALV_EVENTS TYPE SLIS_T_EVENT,
ALV_VARIANT TYPE DISVARIANT,
ALV_TITLE TYPE LVC_TITLE,
ALV_SORT TYPE SLIS_T_SORTINFO_ALV,
CSORT TYPE SLIS_SORTINFO_ALV.
CONSTANTS : C_FORMNAME_TOP_OF_PAGE TYPE SLIS_FORMNAME
VALUE 'TOP_OF_PAGE'.
----
SELECTION SCREEN DEFINATION
This selection screen defines an input field named P_FNAME
P_FNAME Stores the file path.
----
SELECTION-SCREEN BEGIN OF BLOCK BLK_OPTIONS WITH FRAME TITLE BLK_TITL.
PARAMETERS P_FNAME LIKE RLGRAP-FILENAME.
SELECTION-SCREEN END OF BLOCK BLK_OPTIONS.
----
INITIALIZATION.
----
INITIALIZATION.
BLK_TITL = 'File'.
----
AT SELECTION SCREEN ON VALUE_REQUEST
----
AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FNAME.
PERFORM GET_FILE.
----
AT SELECTION-SCREEN OUTPUT.
----
AT SELECTION-SCREEN OUTPUT.
NO_EMPL = 0.
----
GET PERNR EVENT
----
GET PERNR.
PERFORM CALCULATE_OVERTIME.
----
*END-OF-SELECTION
----
END-OF-SELECTION.
IF NO_EMPL <> 0.
IF P_FNAME <> ''.
PERFORM DOWNLOAD.
PERFORM DISPLAY_DATA.
ELSE.
PERFORM POP_UP.
IF SY-UCOMM = 'YES'.
PERFORM DISPLAY_DATA.
ENDIF.
ENDIF.
ELSE.
MESSAGE I001(00) WITH 'NO EMPLOYEE PRESENT WITH SEARCH CRITERIA'.
ENDIF.
&----
*& Form DISPLAY_DATA
&----
text
----
FORM DISPLAY_DATA .
CLEAR IS_LAYOUT.
IS_LAYOUT-COLWIDTH_OPTIMIZE = 'X'.
IS_LAYOUT-ZEBRA = 'X'.
IS_LAYOUT-INFO_FIELDNAME = 'COLOR'.
IS_LAYOUT-BOX_FIELDNAME = 'CHECK'.
Sort
CSORT-FIELDNAME = 'PERNR'.
CSORT-UP = 'X'.
CSORT-SUBTOT = 'X'.
APPEND CSORT TO ALV_SORT.
CSORT-FIELDNAME = 'SNAME'.
CSORT-GROUP = 'X'.
CSORT-SUBTOT = ''.
APPEND CSORT TO ALV_SORT.
Set field catalog
PERFORM BUILD_FIELDCATALOG.
Build Event Tab
PERFORM EVENTTAB_BUILD CHANGING I_EVENTS.
Build Comment Tab
PERFORM COMMENT_BUILD CHANGING ALV_TOP_OF_PAGE.
Call ALV Grid to display the log
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = 'ZPT_REPT_OVERTIME_001'
IS_LAYOUT = IS_LAYOUT
IT_FIELDCAT = I_FIELDCAT
IT_SORT = ALV_SORT
I_DEFAULT = 'X'
I_SAVE = 'A'
IT_EVENTS = I_EVENTS[]
I_GRID_TITLE = ALV_TITLE
TABLES
T_OUTTAB = IT_OVERTIME
EXCEPTIONS
PROGRAM_ERROR = 1
OTHERS = 2.
ENDFORM. " display_data
&----
*& Form BUILD_FIELDCATALOG
&----
text
----
FORM BUILD_FIELDCATALOG .
Build the field Catalog for the ALV List
REFRESH I_FIELDCAT.
CLEAR FIELDCAT.
FIELDCAT-TABNAME = 'IT_OVERTIME'.
FIELDCAT-FIELDNAME = 'SNAME'.
FIELDCAT-SELTEXT_M = 'EMPLOYEE NAME'.
FIELDCAT-JUST = 'L'.
FIELDCAT-KEY = 'X'.
FIELDCAT-HOTSPOT = 'X'.
FIELDCAT-DATATYPE = 'C'.
APPEND FIELDCAT TO I_FIELDCAT.
CLEAR FIELDCAT.
FIELDCAT-TABNAME = 'IT_OVERTIME'.
FIELDCAT-FIELDNAME = 'PERNR'.
FIELDCAT-SELTEXT_M = 'P.S. NUMBER'.
FIELDCAT-JUST = 'L'.
FIELDCAT-INTTYPE = 'C'.
FIELDCAT-KEY = 'X'.
FIELDCAT-DATATYPE = 'C'.
APPEND FIELDCAT TO I_FIELDCAT.
CLEAR FIELDCAT.
FIELDCAT-TABNAME = 'IT_OVERTIME'.
FIELDCAT-FIELDNAME = 'BEGDA'.
FIELDCAT-SELTEXT_M = 'BEGINNING DATE'.
FIELDCAT-INTTYPE = 'D'.
FIELDCAT-DO_SUM = ''.
FIELDCAT-JUST = 'L'.
APPEND FIELDCAT TO I_FIELDCAT.
CLEAR FIELDCAT.
FIELDCAT-TABNAME = 'IT_OVERTIME'.
FIELDCAT-FIELDNAME = 'ENDDA'.
FIELDCAT-SELTEXT_M = 'ENDING DATE'.
FIELDCAT-INTTYPE = 'D'.
FIELDCAT-DO_SUM = ''.
FIELDCAT-JUST = 'L'.
APPEND FIELDCAT TO I_FIELDCAT.
CLEAR FIELDCAT.
FIELDCAT-TABNAME = 'IT_OVERTIME'.
FIELDCAT-FIELDNAME = 'BEGUZ'.
FIELDCAT-SELTEXT_M = 'IN-TIME'.
FIELDCAT-INTTYPE = 'T'.
FIELDCAT-DO_SUM = ''.
FIELDCAT-JUST = 'L'.
APPEND FIELDCAT TO I_FIELDCAT.
CLEAR FIELDCAT.
FIELDCAT-TABNAME = 'IT_OVERTIME'.
FIELDCAT-FIELDNAME = 'ENDUZ'.
FIELDCAT-SELTEXT_M = 'OUT-TIME'.
FIELDCAT-JUST = 'L'.
FIELDCAT-INTTYPE = 'T'.
FIELDCAT-DO_SUM = ''.
APPEND FIELDCAT TO I_FIELDCAT.
CLEAR FIELDCAT.
FIELDCAT-TABNAME = 'IT_OVERTIME'.
FIELDCAT-FIELDNAME = 'STDAZ'.
FIELDCAT-SELTEXT_M = 'TOTAL WORKING HOURS'.
FIELDCAT-JUST = 'L'.
FIELDCAT-DO_SUM = 'X'.
FIELDCAT-INTTYPE = 'P'.
APPEND FIELDCAT TO I_FIELDCAT.
CLEAR FIELDCAT.
FIELDCAT-TABNAME = 'IT_OVERTIME'.
FIELDCAT-FIELDNAME = 'INTERMEDIATE1'.
FIELDCAT-SELTEXT_M = 'SINGLE OVERTIME'.
FIELDCAT-INTTYPE = 'P'.
FIELDCAT-DO_SUM = 'X'.
FIELDCAT-JUST = 'L'.
FIELDCAT-DATATYPE = 'C'.
APPEND FIELDCAT TO I_FIELDCAT.
FIELDCAT-TABNAME = 'IT_OVERTIME'.
FIELDCAT-FIELDNAME = 'INTERMEDIATE2'.
FIELDCAT-SELTEXT_M = 'DOUBLE OVERTIME'.
FIELDCAT-INTTYPE = 'P'.
FIELDCAT-DO_SUM = 'X'.
FIELDCAT-JUST = 'L'.
FIELDCAT-DATATYPE = 'C'.
APPEND FIELDCAT TO I_FIELDCAT.
FIELDCAT-TABNAME = 'IT_OVERTIME'.
FIELDCAT-FIELDNAME = 'OVERTIME'.
FIELDCAT-SELTEXT_M = 'TOTAL-OVERTIME'.
FIELDCAT-INTTYPE = 'P'.
FIELDCAT-DO_SUM = 'X'.
FIELDCAT-JUST = 'L'.
FIELDCAT-DATATYPE = 'C'.
APPEND FIELDCAT TO I_FIELDCAT.
CLEAR FIELDCAT.
FIELDCAT-TABNAME = 'IT_OVERTIME'.
FIELDCAT-FIELDNAME = 'AWART'.
FIELDCAT-SELTEXT_M = 'REASON'.
FIELDCAT-JUST = 'L'.
FIELDCAT-INTTYPE = 'T'.
FIELDCAT-DO_SUM = ''.
FIELDCAT-DATATYPE = 'C'.
APPEND FIELDCAT TO I_FIELDCAT.
CLEAR FIELDCAT.
FIELDCAT-TABNAME = 'IT_OVERTIME'.
FIELDCAT-FIELDNAME = 'ATEXT'.
FIELDCAT-SELTEXT_M = 'REMARK'.
FIELDCAT-JUST = 'L'.
FIELDCAT-INTTYPE = 'T'.
FIELDCAT-DO_SUM = ''.
FIELDCAT-DATATYPE = 'C'.
APPEND FIELDCAT TO I_FIELDCAT.
CLEAR FIELDCAT.
ENDFORM. "BUILD_FIELDCATALOG
&----
*& Form EVENTTAB_BUILD
&----
-->IO_LT_EVENTtext
----
FORM EVENTTAB_BUILD CHANGING IO_LT_EVENTS TYPE SLIS_T_EVENT.
DATA: LS_EVENT TYPE SLIS_ALV_EVENT.
Returns table of possible events for a list type
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
I_LIST_TYPE = 0
IMPORTING
ET_EVENTS = IO_LT_EVENTS.
READ TABLE IO_LT_EVENTS WITH KEY NAME = SLIS_EV_TOP_OF_PAGE
INTO LS_EVENT.
IF SY-SUBRC = 0.
MOVE C_FORMNAME_TOP_OF_PAGE TO LS_EVENT-FORM.
APPEND LS_EVENT TO IO_LT_EVENTS.
ENDIF.
ENDFORM. " EVENTTAB_BUILD
&----
FORM COMMENT_BUILD CHANGING IO_ALV_TOP_OF_PAGE TYPE SLIS_T_LISTHEADER.
Use to customize the ALV header.It supports conditional ALV display.
----
FORM COMMENT_BUILD CHANGING IO_ALV_TOP_OF_PAGE TYPE SLIS_T_LISTHEADER.
DATA : L_TITLE(40) TYPE C,
L_LDATE(10),
L_HDATE(10).
CLEAR GS_LINE.
GS_LINE-TYP = 'H'.
GS_LINE-INFO = 'OVERTIME CALCULATION FOR NOKIA'.
APPEND GS_LINE TO IO_ALV_TOP_OF_PAGE.
Displays the Date range on the ALV header.
GS_LINE-TYP = 'S'.
IF NOT PN-ENDDA IS INITIAL.
WRITE PN-ENDDA TO L_HDATE DD/MM/YYYY.
WRITE PN-BEGDA TO L_LDATE DD/MM/YYYY.
CONCATENATE 'From' L_LDATE 'to' L_HDATE INTO L_TITLE SEPARATED BY
SPACE.
ELSE.
WRITE PN-BEGDA TO L_LDATE DD/MM/YYYY.
L_TITLE = L_LDATE .
ENDIF.
GS_LINE-INFO = L_TITLE.
GS_LINE-KEY = 'DATE :'.
APPEND GS_LINE TO IO_ALV_TOP_OF_PAGE.
Displays the Payroll area on the ALV header, if entered as a
*selection criteria.
IF PNPXABKR <> ''.
GS_LINE-TYP = 'S'.
GS_LINE-INFO = PNPXABKR.
GS_LINE-KEY = 'PAYROLL AREA:'.
APPEND GS_LINE TO IO_ALV_TOP_OF_PAGE.
ENDIF.
Displays the Employee status on the ALV header, if entered as a
*selection criteria.
IF PNPSTAT2 <> ''.
GS_LINE-TYP = 'S'.
GS_LINE-INFO = PNPSTAT2-LOW.
GS_LINE-KEY = 'EMPLOYEE STATUS:'.
APPEND GS_LINE TO IO_ALV_TOP_OF_PAGE.
ENDIF.
Displays the Company code on the ALV header, if entered as a
*selection criteria.
IF PNPBUKRS <> ''.
GS_LINE-TYP = 'S'.
GS_LINE-INFO = PNPBUKRS-LOW.
GS_LINE-KEY = 'COMPANY CODE :'.
APPEND GS_LINE TO IO_ALV_TOP_OF_PAGE.
ENDIF.
Displays the Payroll area on the ALV header, if entered as a
*selection criteria.
IF PNPABKRS <> ''.
GS_LINE-TYP = 'S'.
GS_LINE-INFO = PNPABKRS-LOW.
GS_LINE-KEY = 'PAYROLL AREA :'.
APPEND GS_LINE TO IO_ALV_TOP_OF_PAGE.
ENDIF.
Displays the Employee group on the ALV header, if entered as a *
*selection criteria.
IF PNPXPGPK <> ''.
GS_LINE-TYP = 'S'.
GS_LINE-INFO = PNPXPGPK-LOW.
GS_LINE-KEY = 'EMPLOYEE GROUP :'.
APPEND GS_LINE TO IO_ALV_TOP_OF_PAGE.
ENDIF.
Displays the Personnel area on the ALV header, if entered as a
*selection criteria.
IF PNPXBWBK <> ''.
GS_LINE-TYP = 'S'.
GS_LINE-INFO = PNPXBWBK-LOW.
GS_LINE-KEY = 'PERSONNEL AREA :'.
APPEND GS_LINE TO IO_ALV_TOP_OF_PAGE.
ENDIF.
ENDFORM. " COMMENT_BUILD
&----
*& Form TOP_OF_PAGE
&----
FORM TOP_OF_PAGE.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
I_LOGO = 'HR_LOGO'
IT_LIST_COMMENTARY = ALV_TOP_OF_PAGE.
WRITE: /2 SY-DATUM, 'Page No', SY-PAGNO LEFT-JUSTIFIED.
ENDFORM. "TOP_OF_PAGE
&----
*& Form DOWNLOAD
&----
This Subroutine downloads the contents of internal table "IT_OVERTIME"
to the file whose name is specified by P_FNAME. This Subroutine uses
the function module "WS_DOWNLOAD" for performing download operation.
FUNCTION MODULE DESCRIPTION:
The function module "WS_DOWNLOAD" takes the following parameters as
*inputs:
FILENAME: Will contain the name of the file specified by the user.
FILETYPE: Contains the Filetype
It also takes an internal table as its input(IT_OVERTIME).
----
FORM DOWNLOAD .
CALL FUNCTION 'WS_DOWNLOAD'
EXPORTING
BIN_FILESIZE = ' '
CODEPAGE = ' '
FILENAME = P_FNAME
FILETYPE = 'DAT'
MODE = ' '
WK1_N_FORMAT = ' '
WK1_N_SIZE = ' '
WK1_T_FORMAT = ' '
WK1_T_SIZE = ' '
COL_SELECT = ' '
COL_SELECTMASK = ' '
NO_AUTH_CHECK = ' '
IMPORTING
FILELENGTH =
TABLES
DATA_TAB = IT_OVERTIME
FIELDNAMES =
EXCEPTIONS
FILE_OPEN_ERROR = 1
FILE_WRITE_ERROR = 2
INVALID_FILESIZE = 3
INVALID_TYPE = 4
NO_BATCH = 5
UNKNOWN_ERROR = 6
INVALID_TABLE_WIDTH = 7
GUI_REFUSE_FILETRANSFER = 8
CUSTOMER_ERROR = 9
NO_AUTHORITY = 10
OTHERS = 11
.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. " DOWNLOAD
&----
*& Form CALCULATE_OVERTIME
&----
This Subroutine calculates the overtime of the employee and stores the
result as follows:
VARIABLE DESCRIPTION
OVERTIME Stores the final overtime of the employee
INTERMEDIATE1 Stores the intermediate overtime(1.5@x)
INTERMEDIATE2 Stores the intermediate overtime(2@x)
*
----
FORM CALCULATE_OVERTIME .
Fetching attendance data according to the begining date and ending
*date from P2002 into internal table IT_OVERTIME.
PROVIDE * FROM P2002 BETWEEN PN-BEGDA AND PN-ENDDA.
MOVE-CORRESPONDING P2002 TO IT_OVERTIME.
CASE IT_OVERTIME-ABRTG.
Checking for Sunday. ABTRG is 0 for Sunday.
Overtime logic:
OVERTIME = ( Working hrs.) * 2 + 8.
WHEN '0.00'.
IT_OVERTIME-OVERTIME = IT_OVERTIME-STDAZ * 2 + 8.
IT_OVERTIME-INTERMEDIATE1 = 0.
IT_OVERTIME-INTERMEDIATE2 = IT_OVERTIME-OVERTIME.
Checking for working days.
Overtime logic:
1. Subtrtact 8 from total working hrs.
2. For first 4 hrs, multiply working hrs. by 1.5.
3. For remaining hrs, multiply working hrs. by 2.
WHEN OTHERS.
CALCULATE = IT_OVERTIME-STDAZ - 8.
IF CALCULATE LE 0.
IT_OVERTIME-OVERTIME = 0.
IT_OVERTIME-INTERMEDIATE1 = 0.
IT_OVERTIME-INTERMEDIATE2 = 0.
ELSE.
IF CALCULATE GE 4.
IT_OVERTIME-OVERTIME = 4 * '1.5'.
IT_OVERTIME-INTERMEDIATE1 = IT_OVERTIME-OVERTIME.
CALCULATE = CALCULATE - 4.
IT_OVERTIME-INTERMEDIATE2 = CALCULATE * 2.
IT_OVERTIME-OVERTIME = IT_OVERTIME-OVERTIME +
IT_OVERTIME-INTERMEDIATE2.
ELSE.
IT_OVERTIME-OVERTIME = CALCULATE * '1.5'.
IT_OVERTIME-INTERMEDIATE1 = IT_OVERTIME-OVERTIME.
IT_OVERTIME-INTERMEDIATE2 = 0.
CALCULATE = 0.
ENDIF.
ENDIF.
ENDCASE.
IT_OVERTIME-SNAME = P0001-SNAME.
Fetching attendance text from table T554T.
SELECT ATEXT FROM T554T INTO IT_OVERTIME-ATEXT WHERE AWART =
IT_OVERTIME-AWART.
ENDSELECT.
APPEND IT_OVERTIME TO IT_OVERTIME.
NO_EMPL = SY-TABIX.
ENDPROVIDE.
Clearing the header of the internal table.
CLEAR IT_OVERTIME.
Fetching absence data according to the begining date and ending date
*from P2001 into internal table IT_OVERTIME.
PROVIDE * FROM P2001 BETWEEN PN-BEGDA AND PN-ENDDA.
MOVE-CORRESPONDING P2001 TO IT_OVERTIME.
IT_OVERTIME-OVERTIME = 0.
IT_OVERTIME-INTERMEDIATE1 = 0.
IT_OVERTIME-INTERMEDIATE2 = 0.
IT_OVERTIME-SNAME = P0001-SNAME.
Fetching absence text from table T554T.
SELECT ATEXT FROM T554T INTO IT_OVERTIME-ATEXT WHERE AWART =
IT_OVERTIME-AWART.
ENDSELECT.
APPEND IT_OVERTIME TO IT_OVERTIME.
NO_EMPL = SY-TABIX.
CLEAR IT_OVERTIME.
ENDPROVIDE.
SORT IT_OVERTIME BY PERNR BEGDA.
ENDFORM. " CALCULATE_OVERTIME
&----
*& Form GET_FILE
&----
This Subroutine uses a function module "WS_FILENAME_GET" to display
file save dialog
----
FORM GET_FILE .
CALL FUNCTION 'WS_FILENAME_GET'
EXPORTING
DEF_FILENAME = ' '
DEF_PATH = ' '
MASK = ''
MODE = 'S'
TITLE = ''
IMPORTING
FILENAME = P_FNAME
RC =
EXCEPTIONS
INV_WINSYS = 1
NO_BATCH = 2
SELECTION_CANCEL = 3
SELECTION_ERROR = 4
OTHERS = 5
.
CASE SY-SUBRC.
WHEN 3.
SET SCREEN 0.
WHEN 1.
MESSAGE I002(00) WITH 'File selector not available on this windows
system'.
SET SCREEN 0.
WHEN 2.
MESSAGE I003(00) WITH 'Front-End Function Cannot Be Executed in
Backgrnd'.
SET SCREEN 0.
WHEN 4.
MESSAGE I004(00) WITH 'Communication error'.
SET SCREEN 0.
WHEN 5.
MESSAGE I005(00) WITH 'File can not be downloaded'.
SET SCREEN 0.
ENDCASE.
ENDFORM. " GET_FILE
&----
*& Form POP_UP
&----
This subroutine uses a function module "POPUP_TO_CONFIRM_STEP".
This function module provides a dialog box with a question and the *
response alternatives "Yes" and "No" (one is preselected), where the
*user must confirm a processing step.
----
FORM POP_UP .
CALL FUNCTION 'POPUP_TO_CONFIRM_STEP'
EXPORTING
DEFAULTOPTION = 'Y'
TEXTLINE1 = 'No File name specified.Data will not be'
TEXTLINE2 = 'downloaded.Do you want to continue ?'
TITEL = 'Do you want to continue ? '
START_COLUMN = 25
START_ROW = 6
CANCEL_DISPLAY = ''
IMPORTING
ANSWER =
.
ENDFORM. " POP_UP