Compartir por


EditForm, NewForm, SubmitFormResetForm, e ViewForm funcións

Aplícase a: aplicacións Canvas

Visualice, edite ou cree un elemento, garde o contido e restableza os controis nun control de Editar formulario.

Visión xeral

Estas funcións cambian o estado do control Editar formulario. O control do formulario pode estar nun destes modos:

Modo Descripción
FormMode.Editar O formulario énchese cun rexistro existente e o usuario pode modificar os valores dos campos. Unha vez completado, o usuario pode gardar os cambios no rexistro.
FormMode.Novo O formulario énchese de valores predeterminados e o usuario pode modificar os valores dos campos. Unha vez completado, o usuario pode engadir o rexistro á orixe de datos.
FormMode.View O formulario énchese cun rexistro existente pero o usuario non pode modificar os valores dos campos.

Descripción

Estas funcións invócanse a miúdo desde a fórmula de Button ou Imaxe OnSelect control para que o usuario poida gardar edicións, abandonalas ou crear un rexistro. Pode usar os controis e estas funcións xuntos para crear unha solución completa.

Estas funcións non devolven ningún valor.

Só pode usar estas funcións en fórmulas de comportamento.

SubmitForm

Use a SubmitForm función na propiedade OnSelect dun control Button para gardar os cambios nun control Form na fonte de datos.

Antes de enviar cambios, esta función verifica problemas de validación con calquera campo marcado como obrigatorio ou que teña unha ou varias restricións no seu valor. Este comportamento coincide co da función Validate.

SubmitForm tamén comproba a propiedade Valid do formulario, que é unha agregación de todas as propiedades válidas dos controis de tarxeta que contén o control Formulario. Se se produce un problema, os datos non se envían e as propiedades Erro e ErrorKind do control do formulario establécense de xeito correspondente.

Se a validación pasa, SubmitForm envía o cambio á fonte de datos.

  • Se ten éxito, execútase o comportamento OnSuccess do formulario e o Error e ErrorKind as propiedades están limpas. Se o formulario estivo no modo FormMode.New, volverá ao modo FormMode.Edit.
  • Se non ten éxito, execútase o comportamento OnFailure do formulario e o Error e ErrorKind as propiedades establécense en consecuencia. O modo do formulario non cambia.

EditForm

A EditForm función cambia o modo do control Form a FormMode.Edit. Neste modo, o contido da propiedade Item do control do formulario úsase para encher o formulario. Se a SubmitForm función se executa cando o formulario está neste modo, cambia un rexistro, non se crea. FormMode.Edit é o predeterminado para o control Formulario.

Nota

Cando o formulario está en modo de edición e Item é nulo, as propiedades de datos cartón non se avalían e devolverán os valores predeterminados.

NewForm

A NewForm función cambia o modo do control Form a FormMode.New. Neste modo, o contido da propiedade Item do control do formulario ignórase e os valores por defecto da propiedade DataSource do formulario enchen o formulario. Se a SubmitForm función se executa cando o formulario está neste modo, créase un rexistro, non cambia.

ResetForm

A ResetForm función restablece o contido dun formulario aos seus valores iniciais, antes de que o usuario realice calquera cambio. Se o formulario está no modo FormMode.New, restablecerase o formulario ao modo FormMode.Edit. O comportamento OnReset do control do formulario tamén se executa. Tamén pode restablecer controis individuais coa función Reset pero só desde dentro do formulario.

ViewForm

A ViewForm función cambia o modo do control Form a FormMode.View. Neste modo, o contido da propiedade Item do control do formulario úsase para encher o formulario. As SubmitForm funcións e ResetForm non teñen efecto cando están neste modo.

Propiedade DisplayMode

O modo actual pódese ler a través da propiedade Mode. O modo tamén determina o valor da propiedade DisplayMode, que poden empregar tarxetas de datos e controis dentro do control de formulario. Moitas veces, a propiedade DisplayMode da tarxeta de datos establecerase en Parent.DisplayMode (facendo referencia ao formulario) como o fará a propiedade DisplayMode do control (facendo referencia á tarxeta de datos):

Modo DisplayMode Descripción
FormMode.Editar DisplayMode.Editar As tarxetas de datos e os controis son editables e están listos para aceptar cambios nun rexistro.
FormMode.Novo DisplayMode.Editar As tarxetas de datos e os controis son editables e están listos para aceptar un rexistro novo.
FormMode.View DisplayMode.View As tarxetas de datos e os controis non son editables e están optimizados para a súa visualización.

Sintaxe

SubmitForm( Nome do formulario )

  • FormName : é necesario. Control do formulario para enviar á orixe de datos.

EditForm( Nome do formulario )

  • FormName : é necesario. Control do formulario para cambiar ao modo FormMode.Edit.

NewForm( Nome do formulario )

  • FormName : é necesario. Control do formulario para cambiar ao modo FormMode.New.

ResetForm( Nome do formulario )

  • FormName : é necesario. Control do formulario para restablecer os valores iniciais. Tamén cambia o formulario do modo FormMode.New ao modo FormMode.Edit.

ViewForm( Nome do formulario )

  • FormName : é necesario. Control do formulario para cambiar ao modo FormMode.View.

Exemplos

Consulte Comprender os formularios de datos para obter exemplos completos.

  1. Engada un control Botón, configure a súa propiedade Text para amosar Gardar e estableza a súa propiedade OnSelect nesta fórmula.

    SubmitForm( EditForm )

  2. Estableza a propiedade OnFailure dun control de formulario en branco e a súa propiedade OnSuccess nesta fórmula:

    Atrás()

  3. Asigne a un control de Etiqueta o nome ErrorText e configure a súa propiedade de Text nesta fórmula:

    EditForm. Erro

    Cando o usuario seleccione o botón Gardar, calquera cambio no control de Formulario envíase á orixe de datos subxacente.

    • Se o envío se fai correctamente, gárdanse os cambios ou, se o control de formulario está en modo Novo, créase un rexistro. ErrorText está en branco e volve aparecer a pantalla anterior.
    • Se o envío falla, ErrorText mostra unha mensaxe de erro sinxela e a pantalla actual permanece visible para que o usuario poida corrixir o problema e tentalo de novo.
  4. Engada un control Botón, configure a súa propiedade Text para amosar Cancelar e estableza a súa propiedade OnSelect nesta fórmula.

    ResetForm( EditForm ); Atrás ()

    Cando o usuario seleccione o botón Cancelar, os valores do control de Formulario restableceranse aos anteriores a que o usuario empezase a editalos, volve aparecer a pantalla anterior e o control do formulario volve ao modo Editar se estaba en modo Novo.

  5. Engada un control Botón, configure a súa propiedade Text para amosar Novo e estableza a súa propiedade OnSelect nesta fórmula.

    NewForm( EditForm ); Navigate( EditScreen, None )

    Cando o usuario seleccione o botón Novo, o control Formulario cambiará ao modo Novo, os valores predeterminados da orixe de datos do control do formulario enchen ese control e aparece a pantalla que contén o control Formulario. Cando se executa a SubmitForm función, créase un rexistro en lugar de actualizarse.