Übung: „In MR messen“ und Filtern in Power Apps

Abgeschlossen

In dieser Einheit verwenden Sie einige der wichtigsten funktionalen Komponenten von Power Apps. Dies umfasst „In IR messen“ und Filtermöglichkeiten. Benutzer können Abstand, Fläche und Volumen in der realen Welt mit der Measure in MR-Komponente von Power Apps messen.

Räumliche Filterung mithilfe von Measure in MR

Die Measure in MR-Funktion wird zur räumlichen Filterung von Produkten verwendet, die entsprechend den Messungen, die während der Messsitzung empfangen werden, einfach in der realen Welt platziert werden können. Einige grundlegende Formeln werden verwendet, um die Filterung durchzuführen.

  1. Navigieren Sie zur Startseite. Erweitern Sie auf der Registerkarte Einfügen das Dropdown-Menü Mixed Reality und wählen Sie Messung in MR aus.

    Screenshot zum Hinzufügen von Measure in MR

  2. Positionieren Sie die Schaltfläche "Measure" in MR , wie in der Abbildung dargestellt, und konfigurieren Sie die folgenden Eigenschaften:

    • Text: Filtern nach Dimensionen
    • Maßeinheit: Zentimeter
    • Messungstyp: Freiform

    Screenshot zum Konfigurieren der Eigenschaften von Measure in MR.

  3. Fügen Sie auf der Startseite einen Katalog hinzu, indem Sie den Katalog>vertikal auswählen. Ändern Sie den Namen der Galerie in Measure_gallery.

    Screenshot zum Hinzufügen zur Galerie.

  4. Positionieren Sie den vertikalen Katalog direkt unterhalb der Schaltfläche " Nach Dimensionen filtern ". Konfigurieren Sie die Layout-Eigenschaft , indem Sie "Titel", "Untertitel" und "Textkörper" auswählen.

    Screenshot zum Konfigurieren des Layouts

  5. Konfigurieren Sie die Items-Eigenschaft des Measure_gallery , indem Sie die folgende Zeile hinzufügen:

    MeasureInMR1.Measurements
    

    Screenshot der Galeriedatenquelle.

  6. Entfernen Sie das Trennzeichen und nextArrow. Positionieren Sie Titel, Untertitel und Text gleichmäßig nebeneinander, wie in der Abbildung dargestellt.

    Screenshot: gleichmäßiger Abstand der Platzierung

  7. Konfigurieren Sie die Text-Eigenschaft der drei Bezeichnungen wie folgt:

    • Titel:

      "Unit: "&ThisItem.Unit
      

      Screenshot des Titeltexts

    • Untertitel:

      "Area: "&ThisItem.Area&"cm²"
      

      Screenshot des Untertiteltexts.

    • Body:

      "Height: "&ThisItem.Height&"cm"
      

      Screenshot des Textkörpers.

  8. Fügen wir ein Symbol " Neu laden " hinzu, damit benutzer die Maße wiederholen können, wenn sie nicht zufrieden sind. Erweitern Sie auf der Registerkarte "Einfügen " das Dropdownmenü "Symbole ", und wählen Sie das Symbol " Neu laden " aus.

    Screenshot des Hinzufügens eines Neuladesymbols.

  9. Positionieren Sie das Symbol wie im Bild dargestellt, und konfigurieren Sie die OnSelect-Eigenschaft wie folgt:

    UpdateContext({galleryvisible:false});
    

    Screenshot der Konfiguration von OnSelect für das Symbol

    Tipp

    Sie können die Schriftart, den Schriftgrad und den Schriftschnitt an den Entwurf Ihrer Anwendung anpassen. Um eine bessere Benutzererfahrung zu erzielen, behalten Sie jedoch eine einheitliche Schriftart in der gesamten Anwendung bei.

  10. Sobald die Komponente In MR messen vollständig konfiguriert ist, wechseln wir zur räumlichen Filterung. Hier filtern wir die Produkte nach den Werten Breite, Tiefe und Höhe, die in der Messung in der MR-Sitzung empfangen wurden.

    Navigieren Sie zur Seite " Produkte ", und konfigurieren Sie dann die Items-Eigenschaft des Gallery_products wie folgt:

    If(
    ID = 1 And Measure_gallery.Selected.Height = 0,
    (Filter('Easy Sales',(ProductCategory = "Sofa") And ((Depth < Measure_gallery.Selected.BoundingDepth And Width < Measure_gallery.Selected.BoundingWidth) Or (Depth < Measure_gallery.Selected.BoundingWidth And Width < Measure_gallery.Selected.BoundingDepth)))),
    ID = 1 And Measure_gallery.Selected.Height > 0,
    (Filter('Easy Sales',(ProductCategory = "Sofa") And ((Depth < Measure_gallery.Selected.BoundingDepth And Width < Measure_gallery.Selected.BoundingWidth And Height <= Measure_gallery.Selected.Height) Or (Depth < Measure_gallery.Selected.BoundingWidth And Width < Measure_gallery.Selected.BoundingDepth And Height <= Measure_gallery.Selected.Height)))),
    ID = 1,
    Filter('Easy Sales',ProductCategory = "Sofa"), 
    
    ID = 2,
    Filter('Easy Sales',ProductCategory = "Chair"), 
    ID = 2 And Measure_gallery.Selected.Height = 0,
    (Filter('Easy Sales',(ProductCategory = "Chair") And ((Depth < Measure_gallery.Selected.BoundingDepth And Width < Measure_gallery.Selected.BoundingWidth) Or (Depth < Measure_gallery.Selected.BoundingWidth And Width < Measure_gallery.Selected.BoundingDepth)))),
    ID = 2 And Measure_gallery.Selected.Height > 0,
    (Filter('Easy Sales',(ProductCategory = "Chair") And ((Depth < Measure_gallery.Selected.BoundingDepth And Width < Measure_gallery.Selected.BoundingWidth And Height <= Measure_gallery.Selected.Height) Or (Depth < Measure_gallery.Selected.BoundingWidth And Width < Measure_gallery.Selected.BoundingDepth And Height <= Measure_gallery.Selected.Height)))),
    
    ID = 3,
    Filter('Easy Sales',ProductCategory = "Table"),
    ID = 3 And Measure_gallery.Selected.Height = 0,
    (Filter('Easy Sales',(ProductCategory = "Table") And ((Depth < Measure_gallery.Selected.BoundingDepth And Width < Measure_gallery.Selected.BoundingWidth) Or (Depth < Measure_gallery.Selected.BoundingWidth And Width < Measure_gallery.Selected.BoundingDepth)))),
    ID = 3 And Measure_gallery.Selected.Height > 0,
    (Filter('Easy Sales',(ProductCategory = "Table") And ((Depth < Measure_gallery.Selected.BoundingDepth And Width < Measure_gallery.Selected.BoundingWidth And Height <= Measure_gallery.Selected.Height) Or (Depth < Measure_gallery.Selected.BoundingWidth And Width < Measure_gallery.Selected.BoundingDepth And Height <= Measure_gallery.Selected.Height))))
    )
    

    Screenshot der Konfiguration von Elementen in Sofas.

    Von Bedeutung

    Geben Sie geeignete Namen für die SharePoint-Liste und den Katalog an, um in Zukunft Fehler zu vermeiden. Bewahren Sie die Namen der Komponenten in den Formeln auf, um Verwirrung zu vermeiden.

    Hinweis

    Die räumliche Filterung ist für die Seite "Teppiche " nicht enthalten, da ein weiteres für das Produkt spezifisches Feature hinzugefügt wird. Die in der Measure in MR-Sitzung gemessene Fläche wird verwendet, um den Preis des ausgewählten Teppichs zu schätzen.

    Tipp

    Speichern Sie Ihre Anwendung häufig, indem Sie oben die Registerkarte "Datei " und dann die Option " Speichern " auswählen. Wenn Sie dazu aufgefordert werden, wählen Sie die Cloudoption und dann " Speichern" aus.

Berechnen des Preises basierend auf der Fläche

  1. Wechseln Sie zur Carpet_details Seite, fügen Sie dann eine Bezeichnung hinzu, und benennen Sie sie dann Area_carpets um.

    Screenshot des Hinzufügens der Bereichsbezeichnung

  2. Fügen Sie neben der bezeichnung Area_carpets eine weitere leere Bezeichnung hinzu, und konfigurieren Sie dann die Text-Eigenschaft der leeren Bezeichnung wie folgt, um den berechneten Bereich anzuzeigen:

    Measure_gallery.Selected.Area&"cm²"
    

    Screenshot der Flächenberechnung.

  3. Konfigurieren Sie die Bezeichnung neben der Preisbezeichnung wie folgt, um den berechneten Preis anzuzeigen:

    "$"&Measure_gallery.Selected.Area * content_carpets.'Price/cm2'
    

    Screenshot der Preisberechnung.

Nach der Implementierung der obigen Schritte filtert Ihre Anwendung Produkte räumliche aus und berechnet den genauen Preis für die Teppiche basierend auf Ihren realen Messungen.

Animation der Anwendungsdemo nach der Implementierung von Maßnahmen in MR und räumlicher Filterung.