Vizualizați conținut de ajutor pentru versiunea:

AEM Forms Workflow on OSGi

Enterprises collect data from hundreds and thousands of forms, various back-end systems, and online or offline data sources. They also have a dynamic set of users to take decisions on the data, which involves iterative review and approval processes. 

Along with review and approval workflows for internal and external audiences, large organizations and businesses have repetitive tasks. For example, converting a PDF document to another format. When done manually, these tasks take up much time and resources. Enterprises also have legal requirements to digitally sign a document and archive form data for later use in pre-defined formats

Introduction to Forms-centric workflow on OSGi

You can use AEM Workflows to rapidly build adaptive forms-based workflows. These workflows can be used for review and approvals, business process flows, to start document services, integrate with Adobe Sign signature workflow, and similar operations. For example, credit card application processing, employee leave approval workflows, saving a form as a PDF document. Moreover, these workflows can be used within an organization or across network firewall.

With Forms-centric workflow on OSGi, you can rapidly build and deploy workflows for various tasks on the OSGi stack, without having to install the full-fledged Process Management capability on JEE stack. The development and management of workflows uses the familiar AEM Workflow and AEM Inbox capabilities. Workflows form the basis of automating real-world business processes that span multiple software systems, networks, departments, and even organizations.  

Once set up, these workflows can be triggered manually to complete a defined process or run programmatically when users submit a form or correspondence management letter. With this enhanced AEM Workflow capabilities, AEM Forms offers two distinct, yet similar, capabilities. As part of your deployment strategy, you need to decide which one works for you. See a comparison of the Forms-centric AEM Workflows on OSGi and Process Management on JEE. Moreover, for the deployment topology see, Architecture and deployment topologies for AEM Forms.  

Forms-centric workflow on OSGi extends AEM Inbox and provides extra components (steps) for AEM Workflow editor to add support for AEM Forms-centric workflows. The extended AEM Inbox has functionalities similar to AEM Forms Workspace. Along with managing human-centric workflows (Approval, Review, and so on), you can use AEM workflows to automate document services-related operations (for example, Generate PDF) and electronically signing (Adobe Sign) documents.

The following diagram depicts end-to-end procedure to create, run, and monitor a Forms-centric workflow on OSGi.

Introduction-to-aem-forms-workflow

Before you start

  • A workflow is a representation of a real-world business process. Keep your real-world business process and list of the participants of the business process ready. Also, keep the collateral (adaptive forms, PDF Documents, and more) ready before start creating a workflow.
  • A workflow can have multiple stages. These stages are displayed in the AEM Inbox and help report progress of the workflow. Divide your business process into logical stages.
  • You can configure the assign task step of AEM Workflows to send email notifications to the users or assignees. So, enable email notifications.
  • A workflow can also use Adobe sign for digital signatures. If you plan to use Adobe Sign in a workflow, the configure Adobe Sign for AEM Forms before using it in a workflow.
  • Creating, launching, and using a workflow requires a different set of personas with a different set of capabilities:
    • The person responsible for creating a workflow model must be a member of the workflow-editor group.
    • The person responsible for creating a workflow application must be a member of the fd-administrator group.
    • The person responsible for monitoring and using workflow must be a member of the workflow-users group.

Create a workflow model

A workflow model consists of logic and flow of a business process. It is made up of a series of the steps. These steps are AEM component. You can extend workflow steps with parameters and scripts to provide more functionality and control, as required. AEM Forms provides a few steps in addition to AEM steps available out of the box. For a detailed list of AEM and AEM Forms steps, see Workflow Step Reference.

AEM provides an intuitive user interface to create a workflow model using the provided workflow steps. For step-by-step instructions to create a workflow model, see Creating Workflow Models. The following example provides step-by-step instructions to create a workflow model for an approval and review workflow:

Notă:

You must be a member of the workflow-editor group to create or edit a workflow model.

Create a model for an approval and review workflow

Approval and review workflow are for the tasks which require human intervention to make decisions. The following example creates a workflow model for a mortgage loan application to be filled by a front-office banking agent. Once the application is filled, it is sent for approval. Later on, the approved application is sent to the applicant for electronic signatures using Adobe Sign.

The example is available as a package attached below. Import and install the example using the package manager. You can also perform the following steps to manually create the workflow model for the application:

Descărcare

  1. Open the Workflow Models console. The default URL is http://[Server]:[port]/libs/cq/workflow/admin/console/content/models.html/etc/workflow/models

  2. Select Create, then Create Model. The Add Workflow Model dialog appears.

  3. Enter the Title and Name (optional). For example, a mortgage application. Click Done.

  4. Select the newly created workflow model and click Edit. Now, you can add workflow steps to build business logic. When you first create a workflow model, it contains:

    • The steps, Flow Start and Flow End. These steps represent the beginning and end of the workflow. These steps are required and cannot be edited or removed.
    • An example Participant step named Step 1. This step is configured to assign a work item to the admin user. Remove this step.
  5. Enable email notifications. You can configure Forms-centric workflow on OSGi to send email notifications to the users or assignees. Perform the following configurations to enable email notifications:

    1. Go to AEM configuration manager at http://[server]:[port]/system/console/configMgr.

    2. Open the Day CQ Mail Service configuration. Specify a value for the SMTP server host name, SMTP server port, and "From" address fields. Click Save.

    3. Open the Day CQ Link Externalizer configuration. In the Domains field, specify the actual hostname/IP address and port number for local, author, and publish instances. Click Save.

  6. Create workflow stages. A workflow can have multiple stages. These stages are displayed in the AEM Inbox and report progress of the workflow. 

    To define a stage, in the sidekick, open the Page tab, click Page Properties, open the Stages tab, add stages for the workflow model, and click OK. For the example mortgage application, create stages: loan request, loan request status, to be signed documents, and signed loan document.

     

  7. Drag-and-drop the Assign Task step from the sidekick to the workflow model. Make it the first step of the model.

    The assign task component assigns the task, created by workflow, to a user or group. Along with assigning the task, you can use the component to specify the adaptive form or non-interactive PDF for the task. The adaptive form is required to accept input from users and non-interactive PDF or a read-only adaptive form is used for review only workflows.

    You can also use the step to control the behavior of the task. For example, creating an automatic document of record, assign the task to a specific user or group, the path of the submitted data, the path of data to be pre-populated, and default actions. For detailed information about the options of the assign task step, see Workflow Step Reference document.

    Workflow-Editor

    Notă:

    By default, Forms-centric workflow steps are not visible in the sidekick. You can select the Forms Workflow option from the design mode tool of sidekick to enable these steps. For detailed information about all the workflow steps, see Workflow Step Reference.

    For the mortgage application example, configure the assign task step to use a Read-only adaptive form and display PDF Document once the task is complete. Also, select to user group allowed to approve the loan request. On the Actions tab, disable the Submit option. Specify a Route Variable. For example, actionTaken. Also, add the Approve and Reject routes. The routes are displayed as separate actions (buttons) in AEM Inbox. The workflow selects a branch based on the action (button) a user clicks.

    You can import the example package, available for download in the starting of the section, for the complete set of values of all the fields of the assign task step configured for example mortgage application.

  8. Drag-and-drop the OR Split component from Sidekick to the workflow model. The OR Split creates a split in the workflow, after which only one branch is active. This step enables you to introduce conditional processing paths into your workflow. You add workflow steps to each branch as required.

    Open properties of the OR Split and add the following code snippets to Branch1 and Branch2. These code snippets help choose a branch based on the user action in AEM Inbox.  

    Code snippet for Branch 1

    When a user clicks Approve in AEM Inbox, Branch 1 is activated.  

    function check(){
       var action = workflowData.getMetaDataMap().get("actionTaken","");
    log.info("action " + action);
       return action=="Approve";
    }

    Code snippet for Branch 2

    When a user clicks Reject in AEM Inbox, Branch 2 is activated.   

    function check(){
       var action = workflowData.getMetaDataMap().get("actionTaken","");
    log.info("action " + action);
       return action=="Reject";
    }
  9. Add other workflow steps to build the business logic.

    For the mortgage example, add a generate document of record, two assign task steps, and a sign document step to Branch 1 of the model, as displayed in the image below. One assign task step is to display and send to be signed loan documents to the applicant and another assign task component is to display signed documents. Also, add an assign task component to branch 2. It is activated, when a user clicks Reject in AEM Inbox.  

    For the complete set of values of all the fields of the assign task steps, document of record step, and sign document step configured for example mortgage application, import the example package, available for download in the starting of this section.

    The workflow model is ready. You can launch the workflow through various methods. For details, see Launch a Forms-centric workflow on OSGi.

    Workflow-Editor-example-model

Launch a Forms-centric workflow on OSGi

Submitting an application from AEM Inbox

AEM workflows allow you to list a Forms-centric workflow as an application in AEM Inbox. The application is the adaptive form associated with the workflow. When an application is submitted through Inbox, it launches the associated workflow. To make a Forms workflow available as an application in Inbox, do the following to create a workflow application:

Notă:

You must be a member of the fd-administrator group to be able to create and manage workflow applications.

  1. On your AEM author instance, go to > Forms > Manage Workflow Application and click Create.

  2. In the Create Workflow Application window, provide inputs for the following fields, and click Create. A new application is created and is listed in the Workflow Applications screen.

     

    Field Description
    Title The title is visible in AEM Inbox and helps users choose an application. Keep it descriptive. For example, Savings Account Opening Application.
    Name   Specify the name of the application. All the characters other than alphabets, numbers, hyphens, and underscores are replaced with hyphens.  
    Description The description is visible in AEM Inbox. Provide detailed information about the application in the description fields. For example, Purpose of the application.
    Adaptive Form

    Specify the path of an adaptive form. When a user starts an application, the specified adaptive form is displayed.

    Note: Workflow applications do not support forms and PDF documents which are longer than one page or require scrolling on Apple iPad. When an application is opened on Apple iPad and the adaptive form or the PDF document is longer than a page, the form fields and content from the second page are lost.

    Access Group Select a group. The application is visible in AEM Inbox only to the members of the selected group.
    Prefill Service Select a prefill service for the adaptive form.
    Workflow Model Select a workflow model for the application. A workflow model consists of logic and flow of the business process.  
    Data File Path Specify the path of the data file in crx-repository. The path is relative to adaptive form payload and contains the name of the data file. Always include the complete name of the file including extension, if applicable. For example, [payload]/data.xml.  
    Attachment Path Specify the path of attachments folder in crx-repository. The attachment path is relative to payload location. For example, [payload]/data.xml.  
    Document of Record Path Specify the path of Document of Record file in crx-repository. The path is relative to adaptive form payload location.  Always include the complete name of the file including extension, if applicable. For example, [payload]/DOR/creditcard.pdf.

    Notă:

    If you are logged in as an administrator, you can select any group for the Access Group field. If you are logged in as a non-administrator user and you are part of the fd-administrator group, then you are able to view only those groups which you are a member of. To make another group appear for the non-admin users, make the group part of the fd-administrator group.

The workflow application you created is available as an application in Inbox. Users who are members of workflow-users group can fill and submit the application that triggers the associated workflow. For information about using AEM Inbox to submit applications and manage tasks, see Manage Forms applications and tasks in AEM Inbox

Submitting an adaptive form

You can configure the submit actions of an adaptive form to start a workflow on submission of the adaptive form. Adaptive forms provides the Invoke an AEM Workflow submit action to start a workflow on submission of an adaptive form. For detailed information about the submit action, see Configuring the Submit action.

Using a watched folder

An administrator (a member of fd-administrators group) can configure a network folder to run a pre-configured workflow when a user places a file (such as a PDF file) in the folder. After the workflow completes, it can save the result file to a specified output folder. Such a folder is known as Watched Folder. Perform the following procedure to configure a watched folder to launch a workflow:

  1. On your AEM author instance, go to > Forms > Configure Watched Folder. A list of already configured watched folders is displayed.

  2. Tap New. A list of fields is displayed. Specify a value for the following fields to configure a Watched Folder for a workflow:

    Field Description
    Name Specify the name of the Watched Folder. This field support only alphanumeric.
    Path Specify the physical location of the Watched Folder. In a clustered environment, use a shared network folder that is accessible from AEM cluster node.
    Process Files Using Select the Workflow option.  
    Workflow Path Select a workflow model.
  3. Tap Advanced. Specify a value for the following field and click Create. The Watched Folder is configured to launch a workflow. Now, whenever a file is placed in the input directory of the Watched Folder, the specified workflow is triggered.  

    Field Description
    Payload Mapper Filter When you create a watched folder, it creates a folder structure in the crx-repository. The folder structure can serve as a payload to the workflow. You can write a script to map an AEM Workflow to accept inputs from the watched folder structure. An out of the box implementation is available and listed in the Payload Mapper Filter. If you do not have a custom implementation, select the default implementation.

    The Advanced tab contains more fields. Most of these fields contain a default value. To learn about all the fields, see the Create or Configure a watched folder article.

Submitting a correspondence management letter

You can associate and execute a Forms-centric workflow on OSGi on submission of correspondence management letters. In correspondence management workflows are used for post processing a letter. For example, emailing, printing, faxing, or archiving final letters. For detailed steps, see Post processing of letters.

Additional Configurations

Configure email notifications for the assign task step

You can configure the assign task step of AEM Workflows to send email notifications to the users or assignees. Perform the following configurations to enable email notifications:

  1. Go to AEM configuration manager at http://[server]:[port]/system/console/configMgr.

  2. Open the Day CQ Mail Service configuration. Specify a value for the SMTP server host name, SMTP server port, and "From" address fields. Click Save.

  3. Open the Day CQ Link Externalizer configuration. In the Domains field, specify the actual hostname/IP address and port number for local, author, and publish instances. Click Save.

Purge workflow instances

Minimizing the number of workflow instances increases the performance of the workflow engine, so you can regularly purge completed or running workflow instances from the repository. For detailed information see, Regular Purging of Workflow Instances.

Această lucrare este oferită sub licență Atribuire-Necomercial-FărăModificări 3.0 Ne-adaptată Creative Commons  Postările pe Twitter™ şi Facebook nu sunt acoperite de condiţiile de licenţiere Creative Commons.

Prevederi legale   |   Politică de confidențialitate online