Een modelgestuurde app maken of bewerken
Doel
Een modelgestuurde app bouwen — een app met een naam die een gekozen set tabellen, Studio-schermen en rapporten van de omgeving groepeert in een navigatie (siteoverzicht) met een startpagina, klaar om door een gebruiker in de Platformshell te worden geopend — of de naam, de navigatie of de startpagina van een bestaande app wijzigen.
Vereisten
- Je bent aangemeld met een makerrol (of de rol van platformbeheerder).
- De tabellen die de app gaat tonen, bestaan al in de omgeving (zie Een tabel maken), en dat geldt ook voor Studio-schermen (Een Studio-app tekenen) of rapporten (Een rapport maken) die je in de navigatie wilt.
- Je kent het voorvoegsel van de uitgever die eigenaar is (bijvoorbeeld
par). De logische naam van de app moet met dat voorvoegsel beginnen.
Stappen
- Kies in de linkerzijbalk met de omgevings- en oplossingskiezers de omgeving waarin je werkt
en de oplossing waartoe de app behoort. Het voorvoegsel van de uitgever die eigenaar is,
verschijnt eronder (bijvoorbeeld
par_); de app krijgt dat als naamruimte. - Open Apps in de navigatie van de zijbalk. De pagina toont de apps van de omgeving als lijst.
- Selecteer Nieuw om een app te maken, of selecteer de rij van een bestaande app en daarna Bewerken om die te wijzigen. In beide gevallen opent aan de zijkant van het scherm een deelvenster met de gegevens van de app.
- Voer een weergavenaam in (bijvoorbeeld
Sales). - Voer voor een nieuwe app een logische naam in die met het voorvoegsel van de uitgever begint —
bijvoorbeeld
par_sales_app. Bij het bewerken van een bestaande app wordt de logische naam getoond, maar kan hij niet worden gewijzigd. - Voer desgewenst een beschrijving in (getoond op de starttegel van de app) en een pictogramsleutel.
- Bouw de navigatie van de app. Elke navigatiegroep heeft een titel, en daaronder een rij knoppen — één per soort bestemming: Tabel aan navigatie toevoegen, Rapport aan navigatie toevoegen en Scherm aan navigatie toevoegen. Elke knop opent een doorzoekbare lijst van die soort; typ om te verfijnen op de naam die je de bestemming hebt gegeven of op de logische naam, en selecteer er dan een om hem te plaatsen. Een knop verschijnt alleen als de omgeving iets heeft om erin te zetten, dus een omgeving zonder rapporten toont geen rapportknop. Elk geplaatst item kan een optioneel aangepast label en pictogram krijgen, en kan worden verwijderd. Om de items in een groep in een andere volgorde te zetten, sleep je een rij aan de greep aan de beginrand — de volgorde waarin je ze achterlaat, is de volgorde die de navigatie van de app toont. Zonder muis: zet de focus op de greep, druk op Space om de rij op te pakken, op de pijltoetsen om hem te verplaatsen en nogmaals op Space om hem neer te zetten. Selecteer Groep toevoegen om nog een navigatiegroep toe te voegen.
- Kies desgewenst welke formulieren en weergaven deze app aanbiedt voor een geplaatste tabel — zie Kiezen wat de app voor een tabel aanbiedt hieronder. Onder de naam van elke geplaatste tabel staat wat de app nu aanbiedt ("3 formulieren · 2 weergaven", of "2 van 5 formulieren" zodra je een lijst hebt ingeperkt), en de knop met de schuifregelaars opent de keuze. De rij van een dashboard en die van een rapport zeggen in plaats daarvan welke van de drie ze zijn, en hebben geen schuifregelaarknop: geen van beide heeft formulieren of weergaven om uit te kiezen.
- Kies de startpagina van de app — wat opent wanneer een gebruiker de app start, en waar het item Start van de navigatiebalk naartoe gaat. Dat kan een tabel zijn, een Studio-scherm of een rapport, en de lijst biedt alleen aan wat je in de navigatie hebt geplaatst. Een scherm hier is de manier om een app te laten openen met live cijfers in plaats van een raster met rijen.
- Selecteer App toevoegen (of Opslaan, bij het bewerken). Het deelvenster sluit en de lijst wordt vernieuwd met je wijzigingen.
- Geef de app aan de mensen die hem gaan gebruiken. Hem bouwen is hem niet delen: een nieuwe app is zichtbaar voor makers en beheerders en voor niemand anders. Selecteer de rij van de app en daarna Delen — zie Een app geven aan de mensen die hem gaan gebruiken.
Schermen en rapporten in een app
Een navigatie-item is een bestemming, en er zijn drie soorten:
- Een tabel opent haar lijst, en de records, weergaven en formulieren erachter.
- Een Studio-scherm neemt het hele inhoudsgebied in — wat je hebt getekend, is het scherm.
- Een rapport opent de rapportviewer over de hele tabel, klaar om af te drukken. (Een rapport dat wordt uitgevoerd vanaf het formulier van een record of de opdrachtbalk van een weergave, neemt dat record of dat filter mee; een rapport dat vanuit de navigatie wordt geopend niet, omdat er niets op het scherm staat om mee te nemen.)
Elk heeft een eigen adres, dus elk ervan kan als bladwijzer worden opgeslagen, gedeeld, vernieuwd en
vastgemaakt: /apps/{app}/{table}, /apps/{app}/dashboard/{name}, /apps/{app}/report/{name}.
Wie er een mag openen, is een machtiging. Een scherm openen en een rapport uitvoeren zijn rechten die een beveiligingsrol heeft, net als elke andere machtiging. Een gebruiker zonder dat recht ziet het item in de navigatiebalk en krijgt te horen dat hij het niet mag openen, in plaats van de cijfers van iemand anders te zien. Daarnaast wordt alles wat een scherm en de gegevenssets van een rapport lezen, gefilterd op de eigen recordmachtigingen van de lezer — dus twee mensen die hetzelfde scherm openen, zien elk de records die ze mogen zien.
Het platform bood vroeger een dashboard — een raster met KPI-, grafiek- en weergavewidgets — als vierde soort bestemming, en de Application Studio heeft dat vervangen: een getekend scherm doet alles wat een dashboard deed, en het is het canvas dat je al aan het leren bent. Er is dus geen lijst Dashboards, geen dashboardontwerper en geen knop Dashboard toevoegen. Een app die er al een noemt, opent het nog steeds en de machtiging ervan geldt nog steeds — er is niets aan wat is opgeslagen veranderd — maar een nieuw dashboard wordt getekend als Studio-scherm. Zie Een Studio-app tekenen.
Kiezen wat de app voor een tabel aanbiedt
Een tabel verzamelt in de loop van haar leven formulieren en weergaven — een beheerdersformulier naast het formulier dat een verkoper gebruikt, een weergave "Mijn openstaande items" die maar voor één team telt. Een app die ze allemaal toont, is hoe een nette tabel een rommelige app wordt.
Selecteer de schuifregelaarknop op de rij van een geplaatste tabel (Formulieren en weergaven voor tabel) om de keuze te openen. Elke lijst is een van beide:
- Elk formulier van deze tabel, ook later toegevoegde — de app volgt de tabel. Een formulier dat je morgen aan de tabel toevoegt, verschijnt automatisch in deze app.
- Alleen de hieronder geselecteerde — een vaste keuze. Een formulier dat daarna aan de tabel wordt toegevoegd, verschijnt niet in deze app totdat je terugkomt en het aanvinkt.
Dat verschil is het hele punt van beide hebben, en het is niet hetzelfde als elk vakje aanvinken: een maker die de formulieren van een app heeft samengesteld, wil zelden dat het volgende formulier onaangekondigd opduikt, en een maker die niets heeft samengesteld, wil dat altijd. Als je overschakelt naar Alleen de geselecteerde, begint alles aangevinkt, zodat je weghaalt wat je niet wilt in plaats van de lijst opnieuw op te bouwen.
Alles uitvinken verbergt de tabel niet — een tabel zonder formulier zou niet kunnen worden geopend — dus het wordt opgeslagen als "elk", en het dialoogvenster zegt dat zolang je in die toestand bent.
De selectie bepaalt welke formulieren en weergaven de app aanbiedt, niet de volgorde waarin ze verschijnen of welke als eerste opent. Die blijven van de tabel zelf.
De aantallen onder de naam van de tabel zeggen in welke toestand ze is zonder het dialoogvenster te openen: 3 formulieren · 2 weergaven is een tabel die de app volgt, en 2 van 5 formulieren is een lijst die je hebt afgesloten.
Een lange navigatie in gebieden verdelen
Naast de titel van elke groep staat een vak gebied. Geef groepen hetzelfde gebied — Receptie voor Boekingen en Klanten, Instellingen voor de configuratie — en zodra twee of meer gebieden een naam hebben, toont de navigatie van de app één gebied tegelijk, met een wisselaar onderaan. Laat het vak leeg voor een groep die elk gebied moet tonen, zoals een startpagina of Vandaag. Zonder gebieden verandert de navigatie niet.
Wat er achter de schermen gebeurt
De app wordt opgeslagen als metagegevens die bij deze omgeving horen en het voorvoegsel van de uitgever als naamruimte hebben, als onderdeel van de geselecteerde oplossing. De navigatie verwijst naar elke bestemming via soort en naam; het platform controleert vóór het opslaan of elke tabel, elk dashboard en elk rapport waarnaar wordt verwezen bestaat — in de opslag die bij die soort hoort — en of de startpagina een van de eigen bestemmingen van de navigatie is. De app zelf bevat geen gegevens: ze is een samengestelde weergave op de onderdelen van de omgeving.
Problemen oplossen
- "… must be lower snake-case and start with the publisher prefix." — de logische naam moet
beginnen met
{prefix}_en mag alleen kleine letters, cijfers en onderstrepingstekens bevatten. - "Entity … is not defined in this environment." — een tabel in de navigatie bestaat niet in deze omgeving; maak eerst de tabel, of haal haar uit de navigatie.
- "Dashboard … is not defined in this environment." (of Report …) — de navigatie noemt er een dat is verwijderd of hier nooit is geïmporteerd. Bouw het, importeer het of verwijder het item.
- "The home page … must appear in the app's navigation." — kies een startpagina die je aan de navigatie hebt toegevoegd. Een startpagina waar niemand naar terug kan navigeren, is een scherm zonder ingang zodra de gebruiker ergens anders heeft geklikt.
- "An app named … already exists in this environment." — kies een andere logische naam; logische namen van apps zijn uniek binnen een omgeving.
- "You do not have permission to open the dashboard …" (of … run the report …) — de
bestemming bestaat, maar je beveiligingsrol heeft er geen recht op. Een beheerder kent
<name>.Opentoe voor een dashboard of<name>.Runvoor een rapport, of het jokerteken*.Open/*.Runvoor alles wat hierna wordt gebouwd. - "Form … is not defined on entity …" (of View …) — de app selecteert een formulier of weergave die de tabel niet meer heeft, meestal omdat die na het bouwen van de app is hernoemd of verwijderd. Open het dialoogvenster Formulieren en weergaven van de tabel en vink de huidige aan.
- Een formulier dat ik aan een tabel heb toegevoegd, verschijnt niet in een app. — die app selecteert specifieke formulieren, dus een nieuw formulier is pas opgenomen als je het toevoegt. De rij zegt dan "2 van 5 formulieren" in plaats van een gewoon aantal. Open de app, selecteer de knop Formulieren en weergaven van de tabel en vink het nieuwe formulier aan, of zet de lijst terug op elk formulier van deze tabel.
Gerelateerde scenario's
- Een app geven aan de mensen die hem gaan gebruiken.
- Een tabel maken.
- Een formulier maken.
- Een weergave maken.
- Een rapport maken.