asked on September 7, 2016
•
Show version history
Hii all ,
we are reading a PDF File in byte array format through HTTP Web Service in our Workflow.
Aspx .
We need to retrieve the PDF Contents now through our SDK Script.
How can we do the same?? Need your help.
namespace WorkflowActivity.Scripting.SDKScript { using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Data.SqlClient; using System.Text; using System.IO; using System.Xml; using Laserfiche.RepositoryAccess; /// <summary> /// Provides one or more methods that can be run when the workflow scripting activity is performed. /// </summary> public class Script1 : RAScriptClass92 { /// <summary> /// This method is run when the activity is performed. /// </summary> protected override void Execute() { string token = this.WorkflowApi.GetTokenValueFromNameAsString("EFormtoPDFRequestfromApplitrack_Content", 0); //var token2 = GetTokenValue("EFormtoPDFRequestfromApplitrack_Content File"); // string token = this.WorkflowApi.GetTokenValueFromNameAsString("HTTPWebRequest_Content File", 1); string base64PDF = null; using(StringReader stringReader = new StringReader(token)) { using(XmlReader reader = XmlReader.Create(stringReader)) { if(!reader.ReadToFollowing("GetFormAsPDF")) { this.WorkflowApi.TrackWarning("HTTP Response was not valid."); return; } base64PDF = reader.ReadElementContentAsString("GetFormAsPDF", "http://schemas.microsoft.com/ado/2007/08/dataservices"); } } this.SetTokenValue("Base64PDF", base64PDF); byte[] pdfBytes = Convert.FromBase64String(base64PDF); DocumentInfo doc = this.BoundEntryInfo as DocumentInfo; if (doc == null) { this.WorkflowApi.TrackWarning("Entry was not a document."); return; } using (Stream edocStream = doc.WriteEdoc("application/pdf", pdfBytes.Length)) { edocStream.Write(pdfBytes, 0, pdfBytes.Length); } doc.Extension = ".pdf"; doc.Save(); } } }
0
0