How do we get the next task Id of a User Input Task. This has to be entered in t

How do we get the next task Id of a User Input Task. This has to be entered in the Send Email Smart Service which is triggered before the User Input Task? Is there any such Out Of The Box function?...

OriginalPostID-114894

OriginalPostID-114894

  Discussion posts and replies are publicly visible

Parents
  • This line gives you an array of TaskSummaryObjects because getResults() returns an Array of Objects and TaskSummary[] is by inheritance an Array of Objects so the cast is allowed at compilation time and works at runtime

    TaskSummary[] currentTasksForProcess = (TaskSummary[])currentTasksForProcessResultPage.getResults();

    this gives you a list of details for each task. You can then iterate over these objects and get the task ID which can be stored in a Long[] array.

    Here's an example. In the example I'm finally storing all the task IDs within the varaible currentTasksIdsForProcessArray

    ResultPage currentTasksForProcessResultPage = pes.getCurrentTasksForProcess(processId, type, startIndex, batchSize, sortBy, sortOrder);
    TaskSummary[] currentTasksForProcess = (TaskSummary[])currentTasksForProcessResultPage.getResults();
    List<Long> currentTasksIdsForProcessList = new ArrayList<Long>();
    for (TaskSummary taskSummary : currentTasksForProcess) {
    currentTasksIdsForProcessList.add(taskSummary.getId());
    }
    Long[] currentTasksIdsForProcessArray = currentTasksIdsForProcessList.toArray(new Long[0]);



Reply
  • This line gives you an array of TaskSummaryObjects because getResults() returns an Array of Objects and TaskSummary[] is by inheritance an Array of Objects so the cast is allowed at compilation time and works at runtime

    TaskSummary[] currentTasksForProcess = (TaskSummary[])currentTasksForProcessResultPage.getResults();

    this gives you a list of details for each task. You can then iterate over these objects and get the task ID which can be stored in a Long[] array.

    Here's an example. In the example I'm finally storing all the task IDs within the varaible currentTasksIdsForProcessArray

    ResultPage currentTasksForProcessResultPage = pes.getCurrentTasksForProcess(processId, type, startIndex, batchSize, sortBy, sortOrder);
    TaskSummary[] currentTasksForProcess = (TaskSummary[])currentTasksForProcessResultPage.getResults();
    List<Long> currentTasksIdsForProcessList = new ArrayList<Long>();
    for (TaskSummary taskSummary : currentTasksForProcess) {
    currentTasksIdsForProcessList.add(taskSummary.getId());
    }
    Long[] currentTasksIdsForProcessArray = currentTasksIdsForProcessList.toArray(new Long[0]);



Children
  • Hola Eduardo,

    I have a similary problem, but I need retrieve the details for each input of the Task. Is possible to do it without java code?
    Im relatively new in Appian and I still dont control the java plugins, so im trying to do it only with Appian code and functions.

    I have reached the point of recovering the instances of my tasks in a grid, and get the "id" of the task that I select. But I dont know how to access the inputs task details using this "id".

    Thanks for your time!
    Pablo.