Author: admin

  • Power Apps – jak aplikace rozliší v jakém prostředí je

    Při práci v Power Apps může být dobré vědět, v jakém jste prostředí. Typicky v situaci, kdy chcete aby se aplikace chovala mírně jinak v DEV a v PROD.

    Standardní jazyk Fx toto ale nezjistí, a současně v neprémiovém účtu nemáme přístup k Dataverse kde bychom to mohli zjistit.

    Takže jak na to?

    Využijeme toho, že Power Automate, na rozdíl od Power Apps, má přímý konektor.

    Jak na to?

    Vytvoříme proměnnou prostředí a naplníme jí. Např. v DEV prostředí hodnotou „DEV“.

    Pak můžeme z aplikace volat toto flow, které se umí na proměnnou snadno dotázat. Typicky tak, že při spuštění aplikace flow zavoláme a výsledek uložíme do proměnné.

    Výstup pak vrátíme do aplikace.

  • Power Apps – řádek tabulky v proměnné

    Do proměnné se nemusí ukládat jedna hodnota, ani celá tabulka (do kolekce). Je možné uložit konkrétní řádek tabulky.

    Jak na to?

    Např. takto:

    • Set(
          var_employee, //tabulka
          LookUp(
              zamestnanci,
              ‚Jméno a příjmení‘ = „Bart“ //řádek
          )
      )

    Nebo takto:

    • Set(
          var_employee, 
          First(zamestnanci)
      )

    K čemu je to dobré?

    Zjednodušení práce

    1. Můžete tím dost ušetřit práci. Protože můžete mít v jedné proměnné celý řádek a pak se na konkrétní hodnoty dotazovat třeba takto:
    • var_employee.’Jméno a příjmení‘

    Kopírování položek

    Ale hlavně – tuto proměnnou můžete vložit do Item formuláře. Formulář pak upravíte a uložíte, např. takto:

    • Patch(
          zamestnanci,
          Defaults(zamestnanci),
          Form1.Updates
      )

    Je to dost šikovné pokud potřebujete vzít stávající položku s tabulky, upravit ji a uložit jako nový záznam.

    S tímto tématem se setkáte na našich kurzech ExcelTown.
    Aktuálně: kurzy můžete absolvovat jak online, tak prezenčně.

    Pokud vás zajímá více informací o konzultacích, které nabízíme, a vývoji aplikací, který děláme pro naše klienty, stačí kliknout.

  • Power Apps – dva hlavní způsoby načítání čárových a QR kódů

    Čtečky kódů jsou v Power Apps skvěle podporované.

    Máte dvě cesty (vzájemně se nevylučující) jak s nimi pracovat:

    • můžete použít komponentu BarcodeReader (hlavně pro použití na mobilech),
    • nebo externí čtečku, která čte text a zapisuje ho do textového pole.

    Problém nastává v něčem, kde byste ho možná nečekali. Když totiž kód načtete, nic se nestane. Jenomže vy často potřebujete udělat něco jako “když se kód načte, tak ho někam ulož, někam jdi atd.”

    • U BarcodeReaderu je to v pohodě. Ten má vlastnost OnScan, a tam můžete definovat jakoukoliv akci.
    • Externí čtečka tohle ale neumí. Ta vám kód zapíše do běžného TextInputu, ale dál se nic nestane. Jasně, můžete textovému vstupu nadefinovat OnChange, ale to si pomůžete jen trochu – uživatel pak bude muset po načtení kódu ještě kliknout někam mimo políčko, aby se akce stala. A to je pro uživatele nepříjemné.

    Takže jak zařídit, aby se nějaká akce stala hned po vyplnění textového pole, bez nutnosti jakékoliv další interakce?

    Použijete Timer, který bude sledovat hodnoty v poli, ukládat je do proměnné, a při změně spustí akci.

    Jak ho nastavit?

    • AutoStart: =true
    • Duration: =1000
    • OnTimerStart: =Set(my_var,TextInput1.Text)
    • OnTimerEnd: =If(my_var<>TextInput1.Text,here is your action)