Filtrování a kopírování dat pomocí Power AutomateFilter and copy data with Power Automate

Tento podrobný návod obsahuje postup vytvoření toku, který monitoruje nové nebo změněné položky ve zdroji a následně tyto změny kopíruje do cíle.This walkthrough shows you how to create a flow that monitors a source for new or changed items and then copies those changes to a destination. Podobný tok můžete vytvořit, například když uživatelé zadávají data na jednom místě, ale váš tým je potřebuje na jiném místě nebo v jiném formátu.You may create a flow like this one if your users enter data in one location, but your team needs it in a different location or format.

Tento podrobný postup kopíruje data ze seznamu Microsoft SharePoint (zdroj) do tabulky Azure SQL Database (cíl), ale můžete data kopírovat z nebo do více než 380 konektorů, které Power Automate podporuje.While this walkthrough copies data from a Microsoft SharePoint list (the source) to an Azure SQL Database table (the destination), you can copy data among any of the more than 380 connectors that Power Automate supports.

Tip

Podrobné informace o používání SharePointu s Power Automate naleznete v dokumentaci k SharePointu.For detailed information about using SharePoint with Power Automate, see the SharePoint documentation.

Důležité

Změny provedené v cíli se nekopírují, protože obousměrná synchronizace není podporovaná.Changes you make in the destination aren't copied to the source because two-way syncs aren't supported. Při pokusu o nastavení obousměrné synchronizace vytvoříte nekonečnou smyčku, ve které se změny budou do nekonečna posílat mezi zdrojem a cílem.If you attempt to set up a two-way sync, you'll create an infinite loop where changes are sent endlessly between the source and destination.

PožadavkyPrerequisites

  • Přístup ke zdroji a cíli dat.Access to a data source and a destination. Tento podrobný postup neobsahuje kroky potřebné k vytvoření zdroje a cíle.This walkthrough doesn’t include steps to create the source and destination.
  • Přístup k Power Automate.Access to Power Automate.
  • Základní přehled o tom, jak jsou vaše data uložená.A basic understanding of how your data is stored.
  • Základní znalost vytváření toků.Familiarity with the basics of creating flows. Podívejte se, jak přidávat akce, triggery a podmínky.You can review how to add actions, triggers, and conditions. V následujících krocích se předpokládá, že tyto akce umíte provádět.The following steps assume that you know how to perform these actions.

Tip

Názvy všech sloupců ve zdroji a cíli nemusejí být stejné, ale při vkládání nebo aktualizaci položky musíte zadat data všech povinných sloupců.Every column name in the source and destination don't need to match, but you must provide data for all required columns when you insert or update an item. Power Automate určí požadovaná pole za vás.Power Automate identifies the required fields for you.

Rychlý přehled krokůQuick overview of the steps

Pokud jste s Power Automate obeznámeni, zkopírujte data z jednoho zdroje dat do druhého pomocí těchto rychlých kroků:If you're comfortable with Power Automate, use these quick steps to copy data from one data source to another:

  1. Identifikujte zdroj, který budete monitorovat, a cíl, do kterého chcete kopírovat změněná data.Identify the source you'll monitor and the destination to which you'll copy changed data. Potvrďte, že máte přístup ke zdroji i cíli.Confirm you've access to both.
  2. Určete aspoň jeden sloupec, který jedinečným způsobem identifikuje položky ve zdroji a cíli.Identify at least one column that uniquely identifies items in the source and destination. V následujícím příkladu používáme sloupec Title (Název), ale můžete použít jakýkoli sloupec (nebo sloupce).In the example that follows, we use the Title column, but you could use any column(s) you want.
  3. Nastavte aktivační událost, která monitoruje změny ve zdroji.Set up a trigger that monitors the source for changes.
  4. Najděte cíl a zjistěte, jestli v něm změněná položka existuje.Search the destination to determine if the changed item exists.
  5. Použijte k tomu třeba následující podmínku:Use a Condition like this:
    • Pokud nová nebo změněná položka v cíli neexistuje, vytvořte ji.If the new or changed item doesn't exist in the destination, create it.
    • Pokud nová nebo změněná položka v cíli existuje, aktualizujte ji.If the new or changed item exists in the destination, update it.
  6. Aktivujte tok a potvrďte, že se nové nebo změněné položky kopírují ze zdroje do cíle.Trigger your flow, and then confirm that new or changed items are being copied from the source to the destination.

Poznámka

Pokud jste ještě nevytvořili připojení ke službě SharePoint nebo Azure SQL Database, postupujte podle pokynů, které se zobrazí při výzvě k přihlášení.If you haven't created a connection to SharePoint or Azure SQL Database previously, follow the instructions when you're prompted to sign in.

Tady je podrobný postup vytvoření toku:Here are the detailed steps to create the flow.

Monitorování změn ve zdrojiMonitor the source for changes

  1. Přihlaste se k Power Automate, vyberte Moje toky > Vytvořit z prázdné.Sign into Power Automate, select My flows > Create from blank.

  2. Najděte SharePoint a v seznamu aktivačních událostí vyberte SharePoint – Při vytvoření nebo úpravě položky.Search for SharePoint > select the SharePoint - When an item is created or modified trigger from the list of triggers.

  3. Zadejte Adresu Webu a na kartě Při vytvoření nebo úpravě položky vyberte Název seznamu.Enter the Site Address and then select the List Name on the When an item is created or modified card.

    Zadejte adresu webu a Název seznamu SharePoint, u kterého váš tok monitoruje nové nebo aktualizované položky.Provide the Site Address and List Name for the SharePoint list your flow monitors for new or updated items.

    Konfigurace aktivační události SharePointu

Vyhledání cíle nové nebo změněné položkySearch the destination for the new or changed item

K vyhledání cíle nové nebo změněné položky použijeme akci SQL Server – Získat řádky.We use the SQL Server - Get rows action to search the destination for the new or changed item.

  1. Vyberte Nový krok > Přidat akci.Select New step > Add an action.

  2. Najděte Získat řádky, vyberte SQL Server – Získat řádky a v seznamu Název tabulky vyberte tabulku, kterou chcete monitorovat.Search for Get rows, select SQL Server - Get rows, and then select the table you want to monitor from the Table name list.

  3. Vyberte Zobrazit rozšířené možnosti.Select Show advanced options.

  4. Do pole Dotaz filtru zadejte Title eq ' (Název eq '), ze seznamu dynamického obsahu vyberte token Title (Název) a pak zadejte '.In the Filter Query box, enter Title eq ', select the Title token from the dynamic content list, and then enter '.

    Předchozí krok předpokládá, že spojujete názvy řádků ve zdroji a cíli.The previous step assumes you're matching the Titles of the rows in the source and the destination.

    Karta Získat řádky by měla vypadat takto:The Get rows card should now look like this image:

    Pokus o získání položky z cílové databáze

Kontrola nálezu nové nebo změněné položkyCheck if the new or changed item was found

Kartu Podmínka otevřete, když vyberete Nový krok > Přidat podmínku.Select New step > Add a condition to open the Condition card.

Na kartě Podmínka:On the condition card:

  1. Vyberte políčko vlevo.Select the box on the left.

    Otevře se seznam pro přidání dynamického obsahu z aplikací a konektorů, které se používají v toku.The Add dynamic content from the apps and connectors used in this flow list opens.

  2. V kategorii Získat řádky vyberte hodnota.Select value from the Get rows category.

    Tip

    Potvrďte, že jste v kategorii Získat řádky vybrali hodnota.Confirm you've selected value from the Get rows category. Nevybírejte položku hodnota z kategorie Při vytvoření nebo úpravě položky.Don't select value from the When an item is created or modified category.

  3. V seznamu v prostředním poli vyberte rovná se.Select is equal to from the list in the center box.

  4. Do pole na pravé straně zadejte 0 (nulu).Enter 0 (zero) in the box on the right side.

    Karta Podmínka teď vypadá jako na tomto obrázku:The Condition card now resembles this image:

    Konfigurace podmínky

  5. Vyberte Upravit v rozšířeném režimu.Select Edit in advanced mode.

    Při otevření rozšířeného režimu vidíte v poli výraz @equals(body('Get_rows')?['value'], 0).When advanced mode opens, you see @equals(body('Get_rows')?['value'], 0) expression in the box. Upravte výraz tím, že funkci body('Get_items')?['value'] uzavřete do funkce length().Edit this expression by adding length() around the body('Get_items')?['value'] function. Celý výraz nyní vypadá takto: @equals(length(body('Get_rows')?['value']), 0)The entire expression now appears like this: @equals(length(body('Get_rows')?['value']), 0)

    Karta Podmínka teď vypadá jako na tomto obrázku:The Condition card now resembles this image:

    Konfigurace podmínky

    Tip

    Přidáním funkce length() umožníte toku, aby kontroloval seznam hodnota a zjistil, jestli obsahuje nějaké položky.Adding the length() function allows the flow to check the value list and determine if it contains any items.

Když tok získá z cíle položky, existují dva možné výsledky.When your flow "gets" items from the destination, there're two possible outcomes.

VýsledekOutcome Další krokNext step
Položka existujeThe item exists Aktualizovat položkuUpdate the item
Položka neexistujeThe item doesn't exist Vytvoření nové položkyCreate a new item

Poznámka

Následující obrázky karet Vložit řádek a Aktualizovat řádek se mohou lišit od vašich karet, protože karty zde zobrazují názvy sloupců v tabulce Azure SQL Database, kterou používá tok.The images of the Insert row and Update row cards shown next may differ from yours because these cards show the names of the columns in the Azure SQL Database table that's being used in the flow.

Vytvoření položky v cíliCreate the item in the destination

Pokud položka v cíli neexistuje, vytvořte ji akcí SQL Server – Vložit řádek.If the item doesn't exist in the destination, create it using the SQL Server - Insert row action.

Ve větvi Pokud ano podmínky:On the If yes branch of the Condition:

  1. Vyberte Přidat akci, najděte vložení řádku a pak vyberte SQL Server – Vložit řádek.Select Add an action, search for insert row, and then select SQL Server - Insert row.

    Otevře se karta Vložit řádek.The Insert row card opens.

  2. V seznamu Název tabulky vyberte tabulku, do které chcete vložit novou položku.From the Table name list, select the table into which the new item will be inserted.

    Po rozbalení karty Vložit řádek se zobrazí všechna pole vybrané tabulky.The Insert row card expands and displays all fields in the selected table. Pole s hvězdičkou (*) jsou povinná a musí být na řádku vyplněna, aby vyla položka platná.Fields with an asterisk (*) are required and must be populated for the row to be valid.

  3. Vyberte každé pole, které chcete vyplnit, a zadejte data.Select each field that you want to populate and enter the data.

    Data můžete zadat ručně. V dynamickém obsahu vyberte jeden nebo více tokenů nebo do polí zadejte libovolnou kombinaci textu a tokenů.You may enter the data manually, select one or more tokens from the Dynamic content, or enter any combination of text and tokens into the fields.

    Karta Vložit řádek teď vypadá, jako na tomto obrázku:The Insert row card now resembles this image:

    Konfigurace podmínky

Aktualizace položky v cíliUpdate the item in the destination

Pokud položka v cíli existuje, aktualizujte v ní změny.If the item exists in the destination, update it with the changes.

  1. Do větve Pokud ne podmínky přidejte akci SQL Server – Aktualizovat řádek.Add the SQL Server - Update row action to the If no branch of the Condition.

  2. Při vyplňování polí tabulky postupujte podle pokynů v části Vytvoření položky v tomto dokumentu.Follow the steps in the create the item section of this document to populate the fields of the table.

    Zobrazení prostředí

  3. Nahoře na stránce zadejte název toku do pole Název toku a uložte ho výběrem možnosti Vytvořit tok.At the top of the page, enter a name for your flow in the Flow name box, and then select Create flow to save it.

    Pojmenování toku

Teď se při každé změně položky SharePoint seznamu (zdroj) aktivuje tok, který vloží do Azure SQL Database (cíl) novou položku nebo aktualizuje tu stávající.Now, whenever an item in your SharePoint list (source) changes, your flow triggers and either inserts a new item or updates an existing item in your Azure SQL Database (destination).

Poznámka

Při odstranění položky ze zdroje se tok neaktivuje.Your flow isn't triggered when an item is deleted from the source. Pokud je scénář odstranění důležitý, můžete přidat samostatný sloupec, který bude označovat nepotřebnou položku.If this is an important scenario, consider adding a separate column that indicates when an item is no longer needed.

Další informaceLearn more

Použití operací s daty v tocích.Use data operations in your flows.