Schreibtisch

Anhänge nach Datentyp in PowerApps einschränken

Anhänge nach Datentyp in PowerApps einschränken

Eine immer wieder auftauchende Anfrage bei digitalen Prozessen ist die Beschränkbarkeit von Anhangsdokumenten. Bei der Bewerbung sollen beispielsweise nur PDFs angehängt werden können; das IT-Ticket darf nur mit Bildern ergänzt werden.

Das “Attachments”-Steuerelement in PowerApps-Formularen bringt (Stand: Oktober 2019) leider keine Filterung für Datentypen mit. Doch glücklicherweise lässt sich diese Funktionalität relativ unkompliziert mit weniger kleinen Formeln nachbauen.

Zwischenablage erstellen

Als erstes benötigen wir eine Zwischenablage für die Validierung. Dazu erzeugen wir einen neuen Screen und fügen dort ein Label ein.

Der zusätzliche Screen ist nicht zwingend notwendig, aber so hat das Label einen ordentlichen Platz, an dem es nicht stört.

Für den Text-Wert des Labels fügen wir jetzt folgende Funktion ein:

Concat(DataCardValueXX.Attachments.Name,
    If(
       Or(
           Lower(Right(Name,Len(Name)-Find(“.”,Name)))=”pdf”,
           Lower(Right(Name,Len(Name)-Find(“.”,Name)))=”doc”,
           Lower(Right(Name,Len(Name)-Find(“.”,Name)))=”docx”
       ),
    “1”,”0″))

DataCardValueXX wird durch den Namen des Attachment-Steuerelements ersetzt – Wichtig: NICHT der Name der DataCard selbst, sondern der Name des Attachment-Steuerelements in der DataCard.

Erklärung zur Funktion

Die Funktion liest alle angefügten Dateinamen, extrahiert die Endungen und fügt für erlaubte Endungen eine “1” und für nicht erlaubte Endungen eine “0” an.

  • Concat
    • Baut eine Zeichenkette aus einer Sammlung von Werten zusammen. In diesem Falle ist die Sammlung der Werte die Eigenschaft “Attachments.Name” unseres Attachment-Steuerelements.
  • Or-Block
    • Für jeden erlaubten Datentyp gibt es eine Abfrage im “Or”-Block.
  • Right(Name,Len(Name)-Find(“.”,Name))
    • Mit Hilfe der “Right”- und “Len”-Funktionen wird der Text nach dem “.” im jeweiligen Datennamen, also die Dateiendung, extrahiert.
  • Lower([…])=”pdf”
    • Die “Lower”-Funktion wird verwendet, um die Dateiendung in Kleinbuchstaben zu erhalten. Da Textabgleiche in PowerApps case-sensitive sind, sparen wir uns so die Abfrage der Dateitypen in mehreren Schreibweisen.

Abfrage beim Senden des Formulars

Wenn alles funktioniert hat, zeigt das Label jetzt einen Binärwert, der anzeigt, ob sich ungültige Dateitypen unter den Anhängen befinden. Auf diesen Wert können wir jetzt beim Abschicken des Formulars prüfen.

In meinem Beispiel wird das Formular – wie i.d.R. üblich – über einen Button abgeschickt. Die “OnSelect”-Funktion des Buttons wird jetzt wie folgt ergänzt:

If(
    IsMatch(lbl_attachmentValidation.Text,”0″,Contains),
    Notify(“Ungültiger Datentyp angehängt.”,NotificationType.Error),
    [… BISHERIGE FUNKTION …]
)

Erklärung zur Funktion

Wie beschrieben, prüft die Funktion auf 0-Werte innerhalb unseres Validierungstextes. Sind 0-Werte vorhanden, wird ein Fehler ausgegeben. Sind keine vorhanden, wird die bereits bestehende Funktion des Buttons – in diesem Fall “SubmitForm()” – ausgeführt.

  • IsMatch
    • Prüft, ob es eine Übereinstimmung mit einem regulären Ausdruck im Text gibt. In diesem Fall ist der reguläre Ausdruck einfach “0”. Wichtig ist hier die zusätzliche Angabe der Option “Contains”, da “IsMatch” sonst den vollständigen Text vergleichen würde.
  • Notify
    • Gibt eine Meldung aus. Der NotificationType bestimmt die Farbe und das Icon der Meldung. Die Funktion lässt sich wohl als White- als auch als Black-List nutzen. Dafür einfach auf “1” statt auf “0” prüfen lassen.

Fazit

Die Prüfung auf verschiedene Datentypen im Anhang von PowerApps-Formularen lässt sich relativ unproblematisch hinzufügen und nachträglich anpassen. Durch das Label auf dem gesonderten Screen gibt es darüber hinaus eine einfache Möglichkeit die Funktion zu testen und nachzuvollziehen.

Es ist auch möglich, die Funktionen so anzupassen, dass der Ergebnistext die unerlaubten Dateinamen enthält. Diese können dann z.B. in der Meldung ausgegeben werden.

Viel Spaß beim Ausprobieren.

Digitale Aktenordner auf dunklem Hintergrund – Verwaltungsdigitalisierung im öffentlichen Sektor.
Branche

Öffentliche Verwaltung

Wie gelingt die Digitalisierung der öffentlichen Verwaltung in der Praxis? Die TIMETOACT GROUP zeigt, wie Cloud, IT-Sicherheit und KI Prozesse spürbar beschleunigen.

Referenz

Modernisierung der Kernprüfung

TIMETOACT GROUP unterstützte die Deutsche Rentenversicherung Bund bei der Umsetzung der Kernprüfung in Java mittels OSGi und CICS auf IBM System z.

Logo Microsoft
Technologie 29.06.20

Microsoft

Wir sind Microsoft Solutions Partner in den Bereichen Business Applications, Data & AI, Digital & App Innovation, Infrastructure Azure, Modern Work sowie Security

Event 07.09.21

IT Jobtag 2021

TIMETOACT GROUP als attraktiver Arbeitsplatz für IT Berufe

Oct 06
Social 24.11.22

TIME TO RUN - unser 3. eigener Firmenlauf!

Bei unserem 3. eigenen Firmenlauf zeigten sich unsere Kolleg:innen von ihrer sportlichen Seite.

Sep 24
Technologie 29.06.20

IBM

Wir sind IBM Platinum Business Partner und haben damit seit Jahren den höchsten Partnerstatus bei der IBM.

Technologie Übersicht

HCL

Als „HCL Platinum Business Partner“ haben wir seit Jahren Erfahrung mit diesen Tools und werden diese auch in Zukunft für Sie betreuen.

Logo RedHat
Technologie 02.07.20

RedHat

Wir sind RedHat Advanced Partner. Mit RedHat als dem Marktführer in Open-Source-IT-Lösungen unterstützen wir unsere Kunden ihre Cloud Journey aktiv zu gestalten und umzusetzen.

Social

Wir begrüßen unsere Nachwuchstalente 2020

Auch 2020 haben wir wieder viele junge Nachwuchskräfte bei der TIMETOACT GROUP eingestellt. Denn trotz der aktuellen Lage ist es uns nach wie vor wichtig, neue Talente für uns zu gewinnen und sie in ihrem Einstieg in den Beruf zu begleiten.

Vernetzte Landschaft mit Sonnenuntergang – Digitalisierung in Energieversorgung und Smart Grids.
Branche

Energieversorger

Von Abrechnung bis Archiv: IT-Projekte für die Energiewirtschaft

Kritische Sicherheitslücke in log4j
News

log4j Sicherheitslücke: Produkte vieler Hersteller betroffen

Es wurde eine kritische Sicherheitslücke in der Protokollierungsbibliothek Log4j für Java Anwendungen entdeckt. Unter anderem Produkte von Atlassian, Google, HCL, IBM, Microsoft, und Talend betroffen. Wir unterstützen Sie!

Software & Application
Service

Software & Application

Agilität, Application Modernization, Fullstack Development und Requirement Engineering sind wichtige Aspekte der Business Application Development.

Unternehmen 19.01.22

PKS - zukunftsfähige Software-Transformationen

PKS ist ein Team aus erfahrenen Softwareanalysten, Programmierexperten und Webentwicklern. Seit 1991 planen sie innovative, risikoarme und zukunftsfähige Software-Transformationen weltweit.

News 18.01.21

Neue Partnerschaft mit Hyland

TIMETOACT GROUP und Hyland Software haben ihre Partnerschaft im Bereich ECM/BPM Lösungen angekündigt. Mit Hyland gewinnt die TIMETOACT GROUP einen marktführenden Content Service-Partner, der sich insbesondere in Microsoft Architekturen nahtlos integrieren lässt.

Standort

München

Finden Sie u.a. vor Ort in München: ARS Computer und Consulting GmbH; catworkx GmbH, novaCapta GmbH; TIMETOACT Software & Consulting GmbH

Standort

Winterthur

Finden Sie u.a. catworkx AG und IPG Information Process Group AG in Winterthur: Theaterstrasse 17, 8400 Winterthur

Standort

Sursee

Finden Sie die novaCapta Schweiz AG in Sursee; Industriestraße 5a, 6210 Sursee, Tel: +41 41 39220 00, Mail: info.sursee@novacapta.com

Standort

Wien

Finden Sie u.a. die catworkx GmbH, CLOUDPILOTS Software & Consulting GmbH, IPG Information Process Group Austria GmbH und TIMETOACT GROUP Österreich GmbH in Wien

Social 16.02.21

FAST-elovend 2021 – unsere virtuelle Karnevalsfeier

Kölle Alaf! Auch dieses Jahr feierten die Jecken der TIMETOACT GROUP Fastelovend - aber nur FAST so wie immer. Denn nach unserer (digitalen) Weihnachtsfeier ließen wir uns auch Karneval nicht nehmen und feierten Karneval einfach virtuell.

Standort

Zürich

Finden Sie u.a. novaCapta Schweiz AG und TIMETOACT GROUP Schweiz GmbH in Zürich: Technoparkstraße 1, 8005 Zürich

Bleiben Sie mit dem TIMETOACT GROUP Newsletter auf dem Laufenden!