Day 7: ¿Que entendiste de: Process Modeling 101: Automate Your Business Processes?
Discussion posts and replies are publicly visible
Automate your business processes
Plan an Appian Process
Appian auto genera default process models. Podemos ocupar estos procesos y extenderlos o podemos crearlos manualmente.
Create and secure process models
Process models no heredan la seguridad del folder padre
Debe aplicarse la seguridad por individual usando grupos
Administrator es el grupo con la mayor cantidad de permisos, es decir está en el más alto nivel
The process modeler and configure properties
Puedes añadir smart devices al canvas para:
Enviar un E-mail
Integrar un servicio web
Ejecutar un proceso robotico
Para generar documentacion de nuestro process models podemos ir a tools -> generate documentation
Una vez que generamos un nuevo process model debemos dirigirnos a la configuracion de alerts y data management, Alerts nos determina quien recibe una alerta en caso de que ocurra un error en una instancia.
Data management la ocupamos para archivar o eliminar procesos, esto debido a que los procesos guardados ocupan espacio de memoria y pueden afectar el performance de la aplicación. El manejo del mismo dependera del data retention policy de la compañía.
Deadlines -> se ocupa para realizar un "trigger" y escalar a cierto usuario en caso de que una tarea no sea completada
Configure a Start Form and process variables
Rule inputs pueden facilmente pasar datos entre process models e interfaces, ademas puedes ocuparlos como variables para capturar datos de formularios. Para hacer esto las rule inputs deben estar mapeadas a process parameters y estos a process variables las cuales capturan datos a traves de todo el proceso.
Node Inputs and outputs -> Son conocidos tambien como activity class parameters
Node output -> variables que son únicas a un nodo especifico
Node inputs, outputs deben de ser guardadas en process variables para que puedan pasar al siguiente nodo en el proceso
Para arreglar issues debemos "save and publish" antes de hacer nuestro debug
Configure a user input task
Se configuran user input task cuando necesitamos asignar una tarea a usuarios
Al configurar una tarea podemos configurar una escalacion o excepcion
La escalacion permite que la tarea pueda ser reasignada o recordada al dueño de la tarea
Caso contrario al configurar una excepcion la tarea no permanecera activa despues de que el timer especifico expirec
Configure Gateways
Controlan el workflow en un process model, basandose en decisiones que podemos establecer
Para configurarlos podemos ocupar el decisión tab
Hay cuatro gateways en Appian
XOR(el mas común): separa un solo camino entre muchos y se basa en una condicion
AND : separa un solo camino entre muchos en donde todos los caminos que deriven del principal serán ejecutados, generalmente es usado si necesitamos ejecutar muchas actividades en paralelo
COMPLEX Selectivamente acepta los flujos entrantes y evalúa cuales de ellos continuan
OR divide un camino entre muchos, pero únicamente se ejecutaran aquellos que cumplan la condicion
Configure a Script Task and Write Record Smart Service
Configuramos scripts con la intención de :
Llevar a cabo una actividad automatizada
Usan una expression para manipular datos
Evaluar una decisión para determinar el flujo
Usualmente son configurados a traves de node outputs
Para asegurarnos que este nodo siempre se ejecute debemos seleccionar "Run as whoever designed this process model" en el assigment tab
Unicamente podemos ocupar Write records smart services con record types quie cumplan la siguiente condicion
Modularize with start processes and subprocesses
La principal diferencia entre estos procesos es el uso de memoria
Start process
Subprocess
Common use cases
Trouble shooting your process model
Publish errors: automaticamente valida que este configurado correctamente, podemos guiarnos con el mensaje de error
Common errors
Datos no capturados, significa que los datos no fueron mapeados correctamente, debemos asegurar que display value y save input to esten configurados correctamente
Datos no escritos en la database table: Debemos checar los inputs y configuracion.
Monitor view
Aquí se encuentran process instances con errores facilmente
Process Details
Aquí podemos investigar variables y errores en sus respectivos tans
Surface a Process to Business Users
Record action
Añadir un record
Actualizar un record
Eliminar un record
Step by step 10 y 11
PDF
Apply Security
Learning Objectives
After completing this lesson, you should be able to:
Create Security Rules
You can create security rules for different users in your application. You will learn how to set up these rules based on
Note that users must have at least Initiator permissions to the action's underlying process model.
Lesson Summary
In this lesson, you learned that you need to set up security for the record type and other objects it is related to, such as a process model, to ensure users can view intended data. Finally, you learned how security can be applied to show or hide sections of your record.
You have now completed the Records course. You should be able to:
Course Objectives
After completing this course, you should be able to:
Lesson Objectives
In this lesson, you learned how to create your first record type relationship inside a record type object. You learned how to review your relationships with the record type relationship diagram. Then you learned how to edit relationships and add suggested relationships. You also learned how to use two record types in the same interface to show an enterprise view of your data. Finally, you learned how to customize your record search.
In this lesson, you learned several ways to set up the aggregate related record fields, custom record field. You also learned how to filter a custom record field, and in what scenarios it may be useful. Finally, you learned how to add a custom record field to an interface.
DEFAULT FILTER: To display a subset of records from the data source, based on filter criterio, ES UNA PRESELECCIÓN…
Next, save your record type. This will prompt the first sync of your record type data which means it is creating a cache of data from your database.
In this lesson, you learned how to use a reference table from Acme Auto’s relational database and apply source filters to create several new record types. You also learned how to reference the related data in a read-only grid.
After you complete this course, you’ll be able to:
Explain what sites and portals can do for your app users
Determine which one is the right fit for your business use case
Create, configure, and secure a site
Create, configure, and publish a portal
DIA 5!!!!!!!!!!!!!!!!!!!!!!!
There are three primary elements that make up the record type object: record data, records, and the record list. Each of these elements contribute to how users will eventually see and interact with the data.
Skip Failed Syncs
If there is an issue syncing your data, you can configure Appian to skip a failed sync, and to instead use data from the last successful sync. Access the Sync Options tab, and ensure that the Skip Failed Syncs is turned on. This way, your application users will be able continue viewing and acting on data from the last successful sync, without experiencing any disruptions.
In this lesson, you learned how to create a new record type object sourced from an existing database and how to generate a database table from within the record type object. You also learned how to enable data sync on a record type so the vehicle data is cached in Appian, and how to configure Appian to skip a failed sync and to use data from the last successful sync instead. Next, you learned how to initially configure the fields you would like to include in the record type. Finally, you learned about the data model overview screen that shows you the current data structure of your record as well as related record types.
Query a Record Type
a!queryRecordType( )
Before we walk through how to return a single row of data, let’s briefly discuss how else you might use queries in your applications. First, you may be familiar with the function a!queryEntity(). This function queries your database and returns the requested data. In this lesson you will learn about a similar function called a!queryRecordType( ). Instead of querying a database, it looks up and returns data from your record type object.
You can use this function to return:
In this lesson, you will learn how to generate an expression using the query editor. That expression will query the vehicle record type and return a row of data.
You’ll see this query used for testing, but record data can be used in any interface within an app. Note that this work is being done in the expression rule object and not in the record type.
In this lesson, you learned how to create a new expression rule to pass in a record id and have that expression query the record data to retrieve a single row of data.
Configure the Record List
Apply Filters
Create Record Views
This lesson is all about record actions. There are two types: record list actions and related actions. In this lesson, we’ll go over the differences between the two and have Appian generate each.
RECORD LIST ACTION
A record list action is a link to a process model that a user can start directly from the record list. The most common type of action to configure here is for users to create a new record for that record type. For example, we’re going to configure a record list action to add a new vehicle.
RELATED ACTION
A related action is also a link to a process model. This differs from a record list action because these process models are started directly from a record view and use data from that record.
Día 5Es importante tener en cuenta los medios necesarios para conocer lo mejor posible los procesos de negocio que buscaremos representar a través de nuestra aplicación, con la finalidad de crear un process model en Appian de la manera más eficiente posible, para ello nos apoyaremos de la planificación de procesos en Appian, dentro de las principales buenas practicar encontramos:
Al crear un nuevo proceso, una vez realizados los pasos anteriores, tendremos como nodos iniciales un inicio y final ya creados en nuestro canvas, a la izquierda tendremos nuestra paleta de componentes y en el lado superior tendremos el menú y nuestra barra de herramientas, haciendo énfasis al canvas, el cuál es el componente principal sobre el que estaremos trabajando ya que ahí elaboraremos nuestro workflow, dentro de nuestra paleta de componentes Appian nos proporciona una barra de busqueda y tres secciones:
Dentro de nuestro Canvas podemos dividir nuestra área de trabajo o crear secciones para los grupos que hemos asignado durante la etapa de configuración de seguridad de nuestro process model, es en estas secciones donde podemos crear workflows específicos para cada uno de ellos, dentro de las propiedades globales de nuestro process model tenemos múltiples pestañas, las cuales son:
Para relacionar nuestros procesos con interfaces visuales tenemos que linkearlos a través de las propiedades de nuestro process model y especificar que interfaz queremos conectar, parael intercambio de variables Appian nos dará la opción de asginarlas de manera automática, si este fuera el caso, al dirigirnos a nuestra interfaz, observaremos en el panel derecho reglascreadas para nuestras variables de intercambio, estas reglas nos sirven para realizar un intercambio más rapido y eficaz entre proceso e interfaz, estos parametros pueden ser usados tambiéncomo variables que guardan valores de entrada de nuestros formularios, estas variables también pueden ser creadas de forma manual, otros tipos de variables que se manejan en Appian son:
Estas variables son únicas y especificas por cada nodo, como buena práctica se recomienda debuguear cada vez que un nuevo nodo es añadido,entro de los componentes que podemos incluir en nuestro Canvas nos encontramos con los input tasks los cuáles sirven para asginar tareas especificas por tipo de grupo asignado, dentro de las propiedades que poseen nuestros input tasks tenemos las pestañas:
GATEWAYSControlan el workflow en un process model, son puntos de decisión que controlan la ruta del proceso acorde a los puntos de decisión asignados, los tipos de gateways manejados en Appian son:
Scrip tasksSe utilizan para realizar tareas que no se requiera la intervención de un actor o usuario, como por ejemplo agregar la fecha de captura de un record de un vehículo o el usuario que realizóel registro (para este último se utiliza la propiedad pp!Initiator).
Write recordsLos smart services para realizar operaciones en la base de datos como registrar, borrar y actualizar se usan unicamente para registros que provengan de base de datos, no funcionan con registrosque provengan de servicios web u otra fuente, para esos casos existen otras alternativas, así mismo la información debe estar en modo de sincronización y debemos elevar los permisos.
Procesos y subprocesosComo mencionábamos anteriormente, es importante hacer un uso eficiente de la memoria que disponemos en la plataforma para ello podemos utilizar procesos y subprocesos dentro de nuestro process model, para ello existen importantes diferencias las cuáles debemos considerar para saber cuál usar apropiadamente:
Es importante tener en cuenta que para tareas de investigación en caso de escpeciones podemos ir a Monitoring -> process y con los titulos correctos identificaremos el evento que detonó una expeción.
DIA 6
After you complete this lesson, you'll be able to:
When you assign a display name to a new site, consider the following guidelines.
Watch: Customize Site Branding!!!!!!!!!!!
After you complete this lesson, you’ll be able to:
Common Use Cases
In its simplest form, a portal is one or more interfaces created in Appian and published at a public URL, but it can also include a number of additional design objects. For example, if you want a user to fill out a form, and then launch an Appian process, you'll build an interface and a process model, along with any other necessary objects.
Interfaces added as pages in a portal can't use rule inputs, so you'll use local variables instead.
Portals are publicly accessible, but that doesn't mean they aren't secure.
To control access to your Appian environment, you'll create a service account. A service account acts on behalf of portal users, providing the portal with permissions to connect to selected information and processes in Appian.
You can create the service account directly from within the portal object, but then you'll need to add this account as a user to your app’s All Users group (or any other group that you want to use for your portal’s security).
After you implement all configurations, it's time to publish, test your published portal, and prepare for deployment. Keep a few details in mind:
Before creating a portal form you could need:
OJO el usuario genérico se crea en otro lado!!!
If your app uses record types and you want your portal to display data from Appian, configure the underlying interface using the a!queryRecordType function. This is what our developer did in the interface for the Acme Automobile’s Auditor Validation Portal. She added a local variable - local!maintenanceData - and then used the a!queryRecordType function to query the Maintenance record type.
Tip: You can review this example in the Appian Community Edition environment. Request your instance, and navigate to the Acme Automobile Reference Application. Review the interface used in this app's portal (AA_PRTL_DSH_AuditorDashboard).
Día 6Las interfaces dinámicas se adaptan a las necesidades y preferencias del usuario, muestran lo que el usuario necesita cuando lo necesita, esto reduce el desorden y evita confusión por parte del usuario, Appian nos proporciona plantillas predefinidas con las que podremos modificar y empezar a trabajar, dentro de nuestro entorno de desarrollo de interfaces tendremos dos vistas para trabajar:
Dynamic linksEs un componente visual de las interfaces en Appian el cuál convierte una etiqueta de texto, icono, card, etc., en un componente que nos permiteocultar o mostrar otros componentes visuales dentro de nuestra interfaz.
En Appian es importante considerar que la información desde etapas tempranas del flujo de trabajo se maneja de forma local, antes de esto debemostener importadas nuestras entidades necesarias desde nuestra base de datos, con nuestras entidades manejadas de manera local podremos hacer uso de nuestra información a través de Grids, listas, formularios, etc.
Las variables en las interfaces serán guardadas de manera local, podremos encontrar 2 propiedades en nuestros componentes para almacenar nuestros valores:
DIA 5
Un process Model sólido debe ante todo tener un número razonable de nodos y variables de proceso, debe estar configurado para expirar o ser reasignado después de un tiempo de inactividad. Un proceso largo debe dividirse en start processes o subprocesses.
Un proceso …
Los Smart services son
Un proceso se debe archivar por tres días, y se debe establecer un deadline por cada nodo para que nunca se quede atorado, siempre debemos preveer que el procesos de terminarse.
Para los modelos de proceso:
Día 6
Interfases 101
En este curso aprendí:
Para construir interfases tenemos múltiples herramientas entra las cuales destacan:
Para crear una interfase:
Al crear una interfase tengo claro como
El uso de variables locales requiere comprender perfectamente su entre lo cual los conceptos mas importantes son:
Los usos principales de las variables locales son:
Dia 7
Día 7
Para nuestra aplicaciones contamos con la posibilidad del uso de CDT’s para el manejo de la información de los record types.
En general el manejo de los record type es el ideal para el control de información, pero habrá ocasiones en que el manejo del CDT será ideal para almacenar su información.
Un record type al no estar sincronizado requerirá conectarse con los datos a través de un “data store entity”.
Se usará un data-plugin para definir un CDT como un objeto java.
Al crea un custom document type para la extracción de documentos los campos son representados a través de un CDT.
El modelo de procesos incluye un export del “Data store entity” a “Excel” o a “CVS”, para esto se requiere un CDT como parte de la configuración.
Los CDT tiene como recomendación diseñ*** como se muestra abajo, esto se basa en el tipo de relación que tenga el CDT.
Los tipos de CDT son
Marco Polo Martínez Badillo
En resumen, los modelos de proceso en Appian son representaciones visuales de los flujos de trabajo empresariales que se crean utilizando la vista de analista y diseñador. Estos modelos permiten diseñar, automatizar y gestionar los procesos de negocio de manera eficiente.
Con esta notación, puedes definir las tareas, los eventos, las decisiones y las condiciones de un proceso, y luego conectarlos en un flujo lógico para mostrar cómo se ejecuta el proceso en la realidad, pueden incluir reglas de negocio, formularios, integraciones con sistemas externos y otras capacidades avanzadas para gestionar y controlar los procesos.
Entiendo que dentro de los beneficios clave se encuentran, la supervisión y control que nos va a permitir monitorear el progreso de los procesos en tiempo real, visualización clara con una representación visual de los flujos de trabajo, lo que permite a compañeros comprender fácilmente el proceso, automatización y optimización, pues nos ayudan a automatizar tareas repetitivas, eliminar cuellos de botella y optimizar los flujos de trabajo para mejorar la eficiencia y flexibilidad y escalabilidad, nos ofrece una plataforma flexible y escalable que permite adaptar los modelos de proceso a medida que evolucionan las necesidades de la organización.
Hecho por: Josué Quintero SIlva