Edite ou crie um item, salve o conteúdo e redefina os controles em um controle Editar formulário.

Descrição

Geralmente essas funções são invocadas com a fórmula OnSelect de um controle botão ou imagem, para que os usuários possam salvar edições, abandonar edições ou criar um registro. Você pode usar controles e essas funções juntas para criar uma solução completa.

Essas funções não retornam valores.

SubmitForm

Use a função SubmitForm na propriedade OnSelect de um controle de botão para salvar quaisquer alterações feitas em um controle Formulário da fonte de dados.

Antes de enviar qualquer alteração, essa função verifica problemas de validação em todos os campos marcados como obrigatórios ou que têm uma ou mais restrições em seus valores. Essa comportamento corresponde ao da função Validate.

A função SubmitForm também verifica a propriedade Valid do formulário, que é uma agregação de todas as propriedades Valid dos controles de cartão que o controle Formulário inclui. Se um problema ocorrer, os dados não serão enviados, e as propriedades Error e ErrorKind do controle Formulário serão definidas de acordo.

Se a validação for aprovada, a função SubmitForm enviará a alteração para a fonte de dados.

  • Se a operação for bem-sucedida, o comportamento OnSuccess do formulário será executado, e as propriedades Error e ErrorKind serão apagadas. Se o formulário estiver no modo FormMode.New, ele será retornado no modo FormMode.Edit.
  • Se a operação não for bem-sucedida, o comportamento OnFailure do formulário será executado, e as propriedades Error e ErrorKind serão definidas de acordo. O modo do formulário não é alterado.

EditForm

A função EditForm altera o modo do controle Formulário para FormMode.Edit. Nesse modo, o conteúdo da propriedade Item do controle do formulário é usado para preencher o formulário. Se a função SubmitForm for executada quando o formulário estiver nesse modo, um registro será alterado, não criado. FormMode.Edit é o padrão para o controle Formulário.

NewForm

A função NewForm altera o modo do controle Formulário para FormMode.New. Nesse modo, o conteúdo da propriedade Item do controle Formulário é ignorado, e os valores padrão da propriedade DataSource do formulário preenchem o formulário. Se a função SubmitForm for executada quando o formulário estiver nesse modo, um registro será criado, não alterado.

ResetForm

A função ResetForm redefine o conteúdo de um formulário para seus valores iniciais, presentes antes de o usuário fazer alterações. Se o formulário estiver no modo FormMode.New, ele será redefinido para o modo FormMode.Edit. O comportamento OnReset do controle Formulário também é executado.

Sintaxe

SubmitForm( FormName )

  • FormName - Obrigatório. O controle Formulário a ser enviado para a fonte de dados.

EditForm( FormName )

  • FormName - Obrigatório. O controle Formulário para alternar para o modo FormMode.Edit.

NewForm( FormName )

  • FormName - Obrigatório. O controle Formulário para alternar para o modo FormMode.New.

ResetForm( FormName )

  • FormName - Obrigatório. O controle Formulário para redefinir o formulário para seus valores iniciais. Também muda o formulário do modo FormMode.New para o modo FormMode.Edit.

Exemplos

Consulte Entender os formulários de dados para obter exemplos completos.

  1. Adicione um controle de botão, defina sua propriedade Text para mostrar Salvar e defina sua propriedade OnSelect com esta fórmula:

    SubmitForm( EditForm )

  2. Defina a propriedade OnFailure de um controle Formulário para ficar em branco e sua propriedade OnSuccess com esta fórmula:

    Back()

  3. Nomeie um controle Rótulo ErrorText e defina sua propriedade Text com esta fórmula:

    EditForm.Error

    Quando o usuário seleciona o botão Salvar, qualquer alteração no controle Formulário será enviada à fonte de dados subjacente.

    • Se o envio for bem-sucedido, todas as alterações serão salvas ou, se o controle Formulário estiver no modo New, um registro será criado. ErrorText está definida como blank, e a tela anterior é re-exibida.
    • Se o envio falhar, ErrorText mostra uma mensagem de erro amigável e a tela atual permanece visível para que o usuário possa corrigir o problema e tente novamente.
  4. Adicione um controle Botão, defina sua propriedade Text para mostrar Cancelar e defina sua propriedade OnSelect com a seguinte fórmula:

    ResetForm( EditForm1 ); Back()

    Quando o usuário selecionar o botão Cancelar, os valores no controle Formulário serão redefinidos para os valores definidos antes de o usuário iniciar a edição, a tela anterior será exibida novamente e o controle Formulário voltará para o modo Edit, caso ele esteja no modo New.

  5. Adicione um controle de botão, defina sua propriedade Text para mostrar Novo e defina sua propriedade OnSelect com esta fórmula:

    NewForm( EditForm ); Navigate( EditScreen, None )

    Quando o usuário selecionar o botão New, o controle Formulário mudará para o modo New, os valores padrão da fonte de dados do controle Formulário preencherão esse controle, e a tela que apresenta o controle Formulário será exibida. Quando a função SubmitForm é executada, um registro é criado, em vez de atualizado.