Monday, December 05, 2016

Integrating with Azure Active Directory and Accessing SharePoint Office 365 Tasks

We are very pleased to announce IntelliGantt now supports Azure Active Directory authentication services, which makes it even easier for IntelliGantt to visualize and interact with your task lists across your sites in SharePoint. By using your current Azure Active Directory, IntelliGantt will require the same security your IT department expects when accessing tasks in the Office 365 cloud. For example, if your policy is set to two-factor authentication, then that is what IntelliGantt will require as well.

There is an initial setup required of IT that identifies IntelliGantt as a consumer of Office 365 data for you tenant. We've outlined the steps in detail here using the latest Microsoft portal user interface. Once this has been configured, you're done. All users defined in your Azure Active Directory will now be able to goto IntelliGantt, login with the normal credentials and easily rollup their tasks and view them in a rich, interactive task list and gantt chart.

IntelliGantt is licensed per tenant. This means all the users in your Azure Active Directory tenant can access IntelliGantt after it's been licensed. Furthermore, as you prune your Azure Active Directory membership, so too will you update the users who have access to IntelliGantt.

Finally, whenever Microsoft issues updates to Azure Active Directory, we will be right there with you to ensure safe, secure and stable access for all your Office 365 tasks.

Using Azure Active Directory authentication will also open up many more data endpoints for IntelliGantt that we are excited to bring to you in the coming months, such as Outlook, Planner and other integrations!

Monday, January 04, 2016

Finding SharePoint Tasks

IntelliGantt for SharePoint has powerful search tools you can use to quickly find important tasks based on any available column. You can search Text or Numeric (ie. Number, Currency, Percentage, Date and Duration) columns using operators appropriate for the column type. For example, you can search text with 'contains' or search numers with '>'.
You can also pass in the find parameters as a query string to the IntelliGantt url so that important searches can be created ad hoc and shared real time to people.
But let's start with the basics, first. The Find tool is located in the upper-right of IntelliGantt for SharePoint. By default 'All Columns' is selected with 'Contains' as the operator and an empty string for the value. This means every task is shown within IntelliGantt for SharePoint.

'All Columns' uses a text based approach to finding values, so you will see the text based operators available-- Contains, Starts With, Ends with and Matches.

When you type in more than two characters in the Find Value text box, IntelliGantt immediately performs the find action and updates the displayable list of tasks, both in the grid and the gantt. Because this is the 'All Columns' field, every column value for each task is searched to match this value. Numeric fields in this case are treated as strings for the matching.

Dates are supported as a Numeric type to search by. For example, if you select the 'Due Date' column, you can then use numeric operations like '<' or '>' to find dates in the past or the future, depending on your requirement. Pay special attention to the date format when searching with date columns. IntelliGantt lets you choose the date format via the configuration tool. The date you enter into the 'Find Value' must match the selected format.

Purely numeric fields like 'Cost' work as you'd expect, except as just number values. No need to prepend a Cost with the currency symbol. Note in the picture below that the 'Show in Gantt' selection is 'Cost', but we see a 'More Tasks' for task item 2. This is because 'More Tasks' is a Task List that lacks a Cost column name.

Finally, you can pass any column name, operator and value into IntelliGantt for SharePoint by specifying them on the url as a query string.

activeFindName -- defines the column name to use
activeFindOp -- defines the operator to use
activeFindValue -- defines the value to use
Text Operator query string options
  • contains -- text containing the find value
  • startswith -- text that starts with the find value
  • endswith -- text that ends with the find value
  • matches -- text that completely matches the find value

Numeric Operator query string options
  • gt -- greater than
  • gte -- greater than or equal
  • lt -- less than
  • lte -- less than or equal
  • eq -- equal

Some examples
  • ?activeFindName=AllColumns&activeFindOp=contains&activeFindValue=Hello
  • ?activeFindName=DueDate&activeFindOp=gt&activeFindValue=11/11/2015
  • ?activeFindName=Duration&activeFindOp=gt&activeFindValue=2d

Monday, November 30, 2015

Task Colors, Ordinals and Printing

We've updated IntelliGantt for SharePoint to enable color options for the task list, gantt chart and even task rows. Pick your exact color from a rich chooser control. The IntelliGantt framework colors can be changed on a per instance basis, which can be helpful in quickly identifying which group of sites and tasks in your selection. Individual task rows (and optionally  their children) can also be assigned a foreground and background color to bring highlighting to important tasks.

We've also made it very easy to change the position of a task by changing its ordinal value, just like you would any other number value. Simply select the Ordinal cell and type in the ordinal value of where you'd like to see it moved toward. IntelliGantt will quickly place it there (as long as its in the same task list) and even change parentage if needed. And remember, if you change your mind just click the 'Undo' button.

Finally, we enhance printing by giving you a WYSIWYG preview before sending the task list/gantt chart to the print service. This image hides the other screen elements so you can focus purely on the tasks at hand. Choose landscape layout and the print driver of your choice for beautiful charts (especially with your own colors!).

Visit our help page for the minimum installation or the full installation bits.

Choose a Color for Look and Feel
Change Task Ordinals
Color Your Tasks and Backgrounds

Wednesday, November 04, 2015

Running Projects with Office 365 SharePoint Inside and Out

First we focused on building a tremendously rich and ridiculously easy project management aggregation tool for SharePoint online (part of Office 365). We had a few languages to choose from but eventually decided on HTML5 + Javascript since it's the way of the web. As a result, installation can be done via drag-and-drop and context is immediately established by the SharePoint site. 

As we expected, Microsoft brought forth Windows 10 Universal Apps, which can also be built using HTML5 + Javascript. As a result, we are pleased to offer the first line of business Windows 10/Office 365 product which can run outside and inside Office 365. Or inside and outside Windows 10, depending on your point of view. 

The project manager can install IntelliGantt for Office 365 from the Windows 10 App Store, connect to any instance and begin selecting sites, tasks lists and combinations thereof in order to build and schedule projects. At any time the project manager can 'publish' what they are working on to SharePoint for all the world to see in exactly the same environment with exactly the same look and feel. Here is our video showing just how difficult it is-- you need to click a button. Once. That's it. 

SharePoint team members can then see the aggregated sites and projects the manager wished to highlight, the fields they deemed important with the column names they set and report on their progress-- all via their web browser on any platform using any device (that has a modern web browser. Any device still being created without a modern web browser?). 

Whether inside the Windows 10 IntelliGantt for Office 365 App or within the IntelliGantt for SharePoint page, all team members get a rich gantt chart with aggregation, costing, scheduling, filtering, document attaching, discussion enabling, timeline scaling, multiple undoing environment that runs the same on both platforms. 

Because we've invested in the Windows Universal App technology, we will continue to rapidly develop new features for both platforms-- desktop and SharePoint page-- and customers will benefit from rapid deployment of two products absolutely in sync with each other. In fact, IntelliGantt will run on any Windows 10/Office 365 device combination, and make it look easy so you can focus on what's important-- your projects.

Thursday, April 23, 2015

IntelliGantt Time Tracking in SharePoint

One of our top customer requests for IntelliGantt for SharePoint has been support for user timesheets that convert into 'actuals' within the IntelliGantt project management tool. We're happy to announce the arrival of IntelliTimesheet, which builds upon a basic SharePoint custom list for recording values and integrates with IntelliGantt for converting these values into actuals. We've designed IntelliTimesheet to be 100% mobile friendly as we believe the majority of users will 'clock in' using their mobile devices-- iOS, Android or Windows Mobile. All the project manager needs to do is send their colleagues a SharePoint link that they will use to start and stop time on their tasks. Here's how it works in detail.

First, you will want to download the latest 'online' package from our IntelliGantt server. This overview will work with Office 365 online, but it will work the same for 'in house' servers as well (just download our 'in house' package). Create your 'IntelliGantt' directory within your site's 'Site Assets' app, then copy the contents of to it. Our 'help page' has detailed instructions for both installations.

Clicking on 'IntelliGantt_online.aspx' will show you the latest and greatest IntelliGantt for SharePoint Single Page Application (SPA). At first glance it looks the same, however, if we scroll the table columns you will notice the introduction of 'Actual' fields.

NOTE: Though it can be done manually, we've created another download with SharePoint template files for both IntelliGantt and IntelliTimesheet. Just upload them to your template gallery and you can create new task and custom lists based on these templates. We will show you how IntelliTimesheet uses this template in a few paragraphs.

In you Site Assets/IntelliGantt directory, click on 'IntelliTimesheet_Online.aspx. This will launch out IntelliGantt time tracker.

Oh yes, one more setup step-- we need a custom list to store all the tracked time information.

Remember that download? Let's get that and upload the IntelliGantt_Timesheets.stp file to the template gallery. Then, simply add IntelliGantt Timesheet as another application.

Now that we have a repository for our time data, let's open up IntelliTimesheet_Online.aspx once more.

Just the basics with big buttons to make things as easy as possible on a mobile device. A user 'Clocks In' to start keeping track of time and 'Clocks Out' to stop. They can also take breaks or go for lunch, which keeps the current job 'active', but suspended until they finish their break or lunch. They can also view the history of all their timesheets or simply complete a task with a single button. Which tasks, you might ask? From a dropdown box populated with only their assigned tasks. The user chooses which of these they are working on. For example, let's choose our one assigned task and clock in.

When we clock in for the first time, we treat this as the 'Actual Start'. Therefore, back in IntelliGantt we will see the 'Actual Start' field now has a value for this task.

When we clock out, IntelliGantt will compute the amount of time between clock in and clock out and show this as Actual Work. We use days as the default, but hours, minutes or even seconds are supported too.

Notice that the 'Actual Cost' column still shows $0.00? This is because the assigned resource does not currently have an hourly rate. Let's provide one and see how things change. Click on the 'People' image in the upper left to open the tool. Select one or more users we wish to work with (note that this also acts as a filter within the task grid/gantt chart). John Milan has 0 as his hourly rate. Let's change this to 100.0.

Since we have an hourly rate we can now multiply that by the Actual Work involved to produce our first Actual Cost of $5.61. Naturally these cost values roll up.

Finally, because IntelliGantt also tracks duration, we can use the hourly rate to fill in our estimated Cost as well using the assigned task duration. As a result, we see how the actual cost of $5.61 compares to the estimated cost of $6000.0. Looks like there's more work to be done!

We are very excited to introduce this new feature to IntelliGantt project management with SharePoint. Thanks to your feedback we've got an excellent 2nd application targeted for mobile users to simply track their time on a task wherever they may be. We look forward to hearing your feedback on additional features to make your lives easier. Perhaps tracking geo coordinates as well? Hmm....

Monday, March 09, 2015

SharePoint Calendars, Tasks and Resource Working Time

SharePoint offers much more than just a task list. The Calendar list is also quite important in the day-to-day execution of a project as it can capture a persons extra-project activities and communicate to the group when folks might not be available. While a project manager can certainly flip back and forth between a task list and a calendar list, we think it is much easier to integrate the two in a single view so you can quickly see when a person is 'out of the office'.

Here's what this integration looks like with IntelliGantt for SharePoint. First, a person would list their 'out of office' events on the calendar. For example:

Note that there is a new field called 'Person' that associates a real person to this calendar event. This is how IntelliGantt knows what individual this non-work time block belongs to. We will go in to detail later in this post to illustrate how to set this up.

When IntelliGantt knows about a calendar list, it will pull the events from it, look for items that contain the 'Person' field and use that value to cross-reference against task assignments. This means that IntelliGantt will show a persons non-work time right in the Gantt chart like so:

It is interactive as well. As you assign tasks, when you select a person you will see their non-working appear on the timeline so as to help you decided if they are the right person for the job at hand.

Finally, if you hover over the non-working time you can see the event description (along with begin and end times) so you know why that person is not available.

So how do we set this up? It will require adding a new 'Person' column in the calendar and letting IntelliGantt know which calendar to talk to via the configuration.js file. Let's show the column to add to the calendar list first.

This is a simple column of type User that needs to be named 'Person'. IntelliGantt will look for events with this column and, if found, will assume the start and finish times define non-working times for the 'Person' value. 

Next you will need to let IntelliGantt know which Calendar list to use for this non-working time information. The calendar container this information does not need to be in the same site as your task lists. We've set things up so that a single calendar list can be used for any time of task lists. This will make it easy for you to have a 'calendar of reference' for everyone to see when people are unavailable. 

Here we have added the calendar information to our configuration file. This one happens to be in the same workspace (as a demonstration) so we use a relative url path. Just in case the image is not clear here is the JSON section you need to define.

calendar: {
        workingDays: [0, 1, 1, 1, 1, 1, 0],
        periods: [{ name: 'morning', start: 28800, finish: 43200 }, { name: 'afternoon', start: 46800, finish: 61200 }],
        site: {
            url: './',
            title: 'Calendar',
            begin: 'EventDate',
            end: 'EndDate',
            userColumn: 'Person'

With these two pieces in place, IntelliGantt will merge the task and calendar information into one helpful view.

Tuesday, February 17, 2015

Extra Costing with SharePoint Currency Columns

Earlier we showed you the basics of IntelliGantt for SharePoint costing with respect to assigned resources and their hourly rates. Now we would like to show you how IntelliGantt will recognize other currency columns in your task list and roll these values into your estimated Cost value.

When you add a Number Column to your SharePoint task list and format it with the Currency option, IntelliGantt will both rollup the column values and add it to your overall Cost column. 'Cost' is a reserved word in IntelliGantt and it represents all your estimated costs rolled together. Additional currency columns are treated as estimates also and, as a result, are added to the overall cost. In the near future you will have 'Actual' values that will roll up all your actual costs in the same manner (basically all currency columns starting with 'Actual'), but that is a future blog post.

For now, let's look at how the estimated cost rollup works. Starting with this example we see two tasks that have assignments and associated assignment costs with them. Additionally, there is an 'Extra Cost' field that is either blank or zero.

Remember you can see how IntelliGantt calculates an assigned cost by either looking at the particular assignment and seeing the Work, Hourly Rate and Level of Effort values:

Or by looking at the 'People' form and seeing the general setting for all a resources work, their standard hourly rate and effort.

This assigned cost goes right into the Cost column that IntelliGantt recognizes as the aggregated estimated cost field and rolls it up for you. Now let's add a value to the 'Extra Cost' column and see what happens. Let's first look at task 'Two', which has neither assignment nor extra cost values.

When we added $10 to the 'Extra Cost' field, two things happened. One, that extra cost was rolled up within the 'Extra Cost' column and two, it was also sent over to the 'Cost' column to be added to the sum estimated cost. We've highlighted all the affected calculations for you.

Similarly if we add $10 to the row right above which has an assignment, first we see the value added and rolled up in the Extra Cost column and also added to the estimated Cost column (and rolled up).

In this way IntelliGantt helps you keep track of both overall and individual costs. At a glance you can see what the entire, total estimated costs are but still see sub sections like assigned costs and 'extra costs' defined by you to help track your business processes.