09-29-2016 03:06 AM
Can someone please point me to some documentation on how to create a stand-alone workflow in gmsc 2016 that I can use From Portal.
Dont need documentation on how to create a workflow or how to add it to portal.
Just want info on how to actually set it up in gmsc and what needs to be done
Solved! Go to Solution.
09-30-2016 08:42 AM
have you had a look at this e-training module?
With version 2016 you might encounter the problem described here. If this is the case please consider in addition the possibility to define workflows in an external editor.
10-03-2016 03:10 AM
Yes , I have followed the e-training module up to the defining a workflow where it becomes a bit hazy between version 15 and 16.
I also had a look at the other link you have send regarding the standalone workflow license issue of 2016 last week , we are not using a standalone workflow license.
Once I have copied the workflows directory and set it up accordingly (e-training video and http://community.hexagongeospatial.com/t5/Support-GeoMedia-Smart-Client/NetworkError-Standalone-Work...) when browsing the url of the copied workflow I get a similer error and one stating that the workflow name could not be found.
I am also not 100% sure how to exactly create the standalone workflow in 2016 (How the new workflow copied links up with the workflow editor) (Link you have send in the video from 3:05 , if you can point me to documentations that can explain this part in 2016)
I am only on that site from Thursday , so I will be able to send you further information only from Thursday should you require any.
10-03-2016 07:02 AM
the only difference in version 2016 for the workflow files is about custom scritpts: you have to create a subfolder in the custom\scripts folder with the name corresponding to your workflow name, then create your custom script in there. So for a BE workflow you will have:
Please check you don't have a workflowRuntime license in your licence file. In addition (depending on the build you have) please check in your workflow.config file all of the providers have
and not 15.
10-04-2016 12:16 AM
This is what works for me on my testing machine.
<?xml version="1.0" encoding="utf-8"?> <configuration> <configSections> <section name="unity" type="Microsoft.Practices.Unity.Configuration.UnityConfigurationSection, Microsoft.Practices.Unity.Configuration" /> </configSections> <appSettings> <add key="Debug" value="true"/> </appSettings> <connectionStrings> <add name="workflow3" connectionString="Data Source=localhost\SQLExpress;Initial Catalog=glasgow;User ID=glasgow;Password=glasgow" providerName="Intergraph.Emea.Data.SqlServerProvider"/> </connectionStrings> <unity> <typeAliases> <typeAlias alias="AuthorizationProvider" type="Intergraph.Emea.Workflows.IAuthorizationProvider, Intergraph.Emea.Workflows, Version=22.214.171.124, Culture=neutral, PublicKeyToken=9d92a70b1d7f7210" /> <typeAlias alias="ConnectionProvider" type="Intergraph.Emea.Workflows.IConnectionProvider, Intergraph.Emea.Workflows, Version=126.96.36.199, Culture=neutral, PublicKeyToken=9d92a70b1d7f7210" /> <typeAlias alias="SessionProvider" type="Intergraph.Emea.Security.ISessionProvider, Intergraph.Emea.SecurityBase, Version=188.8.131.52, Culture=neutral, PublicKeyToken=9d92a70b1d7f7210" /> <typeAlias alias="ReportProvider" type="Intergraph.Emea.Workflows.IReportProvider, Intergraph.Emea.Workflows, Version=184.108.40.206, Culture=neutral, PublicKeyToken=9d92a70b1d7f7210" /> <typeAlias alias="MapProvider" type="Intergraph.Emea.Workflows.IMapProvider, Intergraph.Emea.Workflows, Version=220.127.116.11, Culture=neutral, PublicKeyToken=9d92a70b1d7f7210" /> </typeAliases> <containers> <container> <types> <type type="AuthorizationProvider" mapTo="Intergraph.Emea.Workflows.AnonymousAuthorizationProvider, Intergraph.Emea.Workflows, Version=18.104.22.168, Culture=neutral, PublicKeyToken=9d92a70b1d7f7210" /> <type type="ConnectionProvider" mapTo="Intergraph.Emea.Workflows.ConnectionProvider, Intergraph.Emea.Workflows, Version=22.214.171.124, Culture=neutral, PublicKeyToken=9d92a70b1d7f7210" /> <type type="SessionProvider" mapTo="Intergraph.Emea.Workflows.WorkflowSessionProvider, Intergraph.Emea.Workflows, Version=126.96.36.199, Culture=neutral, PublicKeyToken=9d92a70b1d7f7210" /> </types> </container> </containers> </unity> </configuration
As far as I remember I did not need to change anything else. Maybe just check if you don't have duplicate license entries on that machine, there should not be Workflow Manager Runtime entry as Stefano pointed out.
10-06-2016 01:05 AM
Hi Jan and Stefano,
Thanks for the feedback.
As stated , I am on site again today.
Just a quick overview of what I have done , or believe what I should be doing :
1.From http://<Server>/GMSC/Administrator , I created a new project "FarmSA"
2.From http://<Server>//GMSC/Workflows/Editor/# , I created A simple workflow ("FarmSA") with one form displaying 2 field data of table.
3.From http://<Server>/GMSC/Administrator , I created a new workflow connection "FarmSA"
4.I then copied the complete workflows directory (C:\Program Files\Intergraph\GeoMedia SmartClient\Program\Workflows) to C:\Program Files\Intergraph\GeoMedia SmartClient\ and renamed it to FarmWorkflows (C:\Program Files\Intergraph\GeoMedia SmartClient\FarmWorkflows)
5.Created IIS Application (FarmSAWorkflow) set it to the path in point 4 and attached it to the GMSCWFAppPool pool.
6.Edited my Workflow.config file of newly created workflow directory :
-Changed All version 15 to 16
<add name="FarmSA" connectionString="Data Source=DBServer;Initial Catalog=FarmSA;User ID=**;Password=**" providerName="Intergraph.Emea.Data.SqlServerProvider"/>
7.Test in browser : http://<server>/FarmSAWorkFlow/Workflows?workflow=FarmSA
|Exception||The controller for path '/FarmSAWorkFlow/Workflows' was not found or does not implement IController.|
at System.Web.Mvc.DefaultControllerFactory.GetControllerInstance(RequestContext requestContext, Type controllerType)
Did I miss something?
10-06-2016 02:13 AM
Sorry , think my URL should be http://<Server>/FarmSAWorkFlow/?workflow=FarmSA
Still get an error , but I think this has to do with my workflow itself :
|Resolution of the dependency failed, type = "Intergraph.Emea.Workflows.WorkflowController", name = "(none)". Exception occurred while: Calling constructor Intergraph.Emea.SmartClient.Workflows.SmartClientWorkflowSessionProvider(Intergraph.Emea.Workflows.IRequestProvider requestProvider). Exception is: MissingConfigurationException - Missing configuration for 'ConnectionString'. ----------------------------------------------- At the time of the exception, the container was: Resolving Intergraph.Emea.Workflows.WorkflowController,(none) Resolving parameter "workflowControllerContext" of constructor Intergraph.Emea.Workflows.WorkflowController(Intergraph.Emea.Workflows.IWorkflowControllerContext workflowControllerContext) Resolving Intergraph.Emea.Workflows.DatabaseWorkflowControllerContext,(none) (mapped from Intergraph.Emea.Workflows.IWorkflowControllerContext, (none)) Resolving parameter "sessionProvider" of constructor Intergraph.Emea.Workflows.DatabaseWorkflowControllerContext(Intergraph.Emea.Workflows.IRequestProvider requestProvider, Intergraph.Emea.Workflows.IDescriptionProvider descriptionProvider, Intergraph.Emea.Workflows.IWorkflowDatabase database, Intergraph.Emea.Security.ISessionProvider sessionProvider, Intergraph.Emea.Workflows.IWorkflowNameProvider workflowNameProvider, Intergraph.Emea.Workflows.IAuthorizationProvider authorizationProvider, Intergraph.Emea.Workflows.ISettingProvider settingProvider, Intergraph.Emea.Globalization.Localization localization, Intergraph.Emea.Workflows.IAssemblyResolver assemblyResolver, Intergraph.Emea.Workflows.IReportProvider reportProvider, Intergraph.Emea.Workflows.IMapProvider mapProvider, Intergraph.Emea.Workflows.IWorkspaceProvider workspaceProvider) Resolving Intergraph.Emea.SmartClient.Workflows.SmartClientWorkflowSessionProvider,(none) (mapped from Intergraph.Emea.Security.ISessionProvider, (none)) Calling constructor Intergraph.Emea.SmartClient.Workflows.SmartClientWorkflowSessionProvider(Intergraph.Emea.Workflows.IRequestProvider requestProvider)|
|StackTrace||at Microsoft.Practices.Unity.UnityContainer.DoBuildUp(Type t, Object existing, String name, IEnumerable`1 resolverOverrides)|
at Microsoft.Practices.Unity.UnityContainer.DoBuildUp(Type t, String name, IEnumerable`1 resolverOverrides)
at Intergraph.Emea.Workflows.WorkflowControllerActivator.Create(RequestContext requestContext, Type controllerType)
at System.Web.Mvc.DefaultControllerFactory.CreateController(RequestContext requestContext, String controllerName)
at System.Web.Mvc.MvcHandler.ProcessRequestInit(HttpContextBase httpContext, IController& controller, IControllerFactory& factory)
at System.Web.Mvc.MvcHandler.BeginProcessRequest(HttpContextBase httpContext, AsyncCallback callback, Object state)
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
10-06-2016 08:00 AM - edited 10-06-2016 08:01 AM
You seem taking it from the difficult route. Why don't you just copy over only the workflow XML files (from WorkflowSettings and FormSettings folders, v15 => v16) and then modify the workflow.config file? Nothing else is needed.
I hope you did not change anything else except those XML files in the target 2016 installation, like the DLL files
If that works then you can continue the game with new virtual directories.
10-06-2016 11:32 PM - last edited on 10-07-2016 02:40 AM by jan.neumann
I agree , your proposed method is easier,can not get it to work, so I was afraid I missed something so I basically copied the complete workflows directory located under the program folder to my new iis app location.(As proposed in the 2015 tutorial video)
Just to clear up if there is any confusions.
I am not taking anything from version 15 , the server is a clean install , only Smart Client 2016 and Portal SDK 2016 And Webmap 2016 installed.
The Workflow I created is really not even worth callin g it a workflow , I just want to get it working as standalone before actually implementing something , so this workflow is basically this a from with 2 input fields , no connection to a database.
FYI: Did not change anything, just copied the workflows directory to the new location where the iis app location is pointing to and edited the workflow.config file (changed all the 15 dll references to 16 like you said)