This method retrieves the workflow history information for a document in the specified workflow for a company.
The workflow history may contain additional events that aren’t displayed in the user interface for Microsoft Dynamics GP. |
Parameter |
Type |
Description |
---|---|---|
key |
The business object key that specifies the document in Microsoft Dynamics GP for which workflow history information will be returned. |
|
associationKey |
The workflow association key that specifies the workflow being examined. |
Value |
Type |
Description |
---|---|---|
GetHistoryResult |
A list of workflow history information objects for the document. |
The following C# example retrieves the workflow history information for the Sales Quote document with the document number “QTEST1032” that is part of the Dynamics GP Sales Quote Approval Workflow set up for the sample company. The history information is displayed in a dialog.
Be sure to use the URL and port for your workflow server. |
using System; using System.Collections.Generic; using System.Text; using System.Windows.Forms; using Microsoft.Dynamics.Workflow.Proxy; namespace WorkflowWebServiceSample { class Program { static void Main(string[] args) { CompanyKey companyKey; WorkflowAssociationKey workflowKey; BusinessObjectKey key; KeyPart[] keyParts; KeyPartOfString docNumber; KeyPartOfString docType; WorkflowHistory[] historyInfo; // Create an instance of the web service DynamicsWorkflow wsWorkflow = new DynamicsWorkflow(); // Specify the URL used to access the Workflow web service wsWorkflow.Url = "http://WorkflowServer:10072/_vti_bin/WorkflowService.asmx"; // Be sure that default credentials are being used wsWorkflow.UseDefaultCredentials = true; // Create the company key for the sample company companyKey = new CompanyKey(); companyKey.Id = (-1); // Get the history for a workflow workflowKey = new WorkflowAssociationKey(); workflowKey.OrganizationKey = companyKey; workflowKey.WorkflowName = "Dynamics GP Sales Quote Approval Workflow"; // Specify which SOP Quote document key = new BusinessObjectKey(); // Build the key parts // Document number docNumber = new KeyPartOfString(); docNumber.Name = "SOPNUMBE"; docNumber.PartValue = "QTEST1032"; // Document type docType = new KeyPartOfString(); docType.Name = "SOPTYPE"; docType.PartValue = "Quote"; // Assemble the key parts keyParts = new KeyPart[2]; keyParts[0] = docNumber; keyParts[1] = docType; // Add the key parts to the key key.KeyParts = keyParts; // Get the history information for this workflow and document historyInfo = wsWorkflow.GetHistory(key, workflowKey); // Display the history information StringBuilder historyList = new StringBuilder(); foreach (WorkflowHistory h in historyInfo) { historyList.AppendLine("Action: " + h.Action); historyList.AppendLine("User: " + h.User); historyList.AppendLine("Description: " + h.Description); if (h.Comment != "") { historyList.AppendLine("Comment: " + h.Comment); } historyList.AppendLine("--------"); } MessageBox.Show(historyList.ToString()); } } }