jvSetSection(セクション指定)
描画するセクションを指定します。
[構文]
Function jvSetSection(ByVal jid As Long, ByVal sectionName As String) As Long
C言語
int jvSetForm(int jid, char *sectionName);
JAVA
int jvSetForm(int jid, String sectionName);
Delphi
Function jvSetForm(jid: Longint; sectionName: PAnsiChar):
Longint;
設定項目 |
内容 |
jid |
jvCreateで取得したジョブID |
sectionName |
セクション名称 |
リターンコード
定数 |
値 |
内容 |
|
0 |
正常終了 |
JV_ERR_PARAMETER |
-2 |
パラメータエラー |
JV_ERR_JOBID |
-3 |
ジョブIDエラー |
JV_ERR_MEMORY |
-4 |
メモリ関連エラー |
JV_ERR_OPEN_FILE |
-42 |
ファイルオープンエラー |
JV_ERR_READ_FILE |
-43 |
ファイルリードエラー |
JV_ERR_SECTIONKEY |
-126 |
セクションキー指定エラー |
JV_ERR_OUTOFRANGE |
-127 |
描画領域を超えるため指定不可 |
[解説]
jvSetSection は可変フォーム用のファンクションです。固定フォームでは使用できません。
jvSetSection がコールされると jvSetFieldText
などで設定したフィールドデータはクリアされます。
sectionName
で指定したセクションが、残りの描画領域に入らない場合には、「JV_ERR_OUTOFRANGE(-127)」が発生します。このエラーが発生した時には、セクションを変更するか、または、改ページを行います。
描画領域のサイズや現在の描画位置(座標)を取得するには、jvGetLong
を使います。
[コーディング例]
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, "納品書", "")
ret = jvSetSection(jid,
"ヘッダー")
ret = jvDrawSection(jid, JV_FORM_FIELD)
for i=1 to 20
ret = jvSetSection(jid,
"明細1")
|
ret = jvDrawSection(jid, JV_FORM_FIELD)
next i
ret = jvSetSection(jid,
"フッター")
ret
= jvDrawSection(jid, JV_FORM_FIELD)
ret = jvEndPage(jid)
ret = jvEndDoc(jid)
ret = jvClose(jid)