Interface ProcessAnalyticsService

All Superinterfaces:
com.appiancorp.services.ContextSensitiveService, Service

public interface ProcessAnalyticsService extends com.appiancorp.services.ContextSensitiveService

ProcessAnalyticsService provides access to reports on entities and events throughout the process application. These reports can be configured through XML and through the interface. Each report type has an associated data set and a display specification.

Generic reports are referred to as "process reports" or simply "reports". Reports intended for display in the processes area of the UI navigation are referred to as "process views"; those intended for display in the tasks area of the UI are referred to as "task views". Reports, process views, and task views are all defined by the same ProcessReport class; they simply denote different intended uses of this class.

Methods of service classes can all throw the runtime exception ServiceException if any system-level error (for example, server failure) occurs, and will in general throw a checked exception (InvalidXXXException) when an entity to be retrieved is inaccessible, instead of returning null. Exceptions to this paradigm (including the use of ResultList as described below) are noted. All checked exceptions extend AppianException.

It may be necessary to retrieve a subset of results as opposed to an entire collection, and also to sort the subset by some property of the returned object. "Paging" methods which return a ResultPage are provided in certain instances for this purpose. The ResultPage will contain the sorted subset of results (via Result.getResults()), and the total number of items in the available result set (via ResultPage.getAvailableItems()).

It may also be necessary to retrieve some results, even if all results cannot be retrieved (for instance, some of the entities corresponding to a list of entity IDs may no longer exist). Methods which return a ResultList are provided for this purpose. The Result.getResults() method in this case will return all results which can be retrieved. In addition, there will be a list of result codes (ResultList.getResultCodes()) that represent the successful retrieval of an entity, or, if the entity could not be retrieved, the reason for the failure. See the CODE_XXX constants in ResultList for details.

  • Field Details

    • activateUserSession$UPDATES

      static final boolean activateUserSession$UPDATES
      See Also:
    • getMyTaskCount$UPDATES

      static final boolean getMyTaskCount$UPDATES
      See Also:
    • getTaskCountForUser$UPDATES

      static final boolean getTaskCountForUser$UPDATES
      See Also:
    • getAllTasks$UPDATES

      static final boolean getAllTasks$UPDATES
      See Also:
    • getAssignedTasks$UPDATES

      static final boolean getAssignedTasks$UPDATES
      See Also:
    • getMyTasks$UPDATES

      static final boolean getMyTasks$UPDATES
      See Also:
    • getCompletedTasks$UPDATES

      static final boolean getCompletedTasks$UPDATES
      See Also:
    • getAcceptedTasks$UPDATES

      static final boolean getAcceptedTasks$UPDATES
      See Also:
    • getAllTasksWithExceptions$UPDATES

      static final boolean getAllTasksWithExceptions$UPDATES
      See Also:
    • getPausedTasks$UPDATES

      static final boolean getPausedTasks$UPDATES
      See Also:
    • getProcessesForProcessModel$UPDATES

      static final boolean getProcessesForProcessModel$UPDATES
      See Also:
    • getCompletedProcessesForProcessModel$UPDATES

      static final boolean getCompletedProcessesForProcessModel$UPDATES
      See Also:
    • getCancelledProcessesForProcessModel$UPDATES

      static final boolean getCancelledProcessesForProcessModel$UPDATES
      See Also:
    • getRunningProcessesForProcessModel$UPDATES

      static final boolean getRunningProcessesForProcessModel$UPDATES
      See Also:
    • getPausedProcessesForProcessModel$UPDATES

      static final boolean getPausedProcessesForProcessModel$UPDATES
      See Also:
    • getProcessesWithExceptionsForProcessModel$UPDATES

      static final boolean getProcessesWithExceptionsForProcessModel$UPDATES
      See Also:
    • notifyUserCreation$UPDATES

      static final boolean notifyUserCreation$UPDATES
      See Also:
    • notifyUsersCreation$UPDATES

      static final boolean notifyUsersCreation$UPDATES
      See Also:
    • validateGroupMembership$UPDATES

      static final boolean validateGroupMembership$UPDATES
      See Also:
    • updateUsernames$UPDATES

      static final boolean updateUsernames$UPDATES
      See Also:
    • commitUpdateUsernames$UPDATES

      static final boolean commitUpdateUsernames$UPDATES
      See Also:
    • rollbackUpdateUsernames$UPDATES

      static final boolean rollbackUpdateUsernames$UPDATES
      See Also:
    • getProcessReport$UPDATES

      static final boolean getProcessReport$UPDATES
      See Also:
    • getProcessReports$UPDATES

      static final boolean getProcessReports$UPDATES
      See Also:
    • getMyTaskViews$UPDATES

      static final boolean getMyTaskViews$UPDATES
      See Also:
    • getMyProcessViews$UPDATES

      static final boolean getMyProcessViews$UPDATES
      See Also:
    • updateProcessReport$UPDATES

      static final boolean updateProcessReport$UPDATES
      See Also:
    • getReportPage$UPDATES

      static final boolean getReportPage$UPDATES
      See Also:
    • getReportPageWithTypedValues$UPDATES

      static final boolean getReportPageWithTypedValues$UPDATES
      See Also:
    • addMyProcessReport$UPDATES

      static final boolean addMyProcessReport$UPDATES
      See Also:
    • createProcessReport$UPDATES

      static final boolean createProcessReport$UPDATES
      See Also:
    • getTaskViewForUser$UPDATES

      static final boolean getTaskViewForUser$UPDATES
      See Also:
    • setTaskViewForUser$UPDATES

      static final boolean setTaskViewForUser$UPDATES
      See Also:
    • removeTaskViewForUser$UPDATES

      static final boolean removeTaskViewForUser$UPDATES
      See Also:
    • getTaskViewForGroup$UPDATES

      static final boolean getTaskViewForGroup$UPDATES
      See Also:
    • setTaskViewForGroup$UPDATES

      static final boolean setTaskViewForGroup$UPDATES
      See Also:
    • removeTaskViewForGroup$UPDATES

      static final boolean removeTaskViewForGroup$UPDATES
      See Also:
    • evaluateExpressionForProcessModel$UPDATES

      static final boolean evaluateExpressionForProcessModel$UPDATES
      See Also:
    • evaluateExpressionResultForProcessModel$UPDATES

      static final boolean evaluateExpressionResultForProcessModel$UPDATES
      See Also:
    • evaluateExpressionForProcess$UPDATES

      static final boolean evaluateExpressionForProcess$UPDATES
      See Also:
    • evaluateExpressionResultForProcess$UPDATES

      static final boolean evaluateExpressionResultForProcess$UPDATES
      See Also:
    • evaluateExpressionsForProcess$UPDATES

      static final boolean evaluateExpressionsForProcess$UPDATES
      See Also:
    • evaluateExpressionsResultForProcess$UPDATES

      static final boolean evaluateExpressionsResultForProcess$UPDATES
      See Also:
    • setSiteLocaleSettings$UPDATES

      static final boolean setSiteLocaleSettings$UPDATES
      See Also:
    • setTimeZone$UPDATES

      static final boolean setTimeZone$UPDATES
      See Also:
  • Method Details

    • activateUserSession

      void activateUserSession(Long[] membership_, Long[] administration_, Long userTypeId_, String username)
      Notifies the process analytics application that a new session has been created for the current user, and provides information about the current user's membership and administration rights to groups. This call is necessary every time the group membership role is changed, a new group is created, or when the user is newly created This method will skip any null values for membership_ or administration_. If the userTypeId_ is not a valid value (see below), the method will fail but will NOT throw any exceptions
      Parameters:
      membership_ - the list of groups of which the user is a member
      administration_ - the list of groups on which the user has administrative rights
      userTypeId_ - this is one of UserProfile.USER_TYPE_BASIC or UserProfile.USER_TYPE_SYS_ADMIN
      username - the username of the user whose session is to be activated
      Throws:
      com.appiancorp.asl3.servicefw.connect.ServiceException - if any system-level error occurs
    • getMyTaskCount

      int getMyTaskCount()
      Gets the total number of tasks that are either assigned to or accepted by the current user.
      Returns:
      the number of tasks
      Throws:
      com.appiancorp.asl3.servicefw.connect.ServiceException - if any system-level error occurs
    • getTaskCountForUser

      int getTaskCountForUser(String username)
      Gets the total number of tasks that are either assigned to or accepted by a particular user.
      Parameters:
      username - the user name
      Returns:
      the number of tasks
      Throws:
      com.appiancorp.asl3.servicefw.connect.ServiceException - if any system-level error occurs
    • getAllTasks

      ResultPage getAllTasks(int startIndex_, int batchSize_, Integer sortProperty_, Integer sortOrder_) throws ResultPageSizeException
      Gets all the tasks for the current user. This does not include tasks from cancelled, paused, or deleted processes or cancelled, or paused tasks. This is a paging function and only returns the data specified by the startIndex and batchSize
      Parameters:
      startIndex_ - the index into the collection of total results at which to start. Negative numbers are treated as zeros.
      batchSize_ - the number of results to return. Use Constants.COUNT_ALL to return the entire collection, but this is STRONGLY discouraged.
      sortProperty_ - the property by which the results will be sorted. Should be one of the SORT_BY_XXX constants defined in TaskSummary.
      sortOrder_ - The order in which to sort the results. This should be either Constants.SORT_ORDER_ASCENDING or Constants.SORT_ORDER_DESCENDING.
      Returns:
      a ResultPage containing a list of TaskSummary objects. If a task is completed, then the value of the assignees field in the corresponding TaskSummary object will be an empty array.
      Throws:
      com.appiancorp.asl3.servicefw.connect.ServiceException - if any system-level error occurs
      ResultPageSizeException - if the batchsize exceeds the limit of items that can be retrieve per Analytics Engine (resources.appian.analytics.application.maxreportsize / Number of Analytics Engines). It can also be thrown if batchsize equals -1, and one Analytics Engine attempts to return more items than the limit just mention.
    • getAssignedTasks

      ResultPage getAssignedTasks(int startIndex_, int batchSize_, Integer sortProperty_, Integer sortOrder_) throws ResultPageSizeException
      Gets the tasks assigned to the current user. This does not include tasks from cancelled, paused, or deleted processes. This is a paging function and only returns the data specified by the startIndex and batchSize
      Parameters:
      startIndex_ - the index into the collection of total results at which to start. Negative numbers are treated as zeros.
      batchSize_ - the number of results to return. Use Constants.COUNT_ALL to return the entire collection, but this is STRONGLY discouraged.
      sortProperty_ - the property by which the results will be sorted. Should be one of the SORT_BY_XXX constants defined in TaskSummary.
      sortOrder_ - The order in which to sort the results. This should be either Constants.SORT_ORDER_ASCENDING or Constants.SORT_ORDER_DESCENDING.
      Returns:
      a ResultPage containing a list of TaskSummary objects
      Throws:
      com.appiancorp.asl3.servicefw.connect.ServiceException - if any system-level error occurs
      ResultPageSizeException - if the batchsize exceeds the limit of items that can be retrieve per Analytics Engine (resources.appian.analytics.application.maxreportsize / Number of Analytics Engines). It can also be thrown if batchsize equals -1, and one Analytics Engine attempts to return more items than the limit just mention.
    • getMyTasks

      ResultPage getMyTasks(int startIndex_, int batchSize_, Integer sortProperty_, Integer sortOrder_) throws ResultPageSizeException
      Gets the tasks assigned to or accepted by the current user (that is with a status of TaskSummary.TASK_STATUS_ASSIGNED or TaskSummary.TASK_STATUS_ACCEPTED for the current user). This does not include tasks from cancelled, paused, or deleted processes. This is a paging function and only returns the data specified by the startIndex and batchSize
      Parameters:
      startIndex_ - the index into the collection of total results at which to start. Negative numbers are treated as zeros.
      batchSize_ - the number of results to return. Use Constants.COUNT_ALL to return the entire collection, but this is STRONGLY discouraged.
      sortProperty_ - the property by which the results will be sorted. Should be one of the SORT_BY_XXX constants defined in TaskSummary.
      sortOrder_ - The order in which to sort the results. This should be either Constants.SORT_ORDER_ASCENDING or Constants.SORT_ORDER_DESCENDING.
      Returns:
      a ResultPage containing a list of TaskSummary objects
      Throws:
      com.appiancorp.asl3.servicefw.connect.ServiceException - if any system-level error occurs
      ResultPageSizeException - if the batchsize exceeds the limit of items that can be retrieve per Analytics Engine (resources.appian.analytics.application.maxreportsize / Number of Analytics Engines). It can also be thrown if batchsize equals -1, and one Analytics Engine attempts to return more items than the limit just mention.
    • getCompletedTasks

      ResultPage getCompletedTasks(int startIndex_, int batchSize_, Integer sortProperty_, Integer sortOrder_) throws ResultPageSizeException
      Gets the tasks completed by current user. This does not include tasks from cancelled, paused, or deleted processes. This is a paging function and only returns the data specified by the startIndex and batchSize
      Parameters:
      startIndex_ - the index into the collection of total results at which to start. Negative numbers are treated as zeros.
      batchSize_ - the number of results to return. Use Constants.COUNT_ALL to return the entire collection, but this is STRONGLY discouraged.
      sortProperty_ - the property by which the results will be sorted. Should be one of the SORT_BY_XXX constants defined in TaskSummary.
      sortOrder_ - The order in which to sort the results. This should be either Constants.SORT_ORDER_ASCENDING or Constants.SORT_ORDER_DESCENDING.
      Returns:
      a ResultPage containing a list of TaskSummary objects. The assignee field for all summaries will be an empty array.
      Throws:
      com.appiancorp.asl3.servicefw.connect.ServiceException - if any system-level error occurs
      ResultPageSizeException - if the batchsize exceeds the limit of items that can be retrieve per Analytics Engine (resources.appian.analytics.application.maxreportsize / Number of Analytics Engines). It can also be thrown if batchsize equals -1, and one Analytics Engine attempts to return more items than the limit just mention.
    • getAcceptedTasks

      ResultPage getAcceptedTasks(int startIndex_, int batchSize_, Integer sortProperty_, Integer sortOrder_) throws ResultPageSizeException
      Gets the tasks accepted by the current user. This does not include tasks from cancelled, paused, or deleted processes. This is a paging function and only returns the data specified by the startIndex and batchSize
      Parameters:
      startIndex_ - the index into the collection of total results at which to start. Negative numbers are treated as zeros.
      batchSize_ - the number of results to return. Use Constants.COUNT_ALL to return the entire collection, but this is STRONGLY discouraged.
      sortProperty_ - the property by which the results will be sorted. Should be one of the SORT_BY_XXX constants defined in TaskSummary.
      sortOrder_ - The order in which to sort the results. This should be either Constants.SORT_ORDER_ASCENDING or Constants.SORT_ORDER_DESCENDING.
      Returns:
      a ResultPage containing a list of TaskSummary objects
      Throws:
      com.appiancorp.asl3.servicefw.connect.ServiceException - if any system-level error occurs
      ResultPageSizeException - if the batchsize exceeds the limit of items that can be retrieve per Analytics Engine (resources.appian.analytics.application.maxreportsize / Number of Analytics Engines). It can also be thrown if batchsize equals -1, and one Analytics Engine attempts to return more items than the limit just mention.
    • getAllTasksWithExceptions

      ResultPage getAllTasksWithExceptions(int startIndex_, int batchSize_, Integer sortProperty_, Integer sortOrder_) throws ResultPageSizeException
      Gets the tasks with a state of TaskSummary.TASK_STATUS_PAUSED_BY_EXCEPTION that were completed by the current user. This does not include tasks from cancelled, paused, or deleted processes. This is a paging function and only returns the data specified by the startIndex and batchSize
      Parameters:
      startIndex_ - The index into the collection of total results at which to start. Negative numbers are treated as zeros.
      batchSize_ - The number of results to return. Use Constants.COUNT_ALL to return the entire collection, but this is STRONGLY discouraged.
      sortProperty_ - The property by which the results will be sorted. Should be one of the SORT_BY_XXX constants defined in TaskSummary.TASK_STATUS_PAUSED_BY_EXCEPTION.
      sortOrder_ - The order in which to sort the results. This should be either Constants.SORT_ORDER_ASCENDING or Constants.SORT_ORDER_DESCENDING.
      Returns:
      Returns a ResultPage containing a list of TaskSummary objects . If a task is completed, then the value of the assignees field in the corresponding TaskSummary object will be an empty array.
      Throws:
      com.appiancorp.asl3.servicefw.connect.ServiceException - if any system-level error occurs
      ResultPageSizeException - if the batchsize exceeds the limit of items that can be retrieve per Analytics Engine (resources.appian.analytics.application.maxreportsize / Number of Analytics Engines). It can also be thrown if batchsize equals -1, and one Analytics Engine attempts to return more items than the limit just mention.
    • getPausedTasks

      ResultPage getPausedTasks(int startIndex_, int batchSize_, Integer sortProperty_, Integer sortOrder_) throws ResultPageSizeException
      Retrieves all paused tasks for the current User. This is a paging function and only returns the data specified by the startIndex and batchSize
      Parameters:
      startIndex_ - the index into the collection of total results at which to start. Negative numbers are treated as zeros.
      batchSize_ - the number of results to return. Use Constants.COUNT_ALL to return the entire collection, but this is STRONGLY discouraged.
      sortProperty_ - the property by which the results will be sorted. This is one of the SORT_BY_XXX constants. Located in TaskSummary.TASK_STATUS_PAUSED.
      sortOrder_ - the order in which to sort the results. This is one of Constants.SORT_ORDER_ASCENDING or Constants.SORT_ORDER_DESCENDING
      Returns:
      A ResultPage containing an array of TaskSummary objects representing all paused tasks in the system.
      Throws:
      ResultPageSizeException - if the batchsize exceeds the limit of items that can be retrieve per Analytics Engine (resources.appian.analytics.application.maxreportsize / Number of Analytics Engines). It can also be thrown if batchsize equals -1, and one Analytics Engine attempts to return more items than the limit just mention.
    • getProcessesForProcessModel

      ResultPage getProcessesForProcessModel(Long processModelId_, int startIndex_, int batchSize_, Integer sortProperty_, Integer sortOrder_) throws InvalidProcessModelException, PrivilegeException, ResultPageSizeException
      Retrieves all processes for a ProcessModel regardless of their status. This is a paging function and only returns the data specified by the startIndex and batchSize
      Parameters:
      processModelId_ - The ID of the ProcessModel for which to retrieve all processes.
      startIndex_ - the index into the collection of total results at which to start. Negative numbers are treated as zeros.
      batchSize_ - the number of results to return. Use Constants.COUNT_ALL to return the entire collection, but this is STRONGLY discouraged.
      sortProperty_ - the property by which the results will be sorted. This is one of the SORT_BY_XXX constants. Located in ProcessSummary.
      sortOrder_ - the order in which to sort the results. This is one of Constants.SORT_ORDER_ASCENDING or Constants.SORT_ORDER_DESCENDING
      Returns:
      A ResultPage containing an array of ProcessSummary objects representing all processes for the ProcessModel specified by processModelId_
      The following fields in ProcessSummary are populated:
      id, name, initiator, status, priority, startTime, endTime, id, processModelVersion, parentId, and processModelName.
      Throws:
      InvalidProcessModelException - if the ProcessModel does not exist
      PrivilegeException - if the current User does not have privileges to view the ProcessModel
      ResultPageSizeException - if the batchsize exceeds the limit of items that can be retrieve per Analytics Engine (resources.appian.analytics.application.maxreportsize / Number of Analytics Engines). It can also be thrown if batchsize equals -1, and one Analytics Engine attempts to return more items than the limit just mention.
    • getCompletedProcessesForProcessModel

      ResultPage getCompletedProcessesForProcessModel(Long processModelId_, int startIndex_, int batchSize_, Integer sortProperty_, Integer sortOrder_) throws InvalidProcessModelException, PrivilegeException, ResultPageSizeException
      Retrieves all completed processes for a ProcessModel. This is a paging function and only returns the data specified by the startIndex and batchSize
      Parameters:
      processModelId_ - The ID of the ProcessModel for which to retrieve the completed processes.
      startIndex_ - the index into the collection of total results at which to start. Negative numbers are treated as zeros.
      batchSize_ - the number of results to return. Use Constants.COUNT_ALL to return the entire collection, but this is STRONGLY discouraged.
      sortProperty_ - the property by which the results will be sorted. This is one of the SORT_BY_XXX constants. Located in ProcessSummary.
      sortOrder_ - the order in which to sort the results. This is one of Constants.SORT_ORDER_ASCENDING or Constants.SORT_ORDER_DESCENDING
      Returns:
      A ResultPage containing an array of ProcessSummary objects representing all completed processes for the ProcessModel specified by processModelId_
      The following fields in ProcessSummary are populated:
      id, name, initiator, status, priority, startTime, endTime, id, processModelVersion, parentId, and processModelName.
      Throws:
      InvalidProcessModelException - if the ProcessModel does not exist
      PrivilegeException - if the current User does not have privileges to view the ProcessModel
      ResultPageSizeException - if the batchsize exceeds the limit of items that can be retrieve per Analytics Engine (resources.appian.analytics.application.maxreportsize / Number of Analytics Engines). It can also be thrown if batchsize equals -1, and one Analytics Engine attempts to return more items than the limit just mention.
    • getCancelledProcessesForProcessModel

      ResultPage getCancelledProcessesForProcessModel(Long processModelId_, int startIndex_, int batchSize_, Integer sortProperty_, Integer sortOrder_) throws InvalidProcessModelException, PrivilegeException, ResultPageSizeException
      Retrieves all cancelled processes for a ProcessModel. This is a paging function and only returns the data specified by the startIndex and batchSize
      Parameters:
      processModelId_ - The ID of the ProcessModel for which to retrieve the cancelled processes.
      startIndex_ - the index into the collection of total results at which to start. Negative numbers are treated as zeros.
      batchSize_ - the number of results to return. Use Constants.COUNT_ALL to return the entire collection, but this is STRONGLY discouraged.
      sortProperty_ - the property by which the results will be sorted. This is one of the SORT_BY_XXX constants. Located in ProcessSummary.
      sortOrder_ - the order in which to sort the results. This is one of Constants.SORT_ORDER_ASCENDING or Constants.SORT_ORDER_DESCENDING
      Returns:
      A ResultPage containing an array of ProcessSummary objects representing all cancelled processes for the ProcessModel specified by processModelId_
      The following fields in ProcessSummary are populated:
      id, name, initiator, status, priority, startTime, endTime, id, processModelVersion, parentId, and processModelName.
      Throws:
      InvalidProcessModelException - if the ProcessModel does not exist
      PrivilegeException - if the current User does not have privileges to view the ProcessModel
      ResultPageSizeException - if the batchsize exceeds the limit of items that can be retrieve per Analytics Engine (resources.appian.analytics.application.maxreportsize / Number of Analytics Engines). It can also be thrown if batchsize equals -1, and one Analytics Engine attempts to return more items than the limit just mention.
    • getRunningProcessesForProcessModel

      ResultPage getRunningProcessesForProcessModel(Long processModelId_, int startIndex_, int batchSize_, Integer sortProperty_, Integer sortOrder_) throws InvalidProcessModelException, PrivilegeException, ResultPageSizeException
      Retrieves all active processes for a ProcessModel. This is a paging function and only returns the data specified by the startIndex and batchSize
      Parameters:
      processModelId_ - The ID of the ProcessModel for which to retrieve the running processes.
      startIndex_ - the index into the collection of total results at which to start. Negative numbers are treated as zeros.
      batchSize_ - the number of results to return. Use Constants.COUNT_ALL to return the entire collection, but this is STRONGLY discouraged.
      sortProperty_ - the property by which the results will be sorted. This is one of the SORT_BY_XXX constants. Located in ProcessSummary.
      sortOrder_ - the order in which to sort the results. This is one of Constants.SORT_ORDER_ASCENDING or Constants.SORT_ORDER_DESCENDING
      Returns:
      A ResultPage containing an array of ProcessSummary objects representing all running processes for the ProcessModel specified by processModelId_
      The following fields in ProcessSummary are populated:
      id, name, initiator, status, priority, startTime, endTime, id, processModelVersion, parentId, and processModelName.
      Throws:
      InvalidProcessModelException - if the ProcessModel does not exist
      PrivilegeException - if the current User does not have privileges to view the ProcessModel
      ResultPageSizeException - if the batchsize exceeds the limit of items that can be retrieve per Analytics Engine (resources.appian.analytics.application.maxreportsize / Number of Analytics Engines). It can also be thrown if batchsize equals -1, and one Analytics Engine attempts to return more items than the limit just mention.
    • getPausedProcessesForProcessModel

      ResultPage getPausedProcessesForProcessModel(Long processModelId_, int startIndex_, int batchSize_, Integer sortProperty_, Integer sortOrder_) throws InvalidProcessModelException, PrivilegeException, ResultPageSizeException
      Retrieves all paused processes for a ProcessModel. This is a paging function and only returns the data specified by the startIndex and batchSize
      Parameters:
      processModelId_ - The ID of the ProcessModel for which to retrieve the paused processes.
      startIndex_ - the index into the collection of total results at which to start. Negative numbers are treated as zeros.
      batchSize_ - the number of results to return. Use Constants.COUNT_ALL to return the entire collection, but this is STRONGLY discouraged.
      sortProperty_ - the property by which the results will be sorted. This is one of the SORT_BY_XXX constants. Located in ProcessSummary.
      sortOrder_ - the order in which to sort the results. This is one of Constants.SORT_ORDER_ASCENDING or Constants.SORT_ORDER_DESCENDING
      Returns:
      A ResultPage containing an array of ProcessSummary objects representing all paused processes for the ProcessModel specified by processModelId_
      The following fields in ProcessSummary are populated:
      id, name, initiator, status, priority, startTime, endTime, id, processModelVersion, parentId, and processModelName.
      Throws:
      InvalidProcessModelException - if the ProcessModel does not exist
      PrivilegeException - if the current User does not have privileges to view the ProcessModel
      ResultPageSizeException - if the batchsize exceeds the limit of items that can be retrieve per Analytics Engine (resources.appian.analytics.application.maxreportsize / Number of Analytics Engines). It can also be thrown if batchsize equals -1, and one Analytics Engine attempts to return more items than the limit just mention.
    • getProcessesWithExceptionsForProcessModel

      ResultPage getProcessesWithExceptionsForProcessModel(Long processModelId_, int startIndex_, int batchSize_, Integer sortProperty_, Integer sortOrder_) throws InvalidProcessModelException, PrivilegeException, ResultPageSizeException
      Retrieves all processes which are paused by an exception for a ProcessModel. This is a paging function and only returns the data specified by the startIndex and batchSize
      Parameters:
      processModelId_ - The ID of the ProcessModel for which to retrieve the processes paused by exception.
      startIndex_ - the index into the collection of total results at which to start. Negative numbers are treated as zeros.
      batchSize_ - the number of results to return. Use Constants.COUNT_ALL to return the entire collection, but this is STRONGLY discouraged.
      sortProperty_ - the property by which the results will be sorted. This is one of the SORT_BY_XXX constants. Located in ProcessSummary.
      sortOrder_ - the order in which to sort the results. This is one of Constants.SORT_ORDER_ASCENDING or Constants.SORT_ORDER_DESCENDING
      Returns:
      A ResultPage containing an array of ProcessSummary objects representing all processes which are paused by exception for the ProcessModel specified by processModelId_
      The following fields in ProcessSummary are populated:
      id, name, initiator, status, priority, startTime, endTime, id, processModelVersion, parentId, and processModelName.
      Throws:
      InvalidProcessModelException - if the ProcessModel does not exist
      PrivilegeException - if the current User does not have privileges to view the ProcessModel
      ResultPageSizeException - if the batchsize exceeds the limit of items that can be retrieve per Analytics Engine (resources.appian.analytics.application.maxreportsize / Number of Analytics Engines). It can also be thrown if batchsize equals -1, and one Analytics Engine attempts to return more items than the limit just mention.
    • notifyUserCreation

      @Deprecated void notifyUserCreation(String username_) throws NullPointerException
      Deprecated.
      done automatically by UserService.createUser
      Notifies the server that a new user was created on the Personalization server.
      Parameters:
      username_ - the name of the user that was added
      Throws:
      NullPointerException - if any of the usernames are null
    • notifyUsersCreation

      void notifyUsersCreation(String[] usernames_) throws NullPointerException
      Notifies the server that new users were created on the Personalization server.
      Parameters:
      usernames_ - the names of the users that were added
      Throws:
      NullPointerException - if any of the usernames are null
    • validateGroupMembership

      boolean validateGroupMembership(Long[] memGroupIds_, Long[] admGroupIds_, Long userTypeId_, String username) throws InvalidUserException
      Validates if the association of a user as 'Member' and as an 'Administrator has changed or not.
      Parameters:
      memGroupIds_ - Groups for which the User is a member
      admGroupIds_ - Groups for which the User is an administrator
      userTypeId_ - this should be one of UserProfile.USER_TYPE_BASIC or UserProfile.USER_TYPE_SYS_ADMIN, but if neither of these constants is given, or the value is null, the the method will assume UserProfile.USER_TYPE_BASIC
      username - the username of the user whose group membership is to be validated
      Returns:
      true if there is not change in the membership of the user
      Throws:
      InvalidUserException - if the user calling this method does not exist
      com.appiancorp.asl3.servicefw.connect.ServiceException - if any system-level error occurs
    • updateUsernames

      @Deprecated void updateUsernames(String[] oldUsernames_, String[] newUsernames_, long maxExpirationTimeInSeconds_) throws IllegalArgumentException, DuplicateNameException, InvalidUserException, PrivilegeException
      DEPRECATED: See UserService.renameUsersByUuid(java.lang.String[], java.lang.String[]) Updates a list of old usernames to new usernames.

      If successful, this method must be followed by commitUpdateUsernames(). After commitUpdateUsernames has been called, the old usernames will still be active, but will expire after the interval specified by maxExpirationTimeInSeconds_; if updateUsernames is successful but commitUpdateUsernames is not called, the new usernames will not become active.

      If unsuccessful, this method should be followed by rollbackUpdateUsernames(). This will simply free memory dedicated to mapping old usernames to new usernames.

      Parameters:
      oldUsernames_ - the usernames to be updated
      newUsernames_ - the usernames to which the old usernames will be updated
      maxExpirationTimeInSeconds_ - the interval, in seconds, after commitUpdateUsernames has been called, after which the old usernames will expire. If this parameter is zero or a negative value the old usernames will expire instantly. After expiration, the old usernames will no longer be valid.
      Throws:
      IllegalArgumentException - if the length of oldUsernames_ is not the same as the length of newUsernames_.
      DuplicateNameException - if any oldUsernames_ or newUsernames_ contain any duplicates, or if an old username is being updated to a username that already exists
      InvalidUserException - if oldUsernames contains an invalid user.
      com.appiancorp.asl3.servicefw.connect.ServiceException - if any system-level error occurs
      PrivilegeException
    • commitUpdateUsernames

      @Deprecated void commitUpdateUsernames()
      DEPRECATED: See UserService.renameUsersByUuid(java.lang.String[], java.lang.String[]) Commits an update of usernames.

      This method should be preceded by a call to updateUsernames(String[], String[], long). After the commit, the old usernames will be temporarily active, and will expire after the interval specified by maxExpirationTimeInSeconds_; if commitUpdateUsernames is not called, the new usernames will not become active.

      Throws:
      com.appiancorp.asl3.servicefw.connect.ServiceException - if any system-level error occurs
    • rollbackUpdateUsernames

      @Deprecated void rollbackUpdateUsernames()
      DEPRECATED: See UserService.renameUsersByUuid(java.lang.String[], java.lang.String[]) Rolls back an update of usernames.

      This method should be called if updateUsernames(String[], String[], long) is unsuccessful. The rollback will simply free memory dedicated to mapping old usernames to new usernames.

      Throws:
      com.appiancorp.asl3.servicefw.connect.ServiceException - if any system-level error occurs
    • getProcessReport

      ProcessReport getProcessReport(Long id) throws PrivilegeException
      Retrieves a report specification given its id. Returns null if the id is invalid
      Parameters:
      id - the report id
      Returns:
      a process report or null if the id is invalid.
      Throws:
      PrivilegeException - if the user does not have access to the report.
    • getProcessReports

      ProcessReport[] getProcessReports(Long[] ids)
      Retrieves a array of report specifications given their ids. Invalid report ids will have null entries in the returned array.
      Parameters:
      ids - the report ids
      Returns:
      an array of ProcessReport objects.
      Throws:
      PrivilegeException - if the user does not have access any single report in the list.
    • getMyTaskViews

      ProcessReport[] getMyTaskViews()
      Retrieves the task views for the current user.
      Returns:
      the task views.
    • getMyProcessViews

      ProcessReport[] getMyProcessViews()
      Retrieves the process views for the current user.
      Returns:
      the process views.
    • updateProcessReport

      void updateProcessReport(ProcessReport spec_)
      Update a process report.
      Parameters:
      spec_ - the updated process report.
    • getReportPage

      Deprecated.
      use getReportPageWithTypedValues(ReportData), as the timeZoneOffset_ parameter in this method is ignored.
      Retrieve the data for a particular process report specification.

      The results attribute contains an array of Maps, each map representing one row in the report. Inside each results Map, column values are keyed by cXX and drill path values are keyed by dpXX, where XX is the id of the column. Furthermore, each row in every report contains the following keys: permissions, mutablePriority, version, and favorite. Additionally, process model reports will contain the keys valid and enabled; process and task reports will contain process_status and task_status.

      The value of the permissions key is an object representing the current user's permissions on the object underlying that row of the report. This object will be of one of three classes. For process models, it will be com.appiancorp.suiteapi.process.security.ProcessModelPermissions. For processes, it will be com.appiancorp.suiteapi.process.security.ProcessPermissions. For tasks, it will be com.appiancorp.suiteapi.process.security.NodePermissions.

      mutablePriority is a Boolean indicating if the priority of the object can be changed. version is the process model version as a String for process model reports; otherwise, it is an empty String. favorite is a Boolean indicating whether the process model, process, or task is a favorite for the current user.

      valid and and enabled will always be present and null for process model reports.

      process_status is an Integer indicating the status of the process (active, canceled, completed, etc.). task_status is an Integer indicating the status of the task (assigned, accepted, completed, etc.).

      The columnTypes attribute is a Map that contains type information for each of the columns and drill paths. Column types are keyed by cXX and drill path types are keyed by dpXX, where XX is the id of the column.

      Parameters:
      spec_ - the process report specification.
      timeZoneOffset_ - the time zone offset to use in computing (ignored)
      Returns:
      the data for the report.
      Throws:
      UnsupportedReportSpecificationException - if spec_ is invalid
      PrivilegeException - if the user does not have access to the report.
      ReportComplexityException
      ReportSizeException
      ExpressionException - if there is an exception in evaluating any report column expression.
    • getReportPage

      Deprecated.
      use getReportPageWithTypedValues(ReportData) which returns the result data in the preferred TypedValue form.
      Retrieve the data for a particular process report specification.

      The results attribute contains an array of Maps, each map representing one row in the report. Inside each results Map, column values are keyed by cXX and drill path values are keyed by dpXX, where XX is the id of the column. Furthermore, each row in every report contains the following keys: permissions, mutablePriority, version, and favorite. Additionally, process model reports will contain the keys valid and enabled; process and task reports will contain process_status and task_status.

      The value of the permissions key is an object representing the current user's permissions on the object underlying that row of the report. This object will be of one of three classes. For process models, it will be ProcessModelPermissions. For processes, it will be ProcessPermissions. For tasks, it will be NodePermissions.

      mutablePriority is a Boolean indicating if the priority of the object can be changed. version is the process model version as a String for process model reports; otherwise, it is an empty String. favorite is a Boolean indicating whether the process model, process, or task is a favorite for the current user.

      valid and enabled will always be present and null for process model reports.

      process_status is an Integer indicating the status of the process (active, canceled, completed, etc.). task_status is an Integer indicating the status of the task (assigned, accepted, completed, etc.).

      The columnTypes attribute is a Map that contains type information for each of the columns and drill paths. Column types are keyed by cXX and drill path types are keyed by dpXX, where XX is the id of the column.

      If the report has grouping but no aggregation function is set, count will be used.

      When there are no results to return, the Result.getResults() method returns an empty array of Row objects.

      Parameters:
      spec_ - the process report specification.
      Returns:
      the data for the report.
      Throws:
      UnsupportedReportSpecificationException - if spec_ is invalid
      PrivilegeException - if the user does not have access to the report.
      ReportComplexityException
      ReportSizeException - if the number of rows to return will exceed com.appiancorp.process.analytics2.AnalyticsConfiguration#getMaxReportSize
      ExpressionException - if there is an exception in evaluating any report column expression.
    • getReportPageWithTypedValues

      Retrieve the data as TypedValue cells, for a given process report specification.

      The results attribute contains an array of Maps, each map representing one row in the report. Inside each results Map, column values are keyed by cXX and drill path values are keyed by dpXX, where XX is the id of the column. Furthermore, each row in every report contains the following keys: permissions, mutablePriority, version, and favorite. Additionally, process model reports will contain the keys valid and enabled; process and task reports will contain process_status and task_status.

      The value of the permissions key is an object representing the current user's permissions on the object underlying that row of the report. This object will be of one of three classes. For process models, it will be ProcessModelPermissions. For processes, it will be ProcessPermissions. For tasks, it will be NodePermissions.

      mutablePriority is a Boolean indicating if the priority of the object can be changed. version is the process model version as a String for process model reports; otherwise, it is an empty String. favorite is a Boolean indicating whether the process model, process, or task is a favorite for the current user.

      valid and and enabled will always be present and null for process model reports.

      process_status is an Integer indicating the status of the process (active, canceled, completed, etc.). task_status is an Integer indicating the status of the task (assigned, accepted, completed, etc.).

      The columnTypes attribute is a Map that contains type information for each of the columns and drill paths. Column types are keyed by cXX and drill path types are keyed by dpXX, where XX is the id of the column.

      Parameters:
      spec - the process report specification.
      Returns:
      the data for the report with cell values as TypedValue
      Throws:
      UnsupportedReportSpecificationException - if spec is invalid
      PrivilegeException - if the user does not have access to the report.
      ReportComplexityException
      ReportSizeException
      ExpressionException - if there is an exception in evaluating any report column expression.
    • addMyProcessReport

      Add a process report to the My Reports folder.
      Parameters:
      spec_ - The process report specification to add.
      Returns:
      The added process report specification.
      Throws:
      IllegalArgumentException - if some attribute of spec_ is invalid
      PrivilegeException - if the current user is neither an editor nor an administrator of the folder
      InvalidUserException - if the user calling this method is invalid
      StorageLimitException - if there is not enough space in the KC to create this report.
      IOException - if there is an error writing this report
    • createProcessReport

      Add a process report to the specified folder.
      Parameters:
      spec_ - The process report specification to add.
      folderId_ - The id of the folder in which to store the report.
      Returns:
      The added process report specification.
      Throws:
      IllegalArgumentException - if some attribute of spec_ is invalid
      PrivilegeException - if the current user is neither an editor nor an administrator of the folder
      InvalidUserException - if the user calling this method is invalid
      StorageLimitException - if there is not enough space in the KC to create this report.
      IOException - if there is an error writing this report
      InvalidFolderException - if folderId does not represent a valid folder
    • getTaskViewForUser

      ProcessReport getTaskViewForUser(String username_) throws Exception
      Get the task view that the current user wishes to use to view the tasks of the specified user.
      Parameters:
      username_ - the user whose tasks are to be viewed.
      Returns:
      the task view.
      Throws:
      Exception
      See Also:
    • setTaskViewForUser

      void setTaskViewForUser(String username_, ProcessReport spec_) throws Exception
      Set the task view that the current user wishes to use to view the tasks of the specified user.
      Parameters:
      username_ - the user whose tasks are to be viewed using this task view.
      spec_ - the task view.
      Throws:
      Exception
      See Also:
    • removeTaskViewForUser

      void removeTaskViewForUser(String username_) throws InvalidUserException, PrivilegeException, InvalidDocumentException
      Clear the previously-set task view that the current user was using to view the tasks of the specified user.
      Parameters:
      username_ - the user whose tasks were being viewed using this task view.
      Throws:
      InvalidUserException - if the user calling this method is invalid
      PrivilegeException - if the current user is neither an editor nor an administrator of the folder
      InvalidDocumentException - if no valid task view can be found for this user
    • getTaskViewForGroup

      ProcessReport getTaskViewForGroup(Long groupId_) throws Exception
      Get the task view that the current user wishes to use to view the tasks of the specified group.
      Parameters:
      groupId_ - the id of the group whose tasks are to be viewed.
      Returns:
      the task view.
      Throws:
      Exception
      See Also:
    • setTaskViewForGroup

      void setTaskViewForGroup(Long groupId_, ProcessReport spec_) throws Exception
      Set the task view that the current user wishes to use to view the tasks of the specified group.
      Parameters:
      groupId_ - the id of the group whose tasks are to be viewed using this task view.
      spec_ - the task view.
      Throws:
      Exception
      See Also:
    • removeTaskViewForGroup

      void removeTaskViewForGroup(Long groupId_) throws InvalidUserException, PrivilegeException, InvalidDocumentException
      Clear the previously-set task view that the current user was using to view the tasks of the specified group.
      Parameters:
      groupId_ - the id of the group whose tasks were being viewed using this task view.
      Throws:
      InvalidUserException - if the user calling this method is invalid
      PrivilegeException - if the current user is neither an editor nor an administrator of the folder
      InvalidDocumentException - if no valid task view can be found for this group
    • evaluateExpressionForProcessModel

      String evaluateExpressionForProcessModel(Long modelId_, String expression_, boolean recursive_)
      Evaluates an expression using the specified process model as the context.
      Parameters:
      modelId_ - the id of the process model. this is the context.
      expression_ - a valid expression for the expression engine. PV references should be valid for the model specified by the first parameter.
      recursive_ - true to evaluate process variables contained in sub processes (if the transparency flag for each sub process is checked.
      Returns:
      the evaluated expression. Returns an empty string if the process model is invalid
    • evaluateExpressionResultForProcessModel

      PartialResult evaluateExpressionResultForProcessModel(Long modelId_, String expression_, boolean recursive_, NamedTypedValue[] continueParams)
      Evaluates an expression using the specified process model as the context.
      Parameters:
      modelId_ - the id of the process model. this is the context.
      expression_ - a valid expression for the expression engine. PV references should be valid for the model specified by the first parameter.
      recursive_ - true to evaluate process variables contained in sub processes (if the transparency flag for each sub process is checked.
      continueParams - whenever a PartialResult with a function request is returned, append the result of the Java function evaluation to this list, and call this method again.
      Returns:
      the evaluated expression. Returns an empty string if the process model is invalid
    • evaluateExpressionForProcess

      String evaluateExpressionForProcess(Long processId_, String expression_, boolean recursive_)
      Evaluates an expression using the specified process as the context.
      Parameters:
      processId_ - the id of the process. this is the context.
      expression_ - a valid expression for the expression engine. PV references should be valid for the process specified by the first parameter.
      recursive_ - true to evaluate process variables contained in sub processes (if the transparency flag for each sub process is checked.
      Returns:
      the evaluated expression. Returns an empty string if the process is invalid
    • evaluateExpressionResultForProcess

      PartialResult evaluateExpressionResultForProcess(Long processId_, String expression_, boolean recursive_, NamedTypedValue[] continueParams)
      Evaluates an expression using the specified process as the context.
      Parameters:
      processId_ - the id of the process. this is the context.
      expression_ - a valid expression for the expression engine. PV references should be valid for the process specified by the first parameter.
      recursive_ - true to evaluate process variables contained in sub processes (if the transparency flag for each sub process is checked.
      continueParams - whenever a PartialResult with a function request is returned, append the result of the Java function evaluation to this list, and call this method again.
      Returns:
      the evaluated expression. Returns an empty string if the process is invalid
    • evaluateExpressionsForProcess

      String[] evaluateExpressionsForProcess(Long processId_, String[] expressions_, boolean recursive_)
      Evaluates multiple expressions using the specified process as the context.
      Parameters:
      processId_ - the id of the process. this is the context.
      expressions_ - valid expressions for the expression engine. PV references should be valid for the process specified by the first parameter.
      recursive_ - true to evaluate process variables contained in sub processes (if the transparency flag for each sub process is checked.
      Returns:
      the evaluated expressions. Returns empty strings if the process is invalid
    • evaluateExpressionsResultForProcess

      PartialResult[] evaluateExpressionsResultForProcess(Long processId_, String[] expressions_, boolean recursive_, NamedTypedValue[][] continueParams)
      Evaluates multiple expressions using the specified process as the context.
      Parameters:
      processId_ - the id of the process. this is the context.
      expressions_ - valid expressions for the expression engine. PV references should be valid for the process specified by the first parameter.
      recursive_ - true to evaluate process variables contained in sub processes (if the transparency flag for each sub process is checked.
      continueParams - whenever a PartialResult with a function request is returned, append the result of the Java function evaluation to this list, and call this method again.
      Returns:
      the evaluated expressions. Returns empty strings if the process is invalid
    • setSiteLocaleSettings

      void setSiteLocaleSettings(SiteLocaleSettings settings_)
      Registers the site locale settings on the process analytics engines only. NOTE: Use GlobalizationService.setSiteLocaleSettings(com.appiancorp.suiteapi.portal.SiteLocaleSettings) to register across all engines.
      Parameters:
      settings_ - The site locale settings.
    • setTimeZone

      void setTimeZone(BackendTimeZoneSimple tz)
      Set the time zone information using the format used by the engines to encapsulate time zone information. This method sets the time zone for the process analytics engines only. NOTE: Using this method could lead to data inconsistency, use GlobalizationService.setTimeZone(com.appiancorp.suiteapi.portal.BackendTimeZoneSimple) to set the time zone across all engines (rarely required).
      Parameters:
      tz - The specially formatted time zone object used by the engines