Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

9.207 STM_FILE_WRITE

Note

注意

...

 9.1

...

組み込み関数の規則     利用オプション

この組み込み関数によって、指定のストリーム・ファイルにデータを書き込みます。このストリーム・ファイルは、STM_FILE_OPENによってあらかじめ開いています。 OPENによってあらかじめ開いています。  LineTerminatorオプションを指定してストリーム・ファイルを開いている場合、データ・ブロックにあるデータが書き込まれ、指定の終了文字で終わります。

LineTerminatorオプションを指定してストリーム・ファイルを開いている場合、データ・ブロックにあるデータが書き込まれ、指定の終了文字で終わります。 

LineTerminator=NONEオプションを指定してストリーム・ファイルを開いている場合、データ・ブロックにあるデータがデータ・ストリームに書き込まれます。STM_FILE_WRITE_CTL組み込み関数を使用することによって、データ・ストリームの適切な位置に行終了文字を書き込むことができます。 CTL組み込み関数を使用することによって、データ・ストリームの適切な位置に行終了文字を書き込むことができます。 

関連する組み込み関数:STM_FILE_OPEN、STM_FILE_READ、STM_FILE_CLOSE、STM_FILE_WRITE_CTL Line Terminatorの使用については、「9Terminatorの使用については、9.205 STM_FILE_OPEN 」を参照してください。 を参照してください。  

引数

番号

タイプ

必須/任意

記述

最小長

最大長

最小小数桁数

最大小数桁数

1

N

必須

データが書き込まれるファイルのファイル番号(ファイル・ハンドル)

この番号は、ストリーム・ファイルに割り当てられ、STM_FILE_OPENで戻されています。

1

3

0

0

2

A

必須

データ・ブロック1

1

制限なし

 

 



3

A

任意

データ・ブロック2

1

制限なし

 

 



4

A

任意

データ・ブロック3

1

制限なし

 

 



5

A

任意

データ・ブロック4

1

制限なし

 

 



6

A

任意

データ・ブロック5

1

制限なし

 

 



7

A

任意

データ・ブロック6

1

制限なし

 

 



8

A

任意

データ・ブロック7

1

制限なし

 

 



9

A

任意

データ・ブロック8

1

制限なし

 

 



10

A

任意

データ・ブロック9

1

制限なし

 

 



11

A

任意

データ・ブロック10

1

制限なし

 

 



戻り値

番号

タイプ

必須/任意

記述

最小長

最大長

最小小数桁数

最大小数桁数

1

A

任意

戻りコード

OK =

データが書き込まれた

データが書き込まれた 

ER = エラーが発生した

2

2

 

 



このIBM iの例では、ストリーム・ファイルがIBM i IFSに書き込まれます。 IFSに書き込まれます。 

ファイルは、ディレクトリ/tmpに書き込まれ、example1.txtという名前が付けられます。 txtという名前が付けられます。 

ファイルはテキストとして書き込まれ、各行は復帰改行(CRLF)で終わります。各行のフィールドでは、末尾ブランクが除去されないため、データは固定の書式のように見えます。
FUNCTION   OPTIONSで終わります。各行のフィールドでは、末尾ブランクが除去されないため、データは固定の書式のように見えます。 


FUNCTION   OPTIONS(*DIRECT)

...

                                       
**********

...

                                                        
DEFINE     FIELD(#FILENO)

...

 TYPE(*DEC)

...

 LENGTH(3)

...

 DECIMALS(0)

...

 DESC('

...

Allocated file number')

...


DEFINE     FIELD(#RETNCODE)

...

 TYPE(*CHAR)

...

 LENGTH(2)

...

                 
DEFINE     FIELD(#OPTIONS)

...

 TYPE(*CHAR)

...

 LENGTH(256)

...

 DESC('

...

Options for stream file open')
CHANGE     FIELD(#OPTIONS)

...

 TO('''

...

WRITE notrim Text lineTerminator= CRLF CodePage=819''')
**********

...

                                                        
USE        BUILTIN(STM_FILE_OPEN)

...

 WITH_ARGS('''/tmp/example1.txt'''

...

 #OPTIONS)

...

 TO_GET(

...

#FILENO #RETNCODE)
IF         COND('#retncode *NE OK')                             
MESSAGE    MSGTXT('Error occurred on OPEN')                     
RETURN                                                          
ENDIF                                                           
**********

...

                                                       
**********

...

 Read file PSLMST and write to the IFS file example1.txt
**********

...

 Each line written contains employee name and phone number.
**********

...

 Each line written contains employee name and phone number.   
**********

...

                                                       
SELECT     FIELDS((#SURNAME)

...

 (#GIVENAME)

...

 (#PHONEBUS))

...

 FROM_FILE(PSLMST)

...


USE        BUILTIN(STM_FILE_WRITE)

...

 WITH_ARGS(

...

#FILENO #SURNAME #GIVENAME #PHONEBUS) TO_GET(#RETNCODE)

...


IF         COND('

...

#retncode *NE OK')                            
MESSAGE    MSGTXT('Error writing to stream file')             
RETURN                                                        
ENDIF                                                         
ENDSELECT                                                     
**********

...

                                                     
**********

...

 Close stream file and finish                        
**********

...

                                                     
USE        BUILTIN(STM_FILE_CLOSE)

...

 WITH_ARGS(#FILENO)

...

          
RETURN