Wednesday, July 9, 2014

Drop a newsfeed into your TimeControl Dashboard

The TimeControl dashboard is a remarkable thing.  Aside from pie charts, announcements, employee time banks and more, you can also drop a link to almost any kind of web-enabled file.  We’ve talked about using this feature in the past to show an externally hosted dashboard but have you ever thought of putting your newsfeed into TimeControl?  It’s crazily easy to do.
Dashboard with Twitterfeed
Here for example is a TimeControl dashboard with the TimeControl Twitterfeed right in it.  Most social media sites allow a feed whether it’s an RSS feed or something designed like Twitter has here, as an embedded widget.  We used the Custom URL type in the right-hand window when defining the dashboard and then we pointed to a file which had the needed widget from Twitter.
For this example we created a file which we like so much, we’re going to put it in as a default for Administrators in future deployments.
This file embeds code that Twitter gives us for just this type of exercise.  The file is open to anyone who might want to use it for their own TimeControl.  Our Twitter feed is the same one that appears on our www.timecontrol.com site.
The file is located at: www.timecontrol.com/docs/TimeControlTwitterFeed.html in case you want to use it for your own Administrator Dashboards.

Friday, June 6, 2014

TimeControl Workflow is a part of version 6.7


TimeControl Workflow may be one of the most powerful features we’ve ever released.
The recently launched TimeControl 6.7 introduced TimeControl Workflow.  Workflow uses the timesheet release as a trigger event and then allows you to select froworkflow_screen_300x222m a number of possible actions based on data conditions in the timesheet or elsewhere in TimeControl.
Have you ever wanted to:
  • automatically have TimeControl send an email notification to someone when certain tasks are completed or;
  • automatically skip the manual supervisor approval if there is nothing of interest such as overtime on the timesheet or;
  • trigger some extra time in a time-off bank if the timesheet shows a specific data condition or;
  • have TimeControl automatically approve, post and line-item approve the entire timesheet if it meets all your testing criteria?
Then TimeControl Workflow is just what the doctor ordered!
Workflow is included with all editions of TimeControl including TimeControl for On-premise installation, TimeControl Industrial and TimeControl Online. 
TimeControl Workflow allows specific actions to be taken with an unlimited number of data conditions that could be tested and is activated immediately after all Validation Rules have been tested.
The TimeControl.com website has a special section now dedicated to the TimeControl Workflow functionality.  You can see a webcast of TimeControl Workflow in action and find out more about how TimeControl Workflow can help you solve your business challenges.
Go to TimeControl Workflow now to find out more about this powerful new functionality or to see the OnDemand webcast. 

Wednesday, April 30, 2014

TimeControl 6.7 released

We’re extremely excited about the release of TimeControl 6.7.  We had always known that this last wave of removing ActiveX components from TimeControl would be the most challenging.  There were so many things under the surface that had to align in the final turn over to having all the code be multi-device and multi-browser.  Along the way we also took advantage of some R&D we had done over the last year as well as numerous customer enhancement requests. 
We are very proud of the final result.
TimeControl 6.7 is a significant upgrade from TimeControl 6.6 with many new and enhanced features.  Only TimeControl Industrial now has any ActiveX controls left in it and those are for the Crew Timesheet and Material entry screens.  (We’ll be addressing those later this year.) 
Here are a few of the more noticeable new and enhanced features you can now see in this version:
All New Workflow Engineclip_image001We’ve gone beyond Validation Rules and created an all-new workflow engine.  Now, based on conditions that TimeControl might find in a timesheet that is being released, you can have the system automatically email a supervisor, a project manager or someone you choose.  You can have the timesheet automatically post or move along the approval path in the manner you select.  You can even execute database commands at a Workflow event which makes this feature stunningly powerful.
ActiveX’s are no longer required in TimeControlThis is something we’ve worked towards for some time and we know that IT departments at will be delighted.  All remaining features which required an ActiveX installation in the standard edition of TimeControl or TimeControl Online have been replaced under the new multi-device architecture. 
New OnBoarding ImportOnBoarding We’ve written a brand new importing format for those who do lots of on-boarding of new staff which allows you to populate all the required tables for new employees in a single pass
Line Item ResourceLine Item Resource allows you to add a resource column to the timesheet and then have TimeControl use that Resource Code instead of the one associated to the Employee when transferring information to a project management tool.
All new server to server Project Management Link performanceWe’ve rewritten the server to server links between TimeControl and Microsoft Project Server and TimeControl and Oracle-Primavera’s P6 and have managed to make big improvements in performance.  The server-to-server links are now performing at between 18 and 20 times (That’s 1,800% - 2,000%) faster!  Transfers that used to take 60 minutes now take around 3. 
Improved Hard Dollar HD PCM LinkWe’ve made some huge improvements to the Hard Dollar HD PCM link.  The link is now much more configurable with support for multiple cost categories, allowing timesheets to be costed or uncosted when transferred, and more.
TimeControl Industrial Crew/Material combined entryWe’ve made an option in TimeControl Industrial 6.7 to enter both the crew timesheet and the non-labor entries for material consumption, equipment usage and production accomplished into a single entry on two tabs.  This will optionally allow crew entry staff to enter all the information in one pass and then release it all for approval at the same time.  We've also made it possible to enter production accomplished values on the same line.
Resources and RolesOur links to project management systems has always been one of our strongest suits.  Now when linking to Oracle-Primavera’s P6 you can create assignments by Resource or by Role. 
Legacy TabIf you’re an existing TimeControl client and you’ve read this far and are now hyperventilating over what you might have lost in this version, don’t worry.  We haven’t taken anything away that you might have depended on in older versions.  The old Formula1 report writer, old ActiveX Project Link for products like MS Project 2003 and earlier, Open Plan (via OLE) or Primavera P3 via RA are all there along with the old Drill Down Analyzer in a new tab called “Legacy”. 
Plus, we've made improvements and updates in all these modules:Filters, Missing Timesheet Notification, Manage Scheduled Jobs, Timesheet Release Audit Report, Posting, Scheduler, Manage External Tables, Interface Definition Table, Table Exports, Enhanced Table navigation, Import / Export Packages, Enhanced Employee Banks, Menu housekeeping, MS Project Interop link, Timesheet Tabs are now part of security, Charge Table Notes, Report updates, Missing Timesheet View, Timesheet Image reports and Posted/Unposted Reports. 
You can see screens and more detail on the new version at www.timecontrol.com/timesheet/latest or just contact HMS at info@hms.ca and we’ll be happy to talk to you about it.
Existing users with a current support agreement can download the new version right now at www.timecontrol.com/support/updates.  If you need help with updating your support agreement, contact us at support@hms.ca.

Tuesday, April 29, 2014

.Net 4 and higher required as of version 6.7

With TimeControl 6.7 now released, it's a good moment to review some hardware requirements.  TimeControl and TimeControl Industrial 6.7 will require Microsoft .Net version 4 or higher.  Version 3.5 was sufficient for TimeControl 6.6 but that will not be enough to have TimeControl 6.7 function properly. 
Microsoft .Net 4 at a minimum must be installed on the TimeControl server and the application pool for the TimeControl application website must be using the .Net 4 framework.
For more information on Microsoft .Net, go to www.microsoft.com/net.  For questions about your TimeControl 6.7 installation, speak to HMS Support at support@hms.ca.

Sunday, April 13, 2014

The Heartbleed bug

Many of you may have read or heard about the Heartbeed bug this week.  The Heartbeet bug is more of a possible exploit in the open-source code of OpenSSL, a very popular encryption method used in online services based on a Linux architecture.  The condition was introduced over 2 years ago by one of the many volunteers who contribute to open source projects like OpenSSL and despite being reviewed numerous times, the exploit went undetected until a few days ago.  The oversight in the code was forgetting to limit how large a response would be allowed to a module called a “Heartbeat” (hence the name Heartbleed).  Countless websites have used OpenSSL in both the public and private sector. 
Some clients have contacted HMS asking if TimeControl Online might be affected.  The answer is that it is not affected by the Heartbleed bug.  TimeControl Online does not use OpenSSL.

Tuesday, March 25, 2014

It's TimeControl's 20th Anniversary!

Yes, TimeControl is no longer a teenager!  It’s HMS Software’s 30th Anniversary (We’re now 30-something) and TimeControl is now 20.
image HMS Software was founded in 1984 and we’ll be celebrating all year with contests, give-aways and images from our ancient past and just to get things started, here’s something nostalgic.  Yes, this is a video of TimeControl 1.0.1, the first version of TimeControl released to market in January of 1994.
Click the image on the right to see a webcast of the old DOS version working (We'll spare you the description of what it takes to resurrect a DOS version in today's modern PC age so we could capture the webcast!)
If you'd like the see the more of our most recent version, stop by www.timecontrol.com.
Enjoy!

Wednesday, March 12, 2014

Managing multiple instances of TimeControl

HMS has long supported the notion of having both a production and a staging installation of TimeControl and do not charge additional licensing costs for such use of the system. It is common, for example, to have a staging instance to use for testing upcoming versions or to use for training or internal development of reports, filters and validation rules prior to making these enhancements available to production users. A number of clients have asked what the steps are to support promoting from one instance to another. Once a version or a feature has been tested in the staging environment, how do we then make this available in the new environment? We’ve outlined some standard steps in managing multiple instances in this post.

How to create a second instance of TimeControl

Create a 2nd instance in a virtual environment

Case 1:
TimeControl is installed in a Virtual Machine environment and the database server and database are on the same Virtual Machine. Steps:
  1. Copy the Virtual Machine
  2. Change the IP to be unique
  3. Change the name of the Database Server to be unique
  4. Modify TimeControl.ini to point to the new IP
  5. Modify TimeControl.ini to point to the new database server
  6. Modify TimeControlWeb.ini to change the server’s IP address
  7. Modify host-headers in IIS to be unique and other DNS information as required
  8. See the “Cautions” section below
Case 2:
TimeControl is installed in a Virtual Machine environment and the database server and database are on different Virtual Machines. Steps:
  1. Copy / Backup both the TCSecure and TIMECTRL databases/schemas
  2. Create unique database names for each of these two databases (e.g. TCSECURE_Staging and TIMECTRL_Staging) and copy/restore the database files/schemas
  3. Copy the Virtual Machine
  4. Change the IP to be unique
  5. Modify TimeControl.ini to point to the new IP
  6. Modify TimeControl.ini to point to the new database names
  7. Modify TimeControlWeb.ini to change the server’s IP address
  8. Modify host-headers in IIS to be unique and other DNS information as required

Create a 2nd instance in a separate physical environment

If you are not using a Virtual Machine environment and instead have physical servers and want to set up a 2nd instance of TimeControl on a separate server, this will be the procedure. We will assume the database is also installed on a separate server but even if it is on the original TimeControl server, there is no obvious requirement to install a completely separate instance of your database software. Steps:
  1. Copy / Backup both the TCSecure and TIMECTRL databases/schemas
  2. Create unique database names for each of these two databases (e.g. TCSECURE_Staging and TIMECTRL_Staging) and copy/restore the database files/schemas
  3. Install the identical version of TimeControl on the new server
  4. Use the TimeControl Database Configurator to attach the new instance of TimeControl to the new databases.

Create a 2nd instance in the same physical or virtual environment

Some organizations wish to install a 2nd instance of TimeControl on the identical physical server. (It is quite unusual to install multiple instances on a virtual server as it is so easily replicated). Installing a 2nd instance of TimeControl on the same physical server is possible however the standard installation modules and upgrade modules will only work on the default installation. In order to update multiple instances on the same physical server, a series of manual steps must be performed. HMS Technical Services can guide you through this process if you require it.  

Cautions

Once you have copied your 2nd instance, you may wish to check for scheduled and automated functions that were activated in your production instance that you may wish to disable in your 2nd instance. These may include the following:
  1. Project Management Links
    If there are links to a project management system, then the scheduled links you’ve created will activate on schedule if you don’t make any changes. The Connection Pool information in the Interface Definition will be pointing to your production project management tool. If there is a scheduled job pending then data will move in and/or out of the project tool as scheduled. If there is pending posted data for the pm system or if you enter any data in the 2nd instance, it will be sent to your project pm system. We recommend immediately disabling scheduled jobs and repointing the interface definition to a 2nd project management system instance.
    Caution: If you do not repoint these project links to a non-production instance of your project management tool or disable the links, then you may send duplicate timesheet entries to your project management system!
  2. Email notifications
    If you have scheduled automated email notifications of missing timesheets, the 2nd instance will start happily sending them out along with the production instance. We recommend disabling any scheduled jobs.
    Caution: Not disabling email notifications can cause confusion as users may receive email notices from the 2nd instance complaining of a missing timesheet which has already been completed by the user in the main instance.
  3. Triggers
    If you have made triggers within the database to move data in and/or out of TimeControl to link to finance, payroll, billing etc., these triggers will continue to function in the 2nd instance unless you disable them.
    Caution: Not disabling triggers which were designed to move data to finance for billing or payroll may result in data being sent twice!

How do we promote features between instances?

Once you have a 2nd instance implemented and you have checked the Caution section and taken the appropriate actions, you are able to start thinking of how to use the 2nd instance for testing and staging. There are some elements of TimeControl which were designed to be easily moved between instances. Other elements are more difficult.

What can be promoted easily

  1. Filters
  2. Validation Rules
  3. Language Definitions
  4. Reports
For all 4 of these categories, you can create a Export Package from the Links menu. Exporting a Validation Rule will also export any filters which are reference within it. Exporting a filter will also automatically include any “filters within filters” which are referenced. In the production instance, you can then Import a Package from the Links menu and this item will be successfully promoted and instantly available.

Categories of data that are more difficult to promote

  1. User Defined Fields
  2. Pop-up values for user defined fields
  3. Import/Export definitions
  4. Personal settings
For these categories, we assumed that this information would be updated directly in the production system. User Defined Fields are typically only created during the deployment. The Import/Export definitions carry an entire audit aspect of them which is managed behind the scenes and Personal settings are, well, personal. The best practice for almost all cases involving these 4 categories is to create them manually in the production instance.

Other methods of moving data from staging to production

There are several other methods of moving data from the 2nd instance back into production but each requires some skill.
  1. Export tables from staging and Import into production
    TimeControl’s standard export and import modules allow all kinds of data to be moved. Export from one system and Import to the 2nd system definitions can be created and saved and then the actual creation of the transaction file and its import is very quick.
  2. Triggers and custom code
    For those who have more intimate and long standing links required, creating triggers at the database level can be accomplished. This has the benefit of being hidden from the user and the disadvantage of being hidden from the user. When triggers move data automatically in the background, a best practice is to have solid process and procedure documentation that lets all relevant parties know what is happening to the data and why.

Maintaining a “Cold Server” for disaster recovery

Some organizations have a requirement to create a “Cold Server” and keep it in stand-by for disaster recovery. This is relatively simple to do. First, follow the instructions on creating a 2nd instance to ensure it has been updated correctly. You will need to update the 2nd instance each time you do a TimeControl Upgrade of the production instance. Once the instance is established, you can hibernate the Virtual Machine or turn off the physical server (if it is dedicated) or simply turn off the TimeControl ATS, TimeControl TTS and TimeControl Scheduler Services along with the TimeControl Website (In IIS) Second, ensure that regular backups of your production instance are occurring. Should a disaster occur, activating the Cold Server is very simply:
  1. Turn on the Virtual Machine, turn on the Physical Server or Start the TimeControl ATS, TimeControl TTS and TimeControl Scheduler as required.
  2. Restore the production database backup to the 2nd instance

Ask for help

HMS Services often assist our TimeControl clients with establishing and updating multiple instances.  Contact customer server at info@hms.ca to inquire about our services.