Copy To Stream File CPYTOSTMF in IBM i |
Copy To Stream File (CPYTOSTMF)
The Copy To Stream File (CPYTOSTMF) command copies either a database file member or a save file to a stream file. This command can operate on regular files and on the /dev/null character special file. A regular file is a file that supports the integrated file system input/output (I/O) operations open, read, and write.
Using Copy To Stream File (CPYTOSTMF) to copy database file members to stream file
We would be copying source member APIPGM present at source file DDSTODDL2 in library EASYCLASS1.
Work with Members Using PDM File . . . . . . DDSTODDL2 Library . . . . EASYCLASS1 Position to . . . . . Type options, press Enter. 2=Edit 3=Copy 4=Delete 5=Display 6=Print 7=Rename 8=Display description 9=Save 13=Change text 14=Compile 15=Create Opt Member Type Text APIPGM SQLRPGLE QSQGNDDL API APIPGM#1 SQLRPGLE QSQGNDDL API APIPGM#2 SQLRPGLE QSQGNDDL API APIPGM2 SQLRPGLE QSQGNDDL API DDLG1 SQL MBR1 MBR2 MBR3NEW
CPYTOSTMF command will copy the source member to the IFS stream file CPYTOSTMF1.
Copy To Stream File (CPYTOSTMF) Type choices, press Enter. From file member or save file . FROMMBR > '/QSYS.LIB/EASYCLASS1.LIB/DDSTODDL2.FILE/APIPGM.MBR' To stream file . . . . . . . . . TOSTMF > '/HOME/EASYCLASS/CPYTOSTMF1' Stream file option . . . . . . . STMFOPT *ADD Data conversion options . . . . CVTDTA *AUTO Database file CCSID . . . . . . DBFCCSID *FILE Stream file CCSID . . . . . . . STMFCCSID *STMF End of line characters . . . . . ENDLINFMT *CRLF Authority . . . . . . . . . . . AUT *DFT
Here, This command copies the data contained in database file member /QSYS.LIB/EASYCLASS1.LIB/DDSTODD12.FILE/APIPGM.MBR to a stream file named /HOME/EASYCLASS/CPYTOSTMF1 in the current working directory. Also Line-feed followed by carriage-return is appended to the end of each line since we used *CRLF as End of Line character.
Selection or command ===> F3=Exit F4=Prompt F9=Retri F23=Set initial menu Object copied.
wrklnk CPYTOSTMF1
Work with Object Links Directory . . . . : /home/EASYCLASS Type options, press Enter. 2=Edit 3=Copy 4=Remove 5=Display 7=Rename 8=Display attributes 11=Change current directory ... Opt Object link Type Attribute Text CPYTOSTMF1 STMF
Browse : /home/EASYCLASS/CPYTOSTMF1 Record : 1 of 171 by 18 Column : 1 62 by 131 Control : ....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+.... ************Beginning of data************** * format of Input Tempalate parameter of SQLR0100 format D SQLR0100 DS D databaseobjectname... D 258a D databaseobjectlibraryname... D 258a D databaseobjecttype... D 10a D databasesourcefilename... D 10a D databasesourcefilelibraryname... D 10a D databasesourcefilemembername... D 10a D severitylevel... D 10i 0 INZ(30) D replaceoption... D 1a INZ('0')
Using Copy To Stream file (CPYTOSTMF) command to copy save file to stream file
We would be copying save file TESTSAV2 to a stream file SAVF1 using CPYTOSTMF command.
CRTSAVF FILE(EASYCLASS1/TESTSAV2)
Save file gets created once we execute above CRTSAVF command through IBM i command line.
File TESTSAV2 created in library EASYCLASS1
wrkobj EASYCLASS1/TESTSAV2
Work with Objects Type options, press Enter. 2=Edit authority 3=Copy 4=Delete 5=Display authority 7=Rename 8=Display description 13=Change description Opt Object Type Library Attribute Text TESTSAV2 *FILE EASYCLASS1 SAVF
SAVOBJ OBJ(EXTPGM5) LIB(EASYCLASS1) DEV(*SAVF) SAVF(EASYCLASS1/TESTSAV2) TGTRLS(*CURRENT)
One object saved in save file TESTSAV2.
1 objects saved from library EASYCLASS1.
Use DSPSAVF command to see the objects saved in a save file TESTSAV2.
dspsavf easyclass1/testsav2
Display saved objects in a save file
Display Saved Objects Library saved . . . . . . . : EASYCLASS1 Type Options, press Enter. 5=Display Opt Object Type Attribute Owner Size (K) Data EXTPGM5 *PGM RPGLE EASYCLASS 136 YES
Copy To Stream File (CPYTOSTMF) Type choices, press Enter. From file member or save file . FROMMBR > '/QSYS.LIB/EASYCLASS1.LIB/TESTS AV2.FILE' To stream file . . . . . . . . . TOSTMF > '/HOME/EASYCLASS/SAVF1' Stream file option . . . . . . . STMFOPT > *REPLACE
Here, this command copies the data contained in save file /QSYS.LIB/EASYCLASS1.LIB/TESTSAV2.FILE to the stream file /HOME/EASYCLASS1/SAVF1.
Object copied.
wrklnk savf1
Work with object links
Work with Object Links Directory . . . . : /home/EASYCLASS Type options, press Enter. 2=Edit 3=Copy 4=Remove 5=Display 7=Rename 8=Display attributes 11=Change current directory ... Opt Object link Type Attribute Text savf1 STMF
Take option 5 to display the content of the stream file
Browse : /home/EASYCLASS/savf1 Record : 1 of 1248 by 18 Column : 1 132 by 131 Control : ....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....+....0....+....1....+....2....+....3. ************Beginning of data************** y ÒÜÃøÛ 41G 9009 ã hÂñhJüÍ $ÍÒµ y ÒÜÃøÛ y ÒÜÃøÛ - y ÒÜÃøÛ Ø F3=Exit F10=Display Hex F12=Cancel F15=Services F16=Repeat find F19=Left F20=Right Record length of 132 used.