IBM Global Services
Application Server Files
Data Interfaces | Dec-2008 © 2005 IBM Corporation
IBM Global Services
Objectives
The participants will be able to:
Describe how datasets are processed in an Inbound SAP Interface.
Write an ABAP program that processes a sequential file located on an Application
Server.
2 Data Interfaces | Dec-2008 © 2005 IBM Corporation
IBM Global Services
Overview
In this chapter, we will Database
learn how to process
sequential files on an Server
application server
Application
Servers
Presentation
Servers
3 Data Interfaces | Dec-2008 © 2005 IBM Corporation
IBM Global Services
Processing Files
Open File
Create File or Read File
Close File
4 Data Interfaces | Dec-2008 © 2005 IBM Corporation
IBM Global Services
Open File
“OPEN DATASET” statement
“IN”
“FOR”
BINARY MODE
INPUT
TEXT MODE
OUTPUT ENCODING
DEFAULT
APPENDING
“AT POSITION” “MESSAGE”
5 Data Interfaces | Dec-2008 © 2005 IBM Corporation
IBM Global Services
Open File(Contd.)
“OPEN DATASET” statement
“IN”
“FOR”
BINARY MODE
INPUT
TEXT MODE
OUTPUT ENCODING
DEFAULT
APPENDING
“AT POSITION” “MESSAGE”
6 Data Interfaces | Dec-2008 © 2005 IBM Corporation
IBM Global Services
Close File or Delete File
“CLOSE DATASET” statement
“DELETE DATASET” statement
7 Data Interfaces | Dec-2008 © 2005 IBM Corporation
IBM Global Services
Create File or Read File
“TRANSFER” statement
“READ DATASET” statement
8 Data Interfaces | Dec-2008 © 2005 IBM Corporation
IBM Global Services
Create File or Read File (Contd.)
“TRANSFER” statement
“READ DATASET” statement
9 Data Interfaces | Dec-2008 © 2005 IBM Corporation
IBM Global Services
Example - Create New File
REPORT YDI00002.
PARAMETERS:
OUTFILE(20) DEFAULT ‘./bc180_file1’
LOWER CASE,
STATE TYPE KNA1-REGIO DEFAULT ‘MA’.
DATA: BEGIN OF OUTREC,
Step #1 KUNNR TYPE KUNNR,
REGIO TYPE REGIO,
TELF1 TYPE TELF1,
END OF OUTREC.
OPEN DATASET OUTFILE FOR OUTPUT IN TEXT MODE
Step #2 ENCODING DEFAULT.
SELECT * FROM KNA1 WHERE REGIO = STATE.
Step #3 MOVE-CORRESPONDING KNA1 TO OUTREC.
Step #4 TRANSFER OUTREC TO OUTFILE.
ENDSELECT.
Step #5 CLOSE DATASET OUTFILE.
10 Data Interfaces | Dec-2008 © 2005 IBM Corporation
IBM Global Services
Example - Create New File (Contd.)
REPORT YDI00002.
PARAMETERS:
OUTFILE(20) DEFAULT ‘./bc180_file1’
LOWER CASE,
STATE TYPE REGIO DEFAULT ‘MA’.
DATA: BEGIN OF OUTREC,
Step #1 KUNNR TYPE KUNNR,
REGIO TYPE REGIO,
TELF1 TYPE TELF1,
END OF OUTREC.
OPEN DATASET OUTFILE FOR OUTPUT IN TEXT MODE
Step #2 ENCODING DEFAULT.
SELECT * FROM KNA1 WHERE REGIO = STATE.
Step #3 MOVE-CORRESPONDING KNA1 TO OUTREC.
Step #4 TRANSFER OUTREC TO OUTFILE.
ENDSELECT.
Step #5 CLOSE DATASET OUTFILE.
11 Data Interfaces | Dec-2008 © 2005 IBM Corporation
IBM Global Services
Example - Extend File
REPORT YDI00003.
PARAMETERS:
OUTFILE(20) DEFAULT ‘./bc180_file1’
LOWER CASE,
STATE TYPE REGIO DEFAULT ‘MA’.
DATA: BEGIN OF OUTREC,
KUNNR TYPE KUNNR,
The only change from the REGIO TYPE REGIO,
previous example is “FOR TELF1 TYPE TELF1,
APPENDING” instead of “FOR END OF OUTREC. CHECK
OUTPUT”. SY-SUBRC
OPEN DATASET OUTFILE FOR APPENDING IN TEXT MODE
ENCODING DEFAULT.
SELECT * FROM KNA1 WHERE REGIO = STATE.
MOVE-CORRESPONDING KNA1 TO OUTREC.
TRANSFER OUTREC TO OUTFILE. SELECT *
ENDSELECT.
CLOSE DATASET OUTFILE.
12 Data Interfaces | Dec-2008 © 2005 IBM Corporation
IBM Global Services
Example - Read File
REPORT YDI00004.
PARAMETERS:
INFILE(20) DEFAULT ‘./bc180_file1’
LOWER CASE.
DATA: BEGIN OF INREC,
Step #1
KUNNR TYPE KUNNR,
REGIO TYPE REGIO,
TELF1 TYPE TELF1,
END OF INREC.
CHECK
Step #2 OPEN DATASET INFILE FOR INPUT IN TEXT MODE SY-SUBRC
ENCODING DEFAULT.
DO.
Step #3 READ DATASET INFILE INTO INREC.
Step #4 IF SY-SUBRC <> 0. EXIT. ENDIF.
WRITE: INREC-KUNNR, INREC-REGIO, INREC-TELF1.
Step #5 ENDDO.
CLOSE DATASET INFILE.
13 Data Interfaces | Dec-2008 © 2005 IBM Corporation
IBM Global Services
Text Mode Versus Binary Mode
File structured File structured
in lines byte-by-byte
ABC
“READ DATASET” into ABCDE
DEFGH
structure that is four characters FGHIJK
IJKL in length
1
A B C A B C D
2
D E F G E F G H
3
I J K L I J K
14 Data Interfaces | Dec-2008 © 2005 IBM Corporation
IBM Global Services
Text Mode Versus Binary Mode (Contd.)
File structured File structured
in lines byte-by-byte
ABC
“READ DATASET” into ABCDE
DEFGH
structure that is four characters FGHIJK
IJKL in length
1
A B C A B C D
2
D E F G E F G H
3
I J K L I J K
15 Data Interfaces | Dec-2008 © 2005 IBM Corporation
IBM Global Services
Demonstration
Writing a custom ABAP program that reads and writes data in a file stored on the
Application Server.
16 Data Interfaces | Dec-2008 © 2005 IBM Corporation
IBM Global Services
Practice
Writing a custom ABAP program that reads and writes data in a file stored on the
Application Server.
17 Data Interfaces | Dec-2008 © 2005 IBM Corporation
IBM Global Services
Summary
File in application server is opened by “Open Dataset” statement.
If you want to read the file then use “Open Dataset for input” statement.
If you want to write in the file then use “Open Dataset for output” statement. If that
file does not exit then it will create it for writing.
18 Data Interfaces | Dec-2008 © 2005 IBM Corporation
IBM Global Services
Questions
Which ABAP statement we have to use to open a file stored on the Application
server ?
Which ABAP statement we have to use to close a file stored on the Application
server ?
Why we use TRANSFER statement ?
19 Data Interfaces | Dec-2008 © 2005 IBM Corporation