jvSetFieldGrid(グリッドフィールドデータ設定)
グリッドフィールドに1行分のデータを設定します。
[構文]
Function jvSetFieldGrid(ByVal jid As Long, ByVal fieldName As String, ByVal row As Long, ByVal text As String) As Long
C言語
int jvSetFieldGrid(int jid, char *fieldName, int row, char *text);
JAVA
int jvSetFieldGrid(int jid, String fieldName, int row, String text);
Delphi
Function jvSetFieldGrid(jid: Longint; fieldName: PAnsiChar; row: Longint; text: PAnsiChar): Longint;
設定項目 |
内容 |
jid |
jvCreateで取得したジョブID |
fieldName |
フィールド名称 |
row
|
データを設定する行番号 |
text
|
描画するデータ |
リターンコード
定数 |
値 |
内容 |
|
0 |
正常終了 |
JV_ERR_JOBID |
-3 |
ジョブIDエラー |
JV_ERR_PARAMETER |
-2 |
パラメータエラー |
JV_ERR_MEMORY |
-4 |
メモリ関連エラー |
JV_ERR_FIELD_OVERFLOW |
-72 |
フィールドオーバーフロー |
JV_ERR_FIELD_FORMAT |
-71 |
編集子が不正 |
JV_ERR_FIELD_NAME |
-70 |
指定されたフィールドが存在しない |
[解説]
jvSetFieldGridは、データを設定する行数分コールします。jvSetFieldGridは、jvStartDocからjvEndDocまでの間でコールします。
text
には、列データと列データの間を区切り記号で区切った1行分の文字列を設定します。区切り記号はjvSetStringで任意の文字に変更することができます。区切り記号の初期値はカンマです。
編集子の桁数を超える文字列を渡した場合は、オーバーフローとなります。オーバーフロー時の処理は、列の編集子が文字型の場合にはjvSetLong、数値型の場合にはjvSetStringで設定することができます。
描画文字列には、外字を使用することができます。描画文字列にUNICODEが含まれる場合は、jvSetFieldGridWを使います。
−外字の描画
−フィールド編集子
[コーディング例]
Dim jid&, ret&
jid = jvCreate(JV_PRINTER, form1.hWnd, Printer.hDC,
0, 0, 0, "")
ret = jvSetForm(jid, "c:\JiveReport\販売計画表.jfm",
1, "", 100, 0, 0)
ret = jvStartDoc(jid, "販売計画表", "")
for I=1 to 10
ret = jvSetFieldGrid(jid, "field1", I,
"No." & CStr(I) & ",100,200,150,60,70")
Next I
|
ret = jvDrawForm(jid, JV_FORM_FIELD)
ret = jvEndPage(jid)
ret = jvEndDoc(jid)
ret = jvClose(jid)