[Lern PowerApps] EP5: SharePoint-Listen mit 1:n Beziehungen in der App

Sdílet
Vložit
  • čas přidán 16. 07. 2024
  • Ein umfassender Überblick, wie ihr mehrere SharePoint-Listen, mit 1:n Beziehung haben in einer PowerApp miteinander verknüpft. Ich liefer euch etwas Hintergrundwissen, was es mit Primärschlüsseln und Fremdschlüsseln auf sich hat - hier solltet ihr aber unbedingt auch selber die Grundlagen zum Thema "Relationale Datenbanken" recherchieren.
    In der App zeige ich euch, wie ihr die Fremdschlüssel automatisch anhand eines selektierten Gallerieeintrags oder über ein Dropdown-Feld vergeben könnt.
    Als Bonus zeige ich, wie man ein Formular verschwinden lässt und dynamisch in der App die Position von Steuerelementen verschieben kann - ohne eine einzige Variable zu nutzen!
    Entschuldigt das gelegentliche Rauschen im Mikro, das versuch ich in den nächsten Videos wieder besser zu machen. Als kleines Extra gibt's auch etwas Kindergeschrei im Hintergrund...
    In den anderen Folgen seht ihr:
    • [Lern PowerApps] EP1: ... Die SharePoint-Liste als Backend
    • [Lern PowerApps] EP2: ... Schluss mit langweiligen Gallerien
    • [Lern PowerApps] EP3: ... So verwendest du Formulare richtig!
    • [Lern PowerApps] EP4: ... So Filterst du richtig
    Kapitelmarken:
    0:00 Einleitung mit Beispielen
    1:30 Überblick über die Funktionen
    3:45 Fremdschlüssel in SharePoint-Listen
    6:45 Hinzufügen von Steuerelementen, Gallerie und Formular
    9:30 Einrichten Formular und Gallerie
    14:39 Automatisches verschwinden des Formulars
    18:14 Befüllen des Fremdschlüssel anhand gewähltem Gallerieelement
    20:50 Befüllen des Fremdschlüssel über Dropdown
    28:57 Abschließende Gedanken
    Die Intromusik kommt von musicfox.com

Komentáře • 50

  • @MCSantani
    @MCSantani Před rokem +1

    Hi Robin, diese Videos und Informationen haben mir sehr geholfen PowerApps zu lernen und zu verstehen.
    Bin dir sehr dankbar.

    • @R2Power
      @R2Power  Před rokem

      Und ich bi dankbar für deinen netten Kommentar!

  • @ralfgartmann9101
    @ralfgartmann9101 Před 2 lety +2

    Hallo Robin, vielen Dank für diese Reihe! Die Videos sind eine riesige Hilfe. Eingerostetes DB Wissen meets SharePoint meets PowerApps - und auf einmal gehen Dinge, die vorher nicht gingen. Klasse. LG Ralf 👍

    • @R2Power
      @R2Power  Před 2 lety

      Das kommt schnell zurück und du wirst schnell in PowerApps reinkommen! Viel Erfolg und schau dir Mal Dataverse an, wenn du eine richtige Datenbank willst (benötigt allerdings für jeden User eine Lizenz)

    • @ralfgartmann9101
      @ralfgartmann9101 Před 2 lety +1

      @@R2Power Ja, danke dir, werde ich mir anschauen. Ich schau erst mal was mit SharePoint Tabellen geht, sind ja auch DB Tabellen....

  • @evelynboes7293
    @evelynboes7293 Před 2 lety +1

    Vielen herzlichen Dank für diese tollen Videos. Sie sind für mich eine riesen Hilfe. Deine Art die Themen vorzutragen, deine Erklärungen und Beispiele sind sehr verständlich und lassen es auch für "reale" Fälle umsetzten. Bitte mach weiter!

    • @R2Power
      @R2Power  Před 2 lety

      Herzlichen Dank für die netten Worte!

  • @philippkowalski1105
    @philippkowalski1105 Před rokem +1

    Ich bin nur in Episode 5 (Video 6) und habe schon tolle Funktionalitäten umgesetzt. Das ist wirklich eine tolle Tutorial Serie. Wow. Solltest Du jemals einen Premium Kurs anbieten, bin ich bestimmt Dein Kunde. Davon können im übrigen auch viele andere Online-Marketer was lernen. Tolle kostenlose Infos und Tutorials anbieten schafft so viel Vertrauen, dass die potentiellen Kunden dann eben auch bereit sind, Geld auf den Tisch zu legen ;)

    • @R2Power
      @R2Power  Před 11 měsíci

      Danke für dein Lob, tatsächlich biete ich im November, zusammen mit Luise Freese einen Live-Kurs in Köln an:
      www.crownandwand.com/
      (Wahrscheinlich meintest du eher einen udemy-Kurs oder ähnlich, vielleicht ist es ja aber was für dich)

  • @jetys100
    @jetys100 Před 3 lety +2

    Super Video, damit habe ich gleich mehrere Lösungen für meine erste App als Anfänger bekommen

    • @R2Power
      @R2Power  Před 3 lety

      Danke und Herzlichen Glückwunsch zur ersten App, die ist definitiv die schwierigste.
      Würdest du kurz umreißen was das Thema der App ist und welche Daten du verknüpft hast?

    • @jetys100
      @jetys100 Před 3 lety +1

      @@R2Power es geht um ein Formular zur Erfassung von Daten von Forschungsprojekten...Daten sind Informationen zum Projekt, Kategorien, Navhhaltigkeit, Meilensteine, mitarbeitende Abteilungen und Budetplan auf Jahresbasis. Die letzten drei Punkte muss ich aber erst noch umsetzen, demke aber, dass das Prinzip ähnlich sein sollte wie bei Projekte/Nachhaltigkeit (1:N-Beziehungen)

    • @R2Power
      @R2Power  Před 3 lety

      @@jetys100 ja, bei mir berfulich steht auch das Thema "Projekt" im Zentrum von allem und ist eine Liste (mit den Projektstammdaten), die ich in bestimmt 10 Apps auf irgendeine Weise verwende.
      Viel Erfolg bei deinen Projekten, ich glaube da kommen noch ein paar!

    • @eduardschnebel1835
      @eduardschnebel1835 Před 2 lety

      Hallo Robin, auch von mir großes Lob für deine Videos!!! Ich finde sie wirklich hilfreich 👍🏼! Ich hänge leider seit Tagen an folgendem Problem:
      Ich habe 3 Formulare erstellt.
      1 Hauptformular mit ID (Primärschlüssel).
      Die anderen beiden sollen sich auf diese ID referenzieren. In diesem Video hast du das mit einer Gallery gut hinbekommen mit Gallery.Selected.ID. Kann man das auch irgendwie mit Formularen aufsetzen?
      Vielleicht hast du ja einen Tipp für mich?
      Ich würde mich riesig freuen.
      Vielen Dank und mach bitte weiter so 💪🏼!
      Viele Grüße, Eduard

  • @Bloodhound81
    @Bloodhound81 Před 2 lety

    Hi Robin, auch das hier ist wieder ein Klasse und Informatives Video. Auch wenn es manchmal etwas schnell war, aber dafür kann man CZcams ja spulen :) . Mich würde interesieren, wie ich es verhindere, das der selbe Eintrag doppelt in der SharePoint list abgelegt wird.
    Vielen Dank
    Ich freu mich schon, was Du noch in den kommenden Videos umsetzt.

    • @R2Power
      @R2Power  Před 2 lety +1

      Hi Frank, das kannst du sogar auf SharePoint Ebene einstellen auf dem Feld, oder du schreibst halt eine Formel um vor dem absenden zu prüfen ob es den Eintrag schon gibt in der Liste

  • @berkoe1
    @berkoe1 Před 3 lety +2

    Hallo Robin, ich verfolge Deine PowerApps-Reihe mit großem Interesse und kann Dir sagen, Deine Reihe ist besser als so mancher professionelle Kurs. Was evtl. noch etwas besser gemcht werden kann, etwas mehr auf die Details des Codes einzugehen.
    Ich hätte da aber auch noch eine andere Frage: Wie kann man 1:1 - Beziehungen zwischen SharePoint-Listen herstellen, zu denen man alle Zugriff hat aber nicht im selben SharePoint liegt. Angenommen in Deinem Fall der Einrichtungen, man hat vom zentraler Stelle eine Liste in deren SharePoint mit allen grundlegenden Rahmeninformationen, jetzt möchte eine andere Stelle diese Liste herannehmen und in einer eigenen Liste im eigenen SharePoint weiteren Informationen ergänzen. Der Grundgedanke liegt jetzt darin, ein Formular mit den Grundinformation aus der zentralen Liste sowie mit Inhalten der eigenen Liste, die auf denselben Einrichtung-Namen referenziert. Hast Du dafür evtl. eine Lösung? besten Dank schon mal im voraus und auch für Deine tolle Reihe!

    • @R2Power
      @R2Power  Před 3 lety

      Vielen Dank für dein Feedback! Die Videos (sowohl inhaltlich als auch technisch) zu machen ist natürlich auch ein riesiger Lernprozess für mich. Durch eure ganzen Rückmeldungen weiß ich aber, dass ich definitiv auf dem richtigen Weg bin. Durch das Feedback kann ich mir dann ein paar Sachen nochmal gezielt anschauen.
      Zu deiner Frage:
      Die von mir gezeigte Lösung sollte ohne Probleme auch über mehrere SharePoints hinweg funktionieren. Letztendlich steht ja nur eine Zahl in einer Spalte und der App geben wir die Intelligenz mit zu wissen auf welche Spalte aus welcher Tabelle wir referenzieren. Über die App musst du es dann noch steuern, dass man nur einen Datensatz hinzufügen kann und nicht mehrere. In der SharePoint-Liste kann man das zusätzlich blockieren indem man in der Spalte mit dem Fremdschlüssel ("ID_Einrichtung") einen eindeutigen Wert verlangt.
      Was nicht funktioniert über mehrere SharePoints hinweg ist ein Feld vom Typ "Nachschlagen". Dazu habe ich noch nichts gemacht, plane es aber für eines der nächsten Videos.

  • @danielioan6338
    @danielioan6338 Před rokem +1

    Hallo Robin, ist es möglich Werte aus einer unteren Relationsebene nach oben zu berechnen und anzuzeigen? In deinem Beispiel sagen wir mal Anzahl Kinder zu berechnen und in der jeweilige Gruppe bzw. für jedes Kindergarten anzuzeigen? Ich würde es aber nicht unbedingt auf Anzahl reduzieren wollen sondern allgemein. Mittelwert oder % berechnet basierend auf einer 1:n Relation.

    • @R2Power
      @R2Power  Před rokem

      Prinzipiell geht das immer so lange recht gut und einfach, wie wir unter 2000 Datensätzen bleiben. Da können wir uns dann alles berechnen.
      Darüber würde ich Tools wie Power BI zur Auswertung empfehlen.

  • @danielioan6338
    @danielioan6338 Před rokem +1

    Hallo Robin, ich komme noch mal auf deinem Beispiel zurück. Also Kindergarten / Gruppe / Kindern. In der Gruppe könnte man die jeweilig zugeordneten Kindern zählen. Gruppe Rot hat 4 Gruppe Grün 5 Gruppe Blau 6. Kindergarten X hat = 4 +5 +6 = 15 Kindern und die gesamt Anzahl wird in der Hauptansicht angezeigt. Ist es so was Möglich?

    • @R2Power
      @R2Power  Před rokem

      Hier bekommen wir das Problem, dass SharePoint keine richtige relationale Datenbank ist. Ich behelfe mir hier oft mit dem Trick, dass ich zusätzlich zur Gruppe auch die ID der Kita zum Kind schreibe. Dann lässt sich sowas einfacher addieren. Das ist etwas unsauber, weil man Informationen doppelt speichert (Kita auf Gruppe UND Kind), man tut sich bei sowas aber leichter.
      Wenn man solche Daten z.B. in PowerBI lädt (da wird dann eine richtige relationale Datenbank aufgebaut) kann man sowas aber sehr einfach ermitteln.

  • @reneschmidt2159
    @reneschmidt2159 Před 2 lety +1

    Hallo Robin, vielen Dank für deine vielen Videos! Sie haben mir bereits sehr geholfen ein kleines ERP-System zu basteln. Ich habe ein kleines Handelsunternehmen und beschäftige mich mit dem An- und Verkauf von speziellen Metallbauteilen. Hierzu benötige ich im Prinzip nur eine kleine Datenbank, um Artikel, Einkauf- und Verkauf-Aufträge zu organisieren. Nun stehe ich vor zwei Problemen: 1. dem drucken von Angeboten, Bestellungen, Rechnungen...Powerapps lässt über die print()-Funktion nur das drucken einzelner Seiten zu. Wenn meine Galerie jedoch länger als eine Seite wird, habe ich ein Problem. Bisher habe ich es so gelöst, dass ich alle Seiten auf einen extra Bildschirm lege...sie als PDF drucke und danach wieder zusammenführe. Es funktioniert, jedoch mit größerem Aufwand. Hättest du hierfür eine Lösung? 2. Problem: Ich habe alle meine Apps/Seiten mit Sharepoint aufgebaut und ich habe jetzt schon z.B. ca. 550 Artikel in meinen Listen - Tendenz steigend. In einem deiner Videos erwähnst du, dass du in einem anderen Video erklärst, mit größeren Datenmengen umzugehen. Kannst du mir sagen, in welchem Video ich diese Erklärung finde? Ganz großen Dank schon im Voraus! Mfg Rene

    • @R2Power
      @R2Power  Před 2 lety +1

      Heute Um 9 wird ein neues Video veröffentlicht zum Thema drucken. Ich glaube da findest du was du suchst

  • @canumaprass8804
    @canumaprass8804 Před rokem +1

    29:00 : Doch funktioniert in Excel, siehe Datentools -> Beziehungen zwischen Tabellen

    • @R2Power
      @R2Power  Před rokem

      mein Fehler, kannte ich nicht
      die Darstellung der Daten wird aber trotzdem mehr als Problematisch
      Außerdem macht es Excel (ebensowenig wie SharePoint) dadurch zu einer relationalen Datenbank

    • @canumaprass8804
      @canumaprass8804 Před rokem

      @@R2Power Die Tabellenbeziehungen werden in Excel in dem Power-Pivot Modul gespeichert und gemanged. In Power-Pivot in Excel kann man übrigens auch Big-Data verarbeiten (ganz unabh. von der Excel-Zeilen Beschränkung). Und schließlich kann man aus Power Pivot wunderschöne Pivot-Tabellen und Charts auf Basis der verknüpften Tabellen erstellen.
      Excel ist keine Datenbank, richtig, aber mit dem PowerPivot Modul in Excel kann man allemal das Konzept der relativen Datenbanken lernen (und sogar die Tbl Beziehungen genau wie in Access graphisch visualisieren) und man kann die Daten aus den versch Tabellen letztendlich super easy mit Pivottabellen und Charts in Beziehung setzen und visualisieren.

  • @JurgenRing
    @JurgenRing Před rokem +1

    Hallo Robin,
    vielen Dank für Deine informativen Videos!
    Vereinfacht habe ich folgendes Problem: Eine Tabelle Kinder mit den Spalten Id, Vorname,Name,… Abzeichentext soll verarbeitet werden. Die Kinder können ein Abzeichen haben. Dazu gibt es eine Tabelle Abzeichen mit den Spalten Text und Bild.
    Wenn ich den Tabellensatz Kinder bearbeite, gelingt es mir den Text auszuwählen, aber nicht gleichzeitig das Bild des Abzeichens zu zeigen.
    Die Idee war ein Formular für das Kind und ein zweites Formular für das Abzeichen auf den Screen zu bringen.
    Die Eigenschaft Item des Abzeichenformulars wollte ich mit „Filter((Abzeichen;Text=gal_Kind.Selected.Abzeichentext)“ versehen, (Abzeichentext ist das Ergebnis des Suchfelds) als Verbindung der Tabellen nutzen. Das bringt aber leider nur Fehler.
    Es würde mich freuen, wenn Du einen Tipp hättest.
    Viele Grüße
    Jürgen

    • @JurgenRing
      @JurgenRing Před rokem +1

      Selbst gelöst, Natürlich war die Filterfunktion falsch, LookUp musste genutzt werden

    • @R2Power
      @R2Power  Před rokem

      Perfekt, genau.
      LookUp liefert nur einen Datensatz zurück und man kann dann einfacher damit weiterarbeiten

  • @gianlucatrapu
    @gianlucatrapu Před 11 měsíci +1

    Hallo Robin, vielen Dank für das informative Video. Ich hätte noch eine Frage bezüglich den Berechtigungen zu den jeweiligen SP Listen und zur App. Angenommen die App ist einer bestimmten User Gruppe A freigegeben. Dann müsste die anderen SP Listen auch ebenfalls für diese GruppeA freigegeben sein oder? Anhand an deinem Beispiel im Video, wäre es möglich das die "Kita" SP Liste für eine Gruppe A freigegeben ist, aber die SP Liste der Gruppen u. der Kinder nicht einsehbar ist über SP Site Contents für diese Gruppe A? Denn in weitere Folge hätte ich auch den UseCase, dass nicht alle Einträge der "Kita" Liste für alle User der GruppeA ersichtlich sein sollte. Sondern nur für bestimmte User. Vielen Dank bereits im Voraus.

    • @R2Power
      @R2Power  Před 11 měsíci +1

      Hallo,
      richtig, es muss beides freigegeben sein, also App + SharePoint-Listen. Sonst kommt eine Fehlermeldung in der App wenn die Listen geladen werden.
      Dein erstes Beispiel ließe sich natürlich realisieren, das lässt sich ja sinnvoll auf 2 Apps oder 2 Bildschirme aufteilen (also App A zum Bearbeiten von den Kitas und App B zum Bearbeiten von Gruppen / Kindern).
      Dein zweiter Fall lässt sich mit etwas mehr Aufwand auch in SharePoint abbilden. Man kann theoretisch jeden Listeneintrag mit unterschiedlichen Berechtigungen versehen. Hier würde ich aber ganz klar die Verwendung von Dataverse als Datenquelle empfehlen, da lässt sich noch viel mehr mit den Berechtigungen machen und genau dein skizzierter Fall ist da einfach über sog. Business Units und Sicherheitsrollen abbilden. Nachteil ist natürlich, dass Premiumlizenzen benötigt werden.

    • @gianlucatrapu
      @gianlucatrapu Před 11 měsíci

      @@R2Power Danke für die Information, alles klar das klingt ja schon mal vielversprechend. Dann werde ich mich mal Dataverse, genauer anschauen. 😀

  • @thomasmeulenberg4513
    @thomasmeulenberg4513 Před 2 lety +1

    Hallo Robin, erstmal danke für deine Videos. Die helfen mir sehr.😀 Ich möchte eine M:N Beziehung in App abbilden - Hast du da eine Idee bzw. kann SharePoint Listen in einer App wie eine Abfrage in Access darstellen? Würde mich freuen wenn du eine Lösung hättest.

    • @R2Power
      @R2Power  Před 2 lety +2

      Hi Thomas, du musst dich gedanklich ein wenig vom Thema "Abfragen" verabschieden.
      Eine Filter()-Funktion ist die adhoc-Abfrage und kann viel flexibler eingesetzt werden.
      M:N-Beziehung kann man zum Beispiel über ein Nachschlagen-Feld realisieren, bei dem man aktiviert, dass man mehrere Datensätze auswählen kann

  • @lufve12
    @lufve12 Před 3 lety +1

    Also eine n:m Verbindung mit Sharepointlisten ist nicht ohne weiteres möglich?

    • @R2Power
      @R2Power  Před 3 lety

      Hi, ein Nachschlagen-Feld mit mehreren Auswahlmöglichkeiten würde funktionieren.

  • @Nophramel
    @Nophramel Před 3 lety +2

    Ich habe noch nicht verstanden, wie man in einer SharePoint-Liste den Fremdschlüssel, also die ID einer anderen SharePoint-Liste hinzufügt. Die einzige Möglichkeit wo ich in einer Spalte eine Fremd-ID zuweisen könnte ist unter "Nachschlagen (in Informationen, die sich bereits auf dieser Webseite befinden)" -> Information kommen aus: [SharePoint Liste auswählen] -> Spalte auswählen. Da mir die Fremd-ID aber nicht korrekt in der Spalte angezeigt wird, denke ich , dass da was falsch ist.

    • @R2Power
      @R2Power  Před 3 lety +1

      Deine SharePoint-Liste weiß nicht, dass das ein Fremdschlüssel für eine andere Liste ist. Das ist einfach eine Zahl. Das habe ich tatsächlich nicht/schlecht dargestellt im Video.
      Die Zuordnung erfolgt ausschließlich in der PowerApp.
      Das Nachschlagen-Feld könnte man auch nehmen, brauchen wir aber hier nicht (das macht das befüllen der Felder etwas komplizierter).

    • @Nophramel
      @Nophramel Před 3 lety +1

      @@R2Power Wie wird denn jetzt die Spalte mit dem Fremdschlüssel in der SharePoint-Liste generiert?

    • @R2Power
      @R2Power  Před 3 lety +2

      @@Nophramel Die wird einfach in der Tabelle angelegt. Beispiel aus dem Video: die Spalte "EinrichtungsID" ist eine Spalte vom Typ Zahl (ohne Nachkommastellen) in der tbl_Gruppen. Bei 18:14 siehst du, dass es ein ganz normales Feld ist. Die automatische Zuordnung erfolgt dann über die Default-Einstellung

    • @Nophramel
      @Nophramel Před 3 lety +2

      @@R2Power Vielen Dank, habe genau das vermutlich übersehen.

    • @9unsuwe
      @9unsuwe Před 3 lety

      @@R2Power Habe wie beschrieben eine Spalte mit dem Tabellennamen ID angelegt. Bleibt leider leer

  • @Cmdr.Aldebaran
    @Cmdr.Aldebaran Před rokem

    Also diese Gender-Ansprache ist einfach nur mega-unsympathisch und abschreckend!🤮

    • @R2Power
      @R2Power  Před rokem +1

      Vom Gendern darf jeder halten was er/sie will, ich finde aber Leute mega unsympathisch, die das mit Kotzsmileys kommentieren 🤮

    • @Cmdr.Aldebaran
      @Cmdr.Aldebaran Před rokem

      @@R2Power Das war halt die Emotion, die bei mir aufkam, als ich das hörte - dafür sind Emojis ja da. Ich gehe jetzt auf die englischen Kanäle - dort gibt es ja glücklicherweise keine Geschlechtshervorhebung bei Entwicklern und keine feministische Stottersprache.

    • @R2Power
      @R2Power  Před rokem +2

      Dann mach das gerne. Hier gibt's auch so feministische Beispiele wie Kitas, das wäre wahrscheinlich nichts für dich.
      Übrigens muss man hier seinen Abschied nicht ankündigen.