4D View v16PV ON COMMAND |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D View v16
PV ON COMMAND
|
PV ON COMMAND ( area ; command ; method ) | ||||||||
引数 | 型 | 説明 | ||||||
area | 倍長整数 |
![]() |
4D View エリア | |||||
command | 倍長整数 |
![]() |
コマンド番号 | |||||
method | 文字 |
![]() |
4D メソッド名 | |||||
PV ON COMMANDコマンドは、4D View メニューのcommand を4D のmethodに関連付けます。
引数command の指定には、PV Commandsテーマの定数を使用します。
method は3 つの引数を受け取ります:
$1: 4D View エリアの参照番号
$2: メニューコマンド番号
$3: モディファイアキー
コマンドに関連付けたメソッド呼び出しを削除するには、method引数に空の文字列を渡してPV ON COMMANDコマンドを呼び出します。
例えば、データベースにおいて、組み込まれた4D View エリアを呼び出すプリントジョブをすべてトレースする場合について考えてみましょう。この対策案として、いくつかのコードを以下に示します:
If(PV Get on command method(area;pv cmd file print document)#"PrintMethod")
`レコード印刷フォーミュラのトレース
PV ON COMMAND(area;pv cmd file print document;"PrintMethod")
End if
If(PV Get on command method(area;pv cmd file print formulas)#"PrintMethod")
`標準のレコード印刷のトレース
PV ON COMMAND(area;pv cmd file print formulas;"PrintMethod")
End if
PrintMethodメソッドのコードは以下の通りです:
`メソッド: PrintMethod.
C_LONGINT($1) `4D Viewエリア参照
C_LONGINT($2) `メニューコマンド番号
C_LONGINT($3) `モディファイアキーコード
Case of
:($2=pv cmd file print formulas)
CREATE RECORD([PrintSpy]) `新規レコード
[PrintSpy]CurUser:=Current user `プリントジョブを要求したのはだれか?
[PrintSpy]Dte:=Current date(*) `印刷日
[PrintSpy]Tme:=Current time `印刷時刻
[PrintSpy]Subject:="Print area formulas"
SAVE RECORD([PrintSpy]) `作成したレコードを保存
:($2=pv cmd file print document) `これはプリントリクエストか?
CREATE RECORD([PrintSpy]) `新規レコード
[PrintSpy]CurUser:=Current user `プリントジョブを要求したのはだれか?
[PrintSpy]Dte:=Current date(*) `印刷日
[PrintSpy]Tme:=Current time `印刷時刻
[PrintSpy]Subject:="Standard area print"
SAVE RECORD([PrintSpy]) `作成したレコードを保存
Else
TRACE `その他のケース?
End case
プロダクト: 4D View
テーマ: PVエリア
番号:
15992
初出: 4D View 6.8
4D View ( 4D View v16)