Споделяне чрез


Функции EditForm, NewForm, SubmitForm, ResetForm и ViewForm

Отнася се за: Приложения за платно

Преглед, редактиране или създаване на елемент, запазване на съдържанието и нулиране на контролите в Редактиране на формуляр контрола.

Преглед

Тези функции променят състоянието на контролата Редактиране на формуляр. Контролата на формуляра може да бъде в един от следните режими:

Режим Описание
FormMode.Редактиране Формата се попълва със съществуващ запис и потребителят може да променя стойностите на полетата. След като завърши, потребителят може да запише промените в записа.
FormMode.New Формулярът се попълва със стойности по подразбиране и потребителят може да променя стойностите на полетата. След като завърши, потребителят може да добави записа към източника на данни.
FormMode.View Формата се попълва със съществуващ запис, но потребителят не може да променя стойностите на полетата.

Описание

Тези функции често се извикват от формулата OnSelect на ... бутон или контрола Изображение , така че потребителят да може да записва редакции, да изоставя редакции или да създава запис. Можете да използвайте контролите и тези функции заедно, за да създадете цялостно решение.

Тези функции не връщат никакви стойности.

Можете да използвате тези функции само във формули на поведение.

SubmitForm

Използвайте функцията SubmitForm в свойството OnSelect на контрола на бутон, за да запише всички промени в контрола на формуляр към източник на данни.

Преди да изпратите каквито и да било промени, тази функция проверява за проблеми с валидирането с всяко поле, което е маркирано като необходимо или има едно или повече ограничения на стойността му. Това поведение съответства на това на функцията Validate.

SubmitForm също така проверява свойството Valid на формуляра, което е агрегиране на всички валидни свойства на контролите на Карта , които контролата Form съдържа. Ако възникне проблем, данните не се предават и свойствата грешка и ErrorKind на контрола за формуляр се задават съответно.

Ако валидирането премине, SubmitForm изпраща промяната на източник на данни.

  • Ако е успешно, поведението OnSuccess на формуляра се изпълнява и свойствата Error и ErrorKind се изчистват. Ако формулярът е бил в режим FormMode.New, той е върнат към режим FormMode.Edit.
  • Ако е неуспешно, поведението OnFailure на формуляра се изпълнява и свойствата Error и ErrorKind се задават съответно. Режимът на формата е непроменен.

EditForm

Функцията EditForm променя режима на контрола на формуляра на FormMode.Edit. В този режим съдържанието на свойството Елемент на контролата на формуляр се използват за попълване на формуляра. Ако функцията SubmitForm работи, когато формата е в този режим, запис се променя, а не се създава. FormMode.Edit е по подразбиране за контролата Form.

Бележка

Когато формулярът е в режим на редактиране и Елемент е нула, свойствата на картата с данни не се оценяват и ще върнат стойности по подразбиране.

NewForm

Функцията NewForm променя режима на контрола на формуляра на FormMode.New. В този режим съдържанието на свойството на контролата за формуляри елемент се игнорира и стойностите по подразбиране на свойсвтото на формулярите DataSource попълват формуляра. Ако функцията SubmitForm работи, когато формулярът е в този режим, запис се създава, а не се променя.

ResetForm

Функцията ResetForm нулира съдържанието на формуляр до началните им стойности, преди потребителят да е направил промени. Ако формулярът е бил в режим FormMode.New, той е нулран към режим FormMode.Edit. Поведението OnReset на контролата на формуляра също тече. Можете също да нулирате отделни контроли с функцията Reset, но само от формата.

ViewForm

Функцията ViewForm променя режима на контрола на формуляра на FormMode.View. В този режим съдържанието на свойството Елемент на контролата на формуляр се използват за попълване на формуляра. Функциите SubmitForm и ResetForm нямат ефект, когато са в този режим.

Свойство DisplayMode

Текущият режим може да се прочете през свойството Режим. Режимът определя и стойността на свойството DisplayMode, което може да се използва от карти за данни и контроли в рамките на контрола на формуляра. Често свойството на картите на данните DisplayMode ще бъде настроено на Parent.DisplayMode (позовавайки се на формуляра), както и свойството DisplayMode на контролата (позовавайки се на картата с данни):

Режим DisplayMode Описание
FormMode.Редактиране DisplayMode.Редактиране Картите за данни и контролите са редактируеми, готови да приемат промени в даден запис.
FormMode.New DisplayMode.Редактиране Картите за данни и контролите са редактируеми, готови да приемат промени в нов запис.
FormMode.View DisplayMode.View Картите и контролите за данни не могат да се редактират и оптимизират за гледане.

Синтаксис

SubmitForm( Име на формуляр)

  • FormName - Задължително. Контрол на формуляра, за да се изпрати на източник на данни.

EditForm( Име на формуляр)

  • FormName - Задължително. Контрол на формата за преминаване към режим FormMode.Edit.

NewForm( Име на формуляр)

  • FormName - Задължително. Контрол на формата за преминаване към режим FormMode.New.

ResetForm( Име на формуляр )

  • FormName - Задължително. Контрол на формата за нулиране до начални стойности. Също така превключва формата от FormMode.New режим до FormMode.Edit режим.

ViewForm( Име на формуляр)

  • FormName - Задължително. Контрол на формата за преминаване към режим FormMode.View.

Примери

Вижте Разберете оформлението на формуляри за данни за пълни примери.

  1. Добавете контролата бутон, задайте свойството й Текст да показва Записване, и задайте свойството й OnSelect на тази формула:

    SubmitForm( EditForm )

  2. Задайте свойството OnFailure на контролния формуляр да се попълни и неговото свойство OnSuccess на тази формула:

    Назад()

  3. Назовете контрола Етикет с име ErrorText и задайте свойството й Текст на тази формула:

    EditForm.Error

    Когато потребителят избере бутон Запази, всички промени в контрола на формуляра се изпращат в основата източник на данни.

    • Ако изпращането е успешно, всички промени се запазват или, ако контролът на формуляра е включен режим Създаване, създава се запис. ErrorText е празен и предишният екран се появява отново.
    • Ако изпращането не успее, ErrorText показва удобно за потребителя съобщение за грешка и текущият екран остава видим, така че потребителят да може да коригира проблема и да опита отново.
  4. Добавете контролата бутон, задайте свойството й Текст да показва Отмяна, и задайте свойството й OnSelect на тази формула:

    ResetForm( EditForm ); Назад()

    Когато потребителят избере бутон Отмяна, стойностите в контрола на формуляра се връщат до това, което са били преди потребителят да започне да го редактира, предишният екран се появява отново и контрола на формуляра се връща на редактиране режим, ако е бил в Създаване режим.

  5. Добавете контролата бутон, задайте свойството й Текст да показва Създаване, и задайте свойството й OnSelect на тази формула:

    NewForm( EditForm ); Navigate( EditScreen, няма )

    Когато потребителят избере бутон Създаване, контролът на формуляра преминава към Създаване режим, стойностите по подразбиране за източник на данни на контрола на формуляра попълват този контрол и се появява екранът, който съдържа контрола за формуляр. Когато функцията SubmitForm тече, вместо да се актуализира се създава запис.