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)