Formuliergegevensmodel maken voor interactieve communicatie
Deze zelfstudie is een stap in de serie Maak uw eerste interactieve communicatiemodellen. U wordt aangeraden de reeks in chronologische volgorde te volgen om het volledige gebruik van de zelfstudie te begrijpen, uit te voeren en aan te tonen.
Met de AEM Forms-module voor gegevensintegratie kunt u een formuliergegevensmodel maken op basis van verschillende bronnen van back-endgegevens, zoals AEM gebruikersprofiel, RESTful-webservices, SOAP-webservices, OData-services en relationele databases. U kunt gegevensmodelobjecten en -services configureren in een formuliergegevensmodel en deze koppelen aan een adaptief formulier. Adaptieve formuliervelden zijn gebonden aan objecteigenschappen van gegevensmodellen. Met deze services kunt u het adaptieve formulier vooraf invullen en verzonden formuliergegevens terugschrijven naar het gegevensmodelobject.
Zie AEM Forms Data Integration voor meer informatie over de integratie van formuliergegevens en het formuliergegevensmodel.
Deze zelfstudie begeleidt u door de stappen om een formuliergegevensmodel voor te bereiden, te maken, te configureren en aan een interactieve communicatie te koppelen. Aan het einde van deze zelfstudie kunt u het volgende doen:
Het formuliergegevensmodel ziet er ongeveer als volgt uit:
A. Gevormde gegevensbronnen B. Gegevensbronschema's C. Available de modelvoorwerpen D. Data E. Configured de diensten
Voordat u begint, moet u het volgende doen:
Een gegevensbestand is essentieel om een Interactieve Mededeling tot stand te brengen. Deze zelfstudie gebruikt een database voor het weergeven van het formuliergegevensmodel en persistentiemogelijkheden van interactieve communicatie. Opstelling een gegevensbestand dat klant, rekeningen, en vraaglijsten bevat.
De volgende afbeelding illustreert voorbeeldgegevens voor de klantentabel:
Gebruik de volgende verklaring DDL om de klant lijst in gegevensbestand tot stand te brengen.
CREATE TABLE `customer` (
`mobilenum` int(11) NOT NULL,
`name` varchar(45) NOT NULL,
`address` varchar(45) NOT NULL,
`alternatemobilenumber` int(11) DEFAULT NULL,
`relationshipnumber` int(11) DEFAULT NULL,
`customerplan` varchar(45) DEFAULT NULL,
PRIMARY KEY (`mobilenum`),
UNIQUE KEY `mobilenum_UNIQUE` (`mobilenum`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
Gebruik de volgende verklaring DDL om de rekeningen lijst in gegevensbestand tot stand te brengen.
CREATE TABLE `bills` (
`billplan` varchar(45) NOT NULL,
`latepayment` decimal(4,2) NOT NULL,
`monthlycharges` decimal(4,2) NOT NULL,
`billdate` date NOT NULL,
`billperiod` varchar(45) NOT NULL,
`prevbal` decimal(4,2) NOT NULL,
`callcharges` decimal(4,2) NOT NULL,
`confcallcharges` decimal(4,2) NOT NULL,
`smscharges` decimal(4,2) NOT NULL,
`internetcharges` decimal(4,2) NOT NULL,
`roamingnational` decimal(4,2) NOT NULL,
`roamingintnl` decimal(4,2) NOT NULL,
`vas` decimal(4,2) NOT NULL,
`discounts` decimal(4,2) NOT NULL,
`tax` decimal(4,2) NOT NULL,
PRIMARY KEY (`billplan`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
Gebruik de volgende verklaring DDL om de call lijst in gegevensbestand tot stand te brengen.
CREATE TABLE `calls` (
`mobilenum` int(11) DEFAULT NULL,
`calldate` date DEFAULT NULL,
`calltime` varchar(45) DEFAULT NULL,
`callnumber` int(11) DEFAULT NULL,
`callduration` varchar(45) DEFAULT NULL,
`callcharges` decimal(4,2) DEFAULT NULL,
`calltype` varchar(45) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8
De call lijst omvat de vraagdetails zoals vraagdatum, vraagtijd, vraagaantal, vraagduur, en vraaglasten. De klant lijst is verbonden met de vraaglijst gebruikend het Mobiele gebied van het Aantal (mobilenum). Voor elk mobiel aantal dat in klant lijst wordt vermeld, zijn er veelvoudige verslagen in vraag lijst. Bijvoorbeeld, kunt u de vraagdetails voor 1457892541 mobiel aantal terugwinnen door naar vraag lijst te verwijzen.
De tabel rekeningen bevat de gegevens van de factuur, zoals de datum van de rekening, de factuurperiode, de maandelijkse kosten en de kosten van de oproep. De tabel customer is gekoppeld aan de tabel rekeningen met behulp van het veld Bill Plan. In de tabel customer is aan elke klant een abonnement gekoppeld. De rekeningen lijst omvat de prijsdetails voor alle bestaande plannen. Bijvoorbeeld, kunt u de plandetails voor Sarah van klant lijst terugwinnen en die details gebruiken om prijsdetails van rekeningen lijst terug te winnen.
U kunt verschillende typen gegevensbronnen configureren om een formuliergegevensmodel te maken. Voor dit leerprogramma, zult u het gegevensbestand vormen MySQL dat met steekproefgegevens wordt gevormd en bevolkt. Voor informatie over andere gesteunde gegevensbronnen en hoe te om hen te vormen, zie de Integratie van Gegevens van AEM Forms.
Ga als volgt te werk om uw MySQL-database te configureren:
Installeer het JDBC-stuurprogramma voor MySQL-database als een OSGi-bundel:
MySQL-database configureren als gegevensbron:
Ga naar AEM webconsole op http://localhost:4502/system/console/configMgr.
Zoek Apache Sling Connection Pooled DataSource configuratie. Tik om de configuratie te openen in de bewerkingsmodus.
Geef in het dialoogvenster Configuratie de volgende gegevens op:
jdbc:mysql://[server]:3306/teleca?autoReconnect=true&useUnicode=true&characterEncoding=utf-8
Laat andere eigenschappen standaard waarden en tik Save.
Er wordt een configuratie gemaakt die lijkt op de volgende configuratie.
AEM Forms biedt een intuïtieve gebruikersinterface voor het maken van een formuliergegevensmodus🔗l op basis van geconfigureerde gegevensbronnen. U kunt meerdere gegevensbronnen gebruiken in een formuliergegevensmodel. Voor het gebruiksgeval in deze zelfstudie, zult u MySQL als gegevensbron gebruiken.
Ga als volgt te werk om het formuliergegevensmodel te maken:
Navigeer in AEM auteurinstantie naar Forms > Gegevensintegratie.
Tik Maken > Formuliergegevensmodel.
Geef in de wizard Formuliergegevensmodel maken een naam op voor het formuliergegevensmodel. Bijvoorbeeld FDM_Create_First_IC. Tik Volgende.
Het uitgezochte scherm van gegevensbron maakt een lijst van alle gevormde gegevensbronnen. Selecteer MySQL gegevensbron en tik Create.
Klik Done. Het gegevensmodel FDM_Create_First_IC wordt gemaakt.
Het formuliergegevensmodel configureren omvat:
Navigeer bij AEM auteurinstantie naar Forms > Gegevensintegratie. De standaard-URL is http://localhost:4502/aem/forms.html/content/dam/formsanddocuments-fdm.
Het FDM_Create_First_IC model van formuliergegevens dat u eerder hebt gemaakt, wordt hier weergegeven. Selecteer het en tik Edit.
De geselecteerde gegevensbron MySQL wordt getoond in Gegevensbronnen ruit.
Vouw de gegevensbronstructuur MySQL uit. Selecteer de volgende gegevensmodelvoorwerpen en de diensten van teleca schema:
Objecten gegevensmodel:
Services:
Tik op Geselecteerde objecten toevoegen om geselecteerde gegevensmodelobjecten en -services toe te voegen aan het formuliergegevensmodel.
De rekeningen, de vraag, en de objecten van het klantengegevensmodel worden getoond in de juiste ruit op Model tabel. De get- en updateservices worden weergegeven op het tabblad Services.
Een berekende eigenschap is de eigenschap waarvan de waarde wordt berekend op basis van een regel of expressie. Met behulp van een regel kunt u de waarde van een berekende eigenschap instellen op een letterlijke tekenreeks, een getal, het resultaat van een wiskundige expressie of de waarde van een andere eigenschap in het formuliergegevensmodel.
Gebaseerd op het gebruiksgeval, creeer usagelades kind gegevens verwerkte bezit in het rekeningen gegevensmodelvoorwerp gebruikend de volgende wiskundige uitdrukking:
gebruikskosten = gesprekskosten + gesprekskosten voor conferenties + sms-tarieven + mobiele internettarieven + roaming nationaal + roaming internationaal + VAS (al deze eigenschappen zijn te vinden in het factuurgegevensmodelobject)
Voor meer informatie over gebruiksheadingen kind gegevens verwerkte bezit, zie Plan de Interactieve Communicatie.
Voer de volgende stappen uit om berekende onderliggende eigenschappen voor het modelobject van rekeningen te maken:
Schakel het selectievakje boven aan het gegevensmodelobject rekeningen in om het te selecteren en op Onderliggende eigenschap maken te tikken.
In het deelvenster Onderliggende eigenschap maken:
Tik Regel bewerken om de Regeleditor te openen.
Tik Maken. Het Set Value regelvenster wordt geopend.
Selecteer Wiskundige expressie in het keuzemenu Optie selecteren.
Selecteer calllades en confcallloading in de wiskundige expressie als eerste respectievelijk als tweede objecten. Selecteer plus als exploitant. Tik binnen de wiskundige expressie en tik Expression uitbreiden om smaaklijnen, onderlinge koppelingen, roamingnational, roamingintnl en <a vas a 11/>-objecten naar de expressie.
De volgende afbeelding toont de wiskundige expressie in de regeleditor:
Tik Done. De regel wordt gecreeerd in de Redacteur van de Regel.
Tik Close om het venster van de Redacteur van de Regel te sluiten.
Nadat de gegevensmodelobjecten zijn gedefinieerd, kunt u koppelingen tussen deze objecten maken. De koppeling kan een-op-een of een-op-een zijn. Bijvoorbeeld, kunnen er veelvoudige gebiedsdelen verbonden aan een werknemer zijn. Het wordt bedoeld als één-aan-vele vereniging en afgebeeld door 1:n op de lijn die bijbehorende voorwerpen van het gegevensmodel verbindt. Nochtans, als een vereniging een unieke werknemersnaam voor een bepaalde werknemersidentiteitskaart terugkeert, wordt het bedoeld als één-op-één vereniging.
Wanneer u gekoppelde gegevensmodelobjecten in een gegevensbron toevoegt aan een formuliergegevensmodel, blijven de koppelingen behouden en worden ze weergegeven als verbonden door pijllijnen.
Op basis van het gebruiksgeval kunt u de volgende koppelingen maken tussen de gegevensmodelobjecten:
Associatie | Gegevensmodelobjecten |
---|---|
1:n | klant:vraag (De veelvoudige vraag kan met een klant in een maandelijkse rekening worden geassocieerd) |
1:1 | klant:rekeningen (één rekening wordt geassocieerd met een klant voor een bepaalde maand) |
Voer de volgende stappen uit om koppelingen te maken tussen gegevensmodelobjecten:
Schakel het selectievakje boven aan het gegevensmodelobject customer in om het te selecteren en op Add Association te tikken. Het Add de bezitsruit van de Vereniging opent.
In voeg Vereniging ruit toe:
In het dialoogvenster Argument toevoegen:
Selecteer mobilenum in de vervolgkeuzelijst Naam. De eigenschap mobile number is een algemene eigenschap die beschikbaar is in de klant en die gegevensmodelobjecten aanroept. Dientengevolge, wordt het gebruikt om een verband tussen klant tot stand te brengen en de voorwerpen van het gegevensmodel te roepen.
Voor elk mobiel aantal beschikbaar in het modelvoorwerp van klantengegevens, zijn er veelvoudige vraagverslagen beschikbaar in de vraaglijst.
Geef een optionele titel en beschrijving voor het argument op.
Selecteer klant in de vervolgkeuzelijst Binding aan.
Selecteer mobilenum in de vervolgkeuzelijst Bindingswaarde.
Tik Toevoegen.
De eigenschap mobilenum wordt weergegeven in de sectie Argumenten.
Tik Done om een koppeling van 1:n tussen klant en aanroepende gegevensmodelobjecten te maken.
Zodra u een vereniging tussen klant en vraag de modelvoorwerpen van gegevens hebt gecreeerd, creeer een 1:1 vereniging tussen de klant en de modelvoorwerpen van rekeningen.
Schakel het selectievakje boven aan het gegevensmodelobject customer in om het te selecteren en op Add Association te tikken. Het Add de bezitsruit van de Vereniging opent.
In voeg Vereniging ruit toe:
Geef een titel op voor de koppeling. Het is een optioneel veld.
Selecteer Een naar een in de vervolgkeuzelijst Type.
Selecteer facturen in de vervolgkeuzelijst Model Object.
Selecteer get in de vervolgkeuzelijst Service. De eigenschap billplan, de primaire sleutel voor de tabel met facturen, is al beschikbaar in de sectie Argumenten.
De rekeningen en de objecten van het klantengegevensmodel zijn verbonden gebruikend billplan (rekeningen) en klant (klant) eigenschappen. Creeer een band tussen deze eigenschappen om de plandetails voor om het even welke klant terug te winnen beschikbaar in het gegevensbestand MySQL.
Selecteer klant in de vervolgkeuzelijst Binding aan.
Selecteer customerplan in de vervolgkeuzelijst Binding Value.
Tik Done om een binding te maken tussen de eigenschappen billplan en customerplan.
In de volgende afbeelding ziet u de koppelingen tussen de gegevensmodelobjecten en de eigenschappen die worden gebruikt om koppelingen tussen deze objecten te maken:
Nadat het creëren van verbindingen tussen de klant en andere voorwerpen van het gegevensmodel, geef de klanteneigenschappen uit om het bezit te bepalen dat wordt gebaseerd waarop de gegevens van het voorwerp van het gegevensmodel worden teruggewonnen. Gebaseerd op het gebruiksgeval, wordt het mobiele aantal gebruikt als bezit om gegevens van het voorwerp van het klantengegevensmodel terug te winnen.
Schakel het selectievakje boven aan het gegevensmodelobject customer in om het te selecteren en op Eigenschappen bewerken te tikken. Het deelvenster Eigenschappen bewerken wordt geopend.
Geef klant op als het Model op hoofdniveau.
Selecteer get in de vervolgkeuzelijst Leesservice.
In de sectie Argumenten:
Selecteer update in de vervolgkeuzelijst Write Service.
In de sectie Argumenten:
Tik Done om de eigenschappen op te slaan.
Schakel het selectievakje boven aan het gegevensmodelobject call in om het te selecteren en op Eigenschappen bewerken te tikken. Het deelvenster Eigenschappen bewerken wordt geopend.
Schakel het Model op hoogste niveau voor oproepen gegevensmodelobject uit.
Tik Done.
Herhaal stap 8 - 10 om de eigenschappen voor rekeningen gegevensmodelobject te configureren.
Ga naar Services tabel.
Selecteer de get service en tik Eigenschappen bewerken. Het deelvenster Eigenschappen bewerken wordt geopend.
In Eigenschappen bewerken deelvenster:
Selecteer de update-service en tik Eigenschappen bewerken. Het deelvenster Eigenschappen bewerken wordt geopend.
In Eigenschappen bewerken deelvenster:
U kunt het gegevensmodelobject en de services testen om te controleren of het formuliergegevensmodel correct is geconfigureerd.
Voer de volgende handelingen uit om de test uit te voeren:
Ga naar het tabblad Model, selecteer het klant gegevensmodelobject en tik Testmodelobject.
Selecteer Modelobject lezen in de vervolgkeuzelijst Model/service selecteren in het venster Formuliergegevensmodel testen.
Geef in de sectie Invoer een waarde op voor de eigenschap mobilenum die bestaat in de geconfigureerde MySQL-database en tik Test.
De klantgegevens die aan de opgegeven eigenschap mobileEnum zijn gekoppeld, worden opgehaald en weergegeven in de sectie Uitvoer, zoals hieronder wordt weergegeven. Sluit het dialoogvenster.
Ga naar Services tabel.
Selecteer de get service en tik Testservice.
Geef in de sectie Invoer een waarde op voor de eigenschap mobilenum die bestaat in de geconfigureerde MySQL-database en tik Test.
De klantgegevens die aan de opgegeven eigenschap mobileEnum zijn gekoppeld, worden opgehaald en weergegeven in de sectie Uitvoer, zoals hieronder wordt weergegeven. Sluit het dialoogvenster.
Met de formuliergegevensmodeleditor kunt u voorbeeldgegevens genereren voor alle eigenschappen van gegevensmodelobjecten, inclusief berekende eigenschappen, in een formuliergegevensmodel. Het is een reeks willekeurige waarden die met het gegevenstype voldoen dat voor elk bezit wordt gevormd. U kunt ook gegevens bewerken en opslaan. Deze blijven behouden, zelfs als u de voorbeeldgegevens opnieuw genereert.
Voer de volgende handelingen uit om voorbeeldgegevens te genereren, te bewerken en op te slaan:
Tik op de pagina van het formuliergegevensmodel op Voorbeeldgegevens bewerken. De voorbeeldgegevens worden gegenereerd en weergegeven in het venster Voorbeeldgegevens bewerken.
Bewerk in het venster Voorbeeldgegevens bewerken de vereiste gegevens en tik Opslaan. Sluit het venster.