How to get the current List Item ID in a K2 Blackpoint / Blackpearl process
By peter.stilgoe
The current list item ID in a K2 Blackpoint / Blackpearl process is held in the ‘SpIntegrationData’ hive in XML fields. This hive is hidden by default so in the Object Explorer window you need to click the down arrow top right hand side & click ‘Show Hidden Fields’.
SPIntegrationData –> SPData –> All available data fields show here
This data is populated as soon as the process is started.
More From pstilgoe
K2 Blackpoint / Blackpearl: Using Sharepoint lookup columns in K2 processes
By peter.stilgoe
As you probably know lookup columns in Sharepoint are stored in this format “ID;#String” (record number & then the string value). I was trying to use a lookup value in a K2 process to make up the new sites URL when provisioning new sites. Obviously this was failing due to the way lookup columns are stored ie. illegal characters ID;#String.
You can get round this by using the K2 ‘Code Reference Event’
1) Add a ‘Code Reference Event’ to one of your activity containers on the K2 canvas.
2) Give the code event a name
3) Event Method Editor –> Call Constructor –> Add Reference –> Microsoft.Sharepoint.dll
4) Now on the Select Constructor Screen: Microsoft.Sharepoint –> SPFieldLookUpValue –> Constructor(String fieldValue)
5) Assign your Sharepoint Lookup Column to the fieldValue parameter
6) Now map the LookupValue field to whichever field you wish to store the lookup string value in, set ‘Retrieve Value’ and tick ‘after’
7) Now the field you chose to store the lookup string value will contain just the string without the prefix ID;# and can be used throughout the rest of your K2 process.
More From pstilgoe
Sharepoint 2010 & K2: The attempted operation is prohibited because it exceeds the list view threshold enforced by the administrator
By peter.stilgoe
If when trying to create a workflow on a list using K2 Blackpoint / K2 Blackpearl on Sharepoint 2010 & you get the following error when trying to enumerate lists:
“The attempted operation is prohibited because it exceeds the list view threshold enforced by the administrator”
You need to up the ‘List View Threshold’ in Sharepoint 2010:
Central Admin –> Manage Web Applications –> Select your web app & click –> General Settings > Resource Throttling.
The 1st option is List View Threshold which by default is set to 5000, you need to up this to something sensible for your environment.
More From pstilgoe
Error deploying Infopath Integrated K2 process
By peter.stilgoe
When deploying a K2 (Blackpoint or Blackpearl) Infopath Integrated Process you may get an error similar to:
Server was unable to process request. —> Specified argument was out of the range of valid values.
Parameter name: value
Not sure what causes the error but the quickest way round it seems to be to delete the form library & recreate it. Your K2 process will now delpoy with no problems. (Well in my case it does!)
More From pstilgoe
Change InfoPath View Before Uploading Form Using K2 Blackpoint
By peter.stilgoe
In your activity add a ‘Data Event Wizard’
Data Replication –> Transfer Data
Click ‘Assign’
Set the ‘Source’ as the name of the InfoPath view you want to switch to
Expand ‘_K2′ & set the ‘Destination’ to the ‘DocumentView’ field
Now when you save your form in a document library it will be saved on the view you set it as. Ideal for submitting forms as read only once the process is complete.
More From pstilgoe
K2 Blackpoint K2 Blackpearl does not support single sign on authentication
By peter.stilgoe
FYI Neither K2 Blackpoint or K2 Blackpearl support SSO, they only support Windows authentication. K2 Connect (SAP) makes use of SSO in some aspects.
If you are trying to use in an SSO environment you will see errors similar to:
Unable to cast object of type ‘System.Web.Security.SingleSignOn.SingleSignOnIdentity’ to type ‘System.Security.Principal.WindowsIdentity’
Update: Apparently Blackpearl users can create a custom security provider to handle SSO authentication.
More From pstilgoe
K2 4.5 Release Candidate Is Now Available
By peter.stilgoe
K2 blackpearl®, K2 blackpoint® and K2 connect® 4.5 Release Candidates now available!
K2 blackpearl, K2 blackpoint and K2 connect have moved into a new era with the introduction of K2 4.5 – the next generation of K2 products!
This release focuses on greater stability and better performance. K2 4.5 still has all the great functionality you’re accustomed to plus great additional features, such as Inline Functions, an updated designer for SharePoint, support for Microsoft Windows Server 2008 R2 and Microsoft Visual Studio 2008, memory and performance enhancements, SSL support, a better installation experience, and more.
K2 blackpearl 4.5 and K2 blackpoint 4.5 are now built from a single codebase, which means that all performance and resource-utilization enhancements will be available to all K2 customers. K2 connect has been updated so that it can leverage these enhancements, as well.
K2 4.5 is the fifth minor installment of K2 blackpearl following RTM, SP1, 0803 and 0807. Because K2 blackpearl and K2 blackpoint are now based on the same core components, we’ve decided to bring the product names into sync.
What’s new in the 4.5 releases of K2 blackpearl and K2 blackpoint
• K2 Designer for SharePoint
• K2 Studio
• Improved design and developer experience
• Enhanced end-user experience
• Optimized infrastructure
• Simplified installation experience
1.New support for:
Windows Server 2008, including R2
SQL Server 2008
Visual Studio 2008
2.Non- AD Installation
3.SSL Support
4.Inline Functions
5.Reports
New filters and parameters
Using SmartObject direct execution functionality
6.Performance enhancements to SmartObjects and the K2 Workflow Server
7.In MOSS/WSS K2 configuration Features are deployed as solutions
8.K2 Designer for SharePoint enhancements include:
Inline Functions
SmartObject Filters
Custom Work Item Notification
Process Data Fields
New Wizards
9.Internationalization of the codebase
10.Numerous documentation updates
11.Inclusion of all Updates
Visit www.k2.com for more information
More From pstilgoe
K2 The form template cannot be opened in the InfoPath designer, because InfoPath is not installed on the machine
By peter.stilgoe
Go to “Software\Microsoft\Windows\CurrentVersion\App Paths\InfoPath.exe” in your registry (if infopath.exe does not exist create it), there you will see a “Path” value if you do not then create a new string value with the the name “Path” and in the “Value Data” portion add the path to the infopath exe folder, for example, “C:\Program Files (x86)\Microsoft Office\Office12\
Also in the ‘Default’ string add the path with the actual filename ie. “C:\Program Files (x86)\Microsoft Office\Office12\infopath.exe”
Now close K2 designer & reopen, you will now be able to edit Infopath forms from within K2
More From pstilgoe
Does K2 Blackpoint (or Blackpearl) work in a HTTPS / SSL environment?
By peter.stilgoe
Well I read numerous posts etc but nothing definitive, after speaking to K2 basically there are ‘some’ issues running K2 Blackpoint in a HTTPS environment however full SSL support will be introduced in 4.5 release for both K2 Blackpoint & K2 Blackpearl. A formal release date has not been set but they are looking at the end of Q1 2010.
Hope this helps anybody looking into this & hopefully not long to wait !
More From pstilgoe
K2 Blackpoint: Troubleshooting & error logs
By peter.stilgoe
Troubleshooting anything to do with K2 Blackpoint the 1st port of call is going through your error logs:
All logging configuration (excluding SmartObject logging) is done through the following file:
C:\Program Files\K2 blackpearl\Host Server\Bin\HostServerLogging.config
When you open the file in notepad, or any other text editor, you will see a section that looks like the following:
This section is where you can configure the various logging destinations as well as the verbosity. The default settings have only the Console destination active but you can turn on the other destinations by changing the Active property from False to True. The LogLevel property specifies the verbosity. The options are, from most verbose to least verbose, All, Debug, Info, and Error. My preference in a development environment is typically for Debug or Info as they give you enough information to be useful but not too much that you get lost. Error will only show you the errors which can be nice however usually some context is helpful. In a production environment however any log level above Error for any destination is probably overkill unless you are actively troubleshooting.
I also preference File logging as this creates a transmittable text file in the C:\Program Files\K2 blackpoint\Host Server\Bin\ directory.
Here is a brief description of the various logging destinations:
•ConsoleExtension – directs messages to the server console window. In a production environment where you are running as a service and have no need for the console output I recommend turning the console extension off as it will improve performance slightly.
•FileExtension – allows you to direct logging to text files. The App settings section in the config file even allows you to specify max file size or file durations.
•EventLogExtension – allows you to direct logging to the Windows Event Log. I typically recommend setting this to Error so that you don’t bloat your event log with standard info or debug messages.
•ArchiveExtension – allows you to use a SQL database as a repository for logging information. This is handy when you have a load balanced environment and don’t want to have to check each server’s log files individually. You can have all the servers in the NLB logging to the same database.
•MSMQExtension – allows you to log messages to the Microsoft Message Queuing system which other applications or services could monitor.
Once you have made the changes you want in the config file save your changes (you might also want to create a backup of this file just in case) and then restart the K2 blackpoint service. The new logging changes will now be in effect.
You may be overwhelmed the first time you open a text log file as there is a lot of information that is captured and browsing the log file in notepad can be daunting. What you will notice however is that the log file is comma delimited meaning that you can easily open this file in a spreadsheet application like Microsoft Excel. This gives you a way to do filtering as well as play with column width to enhance readability.
If you need more information on the logging framework there is an article here: http://kb.k2workflow.com/articles/kb000309.aspx
Source: k2underground.com
More From pstilgoe
Known Issues With K2 Blackpoint
By peter.stilgoe
1.To enable the K2 Web Designer on sub sites, please refer to the K2 blackpoint Documentation under K2 Web Designer for SharePoint > K2 Web Designer Administration Settings. Following the Getting Started Steps located in K2 Studio will enable the feature on a site collection and top level lists or libraries. To enable the K2 Web Designer on sub sites, you need to activate the Site Feature, which is documented in the product documentation.
2.After installing K2 blackpoint 0902 (4.9040.1.0) or (4.9040.2.0) the SOURCECODE data source in Visual Studio required for designing custom reports is missing. To resolve this issue follow the workaround described in KB000411 – Known Issue: Custom Reporting Services component not visible.
3.In the K2 blackpoint documentation in the topic Start Here… > Planning the environment > Requirements > Software by Role > Prerequisites for the SharePoint Server role it states that Microsoft Windows 2008 / Microsoft Windows 2008 Service Pack 1 is supported as an operating system. This is incorrect only Windows 2003 Server with SP2 (Standard or Enterprise) or Windows 2003 Server R2 with SP2 (Standard or Enterprise) is currently supported. This issue is only present in K2 blackpoint 0902 (4.9040.1.0)
4.When selecting columns on the Process Settings screen in the K2 Web Designer for SharePoint the columns cannot contain special characters such as < > &
5.When deploying a K2 Web Designer process the user will receive an error stating that the feature could not be added to the farm. This error is known to surface when the web app pool account of the SharePoint Web Application used to deploy the process is not a SharePoint Farm Administrator.
Resolution: The SharePoint App Pool account must be added manually as a SharePoint Farm Administrator.
6.The environment settings are correctly saved at installation, however, the K2 Studio Option does not read the saved environment setting and defaults to the local machine name. If OK is selected then the incorrect value will be saved. Workaround: Change the Server value in the Connection settings screen before clicking OK.
7.The column headers of the users and their respective actions do not display on the Delegation page. This error occurs if one user is added to the delegates list (e.g., if a new user is added to a list that previously did not have any delegates), then the headers do not display for the new user. However, as soon as a second delegate user is added, the column headers appear and display correctly. This error does not occur if delegates had been previously added to the worklist item.
More From pstilgoe
K2 Process / Workflow Automation – Questions to ask
By peter.stilgoe
PROCESS QUESTIONS
1. Does the process require reporting, auditing, compliance or version control?
2. Can the process be mapped? Or has the process been mapped and optimized already?
3. Is this process in operation today, electronically, in paper or otherwise?
4. If the business process is new to the business, have the necessary participants of the process been informed and involved in the change management and business improvement exercise?
5. Do you have a paper forms and folders that are passed around?
6. Is this process time sensitive? Are there service level agreements? Do you need escalation points when specific time limits are reached based on your SLAs?
7. Do you have a business process that requires more than one type of review or decision at the same time?
8. Does the process share information with any other process?
9. Does the process run for a long time?
PEOPLE QUESTIONS
1. Will tasks need to be performed on behalf of another person?
2. Will the process involve the participation of the entire organization?
3. Are the process participants geographically dispersed?
4. Does the process need to escalate if someone fails to action it?
5. Do multiple people need to review and sign this off?
6. Are external parties involved in the process, for example regulatory agencies, customers and partners?
7. Is it important to notify users of process status?
8. Is overall process visibility important, for example for employees, managers, executives or auditors?
9. Do you need visibility into your process, like who is doing what and how long does tasks take to complete?
More From pstilgoe
K2 deployment error: The partner transaction manager has disabled its support for remote/network transactions
By peter.stilgoe
When deploying a new K2 workflow / process you get an error message containing:
The partner transaction manager has disabled its support for remote/network transactions
First check on the application server(s):
1. Go to “Administrative Tools > Services”
2. Turn on the “Distribute Transaction Coordinator” Service if it is not running
If you still get the error:
First verify the “Distribute Transaction Coordinator” Service is
running on both database server and application servers
1. Go to “Administrative Tools > Services”
2. Turn on the “Distribute Transaction Coordinator” Service if it is not running
If it is running and its not running on the same server as the SQL Server:
1. Go to “Administrative Tools > Component Services”
2. On the left navigation tree, go to “Component Services > Computers
> My Computer” (you may need to double click and wait as some nodes
need time to expand)
3. Right click on “My Computer”, select “Properties”
4. Select “MSDTC” tab
5. Click “Security Configuration”
6. Make sure you check “Network DTC Access”, “Allow Remote Client”,
“Allow Inbound/Outbound”, “Enable TIP” (Some option may not be
necessary, have a try to get your configuration)
7. The service will restart
8. YOU MAY NEED TO REBOOT YOUR SERVER IF IT STILL DOESN’T WORK
On the application server(s) use the same above procedure to open the
“Security Configuration” setting, make sure you check “Network DTC
Access”, “Allow Inbound/Outbound” option, restart service and computer
if necessary.
On you SQL server service manager, click “Service” dropdown, select
“Distribute Transaction Coordinator”, it should be also running on
your server computer
More From pstilgoe
Deploying K2 process: Error occurred adding the feature to the farm Server was unable to process request. —> Access denied.
By peter.stilgoe
When deploying a K2 process you get the following error:
Task Error: System.Exception: Error occurred adding the feature to the farm. —> System.Web.Services.Protocols.SoapException: Server was unable to process request. —> Access denied.
at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)
at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
This is normally a permission problem & you should check the following & make any changes that are required:
1) Check that the MOSS app pool account has Site Collection and Farm Admin Rights and is also a local administrator.
2)Check that the MOSS app pool account is given dbo permission on the SP Admin Config database.
3)Check that the MOSS app pool account is granted modify permissions: [Program Files]\Common Files\Microsoft Shared\Web Server Extensions\12\Template\Features\ and \12\ISAPI folders.
4) Make sure the MOSS app pool account is given K2 export rights.
5) Make sure the “K2 Workflow Integration Content Types” in Central Admin > K2 for SharePoint has been activated.
You may also need to to do an iisreset.
If all of the above are present you should be able to publish your workflow without experiencing the above error.
More From pstilgoe
K2 – “Insufficient SQL database permissions for user in database ‘SharePoint_Config’ on SQL Server instance ‘WSS1′.
By peter.stilgoe
If your seeing the below error in your event viewer:
Error:
“Insufficient SQL database permissions for user in database ‘SharePoint_Config’ on SQL Server instance ‘WSS1′. Additional error information from SQL Server is included below.
EXECUTE permission denied on object ‘proc_putObject’, database ‘SharePoint_Config’, schema ‘dbo’.”
Solution:
The K2 Server account must be part of the Site Collection Admin Group in MOSS.
More From pstilgoe
K2 Blackpoint now supports Windows 2008 server & SQL Server 2008
By peter.stilgoe
Now K2 blackpoint is supported on Windows Server 2008 and on SQL Server 2008! The KB470 update just released on the K2 customer portal provides this support. KB000470 updates all K2 blackpoint 0902 version 4.9040.1.0 installations with latest product hotfixes. The installer will update K2 blackpoint 0902 32-bit and 64-bit installations.
More From pstilgoe
K2 – General rules for configuring kerberos delegation
By peter.stilgoe
A good set of rules from K2underground:
1. Kerberos delegation should be configured for each of the following services:
a. K2 server
b. K2 workspace
c. SharePoint – Sites that will interact with K2 and also your Central admin site
d. SQL reporting services
e. SQL server
2. SPNs needed (you should always create SPNs for both the Fully Qualified Domain name (FQDN) and the NetBIOS name of each service:
a. K2 server – When you run a K2 farm please remember that you will need to set the below settings for each server in the farm as well as the farm name itself (Therefore [MachineNameForServer1] can be = to [MachineNameForServer2] etc. or [FarmName]
i. setspn -A K2Server/[MachineNameForServer1]:5252 domain\K2 Service Account domain\K2 Service Account
ii. setspn -A K2Server/[MachineNameForServer1]:5252 domain\K2 Service Account
iii. setspn -A K2HostServer/[MachineNameForServer1]:5555 domain\K2 Service Account domain\K2 Service Account
iv. setspn -A K2HostServer/[MachineNameForServer1]:5555 domain\K2 Service Account domain\K2 Service Account
b. K2 workspace: The best implementation is to use host headers for site names. If you do want to use http://machinename:port, make sure that you don’t have multiple Application pool identities for different sites on the same IIS server and don’t include the port number in the SPN. Best way to avoid that is to use Host headers (A type or Host type DNS record and not CNAME)
i. setspn -A HTTP/K2WSSiteName domain\K2 Workspace Site Application pool identity
ii. setspn -A HTTP/K2WSSiteName.FQDN domain\K2 Workspace Site Application pool identity
c. SharePoint – Sites that will interact with K2 and also your Central admin site. The best implementation is to use hostheaders for site names. If you do want to use http://machinename:port, make sure that you don’t have multiple Application pool identities for different sites on the same IIS server. Best way to avoid that is to use Hostheaders (A type or Host type DNS record and not CNAME)
i. setspn -A HTTP/SharePointSiteName domain\SharePointSite Application pool identity
ii. setspn -A HTTP/SharePointSiteName.FQDN domain\SharePoint Site Application pool identity
iii. setspn -A HTTP/SharePointCentralAdminSiteName domain\SharePointCentralAdmin Application pool identity
iv. setspn -A HTTP/SharePointCentralAdminSiteName.FQDN domain\SharePointCentralAdmin Site Application pool identity
d. SQL reporting services:
i. setspn -A HTTP/SSRSSiteName domain\SSRS Application pool identity
ii. setspn -A HTTP/SSRSSiteName.FQDN domain\SSRS Site Application pool identity
e. SQL Server – please see SQL server documentation for the correct SPN value
3. Check your system for duplicate SPNs. This is a very important step to take. With Windows 2003 there is not any clean or easy way to check this, accept to make a dump of the SPNs in your AD structure and manually checking for duplicate values. With Windows 2008 you can run the following command to check for duplicate values: setspn –x
4. Make sure that each the mentioned accounts above has permissions to delegate to any service (less secure, but most simple way of configuring)
5. Set the NTAuthenticationProviders node to Negotiate,NTLM for each IIS site as noted above on each IIS server (If farming K2 workspace, SharePoint or SSRS make sure to set this on each machine where the site exists) PS. These steps only apply to IIS 6.0
6. Change Authentication per SharePoint site in SharePoint Central Admin to allow for Negotiate
7. Remember to always perform an IIS reset if you make any such changes to any of your sites and restart your services.
More From pstilgoe
K2 Blackpoint recommended specifications
By peter.stilgoe
Computer and Processor Minimum: Server with processor speed of 2.5 gigahertz (GHz) or higher
Recommended: Dual processor, 3 GHz or higher
*32-bit and 64-bit support
Memory Minimum: 1 gigabyte (GB) RAM
Recommended: 2 GB recommended*
*Farm deployment requires 2 GB RAM; 4 GB recommended for SQL and K2 Server
Hard Disk 3 GB of available hard disk
Display 1024×768 or higher resolution monitor
Connection 100 megabits per second (Mbps) connection speed required for farm deployment
56 kilobits per second (Kbps) required for client to server connection
Email Notifications Internet Simple Mail Transfer Protocol/Post Office Protocol 3 (SMTP/POP3)
or
Internet Message Access Protocol 4 (IMAP4)
or
MAPI-compliant messaging software
NOTE: If you are installing a single server environment, it is recommended that you have more RAM and a larger processor in order to have acceptable performance. If you are separating out the components onto multiple tiers, those tiers should be sized appropriately based on usage and performance requirements.
More From pstilgoe
Installing K2 Blackpoint beta on a MOSS Standalone environment using SQL Express
By peter.stilgoe
When installing Blackpoint Beta in a MOSS standalone environment, if you have problems connecting to the SQL database try the steps below which should resolve your issue:
1) Open SQL Server Configuration Manager, expand SQL Server 2005 Network Configuration, Protocols for SQLEXPRESS, Enable Named Pipes.
2) Open SQL Server 2005 Surface Area Configuration, select Surface Area Configuration for services and connections, Expand Data base Engine node and select Remote connections in the tree view, Under Local and remote connections select a option that include named pipes.
3) Make sure to add your database name in the K2 configuration as TESTSQL\SQLEXPRESS



February 28th, 2011
