4D View v14PV ON COMMAND |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D View v14
PV ON COMMAND
|
PV ON COMMAND ( area ; comando ; metodo ) | ||||||||
Parâmetro | Tipo | Descrição | ||||||
area | Inteiro longo |
![]() |
Área 4D View | |||||
comando | Inteiro longo |
![]() |
Número de comando | |||||
metodo | cadeia |
![]() |
Nome do método 4D | |||||
O comando PV ON COMMAND associa o comando de menu 4D View comando a um metodo 4D.
As constantes do tema PV Comandos se utilizam para definir o parâmetro comando.
O metodo recebe 3 parâmetros:
$1: A referencia da área 4D View
$2: O número do comando de menu
$3: O código da tecla de modificação
Para desinstalar o método de chamada ao comando, simplesmente execute o comando PV ON COMMAND com uma cadeia vazia no terceiro parâmetro.
Tome, por exemplo, uma base onde toda impressão chama uma area 4D View que deve ser registrada em um diário de impressão. A solução proposta se escreve em várias linhas:
If(PV Get on command method(area;pv cmd file print document)#"PrintMethod")
`Registro do seguimento da impressão das fórmulas
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")
`Registro do seguimento da impressão padrão
PV ON COMMAND(area;pv cmd file print formulas;"PrintMethod")
End if
O código do método MetododeImpressao é o seguinte:
`Método: MetododeImpressao.
C_LONGINT($1) `Referencia da área 4D View
C_LONGINT($2) `Número de comando de menu
C_LONGINT($3) `Código da tecla de modificação
Case of
:($2=pv cmd file print formulas)
CREATE RECORD([PrintSpy]) `Novo registro
[PrintSpy]CurUser:=Current user `Quem solicitou a impressão?
[PrintSpy]Dte:=Current date(*) `Data da impressão
[PrintSpy]Tme:=Current time `Hora da impressão
[PrintSpy]Subject:=Print area formulas
SAVE RECORD([PrintSpy]) `Não esqueça validar a criação
:($2=pv cmd file print document) `Esta é uma solicitação de impressão?
CREATE RECORD([PrintSpy]) `Novo registro
[PrintSpy]CurUser:=Current user `Quem solicita a impressão?
[PrintSpy]Dte:=Current date(*) `Data da impressão
[PrintSpy]Tme:=Current time `Hora da impressão
[PrintSpy]Subject:="Standard area print"
SAVE RECORD([PrintSpy]) `Não esqueça validar a criação
Else
TRACE `Outros casos?
End case
Produto: 4D View
Tema: PV Área
Número
15992
Criado por: 4D View 6.8
4D View Linguagem ( 4D View v11.4)
4D View Linguagem ( 4D View v12)
4D View Linguagem ( 4D v13)
4D View Linguagem ( 4D View v14 R2)
4D View Linguagem ( 4D View v14)
4D View Linguagem ( 4D View v14 R3)
4D View Linguagem ( 4D View v14 R4)