There are sometimes circumstances (ahem, ServiceDesk) which require that we open a published Workflow file. By deleting or otherwise adjusting the “project.deployed” file name that sits in the published project directory, we are able to “unlock” that project for editing in the Workflow designer.
Configuration
Custom C# Component – Adding a Computer to a Group in Active Directory
Symantec Connect user Turl posted a forum question asking how to add a computer to an Active Directory group in a Workflow project, because in the Active Directory component library, there’s no boxed component to do this.
Hello
I am trying to add a computer to an AD-Group in my Worklfow.
How can that be done?
I know that there is a component to add user to a Group. But there is no component for computers.
Does anyone have an idea how this could be solved?
Thanks
Turl
After a bit of effort (and learning, as I am not presently a respectable coder), I was able to create a custom C# Code (Script) Component that accomplishes this task.
Considerations – “Copy Data Element to New Location” Component
When using the Copy Data Element to New Location component, use the “Deep Copy” option if you mean to retain the original variable for comparison purposes and you intend to edit the values of the copied (new) variable. See the demo for a better illustration, but here’s a scenario to hopefully help describe it:
Workflow 7.6 – Adjustments and Considerations
{{Update 7/6/2015:
The TextBox component is now a nested input element. any javascript or CSS reference to a TextBox component will now need to be adjusted to fit the new HTML layout.
.textbox {
outline: none;
}.textbox > input {
outline: none;
}
var txtbx = document.getElementById(‘textbox’);var txtbx = document.getElementById(‘textbox’).firstElementChild;
}}
After working with 7.6 for a few days, I’ve found a few bugs, as well as some differences in how the javascript is rendered in the new version. I’ll also mention that the 7.6 virtual windows are completely different than the old infragistics stuff in 7.5; you’ll actually notice if you go looking for it, that the infragistics folder isn’t even there anymore.
Custom Component – Determining the Client Browser
While developing a workflow project for a customer, I noticed that some machines in the customer environment were using IE9 as the primary browser. I also noticed that my form design worked very poorly in IE9. Because the team I was working with had a bit of control over the business paradigm, I was able to design the form to indicate to the end user that “IE9 is an unsupported browser, please use Chrome or etc etc”. This was fantastic, since I really didn’t want to have to go back and redesign everything to work with IE9.
In this post response by reecardo on Symantec Connect, it’s mentioned that the Get HTTP Request Value component can be configured to return the HTTP_USER_AGENT string. So instead of doing all the work to parse that string reliably, (see this post to find out why this string response is so convoluted), I decided to instead use that time to learn some more C#.
Here’s my run at building a Code (Script) Component that returns usable values containing client browser data.
Workflow Short – Personalizing Workflow Component Defaults
I use the Embedded Rule Model a lot. Excessively so. Although configuring it takes only a few actions, after personalizing the component, all I need to do is drag and drop and it’s ready to use.
In my environment, I’ve done the same for the Hanging Path Trigger component, among others.

Integrating LDAP and Workflow for Common Account Actions
All day this past Friday I was trying to get either the Active Directory components or the LDAP generated components to return some usable information on whether an account was locked out. The only results I was able to get back was what I can only guess is some sort of riddle.
System.__ComObject
So, turns out that the solution for converting that into usable data was going to require way more effort than I was willing to give it, so I figured I may as well use my time for something more useful, like starting to learn C#.
The result of 2 days’ worth of effort finally paid off, and I’m able to pull a readable, usable value for an account’s lockout status. I’m also able to set a password and unlock that account pretty easily. Here’s some info on how to do it.
Handling SQL Data – Leveraging SQL Stored Procedures in Workflow
For every project I develop, there’s a high probability that a custom-made SQL database is going to be useful to the process I’m working on. I’m going to detail my process here, which should be a good follow-up to my SQL primer here.
Note that while this is not intended to be a tutorial on how to use SQL, I will be covering the SQL basics needed to complete this demo. Send me a note if you have any issues with any of the steps.
For this project, we’re going to build an integration library with two components. One component is going to be a simple data query component that we’ll use to validate a proposed data write before committing; the second will be the Stored Procedure caller that will handle updates, inserts, and deletes. The same component can also be used for other, more specific tasks, such as order changes and re-sorting. Let’s start with the second component – the Stored Procedure caller.
Workflow Short – Adjust Default Debugger Browser
I haven’t personally been a fan of Internet Explorer for a long, long time. Because of this, when the Workflow debugger insisted on opening forms in IE, I had to insist in return that it do otherwise.
These instructions will help you swap out IE for Chrome, but you can tailor these instructions to use whatever supported browser you’d like.