Funcións Eliminar e EliminarSe
Aplícase a: Aplicacións de lenzo Aplicacións baseadas en modelos Power Platform CLI
Elimina rexistros dunha orixe de datos.
Nota
Os comandos PAC CLI pac power-fx non admiten a función RemoveIf .
Descripción
Función Remove
Use a función Remove para eliminar un rexistro ou rexistros específicos dunha orixe de datos.
Para as coleccións, o rexistro completo debe coincidir. Podes usar o argumento RemoveFlags.All para eliminar todas as copias dun rexistro; en caso contrario, só se elimina unha copia do rexistro.
Función RemoveIf
Use a función RemoveIffunción para eliminar un rexistro ou rexistros baseados nunha condición ou un conxunto de condicións. Cada condición pode ser calquera fórmula que dea como resultado un verdadeiro ou falso e pode facer referencia a columnas da orixe de datos polo seu nome. Cada condición avalíase individualmente para cada rexistro, e o rexistro elimínase se todas as condicións se avalían como verdadeiro.
Elimina e RemoveIf devolve o orixe de datos modificado como táboa. Só pode usar estas dúas funcións en fórmulas de comportamento.
Tamén pode usar a función Clear para eliminar todos os rexistros dunha colección.
Delegación
RemoveIf só admite algunhas fontes de datos. Para as fontes de datos que non admiten esta función, Power Apps consultará o servidor e recuperará todos os datos que coincidan coa expresión do filtro, ata un máximo de 500 ou 2000 rexistros ou o tamaño da páxina de datos. Posteriormente, eliminará cada un deses rexistros individualmente facendo chamadas separadas ao servidor.
Sintaxe
Eliminar( DataSource, Record1 [, Record2 , ... ] [, RemoveFlags.All ] )
- DataSource – Obrigatorio. A orixe de datos que contén o rexistro ou rexistros que desexa eliminar.
- Rexistros – Obrigatorio. O rexistro ou rexistros que hai que eliminar.
- RemoveFlags.All – Opcional. Nunha colección, o mesmo rexistro pode aparecer máis dunha vez. Podes engadir o argumento RemoveFlags.All para eliminar todas as copias do rexistro.
Eliminar( DataSource, Táboa [, Eliminar bandeiras .Todos ] )
- DataSource – Obrigatorio. A orixe de datos que contén os rexistros que desexa eliminar.
- Táboa – Obrigatorio. Unha táboa de rexistros para eliminar.
- RemoveFlags.All – Opcional. Nunha colección, o mesmo rexistro pode aparecer máis dunha vez. Podes engadir o argumento RemoveFlags.All para eliminar todas as copias do rexistro.
RemoveIf( DataSource, Condición [, ... ] )
- DataSource – Obrigatorio. A orixe de datos que contén o rexistro ou rexistros que desexa eliminar.
- Condicións – Obrigatoria. Unha fórmula que avalía se é verdadeiro para o rexistro ou os rexistros que hai que eliminar. Pode usar nomes de columna de DataSource na fórmula. Se especifica varias Condicións, todas deben avaliarse como verdadeiro para que se elimine o rexistro ou os rexistros.
Exemplos: fórmulas individuais
Nestes exemplos, eliminará un rexistro ou rexistros nunha orixe de datos chamada IceCream e iso comeza cos datos desta táboa:
Crear unha colección con rexistros de mostra
Para crear unha colección con estes datos:
Insira un control de botón.
Axuste a propiedade OnSelect do botón de botón na fórmula seguinte:
ClearCollect( IceCream, { ID: 1, Flavor: "Chocolate", Quantity: 100 }, { ID: 2, Flavor: "Vanilla", Quantity: 200 }, { ID: 3, Flavor: "Strawberry", Quantity: 300 } )
Seleccione o botón mantendo premida a tecla Alt:
Eliminar os rexistros de mostra da colección usando unha fórmula
Fórmula | Descripción | Resultado |
---|---|---|
Eliminar (xeado, LookUp (Xeado, Sabor="Chocolate")) |
Elimina o rexistro Chocolate da orixe de datos. | A orixe de datos IceCream modificouse. |
Eliminar (xeado, LookUp (Xeado, Sabor="Chocolate"), LookUp (Xeado, Sabor="Amordodo")) |
Elimina dous rexistros da orixe de datos. | A orixe de datos IceCream modificouse. |
EliminarSe( Xeado, Cantidade > 150) | Elimina os rexistros que teñen unha Cantidade que é maior que 150. | A orixe de datos IceCream modificouse. |
EliminarSe( Xeado, Cantidade > 150, Esquerdo(Sabor, 1) = "S" ) | Elimina os rexistros que teñen unha Cantidade que é maior que 150 e cuxo valor Flavor comeza por un S. | A orixe de datos IceCream modificouse. |
RemoveIf( Xeado, verdadeiro) | Elimina todos os rexistros da orixe de datos. | A orixe de datos IceCream modificouse. |
Exemplos: botón Eliminar fóra dunha galería
Neste exemplo, empregará un control de Galería para enumerar os rexistros dunha táboa. A continuación, use a función Remove para eliminar selectivamente un elemento.
Preparar os datos de mostra
Este exemplo usa a táboa Contactos dispoñible en Microsoft Dataverse cos datos e aplicacións de exemplo. Pode implantar aplicacións e datos de mostra ao crear un ambiente. No seu lugar tamén pode usar calquera outra orixe de datos.
Botón Eliminar fóra dunha galería
Neste exemplo, eliminará un elemento usando un botón que está fóra da galería.
Cree unha nova aplicación de lenzo en branco usando un deseño de teléfono.
No panel esquerdo, seleccione Inserir.
Seleccione Galería vertical.
Un control de Galería engadirase á súa pantalla.Solicítaselle que seleccione unha orixe de datos onde poida seleccionar unha orixe de datos entre as fontes de datos dispoñibles.
Por exemplo, seleccione a táboa Contactos para usar datos de mostra:A galería mostra elementos desta táboa:
Insira un control de Botón desde o panel esquerdo:
Mova o botón engadido debaixo dos elementos da galería:
Actualice a propiedade de texto do botón para Eliminar rexistro. Tamén podeutilizar o textp que vostede escolla:
Axuste a propiedade OnSelect deste control de botón na seguinte fórmula:
Remove( Contacts, Gallery1.Selected )
O control de galería fai que o rexistro seleccionado actualmente estea dispoñible usando a propiedade Seleccionado. A función Elimina refírese a este rexistro seleccionado para eliminalo.
Obteña a vista previa da aplicación usando o botón Reproducir na parte superior dereita ou prema F5 no teclado:
Seleccione un rexistro para eliminar, como o rexistro de Nancy neste exemplo:
Seleccione Eliminar rexistro:
Se selecciona o botón elimínase o rexistro seleccionado (neste exemplo, o rexistro de Nancy).
Peche a vista previa da aplicación.
Propina
Tamén pode usar un comportamento alternativo coa Tecla Alt en vez de usar a vista previa da aplicación co botón Reproducir ou F5.
Exemplos: icona de papeleira dentro dunha galería
Neste exemplo, eliminará un elemento usando unha icona situada dentro da galería.
Crear unha colección con datos de mostra
Se xa ten datos de mostra preparados, salte este paso e diríxase á icona de papeleira dentro dunha galería.
Engada un control de botón á pantalla.
Defina a propiedade OnSelect na seguinte fórmula:
ClearCollect( SampleContacts, { 'Full Name': "Yvonne McKay (sample)", 'Primary Email': "someone_a@example.com" }, { 'Full Name': "Susanna Stubberod (sample)", 'Primary Email': "someone_b@example.com" }, { 'Full Name': "Nancy Anderson (sample)", 'Primary Email': "someone_c@example.com" }, { 'Full Name': "Maria Campbell (sample)", 'Primary Email': "someone_d@example.com" }, { 'Full Name': "Robert Lyon (sample)", 'Primary Email': "someone_e@example.com" }, { 'Full Name': "Paul Cannon (sample)", 'Primary Email': "someone_f@example.com" }, { 'Full Name': "Rene Valdes (sample)", 'Primary Email': "someone_g@example.com" } )
Seleccione o botón mantendo premida a tecla Alt.
Creouse unha colección de mostra que pode usar no seguinte exemplo.
Icona de papeleira dentro dunha galería
Cree unha nova aplicación de lenzo en branco usando un deseño de teléfono.
No panel esquerdo, seleccione Inserir.
Seleccione Galería vertical.
Un control de Galería engadirase á súa pantalla.Solicítaselle que seleccione unha orixe de datos onde poida seleccionar unha orixe de datos entre as fontes de datos dispoñibles.
Por exemplo, seleccione a táboa Contactos para usar datos de mostra:Se creou unha colección, seleccione a súa colección no seu lugar:
Seleccione un control dentro do elemento superior da galería.
Para garantir que o seguinte paso insira o elemento no modelo da galería e non fóra da galería, asegúrese de seguir este paso antes de pasar ao seguinte paso.
Seleccione Engadir icona no panel esquerdo.
Nota
Engadir icona insire unha icona + no lado esquerdo da galería, replicada para cada elemento da galería.
No elemento superior, mova a icona ao lado dereito da pantalla.
Seleccione a propiedade Icona da icona e configúrea na seguinte fórmula para actualizar a imaxe da icona como icona de papeleira:
Icon.Trash
Nota
O prefixo Icon. só se mostra cando está editando activamente a fórmula.
Defina a propiedade OnSelect na seguinte fórmula:
Remove( [@Contacts], ThisItem )
Nota
Debe usar o operador para eliminar elementos ambigüos global[@...] neste exemplo cos datos de mostra que emprega a táboa Contactos para evitar conflitos cunha relación de un a varios. Se utiliza fontes de datos como unha lista ou unha táboa de SQL Server, non é necesario utilizar o operador de desambiguación global .
Obteña a vista previa da aplicación usando o botón Reproducir na parte superior dereita ou prema F5 no teclado.
Seleccione a icona de papeleira xunto a un rexistro, por exemplo o de María:
O rexistro elimínase:
Peche a vista previa da aplicación.