Saltar para o conteúdo principal
Versão: 20 R7 BETA

FORM SET INPUT

FORM SET INPUT ( {tabela ;} formulario {; formUsuario {; *}} )

ParâmetroTipoDescrição
tabelaTableTabela para a qual vai estabecer o formulário input, ou tabela Padrão, se omitido
formularioText, ObjectNome do formulário para estabelecer um formulário input
formUsuarioTextNome do formulário usuário para utilizar
*OperatorTamanho da janela automático

Esse comando não é seguro para thread e não pode ser usado em código adequado.

Descrição

O comando FORM SET INPUT define o formulario de entrada atual de tabela para form ou userForm. O formulario deve pertencer a tabela.

O parâmetro formulário é o formulário que será exibido. Passe:

o nome de um formulário;
a rota (em sintaxe POSIX) para um arquivo json válido contendo uma descrição doe formulário a usar. Veja Form file path;
um objeto que contenha a descrição do formulário.

O alcance de este comando é o processo atual. Cada tabela tem seu próprio formulario de entrada em cada processo.

Nota: por razões estruturais, este comando não é compatível com formulários de projetos. Se passar um formulário de projeto em form, o comando não faz nada.

FORM SET INPUT não mostra o formulario; só atribui qual formulário é utilizado para a entrada de dados, importação, ou operação por outro comando. Para maior informação sobre a criação de formulários, consulte o .

O formulário de entrada por padrão para cada tabela é definido na janela do Explorador. Este formulário de entrada padrão é utilizado se o comando FORM SET INPUT não é utilizado para especificar um formulario de entrada, ou se especifica um formulário que não existe.

O parâmetro opcional formUsuario lhe permite especificar um formulário usuário (proveniente de form) como formulário de entrada padrão. Se passa um nome de formulário usuário correto, este formulário será utilizado automaticamente em lugar do formulário de entrada no processo atual. Isto lhe permite ter simultâneamente diferentes formulários usuários personalizados (gerados utilizando o comando CREATE USER FORM) e utilizar aquele que seja conveniente em função do contexto.

Para maior informação sobre formulários de usuário, consulte a seção .

Os formulários de entrada são mostrados por numerosos comandos, os quais geralmente são utilizados para permitir ao usuário introduzir novos dados ou modificar dados antigos. Os sguintes comandos mostram um formulário de entrada para entrada de dados ou pesquisas:

Os comandos DISPLAY SELECTION e MODIFY SELECTION mostram uma lista de registros utilizando o formulário de saída. O usuário pode realizar duplo clique em um registro na lista e é mostrado o formulário de entrada.

Os comandos de importação IMPORT TEXT, IMPORT SYLK e IMPORT DIF utilizam o formulário de entrada atual para importar registros.

O parâmetro opcional * é utilizado em conjunto com as propriedades do formulário que definiu na janela de propriedades do formulário do ambiente Desenho e o comando Open window. Ao especificar o parâmetro * lhe indica a 4D que utilize as propriedades do formulário para redimensionar automaticamente a janela para o uso do formulário a seguir (como um formulário de entrada ou como uma caixa de diálogo). Ver maior informação em Open window.

Nota: passe ou não o parâmetro opcional * ou não, FORM SET INPUT muda o formulario de entrada para a tabela.

Exemplo 1

O exemplo a seguir mostra um uso típico de FORM SET INPUT:

 FORM SET INPUT([Empresas];"Nova empresa") // Formulário para adicionar novas empresas
 ADD RECORD([Empresas]) // Adicionar uma nova empresa

Exemplo 2

Em um banco de faturação que administre várias empresas, a criação de uma fatura deve ser efetuada utilizando o formulário usuário correspondente:

 Case of
    :(empresa="4D SAS")
       FORM SET INPUT([Faturas];"Entrada";"4D_SAS")
    :(empresa="4D Inc")
       FORM SET INPUT([Faturas];"Entrada";"4D_Inc")
    :(empresa="Acme")
       FORM SET INPUT([Faturas];"Entrada";"ACME")
 End case
 ADD RECORD([Faturas])

Exemplo 3

Os exemplos abaixo usam a rota a um formulário json para entrar os registros em uma lista de empregados:

 FORM SET INPUT([Personnel];"/RESOURCES/PersonnelForm.json")
 ADD RECORD([Personnel])

o que retorna:

Ver também

_o_CREATE USER FORM
ADD RECORD
DISPLAY RECORD
DISPLAY SELECTION
FORM SET OUTPUT
IMPORT DIF
IMPORT SYLK
IMPORT TEXT
MODIFY RECORD
MODIFY SELECTION
Open window
QUERY BY EXAMPLE