Skip to main content
Hello K2 Experts,

I'm building a Smart Form ASP.NET interface to a K2 workflow.

I have a deployment question.

My client does not want to buy another server on which to deploy a production version of a K2 workflow. My client wants the development and production versions to live on the same server. It looks like I will have to clone the development version of the Smart Form application and create a production version that 'talks' with a similarly cloned K2 Project.

Is that correct or is there a way I can leverage just one Smart Form application that can 'talk' with either K2 Project (development or production) depending upon some clever runtime switching logic?

Thanks for your always good advice.
I'm guessing here based on a response I got yesterday to a similar situation! The trick, I believe, is to use string tables to store the value to use to launch the asp.net from. Then if you have two different Projects that have the same process and use the same asp.net, you should be able to have two different string tables.

Hope that makes sense!

Andy.
Hi all,

I have elected to rewrite Me.Project and Me.URL in InitializeComponent() by calling an UpdatePageProperties() method that obtains values from a Web.config. This way one application can point to two different Projects on the same K2 server.

Private Sub InitializeComponent()
Me.Activity = "J D Edwards Admin"
Me.Process = "Access Request"
Me.Project = "ProcessRequest"
Me.Solution = "CAR"
Me.URL = "http://localhost/CAR/JDEdwardsAdminDone.aspx"
Helpers.UpdatePageProperties(Me, System.IO.Path.GetFileName(Request.PhysicalPath))
End Sub

Public Shared Sub UpdatePageProperties( _
ByVal PageToUpdate As SourceCode.K2SmartForms.K2SmartForm, ByVal PageName As String)

PageToUpdate.Project = System.Configuration.ConfigurationSettings.AppSettings.Get("K2Project")
PageToUpdate.URL = System.Configuration.ConfigurationSettings.AppSettings.Get("K2URL") & PageName

End Sub

Thus far, it seems to work.

Reply