Aangepast formulier integreren met database via AEM workflow submit-forms-to-database-using-forms-portal

Met AFCS (automatede form conversion Service) kunt u een niet-interactief PDF-formulier, een Acro-formulier of een XFA-formulier converteren naar een adaptief formulier. Tijdens het starten van het conversieproces kunt u een adaptief formulier genereren, met of zonder gegevensbindingen.

Als u een adaptief formulier wilt genereren zonder gegevensbindingen, kunt u het geconverteerde adaptieve formulier na conversie integreren met een formuliergegevensmodel, XML-schema of JSON-schema. Voor het formuliergegevensmodel moet u adaptieve formuliervelden handmatig binden met het formuliergegevensmodel. Als u echter een adaptief formulier genereert met gegevensbindingen, koppelt de conversieservice de adaptieve formulieren automatisch aan een JSON-schema en wordt een gegevensbinding gemaakt tussen de velden die beschikbaar zijn in het adaptieve formulier en het JSON-schema. Vervolgens kunt u het aangepaste formulier integreren met een door u gewenste database, gegevens in het formulier invullen en naar de database verzenden. Op dezelfde manier kunt u, nadat u de integratie met de database hebt voltooid, velden in het geconverteerde adaptieve formulier configureren om waarden op te halen uit de database en aangepaste formuliervelden vooraf invullen.

In de volgende afbeelding ziet u de verschillende fasen van het integreren van een geconverteerd adaptief formulier in een database:

gegevensbestandintegratie

In dit artikel worden de stapsgewijze instructies beschreven om al deze integratiefasen met succes uit te voeren.

Voorwaarden pre-requisites

  • Een AEM 6.4- of 6.5-auteurinstantie instellen
  • Installeer recentste de dienstpakvoor uw AEM instantie
  • Laatste versie van het AEM Forms-invoegpakket
  • Vorm de dienst van de Automatede form conversion
  • Stel een database in. De database die wordt gebruikt in de voorbeeldimplementatie is MySQL 5.6.24. U kunt het geconverteerde adaptieve formulier echter integreren met elke gewenste database.

Monster van adaptief formulier sample-adaptive-form

Als u geconverteerde adaptieve formulieren met een AEM workflow wilt integreren in de database, downloadt u het volgende voorbeeldbestand voor de PDF.

U kunt het voorbeeld van het contactformulier downloaden met:

Bestand ophalen

Het PDF-bestand fungeert als invoer voor de AFCS-service (Automatede form conversion Service). De service converteert dit bestand naar een adaptief formulier. De volgende afbeelding toont de voorbeeldcontactgegevens van een formulier in PDF-indeling.

de vorm van de de toepassingstoepassing van de steekproeflening

Het bestand mysql-connector-java-5.1.39-bin.jar installeren install-mysql-connector-java-file

Voer de volgende stappen uit, op alle auteur- en publicatieinstanties, om het bestand mysql-connector-java-5.1.39-bin.jar te installeren:

  1. Ga naar http://server:port/system/console/depfinder en zoek naar het pakket com.mysql.jdbc.
  2. Controleer in de kolom Geëxporteerd door of het pakket wordt geëxporteerd door een willekeurige bundel. Ga door als het pakket niet door enige bundel wordt uitgevoerd.
  3. Ga naar http://server:port/system/console/bundles en klik op Install/Update .
  4. Klik op Choose File en blader naar het bestand mysql-connector-java-5.1.39-bin.jar en selecteer dit. Selecteer ook de selectievakjes Start Bundle en Refresh Packages .
  5. Klik op Install of Update . Start de server opnieuw als de bewerking is voltooid.
  6. (Alleen Windows) Schakel de systeemfirewall van uw besturingssysteem uit.

Gegevens voorbereiden voor formuliermodel prepare-data-for-form-model

Met AEM Forms Data Integration kunt u verschillende gegevensbronnen configureren en verbinden. Nadat u een adaptief formulier hebt gegenereerd met behulp van het conversieproces, kunt u het formuliermodel definiëren op basis van een formuliergegevensmodel, XSD of een JSON-schema. U kunt een database, Microsoft Dynamics of een andere service van derden gebruiken om een formuliergegevensmodel te maken.

Deze zelfstudie gebruikt de MySQL-database als bron voor het maken van een formuliergegevensmodel. Creeer een schema in het gegevensbestand en voeg contactus lijst aan het schema toe dat op de gebieden wordt gebaseerd die in de adaptieve vorm beschikbaar zijn.

gegevens van de Steekproef mysql

U kunt de volgende verklaring gebruiken DDL om de contactus lijst in gegevensbestand tot stand te brengen.

CREATE TABLE `contactus` (
   `name` varchar(45) NOT NULL,
   `email` varchar(45) NOT NULL,
   `phonenumber` varchar(10) DEFAULT NULL,
   `issuedesc` varchar(1000) DEFAULT NULL,
   PRIMARY KEY (`email`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8

Verbinding tussen AEM instantie en database configureren configure-connection-between-aem-instance-and-database

Voer de volgende configuratiestappen uit om een verbinding tussen AEM instantie en het gegevensbestand tot stand te brengen MYSQL:

  1. Ga naar AEM webconsoleconfiguratiepagina op http://server:port/system/console/configMgr .

  2. Zoek en klik om Apache Sling Connection Pooled DataSource te openen in de bewerkingsmodus in de configuratie van de webconsole. Geef de waarden voor de eigenschappen op zoals in de volgende tabel wordt beschreven:

    table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2 7-row-2 8-row-2 9-row-2 10-row-2 11-row-2 12-row-2 13-row-2 14-row-2 15-row-2 html-authored
    Eigenschap Waarde
    Naam gegevensbron Een gegevensbronnaam voor het filtreren bestuurders van de gegevensbronpool.
    JDBC-stuurprogrammaklasse com.mysql.jdbc.Driver
    URI voor JDBC-verbinding jdbc//[host]:[poort]/[schema_name]
    Gebruikersnaam Een gebruikersnaam om handelingen voor databasetabellen te verifiëren en uit te voeren
    Wachtwoord Aan de gebruikersnaam gekoppeld wachtwoord
    Transactieisolatie READ_COMTED
    Max. actieve verbindingen 1000
    Max. aantal inactieve verbindingen 100
    Min. onbelaste verbindingen 10
    Oorspronkelijke grootte 10
    Max. wachttijd 100000
    Testen op lenen Ingeschakeld
    Testen tijdens inactiviteit Ingeschakeld
    Validatiezoekopdracht Voorbeelden zijn SELECT 1(mysql), select 1 vanuit dual (oracle), SELECT 1 (MS Sql Server) (validationQuery)
    Time-out voor validatiezoekopdracht 10000

Formuliergegevensmodel maken create-form-data-model

Nadat u MYSQL als gegevensbron hebt geconfigureerd, voert u de volgende stappen uit om een formuliergegevensmodel te maken:

  1. Navigeer in AEM auteurinstantie naar Forms > Data Integrations .

  2. Tik op Create > Form Data Model .

  3. In de Create Form Data Model tovenaar, specificeer workflow_submit als naam voor het model van vormgegevens. Tik op Next .

  4. Selecteer de MYSQL-gegevensbron die u in de vorige sectie hebt geconfigureerd en tik op Create .

  5. Tik Edit en breid de gegevensbron uit die in de linkerruit wordt vermeld om contactus lijst, get, en insert diensten te selecteren, en te tikken Add Selected.

    gegevens van de Steekproef mysql

  6. Selecteer het gegevensmodelobject in het rechterdeelvenster en tik op Edit Properties . Selecteer get en insert in de vervolgkeuzelijsten Read Service en Write Service . Geef de argumenten voor de leesservice op en tik op Done .

  7. Selecteer op het tabblad Services de service get en tik op Edit Properties . Selecteer de Output Model Object , schakel de Return array -toets uit en tik Done .

  8. Selecteer de service Insert en tik op Edit Properties . Selecteer Input Model Object en tik Done.

  9. Tik op Save om het formuliergegevensmodel op te slaan.

U kunt het model met voorbeeldformuliergegevens downloaden:

Bestand ophalen

Aangepaste formulieren genereren met JSON-binding generate-adaptive-forms-with-json-binding

Gebruik de dienst van de Automatede form conversion (AFCS) omde vorm van het Contact van Usin een adaptieve vorm met gegevensband om te zetten. Zorg ervoor dat u het selectievakje Generate adaptive form(s) without data bindings niet inschakelt tijdens het genereren van het adaptieve formulier.

Aangepaste vorm met band JSON

Selecteer de omgezette vorm van het Contact van het Contact beschikbaar in de output omslag in Forms & Documents en tikken Edit. Tik op Preview en geef waarden op in de aangepaste formuliervelden. Tik vervolgens op Submit .

Logon aan crx-bewaarplaats en navigeer aan /content/forms/fp/admin/submit/data om de voorgelegde waarden in formaat te bekijken JSON. Het volgende is de steekproefgegevens in formaat JSON wanneer u het omgezette Aangepaste vorm van het Contact van ons voorlegt:

{
  "afData": {
    "afUnboundData": {
      "data": {}
    },
    "afBoundData": {
      "data": {
        "name1": "Gloria",
        "email": "abc@xyz.com",
        "phone_number": "2346578965",
        "issue_description": "Test message"
      }
    },
    "afSubmissionInfo": {
      "computedMetaInfo": {},
      "stateOverrides": {},
      "signers": {},
      "afPath": "/content/dam/formsanddocuments/docs_conversion/output/sample_form_json",
      "afSubmissionTime": "20191204014007"
    }
  }
}

U moet nu een workflowmodel maken dat deze gegevens kan verwerken en verzenden naar de MYSQL-database met behulp van het formuliergegevensmodel dat u in de vorige secties hebt gemaakt.

Een workflowmodel maken voor het verwerken van JSON-gegevens create-workflow-model

Voer de volgende stappen uit om een workflowmodel te maken voor het verzenden van de adaptieve formuliergegevens naar de database:

  1. Open de console Workflowmodellen. De standaard-URL is https://server:port/libs/cq/workflow/admin/console/content/models.html/etc/workflow/models .

  2. Selecteer Create en vervolgens Create Model . Het dialoogvenster Add Workflow Model wordt weergegeven.

  3. Voer de opties Title en Name (optioneel) in. Bijvoorbeeld, workflow_json_submit. Tik op Done om het model te maken.

  4. Selecteer het workflowmodel en tik op Edit om het model te openen in de bewerkingsmodus. Tik op + en voeg Invoke Form Data Model Service -stap toe aan het workflowmodel.

  5. Tik de Invoke Form Data Model Service stap en de tikken vormen .

  6. Selecteer op het tabblad Form Data Model het formuliergegevensmodel dat u in het Form Data Model path -veld hebt gemaakt en selecteer insert in de vervolgkeuzelijst Service .

  7. In het Input for Service lusje, uitgezochte Provide input data using literal, variable, or a workflow metadata, and a JSON file van de drop-down lijst, selecteert Map input fields from input JSON checkbox, selecteert Relative to payload, en verstrekt data.xml als waarde voor het Select input JSON document using gebied.

  8. Geef in de sectie Service Arguments de volgende waarden op voor de argumenten van het formuliergegevensmodel:

    roept de ModelDienst van Gegevens van de Vorm aan

    Bericht dat de modelgebieden van vormgegevens, bijvoorbeeld, contactus puntnaam, aan afData.afBoundData.data.name1 in kaart wordt gebracht, die naar de JSON schemabindingen voor de voorgelegde adaptieve vorm verwijst.

Aangepaste formulierverzending configureren configure-adaptive-form-submission

Voer de volgende stappen uit om het aangepaste formulier te verzenden naar het workflowmodel dat u in de vorige sectie hebt gemaakt:

  1. Selecteer het geconverteerde contactformulier dat beschikbaar is in de map output in Forms & Documents en tik op Edit .

  2. Open adaptieve vormeigenschappen door te tikken Form Container en dan te tikken vormen .

  3. In de Submission sectie, selecteer Invoke an AEM workflow van de Submit Action drop-down lijst, selecteer het werkschemamodel dat u in de vorige sectie creeerde, en specificeer data.xml op het Data File Path gebied.

  4. Tik sparen om de eigenschappen te bewaren.

  5. Tik op Preview en geef waarden op in de aangepaste formuliervelden. Tik vervolgens op Submit . De voorgelegde waarden tonen nu in de MYSQL- gegevensbestandlijst in plaats van crx-bewaarplaats.

Aangepast formulier configureren om waarden vooraf in te vullen vanuit de database

Voer de volgende stappen uit om adaptief formulier te configureren voor het vooraf invullen van waarden uit de MYSQL-database op basis van de primaire sleutel die in de tabel is gedefinieerd (in dit geval per e-mail):

  1. Tik het E-mail gebied in de adaptieve vorm en tik regel uit.

  2. Tik Create en selecteer is changed in de vervolgkeuzelijst Select State in de sectie When .

  3. In de Then sectie, uitgezochte Invoke Service en krijgen als dienst voor het model van vormgegevens dat u in een vorige sectie van dit artikel hebt gecreeerd.

  4. Selecteer E-mail in de Input sectie en de rest drie gebieden van het model van vormgegevens, Naam, Aantal van de Telefoon, en Beschrijving van de Uitgave in de Output sectie. Tik op Done om de instellingen op te slaan.

    vorm Vooraf ingevulde Montages E-mail

    Op basis van bestaande e-mailgegevens in de MYSQL-database kunt u daarom de waarden voor de overige drie velden vooraf invullen in de modus Preview van het adaptieve formulier. Bijvoorbeeld, als u aya.tan@xyz.com op het E-mail gebied (dat op bestaande gegevens in wordt gebaseerd vormt het model van vormgegevenssectie van dit artikel) en lusje uit het gebied specificeert, de rest drie gebieden, Naam, Aantal van de Telefoon, en de vertoning van de Beschrijving van de Uitgave automatisch in de adaptieve vorm.

U kunt het geconverteerde adaptieve voorbeeldformulier downloaden met:

Bestand ophalen

recommendation-more-help
c40c2ccf-3d1b-4b47-b158-c4646051b46c