Appian I QA

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 18

INTRODUCTION

Introduction Template:
My name XXXXXXXX am from Hyderabad and Did my schooling +2 and engineering from so and so
school and college.
Am having 4+ years IT experience and in apian 2+ years of experience.
Initially I was joined as Nest developer then was cross skilled to appian.
The Client(Apex Ireland) has couple of appian applications and was initially put up in support,
There used to work on
1.Create appian users.
2.Grant and Change business access roles and responsibilities.
3.Monitoring the application instances. If any failure instance, find the root cause and analyse the
issue and retrigger them.
4.Work on incident tickets raised by users via ticketing tool(salesforce/ServiceNow).
From last 2+ year am working as Appian developer and been part of Development, currently am
working on Customer On boarding application.
We have daily scrum calls, stand-up call with Scrum Master and product owner. To discuss on
progress and tell if any challenges.
As part of this app, have worked on
• Process Models
• Expression rules
• Interfaces
• Sites
• Records
• Integrations ( have worked ? which ? Sharepoint )

Agile is methodology: JIRA is the tool used to track


Agile Cermonies
• Product Backlog refinement
• Story pointing
• Daily Stand-up Call
• Peer review and Business Review call
• Deployment call
• Retrospective call

CUSTOM DATA TYPE


CDT: Custom Data type
We can cretae CDT in 4types/ ways:
1. Create from scratch
2. Duplicate Existing Data
3. Create from Data Base/ View
4.Import XSD
Example: Employee structure is a CDT and the best is XML Schema Definition (XSD):
using this we can create /update CDTAppian.
any time we can update & give column length &
give proper names for colums
Few annotations we can use in XSD :
@ID to Primary key
@GenerateValue to Auto Generation
@Table to define tablename
@ Column to define column

General Flow:
1. Collect Details from User
2. Save Details
3. Send details to the Process Model (Map form, map rule inputs to the process)
4. Send details to Data Base

Rule Inputs :
UserForm
{
FirstName : "Ram" -------------> rueinputs---> ri!firstName
}

Active Class Parameters :


ac!FirstNameNode/step/stageInputs
rule input mapping scope --- with in the
node

Process Varibles : pv!firstName


Save details in Process model using process
variblesScope : End to End Process
Process Model
Process
PropertiesTask
Properties

 Create Process --------------Name,Id --- PM!Name


 Executing a Process----------- PP!Id, PP!Name
 Each Process have different steps/Nodes tp!name,tp!id

rules :
Call one rule into another rule : rule!yourRuleName()
A(
"Hi this is A" )
B
(
rule!A()---------//"Hi this is A"
)

Constant : To hold single\Multiple values we can use constants


in appian few objects can not be called directly so use constant to hold the object
referrence
Example; to call a folder or to call a proces model in start process link or to call any
entityTo call any constant in any Rule : cons!YourConstantName
AGECONSTANT =
19A(
Age=cons!AGECONSTANT
)
PROCESS MODEL
Process model

1. Best practices of/ a process model:

>We can use start process smart service node over sub proces smart service node
because start process will have good performance when compared to sub process.
>We can use alerts settings to notify error information to the groups.
>We can also use Exceptions and Escaliations.
--Exceptions is for To skip the node or to execute exceptional flow in the process
where we want to skip activity we
--Escliations is used to re assign the task or send notification to user where assigne
isdelaying the task
>Best practice is to create upto 30 to 50 nodes but there is no limit in process model
nodes and can use 50 varibles but there is no limit but to maintain the memmory
efficient processmodel we will use 50 variables

2.Data Management: It is used to archive/delete the completed processes after


completion orcancel of the process instances.

for example : if we give archival as 3 days for any process model, once process is
completed or cancelled that process instance will be removed from system & It will keep
in backend side memory.
for example : if we give deletion as 3 days for any process model, once process is
completed or cancelled that process instance will be removed from system & It will not be
stored in the back end
if we use archival we can restore archived process instance using unarchive command
in backend side or else we can raise a ticket with Appian they can help us to get back
archived process instance

3.Swimlanes: To divide process model in horizontal or vertical order to understand the


business flow
for example: user flow & manager flow in same process model like one after another

4.Activity chaining: To override the sub sequent tasks to the same user... who have
accepted first task , same person can complete sub sequent tasks
But there will be a Limit, it is upto 50. if it is more than 50 we can use parallel
processing but i didn't see that scenario

WHEN ACTIVITY CHAINING WILL BREAK:


When we use time event it will break more that 50 nodes
Between two nodes if the delay is more than 10 sec it will break
Even if we cancel the task flow will break and activity chaining will break

What is activity chaining?


Activity chaining is used when the same user wants to complete two user inputs task
one after other. If we enable activity chaining between these two user input tasks then
after submitting thefirst form by first user then immediately second form will be displayed to
the same user, if we don’t enable the activity chaining then after submitting the first form
then the second task will appear in Tasks Tab.

What is Exception and escliation?


Exception : To skip the node or to execute exceptional flow in the process
Eg: if user is not completing the task with in time we can skip or go to other flow.

Escalation: To re assign the task or send notification to user in final state.


How to configure paralell processing in process model?

Using AND gate way we can configure paralell processing in process model.

Different types of gate


AND: It will wait for all incoming paths to reach the node once all the incoming paths
reaches the nodes then the outgoing paths will be executed simultaneosly.

OR: It is like if and if condition the condition that become true those outgoing paths willbe
executed hence there can be multiple out going paths executed.

XOR: It is like if else conditon when conditon is true from all the multiple outgoing paths
only one outgoing path will be executed based on condition.

COMPLEX: Combination of all gates.

Few Different types of nodes in process model?


User Input Task -- to configure form to the end user
Write to data store -- at a time one table we can store /update in data base
write to multiple data store - more than one table we can store /update in data
basescript task --- unattaend node to perform any operations
sub process -- to start another process ( Asyn/Sync) from parent
process start process -- to start another Astynchronous process from
parent process

Difference between start-process and sub-process?


sub process -- to start another process ( Asyn/Sync) from parent
processstart process -- to start another Asynchronous process from parent
process
>We can use start process smart service node over sub proces smart service
nodebecause start process will have good performance when compared to sub process.

Sub Process : Synchronous --sub process: sub -- parent & child run on same
enginestart Process -- Asynchronous -- good with performance becz parent &
child process wil run on different engine
Dsitribution will happen while executing so load balancing will happend in the backend

Synchronous --parent will wait for child process to continue and in this we can send input -
get -ouput from parent to child to parent
Scenario : on boarding an employee there is one main pocess which has sub process to
complete BG verification once verification is completed then only employee on board
processwill be completed

Asynchronous--parent will not wait for child process and here we can send input from
parent to child but we cannot get -ouput varible values from child to parent
Scenario : on boarding an employee there is one main pocess which has sub process to
complete Bank account creation there is no depredency on sub process ...Parent On
board process will be completed irrespective of the sub process completion

What is hidden variable


To hide the varible from history of the process instance and from process reports
Its kind of cache varible with in the process model to improve the performance of theflow
we can use Hidden Varible We can configure on Varibles tab in the process model
Gate Ways : 4types
XOR: One outgoing path will be execute
OR: The Condition become true one or more outgoing paths
AND : Parellel flows with out any condition configuration
Complex: It is a combination of All Gates
Triggers --to start a process automatically based on scheduled time

How many ways a Process Model can be Triggered or started?


 From Application Action
 From Record Related Action
 From Submit Link or Button of a Process start form
 From sub process (Synchronous/Asynchronous)
 From Receive Message Event in Start Node
 From Timer Event in Start Node.
 Start process smart Service.
 Start Process smart function
 Start Process link
 Servlet
 Through External system (Exposing PM / Web Api)
 Through End Event

Rule Event :

At any time in a process model when there are certain conditions that need to be met
before the process flow proceeds, an intermediate rule event should be used

What is the difference between End Event and Terminate Event?

A process can have multiple End Events.process is reached to end event other flows in
the process model will not be effected means other flows will be active in the process
model
Example : If we have multiple indivisual flows we can use end evnt for each flow
Example : Customer On Boarding in bank where we can start different flows for onborded
customer
Terminate event can be used to stop all flows of a process,Process is reached to
Terminate event other flows in the process model will be effected & Terminated

Example : If we have multiple dependent flows we can use Terminated event for few flows
Example : Customer On Boarding in bank where we can start different flows for onborded
customer but in this his credit score verification flow says he has less than expected
credit score we can cancel on boarding process to the customer

Pass as a reference :
We will use this option from parent process to sub process flow in the sub process smart
service we have option called pass by reference
we can get updated values in parent process if we update in sub
processIt is not a best practice to use as we can not expect behaviour of
variables pass by value :
only we can send values to sub process but we can not get updated values in parent
processif we update in sub process
MNI :
multiple node instances
to assign same task to group of users we can use MNI but it is not best practie due
toperformance we can't use MNI
Limit is 1000
user input
task
instead of MNI , looping is better in process model to execute sigle node in multiple times
SCENARIO:
If we want to send feed back form to all users in the group all the group members can
submitindivual feed back
Process varaibles :
Creating a Process Variable
In the Process Modeler, select File > Properties.
Click the Variables tab.
Click Add Variable
Parameter: Select this checkbox if you want the variable value to be entered when
theprocess starts using a Process Start Form
Required: Select this checkbox if you want to require the parameter to have a value before
theprocess starts. You can specify a default value if the user input should be optional.
Multiple: Select this checkbox if you want to store an array of values.
When typing a process variable's default value directly in the field, use commas to
separatethe items. For example, "a","b","c","d".
Hidden: Select this checkbox if you do not want the variable's values to be used in reports
that use this process or process model as the context or available for mapping to parent
processes when the process model is used in a Sub-Process Activity. You can not make a
variable hidden if it is a parameter.
Changes to hidden variables do not appear in the process history.
To expose the process variable within newly started process instances, clear the Hidden
checkbox.
a!startProcess(function): Asynchronous process--when I use this function we can start
the process from an interface Use this for unattended activities related to a specific piece
of information from the the interface.
a!startProcessLink: Synchronous -- when I use this function we can start the process
from an interface to the initial chained forms in interface . Use this for taking the user to a
process related to a specific piece of information on an interface and come bac to the same
interface.
Function: a!startProcessLink()
Defines a link to start a process. Users are shown the start form or first chained
attendednode and any subsequent chained forms
Example:
a!linkField(
links: {
a!startProcessLink(
label: "Update Customer Details",
processModel:
cons!UPDATE_CUSTOMER_DETAILS_PM,
processParameters: {
customerId: ri!customer.id
},
bannerMessage: "Updated details for " & ri!customer.name
)
}
)

Escalation Scenario :
In any real time scenario /business-flow if user should approve the task or complete
thetask based on flow but he is delaying it in such cases if any escalations are configured
on top of it the perticular approval task will be reassigned to other person orelse we can
notify with email there are four options to configure escalationson top of node
Exception Scenario :
For example in the business flow if user should approve the task or any integration or
elseany automated activity is taking more time in such cases if we want to skip that
flow and execute other flow or else to run same foow with looping there we can configure
Exceptions Exceptions we can configure with two options one is rule condition or timer
condition on topof node
Sub process ASynchronous scenario :
In the real time scenario if we have sub flow example if we want to send an email about
approval status which is configured in sub process which is not dependent on parent
processflow there we can configure sub process flow as asynchronous
Example : Customer request --- send email notification to customer about request
confirmation ( sub process flow )

Sub process Synchronous scenario :


In the real time scenario if we have sub flow example if we want to wait for maanger
approvalstatus to complete next sub sequent flow. Means main process flow should wait
for child process flow there we can configure sub process flow as synchronous
Customer request --- wait for manager approval ( sub process flow )-- send an email

Activity class varible :


We can use ac varibles to use at node level for mapping values or else to use on top of
nodelevel Its not possible to hide ac varibles
Process varibles :
we can use process varibles to use in process model to store the values in process model
wecan use process varibles Its possible to hide process varibles using hidden option
whenever we create process varible we have 4 options
Parameter : To select varible as parameter to the process means input to the process
Required : Whenever we select required that means process parameter varible is
required before starting the process
Scenario : Whenever you have to start this process we have pass this varible value we
use in paramter process models related action or else su process with inputs
Multiple : If we want to create process varible for multiple means to store multiple
employee details in process varible

Triggers :
we can configure triggers in process model start node .For example Team wants to send
an email report to all team members daily or weekly basis so you want scheduled
process model which will run automatically without user interaction there we can
configure Triggers we have option Triggers on start node there Timer option would be
there to setup trigger onstart process model based on given time
Proces properties :
Deafult varibles in process model which will give you process runtime properties like
processid & process start time
Process Model Varibles :
Deafult varibles in process model which will give you Process model properties like
processmodel name & who created process model

Process Model best practices :


Data Management- Archieve process instances in 3-7 days
Alerts: CONS!PROCESS_MODEL_ALERTS
Annotations should be clear and easy to understand for a citizen developer
Use keywoards like "Get", "Set", "Update","Remove" while adding labels nodes
Concate the unique ID of main object that process is handling to display names of
processinstances
Processes should have start forms if you want to map them on sites
Use spaces and Caps for first letters, as the common rule for typing titles in English
fornaming process models
User Input Forms should be Quick Tasks if we don’t want tasks to appear in the
defaultAppian Task List Administrators should have admin permission over the Process
Models folder. All Users aregoing to have Viewer access Use swimlanes to categorize
process nodes and make the workflow readable.
Example: User,System, Approval flow, Database Use activity chaining when you have
to perform a set of actions together. Ex: Forms inchaining, actions
Syncronous sub-process: Use when you want the parent process to wait for the sub-
processto finish before moving to next node
Asyncronous sub-process: Use when you don't want the parent process to wait and
immediately move to the next node.
XOR, OR, AND, COMPLEX logical gates - Check if you have used the correct logical
gatesaccording to your use case
All updates have been logged in process model annotations
Dummy nodes between two logical gateways
Process flows are optimized and easy to understand
Models contain no more than 50 process variables
XOR gateways are used in front of MNI nodes to check for empty/null values
Process flow will always reach at least one terminating end event.

INTEGRATIONS

Integraton :
we can use to get data from outside system and we can have differnt authentication to
connect third party system for connecting to external system we will use Connected
system object then we can useconnected system in Integration object

In Connected system we have diff Authentication Types :


Basic
API
Key
Session based

OAuth 2.0 (Token System,End Point validation)

Once we call integration in our Process model using Call Integration smart service using
Get method we can get output data from that service then we can convert output data to
specified CDT format then we can use formated out put data to display to report or
anywherein Appian
Similarly we can update data in third party system using post service in Integration object
here we can send data in Json format once we send data to Integration object We will
getoutput that can be validated based on result data and status code like 200 --- Successfull,
404 - Error ,503- Server Error

Rest services I have used : No


Methods : i have used

GET -- To get data from third party


systemPOST --to update/Create

Web API :

From Appian side we can publish or expose data like Appianprocess data or
expressionresult data or DB data using Web API
once we create web API using start process function we will get one URL and we have
to create one system account to access Appian Web API
we have to share URL and Authntication details to third party people they can access
fromthier system
here Third party people can update data or create new data or query data using our
ProvidedWEB API URL
Type of integration methods:
Get : to get the data from outside system
Post : to update/send data to the outside system
We have Put /delete patch but I don't have much exp on it
what Smart services We can use for Integration & web API

Call Integration smart service --- to call rest integration in Appian


Call Web Service smart service --- To call SOAP service from another system to Appian

What is the difference between integration and web api:

Integration : Call Integration smart service


Web API: Call web service smart service

Integration : to get data from outside system to Appian we use Integration


here we can use Post and Get methos
Get : to get the data from outside system
Post : to update/send data to the outside system

WEB API : to expose Appian data to outside system in the form of Rest API we can use
WebAPI
once we create we will get URL we have to give to the outside system they can use web
Apiwith proper Authentication which is defined by admin to connect the third party
applicatons

RECORDS

Record Type: Shows the data related to Specific entity or from multiple entity to give
moredetails to the end user.
There are 3types of records:
1.Entity Record get data from DB table --isnurance details & rqeuest detals
records
2.Process Backed records from process data source
Scenario:
to get running process details
to get update on running instance for process in the running flow we want to update & add
documents
3.Expression(or)Service backed -- to get data from outside system like third
partyapplications we have to use integration to get data.

Record type has different configurations


Summary Views: It will give in depth details of the record wen we configure interface
onsummary
Related Actions: A configuration on records to start a process within the context of a
recordview. Use this for processes for any update or delete operations on existing record
If we want to update any reuest details we can use related action
while confguring views or related action we can give visibility condition for different
users/groups to access.
Exmple; If we want to modify existing customer details we need to uise related actions
List option : to display column details of given source entity

Tempo is default user interface wih 5tabs:


Sites is one of the Basic User interface.
We can create customizable portal for end users using site
we can configure 5 pages that includes
Reports,
Records,
Actions --- While configuring action we need process model that model should have
startform without startform we can't configure process model as a action
--In a site And we can not configure News tab in Sites & Tasks tab also but we can
get task details using task report configuration in sites and We can't configure Quick task
in sitesbut In tempo we can configure Quick task on Process Records.
--In admin console we can configure URL & group to give access to the site

Folder :
rule
process
knowldge center
document folder

Object Search :
we can search object using global search option from right side
menuor else you can use filter with left side object search

Links & Grids :

Dynamic Link - Defines a link that triggers updates to one or more variables.
Start Process Link - Defines a link to start a process and navigates the user through any
initialchained forms.
Process Task Link - Defines a link to a process task
Paging grid - displays the data in a tabular format with pagination at the bottom right
cornerof the grid and all the fields are read only. Designer can configure selection on the
pagination. Paging gridcan be created by a!gridField.
Editable grid – displays the data in a tabular format allowing the user to edit the field’s
inline.It will not have a pagination.
SECURITY

Security :

we can give security for each object in Appian for few objects we can't give security
example CDT why becz That is depends on another objet security like Inteface but in
interfaces we cannot provide seuirty to cdt as it we can inherit security from parent objets
Security Roles : for all objects
Viewer --end user datastore & process model & folder & record type
Editor ---
Admin
Deny

Security Roles : for Process Model

Initiator -- He can start the process but he can not have access to the process
reports
Viewer -- He can start the processs but he can have access to the process reports
Manager -- almost similar to editor
Editor -- He can edit the details but he can’t delete
Admin -- Admin can do all operations

For Developers we can give Editor rights for end userd Viewer & Initiater

DEPLOYMENTS & VALIDATIONS

Deployments : We use manual deployement

We can export Application or patch file from Application and we can import in Target
system(Prod/Test)

while exporting we need to check depedents & missing precedents objects if anything
ismissing we can add to the patch then export it

while importing we need to verify inspect to check for any error if all are good then
onlyimport in Target system

Constants & integration values are diff for diff env:


we can use customization properties file to give environment level values for different
objects

example : constant value is 10 in Dev environment but we can use different value in
Production or Test
In real time we can use for Connected system / Integration URL we can definebased
on environemnt specification

Validations :

we can use validation to validate entered data in form we have two types one
ison component level we can use validation option with conditions
a!textField(
label: "5 Characters",
instructions: "Character count: " & len(local!varA) & "/5",
value: local!varA,
saveInto: local!varA,
refreshAfter:
"KEYPRESS",
validations: if(len(local!varA)<=5, null, "Enter no more than 5 characters")
validationGroup:if(local!isNumberValid,"Future_Hire","")
),

Validation Group :

We can validate all components conditions at a time based on button click where we
define validation group name is same

a!buttonWidgetSubmit(
label: "Onboard Employee Now",
value: false,
saveInto: local!isFutureHire,
validationGroup: "Future_Hire"
)

FUNCTIONS & UI
Load variables will be initialized once the form is loaded
We can use load variables in
SaveInto and a!Save()

With variables will be recalculated each time when the expression is re-evaluated.
We can not use with variables in SaveInto
anda!Save()

locavaribles have refresh mechanisum(refresh variable will be used in that so we can


use )instead of load & with

In local varibles function we have refresh functionality using refreshvarible() function


basedon this we can refresh varible
for updated values using

1. change target varibles


2. using time frame mean every 5 seceonds if we want to update or refresh the values
wecan use time

Start Form: before process starting If we can conigure a form this will not take memory
initialy as process model wil not be started when we are configure start form as it is
avaiable to use before process instance is started

User Input Form: This will be used to configure a form after process started only the form
willbe avaible to user

Diff B/W length & Count :

Length: Returns the count of non null values


Count: Returns the count of the elements in the array including null values.

apply() function call a rule or


function for each item in list
andprovides any context
specified
applycomponents()function Calls a rule or
function for each item in a list and supports
the preservation of the local state on
interfaces NO

fo each function is replcement of apply & applycompoents

!forEach(items: {100, 200, 300}, expression: fv!item + 1) returns {101, 201, 301}

!forEach(
items: {"1"},"2""3},
expression: union(fv!item,append(fv!item))
)
* It will give us 1,2,3 as out put here each one item will be display from array

Where() Returns the indices where the values in the input array are true.
Where({true,false,true})—1,3 true indexs

Wherecontains() Receives one or more values and returns an array of indices that indicate
theposition of the values within the array.
examle:Wherecontains(20,{40,20,30})—2

Index(array,index,default) returns array[Index], if it is valid else returns default value.

Contains() Checks whether an array contains the value.


contains({10, 20, 30}, 20)- true
Difference()Returns the values in array1 and not in
array2.difference({10, 20, 30, 40}, {30, 40})—10,20

ToString() Converts a value to Text. If an array is passed in, its values will be
concatenated toform one string. To preserve the original array structure, use
touniformstring.Tostring({1,2,3})--"1, 2, 3"
ToUniformString() Converts a value to Text, preserving the original scalar or array
structure. To concatenate the array into one string, see tostring.
touniformstring("John Doe 1060 West Addison Chicago", "IL",15)-- John Doe
1060 WestAddison
Chicago; IL; 15

Diff B/W length & Count :

length: returns the count of non null values


count: returns the count of the elements in the array including null values.
QURIES

Query: Data stores used to make a connection from the appian to external relational
databasewe can map CDT to the table using Data Stores

Query Types :

Query Rule --- Removed --- It was a Direct


ObjectQuery Entity -- - function - this is frequently
used one

queryEntity( entity:cons!YO
UR_ENTITY() query:query()
fetchTotalCount:
)

Query Rules : It is removed from

AppianPerformance Medium
Retrieves all rows
retrun type is an Array of CDTs or a DataSubset of CDTs

Different example where we use write to datastore smart service and multiple write
multiple to datastore smart service and best practices of using them

To send one CDT /Entity details to the Data base table we use write to datastore smart
service where as for updating mutiple entities/tables to the data base we use multiple
data store entity smart service

a!queryEntity()
Performance Fastest
specified columns
Retrieves
retrun type DataSubset of Dictionaries

Will it be possible to get data from Database based on the grouping of a certain
column?
Yes we can use isgrouping attribute in Query Aggregation column.
a!queryAggregationColumn(
field: "department",
isGrouping: true
)

What are the different ways to get the data into Appian from Database?

We can get data from Database to Appian via Query Rules.


We can get data from Database to Appian via Query Entities
We can get data from Database to Appian via Query Database smart service.
We can get data from Database to Appian via Execute stored procedure smart service.
We can get data from Database to Appian via External Service.

aggregation:
a!queryAggregation(aggregationColumns: {
a!queryAggregationColumn( fie
ld: "department",
isGrouping: true
)
}
),
a!queryEntity(
entity: cons!EMPLOYEE_ENTITY,
query: a!query(
selection:
a!querySelection(columns: {
a!queryColumn(
field: "phoneNumber"
)
}
),
logicalexpression:
a!queryLogicalExpression(operator: "AND",
filters:
{ a!queryFilter(
field: "id",
operator: "=",
value: 8
)
}
),
pagingInfo:
a!pagingInfo(startIndex: 1,
batchSize: 1
)
)
).data
)

DEBUGGING
Debugging :

When we get error in running process instance first we have to check with name or
process idin monitoring tab

once we found that proces instance open that and there is two options one is monitoring
mode & another one Edit mode...........open with edit mode to edit runtime process
instance

do changes as per error details and save the process using apply changes option from
file menu

once we do apply changes all modified changes are effected in running process instance
thenstart the instance from where it got strucked

this is the way we can resolve the running instance issues

if we have 1000 s of instances in such case cases we have to use IFM manager smart
servicebut I don't have much exp on it

Challeges :

Whever we were using bigger processes initially we have divided in into smaller proceses
at that time I was given major contribuion to create new flows with existing process
design thathelped to our project to improve & re use the process models
And while migrating old project with new design due to performance issues we have
faced somany issues like query entity was taking more time at that time I have designed
modifed process migr

We have updated CDT in the middle of the development at that time I was updated Data
basetable and CDT with XSD mapping

AGILE & CHALLENGE

Agile :

We can get work from Jira tool where we get assigned with user stories each story can
havemultiple data points based on that I can work and once work is completed I will
submit for PeerReview to validate design code.

Once peer review completed We can design document and give final review
deploy changes Or patch file in Production
once deployment is completed will do cycle -- testing like regression & smoke testing
12 sprint every 2 weeks sprint one deployed

per sprint vice -- per two weeks we can deploye latest changes.

While deploying we will import customization file to give environent specific details for
eachenvionment

ac : with in the node for cache varibles for mapping in data base i can add column later add
in cdt using xsdthem to datastore to table

we have to use sorry repeat


DDL script from datastore
yes

Team Size: 7 mem they will assign work with Jeera tickets based on user stories i
cancomplete my work & submit to my team.

Excel Reading :

We will use excel reading using excel tool plugin this is external plugin we have to
download from Appian Market
Deploy using admin help then all functions & smart services are available for
useThen we can use this for reading excel file using readexcel function
and we can get data and convert that data to excel file
excel can support 1 Lac records
based on busines flows we can decide if it is required we can chnage default settings 7
days process instances completed & cancelled
properlysub process instances which are completed we can delete
immidiately
synchronous process instances in the flow we can delete immidiatley yes we ca we
canemail & DB flows
Debugging :

server side I am not sure about it admin people can do

When we get error in running process instance first we have to check with name or
process idin monitoring tab

once we found that proces instance open that and there is two options one is monitoring
mode & another one Edit mode...........open with edit mode to edit runtime process
instance

do changes as per error details and save the process using apply changes option from
file menu

once we do apply changes all modified changes are effected in running process instance
thenstart the instance from where it got strucked

this is the way we can resolve the running instance issues

if we have 1000 s of instances in such case cases we have to use IFM manager smart
servicebut I don't have much exp on it

Challeges :

datasubsetdownloadlink()
SQL to export & Excel
tools

While creating one process model I have to use other process design in same process at
thattime complex expression data we are fetching with logic so I have simplified with
exact flos with conditions

I have modified existing process with re usable process when we were using lots of
nodes and process data I have completely removed and updated with latest design with
all best [practice of the process hen It was very helpful to users to get better business
flows

While using grids faced issues like need to fetch data from two tables at that time I have
created view based on existing two tables after that I have mapped CDT for created view
then use view data in grids It was bit complex for me at that time but I did mysef I got
good feedback from my manager & client

Whever we were using bigger processes initially we have divided in into smaller proceses
at that time I was given major contribuion to create new flows with existing process
design thathelped to our project to improve & re use the process models

And while migrating old project with new design due to performance issues we have
faced somany issues like query entity was taking more time at that time I have designed
modifed process migr

coding & data base data we are getting lot of rows at the time I have re modfied code
togetdata

We have updated CDT in the middle of the development at that time I was updated Data
basetable and CDT with XSD mapping

You might also like