Click or drag to resize
RuntimeServiceGetLaunchableProcessList Method
Gets a list of launchable processes.

Namespace: Advantys.Workflow.Web.Services.Processes.Runtime
Assembly: Advantys.Workflow.Web.Services.Processes.Runtime (in Advantys.Workflow.Web.Services.Processes.Runtime.dll) Version: 5.7.14075.2 (5.7.14075.2)
Syntax
public XmlNode GetLaunchableProcessList()

Return Value

Type: XmlNode
List of launchable processes.

Format: By default returns RSS 2.0

Sorted: The list is sorted by process name in ascending order.

Remarks

This list contains only processes where the authenticated user belongs to the participant with the role "Requester".

Optional Parameters.
These parameters can be used in the query string or as parameters of the SOAP headers (see examples for more information).

processCategory (string)Returns only the process(es) of the specified category name.
delegateUsername (string)Returns only the process(es) which the current user can launch as delegate (i.e. on behalf of) the specified user.
template (string)Name of the response template.
size (int)Number of items per page.
page (int)Specifies the page number. The first page is returned if there is no page number specified.
utc (bool)Displays dateTime values in UTC format.


Common Macros

<WF_LIST_TITLE>Replaced with the title.
<WF_LIST_DESC>Replaced with the description.
<WF_SYSTEM_DATE>,<WF_SYSTEM_TIME>,<WF_SYSTEM_DATETIME>Replaced with the date, time and datetime.
<WF_USER_LANGUAGE>Replaced with the language.
<WF_PROCESS_LAUNCH_LIST_LINK>Link to the Web UI portal of WorkflowGen.
<WF_PROCESS_ITEM>Replaced with the specific sub-macros listed below.

Specific Sub-Macros in <WF_PROCESS_ITEM></WF_PROCESS_ITEM>

<WF_PROCESS_ID>
<WF_PROCESS_FOLDER_ID>
<WF_PROCESS_NAME>
<WF_PROCESS_DESC>
<WF_PROCESS_VERSION>
<WF_PROCESS_STATUS>
<WF_PROCESS_CATEGORY>
<WF_PROCESS_HELP_TEXT>
<WF_PROCESS_HELP_LINK>
<WF_PROCESS_SUPPORT_EMAIL>
<WF_PROCESS_LAUNCH_LINK>

Examples
Try out these URLs directly in your browser or RSS Reader.
- Return the list with RSS 2.0 format (default format when no template is specified):
http://yourserver:port/wfgen/ws/ProcessesRuntime.asmx/GetLaunchableProcessList<br />or
http://yourserver:port/wfgen/ws/ProcessesRuntime.asmx/GetLaunchableProcessList?template=ProcessesRuntime.LaunchableProcessListRss.txt<br />
- Return the list with ATOM format:
http://yourserver:port/wfgen/ws/ProcessesRuntime.asmx/GetLaunchableProcessList?template=ProcessesRuntime.LaunchableProcessListAtom.txt<br />
- Return the list with a customized XML format:
http://yourserver:port/wfgen/ws/ProcessesRuntime.asmx/GetLaunchableProcessList?template=ProcessesRuntime.LaunchableProcessListXml.txt<br />
- Return the list of launchable processes of the IT category:
http://yourserver:port/wfgen/ws/ProcessesRuntime.asmx/GetLaunchableProcessList?processCategory=IT<br />
- Return 5 of my launchable processes:
http://yourserver:port/wfgen/ws/ProcessesRuntime.asmx/GetLaunchableProcessList?size=5

This HTTP GET sample returns the list of launchable processes of the connected user.
using System;
using System.Collections.Generic;
using System.Text;

namespace ConsoleApplication1
{
  class Program
  {
    static void Main(string[] args)
    {
        // Variables
        System.Net.HttpWebRequest httpWebReq = null;    // Http web request object
        System.Net.HttpWebResponse httpWebResp = null;  // Http web response object
        System.IO.StreamReader myReader = null;         // To read response stream
        string url = string.Empty;                      // URL of the web method of the API
        string response = null;                         // string used to display response

        // Call the Web Service API method (replace yourserver and port with your hostname)
        url = "http://yourserver:port/wfgen/ws/ProcessesRuntime.asmx/GetLaunchableProcessList";

        // Prepare the request
        httpWebReq = (System.Net.HttpWebRequest)System.Net.WebRequest.Create(url);
        httpWebReq.Method = "GET";
        httpWebReq.Credentials = System.Net.CredentialCache.DefaultCredentials;
        httpWebReq.ContentType = "text/xml; charset=utf-8";

        // Gets the stream associated with the response
        httpWebResp = (System.Net.HttpWebResponse)httpWebReq.GetResponse();
        myReader = new System.IO.StreamReader(httpWebResp.GetResponseStream());
        response = myReader.ReadToEnd();
        httpWebResp.Close();

        // Display the XML in the console
        Console.Write(response);
    }
  }
}

This SOAP example returns with XML template, the first launchable processes of IT category.
A web reference at www.mycompany.com has been added in the project.
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Net;
using System.Xml;
using System.Xml.Xsl;
using com.mycompany.www;
<br />
public partial class _Default : System.Web.UI.Page
{
  protected RuntimeService myRuntimeService = null;
<br />
    protected void Page_Load(object sender, EventArgs e)
    {
        XmlNode resultNode = null;
        LaunchableProcessListHeader myLaunchableProcessListHeader = null;
<br />
        // Settings and parameters
        myLaunchableProcessListHeader = new LaunchableProcessListHeader();
        myLaunchableProcessListHeader.ProcessCategory = "IT";
        myLaunchableProcessListHeader.Template = "ProcessesRuntime.LaunchableProcessListRss.txt";
        myLaunchableProcessListHeader.Size = 1;
        myLaunchableProcessListHeader.Page = 1;

        // Set NetworkCredentials with the credentials of the current connected user
        myRuntimeService = new RuntimeService();
        myRuntimeService.LaunchableProcessListHeaderValue = myLaunchableProcessListHeader;
        myRuntimeService.Credentials = CredentialCache.DefaultCredentials;
<br />
        // Call the Web Service API method 
        resultNode = myRuntimeService.GetLaunchableProcessList();
        TextBox1.Text = resultNode.SelectNodes("channel/item").Count.ToString();   
    }
}
<br />
See Also