Javaコネクタに渡すデータを書き込むための出力ストリームです。
java.lang.Object
∟ Java.io.OutputStream
∟ com.fujitsu.systemwalker.outputassist.connector.FormsStream
public class FormsStream
extends java.io.FileOutputStream
implements FormBase
FormsStreamクラスのsetGrpOutメソッドで指定するフィールドを以下に示します。
定数 | 説明 |
---|---|
GRPOUT_NOGRP | マルチフォーム出力しません。 |
GRPOUT_GRP | マルチフォーム出力します。 |
FormsStreamクラスのsetGrpDelimitModeメソッドで指定するフィールドを以下に示します。
定数 | 説明 |
---|---|
DELIMIT_ANY | 以下の場合に指定します。
|
DELIMIT_SPACE | 入力データ形式が「可変長」、区切り文字が「1個以上の空白」の場合に指定します。 |
DELIMIT_TAB | 以下の場合に指定します。
|
DELIMIT_FIXED | 入力データ形式が「固定長」、区切り文字が「区切り文字なし」の場合に指定します。 |
DELIMIT_FIXEDDELIMIT | 入力データ形式が「固定長」、区切り文字が「区切り文字あり」の場合に指定します。 |
DELIMIT_XML | 入力データ形式が「XML形式」の場合に指定します。 |
インタフェース com.fujitsu.systemwalker.outputassist.connector.FormBase から継承した文字コードを意味するフィールドについては、以下を参照してください。
FormsStreamクラスのコンストラクタを以下に示します。
コンストラクタの概要 |
---|
FormsStream(java.lang.String assets)(*1) 帳票格納ディレクトリを指定して、データを書き込むための出力ストリームを作成します。 |
*1:
ファイル名、ファイルの格納先の指定に関する注意事項については、以下を参照してください。
FormsStreamクラスのメソッドを以下に示します。
メソッドの分類 | メソッドの概要 | ||
---|---|---|---|
共 | void | setScriptFile(java.lang.String name)(*1) (*2) 1つの帳票出力時の帳票名を指定します。 | |
共 | void | 実行環境の文字コード系を指定します。 | |
共 | void | ストリームに渡すデータの文字コードを指定します。 | |
共 | void | setXmlDataRoot(java.lang.String xmlroot) 入力データ形式が「XML形式」で、XMLルートとデータルートが異なる場合に、XMLデータ中のデータルートの親要素のパスを指定します。 | |
共 | void | マルチフォーム出力するときに指定します。 | |
共 | void | setLcForm(java.lang.String names)(*1) (*2) マルチフォーム出力/組合せフォーム出力時の帳票名を指定します。 | |
共 | void | setGrpDelimitMode(int mode)(*1) マルチフォーム/組合せフォーム用帳票名データ区切り文字種別を指定します。 | |
共 | void | setGrpDelimit(java.lang.String delimit) マルチフォーム/組合せフォーム用帳票名データ区切り文字を指定します。 | |
共 | void | マルチフォーム用帳票名データフィールド長を指定します。 | |
共 | void | 組合せフォーム出力するときに指定します。 | |
共 | void | setCbFile(String cbfilename)(*2) 組合せフォーム定義ファイル名を指定します。 | |
共 | void | 指定されたバイト配列の b.length バイトを、この出力ストリームに書き込みます。 | |
共 | void | write(byte[] b, int off, int len) 指定されたバイト配列からのオフセット位置 off から始まる len バイトを、この出力ストリームに書き込みます。 | |
共 | void | 指定されたバイトデータを、出力ストリームに書き込みます。 | |
共 | void | 出力ストリームを閉じ、このストリームに関連するシステムリソースを解放します。 | |
共 | void | Javaインタフェースが使用している資源を解放します。 |
*1:
必須メソッドですが、出力する方法によって必須メソッドが異なります。以下に、1つの帳票を出力する場合、マルチフォーム出力する場合、または組合せフォーム出力する場合の必須メソッドの違いを示します。
‐1つの帳票を出力する場合
・setScriptFileメソッド
‐マルチフォーム出力する場合
・setGrpOutメソッド
・setLcFormメソッド
・setGrpDelimitModeメソッド
‐組合せフォーム出力する場合
・setCbFormメソッド
・setLcFormメソッド
・setGrpDelimitModeメソッド
ただし、ローカル出力する場合、setLcFormメソッドは指定する必要がありません。
リモート帳票出力時に帳票を転送しない場合、setLcFormメソッドは指定する必要がありません。
*2:
ファイル名、ファイルの格納先の指定に関する注意事項については、以下を参照してください。
|
帳票格納ディレクトリを指定して、データを書き込むための出力ストリームを作成します。
帳票格納ディレクトリをフルパスで指定します。
ConnectorException, IOException
帳票格納ディレクトリは、アプリケーションサーバの帳票格納ディレクトリを指定してください。リモート帳票出力またはコネクタ連携を行う、かつ帳票を転送しない場合、帳票出力サーバの帳票格納ディレクトリは、PrintPropertiesクラスのsetPropertyメソッドのID_REMOTEDIRECTORYキーで指定してください。
帳票格納ディレクトリ名を指定する場合、以下の注意事項があります。
|
1つの帳票出力時の帳票名を指定します。
1つの帳票を出力するときに使用する帳票名を指定します。
ConnectorException
1つの帳票を出力する場合(マルチフォーム出力、または組合せフォーム出力をしない場合)は、このメソッドを必ず指定してください。
|
実行環境の文字コード系を指定します。
詳細については、以下を参照してください。
ConnectorException
|
ストリームに渡すデータの文字コードを指定します。
ストリームに渡すデータの文字コードを指定します。
Shift-JIS
UNICODE(UTF16リトルエンディアン)
UNICODE(UTF16ビッグエンディアン)
UNICODE(UTF8)
EUC
UNICODE(UTF32 リトルエンディアン)
UNICODE(UTF32 ビッグエンディアン)
ConnectorException
ストリームに渡す入力データの文字コード系を、このメソッドのパラメータで指定します。
アプリケーションサーバがUNIX系OSで、入力データの文字コード系にEUC(「CODE_EUC」)を指定する場合は、setFileTypeメソッドで、必ずEUC種別(「CODE_EUC_U90」または「CODE_EUC_S90」)を指定してください。同様に、入力データの文字コード系にUNICODE(UTF8)(「CODE_UTF8」)を指定する場合は、setFileTypeメソッドで「CODE_UTF8」を指定してください。
入力データ形式が「XML形式」のデータファイルを使用して帳票出力を行う場合は、このメソッドで文字コード系を指定しても無効となります。
入力データ形式が「XML形式」のデータファイルを使用してOWFファイル生成を行う場合は、XMLファイル中のXML宣言で文字コード系を指定し、このメソッドの文字コード系には、Shift-JIS(「CODE_SJIS」)を指定してください。
Unicodeの文字が定義されている帳票定義情報を使用する場合、入力データの文字コード系はUNICODEのいずれかを指定してください。
英語環境(英語ロケール)で帳票出力する場合、入力データの文字コード系はUNICODEのいずれかを指定してください。
|
入力データ形式が「XML形式」で、XMLルートとデータルートが異なる場合に、XMLデータ中のデータルートの親要素のパスを指定します。
データルートの親要素のパスは、「スラッシュ(/)」を始点にデータルートの親要素までの要素名を「スラッシュ(/)」で区切って指定します。それ以外の形式は指定できません。
XMLデータ中のこのメソッドで指定したパス直下にデータルートが複数存在する場合は、すべてのデータルートを検索します。
このメソッドの呼び出しを省略すると、以下の優先順序で帳票のデータルートを検索します。
XMLルートとデータルートが同じ名前の場合、XMLルートをデータルートとみなします。
XMLルートとデータルートが異なる場合、XMLルート直下の子要素の中からデータルートを検索します。
XMLデータ中のデータルートの親要素のパスを指定します。
ConnectorException
|
マルチフォーム出力するときに指定します。
マルチフォーム出力するかどうかを指定します。
マルチフォーム出力しません。
マルチフォーム出力します。
ConnectorException
マルチフォーム出力する場合(setGrpOutメソッドに「GRPOUT_GRP」を指定した場合)、setLcFormメソッドで帳票名を必ず指定してください(OWFファイル生成時)。
マルチフォーム出力する場合(setGrpOutメソッドに「GRPOUT_GRP」を指定した場合)、setLcFormメソッドで帳票名を指定するか、PrintPropertiesクラスのsetPropertyメソッドのID_SENDRESOURCEキーで「NOSEND」を指定してください(リモート帳票出力時およびコネクタ連携時)。
|
マルチフォーム出力/組合せフォーム出力の帳票名を指定します。
アプリケーションサーバの帳票名を指定します。複数の帳票名を、「セミコロン(;)」で区切って指定します。
マルチフォーム出力する場合(setGrpOut メソッドに「GRPOUT_GRP」を指定した場合)、または組合せフォーム出力する場合(setCbFormメソッドに「true」を指定した場合)に、使用する帳票名を指定します。
帳票名は、「セミコロン(;)」で区切って複数指定します。
ConnectorException
このメソッドは、リモート帳票出力時、コネクタ連携時、および OWF ファイル生成時のみ有効です。
マルチフォーム出力する場合(setGrpOut メソッドに「GRPOUT_GRP」を指定した場合)、または組合せフォーム出力する場合(setCbFormメソッドに「true」を指定した場合)は、このメソッド で帳票名を必ず指定してください(OWFファイル生成時)。
マルチフォーム出力する場合(setGrpOut メソッドに「GRPOUT_GRP」を指定した場合)、または組合せフォーム出力する場合(setCbFormメソッドに「true」を指定した場合)は、このメソッド で帳票名を指定するか、PrintPropertiesクラスのsetPropertyメソッドのID_SENDRESOURCEキーで「NOSEND」を指定してください(リモート帳票出力時およびコネクタ連携時)。
|
マルチフォーム/組合せフォーム用帳票名データ区切り文字種別を指定します。
マルチフォーム/組合せフォーム用帳票名データ区切り文字種別を指定します。
以下の場合に指定します。
・入力データ形式が「可変長」、区切り文字が「バーティカルバー(|)」「シャープ(#)」「アスタリスク(*)」「任意」のいずれかの
場合
・入力データ形式が「CSV 形式」、区切り文字が「カンマ(,)」の場合
入力データ形式が「可変長」、区切り文字が「1 個以上の空白」の場合に指定します。
以下の場合に指定します。
・入力データが「可変長」、区切り文字が「タブ」の場合
・入力データが「CSV 形式」、区切り文字が「タブ」の場合
入力データ形式が「固定長」、区切り文字が「区切り文字なし」の場合に指定します。
入力データ形式が「固定長」、区切り文字が「区切り文字あり」の場合に指定します。
入力データ形式が「XML形式」の場合に指定します。
ConnectorException
マルチフォーム出力/組合せフォーム出力をする場合、このメソッドを必ず指定してください。
入力データ形式が「固定長」の場合(このメソッドで「DELIMIT_FIXED」または「DELIMIT_FIXEDDELIMIT」を指定した場合)は、帳票名データのフィールド長をsetGrpBytesメソッドで必ず指定してください。
表にある条件でマルチフォーム/組合せフォーム用帳票名データ区切り文字に「任意の1バイト文字」または「区切り文字あり」を指定する場合の、区切り文字の文字コードについて以下に示します。
帳票出力サーバ | 入力データの文字コード系 | 入力データ形式 | マルチフォーム/組合せフォーム用帳票名データ区切り文字の文字コード |
---|---|---|---|
Windows | Unicode | 可変長 | 0x007F/0x7F以下の文字 |
固定長 | |||
UNIX系OS | EUC(U90/S90)またはUNICODE(UTF8) | 可変長 | 0x7F以下の文字 |
固定長 |
|
マルチフォーム出力する場合(setGrpOut メソッドに「GRPOUT_GRP」を指定した場合)、または組合せフォーム出力する場合(setCbFormメソッドに「true」を指定した場合)で、任意の区切り文字を使用する場合(setGrpDelimitModeで「DELIMIT_ANY」を指定した場合)に、実際に使用する区切り文字を指定します。
区切り文字は、データ定義画面の[環境定義]タブで指定した入力データ形式と区切り文字にしたがって指定します。
マルチフォーム/組合せフォーム用帳票名データ区切り文字を1 バイトの文字列で指定します。
ConnectorException
入力データの文字コード系がUnicodeの場合、文字コードが0x007F/0x7F以下の文字を指定してください。
組合せフォーム出力する場合、「コロン(:)」は指定しないでください。
|
マルチフォーム出力する場合(setGrpOutメソッドに「GRPOUT_GRP」を指定した場合)に、データファイル中の帳票名データのフィールド長を指定します。
入力データ形式が「固定長」の場合(setGrpDelimitModeメソッドに「DELIMIT_FIXED」または「DELIMIT_FIXEDDELIMIT」を指定した場合)は、このメソッドを必ず指定してください。区切り文字ありの場合は、区切り文字を含まない長さを指定してください。
マルチフォーム用帳票名データフィールド長を指定します。
ConnectorException
|
組合せフォーム出力するときに指定します。
このメソッドの呼び出しを省略すると、組合せフォーム出力は行われません。
組合せフォーム出力するかどうかを指定します。
組合せフォーム出力しません。
組合せフォーム出力します。
ConnectorException
組合せフォーム出力する場合は、setGrpDelimitModeメソッド、およびsetGrpDelimitメソッドで帳票名データ区切り文字を指定してください。
OWFファイル生成時に組合せフォーム出力する場合は、setLcFormメソッドで帳票名を必ず指定してください。
リモート帳票出力またはコネクタ連携時に組合せフォーム出力する場合は、setLcFormメソッドで帳票名を指定するか、PrintProperties クラスのsetProperty メソッドのID_SENDRESOURCE キーで「NOSEND」を指定してください。
|
組合せフォーム定義ファイル名を指定します。
組合せフォーム定義ファイルとは、組み合わせて出力する帳票定義情報と、帳票定義情報の重なり順などが定義されたファイルです。
このメソッドの呼び出しを省略すると、帳票格納ディレクトリ配下の組合せフォーム定義ファイル(Lccbform.ini)が有効になります。
組合せフォーム定義ファイル名をフルパスで指定します。
ConnectorException
組合せフォーム定義ファイルの文字コード系については、オンラインマニュアル"帳票設計編"を参照してください。
以下の場合、このメソッドにファイル名のみ指定してください。
リモート帳票出力時に組合せフォーム定義ファイルを転送した場合
コネクタ連携時に組合せフォーム定義ファイルを転送した場合
ファイル名、ファイルの格納先の指定に関する注意事項については、以下を参照してください。
|
指定されたバイト配列を、この出力ストリームに書き込みます。
書き込まれるデータ
IOException
|
指定されたバイト配列からのオフセット位置offから始まるlenバイトを、この出力ストリームに書き込みます。
データ
データの開始オフセット
書き込むバイト数
IOException
|
指定されたバイトデータを、出力ストリームに書き込みます。OutputStreamのwriteメソッドを実装します。
バイト
IOException
|
出力ストリームを閉じ、このストリームに関連するシステムリソースを解放します。以降は、この出力ストリームをバイトの書き込みに使用することはできません。
IOException
帳票出力を行う前に、このメソッドを必ず呼び出してください。
|
Javaインタフェースが使用している資源を解放します。
ConnectorException
オブジェクトを破棄する前に、このメソッドを必ず呼び出してください。
帳票出力を行う前に、出力ストリームは必ず 閉じてください。
閉じずに帳票出力を行うと、例外ConnectorException(エラーコード「 OAJC_ERROR_PRINTOUT」)が発生し、イベントログまたはシステムログにメッセージ ”[%1][%2]データファイル<%3>の読込みに失敗しました。データファイル名を確認してください。”が通知されます。
また、閉じずにOWFファイル生成を行うと、例外 ConnectorException(エラーコード「 OAJC_ERROR_OWFEXCEPTION」)が発生し、詳細情報として例外OwfException(エラーコード「OWF_ERROR_ACCESS_DENIED」)が通知されます。
List Creatorが帳票出力時に使用する文字コードについては、以下を参照してください。
ファイル名、ファイルの格納先の指定に関する注意事項については、以下を参照してください。