Compartilhar via


Powerapps: Criando Vários Registros com um Mesmo Formulário

Visão Geral

O formulário do Powerapps é uma solução extensivel e flexível para criação e edição de registros.  Para este artigo um único formulário será utilizado para criar dois registros em uma lista do *SharePoint. *

Será utilizado a função Patch para selecionar os campos do formulário a serem escritos na base. 

Configurando o Formulário

Na app tenho uma lista do SharePoint com os campos de dias como colunas Yes/No e um campo de descrição de texto. 

No formulário o usuário adiciona a descrição e o dia da semana, e até dois registros podem ser criados dependendo do seleção de turno que o usuários fará, se o usuário selecionar os turnos AM e PM serão criados dois registros na lista do SharePoint.
No formulário substitui o controle padrão do tipo Toggle pelo tipo *Checkbox *como no artigo Powerapps: Substituindo Controle Toggle por Checkbox. E o campo JobDescription é um campo de texto livre. 

Para criar os dois registros, teste o valor dos checkbox dos turnos para verificar se estão selecionadas. O botão Patch na propriedade OnSelect deve ter o valor

If(
    chkShiftAM.Value,
    Patch(
        Schedule,
        Defaults(Schedule),
        {JobDescription: DataCardValue6.Text},
        {Shift: "AM"},
        {Monday: Checkbox3.Value},
        {Tuesday: Checkbox4.Value},
        {Wednesday: Checkbox5.Value},
        {Thursday: Checkbox6.Value},
        {Friday: Checkbox7.Value}
    )
);
If(
    chkShiftPM.Value,
    Patch(
        Schedule,
        Defaults(Schedule),
        {JobDescription: DataCardValue6.Text},
        {Shift: "PM"},
        {Monday: Checkbox3.Value},
        {Tuesday: Checkbox4.Value},
        {Wednesday: Checkbox5.Value},
        {Thursday: Checkbox6.Value},
        {Friday: Checkbox7.Value}
    )
)  

Testando a Patch

Execute a app e preencha o formulário.

Os dois registros devem ser criados na lista

**Referências **

https://docs.microsoft.com/en-us/powerapps/maker/canvas-apps/functions/function-patch