Skip to main content
These are two lines of code that are generated in the InfoPath client event.

strServerURL = K2.ProcessInstance.DataFields("K2SharePointURL").MetaData & "/_vti_bin/K2SpsList.asmx"
strPartServerURL = K2.ProcessInstance.DataFields("K2SharePointURL").MetaData

My goal to get as much stuff into string table and NOT use process or activity level fields because I have to support a development server and a production environments. I would like to simply have 1 K2 solution where I can point it to development solution, and when it is working, I can then simply export to the production server really easily. Problem is that when working with InfoPath, there are several process and activity level fields that get littered throughout the solution.

So I went into the InfoPath client genereated code and modified it to use string tables. When I change the code above to use a string table, the code bombs. I get "Value does not fall within the expected range." Why is "MetaData" used?
You may find this knowledge base article helpful:
http://kb.k2workflow.com/Articles/KB000111.aspx - Deploying K2.net InfoPath processes between environments

Quoted from article:
These values are not stored in String Tables to avoid compatibility issues between previous and existing process and template code versions.

Reply