Aanbevolen werkwijzen voor het werken met adaptieve formulieren best-practices-for-working-with-adaptive-forms

de Adobe adviseert gebruikend de moderne en verlengbare gegevens vangen Componenten van de Kernvoor het creëren van nieuwe Aangepaste Formsof het toevoegen van Aangepaste Forms aan de pagina's van AEM Sites. Deze componenten betekenen een aanzienlijke vooruitgang in de aanmaak van Adaptive Forms en zorgen voor indrukwekkende gebruikerservaring. In dit artikel wordt een oudere aanpak beschreven voor de auteur Adaptive Forms die gebruikmaakt van stichtingscomponenten.

Overzicht overview

Met Adobe Experience Manager (AEM)-formulieren kunt u complexe transacties transformeren in eenvoudige, prachtige digitale ervaringen. Het vereist echter gezamenlijke inspanningen om een efficiënt en productief AEM Forms-ecosysteem te implementeren, op te bouwen, uit te voeren en in stand te houden.

Dit document bevat richtlijnen en aanbevelingen die beheerders, auteurs en ontwikkelaars van formulieren kunnen gebruiken wanneer ze met AEM Forms werken, en met name wanneer ze onderdelen voor adaptieve formulieren gebruiken. Hierin worden de beste werkwijzen besproken, van het instellen van een formulierontwikkelingsproject tot het configureren, aanpassen, ontwerpen en optimaliseren van AEM Forms. Deze beste praktijken dragen collectief bij tot de algemene prestaties van het ecosysteem van AEM Forms.

Daarnaast zijn er enkele aanbevelingen voor algemene AEM aanbevolen procedures:

AEM Forms instellen en configureren set-up-and-configure-aem-forms

Project voor de ontwikkeling van formulieren opzetten setting-up-forms-development-project

Een vereenvoudigde en gestandaardiseerde projectstructuur kan de ontwikkelings- en onderhoudsinspanningen aanzienlijk verminderen. Apache Maven is een opensource tool die wordt aanbevolen voor het bouwen van AEM projecten.

  • Met Apache Maven aem-project-archetype kunt u structuur voor AEM project maken en beheren. Er worden aanbevolen structuren en sjablonen voor uw AEM project gemaakt. Ook, verstrekt het bouwstijlautomatisering en veranderingscontrolesystemen om het project te helpen beheren.

    • Met de opdracht maven archetype:generate kunt u de initiële structuur genereren.
    • Met de opdracht Geweven eclipse:eclipse kunt u de ovaalprojectbestanden genereren en het project in een ovaal importeren.

Voor meer informatie, zie hoe te AEM Projecten bouwen gebruikend Apache Maven.

  • Met het gereedschap FileVault of VLT kunt u de inhoud van een CRX- of AEM-instantie toewijzen aan uw bestandssysteem. Het verstrekt verrichtingen van het veranderingsbeheer, zoals controle-binnen en controle-out van de AEM projectinhoud. Zie hoe te om het Hulpmiddel VLTte gebruiken.

  • Als u Eclipse-Geïntegreerde ontwikkelomgeving gebruikt, kunt u AEM hulpmiddelen van de Ontwikkelaar voor naadloze integratie van winde van de Verduistering met AEM instanties gebruiken om AEM toepassingen tot stand te brengen. Voor details, zie AEM ontwikkelaarshulpmiddelen voor Verduistering.

  • Sla geen inhoud op en breng geen wijzigingen aan in de map /libs. Maak overlays in /app-mappen om standaardfuncties uit te breiden of te overschrijven.

  • Wanneer u pakketten maakt om inhoud te verplaatsen, moet u ervoor zorgen dat paden met pakketfilters correct zijn en dat alleen vereiste paden worden vermeld.

  • Sla geen inhoud op en breng geen wijzigingen aan in de map /libs. Maak overlays in /app-mappen om standaardfuncties uit te breiden of te overschrijven.

  • Bepaal correcte gebiedsdelen voor de pakketten om een vooraf bepaalde installatieorde/opeenvolging te dwingen.

  • Maak geen knooppunten waarnaar kan worden verwezen in /libs of /apps.

Planning voor ontwerpomgeving planning-for-authoring-environment

Wanneer u uw AEM project hebt ingesteld, definieert u een strategie voor het ontwerpen en aanpassen van adaptieve formuliersjablonen en componenten.

  • Een adaptieve formuliersjabloon is een gespecialiseerde AEM die structuur en de informatie over de kop- en voettekst van een adaptief formulier definieert. Een sjabloon heeft vooraf geconfigureerde indelingen, stijlen en basisstructuur voor een adaptief formulier. AEM Forms beschikt over out-of-the-box sjablonen en componenten waarmee u adaptieve formulieren kunt maken. U kunt echter naar wens aangepaste sjablonen en componenten maken. Het wordt aanbevolen vereisten te verzamelen voor aanvullende sjablonen en componenten die u nodig hebt in uw aangepaste formulieren. Voor details, zie Aanpasbare vormen en componenten aanpassen.

  • Het wordt aanbevolen de formulierpakketten te uploaden via de gebruikersinterface van Form Manager in plaats van via de gebruikersinterface van CRX Package Manager, omdat het uploaden van pakketten via CRX Package Manager soms tot anomalieën kan leiden.

  • Met AEM Forms kunt u adaptieve formulieren maken op basis van de volgende formuliermodellen. De formuliermodellen fungeren als interface voor gegevensuitwisseling tussen een formulier en AEM en bieden een op XML gebaseerde structuur voor gegevensstroom binnen en buiten een adaptief formulier. Bovendien leggen de formuliermodellen regels en beperkingen op aan adaptieve formulieren in de vorm van schema- en XFA-beperkingen.

    • niets: De adaptieve vormen die met deze optie worden gecreeerd gebruiken geen vormmodel. De XML-gegevens die op basis van dergelijke formulieren worden gegenereerd, hebben een vlakke structuur met velden en bijbehorende waarden.
    • XML of het schema JSON: De schema's van XML en JSON vertegenwoordigen de structuur waarin het gegeven wordt geproduceerd of door het achterste deelsysteem in uw organisatie verbruikt. U kunt een schema aan een adaptief formulier koppelen en de elementen ervan gebruiken om dynamische inhoud aan het aangepaste formulier toe te voegen. De elementen van het schema zijn beschikbaar op het tabblad Gegevensmodel van de inhoudbrowser voor het ontwerpen van adaptieve formulieren. U kunt de schema-elementen slepen en neerzetten om het formulier samen te stellen.
    • XFA vormmalplaatje: Het is een ideaal vormmodel als u investeringen in op XFA-Gebaseerde HTML5 vormen hebt. Dit biedt een directe manier om uw XFA-formulieren om te zetten in adaptieve formulieren. Bestaande XFA-regels blijven behouden in de bijbehorende adaptieve formulieren. De resulterende adaptieve formulieren ondersteunen XFA-constructies, zoals validaties, gebeurtenissen, eigenschappen en patronen.
    • Model van de Gegevens van de Vorm: Het is een aangewezen vormmodel als u uw backendesystemen zoals gegevensbestanden, Webdiensten, en AEM gebruikersprofiel probeert te integreren om aanpassende vormen vooraf in te vullen en voorgelegde vormgegevens terug naar de backendsystemen te schrijven. Met een formuliergegevensmodeleditor kunt u entiteiten en services definiëren en configureren in een formuliergegevensmodel waarmee u adaptieve formulieren kunt maken. Voor meer informatie, zie de Integratie van Gegevens van AEM Forms.

Het is belangrijk om zorgvuldig het gegevensmodel te kiezen dat niet alleen aan uw vereisten voldoet maar uw bestaande investeringen in XFA en XSD activa uitbreidt, als om het even welk. Gebruik het XSD-model om formuliersjablonen te maken, omdat de gegenereerde XML gegevens bevat volgens de XPATH die door het schema wordt gedefinieerd. Het gebruik van XSD-model als standaardkeuze voor het formuliergegevensmodel helpt ook omdat het formulierontwerp loskoppelt van een back-end systeem dat gegevens verwerkt en verbruikt, en het verbetert de prestaties van het formulier door een-op-een-toewijzing van formuliervelden. BindRef van het veld kan ook de XPATH van de gegevenswaarde in XML worden gemaakt.

Voor meer informatie, zie een adaptieve vormcreëren.

  • Er zijn enkele algemene secties in adaptieve formulieren. U kunt ze identificeren en een strategie definiëren om hergebruik van inhoud te bevorderen. Met adaptieve formulieren kunt u zelfstandige fragmenten maken en deze hergebruiken in verschillende formulieren. U kunt een deelvenster ook in een adaptief formulier opslaan als een fragment. Wijzigingen in een fragment worden in alle bijbehorende formulieren doorgevoerd. Hierdoor kunt u de ontwerptijd verkorten en consistentie in verschillende formulieren garanderen. Bovendien maakt het gebruik van fragmenten adaptieve formulieren lichtgewicht, wat resulteert in een verbeterde ontwerpervaring, met name in grote vormen. Voor meer informatie, zie Aangepaste vormfragmenten.

Aangepaste formulieren en componenten aanpassen customize-components

  • AEM Forms biedt adaptieve formuliersjablonen die u kunt gebruiken om adaptieve formulieren te maken. U kunt ook uw eigen sjablonen maken. AEM biedt statische en bewerkbare sjablonen.

    • Statische sjablonen worden gedefinieerd en geconfigureerd door ontwikkelaars.
    • Bewerkbare sjablonen worden gemaakt door auteurs die de sjablooneditor gebruiken. Met de sjablooneditor kunt u een basisstructuur en initiële inhoud in een sjabloon definiëren. Alle wijzigingen in de structuurlaag worden weerspiegeld in alle formulieren die gebruikmaken van die sjabloon. De eerste inhoud kan een vooraf geconfigureerd thema, een vooraf ingevulde service, een verzendactie enzovoort bevatten. Deze instellingen kunnen echter wel worden gewijzigd voor een formulier in de formuliereditor. Voor meer informatie, zie Aangepaste vormmalplaatjes.
  • Voor het stileren van een specifiek gebied of paneelinstantie, gebruik gealigneerd het stileren. U kunt ook een klasse definiëren in een CSS-bestand en de klassenaam opgeven in de CSS-klasseneigenschap van de component.

  • Neem een clientbibliotheek in een component op om stijlen consistent toe te passen op adaptieve formulieren of fragmenten die die component gebruiken. Voor meer informatie, zie een adaptieve component van de vormpaginacreëren.

  • Pas stijlen toe die zijn gedefinieerd in een clientbibliotheek om adaptieve formulieren te selecteren door het pad naar de clientbibliotheek op te geven in het veld CSS-bestandspad in de adaptieve eigenschappen van de formuliercontainer.

  • Als u een clientbibliotheek met uw stijlen wilt maken, kunt u het aangepaste CSS-bestand configureren in de basisclient van de Thema-editor of in de eigenschappen van de Form Container.

  • Aangepaste formulieren bieden deelvensterlay-outs, zoals responsieve formulieren, tabbladen, accordeons en wizard, om te bepalen hoe formuliercomponenten worden ingedeeld in een deelvenster. U kunt aangepaste deelvensterlay-outs maken en beschikbaar maken voor gebruik door formulierauteurs. Voor meer informatie, zie Creërend de componenten van de douanelay-out voor adaptieve vormen.

  • U kunt ook specifieke aangepaste formuliercomponenten aanpassen, zoals velden en de indeling van deelvensters.

  • Zie Behandelend persoonlijk identificeerbare informatievoor aanbevelingen bij de behandeling van PII- gegevens.

Formuliersjablonen maken

U kunt een adaptieve vorm tot stand brengen gebruikend de vormmalplaatjes die in Browser van de Configuratie worden toegelaten. Om de vormmalplaatjes toe te laten, zie Creërend Aangepast Malplaatje van de Vorm.

De formuliersjablonen kunnen ook worden geüpload vanuit Adaptief formulierpakketten die zijn gemaakt op een andere auteur. De malplaatjes van de vorm worden ter beschikking gesteld door aemforms-verwijzingen te installeren -* pakketten. Enkele aanbevolen best practices zijn:

  • nosamplcontent runmode wordt geadviseerd slechts voor auteur en niet voor publicatieknooppunten.
  • Elementen zoals adaptieve formulieren, thema's, sjablonen of cloudconfiguraties worden alleen via auteurknooppunten gemaakt, die kunnen worden gepubliceerd op de geconfigureerde Publish-knooppunten.
    Voor meer informatie, zie het Publiceren en het unpublishing vormen en documenten
  • Forms addon package is vereist voor Authoring en voor Publishing ter ondersteuning van de bewerkingen van de documentservice; daarom kan het worden beschouwd als een afhankelijkheid.
    Als u slechts op Forms betrekking hebbende steekproefmalplaatje, thema's, en pakketten DOR wilt, dan kunt u hen van aemforms-references-* pakkettendownloaden.

Voor verdere informatie, zie de beste praktijken in Inleiding aan auteursadaptieve vormen.

Aangepaste formulieren van auteurs author-adaptive-forms

Gebruikend touch-geoptimaliseerde UI voor creatie using-touch-optimized-ui-for-authoring

  • Gebruik de browser Objecten in het zijpaneel om snel velden te openen die diep onder in de formulierhiërarchie liggen. Met het zoekvak kunt u zoeken naar objecten in het formulier of in de objectstructuur en van het ene object naar het andere navigeren.

  • Om de eigenschappen van een component in componenten te bekijken en uit te geven browser in sidebar, selecteer de component en klik cmp-1 . U kunt ook dubbelklikken op een component om de eigenschappen ervan weer te geven in de eigenschappenbrowser.

  • Gebruik sneltoetsen om snel actie te ondernemen op uw formulieren. Zie Sneltoetsen van AEM Forms.

  • Aangepaste formuliercomponenten worden alleen aanbevolen voor gebruik op adaptieve formulierpagina's. De componenten zijn afhankelijk van hun bovenliggende hiërarchie. Gebruik deze daarom niet op een AEM pagina.

Ook, zie componentenbeschrijvingen en beste praktijken in Inleiding aan auteursadaptieve vormen.

Regels in adaptieve formulieren gebruiken using-rules-in-adaptive-forms

AEM Forms verstrekt a regelredacteurdie u regels laat tot stand brengen om dynamisch gedrag aan adaptieve vormcomponenten toe te voegen. Met deze regels kunt u voorwaarden evalueren en acties activeren op componenten, zoals velden weergeven of verbergen, waarden berekenen, vervolgkeuzelijst dynamisch wijzigen, enzovoort.

De redacteur van de regel verstrekt een visuele redacteur en een coderedacteur voor het schrijven van regels. Overweeg het volgende wanneer het schrijven van regels gebruikend de wijze van de coderedacteur:

  • Gebruik betekenisvolle en unieke namen voor formuliervelden en componenten om mogelijke conflicten te voorkomen tijdens het schrijven van regels.

  • Gebruik de operator this voor een component om naar zichzelf te verwijzen in een regelexpressie. Het zorgt ervoor dat de regel geldig blijft zelfs als de componentennaam verandert. Bijvoorbeeld field1.valueCommit script: this.value > 10 .

  • Gebruik componentnamen wanneer u naar andere formuliercomponenten verwijst. Gebruik de eigenschap value om de waarde van een veld of component op te halen. Bijvoorbeeld field1.value .

  • Verwijs componenten door relatieve unieke hiërarchie om het even welk conflict te vermijden. Bijvoorbeeld parentName.fieldName .

  • Wanneer u complexe of veelgebruikte regels afhandelt, kunt u bedrijfslogica als functies in een aparte clientbibliotheek schrijven die u kunt opgeven en hergebruiken voor adaptieve formulieren. De clientbibliotheek moet een zelfstandige bibliotheek zijn en mag geen externe afhankelijkheden hebben, behalve op jQuery en Underscore.js. U kunt de cliëntbibliotheek ook gebruiken om server-zijbevestigingvan voorgelegde vormgegevens af te dwingen.

  • Adaptieve formulieren bieden een set API's waarmee u kunt communiceren en waarmee u handelingen kunt uitvoeren op adaptieve formulieren. Enkele belangrijke API's zijn als volgt. Voor meer informatie, zie de API van de Bibliotheek van JavaScript verwijzing voor Aanpassings Forms.

    • guideBridge.reset(): hiermee wordt een formulier opnieuw ingesteld.

    • guideBridge.submit(): verzendt een formulier.

    • guideBridge.setFocus(somExp, focusOption, runCompletionExp): hiermee wordt de focus op een veld ingesteld.

    • guideBridge.validate(errorList, somExpression, focus) - Valideert een formulier.

    • guideBridge.getDataXML(options): hiermee worden formuliergegevens opgehaald als XML.

    • guideBridge.resolveNode(somExpression) : hiermee wordt een formulierobject opgehaald.

    • guideBridge.setProperty(somList, propertyName, valueList): stelt de eigenschap van een formulierobject in.

    • Daarnaast kunt u de volgende veldeigenschappen gebruiken:

      • field.value om de waarde van een veld te wijzigen.
      • field.enabled om een veld in of uit te schakelen.
      • field.visible om de zichtbaarheid van een veld te wijzigen.
  • Auteurs van adaptieve formulieren moeten mogelijk JavaScript-code schrijven om bedrijfslogica in een formulier te maken. Hoewel JavaScript krachtig en effectief is, is het waarschijnlijk dat het de veiligheidsverwachtingen in gevaar kan brengen. Daarom moet u ervoor zorgen dat de auteur van het formulier een vertrouwd persoon is en dat er processen zijn om de JavaScript-code te controleren en goed te keuren voordat een formulier in productie wordt genomen. De beheerder kan de toegang tot de toegang van de regelredacteur tot gebruikersgroepen beperken die op hun rol of functie wordt gebaseerd. Zie {de toegang van de de regelredacteur van 0} Verlenen tot uitgezochte gebruikersgroepen 🔗.

  • U kunt expressies in regels gebruiken om adaptieve formulieren dynamisch te maken. Alle expressies zijn geldige JavaScript-expressies en gebruiken API's van het scriptmodel voor aangepaste formulieren. Deze expressies retourneren waarden van bepaalde typen. Voor meer informatie over uitdrukkingen en beste praktijken rond hen, zie Aangepaste vormuitdrukkingen.

  • De Adobe adviseert het gebruiken van synchrone verrichtingen van JavaScript over asynchrone degenen wanneer het creëren van regels met de redacteur van de Regel. Het gebruik van asynchrone bewerkingen wordt sterk afgeraden. Als u zich echter in een situatie bevindt waarin asynchrone bewerkingen onvermijdelijk zijn, is het van essentieel belang dat u de afsluitfuncties van JavaScript implementeert. Door dit te doen, kunt u effectief tegen om het even welke potentiële rassenvoorwaarden beschermen, ervoor zorgen uw regelimplementaties optimale prestaties leveren en stabiliteit handhaven door heel.

    Bijvoorbeeld, veronderstellen wij gegevens van externe API moeten halen en dan sommige regels toepassen die op die gegevens worden gebaseerd. Wij gebruiken een sluiting om de asynchrone API vraag te behandelen en ervoor te zorgen dat de regels worden toegepast nadat de gegevens worden gehaald. Hier volgt de voorbeeldcode:

    code language-javascript
         function fetchDataFromAPI(apiEndpoint, callback) {
          // Simulate asynchronous API call with setTimeout
          setTimeout(() => {
            // Assuming the API call is successful, we receive some data
            const data = {
              someValue: 42,
            };
            // Invoke the callback with the fetched data
            callback(data);
          }, 2000); // Simulate a 2-second delay for the API call
        }
        // Rule implementation using Closure
        function ruleImplementation(apiEndpoint) {
          // Using a closure to handle the asynchronous API call and rule application
          // say you have set this value in street field inside address panel
          var streetField = address.street;
          fetchDataFromAPI(apiEndpoint, (data) => {
            streetField.value = data.someValue;
          });
        }
        // Example usage of the rule implementation
        const apiEndpoint = "https://example-api.com/data";
        ruleImplementation(apiEndpoint);
    

    In dit voorbeeld simuleert fetchDataFromAPI een asynchrone API-aanroep met setTimeout . Zodra de gegevens worden gehaald, roept het de verstrekte callback functie aan, die de sluiting is om de verdere regeltoepassing te behandelen. De functie ruleImplementation bevat de regellogica.

Werken met thema's working-with-themes

Met Aangepast voor thema's kunt u herbruikbare stijlen maken die op verschillende formulieren kunnen worden toegepast voor een consistente vormgeving. Met Thema's kunt u stijlen definiëren voor formuliercomponenten en deelvensters. De beste praktijken rond thema's zijn als volgt:

  • Gebruik de elementenbibliotheek voor een snelle toepassing van tekststijlen, achtergrond en afbeeldingen. Wanneer een stijl wordt toegevoegd aan de elementenbibliotheek, is deze beschikbaar voor andere thema's en in de stijlmodus van de formuliereditor.
  • Algemene instellingen zoals lettertype en pagina-achtergrond toepassen met behulp van een kiezer op paginaniveau.
  • Met clientbibliotheken kunt u bestaande of geavanceerde stijlen in uw thema's importeren.
  • U kunt de opmaak overschrijven voor specifieke velden, deelvensters of knoppen in een formulierstijllaag.
  • Als een thema niet aan uw opmaakvereisten voldoet, kunt u vooraf gedefinieerde klassen gebruiken, zoals guideFieldNode, guideFieldLabel, guideFieldWidget en guidePanelNode, om algemene stijl op formulieren toe te passen.

Voor meer informatie, zie Thema's.

Prestaties van grote en complexe formulieren optimaliseren optimizing-performance-of-large-and-complex-forms

Auteurs van formulieren en eindgebruikers van formulieren hebben doorgaans te maken met prestatieproblemen bij het laden van grote formulieren in de ontwerpmodus of bij uitvoering. Naarmate het aantal objecten (velden en deelvensters) in het formulier toeneemt, wordt het ontwerp en de runtime minder prettig. Het voorkomt ook dat meerdere auteurs tegelijkertijd samenwerken en een formulier ontwerpen.

Overweeg de volgende aanbevolen procedures om prestatieproblemen met grote formulieren te verhelpen:

  • Aanbevolen wordt om adaptieve formulieren te maken met behulp van XSD-formuliergegevensmodel, zelfs als een XFA wordt geconverteerd naar een adaptief formulier, indien mogelijk.

  • Neem alleen de velden en deelvensters op in adaptieve formulieren die informatie van de gebruiker vastleggen. Houd statische inhoud minimaal of gebruik URL's om deze in een apart venster te openen.

  • Hoewel elk formulier is ontworpen voor een bepaald doel, zijn er in de meeste formulieren enkele gangbare segmenten. Bijvoorbeeld persoonlijke gegevens, adres, werkgelegenheidsgegevens enzovoort. Creeer adaptieve vormfragmentenvoor gemeenschappelijke vormelementen en secties en gebruik hen over vormen. U kunt een deelvenster in een bestaand formulier ook opslaan als een fragment. Elke wijziging in een fragment wordt weerspiegeld in alle bijbehorende adaptieve formulieren. Het bevordert samenwerkingscreatie aangezien de veelvoudige auteurs aan verschillende fragmenten gelijktijdig kunnen werken die omhoog een vorm maken.

    • Net als adaptieve formulieren wordt aangeraden dat alle fragmentspecifieke opmaak en aangepaste scripts in de clientbibliotheek worden gedefinieerd met behulp van het dialoogvenster Fragmentcontainer. Probeer ook zelf-voldoende fragmenten te maken die niet afhankelijk zijn van objecten buiten de fragmenten.
    • Gebruik geen cross-fragments-scripts. Als er een object is buiten het fragment waarnaar u moet verwijzen, probeert u dat object te maken tot onderdeel van het bovenliggende formulier. Als het object zich nog steeds in een ander fragment moet bevinden, kunt u het met de naam ervan in het script raadplegen.
  • Met Opslaan en hervatten met automatisch opslaan kunt u het aangepaste formulier periodiek opslaan en gebruikers in staat stellen later opnieuw te klikken om het formulier in te vullen.

  • Configureer fragmenten die geleidelijk moeten worden geladen. Tijdens de runtime wordt een fragment dat is gemarkeerd om geladen, alleen gerenderd wanneer dit vereist is. Hierdoor wordt de laadtijd voor grote formulieren aanzienlijk verkort. Deze functie wordt ook ondersteund in fragmenten met herhaalbare deelvensters. Voor meer informatie, zie luie ladingvormen.

    • Configureer lui laden niet op fragmenten in een responsieve rasterlay-out of in het eerste deelvenster.
    • Componenten voor bestandsbijlagen en Algemene voorwaarden worden niet ondersteund in laaggeladen fragmenten.
    • Markeer een waarde in een lazy geladen paneel als Waarde globaal gebruiken als die waarde in een ander deel van het formulier wordt gebruikt zodat de waarde beschikbaar is voor gebruik wanneer het bevattende paneel wordt verwijderd.
    • U kunt zichtbaarheidsregels schrijven voor fragmenten die op basis van een voorwaarde moeten worden weergegeven of verborgen.
  • Plaats de waarde van het Aantal vraag per verzoek in Apache Sling Main Servlet aan een vrij groot aantal. Het laat de server van Forms toe om extra vraag toe te staan. De configuratie geeft een standaardwaarde van 1500 weer. De waarde, 1500 vraag, is voor andere componenten van de Experience Manager zoals Plaatsen en Assets. De standaardwaarde van adaptieve formulieren is 20000. Als u de fout too many calls in het logbestand tegenkomt of als het formulier niet wordt weergegeven, kunt u proberen de waarde te verhogen tot een groot aantal om het probleem op te lossen. Als het aantal aanroepen groter is dan 20000, is het formulier complex en kan het enige tijd duren voordat het formulier in de browser wordt weergegeven. Dit gebeurt alleen voor de eerste keer dat het formulier wordt geladen, nadat het formulier in de cache is geplaatst en wanneer het formulier in de cache is geplaatst, heeft dit geen significante invloed op de prestaties.

Aangepaste formulieren vooraf invullen prefilling-adaptive-forms

U kunt adaptieve formuliervelden vooraf invullen met gegevens die vanaf de achtergrond zijn opgehaald, zodat gebruikers het formulier snel kunnen invullen en typfouten kunnen voorkomen.

  • AEM Forms biedt een vooraf ingevulde service voor het lezen van gegevens uit een vooraf gedefinieerd XML-gegevensbestand en het vooraf invullen van de velden van een adaptief formulier met de inhoud in het vooraf ingevulde XML-bestand.

  • De XML van de vooraf ingevulde gegevens moet voldoen aan het schema van het formuliermodel dat is gekoppeld aan het adaptieve formulier.

  • Neem secties afBoundedData en afUnBoundedData op in de vooraf ingevulde XML om zowel gebonden als niet-gebonden velden vooraf in een adaptief formulier in te vullen.

  • Voor adaptieve formulieren die zijn gebaseerd op het formuliergegevensmodel, biedt AEM Forms een vooraf ingevulde service voor het formuliergegevensmodel. De Prefill-service zoekt naar gegevensbronnen voor gegevensmodelobjecten in het adaptieve formulier en vult de veldwaarden vooraf in bij het weergeven van het formulier.

  • U kunt ook het bestand, de crx, de service of de http-protocollen gebruiken om adaptieve formulieren vooraf in te vullen.

  • AEM Forms biedt ondersteuning voor aangepaste Prefill-services die u kunt insluiten als een OSGi-service om adaptieve formulieren vooraf in te vullen.

Voor meer informatie, zie vooraf aanpasbare vormgebiedenvullen.

Aangepaste formulieren ondertekenen en indienen signing-and-submitting-adaptive-forms

Voor adaptieve formulieren zijn acties verzenden vereist om door de gebruiker opgegeven gegevens te verwerken. Een handeling Verzenden bepaalt de taak die wordt uitgevoerd voor de gegevens die u verzendt met behulp van een adaptief formulier.

U kunt multi-sign ervaring van Adobe Sign in adaptieve vormen gebruiken. Houd rekening met het volgende wanneer u Adobe Sign in adaptieve formulieren configureert. Voor details, zie Gebruikend Adobe Sign in een adaptieve vorm.

  • Het adaptieve formulier dat geschikt is voor Adobe Sign, wordt alleen verzonden nadat alle ondertekenaars het formulier hebben ondertekend. Forms wordt weergegeven in de status In afwachting van ondertekening totdat het formulier door alle ondertekenaars is ondertekend.
  • U kunt ondertekeningservaring in formulieren configureren of ondertekenaars omleiden naar een ondertekeningspagina bij verzending.
  • Configureer sequentiële of parallelle ondertekeningservaring, indien van toepassing.

Document met record genereren generating-document-of-record

Een recorddocument (DoR) is een afgevlakte PDF-versie van een adaptief formulier dat u kunt afdrukken, ondertekenen of archiveren.

  • Afhankelijk van het formuliergegevensmodel waarop een adaptief formulier is gebaseerd, kunt u als volgt een sjabloon configureren voor DoR:

    • XFA vormmalplaatje: Gebruik het bijbehorende XDP dossier als malplaatje DoR.
    • XSD schema: Gebruik het bijbehorende malplaatje XFA dat het zelfde schema van XML gebruikt zoals die door de adaptieve vorm wordt gebruikt.
    • niets: Gebruik auto-geproduceerde DoR.
  • Configureer kop-, voettekst-, afbeeldingen, kleur-, lettertype-, enzovoort, rechts van het tabblad Document of Record van de adaptieve formuliereditor.

  • Gebruik DoRService om het DoR programmatically te produceren.

  • Verborgen velden uitsluiten van de DoR.

  • Gebruik de aanvraagparameter afAcceptLang om DoR in een andere landinstelling weer te geven.

Fouten opsporen en aangepaste formulieren testen debugging-and-testing-adaptive-forms

AEM de Plug-in van Chromeis een browser uitbreiding voor Google Chrome die hulpmiddelen verstrekt om adaptieve vormen te zuiveren. Auteurs en ontwikkelaars van formulieren kunnen deze gereedschappen gebruiken:

  • Problemen identificeren en de prestaties van het genereren van formulieren optimaliseren
  • Fouten opsporen in trefwoorden en fouten met bindRef in het formulier
  • Logbestanden inschakelen en configureren
  • Fouten opsporen in regels en scripts in het formulier
  • Meer informatie over guideBridge-API's

Voor meer informatie, zie AEM Plug-in van Chrome - Aangepaste Vorm.

Aangepaste formulieren op AEM server valideren validating-adaptive-forms-on-aem-server

Validaties aan de serverzijde zijn vereist om te voorkomen dat er pogingen worden ondernomen om validaties op de client te omzeilen en dat er een mogelijk compromis ontstaat tussen gegevensverzending en overtredingen van de bedrijfsregels. Servervalidaties worden op de server uitgevoerd door de vereiste clientbibliotheek te laden.

  • Neem functies op in een clientbibliotheek voor het valideren van expressies in adaptieve formulieren en geef de clientbibliotheek op in het dialoogvenster Container voor adaptieve formulieren. Voor meer informatie, zie server-zijbevestiging.
  • Servervalidatie valideert het formuliermodel. Het wordt aanbevolen een aparte clientbibliotheek voor validaties te maken en deze niet te mengen met andere elementen, zoals HTML styling en DOM-bewerking in dezelfde clientbibliotheek.

Aangepaste formulieren lokaliseren localizing-adaptive-forms

AEM biedt vertaalworkflows waarmee u adaptieve formulieren kunt lokaliseren. Voor informatie, zie Gebruikend AEM vertaalwerkschema om adaptieve vormente lokaliseren.

U kunt het beste adaptieve formulieren als volgt lokaliseren:

  • Gebruik adaptieve formulierfragmenten voor gemeenschappelijke elementen in verschillende formulieren en lokaliseer fragmenten. Zo weet u zeker dat u een fragment één keer lokaliseert en het geeft in alle formulieren weer waar het gelokaliseerde fragment wordt gebruikt.

  • Wijzigingen zoals het toevoegen van een nieuwe component of het toepassen van een script in een gelokaliseerd formulier, worden niet automatisch gelokaliseerd. Daarom moet u een formulier invullen voordat u het lokaliseert om meerdere lokalisatiecycli te voorkomen.

  • Gebruik de aanvraagparameter afAcceptLang om de landinstelling van de browser te overschrijven en het formulier in de opgegeven landinstelling te genereren. De volgende URL is bijvoorbeeld gedwongen het formulier te genereren in een Japanse landinstelling, ongeacht de landinstelling die in de browser is opgegeven:

    https://'[server]:[port]'/<contextPath>/<formFolder>/<formName>.html?wcmmode=disabled&afAcceptLang=ja

  • AEM Forms ondersteunt momenteel de lokalisatie van adaptieve formulieren met inhoud in het Engels (en), Spaans (es), Frans (fr), Italiaans (it), Duits (de), Japans (ja), Portugees-Braziliaans (pt-BR), Chinees (zh-CN), Chinees-Taiwan (zh-TW) en Koreaans (ko-KR). U kunt echter tijdens runtime ondersteuning toevoegen voor nieuwe landinstellingen voor adaptieve formulieren. Voor meer informatie, zie Ondersteunend nieuwe scènes voor adaptieve vormenlocalisatie.

Formulierproject voorbereiden voor productie prepare-forms-project-for-production

Processorserver voor formulieren toevoegen adding-forms-processing-server

U kunt een extra instantie van de server van AEM Forms vormen die achter de firewall in een beveiligde streek verblijft. U kunt deze instantie gebruiken voor:

  • verwerking van de Partij: banen die terugkomen of in partijen met zware lading gepland zijn. U kunt bijvoorbeeld instructies afdrukken, correspondentie genereren en documentservices gebruiken, zoals PDF Generator, Uitvoer en Assembler.
  • het Opslaan van PII gegevens: Sparen PII- gegevens op de verwerkingsserver. Dit is niet verplicht als u al een aangepaste opslagprovider gebruikt voor het opslaan van PII-gegevens.

Project verplaatsen naar een andere omgeving moving-project-to-another-environment

U moet vaak uw AEM projecten van één milieu naar een andere verplaatsen. Enkele belangrijke dingen die u moet onthouden tijdens het verplaatsen zijn:

  • Maak een back-up van uw bestaande clientbibliotheken, aangepaste code en configuraties.
  • Implementeer productpakketten en patches handmatig en in de opgegeven volgorde in de nieuwe omgeving.
  • Implementeer projectspecifieke codepakketten en -bundels handmatig en als een afzonderlijk pakket of een aparte bundel op de nieuwe AEM.
  • (AEM Forms op JEE slechts) stelt LCAs en DSCs manueel op de server van de Forms Workflow op.
  • Het gebruik 🔗 functionaliteit van de uitvoer-Invoer om activa naar het nieuwe milieu te bewegen. U kunt de replicatieagent ook vormen en de activa publiceren.
  • Wanneer u een upgrade uitvoert, vervangt u alle verouderde API's en functies door nieuwe API's en functies.

AEM configureren configuring-aem

Sommige beste praktijken om AEM te vormen om de algemene prestaties te verbeteren zijn als volgt:

Externe opslag voor concepten en verzonden formuliergegevens configureren external-storage

In een productieomgeving wordt aanbevolen de ingediende formuliergegevens niet in AEM opslagplaats op te slaan. Bij de standaardimplementatie van Forms Portal Store, Store Content en Store PDF submit worden formuliergegevens opgeslagen in AEM opslagplaats. Deze indieningsacties zijn alleen bedoeld voor demonstratiedoeleinden. Bovendien maken de functies Opslaan, Hervatten en Automatisch opslaan standaard gebruik van poortopslag. Overweeg daarom de volgende aanbevelingen:

  • Opslagend ontwerp gegevens: Als u de eigenschap van het Ontwerp van adaptieve vormen gebruikt, zou u een douaneDienst moeten uitvoeren verstrekken Interface (SPI) om ontwerp gegevens in veiligere opslag zoals gegevensbestand op te slaan. Voor meer informatie, zie Steekproef voor het integreren van concepten & voorleggingscomponent met gegevensbestand.

  • Opslagend voorleggingsgegevens: Als u het Portaal van de Vorm gebruikt dient Opslag voor te leggen, zou u douaneSPI moeten uitvoeren om voorleggingsgegevens in een gegevensbestand op te slaan. Zie Steekproef voor het integreren van concepten & verzendingscomponent met gegevensbestandvoor een steekproefintegratie.

    U kunt ook een aangepaste verzendactie schrijven waarmee formuliergegevens en bijlagen worden opgeslagen in een beveiligde opslagruimte. Zie het Schrijven douanevoorlegt actie voor adaptieve vormenvoor meer informatie.

  • Lengte van ontwerpidentiteitskaart: Wanneer u sparen een adaptieve vorm als ontwerp, een ontwerpidentiteitskaart wordt geproduceerd om het ontwerp uniek te identificeren. De minimumwaarde voor de lengte van het veld concept-id is 26 tekens. Adobe raadt u aan de lengte van de concept-id in te stellen op 26 of meer tekens.

Persoonlijke identificeerbare gegevens verwerken handling-personally-identifiable-information

Een van de belangrijkste uitdagingen voor organisaties is hoe te om persoonlijk identificeerbare (PII) gegevens te behandelen. Hier volgt een aantal aanbevolen procedures voor het verwerken van dergelijke gegevens:

  • Gebruik een beveiligde externe opslagruimte, zoals een database, om gegevens op te slaan uit concepten en verzonden formulieren. Zie Vormend externe opslag voor concepten en voorgelegde vormengegevens.
  • Met de component Voorwaarden en Voorwaarden van het gebruik kunt u expliciete toestemming van de gebruiker nemen voordat u automatisch opslaat. In dit geval schakelt u automatisch opslaan alleen in als de gebruiker akkoord gaat met de voorwaarden in de component Voorwaarden.

Kies de Redacteur van de Regel, de Redacteur van de Code, of de Bibliotheken van de Cliënt van de Douane voor uw Aangepast Vorm RuleEditor-CodeEditor-ClientLibs

Regeleditor rule-editor

De AEM Forms Rule Editor biedt een visuele interface voor het maken en beheren van regels, waardoor er minder behoefte is aan uitgebreide codering. Het kan vooral nuttig voor bedrijfsgebruikers of vormontwerpers zijn die geen geavanceerde programmeringsvaardigheden kunnen hebben maar bedrijfsregels binnen de vormen moeten bepalen en handhaven, hier bespreken wij weinig gebruiksgevallen waar de regelredacteur u toestaat:

  • Om bedrijfsregels voor uw vormen zonder de behoefte aan uitgebreide programmering te bepalen.
  • Voorwaardelijke logica implementeren in uw formulieren. Dit omvat het tonen of verbergen van formulierelementen, het wijzigen van veldwaarden op basis van bepaalde voorwaarden of het dynamisch wijzigen van het gedrag van uw formulieren.
  • Om de regels van de gegevensbevestiging op vormbijdragen af te dwingen, kan de Redacteur van de Regel worden gebruikt om bevestigingsvoorwaarden te bepalen.
  • Als u uw formulieren wilt integreren met externe gegevensbronnen (FDM) of services, kunt u in de Regeleditor regels definiëren voor het ophalen, weergeven of bewerken van gegevens tijdens formulierinteracties.
  • Als u dynamische en interactieve formulieren wilt maken die reageren op handelingen van gebruikers, kunt u in de Regeleditor regels definiëren die het gedrag van formulierelementen in real-time bepalen.

De Redacteur van de regel is beschikbaar voor zowel de Componenten van de Stichting van AEM Forms als de Componenten van de Kern.

Code-editor code-editor

De Redacteur van de code is een hulpmiddel binnen Adobe Experience Manager (AEM) Forms dat u toestaat om douanescripts en code voor complexere en geavanceerdere functionaliteit in uw vormen te schrijven, hier bespreken wij weinig gebruiksgevallen:

  • Wanneer u aangepaste logica of gedrag aan de clientzijde moet implementeren die verder gaat dan de mogelijkheden van de AEM Forms Rule Editor. Met de Code-editor kunt u JavaScript-code schrijven voor het verwerken van complexe interacties, berekeningen of validaties.
  • Als uw formulier verwerking op de server of integratie met externe systemen vereist, kunt u met de Code-editor een aangepast serverscript schrijven. U kunt tot guideBridge API in code redacteur toegang hebben om het even welke complexe logica op vormgebeurtenissen en voorwerpen uit te voeren.
  • Wanneer u hoogst aangepaste gebruikersinterfaces vereist die voorbij de standaardmogelijkheden van de componenten van AEM Forms gaan, staat de Redacteur van de Code u toe om douanestijlen, gedrag uit te voeren, of zelfs douaneformuliercomponenten tot stand te brengen.
  • Als in uw formulier asynchrone bewerkingen worden uitgevoerd, zoals het laden van asynchrone gegevens, kunt u de Code-editor gebruiken om deze bewerkingen te beheren met behulp van aangepaste asynchrone JavaScript-code.

Het is belangrijk om op te merken dat het gebruiken van de Redacteur van de Code een goed inzicht in de architectuur van JavaScript en van AEM Forms vereist. Bovendien, wanneer het uitvoeren van douanecode, zorg ervoor dat u beste praktijken volgt, zich aan veiligheidsrichtlijnen houdt, en uw code grondig test om potentiële kwesties in productiemilieu's te verhinderen. U kunt callback voor FDM uitvoeren gebruikend code redacteur.

De Redacteur van de code is beschikbaar voor de Component van de Stichting van AEM Forms slechts. Voor Aangepaste componenten van de Kern van de Vorm, kunt u douanefuncties gebruiken om uw eigen vormregels tot stand te brengen, die in de volgende sectie worden beschreven.

Aangepaste functies custom-client-libs

Het gebruik van aangepaste clientbibliotheken in AEM Forms (Adobe Experience Manager Forms) kan in verschillende scenario's nuttig zijn voor het verbeteren van de functionaliteit, de opmaak of het gedrag van uw formulieren. Hier volgen enkele situaties waarin aangepaste clientbibliotheken geschikt kunnen zijn:

  • Als u een uniek ontwerp of merk voor uw formulieren moet implementeren die verder gaan dan de mogelijkheden van de standaardopmaakopties van AEM Forms, kunt u aangepaste clientbibliotheken maken om de vormgeving te bepalen.
  • Wanneer u aangepaste logica aan de clientzijde nodig hebt, kunt u methoden in meerdere formulieren opnieuw gebruiken of gedrag dat niet met de standaard AEM Forms-functies kan worden bereikt. Dit kan bestaan uit dynamische formulierinteracties, aangepaste validatie of integratie met bibliotheken van derden.
  • U kunt de prestaties van uw formulieren verbeteren door resources aan de clientzijde te optimaliseren en te miniaturen. Met aangepaste clientbibliotheken kunt u JavaScript- en CSS-bestanden bundelen en comprimeren, waardoor de laadtijd van de pagina afneemt.
  • Wanneer u extra JavaScript-bibliotheken of -frameworks moet integreren die niet zijn opgenomen in de standaard AEM Forms-instelling. Dit kan nodig zijn voor functies zoals verbeterde datumkiezers, grafieken of andere interactieve componenten.

Voordat u besluit aangepaste clientbibliotheken te gebruiken, is het belangrijk dat u rekening houdt met de overhead voor onderhoud, mogelijke conflicten met toekomstige updates en de naleving van de aanbevolen procedures. Zorg ervoor dat uw aanpassingen goed gedocumenteerd en getest zijn om problemen tijdens upgrades of tijdens het samenwerken met andere ontwikkelaars te voorkomen.

NOTE
De Functie van de douane is beschikbaar voor zowel de Componenten van de Stichting van AEM Forms als Componenten van de Kern.

Voordelen van de Functies van de Douane:

de Functies van de Douane verstrekken een opmerkelijk voordeel over de Redacteur van de Code omdat het een duidelijke scheiding tussen inhoud en code verstrekt die samenwerking verbetert en werkschema's stroomlijnt. Aanbevolen wordt om aangepaste functies te gebruiken voor de volgende voordelen:

  • naadloos gebruiks versioning controle zoals Git:

    • De isolatie van code van inhoud vermindert de conflicten van de it beduidend tijdens inhoudsbeheer en bevordert een goed georganiseerde bewaarplaats.
    • De Functies van de douane zijn waardevol voor projecten met veelvoudige contribuanten die gelijktijdig werken.
  • Technische Voordelen:

    • Aangepaste functies bieden modulariteit en inkapseling.
    • Modules kunnen onafhankelijk van elkaar worden ontwikkeld, getest en onderhouden.
    • Verbetert de herbruikbaarheid en het onderhoud van code.
  • Efficiënt Ontwikkelingsproces:

    • Met modulariteit kunnen ontwikkelaars zich richten op specifieke functies.
    • Vermindert de last van ontwikkelaars door de ingewikkeldheid van de volledige codebase voor een efficiënter ontwikkelingsproces te verminderen.
recommendation-more-help
19ffd973-7af2-44d0-84b5-d547b0dffee2