jvGetFormString(文字型フォーム情報取得)
各種の文字列型フォーム情報を取得します。
[構文]
Function jvGetFormString(ByVal jid As Long, ByVal mode As Long, ByVal bufLen As Long, ByVal rval As String)As Long
C言語
int jvGetFormString(int jid, int mode, int bufLen, char *rval);
JAVA
int jvGetFormString(int jid, int mode, int bufLen, StringBuffer rval);
Delphi
Function jvGetFormString(jid, mode, bufLen: Longint; rval: PAnsiChar): Longint;
設定項目 |
内容 |
jid
|
jvCreateで取得したジョブID |
mode |
プロパティの種類(設定値参照) |
bufLen |
情報取得バッファ(rval
)のサイズ |
rval |
情報を取得するバッファ |
リターンコード
|
値 |
内容 |
|
1以上 |
情報取得に必要なバッファのサイズ |
|
0 |
正常終了 |
JV_ERR_JOBID |
-3 |
ジョブ識別番号エラー |
JV_ERR_PARAMETER |
-2 |
パラメータエラー |
JV_ERR_MEMORY |
-4 |
メモリ関連エラー |
[設定値]
mode
には次の値を設定します。
定数 |
値 |
内容 |
JV_FORM_QUERY |
5 |
フォームファイル情報で設定したクエリー |
JV_FIELD_INFO |
6 |
フィールド情報の取得 |
[解説]
jvSetForm 実行後にコールしてください。
rval
は、取得する情報に応じたサイズを確保してください。取得した値の最後にNULL文字が入るため、必要サイズ+1バイト分の領域が必要です。
bufLen
に0を指定すると、取得に必要なバッファサイズが返ります。 JAVAの場合には、bufLen は無視されます。
フィールド情報の取得(JV_FIELD_INFO)
取得する項目と並び順は次の通りです。項目間はタブで区切られます。
1.フィールドの種類
2.フィールド名称
3.テキストフィールドの編集子
グリッドフィールドの列数
バーコードフィールドのバーコードの種類
4.グリッドフィールドのみ 行数
5.グリッドフィールドのみ 編集子
例)
TEXT |
顧客名 |
&&&&&&&&&&
|
|
|
|
GRID |
明細 |
COLUMN=2 |
ROW=32 |
### |
&&&&&&
|
BARCODE |
バーコード1 |
JAN13 |
|
|
|
IMAGE |
イメージ1 |
|
|
|
|
GRAPH |
3Dグラフ |
|
|
|
|
[コーディング例]
Dim jid&, ret&, PrintJobId&, rval$
jid = jvCreate(JV_WINDOW, form1.hWnd, Printer.hDC,
form1.hDC, 0, 0, "")
ret = jvSetForm(jid, "c:\JiveReport\納品書.jfm",
1,"", 100, 0, 0)
bufLen = jvGetFormString(jid, JV_FORM_QUERY, 0, rval)
If bufLen > 0 Then
'取得用バッファを確保し、再度実行する
rval= Space(bufLen )
ret=jvGetFormString(jid, JV_FORM_QUERY,bufLen,rval)
Else
MsgBox "jvGetFormStringError " + CStr(ret)
End If
:
:
: