July 2011
Current page:

Pharmaceuticals Manufacturing Deviation Report using Ultimate Forms

By: Vladi Gubler | Comments [3] | Category: Sample Applications | 7/18/2011


UPDATE: you can now download a self-installing site template here. The package will install trial versions of all the required Infowise products automatically.


Our Ultimate Forms bundle allows you to build almost any SharePoint-based business application using nothing but your browser.

Today we are showing our regulated process for the pharmaceuticals industry - Manufacturing Deviation Report. The report is a business process where any irregularity detected in the drug manufacturing process must be documented, investigated and acted upon using a set of corrective and preventing actions (CAPA).

Here you can see the report in action:

As you can see, it's quite a complex process, spanning multiple stages and involving many users.

But you will be surprised how easy it is to implement a process like this using our bundle.


So let's get started creating this process. You need to download and install the Ultimate Forms bundle from our website. You can also install our Document Link Field for the attached documents functionality, but this is up to you.

First of all, we need a blank site to host our system.

Now let's create several auxiliary lists, before we move on to our main list, the Deviation report itself.

We need the following lists:

  1. Shared Documents - a document library to hold our attachments, no changes to the structure are required.
  2. Batch Statuses - custom list, serving as a data source for the Batch Status lookup column. Includes value such as On Hold, Destroyed, In Process and so on. The actual values depend on your requirements
  3. Departments - custom list, serving as a data source for the Department lookup column. In our example holds the names of different manufacturing departments
  4. Professional Opinions - a Tasks list to hold the request for porfessional opinions. Once created:
    1. Allow content type management.
    2. Add existing content type called Associated Task under Infowise group.
    3. Remove the built-in Task content type.
  5. CAPA Tasks - a Tasks list to manage the corrective and preventive actions. Do the following:
    1. Create a Tasks list called CAPA Tasks
    2. Go to the Content Types gallery of your site and create two new content types: Corrective Action and Preventive Action. Base both of them on the Associated Task content type. Add Approve Closure yes/no column and a signature column.
    3. Add the newly created content types to the CAPA Tasks list, you need to enable content type management in the list settings first.
    4. Remove the built-in Task content type

We can now move on to creating the main list.

  1. Create a custom list called Deviation Reports.
  2. Add columns for each of the stages
  3. Columns
  4. Most of the columns are just regular SharePoint columns, but pay attention to the following:
    1. Batch Details - imports information from a manufacturing system. Can either connect directly to any database or to a web service.
    2. Additional Files - for most stages we allow uploading and linking documents using Document Link Field
    3. Signature columns - using Infowise Electronic Signature field you an sign other columns in the list. In our case, each tab's columns are signed by the signature column on that tab.
    4. Professional Opinions - Associated Tasks field linking to the Professional Opinions list.
    5. Corrective Actions and Preventing Actions - Associated Tasks fields linking to the CAPA Tasks list. Make sure to assign the correct content type for each column.

Once the list is created, we can create the tabs to represent the stages of the process.

  1. Go to List Settings
  2. Click on Tabs and Tab Permissions
  3. Create a tab for Preliminary Report stage
  4. Select the columns to be appear on the tab
  5. Using tab permission, set Write permission to New form and Read permission to Edit and View forms.
  6. Tab 1
  7. Create tab for Production Manager
  8. Define settings as shown below. You can add a user or group to the Write permission to make sure only a specific user can edit this tab. For simplicity sake, we do not use user-based permissions in this demo.
  9. Tab 2
  10. Do the same for the Head Pharmacist
  11. Tab 3
  12. And the Quality Assurance Manager
  13. Tab 4
  14. The same goes for the last tab. Notice how we prevent closing the report when there are still open actions
  15. Tab 5

We now have set the tabs to appear according to our process. Using Advanced Column Permissions, let's set Read permissions to Status, Open Corrective Actions and Open Preventing Actions columns to prevent users from editing them directly.

Using Item ID settings, we can generate the report ID automatically using a template:

Item ID

We are almost done, we just need to plug in a couple of simple SharePoint Designer workflows to make the whole process run.

First, let's add add a workflow to the CAPA Tasks list that will close tasks and update the deviation report when there are no longer any open tasks left either for the Corrective Actions or Preventive Actions field. Notice the new actions and conditions added by the Associated Tasks field. They are capable of checking all items associated with the same parent item.

Task WF

Set the workflow to run when an item is updated.

Now let's create our main workflow that will change the report status depending on user input.

We will simply change the status to the next stage when we detect a signature field being filled.

Report WF

Set the workflow to run when an item is created.

This is it, you can now test the process to make sure it runs successfully. Feel free to use this demo as a basis for your own processes and we will appreciate your feedback!


Put your lists to work with Smart Action Pro

By: Vladi Gubler | Comments [5] | Category: Products | 7/17/2011


When we enter information into our SharePoint sites, we often have a requirement that certain actions have to take place when this information is entered. We might need to set specific permissions on a document based on its properties. We might need to update our ERP application or create a new site for a project. SharePoint contains a workflow infrastructure and we can also add custom event receivers to our lists, but in both cases we are talking about costly development, with many workhours (and money) spent on requirement analysis, coding and testing, not to mention deployment in multiple environments. And all we wanted to do was a simple one-step task!

Thankfully, you can now leverage the power of Infowise Smart Action Pro to your advantage. Using one of our 9(!) possible action types, you can perform a multitude of actions within SharePoint sites and in any external application. And most importantly - there is no coding involved, just some easy settings from within the familiar List Settings page.

Let me show you an example to demonstrate the power, versatility and the ease of use of Smart Action Pro. In our system, we enter a new project name to the list of projects. The same second the following actions take place automatically:

  1. Task is created for a reviewer with due date in 30 days.
  2. Specific permissions are set for that task.
  3. The new project is registered in our LOB (line-of-business) application using a stored procedure call (or you can use web services as well).
  4. A new site from a preset template is created for the project.
  5. A task is created within the new site.
  6. The projects list entry is updated with the link to the new site.
  7. You receive an email saying that your tasks have completed successfully.

Let's watch a quick video to see it with our own eyes:


Now let's see how it's done.

  1. First, we need to create a Project Center site, just create a Blank site.
  2. Create a list of Projects, based on a Custom list template.
  3. Create a Review Tasks list based on Tasks list template. Create a lookup column to the list of Projects called Project.
  4. Add Link column to hold links to our project sites using Hyperlink field type.

Project List

  1. Optionally create a site template for the project site or use the regular team site
  2. Open Projects list, go to List Settings.
  3. Click Actions settings.
  4. Now we need to create an Actions column. This column holds our action history and is also used to display actions to users. You must have at least one action column in your list before you can create acitons. You can also specify the e-mail address of the administrator, so he or she are notified of errors while running actions.

Action Column

We can now start creating actions.

  1. First, let's create an action for creating a review task in our Tasks list.
  2. Open the Add/Update Action section.
  3. Select Create List Item action type.
  4. Enter a user-friendly name, such as Create review task.
  5. Enter a description, description are intended to give some extra info to your users regarding the task about to be performed.
  6. You do not need to enter the Advanced Settings tab now, but you can use it to set some advanced properties of tasks, such as making them hidden from users, allowing multiple execution or allowing tasks to run with high privileges.
  7. Select New and deselect Edit events, so that our task only runs when the project is created, not when it's updated.

General Settings

  1. Enter the Actions Settings tab. This tab looks differently depending on the selected action type. In our case, we need to choose the site where our list is (Current Site in our case), select the list where the review task is created (Review Tasks list) and enter the column value for the new task.As this action will run in all cases, there is no need to specify conditions, but you could use a set of conditions to make actions run in certains cases only.
    1. Title = Review for [Title] - value in square brackets indicate column values of the current list, in this case the name of the new project. You can also use the value picker to select the column values and functions from a list instead of typing them in manually
    2. Project = [ID] - project ID for the lookup column
    3. Due Date = [Today] + 30 - creates a due date for the task in a month from the date project was created
    4. Assigned to = email address of the reviewer.
  2. Save the new action.

Action 1

Now you can create an action to give specific permissions to the review task

  1. Select Manage Permissions action type.
  2. Enter user-friendly name and description.
  3. In Action Settings, choose to apply permissions to Item.
  4. Select current site and Review Tasks list.
  5. Under Item selection conditions, enter Project=[Title], so that only the review tasks related to the current project (which is actually only the task we create in the previous action) is selected.
  6. Under Action Type select Add Users.
  7. Enter a user to give specific permissions to.
  8. Select a permission level.
  9. Save the action.

Action 2

Let's add an action for registering the new project in an SQL database:

  1. Select Run DB strored procedure action type.
  2. Enter name and description.
  3. In Action Settings select MS SQL provider type. You can use any other provider type as well, such as Oracle.
  4. Enter a connection string for your database and click Connect to populate the list of stored procedures.
  5. Select a stored procedure from the list.
  6. Specify value for the procedure parameters using current item's column values, text and functions. You can use the value picker for this values as well.
  7. Save the action.

Action 3

Now we create a site for the project:

  1. Select Create site action type.
  2. Enter name and description, switch to Action Settings tab.
  3. Enter [Title] in the site Title box to create a site named after the project.
  4. Enter [ID] in the URL field to ensure unique site URL.
  5. Select a site template from the list.
  6. Save the action.

Action 4

A new item is added to the Tasks list of the new site by the following action:

  1. Select Create list item action type.
  2. Enter name and description, switch to Action Settings tab.
  3. Because we are adding an item to a site that does not exist yet, we need to use an existing site for specifying values and condition. Then we enter a Run-time value for both the site URL and the list name, this value will be used when the task is actually performed.
  4. Select any existing site created from the same template as our Project site
  5. Select the Tasks list
  6. Enter values for Title, Due Date, Start Date and Description columns using text and column values.
  7. Enter server-relative (or absolute) URL for the run-time value of the site URL, remember to use the [ID] token we used in the previous action.
  8. Enter Tasks as a run-time value for list name. You must always enter a run-time value for the list name if you entered one for the site URL.
  9. Save the action.

Action 5

Let's update our current item with a link to the new project site:

  1. Select Update list item action type.
  2. Enter name and description, switch to Action Settings tab.
  3. Set Current Site and Current List.
  4. In Value to set, enter Link = URL to the new site, including the [ID] token.
  5. In Item selection settings, enter ID=[ID], this will select the current item.
  6. Save the action.

Action 6

Let's create an action to inform the project creator of successful execution of all tasks:

  1. Select Send e-mail action type.
  2. Enter name and description, switch to Action Settings tab.
  3. Select Created by in To field.
  4. Enter Subject and Body. You can use column values and functions.
  5. Save the action.

Action 7


This is it. We now have all the actions in place. Whenever we create a new project name, we will have the whole working environment set up automatically for us! And no coding, as promised!


Use SharePoint on the road with Smart List Mobile

By: Vladi Gubler | Comments [1] | Category: Products | 7/17/2011


More and more organizations use SharePoint as a platform for internal systems. You see people building whole CRM, issue tracking and lead managements system using SharePoint lists and document libraries. At a fraction of the cost of a commercial application you are now able to build a fully customizable system, tailor-made for your needs.

The problems start when you want your mobile users to get access to that system. Although both SharePoint 2007 and 2010 have mobile support (and a much better one in 2010), it is still too rudimentary to be truely useful. In an effort to create a universally accessible experience, Microsoft created a simplistic mobile site, not utilizing the full potential of today's mobile devices, such as iPhones or Droids.

Smart List Mobile allows you to create an advanced user experience, but still preserve a simple user interface more suitable for mobile devices. By extending the capabilities of Smart List Pro, you can now create special mobile tabs, specifically made for the different kinds of mobile users you might have. So your field technicians and your managers get access to different sets of data and edit different columns of the same lists.

In our sample Support Center application, we will create two lists. One, based on a Contacts list, will hold the customer information, and the other, based on a Tasks list, will manage our support calls. Of course, you can create a completely different set of lists, based on your requirements.

Our homepage could look something like this:

Web homapage

Now, we will add some tabs to the support call New/Edit forms to make the data entry easier and more structured:

Web Support Call

But when we enter the same pages using our mobile device, we see something completely different:

Mobile Old

As you can see, the users see all the lists and document libraries in the site, even those that are completely irrelevant to them. The same goes for the list columns, in an advanced system a list such as Support Calls, could contain dozens of columns, with only a couple of those relevant to the mobile users.

Now let's see what Smart List Mobile could do.

Mobile Homepage

First of all, it applies styling to the whole site. By adding icons, removing clutter and changing the color scheme, it makes the page so much more useful (you can also specify your own custom styling if you like). Additionally, the Actions functionality allows you to create quick links to useful pages, such as creating a new support call.

But the real magic lies in the mobile tabs. Just like regular Smart List Pro tabs, the mobile tabs (which as actually created and managed by exactly the same screen) contain columns and permissions. You can assign just a subset of the list columns to each mobile tab, just the columns your mobile users will need to view or update.

You can create as many mobile tabs as you want, but only one is shown to the user. It is selected using permissions, only the most suitable tab, the one suitable for the current form, current user and passing the most conditions is selected. So for instance, here we assigned a tab for our field technicians:

Mobile Technician Settings

And here is the tab for our managers:

Manager Tab Settings

You can see that both the list of visible column and the permission settings are different.

Because the technicians only need to close the support calls, this is the actual screen they see in their mobile devices.

Technician tab

The managers need to edit additional columns of the support call, so their screen is a bit different.

Manager Tab

As you can see, you can create user-specific mobile interfaces in seconds. By keeping it stream-lined and simple, you can be sure your users will need the absolute minimal time to update the lists and spend the majority of their time doing their actual job :)

Get a free 30-day trial of Smart List Mobile and Smart List Pro today!