You are on page 1of 166

Workforce Integration Manager™ 8.

0
Basic Interface Programming

Participant Workbook

Revision A
P/N 8604337-001
Version 8.0
The information in this document is subject to change without notice and should not be construed as a commitment by Kronos Incorporated. Kronos
Incorporated assumes no responsibility for any errors that may appear in this manual. This document is for the use of the intended recipient, and it
may not be reproduced in whole or in part or used for any other purpose than that for which it was provided without the prior written permission of
Kronos Incorporated. Copyright Kronos Incorporated or a related company, 2015. All rights reserved.

Altitude, Cambridge Clock, CardSaver, Datakeeper, Datakeeper Central, eForce, Gatekeeper, Gatekeeper Central, Imagekeeper, Jobkeeper
Central, Keep.Trac, Kronos, Kronos Touch ID, Kronos InTouch, the Kronos logo, Kronos Workforce Ready, My Genies, PeoplePlanner,
PeoplePlanner & Design, Schedule Manager & Design, ShopTrac, ShopTrac Pro, StarComm, StarPort, StarSaver, StarTimer,Timekeeper,
Timekeeper Central, TimeMaker, Visionware, Workforce Accruals, Workforce Central, Workforce Decisions, Workforce Express, Workforce Genie,
and Workforce TeleTime are registered trademarks of Kronos Incorporated or a related company. Altitude Dream, Altitude Pairing, Altitude PBS,
Comm.Mgr, CommLink, DKC/Datalink, FasTrack, HR and Payroll Answerforce, HyperFind, Improving the Performance of People and Business,
Kronos 4500, Kronos 4500 Touch ID, Kronos e-Central, Kronos KnowledgePass, KronosWorks, KVC On Demand, Labor Plus, Momentum,
Momentum Essentials, Momentum Online, Schedule Assistant, Smart Scheduler, Smart View, StartLabor, Start Quality, Start WIP, Starter Series,
Timekeeper Decisions, Timekeeper Web, VisionPlus, Winstar Elite, WIP Plus, Workforce Activities, Workforce Attendance, Workforce Collaboration,
Workforce Connect, Workforce Employee, Workforce HR, Workforce Leave, Workforce Manager, Workforce Mobile, Workforce MobileTime,
Workforce Payroll, Workforce Record Manager, Workforce Recruiter, Workforce Scheduler, Workforce Scheduler with Optimization, Workforce Smart
Scheduler, Workforce Tax Filing, Workforce Timekeeper, Workforce Analytics, Workforce Acquisition, Workforce View, Workforce Absence Manager,
Workforce Device Manager, Workforce Integration Manager, Workforce Forecast Manager, and Workforce Operations Planner, Workforce Task
Management, and Workforce TeleTime IP are trademarks of Kronos Incorporated or a related company.
IBM, eServer, and iSeries are trademarks of International Business Machines Corporation. StandardsPro® is a registered trademark of H.B.
Maynard and Company, Inc. Vortex and Vortex Mobile Scheduler Connect are trademarks of Vortex Connect. Citrix is a registered trademark of
Citrix. All other product and company names mentioned are for identification purposes only, and may be trademarks of their respective owners.
When using and applying the information generated by Kronos products, customers should ensure that they comply with the applicable requirements
of federal and state law, such as the Fair Labor Standards Act. Nothing in this Guide shall be construed as an assurance or guaranty that Kronos
products comply with any such laws.
These training materials are provided for general educational purposes and are not intended to convey legal, accounting, or regulatory compliance
advice. Such advice can only be obtained through your own attorney, certified public accountant or other qualified professional, with full knowledge
of your organization's particular operations, circumstances and policies. Readers are encouraged to consult with appropriate professional advisors
concerning their individual circumstances before making decisions affecting their business operations. Last updated March 18, 2015.
Kronos KnowledgePass™ subscription is designed to be your pre-training, post-training, and refresher skills destination. Kronos KnowledgePass
contains tutorials, learning snippets, job aids, and much more to support the training you receive from Kronos-certified instructors. Kronos
KnowledgePass education support materials stream right to your desktop and are all available 24/7.
To see if your organization subscribes to Kronos KnowledgePass, speak to the individual responsible for the Kronos solution at your organization. If
you are not a subscriber and you are interested in Kronos KnowledgePass, please give us a call at 888 293 5549.

Kronos KnowledgePass™ subscription is designed to be your pre-training, post-training,


and refresher skills destination. Kronos KnowledgePass contains tutorials, learning
snippets, job aids, and much more to support the training you receive from Kronos-certified
instructors. Kronos KnowledgePass education support materials stream right to your
desktop and are all available 24/7.
To find out if your organization subscribes to Kronos KnowledgePass, speak to the
individual responsible for the Kronos solution at your organization. If you are not a
subscriber and you are interested in Kronos KnowledgePass, please give us a call at
888 293 5549.

Published by Kronos Incorporated


297 Billerica Road, Chelmsford, Massachusetts 01824-4119
Phone: 978-250-9800, Fax: 978-367-5900
Kronos Incorporated Global Support: 1-800-394-HELP (1-800-394-4357)
For a complete list of the international subsidiaries, see the following Kronos Incorporated Web page:
http://www.kronos.com

Workforce Integration Manager v8


Basic Interface Programming
Document Revision History

Document Revision Product Version Release Date

A Workforce Integration Manager 8.0 July 2015


Table of Contents

Course introduction .......................................................................................................................................... ix

Module 1: Introduction
Lesson 1: What is Workforce Integration Manager ..................................................................................... 1-2
What is Workforce Integration Manager? ............................................................................................. 1-2
Technical and architectural overview.................................................................................................... 1-3
Lesson 2: Installing Workforce Integration Manager ................................................................................... 1-6
Installing the software ........................................................................................................................... 1-6
Summary .............................................................................................................................................. 1-7

Module 2: Performing Data Integration Tasks


Lesson 1: Working with Interfaces .............................................................................................................. 2-2
Running interfaces ................................................................................................................................ 2-2
Lesson 2: Other Administrative Tasks......................................................................................................... 2-6
System Configuration ........................................................................................................................... 2-6
Function Access Profiles ...................................................................................................................... 2-8
Creating GDAPs ................................................................................................................................... 2-8
Mapped folders ..................................................................................................................................... 2-8
Connections.......................................................................................................................................... 2-9
Record retention policies .................................................................................................................... 2-11
Summary ............................................................................................................................................ 2-12

Module 3: Creating Text File to Text File Interfaces


Lesson 1: Defining Links ............................................................................................................................. 3-2
Overview............................................................................................................................................... 3-2
Defining the source............................................................................................................................... 3-4
Defining output...................................................................................................................................... 3-5
Defining Records/Tables ...................................................................................................................... 3-6
Defining data elements ......................................................................................................................... 3-8
Testing links without deploying ........................................................................................................... 3-11
Expanding the link .............................................................................................................................. 3-12
Lesson 2: Creating Interfaces ................................................................................................................... 3-18
Creating and deploying interfaces ...................................................................................................... 3-18
Lesson 3: Extending your link ................................................................................................................... 3-20
Defining a static text action................................................................................................................. 3-20
Defining a lookup table action............................................................................................................. 3-20
Defining batch totals ........................................................................................................................... 3-24
Defining a record count action ............................................................................................................ 3-25
Defining a date action ......................................................................................................................... 3-25
Copying records and data elements ................................................................................................... 3-26
Summary ............................................................................................................................................ 3-28

Module 4: Using Variables, Calculations, and Qualifiers


Lesson 1: Using variables ........................................................................................................................... 4-2
Overview............................................................................................................................................... 4-2
Defining variables ................................................................................................................................. 4-2
Defining a prompt user action............................................................................................................... 4-5
Lesson 2: Using and building calculations .................................................................................................. 4-7
Overview............................................................................................................................................... 4-7
Building numeric calculations ............................................................................................................... 4-9
Building string calculations ................................................................................................................. 4-11
Building Boolean calculations ............................................................................................................. 4-11
Understanding time calculations ......................................................................................................... 4-13
Lesson 3: Understanding qualifiers ........................................................................................................... 4-15
Overview............................................................................................................................................. 4-15
Creating qualifiers............................................................................................................................... 4-16
Summary ............................................................................................................................................ 4-17

Module 5: Exporting Data from Workforce Timekeeper


Lesson 1: Defining a Workforce Timekeeper extract .................................................................................. 5-2
Source options...................................................................................................................................... 5-2
Understanding Workforce Timekeeper intervals .................................................................................. 5-3
Using Workforce Timekeeper actions................................................................................................... 5-4
Understanding Workforce Timekeeper messages ............................................................................... 5-6
Creating a pay code lookup table ......................................................................................................... 5-6
Configuring the Interface Results Summary (IRS) ............................................................................... 5-9
Lesson 2: Defining employee and accrual extracts................................................................................... 5-12
Employee extracts .............................................................................................................................. 5-12
Accruals extracts ................................................................................................................................ 5-13
Summary ............................................................................................................................................ 5-13

Module 6: Using Database Sources and Destinations


Lesson 1: Using SQL to extract data .......................................................................................................... 6-2
Defining a SQL query source ............................................................................................................... 6-2
Lesson 2: Defining database output............................................................................................................ 6-4
Defining the output ............................................................................................................................... 6-4
Lesson 3: Using special lookup tables ........................................................................................................ 6-6
Special lookup tables............................................................................................................................ 6-6
Summary .............................................................................................................................................. 6-9

Module 7: Creating a Pay Code Edit Import


Lesson 1: Overview..................................................................................................................................... 7-2
Understanding Imports ......................................................................................................................... 7-2
The import process............................................................................................................................... 7-3
Lesson 2: Creating the Import..................................................................................................................... 7-5
Defining the import ............................................................................................................................... 7-5
Creating the record............................................................................................................................... 7-6
Verifying the employee ......................................................................................................................... 7-9
Testing and troubleshooting ............................................................................................................... 7-11
Selecting a choice tag ........................................................................................................................ 7-11
Including other data ............................................................................................................................ 7-12
Running import reports ....................................................................................................................... 7-15
Summary ............................................................................................................................................ 7-16

Module 8: Creating a Personality Import


Lesson 1: Creating a Person Import ........................................................................................................... 8-2
Overview............................................................................................................................................... 8-2
Creating the record............................................................................................................................... 8-4
Importing a Workforce Timekeeper employee...................................................................................... 8-5
Importing a Workforce Employee ......................................................................................................... 8-6
Updating person information .............................................................................................................. 8-11
Inactivating and terminating employees ............................................................................................. 8-14
Summary ............................................................................................................................................ 8-16

Module 9: Other Sources and Outputs


Lesson 1: About other sources ................................................................................................................... 9-2
Workforce Activities Data ..................................................................................................................... 9-2
Using API Export .................................................................................................................................. 9-3
XML Document ..................................................................................................................................... 9-4
Lookup table ......................................................................................................................................... 9-4
SAP® ERP............................................................................................................................................ 9-4

vi © 2015 Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Lesson 2: Using other output types............................................................................................................. 9-6
Defining ADP output ............................................................................................................................. 9-6
Defining dual field ASCII output............................................................................................................ 9-6
Lookup table ......................................................................................................................................... 9-7
Defining a Workforce HR/Payroll import ............................................................................................... 9-7
Defining an XML Document output....................................................................................................... 9-8
Summary .............................................................................................................................................. 9-8

Module 10: Using Other Features


Lesson 1: Sorting output records .............................................................................................................. 10-2
Sorting output ..................................................................................................................................... 10-2
Lesson 2: Using batch processing ............................................................................................................ 10-4
Overview............................................................................................................................................. 10-4
Lesson 3: Another look at interfaces ....................................................................................................... 10-10
Interface overrides ............................................................................................................................ 10-10
Interface Level Variables .................................................................................................................. 10-11
Using commands as interface steps................................................................................................. 10-12
Deploying parts of an interface ......................................................................................................... 10-13
Lesson 4: Notification .............................................................................................................................. 10-15
Configuring notification ..................................................................................................................... 10-16
Lesson 5: Using command line options and creating shortcuts .............................................................. 10-17
Creating shortcuts............................................................................................................................. 10-17
Lesson 6: Running a configuration report ............................................................................................... 10-19
Configuration report .......................................................................................................................... 10-19
Lesson 7: Using the audit log .................................................................................................................. 10-20
Using the audit log ............................................................................................................................ 10-20
Lesson 8: Workforce Integration Manager and Locale Policies .............................................................. 10-22
Summary .......................................................................................................................................... 10-25
Course Summary ......................................................................................................................................... 10- 27

© 2015 Kronos Incorporated or a related company. All rights reserved. vii


Workforce Integration Manager
Basic Interface Programming
viii © 2015 Kronos Incorporated or a related company. All rights reserved.
Workforce Integration Manager
Basic Interface Programming
Course introduction

Course introduction
Welcome
Welcome to the Workforce Integration Manager Basic Interface Programming
course. Your instructor will take a few minutes for introductions:
 Name
 Organization and role
 Responsibilities on the Project Team
 Time line for your Workforce Integration Manager implementation
 Kronos Product knowledge

Course objectives
After completing this course, you should be able to:
 Execute interfaces in Workforce Central
 Create simple interfaces using text files and databases as sources and
outputs
 Create interfaces that extract data from Workforce Timekeeper
 Create interfaces for importing data to Workforce Central
 Set up and configure administrative tasks

© 2015, Kronos Incorporated or a related company. All rights reserved. ix


Workforce Integration Manager
Basic Interface Programming
Course introduction

Legend of icons used in course materials

Icon Name Description


Product demonstration Describes a product overview performed by
instructor.

Scenario challenge Provides data on scenario or case study used for


an exercise.

For your implementation References data applicable to the implementation


of Kronos products at a participant's organization.

Knowledge check Confirms that a concept, fact or procedure was


understood by the participant.

Concept in action References a movie file that explains a concept.

Brainstorming Provides data used in brainstorming or group


Group Discussion activity.

Reference References material located in another source


that may be useful for reference after class.

KnowledgePass References material in KnowledgePass, your


on-going learning environment.

Poll Identifies polling activity facilitated by the


instructor.

Whiteboard Identifies activity conducted via whiteboard.

Workbook Identifies activity completed in your course


workbook.

Survey Identifies survey activity facilitated by the


instructor.

Note Provides informational data.

Recommended practice Describes a recommended practice.

Tip Provides additional hints for using a feature or


performing a task.

Caution Alerts you to use caution when performing a


particular task.

Warning Identifies an action that has a high probability of


causing serious harm to data.

Integration Describes how a particular task or feature is


integrated with other Kronos products.

x © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 1: Introduction

Module 1
Introduction
Workforce Integration Manager is a complete tool set for creating interfaces for
Workforce Central and other applications. Your understanding of the basic
concepts of the tool set is critical to successfully using the various tools to create
an interface that completes the task at hand.

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Module objectives
After completing this section you should be able to:
 Describe the concept of an interface
 Explain the three installation options for Workforce Integration Manager
 Explain the two ways Workforce Integration Manager accesses a
database
 Launch Workforce Integration Manager from the start menu

© 2015, Kronos Incorporated or a related company. All rights reserved. 1-1


Workforce Integration Manager
Basic Interface Programming
Module 1: Introduction

Lesson 1: What is Workforce Integration Manager


It is important to have a basic understanding of what Workforce Integration
Manager is and how it works. This basic understanding makes it easier to
successfully use the tool kit that is Workforce Integration Manager.

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Lesson objectives
After completing this lesson, you should be able to:
 Describe the components of Workforce Integration Manager
 Describe what Workforce Integration Manager does

What is Workforce Integration Manager?


Workforce Integration Manager is:
 An easy-to-use, flexible data-integration tool that efficiently interfaces
Kronos product suites with other critical business applications.
 Converts source inputs, such as Workforce Central files, into the format
required by a destination application.

Interface Designer and runtime engine


Workforce Integration Manager consists of two parts:
 Interface Designer
 The runtime engine in Workforce Central

What is an interface?
An interface is a solution to a business problem that requires data transfer
between two systems:
 Extracts data from a source and manipulates it into an output format.
 Possibly involves a Kronos application such as Workforce Timekeeper, or
Workforce Activities, although other sources such as text files and SQL
queries are supported.
 Has a destination (the output) for the data which can be a text file,
database, or even another Kronos application.

1-2 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 1: Introduction

To successfully complete an interface, you need to understand at least four


important items:
 What your source data looks like
 What the output data needs to look like
 The mapping of data between the source and output
 What special situations call for data to be disqualified from the output

Technical and architectural overview


Workforce Integration Manager is designed to be tightly integrated with Workforce
Central.
 Completed interfaces and links are stored in the Workforce Central
database.
 The runtime engine functionality is part of the Workforce Central platform,
and interfaces are executed within the Java virtual machine (jboss).
 Links and interfaces are deployed from the Interface Designer to the
Workforce Central database.
 Workforce Integration Manager uses function access profiles and generic
data access profiles to provide security for executing interfaces.
 Database connection information and file system path information is
created, stored, and maintained within Workforce Central.

Architectural structure
The following diagram illustrates a simplified view of the architecture.

Source types
Workforce Integration Manager is intelligent in that it knows the description of the
data found in the typical Timekeeper Central and Workforce Timekeeper exports.
Text files and databases usually have documentation of the file layout available.

© 2015, Kronos Incorporated or a related company. All rights reserved. 1-3


Workforce Integration Manager
Basic Interface Programming
Module 1: Introduction

The format of the data can be any of the following:


 Lookup Table
 SAP ® ERP
 SQL Query
 Text File
 Workforce Activities Data Changed Data v7.0
 Workforce Activities Data v7.0
 Workforce Central API Export
 Workforce Timekeeper
 XML Document

Understand your source structure!


To ensure a successful interface, it is critically important that you understand the
structure and content of the source data, specifically:
 What data is where, i.e., labor levels?
 What data is needed for the interface?
 Does the data occupy the entire field?
 Do you only need part of the data?
 Does data need to be concatenated?
 Is the data located in any unusual or unexpected fields?

Output types
The Workforce Integration Manager tool provides several options for the format of
the output data. Some options include:
 ADP
 Database
 Dual Field – ASCII
 Lookup Table
 Text File
 Workforce Central Import
 Workforce HR/Payroll Import
 XML Document

Know the output requirements!


Just as it is important to understand the structure and content of the source, you
must have the same information about your output or destination.
 Quotes or no quotes
 Fixed length or delimited
 Delimiter
 Justification
 Date and time formats
 Fill requirements
 Numeric format and units
 Value restrictions
 Text encoding

Actions
The Workforce Integration Manager product can perform several types of
formatting and conversion processes, called Actions, on the source data:
 Transferring the data from the source to the output
 Parsing the source for substrings or subfields
 Entering static (constant or literal) text

1-4 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 1: Introduction

 Prompting the user for values that are used in the output or in calculations
 Validating user input against acceptable values
 Looking up values from the source and replacing them by examining a
table of replacement values
 Performing numeric and string calculations on source data elements
 Totaling numeric values for inclusion in footer records
 Counting output records
 Running SQL queries to return values
 Including dates and times

Defining a link
The general flow of defining an interface is:
1. Define the Source.
2. Define the Output.
3. Define the Records/Tables.

My notes on What is Workforce Integration Manager


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

© 2015, Kronos Incorporated or a related company. All rights reserved. 1-5


Workforce Integration Manager
Basic Interface Programming
Module 1: Introduction

Lesson 2: Installing Workforce Integration Manager


The two components that compose the Workforce Integration Manager are
installed separately:
 The runtime engine is part of the Workforce Central installation
 Interface Designer is installed separately

The installation wizards guide you through the process. Consult the Installation
Guide for details on installing the product.

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Lesson objectives
After completing this lesson you should be able to:
 Describe the installation options for Workforce Integration Manager and
Interface Designer.

Installing the software


Workforce Integration Manager
The details of the installation procedure are spelled out in the Workforce Central
installation guide. The following list of tasks is provided to give an overview and
check list for the actions that are required to install the software.
1. Stop Workforce Central, load the install CD, and run SETUP.
2. Select Workforce Integration Manager from the list of installable
applications.
3. Copy the license to the application server.
4. Restart the application server.
5. Launch Workforce Central and verify that Workforce Integration Manager
is installed and the license file is listed.

Interface Designer
The details of the installation procedure are spelled out in the installation guide.
The following list of tasks is provided to give an overview and check list for the
actions that are required to install the software.
1. Load the install CD and run SETUP.
2. Specify the location for the install.
3. Launch Interface Designer and start developing interfaces.

What is installed
The installation process places the Interface Designer primary program files and
subdirectories for documentation and SQL scripts in the
\Kronos\InterfaceDesigner directory.

1-6 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 1: Introduction

My notes on Installing Workforce Integration Manager


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Knowledge check
Answer the following questions:
What three pieces of information are essential to any interface?
________________________________________________________________
________________________________________________________________
________________________________________________________________
Name three of the possible sources for a Workforce Integration Manager
interface.
________________________________________________________________
________________________________________________________________
________________________________________________________________
Name four supported destinations for a Workforce Integration Manager interface.
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Summary
The key points of this section are summarized below.
 Workforce Integration Manager builds interfaces that manipulate source
data into a format that is acceptable to a destination application.
 Make sure that you clearly understand both the format and content
requirements of the destination.
 Workforce Integration Manager can accept several formats of source data.
 The Workforce Integration Manager system can perform several types of
data conversions, including lookups, calculations, user input validation, and
record counts.
 Interface Designer is installed separately from Workforce Integration
Manager.

© 2015, Kronos Incorporated or a related company. All rights reserved. 1-7


Workforce Integration Manager
Basic Interface Programming
Module 1: Introduction

1-8 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 2: Performing Data Integration Tasks

Module 2
Performing Data Integration Tasks
There are several tasks associated with data integration tasks in Workforce
Central. It is important to understand how to complete each of these tasks so that
the integration process proceeds smoothly.

Module objectives
After completing this section you should be able to:
 Launch the Workforce Integration Manager application
 Set the Working Directory
 Run an interface
 Load an interface
 Edit an interface

© 2015, Kronos Incorporated or a related company. All rights reserved. 2-1


Workforce Integration Manager
Basic Interface Programming
Module 2: Performing Data Integration Tasks

Lesson 1: Working with Interfaces


Interfaces prepare data for transfer from one application to another. Running the
interface is a completely separate task from programming it. Although not as
complex as working with Interface Designer, knowing how to run an interface is
essential to the process.

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Lesson objectives
After completing this lesson, you should be able to:
 Run an interface and access reports associated with the interface.

Running interfaces
The runtime engine executes interfaces that are already configured. Executing
interfaces is the most frequently performed data integration task.
General Access Data Profiles, GDAPs, control access to interfaces.

Execution process overview


One typical user is the person who only executes interfaces such as processing
payroll. This interaction with Workforce Integration Manager occurs completely
within the Workforce Central GUI.

2-2 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 2: Performing Data Integration Tasks

From Workforce Central, it is possible to perform the following tasks:


 Run an interface.
 View and print a summary of the last task performed.
 View and print the contents of the output file from the last interface that
was run.
 Configure overrides to the interface.
 Make edits to tables associated with the interface.

Running an interface
Execute interfaces from the Run Interfaces workspace. Access the workspace by
selecting Run Interfaces from the Data Integration tab menu.
When the interface is run, the runtime engine secures an available thread and
opens the interface and all the included files. Then the processing begins. The
engine reads the source and creates output files, summary reports,
disqualification reports, and error reports.

Note
Any employee running an interface must have a Workforce Manager
license.

To run an interface:
1. From the suite home page, select the Data Integration tab, and then click
Interfaces.
2. Select the interface you want to run.
3. Set the runtime options if required.
4. Click the Run button.
5. Click the OK button.

Results of interface runs are stored in the database and are available for viewing.
Previous run information is available on the Interface Monitoring workspace.
Click the Cancel button to cancel an interface that is running.
Use the interface Monitoring workspace to monitor the interface that is running.

Viewing the summary and reports


When the interface finishes, the system displays the summary report. This report
contains data about the success or failure of the interface and the links that
compose it. There are hyperlinks to the associated reports such as
disqualifications and errors. The final output, if it is text, may also be accessed
from the summary report.
The Interface Run Summary report indicates the application server name that
executed the interface. Interfaces run on the application server that the user is
logged on to.

Tip
If users run an interface but do not have hyperlinks available on their
reports, there is a problem with their FAP (View Output Files
Displayed on IRS is disallowed).

The Interface Results Summary


When Workforce Integration Manager runs the interface:
 It generates a summary of the process which is available within Workforce
Central

© 2015, Kronos Incorporated or a related company. All rights reserved. 2-3


Workforce Integration Manager
Basic Interface Programming
Module 2: Performing Data Integration Tasks

 Creates an error report if required (optional)


 Creates a disqualify file if required (optional)
 Sends notification on the success or failure of the interface run (optional)

The summary contains the following:


 The steps in the interface including the name of the link
 Where and when the interface was run
 Information about the source
 Information about the output
 Information about any batch files created
 Summary of the records processed including errors and exclusions
 Pay Code totals for Workforce Timekeeper sources

The output file


To view the output, if it is a text file, click the link in the Interface Run Summary
report.
Workforce Integration Manager usually overwrites the output file if it exists.
However, there is an option to rename the existing output file before it is
overwritten.

Viewing results from earlier runs


You can view Workforce Integration Manager results from previous interface runs
if the FAP is set to allow the behavior. From the Data Integration tab, select
Results. Click the link in the Status column for the result.

JBoss rights for local machines


When WFC is installed, a JBoss account is created on the local system. JBoss is
the user that executes all WFC activities and interacts with the file system on the
application server. JBoss is also the user that executes events from Event
Manager and the user that executes interfaces (as the Workforce Integration
Manager engine is part of the JVM).
The JBoss account challenge is that it has rights only on the local system (i.e. the
application server). While Workforce Integration Manager now stores .kni and .knx
files in the database that JBoss can access with no problem, the source and
output files associated with interfaces are very likely located elsewhere on the
network. So, the JBoss account needs to be given broader access than local
system, to be able to read/write to all the locations on the network where the
Workforce Integration Manager source and output files exist. This is a network
administration issue that requires IT involvement.
If you are writing the output to a shared folder on the network, the JBoss service
login has to be defined with a valid user name and password.

Setting runtime options


Runtime options let you override parameters originally specified in the links that
compose the interface. These options allow you override settings such as:
 Source file name
 Output file name
 Pay period
 Execution options

The items that can be overridden depend on the source and output for the link. To
set the runtime options, select the interface, then select Set Runtime Options.

2-4 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 2: Performing Data Integration Tasks

Recommended practice
Although it is possible to set overrides for an interface, it is generally
not a good idea. Edits should only be performed by users who have a
through understanding of how the interface functions and what effect
any changes may have.

Scheduling an interface
Interfaces can be scheduled to run using the Event Manager. Select the interface
you want to schedule, set any runtime options, and click the Schedule button. In
Event Manager, specify the schedule and the time frame.
The interface runs on the application server where it was originally scheduled. If
you need to direct an interface to a specific application server, use the API logon
to specify the server.

Editing lookup tables


Lookup tables can be edited within Interface Designer before they are deployed.
After they are deployed, they can be edited within Workforce Central.
Rows can be moved by using the Cut and Paste Above, or Below, buttons. Rows
can be added by using Insert Above or Insert Below.

Reference
The Workforce Integration Manager User’s Guide provides detailed information
on running interfaces.

Knowledge check
What tab includes the ability to run interfaces?
________________________________________________________________
Is it possible to see the output from the last interface executed? How?
________________________________________________________________
Is it possible to edit tables associated with a link?
________________________________________________________________
Is it possible to edit all parts of the link with overrides?
________________________________________________________________
Can you schedule an interface?
________________________________________________________________
What license is required to run interfaces?
________________________________________________________________

© 2015, Kronos Incorporated or a related company. All rights reserved. 2-5


Workforce Integration Manager
Basic Interface Programming
Module 2: Performing Data Integration Tasks

Lesson 2: Other Administrative Tasks


There are several other tasks that are performed from within Workforce Central
that are essential to the interface execution process.

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________

Lesson objectives
After completing this lesson, you should be able to:
 Create Function Access Profiles related to Workforce Integration Manager
 Create Generic Data Access Profiles related to Workforce
Integration Manager
 Create a mapped folder
 Create a database or API connection
 View a record retention policy for Workforce Integration Manager results
 View and describe the system settings for data integration

System Configuration
Workforce Integration Manager has some critical global system settings
Workforce Integration Manager has several system settings that can be edited to
modify performance. To access the settings, go to System Settings in the System
Configuration group. Select from these options on the Data Integration tab:
 Global settings
 Performance settings
 Date and time default interpretation
 Date and time formats
 Sorting options
 Permissions for run commands in the interface
 Consult on-line help for details

Global Values system settings


The global settings impact the general behavior of Workforce Integration
Manager.
 global.knx.engine.EnableGDAPforLookupTables
 global.knx.engine.RunHistoryLogsFolderFullPath
 global.knx.engine.UseBatchProcessingFramework
 global.knx.purge.RunHistory.Logs.MaxRunHistoryPurgePerEvent

System setting performance


There are settings related to performance:
 knx.engine.ThreadPoolSize
 knx.engine.GetJobTimeout
 knx.engine.StalledJobFrequency
 knx.engine.JobMaxInactiveTime
 knx.engine.MaxInMemorySortSize

2-6 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 2: Performing Data Integration Tasks

Threads control the number of interfaces that can run concurrently.


 If all the threads are in use, any new interfaces that are executed wait in a
queue for an available thread.
 Adjust the thread pool size to match the greatest number of interfaces that
are expected to run at the same time.
 Increasing the thread size too much may have an adverse effect on
performance.

System settings sort table


There are also settings that control the sorting functionality in Workforce
Integration Manager. Sorting takes place in the WFC database by default, but it is
possible to modify the settings to provide sorting functionality in a different
database.
 knx.engine.CreateSortTableSQL
 knx.engine.CreateSortTableStringDatatype
 knx.engine.CreateSortTableFloatDatatype
 knx.engine.CreateSortTableBinaryDatatype
 knx.engine.CreateSortTableMaxTableNameLen

These setting provide a means to create your own DDL for the sorting database.
Specify your own data types and table name length

System settings logs and reports


There are two settings that deal with logs and reports.
 knx.engine.TruncationThreshold
 knx.engine.MaxEngineLogSize

System settings date formats


The format strings for date and time control how Workforce Integration Manager
interprets dates if the source format is not supplied for the field included in the link.
The formats are also used in conjunction with the date specifiers for formatting
dates and times for output.
 knx.engine.ShortDateFormat
 knx.engine.LongDateFormat
 knx.engine.ShortTimeFormat
 knx.engine.LongTimeFormat
 knx.engine.TimeAMString
 knx.engine.TimePMString
 knx.engine.DateSeparator
 knx.engine.TimeSeparator

Note
The century divide setting is part of the Windows Regional Date
Settings. If the century divide is critical to the interface, it should be
handled in the interface.

System Settings run commands


These settings control whether or not you can include run commands as part of an
interface and also the character used to delineate a mapped folder name.
 knx.engine.AllowRunCommand
 knx.engine.RunCommandVarDelimiter

© 2015, Kronos Incorporated or a related company. All rights reserved. 2-7


Workforce Integration Manager
Basic Interface Programming
Module 2: Performing Data Integration Tasks

Note
The century divide setting is hard-coded in Workforce Integration
Manager. If the century divide is critical to the interface, it should be
handled in the interface.

Function Access Profiles


Users creating or editing mapped folders, database, or API connections need to
have access to perform those tasks. Likewise, users running interfaces with
Workforce Integration Manager need similar access. Workforce Integration
Manager uses GDAPs to control this access.
The following table contains access control points for two users; a user who runs
interfaces, and a user who maintains connections and mapped folders in addition
to running interfaces.

Control Point Interface only Maintenance


user user
Workforce Manager - Common Setup >Data Integration
Data Integration Access Allowed Allowed
View data integration results for all users Disallowed Allowed
Delete interfaces Disallowed Allowed
View output files displayed on Interface Allowed Allowed
Run Summary
Workforce Manager - System Configuration > Setup > Data Integration Setup
Connections Disallowed Allowed
Mapped Folders Disallowed Allowed

Creating GDAPs
Generic Data Access Profiles, GDAPs, allow you to control the Workforce
Integration Manager objects, interfaces, connections, and mapped folders that a
user sees.
Steps for creating a GDAP.
1. Access the GDAP workspace.
2. Click New.
3. Select the Data Integration Setup Category.
4. Select the setup item.
5. Assign the items to the GDAP. Repeat with other setup items.

Mapped folders
A mapped folder is simply a named shortcut for the path to a folder. For example,
the mapped folder, Payroll, represents the file path
C:\Kronos\WIM\Interfaces\Payroll. Mapped folders are used to specify the
location of source or output files.

Note
The path to the mapped folder must exist at runtime. Mapped folders
can refer to a path that does not actually exist when the mapped folder
is created. If an interface cannot resolve the location of the mapped
folder, the interface fails and returns an error.

2-8 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 2: Performing Data Integration Tasks

Mapped folders are defined within the Workforce Central Setup area. There is a
new group called Data Integration that contains the option.

Defining a mapped folder


To define a mapped folder:
1. In the Setup workspace, click Mapped Folders in the Data Integration
group.
2. In the Mapped Folders workspace, click the New button.
3. In the Mapped Folder Editor, specify the following information:
 The name of the new folder.
 The path to that folder.
4. Click Save & Return.

Tip
Use Windows Explorer to browse to the folder you intend to use as a
map. Copy the path in the address bar and paste it into the mapped
folder dialog box.

Within the mapped folders workspace, it is also possible to duplicate, edit, or


delete mapped folders.

Recommended practice
Kronos recommends that you create a unique mapped folder for
each interface. This way, you’ll have a single location for the source
files and output files.

Connections
Database connections are defined within the Workforce Central Setup area.
Workforce Integration Manager uses JDBC connections to talk to databases.
Access for creating connections is controlled by a FAP. Access for viewing the
individual connections is controlled by a GDAP.
ODBC and OLE DB connections are used by DBView within the Interface
Designer. ODBC connections are created using the Windows tool. OLE-DB
connections are created by copying an existing OLE-DB connection file (*.UDL)
and editing the settings.

Note
Kronos provides JDBC drivers for the Microsoft SQL Server and
Oracle database applications. Drivers for any other database
applications must be provided by the user.

Defining a database or API connection


To create a database or API connection:
1. In the Setup workspace, click Connections in the Data Integration group.
2. In the Connections workspace, click the New button.
3. In the Connection Editor, specify the following information:
 The name of the connection
 A description of the connection
 The type: Oracle, SQL, XML API, or Custom
4. The remaining fields vary depending on the type.
5. Click the Test button. Troubleshoot as needed.

© 2015, Kronos Incorporated or a related company. All rights reserved. 2-9


Workforce Integration Manager
Basic Interface Programming
Module 2: Performing Data Integration Tasks

6. Click Save or Save & Return.

The following table defines the Possible fields.

Field Description Type


JDBC Driver Refer to the JDBC documentation Custom
database
JDBC DB URL for the database server Database
URL
Server Name Name of the server where the database is located SQL Server
Instance Name of the instance of Workforce Central on the XML API
Name server
SID Security identifier required for Oracle databases only Oracle
Database The name of the Microsoft SQL Server database SQL Server
Name
Port Number The port number of the database server Database
Parameters Refer to your Oracle or SQL Server driver Oracle, SQL
documentation Server
Time-out The number of seconds to establish the connection All
before that connection times out
User Name The user name for accessing the resource All
Password The password for accessing the resource All

Recommended practice
Kronos recommends that you use the suprkron user for database
connections. This user has all the required permissions.
API connections should use the import user.

Testing connections
When you define a connection, you should use the Test button to verify that the
connection is defined correctly. The test results are displayed in the upper part of
the workspace. Errors are written to WFC.LOG.

Default connections
There are three default connections created during the Workforce Integration
Manager installation:
 Connect to Sort Table
 Default Database Connection
 Default XML API Connection

Multiple language support for connection parameters


The language that the system uses to display the connection parameters depends
on the following:
 If you were assigned a locale policy in the People Editor, the connection
parameters appear in the assigned language.
 If you were not assigned a locale policy, the connection parameters appear
in the default language of the installed instance of Workforce Central.

2-10 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 2: Performing Data Integration Tasks

 If you overrode the assigned locale policy when you logged on to the
system, the connection parameters appear in the language that you
selected on the logon screen.

Recommended practice
To improve the efficiency of creating or upgrading interfaces, define
all mapped folders and connections in Workforce Central before
doing any work in Interface Designer.

Record retention policies


Workforce Integration Manager retains copies of the data integration results which
includes run summaries, error reports, disqualification reports, and logs. There is
a record retention policy option for Data Integration results. The usual options of
forever, limited, and archive apply. The Archive option is only available if there is a
Workforce Record Manager license present.

Recommended practice
Kronos recommends that you set up record retention policies for
interface results.

Knowledge check
Answer the following questions:
Where are mapped folders created and edited?
________________________________________________________________
GDAPs control access to mapped folders and connections, true or false?
________________________________________________________________
Mapped folders are a shortcut to identify the ______ of a file.
________________________________________________________________
The Workforce Central installation creates default connects that Workforce
Integration Manager can use, true or false?
________________________________________________________________
Name two JDBC drivers installed by Workforce Integration Manager.
________________________________________________________________

My notes on administrative tasks


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

© 2015, Kronos Incorporated or a related company. All rights reserved. 2-11


Workforce Integration Manager
Basic Interface Programming
Module 2: Performing Data Integration Tasks

Summary
The key points of this module are summarized below.
 An interface is composed of one or more links.
 The link has the location of the source file and output file stored as part of
the configuration.
 The system automatically displays a summary of the actions taken in the
interface process. This summary is available from within Workforce Central.
 Access to data integration tasks are controlled by FAPs and GDAPs.
 Record retention policies can be configured for Workforce Integration
Manager results.
 Database and API connections contain the logon and password data.

2-12 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 3: Creating Text File to Text File Interfaces

Module 3
Creating Text File to Text File
Interfaces
Interfaces involving text files for source and output are commonly used as part or
all of an interface. Using this basic concept provides a strong foundation for
learning many of the basic functions of Workforce Integration Manager.

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Module objectives
After completing this section you should be able to:
 Log on to Workforce Integration Manager Interface Designer
 Explain the difference between an interface and a link
 Change the Interface Designer password
 Create a basic link and interface
 Deploy and test an interface

© 2015, Kronos Incorporated or a related company. All rights reserved. 3-1


Workforce Integration Manager
Basic Interface Programming
Module 3: Creating Text File to Text File Interfaces

Lesson 1: Defining Links


Links are the building blocks of interfaces and are where the transformation of
data is defined. All the details are worked out in the links. It is important to
understand how each of the tools in Interface Designer function to perform a
specific task within the link.

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Lesson objectives
After completing this lesson, you should be able to:
 Explain the difference between a link and an interface
 Define a source
 Define an output
 Define some basic transformations
 Test a link

Overview
You use the Workforce Integration Manager Interface Designer to build the
interface and links that convert the source data to the destination format.

Step 1 Link_A.KNX
Step 2 Link_B.KNX Interface.KNI
Step 3 Link_C.KNX
Step 4 Link_D.KNX

Interface Designer password


You need a password to access the Interface Designer. The default password is
kronites.
You will need to enter a password each time you launch Interface Designer. To
change the default password, select Admin > Change Admin Password.

Workforce Central server connection


A connection to the Workforce Central server is not a requirement for building
links and interfaces, however, it provides benefits:
 Access to defined connections
 Access to mapped folders
 Deploy interfaces
 Testing interfaces and link
To point to a Workforce Central (default) server:
1. Double-click the words Default Server in the menu bar.

3-2 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 3: Creating Text File to Text File Interfaces

2. Provide the server name, IP address, or URL.


3. Provide the login name and password for the server.
4. Indicate whether or not SSL is used.
5. Click Test (optional)
6. Click OK.

Setting the working directory


The working directory is the location where all files associated with an interface
are initially located. This location is generally on the client PC where Interface
Designer is installed.
 Interface Designer uses a working directory as a basis to access the files it
needs to perform the interface process.
 These files may include interface (*.KNI) and link files (*.KNX), and tables
(*.TBL).
 The working directory should contain all relevant files.
 Set the working directory as soon as Interface Designer is opened.

Links and interfaces


Links are the building blocks of interfaces, so we begin by examining a simple
interface consisting of a single link.
You edit links from the Steps tab of the interface dialog box.
1. Open the interface.
2. Select the Steps tab.
3. Double-click the link you want to open.
4. Click Open Link.

The link editor window contains a series of tabs that indicate functional areas.
Some tabs will not appear unless enabled.

Interface Designer presents the configuration possibilities neatly divided into


functional areas.
 General
 Source
 Source Configuration
 Output
 Records/Tables
 Batch Processing

© 2015, Kronos Incorporated or a related company. All rights reserved. 3-3


Workforce Integration Manager
Basic Interface Programming
Module 3: Creating Text File to Text File Interfaces

 Interface Run Summary


 Function and Variables
 Special Lookup Tables

KnowledgePass
If you have a KnowledgePass subscription, you can also access the various links,
interfaces, and other source files referenced in this course.

General information
The General tab, allows you to set up some security and select additional
configuration options.

Note
If you use passwords on a link, record the password in a secure place.
If you forget the password, it can only be reset by following the
procedures established by Kronos Global Support. Contact your
support representative for more information.

My notes on defining links overview


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Defining the source


The Source tab contains information relating to the origin of the data.
The appearance of the Source tab depends on the Source type you select.
 Lookup table
 Text file
 SQL Query
 Workforce Timekeeper
 Workforce Activities
 XML Document

Defining a text file source


Text files are a common format for data transfer. The data source does not have to
be a Kronos application. Workforce Integration Manager can transfer data from a
non-Kronos application into a suitable format for import into Kronos applications
or other applications, such as scheduling or general ledger.

Delimited format
Delimited files have a defined delimiter separating the values. Each data item is
identified by its order in the record. The following is an example of a
comma-delimited file:
123456,Jones,John,18 Mar 1960
456789,Smyth,Samuel,1 Jan 1950
789123,Abbot,Anabelle,4 Jul 1965
369852,Carson,Carlina,12 Dec 1970

3-4 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 3: Creating Text File to Text File Interfaces

Delimiters
Each external application has its own standards for delimiters. Common delimiters
are the tab (ASCII 009) and comma.

Note
Text file characters below 032 are non-printable and are by definition
not visible in printed output. If the file specification does not include
the delimiter information, you may need to view the file in an editor
that displays the hexadecimal character values.

Fixed-length format
Fixed-length files have a predefined number of characters for each value in the
file. Each data item is identified by its starting position and length. The following is
an example of a fixed length file:
123456 Jones John 18 Mar 1960
456789 Smyth Samuel 01 Jan 1950
789123 Abbot Anabelle 04 Jul 1965
369852 Carson Carlina 12 Dec 1970

Workforce Integration Manager can read delimited and fixed-length formats.

Caution
If you create a link defined for a fixed length text file source, you
cannot change the text file type to delimited if the source changes.
You must redefine each of the actions for data elements, variables,
functions, and special lookup tables. Failure to do so will likely result
in incorrect output.

Steps to define a text file source type


1. Select Text file as the Source Type.
2. Select the Mapped Folder for the location.
3. Type the file name.
4. Select the Text file Type.
5. Select the Text File Encoding for the file.
6. If the file type is delimited, enter the Field delimiter character or the text
file code for non-printable characters.
7. If there are header records that you wish to ignore, enter the Number of
records to skip.
8. Set options for Process multiple files if the source is a list of files.
9. Set the Delete files option.

Recommended practice
It is generally a good idea to examine the source file if possible. This
allows you to verify the structure before getting too far into the
project.

Defining output
The Output tab is similar to the source tab in that the available options depend on
the Output Type that you selected.
 ADP
 Text file
 Database
 Dual Field - ASCII

© 2015, Kronos Incorporated or a related company. All rights reserved. 3-5


Workforce Integration Manager
Basic Interface Programming
Module 3: Creating Text File to Text File Interfaces

 Lookup Table
 Workforce Central Import
 Workforce HR/Payroll Import
 XML Document

Many attributes for defining the output file format are similar in function to those
for defining a source file forma. Some attributes are unique.
 Append records to any previous output file
 Enable batch processing
 No CRLF at the end of the file
 Include Byte Order Mark (BOM)
 Sort Output File

Steps to define a text file output:


1.Select Text File as the Output Type.
2.Select the Mapped Folder.
3.Type the file name.
4.Select the Text file Type.
5.Select the Encoding.
6.If the file type is delimited, enter the Field delimiter character or the text
file code for non-printable characters.
Sort options cannot be defined until the records are defined.

Defining Records/Tables
After you define the source and output for the link, it is time to provide greater
detail about the specific makeup of the output and how the data is transformed
going from source to output.
Use the Records/Tables tab to define the structure and detail.
 Think of records as a complete chunk of data, such as a row in a database
table or a line of data in a text file.
 Within the records are individual data elements that represent one piece of
information.
 Data elements have formatting attributes and an action that specifically
defines the content of the field.
The window has two areas: the listing of records on the top, and the record detail
(data elements and qualifiers) of the selected record on the bottom.

Records

Data
Elements

Text file record structure


Think of a single text file output record as one line of data that contains one or
more pieces of data referred to as data elements.

3-6 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 3: Creating Text File to Text File Interfaces

Header “ABC Company”,01/01/01


“001”,“AdamsA”,8.00,“REG”
“001”,“ChuC”,8.00,“REG”
Detail “001”,“JonesJ”,8.00,“REG”
“001”,“SmithS”,8.00,“REG”
Footer “001”,“TargelT”,8.00,“REG”
“Records”, 5,“Hours”,40.00

Data elements
If you use batch processing functionality, there are additional interval options.

Using context menus


The right mouse button accesses several of the functions in this window, functions
that facilitate the precise formatting of the records. The following actions are
available:
 Add
 Edit
 Insert
 Delete
 Move Up
 Move Down
 Action (available on the lower part of the window)

To edit a record, simply double-click it.

Note
Context menus provide additional options throughout the product.
Always check the context menus for available options.

The record list


A link may have several different records appearing in the list. The record list
provides the following summary information about the record:
 Whether or not the record is enabled. Some records might be disabled for
testing purposes.
 The interval for the record.
 The size and number of data elements (field definitions) in the record.
 The number of qualifiers for the record.

Record intervals
Each record is defined to occur at a given interval. It is possible to have several
records in a link, each with different intervals, or several with the same interval.

© 2015, Kronos Incorporated or a related company. All rights reserved. 3-7


Workforce Integration Manager
Basic Interface Programming
Module 3: Creating Text File to Text File Interfaces

The available intervals on the Records/Tables tab depend on the Source type
that was specified.

Text file sources have three options for the record interval:
 Header
 One record for each source record (detail)
 Footer

Understanding field definitions


The bottom part of the window has two tabs that provide additional information
about the format of the currently selected record:
 Qualifiers
 Field Definitions

The summary line displays some of the attributes of the data element.

Summary line

Defining data elements


Data Elements are composed of two parts:
 Format attributes
 The action or data source for the element

The view is a summary of some of the format information and the action.
 The fields cannot be edited
 You can double-click to edit the data element
 You can use the context (right-click) menus.

3-8 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 3: Creating Text File to Text File Interfaces

Recommended practice
Try to obtain a sample of typical output. Analyze this in the same way
as the source file to determine the need for header records,
delimiters, field formats, etc.

Formatting the output


Double-clicking on any of the formatting columns opens the Output field dialog
box that contains general formatting information about the data element.
Certain formatting properties are common to all data formats
 Name
 Length (optional)
 Disabled status
 Justification
 Fill characters
 Type (Data type)
 Blank if home account (for Kronos applications only)

Formatting text data


The Text data type is generally used for any data that is alphanumeric.
 Usually left justified
 Filled with spaces.

© 2015, Kronos Incorporated or a related company. All rights reserved. 3-9


Workforce Integration Manager
Basic Interface Programming
Module 3: Creating Text File to Text File Interfaces

Note
Text fields can contain numeric data such as an employee number. As
text, you can’t apply a batch total to the field or other numeric only
formatting, but otherwise text is acceptable.

Some destination applications want to receive all data as text. In this situation, the
destination application handles data type conversions.

Defining an action
Part of defining a data element is the formatting, the other part is defining the
action, or defining exactly what the content of the data element is.
The key point here is summed up in the question “Where does this field get its
data?”

The dialog box that appears next is determined by the action that you select.
When you edit an action, you must always complete the Field Action dialog box
first.

3-10 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 3: Creating Text File to Text File Interfaces

The most commonly used action is Transfer from source. This allows you to
specify exactly where in the source file the data originates.

My notes on formatting text output


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Testing links without deploying


Links and interfaces can be tested from Interface Designer if there is a connection
to the runtime engine on the application server. There is no requirement to deploy
the interface prior to testing.

Reports for such test runs are in the TestRuns folder that resides in the folder
specified for Run History Logs settings found in the Global tab in System Settings.

© 2015, Kronos Incorporated or a related company. All rights reserved. 3-11


Workforce Integration Manager
Basic Interface Programming
Module 3: Creating Text File to Text File Interfaces

What actually happens is that the link is automatically deployed to the WFC server
with a unique name that includes a date stamp, processed by the runtime engine,
and then removed from the database.

Caution
Links must be saved before they can be tested. The testing process
temporarily deploys the link and any associated lookup tables to
Workforce Central for execution. Only the saved parts of the link are
deployed and tested. Any changes made since the last save are
ignored.

Expanding the link


There are other formatting options and actions that give Workforce Integration
Manager the functionality to create practically any output.

Other formatting options


Formatting numeric data
Use the Numeric data type when you know that the data consists only of numbers.
Key points are:
 Allows you to apply special actions such as batch totals to a particular data
element.
 There are several formatting options for the placement of signs.
 Numeric fields are usually right justified.
 Numeric output can be formatted based on the local policy of the user
running the interface.

3-12 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 3: Creating Text File to Text File Interfaces

Sign placement
The following table summarizes the sign placement options for the values 123.45
and -98.76.

Option Format
Leading +/- Sign +123.45 -98.76
Trailing +/- Sign 123.45+ 98.76-
Use Space for + Sign 123.45 -98.76

Formatting date/time data


This data type allows you to apply formatting properties that are specific to dates
and times.
 Can preview sample format
 Use quotes

Workforce Integration Manager can extract additional information about a date,


such as the day of the week or Julian day number, even though it is not part of the
original data stream.

Formatting HH:mm data


Use the HH:mm data type to format a span of time expressed in hours and
minutes instead of decimal hours.

Caution
Do not use this data type for a time of day! Times of the day are
usually expressed in either 24-hour format or with AM/PM indicators.
The HH:mm data type does not support these.

© 2015, Kronos Incorporated or a related company. All rights reserved. 3-13


Workforce Integration Manager
Basic Interface Programming
Module 3: Creating Text File to Text File Interfaces

If you want to include a time of the day, use the Date/Time data type.

Handling errors
If Workforce Integration Manager encounters an error, such as having to truncate
a field to make it fit in the available space, it generates an error file and does its
best to make the data fit. If you encounter such errors, you may need to adjust the
formatting of the data element or the size of the field.
Access the error report via the IRS report. Analyze the nature of the errors and
take appropriate steps to solve the problem.

Knowledge check
Answer the following questions as a check of progress.
What five tabs are available for all links?
________________________________________________________________
What is the purpose of the password defined on the General tab?
________________________________________________________________
What formats are supported for a Text File source type?
________________________________________________________________
Explain a Recommended practice concerning text file source files.
________________________________________________________________

My notes on formatting other output types


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

3-14 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 3: Creating Text File to Text File Interfaces

About actions
Actions are the second part of a data element.
 This specifies the exact source of the data.
 You can view Actions by double-clicking the Actions column or by selecting
Actions from the context menus.
There are several actions to meet interface needs:
 Transfer from source
 Static text
 Formatted Numeric Value
 Lookup table
 Double lookup
 Calculation
 Batch data
 Record count
 Date table
 Variable
 Dates
 SQL query
 Probation table

Using transfer from source


This is a simple transfer of data from the source file to the destination file.
 Each source type also has a bearing on how you select the data being
transferred.
 Each source type has a different dialog box for the Transfer from Source
option.
 Become familiar with the differences so you can easily identify the source
type.

Text File source


With a text file as a source, you specify the location of the data.
 Specify the ordinal position for delimited data
 Specify the starting position and the length for fixed length data

Performing special name parsing


This option is generally used with text file source files to extract pieces of a name.
This is typically used when the full name is found in a single field in the source file.
 Looks for either a space or comma separating the name parts
 Allows Workforce Integration Manager to select which piece of the name
to extract

© 2015, Kronos Incorporated or a related company. All rights reserved. 3-15


Workforce Integration Manager
Basic Interface Programming
Module 3: Creating Text File to Text File Interfaces

About date formats


Workforce Integration Manager can interpret dates in the source in a variety of
formats.
Some dates are very clear because they name the month explicitly.
 11 Dec 2009
 Dec 11, 2009

Some dates are ambiguous such as “11/12/2009”


 November 12, 2009
 December 11, 2009

Further confusion is introduced if there is no separator character such as the date


091112. What does this represent?
 September 11 2012
 November 9 2012
 November 12 2009
 December 11 2009

Workforce Integration Manager interprets dates using the formats configured in


the System Settings. Thus, “11/12/2009” is interpreted as November 12, 2009
when the System Settings indicate month-day-year order.
If the System Settings were in day-month-year order, the date is interpreted as 11
December 2009. You can alter this behavior by defining the date format for the
source field.
The following summarizes the acceptable date formats:
 MMddyy
 MMddyyyy
 ddMMyy
 ddMMyyyy
 yyddMM
 yyyyddMM
 yyMMdd
 yyyyMMdd

3-16 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 3: Creating Text File to Text File Interfaces

The date separator characters are available in a separate drop-down list.


 None
 /
 -
 .

Handling source formatting errors


Whenever Workforce Integration Manager detects an incorrect source field, an
error message is written to the error log. Each message contains:
 The record name followed by the field name or the qualifier id, or the
variable or function name where the error was detected.
 The string “Incorrect date format detected.”
 A string that describes the formatting error. This can be one of the
following:
 Illegal character detected <character>
 Date in incorrect format. Format must be <format string>
The following example shows an example of such an error string:
Record = Employee. Field = Date. Incorrect date format
detected. Date in incorrect format. Format must be ddMMyyyy

Whenever Workforce Integration Manager detects an incorrect date value, it skips


the record that is being processed at the time.The record is not written to the
output.

My notes on data element actions and transfer from source


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

© 2015, Kronos Incorporated or a related company. All rights reserved. 3-17


Workforce Integration Manager
Basic Interface Programming
Module 3: Creating Text File to Text File Interfaces

Lesson 2: Creating Interfaces


Interfaces are the top-level objects used by Workforce Integration Manager.
Interface may be composed of one or more links and they contain different
functionality from links. It is important to understand the different functions of an
interface and what part they play.

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Lesson objectives
After completing this lesson, you should be able to:
 Create an interface from a link
 Create a new interface
 Deploy an interface

Creating and deploying interfaces


Creating an interface from a link
Once you have completed a link, the next step is to create the interface.

Steps to create an interface from a link:


1. Click the Make interface button.
2. Complete the description of the interface.
3. Assign a unique interface name for storage purposes.
4. Change any options on the Steps tab. (optional)
5. Set up e-mail notifications. (optional)
6. Define interface level variables. (optional)
7. Save.

Deploying interfaces
Interfaces should be deployed before they are run from Workforce Central. The
deployment process copies all the link, interface, and lookup tables to the
application server. Links, interfaces, and lookup tables must be saved before they
can be deployed.
Links as well as interfaces can be tested within the Interface Designer.

Steps to deploy an interface


1. Set the default server URL, login and password.
2. Select Admin > Deploy Interface.
3. If the interface is already loaded and has the focus, the name will default.
The saved version of the interface will be deployed.
4. If no interface file has the focus, you can browse to select one.
5. Provide the server name or URL, user name and password.
6. Values are loaded for the default server.

3-18 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 3: Creating Text File to Text File Interfaces

7. Click the Deploy button. Troubleshoot as needed.


8. Click OK when the Interface deployed successfully message appears.

Creating new interfaces


The typical way that interfaces are created is to begin with a new interface and
add new or existing links to it.

Steps to begin the process of creating a new interface and link:


1. Launch Interface Designer.
2. You must also ensure that your working directory is set to the desired
location.
3. Click the new interface button on the tool bar or select
File > New > Interface. The new interface window appears.
4. Enter the Description and Interface name. Remember that interface
names must be unique.
5. Save the interface to the desired location.
6. Click the Step tab to add the link to the interface.
7. Right-click to add a step to the interface.
8. The Edit Step dialog box appears.
9. Ensure that the Type is set to Link and the Disabled check box is cleared.
10.Click New Link, the Save New Link As dialog box appears.
11. Specify the name of the link. It can be the same as the interface if desired.
If there will be several steps in the interface, it is a good idea to add a
sequential identifier to the name for easier identification and to help with
troubleshooting.
12.Click OK to save the link and the familiar link editing window appears.
From here, you can navigate to any tab to create the link. It is best to begin on the
General tab.

Changing source types


Do not change the source type after you define records and actions.
 This includes changing between fixed length text file and delimited text file
source types
 The data in these two types of files are identified in completely different
ways
 An action for a fixed length text file will not identify the same data if the
source is changed to delimited text file.

My notes on creating interfaces


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

© 2015, Kronos Incorporated or a related company. All rights reserved. 3-19


Workforce Integration Manager
Basic Interface Programming
Module 3: Creating Text File to Text File Interfaces

Lesson 3: Extending your link


There are several other actions you can use to create output that matches your
interface requirements. These actions are the heart of the interface design.

Lesson objectives
After completing this lesson, you should be able to:
 Define and use static text actions
 Define and use lookup tables
 Define and use batch totals
 Define and use dates
 Copy records and data elements

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Defining a static text action


The value entered in the dialog box is always present in the record. The static text
value is used when some character or string of characters must be present in the
destination but is not present in the source.

Defining a lookup table action


The lookup table translates one piece of data into another.
 The table may have two or more columns.
 It is possible to have several lookup tables for any given link, or all of the
lookup values in one table with several columns.

Specify the lookup data the same way as you did for Transfer from source.
Workforce Integration Manager uses the text from the source to search the lookup
column of the table for matching text.
If a match is found, the text or pattern from the return column of the table is copied
to the output field.

Default values
You can set up the lookup table to return a default value for the field by using a
wildcard character in the last row of the lookup.
You can also enable the default value from source in the dialog box to return a
value if the lookup fails. The value can come from:
 A field in the source file
 A variable
 Static text

The more dialog box


The More button gives you greater control over the source of the value being
looked up.

3-20 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 3: Creating Text File to Text File Interfaces

Editing lookup tables


Why edit a lookup table?
 Add a new lookup or return value
 Change a return value
 Add wildcard defaults

Lookup tables can be edited in either the Interface Designer or Workforce


Central. Each editor behaves differently.
In Interface Designer, when the table is open, you can navigate to any of the
values using the arrow keys.
You can add rows or columns to a table using the arrow keys.
Editing lookup tables within Workforce Central is more limited.

Lookup logic
Workforce Integration Manager searches lookup tables from the top down. When
a match is found, the lookup process terminates and the next process begins.
 Workforce Integration Manager does not continue searching down the
lookup table for a better match.
 Place the most frequently found lookup values near the top of the table.
 Remember to place wildcard values after any explicit values.

Using wildcards in lookup tables


Lookup tables can use “wildcard” characters to translate text. This ability to use
wildcards for matching is a very powerful feature of Workforce Integration
Manager. It frees you from having to enter every possibility in the table.

Lookup values
There are three special characters used in the lookup column. These act as
wildcard characters.

Character Description
? This represents any single character.
* Represents any number of characters.
! Represents the escape character. Whatever follows the ! is taken
literally and not interpreted as a wildcard.

The following table provides examples of lookup entries.

Text Will Match


???? Any text four characters in length.
2?? Any text three characters in length starting with a 2.
12* Any text of any length starting with a 12.
???T?? Any text six characters in length with a “T” as the fourth character.

Lookup order
The following sequence demonstrates the proper sort order for wildcard entries:
2?????
??1???
????4?
??????
12*
*

© 2015, Kronos Incorporated or a related company. All rights reserved. 3-21


Workforce Integration Manager
Basic Interface Programming
Module 3: Creating Text File to Text File Interfaces

Return values
The following table describes the possible wildcards in the return column.

Character Description
? Replace with character in lookup text.
! The next character is taken as a literal and is not skipped in the lookup
text.
~ Skip a character in the lookup text.

Other characters, A–Z and 0–9, etc. are simply substituted based on their position
in the string in the return column.

Lookup wildcard examples


The following table provides some examples.

Lookup Return Search Text


Column Column Example Returned Description
1?? 9?? 123 923 Translate any text
three characters in
length starting with 1
to text three
characters in length
replacing the 1 with a
9.
???-???? ~~~~???? ABC-1234 1234 Ignore the first four
characters and
extract the last four.
??/??/?? ~~~??~~~ 11/07/20 07 Extract the fourth and
?? ~~ 05 fifth characters from
the lookup string.
???? !2!7???? 1234 271234 Precede all text four
characters long with
27.

Extended wildcard values


Extended wildcards provide additional flexibility in lookup tables.
 Matching multiple embedded characters
 Matching a range of characters
 Negations of multiple embedded characters
 Negations of a range of characters

Note
If you are using extended wildcard characters, and you want to look
up one of the wildcard characters, you must precede it with an
exclamation point (!).

3-22 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 3: Creating Text File to Text File Interfaces

Defining a double lookup action


Double lookup provides the ability to return a value based on two distinct lookup
values
 Return the name of the second lookup table
 Return the text used as the lookup value in the second table.
The following figure shows one example where the first lookup returns the name
of the second lookup table:
1. Employees are either hourly or salaried, but their common pay codes
need to be converted to different codes for the payroll system.
2. The double lookup first determines whether the employee is hourly or
salaried.
3. It returns the name of the appropriate table to make the data translation.
4. You then look up pay code data in the second table and return the final
code in the format that the payroll system can interpret.

Rule.TBL Sal.TBL
Salaried Sal.TBL REG E-REG
Hourly Hour.TBL OT E-REG
WEREG E-REG
WEOT E-REG

Hour.TBL
REG H-REG
OT H-OT
WEREG H-REG
WEOT H-OT

The following figure illustrates the case where the text is used as the lookup value
in the second table.

Table1.TBL Table2.TBL
EmpNum SSN SSN PRID
1234 111-22-3333 111-22-3333 A14723
5678 555-66-7777 555-66-7777 B98745

You have complete control over the values that are used for the lookup:
 Default values if there is a failure
 Case sensitivity
 Subfields

© 2015, Kronos Incorporated or a related company. All rights reserved. 3-23


Workforce Integration Manager
Basic Interface Programming
Module 3: Creating Text File to Text File Interfaces

My notes on defining lookup tables


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Defining batch totals


The behavior of the Batch Data action depends on whether or not you select
Enable Batch Processing and whether or not there are batch header and batch
footer records defined.
To successfully implement a batch total, you need to do the following:
 Select Enable batch total for the data elements you want to total
 Create a numeric data element for the totaled amount
 Select the Batch Data action for the element

Note
Only Numeric or HH:mm data types can be used in batch totals.

3-24 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 3: Creating Text File to Text File Interfaces

The drop-down list contains all of the data elements that have the Enable Batch
Total option selected. If the list is empty, go back and verify that the check box is
selected.

Defining a record count action


The Record Count action returns the current count of output records.
 Header and footer records are included
 The adjustment field compensates for one-time records.

Record count data elements can be text or numeric. They can have any of the
formatting described earlier.

Defining a date action


There are three options for the source of the date and time used in an interface:
 User date
 Application Server Date
 Database Server Date

If the Interface Designer client, the Workforce Central application server, and the
database server are all in the same time zone, the differences, if any, are likely to
be minimal. However, if any of the three sources are located in a different time
zone, the differences could be significant.
The selected date action inserts the system date from the appropriate source.
 Date format Date/Time format strings appear in the Output Field
dialog box.
 When dates are used as an action, Workforce Integration Manager sets the
format to the format specified in the system settings.
When you use the system date as part of a calculation, there an additional dialog
box appears that allows you to further format the date.

Caution
Be careful that you only apply Date/Time format strings in one place;
otherwise, Workforce Integration Manager will format the date twice
and produce questionable results. If your dates are not correct in the
output, verify that you applied Date/Time format strings in one
location only.

© 2015, Kronos Incorporated or a related company. All rights reserved. 3-25


Workforce Integration Manager
Basic Interface Programming
Module 3: Creating Text File to Text File Interfaces

My notes on batch totals, record counts, and date actions


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Copying records and data elements


You can use drag-and-drop techniques to copy records or data elements either
within a link or between two links. You can use the drag-and-drop technique for
any of the following copies.
 Records from one link to another
 Data elements from one link to another
 Records within a link
 Data elements within a link

Workforce Integration Manager does not let you make inappropriate copies such
as data elements to records.
When you are copying in this manner, the icon changes to indicate that a copy is
in process.
 This is the copy icon .
 This is the illegal copy icon

When the copy is complete, the copied record appears in the destination link.
Copying within a link uses the same procedure.

Moving and rearranging in Workforce Integration Manager


There is an alternative to using the context menus or arrows to rearrange the
different items in Workforce Integration Manager. Use the click and drag
technique on the markers to the left of the item you want to move.
It is possible to rearrange any of the following:
 Records
 Data Elements
 Functions and variables
 Operations within a calculation

3-26 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 3: Creating Text File to Text File Interfaces

 Tables (works with columns and rows)

Click and
drag

Click and
drag here

Making multiple selections


You can select multiple items by using the shift-click method. The items must be
contiguous. This feature is available in the following grids.
 Records/Tables tab, data element summary (field definitions)
 Records/Tables tab, qualifiers
 Functions and Variables tab
 Special Lookup Tables tab

The record summary is excluded from this functionality due to its unique nature
and correlation between the records and the data elements.
After you select multiple items, you can delete or move them. Use the tool bar or
context menus to perform a move.
Delete is only available through the context menu.

My notes on copying records and data elements


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

© 2015, Kronos Incorporated or a related company. All rights reserved. 3-27


Workforce Integration Manager
Basic Interface Programming
Module 3: Creating Text File to Text File Interfaces

Knowledge check
Answer the following questions:
What does a record represent?
________________________________________________________________
What is a data element?
________________________________________________________________
Name the three basic record types.
________________________________________________________________
Are all three record types required in all links?
________________________________________________________________
Is it possible to rearrange data elements? [Yes] How?
________________________________________________________________
Field definitions (data elements) are composed of two parts. Name them.
________________________________________________________________
Name six of the possible actions.
________________________________________________________________
Lookup tables are used for what purpose?
________________________________________________________________
Can a lookup table be edited from the Workforce Integration Manager tool?
________________________________________________________________
What tasks must be completed to use a batch total?
________________________________________________________________

Summary
The key points of this section are summarized below.
 The Workforce Integration Manager Interface Designer builds the template
that is used to convert the source file to meet the requirements of the
destination file.
 The configuration settings are on separate functional tabs.
 The appearance of the tab may vary depending on the selections made.
 Text file sources can fixed and delimited formats as well as different
encodings.
 Text file output can be delimited or fixed length.
 Text file output can be encoded in different formats.
 Records are composed of several data elements strung together.
 Any given output can include header, detail, and footer records.
 The contents of each record are highly flexible.
 Any given data element is composed of its formatting and actions.
 There are several possible actions that can be applied to the data source
for any given data element.
 Transfer from source varies depending on the source type.
 Lookup tables provide a way of translating one value to another.
 Lookup tables can be case sensitive.
 It is possible to default a value if a lookup value is not found.
 Wildcards can be used in a lookup table.
 Double lookups return a value based on two lookup items.
 Record counts can have an adjustment factor.

3-28 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 4: Using Variables, Calculations, and Qualifiers

Module 4
Using Variables, Calculations, and
Qualifiers
Variables, calculations and qualifiers are important tools in the Interface Designer
application. They each bring special functionality for creating interfaces.

Module objectives
After completing this module you should be able to:
 Create a variable
 Use a variable in a link
 Create a simple numeric calculation
 Create a simple string calculation
 Create a qualifier

© 2015, Kronos Incorporated or a related company. All rights reserved. 4-1


Workforce Integration Manager
Basic Interface Programming
Module 4: Using Variables, Calculations, and Qualifiers

Lesson 1: Using variables


Variables provide a way to use an assigned value in multiple places in a link or
interface. Variables are important because they can be assigned names that are
useful throughout the link.

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Lesson objectives
After completing this lesson you should be able to:
 Create a variable
 Assign an action to a variable
 Associate error messages with a variable
 Use a variable in a link

Overview
Variables allow you to extract and manipulate data in much the same way as with
data elements.
Variables store a value so that it can be used multiple times in a link and interface.
They also have additional functionality that make them a valuable tool when
creating an interface.
After you define a variable, it becomes available as one of the selections
whenever you select Variable as the action.
Typical examples of variable use are:
 Storing a value so that it can be used multiple places in the output
 Uniquely identifying output
 Storing mapped folder and connection information

System variables

There are system variables that are always available.


 :SOURCEPATH
 :OUTPUTPATH
 :SOURCEPATHEACH
 :OUTPUTPATHEACH
 :SOURCEFOLDER
 :OUTPUTFOLDER
 :_ADPCOMPANYCODE (only available if output type is ADP)
 :_ADPBATCHNUMBER (only available if output type is ADP)

Defining variables
To access the Functions and Variables tab, you must select the option on the
General tab of the link.
Variable names:

4-2 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 4: Using Variables, Calculations, and Qualifiers

 Must begin with a colon


 Are case sensitive
 Can contain spaces

Variables have several attributes:


 Enabled/Disabled
 Execution interval
 Calculation failure option
 Failure error message
 Data type
 Action
 Comments

Note
Variables can also be defined from the Records/Tables tab.

About execution intervals


Variables are defined and calculated on an interval similar to header, detail, and
footer records. The options for the interval depend on the source that you select.
These are the execution intervals:
 Preopen
 Preprocess
 Once for each source file record (detail)
 Postprocess

Note
The available execution intervals are dependent on the Source type
selected on the Source tab.

The interval you select for the variable depends on the purpose of the variable:
 Use Preopen for values that will not change while the interface is running.
 Use Preopen for any variables that use Prompt User as the action.
 Use Preprocess for values that will not change while the interface is
running but do not need to be used on the source tab. These values can be
read from the source file.
 Use detail for values that need to be evaluated every time a source record
is read.
 Use Postprocess for cleanup tasks.

About Preopen variables


You can use Preopen variables for the source name or mapped folder name on
the Source tab.
Preopen variables have limited actions for the source of their value. Only the
following actions are available:
 Static text
 Prompt user
 Calculation
 Variable
 Dates
 SQL query

© 2015, Kronos Incorporated or a related company. All rights reserved. 4-3


Workforce Integration Manager
Basic Interface Programming
Module 4: Using Variables, Calculations, and Qualifiers

About failure options


Workforce Integration Manager uses the calculation failure options if the variable
is defined by a calculation action. If you create the calculation to FAIL, these
options become available. If you do not use a calculation or do not create a FAIL
operation, Workforce Integration Manager ignores these options.
The following are the If Calculation Failure occurs options. Remember that this
is used if the calculation specifically creates a failure.
 Ignore & Continue
 Skip Record No Reporting
 Skip Record, Report as Disqualification
 Skip Record, Report as Error
 Stop Processing
If an error or failure occurs, Workforce Integration Manager displays the error
message along with the name of the variable in the error report when the link or
interface is run. The configurable error message makes it easier to identify the
source of the error.

Data types
Workforce Integration Manager supports the following data types for variables:
 Text
 Numeric
 Date/Time
 HH:mm

Recommended practice
If your link includes multiple connections or mapped folders, use a
variable to store the value. Then if you need to change the
connection or mapped folder, you only need to change the value of
the variable.

Variable actions
Variables also have an Action that indicates where the variable gets its data.
 Behaves like the action for data elements
 Has many of the same options
 Can be reused either as a part of the output data, a SQL query or in
calculations.
 Additional Qualifier Action
 Available actions dependent on Source Type

4-4 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 4: Using Variables, Calculations, and Qualifiers

Using variables in source and output fields


You can use variables as part or all of the information in several places within
Workforce Integration Manager Interface Designer. You can use Preopen
variables in the following places:
 On the Source tab for the Connection, or Mapped Folder
 On the Output tab for the Connection, or Mapped Folder
 In Special Lookup tables for the Connection, or Mapped Folder
 In SQL Query actions for the Connection

Note
Recall that Preopen variables are limited to selected actions.
Prompt User actions can only be defined on a Preopen interval in a
variable.

Caution
Because the variable used as part (or all) of the output file name is
not selected from a drop-down list, it must be spelled correctly!
Remember that variable names are case sensitive!

The variable name, including the colon, is typed between angle brackets, <>. It is
important to type the name exactly as it is defined, otherwise, it will be evaluated
as a blank.
If the variable is defined as :Output file name, then the text on the output tab
would be <:Output file name>. The variable can be part or all of the output
file name.

<:Variable> Output file name Actual file


value name
Test <:Variable>.txt Test.txt
01-15 Payroll<:Variable>.txt Payroll01-15.txt
XYZ <:Variable>.<:Variable> XYZ.XYZ
A-030 MFC<:Variable>01.txt MFCA-03001.txt

Note
Any value for the variable must conform to the allowable file names for
your operating system. For example, do not use forward or backward
slashes, they could lead to problems.

If you attempt to execute a link with a variable in the output file name and the
variable is not defined as having a preopen execution interval, you will receive an
error message.

Defining a prompt user action


The Prompt User action lets you prompt the user for information when the link is
executed. It can only be used in a variable. When you select Prompt User as the
action, the Validate User Input dialog box appears with four options:
 Do not validate the input.
 Validate the input using a validation table.
 Use pre-defined responses selected from a pick list.
 Validate using defined date format.

© 2015, Kronos Incorporated or a related company. All rights reserved. 4-5


Workforce Integration Manager
Basic Interface Programming
Module 4: Using Variables, Calculations, and Qualifiers

Recommended practice
Always enter prompting text when defining a prompt user action. This
makes the request for the prompted data much clearer and less
prone to errors.

Prompt validation
If you want to validate the entries against a list of values in lookup table, you are
prompted for the name of the table.
If no validation is necessary, the user is prompted for the information and
whatever value they enter is accepted.

Pick list
A pick list presents a pre-defined list of acceptable entries for the prompt. You are
limited to selecting a value from the list. Free text entry is not an option.

Date format validation


If the prompt is for a date, you can select the date format and date separator
character so that dates are in an acceptable format. Invalid entries are rejected.

My notes on using variables


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

4-6 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 4: Using Variables, Calculations, and Qualifiers

Lesson 2: Using and building calculations


Calculations provide even greater power for building interfaces. They are
essentially free-form programming that use string, numeric, and Boolean
operators to manipulate data. It is important to understand how calculations
behave in order to use them to your fullest advantage.

Lesson objectives
After completing this lesson you should be able to:
 Create a calculation using string data
 Create a calculation using numeric data
 Create a calculation using Boolean operators

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Overview
Calculations provide a way to manipulate numeric and string data and make
decisions based on the results. Some typical calculations include:
 Reordering and concatenating name parts
 Building strings of data from multiple data elements such as labor level
combinations
 Performing arithmetic on numeric values such as multiplying wage rates
and hours worked
 Conditional calculations
 Rounding

Calculations are composed of two basic parts:


 The operators that determine what manipulation is performed
 The operands or data being manipulated

The result of a calculation can be stored in a field or in a variable.

Understanding the operators


It is easiest to group the various operators for better understanding.

Math
The first group is the math operators. These are used to perform numeric
calculations such as multiplying hours and wage rates to get total wages.
 Assign value
 Add
 Multiply
 Subtract
 Divide
 Round
 Modulo

© 2015, Kronos Incorporated or a related company. All rights reserved. 4-7


Workforce Integration Manager
Basic Interface Programming
Module 4: Using Variables, Calculations, and Qualifiers

Strings
The next group of operators is used for string manipulation.
 Assign string
 Build string
 Left String
 Right String
 To Uppercase
 To Lowercase
 Trim Left
 Trim Right
 Add Character
 Search
 Substring
 Length
 Reverse
 Replace

Booleans
Boolean comparisons allow you to make complex If … then…else… statements.
 In String
 IF == (If equal)
 IF != (if not equal)
 IF > (if greater than)
 IF < (if less than)
 IF >= (if greater than or equal)
 IF <= (if less than or equal)
 FAIL

Time math
Time operators provide methods for manipulating times or time spans.
 HHmm/HH:mm to HH.hh
 HH.hh to HHmm/HH:mm
 HHmm to HH:mm
 HH:mm to HHmm
 Fraction of a day to HH.hh

Understanding operands
Operands are the data manipulated by the operators. The data can come from
any of the actions discussed so far.
Most operators require two operands.
Some operators do not require a separate operand. The operand is considered to
be the current value of the calculation. Examples include:
 To Uppercase
 To Lowercase
 Trim Left
 Trim Right
 Length

Building calculations
Calculations are built in a series of steps with operators and operands. The
general steps for building a calculation are:
1. Assign an initial value.

4-8 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 4: Using Variables, Calculations, and Qualifiers

2. Build on it.

Note
All calculations must begin with an Assign String or Assign Value
operator! This initializes the calculation. From this point you can
perform math operations with numeric values and string operations
with text values. For Boolean operations, the Assign String/Value
operator loads the left side of the comparison.

Calculation GUI
The calculation window contains two panes.

The left pane displays a tree view of the calculation. The right pane is the working
space where the calculation is built, one step at a time.
There are additional areas for comments and labels for calculations on different
levels. Comments and labels help to identify what a particular calculation is doing.
This especially helpful when a calculation contains other calculations.

Building numeric calculations


Math operators perform numeric calculations.
 Assign value
 Add
 Multiply
 Subtract
 Divide
 Round
 Modulo

Calculations that involve arithmetic work with numeric values must begin with an
Assign Value operator.
After you assign an initial value, you can perform other arithmetic on that value.
Workforce Integration Manager keeps updating the value for each operation.

© 2015, Kronos Incorporated or a related company. All rights reserved. 4-9


Workforce Integration Manager
Basic Interface Programming
Module 4: Using Variables, Calculations, and Qualifiers

Empty box before calculation

Assign value “5” 5

Add “4” 9

Multiply “2” 18

Divide “6” 3

Algebraically, the preceding calculation is represented by the expression


(5 + 4) * 2 / 6.
Workforce Integration Manager does not provide for parentheses to group
operations.
You must ensure that any values you enter are truly numeric. If you enter a
non-numeric character as part of an arithmetic calculation, your result will not be
correct. After all, what is the correct answer of 4 + T?

Note
Workforce Integration Manager sees all incoming data as a string of
characters. Numbers are seen as a string of digits. If you want to use
any of the above operators, you must convert the text to a numeric
value by using the Assign Value operator. If you attempt to perform
any arithmetic without first using Assign Value, the results may not be
what you expect.

Round
You can use the Round operator in any numeric calculation. You can choose to
round the decimal part of a number to a specified number of decimal places. The
number of decimal places can range from 0 to 15.

Modulo
The Modulo operator returns the remainder of a division.
 Requires two operands
 First (left or dividend) operand is the current value of the calculation
 Second (divisor) operand is supplied using the typical list of actions
 Usually a static text value
 The two operands are not limited to being integers
 Decimal values are allowed

Original Value Modulo Value Result


7 3 1
10 5 0
7.50 3 1.50

4-10 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 4: Using Variables, Calculations, and Qualifiers

Building string calculations


String calculations have several operators for manipulating text.

Operator Description
Left String (n) Returns the left most <n> characters of the current string. The
dialog box allows you to specify the number of characters.
Right String (n) Returns the right most <n> characters of the current string. The
dialog box allows you to specify the number of characters.
To Uppercase Converts the current string to uppercase. Punctuation and numeric
characters are ignored.
To Lowercase Converts the current string to lowercase. Punctuation and numeric
characters are ignored.
Trim Left Removes all leading blanks from the current string.
Trim Right Removes all trailing blanks from the current string.
Add Character Adds a character to the string the specified number of times. The
dialog box allows you to specify the character, the number of times
to add it, and options to add to the beginning (left) or end (right) of
the existing string.
Substring Extracts (returns) a range of characters from the string stored in the
calculation beginning with a starting position and for a specified
length of characters.
Search Searches for a substring within the string stored in the calculation
and returns the starting position of that search string if it is found.
This changes the calculation to a numeric value.
Length Returns the length of the string stored in the calculation. This
changes the calculation to a numeric value.
Reverse Reverses the order of characters in the string stored in the
calculation.
Replace Searches for a substring within the string stored in the calculation
and replaces the substring with another string.

Empty box before calculation

Assign string “101” 101

Build string “/” 101/

Build String “202” 101/202

You can include numeric characters in the building of a string. They are simply
concatenated with the existing value.

Building Boolean calculations


Boolean calculations use one or more statements that begin with IF.
 Allow you to make decisions based on the truth of the statement
 Must begin with an Assign String or Assign Value operator
 Operator depends on the type of comparison that you are performing
 Do not mix numeric and string comparisons

© 2015, Kronos Incorporated or a related company. All rights reserved. 4-11


Workforce Integration Manager
Basic Interface Programming
Module 4: Using Variables, Calculations, and Qualifiers

Boolean operators are described in the following table.

Operator Description
In String Determines whether or not string A is contained in string B
IF == If equal
IF != If not equal
IF > If greater than
IF < If less than
IF >= If greater than or equal
IF <= If less than or equal

The Boolean calculation process differs from the calculations described so far.
The basic calculation steps are:
1. Use Assign Value or Assign String to initialize the comparison.
2. Perform any further numeric or string functions. This stores the assigned
value/string in the “left” side of the comparison.
3. Select the Boolean operator.
4. Describe the source of the data that is used for the “right” side of the
comparison. This is any of the actions described in this guide.
5. Decide what action is taken next.
6. Click OK.
The ability to return with another calculation based on the truth of the comparison
is a very powerful feature. You can “nest” calculations to perform complex
combinations.
When a Boolean is used in a calculation, there are four options based on the
result of the comparison.
 Return with another calculation
 Return left side of the comparison
 Return right side of the comparison
 Return as failure
 Return as field failure

Note
Workforce Integration Manager performs each comparison in the
order listed. When a comparison is found to be true, Workforce
Integration Manager performs the option selected and stops looking
for further comparisons.

Configuring variables for error messages


Workforce Integration Manager allows you to use variables to create configurable
error messages that appear in the error report. This enables you to create links
that clearly identify the source of the error. There is no more need for guessing
which source record cause the error. You can now extract identifying data from the
record itself, and use it as part of the error message.
This feature works on two levels. First, you can assign a text string for the error
message. The message can provide detail beyond the name of the variable
available with Workforce Connect.

4-12 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 4: Using Variables, Calculations, and Qualifiers

The second option is to create a variable with identifying information from the
source record and reference that variable in a second variable that tests for
possible errors.

Note
The location of the Error.XML file is in the ServerRuns or TestRuns
folder depending on the application from which the interface was
executed.

To create this configuration:


1. Create a variable that includes identifying data from the source record.
Identifying data can include any fields from the source.
2. Click OK to save.
3. Create a second variable that will test for errors.
4. Select either the Skip Record, Report as Error or Skip Record, Report
as Disqualification option.
5. Add a brief text error message.
6. Select the option to use a variable to identify the source of the error.
7. Select the variable defined in step 1.
8. Add an additional comment.
9. Click OK, to save the variable

Recommended practice
Configurable error messages are very helpful in accurately
diagnosing errors. Use this feature as often as possible to make links
easier to use.

The order of the two variables in the Functions/Variables tab is important. The
message must be built before the test is evaluated.

Understanding time calculations


Time operators are described in the following table.

Operator Description
HHmm/HH:mm to HH.hh This operator takes a variety of input values and converts
them from hours and minutes to hours and hundreths of
hours.
HH.hh to HHmm/HH:mm This operator takes values of hours and hundreths of
hours and converts them to hours and minutes.
HHmm to HH:mm This operator converts hours and minutes without a colon
to hours and minutes with a colon.
HH:mm to HHmm This operator converts hours and minutes with a colon to
hours and minutes without a colon.
Fraction of minutes to This operator takes the result from the previous
HH.hh calculation and multiplies it by 24.

These operators all need to work with numeric values, so any calculation using
them must begin with Assign Value.
You can apply other calculation operators to the converted value.

© 2015, Kronos Incorporated or a related company. All rights reserved. 4-13


Workforce Integration Manager
Basic Interface Programming
Module 4: Using Variables, Calculations, and Qualifiers

My notes on calculations
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

4-14 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 4: Using Variables, Calculations, and Qualifiers

Lesson 3: Understanding qualifiers


Qualifiers provide a means of filtering the source records that appear in the
output. It is important to understand exactly how they work so that you obtain the
correct output.

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Lesson objectives
After completing this lesson, you should be able to:
 Create a simple qualifier
 Use the qualifier in a link

Overview
Qualifiers attached to records allow you to include or exclude records on an
individual basis depending on the contents of the record.
 Options available differ with the source
 Separate qualifiers are available for each of the records in a link
 Equality comparison
 Choice to qualify or disqualify
 May be disabled for testing
 Multiple qualifiers are supported
 Listed in summary fashion

© 2015, Kronos Incorporated or a related company. All rights reserved. 4-15


Workforce Integration Manager
Basic Interface Programming
Module 4: Using Variables, Calculations, and Qualifiers

Creating qualifiers
Qualifiers are located on the Records/Tables tab next to the Field Definitions tab.

Steps to create a qualifier:


1. Select the Records/Tables tab.
2. Select the record that will have the qualifier.
3. Select the Qualifiers tab.
4. Right-click and select Add.
5. Complete the fields in the dialog box.
The first data element can be a variable or an extract derived directly from the
source. This can be compared to any of the following:
 Another variable
 Static text
 Another data element from the source
 A value found in a lookup table

Understanding qualifier logic


Qualifiers are Boolean type statements where two values are compared for
equality.
 If the two values are equal, the qualifier is true
 If the values are not equal, the qualifier is false

When multiple qualifiers are present, they are evaluated top to bottom, individually
without regard to any other qualifiers in the list, according to the following rules:
 When Workforce Integration Manager finds the first TRUE qualifier that
Qualifies a record, it continues to evaluate the remaining qualifiers in the
list.
 When Workforce Integration Manager finds the first FALSE qualifier that
Qualifies a record, Workforce Integration Manager no longer examines
other qualifiers. It skips the record and examines the next record.
 When Workforce Integration Manager finds the first TRUE qualifier that
Disqualifies a record, Workforce Integration Manager no longer examines
other qualifiers. It skips the record and examines the next record.
 When Workforce Integration Manager finds the first FALSE qualifier that
Disqualifies a record, it continues to evaluate the remaining qualifiers in
the list.

This can be represented in a table.

Qualify Disqualify
TRUE Continue Stop

FALSE Stop Continue

My notes on qualifiers
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

4-16 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 4: Using Variables, Calculations, and Qualifiers

Knowledge check
1. Complete the following statement: “All calculations begin with
___________________________________________________ _____________
2. Does Workforce Integration Manager support parenthesis in math calculations?
________________________________________________________________
3. What are the four options for a Boolean calculation?
________________________________________________________________
4. Explain the purpose of qualifiers.
________________________________________________________________
5. What character do variables begin with?
________________________________________________________________
6. Can variables be used as part of the output file name? If so, are there any
restrictions?
________________________________________________________________

Summary
The key points of this section are summarized below.
 Calculations provide power to make complex If… then… else…
statements, perform string manipulations, and arithmetic.
 Calculations are composed of operators and operands.
 Qualifiers are available to include/exclude records based on the
comparison of two data elements.
 Variables begin with a colon.
 Variables can be used to store a value which can be reused multiple times
or when the record the value originated from is no longer available.
 Variables can also be used as qualifiers.

© 2015, Kronos Incorporated or a related company. All rights reserved. 4-17


Workforce Integration Manager
Basic Interface Programming
Module 4: Using Variables, Calculations, and Qualifiers

4-18 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 5: Exporting Data from Workforce Timekeeper

Module 5
Exporting Data from Workforce
Timekeeper
Workforce Integration Manager is designed to have a special relationship with
Workforce Timekeeper for the purpose of data extraction. This can save you a
great deal of time when creating interfaces with Workforce Timekeeper as the
source.

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Module objectives
After completing this section you should be able to:
 Create links to extract data from a Workforce Timekeeper source
 Create batch output from Workforce Timekeeper
 Configure the Interface Results Summary report

© 2015, Kronos Incorporated or a related company. All rights reserved. 5-1


Workforce Integration Manager
Basic Interface Programming
Module 5: Exporting Data from Workforce Timekeeper

Lesson 1: Defining a Workforce Timekeeper extract


The most common payroll extract from Workforce Timekeeper is one output
record for each pay code worked by the employee. If you understand the
requirements for this type of extract, other extracts will be much easier.

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Lesson objectives
After completing this lesson, you should be able to:
 Explain the use of record intervals
 Create a simple Workforce Timekeeper extract
 Configure the content of the Interface Results Summary report

Source options
Workforce Integration Manager accesses the Workforce Timekeeper database
through a series of predefined SQL queries.
The Workforce Timekeeper source type provides several options:
 Select the pay period
 Ignore signoff
 Output daily records
 Include only active employees
 Accrual extract options
 Specify the decimal precision
 Use the Payroll Prep options in Workforce Timekeeper
 Modify parts of the SQL query
 Select options for jobs
 Include or exclude Accrual an Overtime Equalization options
 Include or exclude historical edits

Some of the options are found on the Source tab, others are elsewhere in the
interface.
 Create records on different intervals
 Batch processing options

5-2 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 5: Exporting Data from Workforce Timekeeper

Connections
To extract data from Workforce Timekeeper, you need to identify the database
server by defining a database connection. When you perform an accrual extract,
you need to supply an API connect name as well.

Pay periods
Workforce Integration Manager provides three options for selecting the pay
period:
 Previous
 Current
 Range of dates

Historical edits
The historical edits options allow you to specify whether to include historical edits
in totals. Historical edits are entered in the current pay period and adjust an
amount in a signed-off or locked pay period.
 Exclude HE: include only actual totals, do not include totals that result from
historical edits.
 HE only: include only totals that result from historical edits.
 Include all: include all totals, actual totals and totals that result from
historical edits.

Use Payroll Prep


Select the Payroll Prep option if you are using the Payroll Prep feature of
Workforce Timekeeper. This enables you to run payroll before the pay period has
ended. A Payroll Prep extract provides a snapshot of actual hours to date and
corrections from previous pay period.
This feature can be used in several ways. Consult Configuring Payroll Prep
Options in the Interface Designer Help for details.

Understanding Workforce Timekeeper intervals


When you use Workforce Timekeeper as a source, you have additional execution
intervals for:
 Records
 Functions and Variables

© 2015, Kronos Incorporated or a related company. All rights reserved. 5-3


Workforce Integration Manager
Basic Interface Programming
Module 5: Exporting Data from Workforce Timekeeper

The supported intervals are:


 Header Record
 One record for each employee
 One record for each account worked
 One record for each pay code worked
 One record for each accrual code
 Footer Record

Note
Over 90% of Workforce Central interfaces use the One record for
each pay code worked interval.

Using Workforce Timekeeper actions


Because Workforce Integration Manager understands the Workforce Timekeeper
data source, it can present a list of descriptions of the various fields that are
available through the queries.

Transfer from source


The Transfer from source dialog box has a drop-down list of the most commonly
extracted fields and features. This list allows you to be very precise in extracting
data.
 Fields in the list are arranged so that similar items are grouped together.
 Subfields provide access to parts of combined data such as labor accounts.
 Extra field parsing provides access to data at the single character level.
 Date formats provide a method to interpret date formats that differ from the
regional settings on the PC running Workforce Integration Manager.

Sub fields
Selected Workforce Timekeeper data consists of multiple pieces of other data.
Subfields extract the individual pieces of data.
One example for Workforce Timekeeper is the Home Account field which is
composed of several labor levels. If you wanted only the second labor level, you
would select subfield 2.

5-4 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 5: Exporting Data from Workforce Timekeeper

The list of items that have multiple pieces of data supporting subfields is detailed
in the following table.

Item Sub Field Description


Primary Labor Account Name The separate labor level names. 1–7 (maximum)
Primary Labor Account The separate labor level descriptions. 1–7 (maximum)
Description
Custom String The separate custom strings. 1–10 (maximum)
Acct Wrkd Name (Number) The separate labor level names. 1–7 (maximum)
Acct Wrkd Desc The separate labor level descriptions. 1–7 (maximum)

Date source formats


Date information fields have the Define date format in Source check box. This
option is also available for custom fields. The fields that support date formatting
options are:
 Period Start Date
 Period End Date
 Hire Date
 Last Update Date
 Last Total Date
 Signoff Date
 Payroll Lock Date
 Date of Status
 Hours Worked Date
 Adjusted Apply Date (Historical edits)
 Generated on Date (Payroll prep)
 Custom fields

Effective dated fields


Some of the available fields are effective dated. Workforce Integration Manager
provides three options for the effective dated fields:
 Current
 Start of range
 End of range

The following fields are effective dated:


 Primary labor account ID, name and description
 Primary job
 Primary Job name
 Primary Job location
 Badge number
 Base wage rate
 Paycode wage rate

My notes on Workforce Timekeeper sources


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

© 2015, Kronos Incorporated or a related company. All rights reserved. 5-5


Workforce Integration Manager
Basic Interface Programming
Module 5: Exporting Data from Workforce Timekeeper

Understanding Workforce Timekeeper messages


When you run a link that has a Workforce Timekeeper source, you may receive
messages based on the link configuration options. such as prompting for start and
end dates.
If you use options that require user input, it means that you cannot have the link
run unattended.
If you configured the Workforce source to prompt for a date range, you need to
supply those dates at runtime. If you select the current or previous pay period, the
dates are determined automatically.

Creating a pay code lookup table


The pay code lookup table is a special function that is available for Workforce
Timekeeper sources.
 Creates a Workforce Integration Manager formatted lookup table from
information in the Workforce Timekeeper database.
 The table acts as a starting point for translation of pay code data.
 Select File > New > Pay Code Table.
Workforce Integration Manager creates the lookup table and it appears in the
Workforce Integration Manager window. The table contains the following columns:
 ID
 Name
 Type
 IsMoneyAmtSw

You may have to define a local DSN to access this functionality.

About date tables

Note
The date used in lookup is the hours worked date for both Workforce
Timekeeper and Timekeeper Central. This limits the use of the Date
Table action to only Workforce Timekeeper or Timekeeper Central
sources. It also requires that the hours worked date be correct. This is
possible only if records are generated for each day and not summed
for a range of dates.

The Date Table is used to look up two pieces of information and return a result.
The first piece of information is just like any other lookup table. It is usually some
data from the source file. The second is an effective date. A typical example is for
payroll changes in the middle of a pay period.
The date table is arranged with the lookup values grouped and future dates at the
top within each group.

100 12/01/01 15.00


100 06/01/01 14.00
100 02/01/01 13.00
200 12/01/01 14.50
200 06/01/01 13.50
200 02/01/01 13.00

The columns are the lookup value, the effective date, and the return value. In this
example the lookup value is labor level 2 and the return value is a rate.

5-6 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 5: Exporting Data from Workforce Timekeeper

The lookup column is treated like any lookup table. It is searched downward
looking for a match. When a match is found, Workforce Integration Manager looks
at the column specified for the date value that is on the same row as the matching
lookup. If the date in the table is after the Hours worked date, the row is ignored,
and Workforce Integration Manager drops down to the next row.
If the date in the table is equal to or before the Hours Worked date, the value in
the return column is sent back and the lookup terminates.

Caution
It is important that the table be structured with the lookup values
grouped and the date values sorted with the future dates at the top of
each group.

About probation tables

Note
The date used in lookup is the hire date for Workforce Timekeeper or
the hire date stored in a custom string for Timekeeper Central. This
limits the use of the Probation Table action to only Workforce
Timekeeper or Timekeeper Central sources.

These are combined vertical and horizontal lookups. It is typically used to define a
return value based on the employees length of employment. Because Workforce
Integration Manager calculates the length of employment based on the hire date,
this option only works with Kronos applications where Workforce Integration
Manager has the hire date information. The following table illustrates the structure
of a probation table.

30 60 90
101 10.00 11.00 12.00
102 10.50 11.50 12.75
201 10.25 10.50 10.75
202 10.25 10.75 11.50

The vertical lookup is identical to a regular lookup table. You specify the field from
the database or variable to look up. Wildcards are acceptable
The horizontal lookup is a time interval expressed in days or months. These must
be arranged in increasing value from left to right. As mentioned earlier, the time
interval is calculated by subtracting the hire date from the hours worked date.
The lookup column is the first column of the table. It is searched, top to bottom, for
a match. When a match is found, Workforce Integration Manager searches the
selected row for the first column that contains a day or month span value that is
greater than the difference between the hire date and the worked date. The return
value is at the intersection.
Another way to think of the Probation Table columns is that the column labeled
“60” returns the value for someone employed fewer than 60 days but more than
30 days.
Month designations are defined as the number of months between the hours
worked date (which could be defined as the pay period end date if daily records
are not preserved). The hire date is based on calendar month. There are no
fractional months. Here are some examples.

Hire Date Hours Worked Date Number of Months Credited


09/09/1990 09/09/2000 120
09/10/1990 09/09/2000 119

© 2015, Kronos Incorporated or a related company. All rights reserved. 5-7


Workforce Integration Manager
Basic Interface Programming
Module 5: Exporting Data from Workforce Timekeeper

Hire Date Hours Worked Date Number of Months Credited


09/08/1990 09/09/2000 120
08/09/1990 09/09/2000 121
08/10/1990 09/09/2000 120
08/08/1990 09/09/2000 121
01/31/2001 02/28/2001 1
01/31/2001 02/27/2001 0
01/31/2001 03/01/2001 1

Determining pay periods


Workforce Timekeeper allows you to have different pay periods for employees. So
what happens when you extract data for a pay period and you have different pay
periods defined?
The easiest way to make this extract include only weekly records is to use a
qualifier of some type. The qualifier should use the pay period length to qualify all
weekly records.
From the previous practice you found that the pay rule is directly related to the
length of the pay period. Furthermore, any pay rule can have only one pay period
assigned. This one-to-one relationship is crucial to the success of the qualifier.
Determining the pay period length associated with the pay rule involves some
investigation. The output of the previous link provides some answers.
Alternatively, you could use the setup application, and trace the pay period length
for each pay rule.
You can use a SQL query to get the names of the pay rules in the database. You
can then create a link to partially build the table.
The pay rule name is stored in the payruleids table. The SQL statement to extract
the name is:
SELECT Name from PAYRULEIDS

The goal is to have a lookup table similar to the one below:

Qualifying records
The next step in the process is to create some variables to assist in qualifying the
records that have a weekly pay period.
The first variable should return the length of the pay period from the lookup table.
The second variable should act as a qualifier and disqualify all records that do not
have a pay rule with a weekly pay period.

5-8 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 5: Exporting Data from Workforce Timekeeper

Configuring the Interface Results Summary (IRS)


The Interface run summary report can be configured to display pay code totals for
the source and output separately. Additionally the report can display totals by
labor account or job.
This feature is available only for the Workforce Timekeeper source type.
A tab called Interface Run Summary Settings is visible if the link's Source Type is
Workforce Timekeeper.
This allows you to specify:
 The inclusion of source and/or output totals
 Whether they should be hours or currency totals
 Whether they should be totaled by pay code. labor account, or job if
enabled on the source tab
 How the totals should be sorted

Configuring source totals


The upper part of the IRS report provides information about the link including the
source and output. The source total options appear at the end of the report.
The following illustration shows a partial IRS report.

© 2015, Kronos Incorporated or a related company. All rights reserved. 5-9


Workforce Integration Manager
Basic Interface Programming
Module 5: Exporting Data from Workforce Timekeeper

Configuring totals by labor account and job


If the link uses a record interval of One record for each Account worked, the
option to compute totals by Labor Account is available. Generally, this is more
useful than totals by pay code.

There are additional options for:


 Using only part of a labor level
 Using the specific labor level or the full labor account
 Displaying the labor account name or description
 Sorting by total value or labor account

If the link is configured with the Use Jobs option on the Source tab, you can select
Job for the Compute Totals By option.
The Use option provides choices for creating totals for only the selected Labor
Level, or for the full Labor Account from Labor Level 1 through the selected labor
level.

Configuring output totals


In addition to source totals, you can include output totals in the Interface Results
Summary. There are some considerations:
 If you select to compute totals by labor account, the detail record must be
defined as Once for each account worked.
 The Compute totals by option must be the same for source totals and
output totals.
 If you attempt to add a record for output totals that do not have the correct
interval, you will receive a warning message.

Steps to configure the output options for the IRS report


1. Select Output on the Interface Run Summary Settings tab.
2. Add the record or records that contain the fields to be included in the
output totals.
3. Select the field to be included in the output totals. Only numeric type fields
can be selected. The data type of the field must be Numeric, HH:mm, or
Cobol.
4. Assign Total Type (hours or money) for each field selected.
The name of the field definition is used to describe the hours.
Only numeric fields selected are included in the output.

Including multiple detail records


It is possible to include fields from multiple detail level records if subsequent detail
records had the Combine with previous record option selected. When one
record is selected, the system will prompt you to include all of the records that are
combined. All of the numeric fields from the records are displayed in the list.

5-10 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 5: Exporting Data from Workforce Timekeeper

If you are computing totals by Labor Account or Job, only account/job interval
records will be presented for selection. If you are computing totals by pay code,
only pay code interval records will be presented for selection.
If the records being totaled have fields of the same name, their totals will be
summed together.

My notes on Workforce Timekeeper extracts


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

© 2015, Kronos Incorporated or a related company. All rights reserved. 5-11


Workforce Integration Manager
Basic Interface Programming
Module 5: Exporting Data from Workforce Timekeeper

Lesson 2: Defining employee and accrual extracts


Employee and accrual extracts use different intervals, and it is important to
understand the limitations as well as the other possibilities for data.

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Lesson objectives
After completing this lesson, you should be able to:
 Create an employee extract from Workforce Central

Employee extracts
The “One record for each employee” execution interval is useful for extracting
data related to the employee regardless of pay period. Examples include:
 Profile information
 Custom dates and data
 Hire date

The source is defined exactly the same. The key to getting one record per
employee is to select the correct record creation interval.

ID vs. number
There is often confusion on the difference between Employee ID and Employee
number. Both are numbers but each has a very specific role in the database.

Value Description
Employee ID Assigned by the system as employees are entered. This
number cannot be edited using the Workforce Timekeeper
GUI. It is the same as the person ID
Employee Number Assigned by the human resources or payroll department when
the employee record is created. This number can be edited,
although it must be unique for each employee.
Employee badge Assigned by the human resources department if badges are
number used. It can change each time an employee gets a new badge.

5-12 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 5: Exporting Data from Workforce Timekeeper

Accruals extracts
Another common extract is accrual information. The typical output is one record
for each accrual code. Consequently, an employee may have several lines in the
output.
Select the “One record for each Accrual code” option for the “Record Creation
Interval”.
The accruals data is found in the Transfer from source drop-down list near the
bottom of the list.

My notes on employee and accrual extracts


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Summary
Remember the following key points:
 Workforce Timekeeper uses SQL calls to extract data from the database.
 Workforce Timekeeper sources have several configuration options for
selecting data.
 Workforce Integration Manager supports different intervals for creating
records for Kronos sources.
 Subfields can be used to easily extract parts of Kronos source data.
 There are special tools for creating pay code lookup tables.
 The Interface Run Summary report can be configured to display source and
output totals for pay codes.
 Workforce Integration Manager provides record intervals for extracting
employee and accrual information from Workforce Central.

© 2015, Kronos Incorporated or a related company. All rights reserved. 5-13


Workforce Integration Manager
Basic Interface Programming
Module 5: Exporting Data from Workforce Timekeeper

5-14 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 6: Using Database Sources and Destinations

Module 6
Using Database Sources and
Destinations
Databases are another typical source and destination for integration. It is
important to understand the similarities and differences that these have with text
files as sources and destinations.

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Module objectives
After completing this section you should be able to:
 Create an interface with a database as the source
 Create an interface with a database as the output
 Use the SQL query action
 Define a special lookup table
 Use a special lookup table in a link

© 2015, Kronos Incorporated or a related company. All rights reserved. 6-1


Workforce Integration Manager
Basic Interface Programming
Module 6: Using Database Sources and Destinations

Lesson 1: Using SQL to extract data


Workforce Integration Manager can extract data from databases as easily as it
can from text files. It is important to understand the different requirements
imposed when a SQL query is the source of the data.

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Lesson objectives
After completing this lesson, you should be able to:
 Define a SQL Query source type

Workforce Integration Manager can extract data from databases, with the
requirement that there is a JDBC compliant driver to define the connection.

Defining a SQL query source


SQL queries extract data from any JDBC-compliant database. You must have a
connection defined.
When building links that use SQL queries, remember that Workforce Integration
Manager passes the SQL to the connection which in turn passes it to the
database.

Steps to define a SQL Query Source Type:


1. Select SQL Query as the Source Type.
2. Type the Connection or select it from the list.
3. Enter the SQL statement.

Recommended practice
Perfect the query in a SQL editor, and when the query returns the
data you want, copy and paste it into Workforce Integration Manager.

6-2 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 6: Using Database Sources and Destinations

Selecting data in the SQL statement


The order of the columns listed in the SQL query specify the order used by
Workforce Integration Manager to identify the data.
In the following SQL query:
SELECT FName, LName, MI, DOB from Birthday

FName is field 1, LName is field 2, etc.


Use the Field number in the Transfer from source dialog box to identify the
desired field.

Recommended practice
Do not use a wildcard in the select statement!
SELECT * from Employee

This returns all of the columns in the Employee table. This may be
many more columns than you need for the query. By not specifying
the names of the columns, you do not know which field number to
associate with each column.

Specifying date and numeric formats


Workforce Integration Manager expects dates formatted according to the formats
specified in system settings. If the source data does not match the default format,
it is generally wise to specify the formats so that they are interpreted correctly. You
can specify the format and separator.
The same logic applies to numbers. You can specify the decimal separator, group
separator, and negative number format.

My notes on defining database sources


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

© 2015, Kronos Incorporated or a related company. All rights reserved. 6-3


Workforce Integration Manager
Basic Interface Programming
Module 6: Using Database Sources and Destinations

Lesson 2: Defining database output


Creating output to a database is another one of the common tasks for Workforce
Integration Manager. It is important to understand the unique requirements of this
particular output type.

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Lesson objectives
After completing this lesson you should be able to:
 Define a database output type

Defining the output


This Output Type writes the output data to any JDBC-compliant database table
by specifying the name of the table and the column.
Typical uses for this output could be:
 Applications that use staging tables for data that will eventually be imported
 Interim database table for sorting or record combination purposes
 Workforce import tables

Steps
Steps to define a link that creates database output:
1. Create the database connection.
2. Complete the Output tab.
3. Define records and data elements. Records must use the table name.
Data elements must use column names.
On the output tab you must supply the connection name.

Defining records for database output


Use the Records/Tables tab to specify the table and column names.
 Think of records as a complete chunk of data, such as a row in a database
table. The record name is the table name.
 Within the records are individual data elements that reference a particular
column in the table.

Spelling counts!

Important considerations
You need to understand how the database output you create is used by the
destination application. You also need to understand the rules that apply to the
table.
 Does the table need to be emptied before it is populated?
 What application is responsible for emptying the table?
 Is the table dropped and created each time it is populated?

6-4 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 6: Using Database Sources and Destinations

 Does the login provide sufficient rights to the table?


 Do columns in the table expect a certain type of data?
 Are there constraints on the data that is placed in the table?

Defining functions
Functions differ from variables primarily in that they usually perform a SQL task.
Functions can begin with any character except a colon (:).
Typical functions include:
 Deleting rows in a table
 Creating a temporary database table
 Dropping a temporary database table
The selected function leads to a dialog box. In the case of clearing the employee
import table, a SQL query is necessary.

Note
Functions and variables are evaluated first according to their defined
interval. Furthermore they are evaluated according to their position in
the list. Therefore it is possible to define a variable and use the result
in a later function or variable as long as they are placed in the proper
order in the list.

Emptying tables
If the interface specification calls for deleting all rows in the table before
populating it, you can use a SQL statement to perform this task.
The SQL statement is usually preformed as a Preopen function. Functions are
defined on the Functions and Variables tab.
The SQL statement to empty a table is:
Delete from tablename

This statement deletes all rows from the table.

Note
Depending on the database, the login may require special rights to
delete rows in a table. This privilege is sometimes reserved for the
database administrator.

Using SQL query in actions


SQL queries are used to directly access a database so the information can be
included in the output or as part of the processing. The database connection must
be defined and be available within Workforce Integration Manager.

Note
You should not use a SQL query action to retrieve data for a detail
type interval. This generates one SQL call for each record in the
source and places an extra burden on the database server
responding to the request. Try using a special lookup table instead.

My notes on defining database outputs


________________________________________________________________
________________________________________________________________
________________________________________________________________

© 2015, Kronos Incorporated or a related company. All rights reserved. 6-5


Workforce Integration Manager
Basic Interface Programming
Module 6: Using Database Sources and Destinations

Lesson 3: Using special lookup tables


Special lookup tables exist only while the link is running. This unique quality
provides a means for secure and up-to-date information. It is important to
understand how special lookup tables work and how that are used in the interface
process.

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Lesson objectives
After completing this lesson you should be able to:
 Create a special lookup table using a SQL query

Special lookup tables


Special lookup tables are lookup tables generated when the link is run. With these
table, you can:
 Extract additional data from databases
 Avoid SQL queries in detail level records
 Easily define validation lists
 Define pick lists for prompt user actions

When you define a special lookup table, it is available for any actions that use the
different types of lookup tables:
 Lookup table
 Double lookup
 Date table
 Validation tables for user prompts

Special Lookup tables are enabled on the General tab of a link.

6-6 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 6: Using Database Sources and Destinations

The data for the special lookup table can come from any of the supported source
types.
The SQL Query can retrieve the data from any JDBC-compliant source; it’s not
limited to the same database as your link source.
The fields of the dialog box vary with the source selected.

.VAL
All of the sources except SQL Query will produce a single-column table. The
selections are similar to those available in the Transfer from Source action. You
identify the data item that you want to include in the table. The tables are named
NAME.VAL. You can enter the table name in the appropriate lookup dialog box by
typing it in with the .VAL extension.

.CS
SQL Query Source type produces a table that can have multiple columns
depending on the columns included in the SELECT statement. Tables created by
a SQL Query also only exist in memory while the link is running. The tables are
named NAME.CS. You can enter the table name in the appropriate lookup dialog
box by typing it in with the .CS extension.

My notes on special lookup tables


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

© 2015, Kronos Incorporated or a related company. All rights reserved. 6-7


Workforce Integration Manager
Basic Interface Programming
Module 6: Using Database Sources and Destinations

Knowledge check
Answer the following questions.
What does a record in a database represent?
________________________________________________________________

Briefly explain how Workforce Integration Manager communicates with a


database.
________________________________________________________________

Can a SQL query source type and a Database output type use the same
connection?
________________________________________________________________

In database output, the name of the record must be the same as ________. Fill in
the blank.
________________________________________________________________

In database output, the name of the data element must be the same as ________.
Fill in the blank.
________________________________________________________________

How can you empty a database table?


________________________________________________________________

Do SQL queries as actions have to query the same source as the rest of the data?
________________________________________________________________

What character do functions begin with?


________________________________________________________________

Is it possible to include data from a SQL query in a header or


record?
________________________________________________________________

What is the primary use of a Function?


________________________________________________________________

Give an example of why you might use a special lookup table.

6-8 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 6: Using Database Sources and Destinations

Summary
The key points of this section are summarized below.
 Perfect SQL queries in a SQL editor before copying them into Workforce
Integration Manager.
 The order of the fields in the source SQL query defines the field number
used to identify the data.
 Never use SELECT *!
 Specifically name each field in the source SQL query.
 For database output, the record name contains the table name, and the
data element contains the name of the column.
 Use functions to create, drop, and delete tables.
 Do not use a SQL query action in a detail level action.
 Special lookup tables provide additional sources of runtime data.

© 2015, Kronos Incorporated or a related company. All rights reserved. 6-9


Workforce Integration Manager
Basic Interface Programming
Module 6: Using Database Sources and Destinations

6-10 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 7: Creating a Pay Code Edit Import

Module 7
Creating a Pay Code Edit Import
Workforce Central APIs are the preferred method of importing data. Workforce
Integration Manager provides a platform for generating XML that automates much
of the process.

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Module objectives
After completing this module you should be able to:
 Describe some typical reasons for importing data
 Name two benefits of using the API import process
 Describe the API import process
 Create a pay code edit import
 Identify required fields in the import
 Change a choice field
 Include optional data in the import
 Clean up errors in the Transaction Assistant
 Prepare the link for production use

© 2015, Kronos Incorporated or a related company. All rights reserved. 7-1


Workforce Integration Manager
Basic Interface Programming
Module 7: Creating a Pay Code Edit Import

Lesson 1: Overview
Understanding the general API import process is an important first step in creating
successful interfaces for importing data into Workforce Central.

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Lesson objectives
After completing this lesson, you should be able to:
 List the benefits of using API import
 Outline the basic import process

Understanding Imports
Today’s business uses a variety of systems. Each system does its particular job
well, but one system cannot do everything. Sometimes, data needs to pass from
one system to another.
Importing data poses several advantages:
 Eliminates duplicate entry
 Data is available where it needs to be in less time
 Provides business logic validation

Import choices
Workforce Central provides two methods for bringing data into the system.
 Providing APIs that understand XML and verify and import data in a single
process.
 Providing database import staging tables with utilities for processing data
for import.

7-2 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 7: Creating a Pay Code Edit Import

Benefits of the API import


The primary benefits of the API import process are:
 It is faster
 It’s a single-step process
 It supports more data types than table import

The single process nature of the API process makes the import task much easier
and faster. The ability to read and interpret XML files provides flexibility for the
source of those files.
Any application that can create valid XML that follows the rules for the Workforce
Central APIs can create the import files.

Workforce Integration Manager


Workforce Integration Manager goes further:
 Non-technical language for building links
 Can use the Workforce Central Transaction Assistant
 No requirement to understand the complex rules and syntax of XML.
 Workforce Integration Manager uses XML schemas to create and format
valid XML

Note
Workforce Integration Manager produces the XML required by the
API. However, it is still your responsibility to understand the API
requirements of the import transaction.

The import process

The general flow of the import is:


1. Workforce Integration Manager reads the source file and produces XML
which is sent to the Workforce Central API. Workforce Integration
Manager produces the XML based on the schema that was used to build
the link. The schema defines the relationship among the data elements.

© 2015, Kronos Incorporated or a related company. All rights reserved. 7-3


Workforce Integration Manager
Basic Interface Programming
Module 7: Creating a Pay Code Edit Import

2. The API validates the data and puts it into the database. The API uses the
same business logic to validate the data that is found in the Workforce
Central GUI. Correct data is processed into the appropriate database
tables.
3. Workforce Central updates the import statistics so reports can be
generated.
4. Any invalid data rejected by the API is returned to Workforce Integration
Manager with an error message, which in turn ends up in the interface
error report.
5. Invalid data returned to Workforce Integration Manager is resubmitted to
the FailedXML API as a failed transaction. If Workforce Integration
Manager has the option to submit errors to the Transaction Assistant
turned on, Workforce Integration Manager will generate another XML
transaction that is routed to the Failed XML queue.
6. The Transaction Assistant is used to correct invalid data and re-send it to
the API. It reads failed XML data from the queue. The Transaction
Assistant is not part of Workforce Integration Manager; it is part of
Workforce Central.
7. Any errors found by the Transaction Assistant are submitted directly to
the API. Data without errors is processed and updates the database.
Errors are sent to the FailedXML API, which update the database and the
cycle continues.

Changing the time-out value


If network traffic is slowing the execution of testing your interfaces and links, it is
possible to change the default time-out value to something that is appropriate for
your environment.
1. Select Admin > Change Timeout Values
2. Increase the API or database values.

My notes on API imports


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

7-4 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 7: Creating a Pay Code Edit Import

Lesson 2: Creating the Import


Creating a pay code edit import provides a simple and useful example of an API
import. It is important to learn the basics which can later be applied to more
complex imports.

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Lesson objectives
After completing this lesson, you should be able to:
 Create a pay code edit import
 Use a choice field in an import
 Preview API import data

Defining the import


Pay code edits for import typically come from third-party systems where the hours
and their respective pay codes are created in some fashion.
 Automatically based on some schedule
 Telephone entry of time
 Point of sale systems with employees logging on/off terminals

In all cases, the data must be brought into the Workforce Timekeeper system for
further processing and storage.
Workforce Integration Manager can read this data, format it, and send it to
Workforce Timekeeper via the API. The API then validates the data and stores it
in the appropriate tables in the database.
This scenario provides a good introduction to the Workforce Central Import
methodology found in Workforce Integration Manager.

Example
Acme Corporation has a web application written by their programming staff that
allows employees to enter their time in a simple way. The data is stored in a
proprietary database. The application also provides some standard exports from
the database to comma-separated text files.
Acme Corporation does not want to make the employees change the way they are
entering their time. The company does want to take advantage of using Workforce
Timekeeper as the final destination for the employee’s data.

© 2015, Kronos Incorporated or a related company. All rights reserved. 7-5


Workforce Integration Manager
Basic Interface Programming
Module 7: Creating a Pay Code Edit Import

To do this, you will need to create an interface that uses the standard export as
the source and sends the data to the correct Workforce Central API so it can be
stored as pay code edits in the Workforce Timekeeper system.
As a preliminary step, you should obtain a file layout diagram of the source file.
Make sure it is accurate and includes a sample or test file that you will use during
the interface development process.

Defining the output


Because the destination is Workforce Timekeeper, you need to select Workforce
Central Import as the Output Type. This Output Type creates XML data that is
sent to the API.
Complete the mandatory fields:
 Workforce Central application server name
 Login name, use import
 Password, use kronites
 Workforce Central database version

You can use variables as part of the Batch Name.


Selecting the correct database version is critical to the success of the import!

Updating schemas
The list of database versions is read from the available schemas. If you do not see
the correct version listed, you should import the schema from Workforce Central
Follow these steps to update the schema:
1. On the menu, select Admin > Update Schema Definition.
2. Supply the name of the Workforce Central application server.
3. Click Update schema now.
4. Optional. Select Enable automatic updates.

Schema updates are issued with Workforce Central service packs. Any given
service pack may or may not contain a new schema.

Creating the record


The next part of the interface building process is to create the record that identifies
the type of data you will be importing into the Workforce Central API. To complete
this task, you need to understand the purpose of the interface. In the example,
you are bringing in pay code information from the home-grown system.
The general steps you need to complete are:
1. Select the type of data you are importing, in this case it is the Pay Code
Edit.
2. Select the Action for the Data type: adding, deleting, or adding a
comment.
3. Provide a name for the record; this provides a short description of the
purpose of the record.
4. Provide additional comments that further describe the purpose of the
record.

Selecting a data type


The Data type field identifies the type of data to be imported. The complete list
depends on what Workforce products are installed. For example Workforce
Activities adds several items to the list.

7-6 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 7: Creating a Pay Code Edit Import

Selecting an action
The Action field identifies the operation that is performed on the Data type. It is
part of the task of defining the record.The available actions vary with the Data
type that is selected. The following table describes the actions for a Pay Code.

AddComment You can add a comment to an existing pay code edit.


AddOnly You can add a new entry but cannot update an existing one.
Delete You can delete an item only if it exists.

In this case, you are adding pay code edits to the Workforce Timekeeper system.
The only action that applies is AddOnly
The available actions are different for each Data type.
Often, but not always, the actions are equivalent to the request codes used for
table imports in previous versions of Workforce applications.

Note
The version of Workforce Timekeeper you select determines what
options are available to you on the Records/Tables tab. Workforce
Integration Manager gets this information from XML schema files.

Automatic naming
You must enter a name for a record. The name can be any text value. If you do
not enter a name and click OK, you will see a message that offers to default the
record name to the value of the Data Type.

Recommended practice
Name your records descriptively, for example, Add Pay Code Edit.
This makes the purpose of the record easy to identify in summary
view.

Reading the tree


After you define the record, Workforce Integration Manager builds the data
elements based on information in the XML schema using non-technical language.
The data elements are presented in a tree structure that illustrates the
relationship.

Parent
Children

Container
Choice

Required

© 2015, Kronos Incorporated or a related company. All rights reserved. 7-7


Workforce Integration Manager
Basic Interface Programming
Module 7: Creating a Pay Code Edit Import

One task is to identify the required fields, which are marked with an asterisk. You
must provide values for these fields or the import will fail.
There are four required fields found at the top level for a pay code edit:
 Amount of pay code, in time or currency
 Date to which the edit applies
 Employee
 Pay code

In the example, each of these values can be found in the source file.
If you do not supply values for the required fields, the link will not run.

Note
Not all required fields are marked with an asterisk. Some fields
become required based on the existence of data in another field.
These are conditionally required fields. The XML schema does not
recognize this type of required field.

Another task is to define actions for the required fields that provide legitimate
values. Because the values for the required fields are all found in the source file,
the action can be a simple transfer from source.
Another task is to determine which of the data elements you will need for optional
data.

Actions
The default action for definable data elements is Action is undefined, which is the
equivalent to Static Text of blank. Data elements with this action are not included
in the output.

Identifying the employee


You must provide some identification for the employee whose pay code edit you
are importing. The employee identification is found by locating the Employee data
element and tracking its children data elements, Person Identity Data and Person
number.

Person number is the default field for identifying the employee; Badge number is
also acceptable. Changing this field is described later.
In our example, the data for identifying the employee will come directly from the
source file.

7-8 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 7: Creating a Pay Code Edit Import

Identifying the date


If the source date format matches the format specified in the system settings in
the site.local.LONG_DATE field, usually m/dd/yyyy, you can skip specifying the
date format. If you need to specify the date format, use the fields specifically for
that purpose.

Identifying the pay code


If you are supplying the pay code name or ID, it must match the value stored in
the database. Although pay code names in the source system may match those in
Workforce Timekeeper, it is unlikely that the pay code IDs will match.

Identifying the hours


Hours may be expressed in either HH:mm or HH.hh format.

Verifying the employee


The Query name field and its children provide the API with a list of employees for
whom the pay code edit can be passed. The Query name field can be ignored if
the import is run by a system user such as import.
Whenever an API import involves a person, and the user is not a system defined
user, there is always a HyperFind query that provides a list of persons that is used
for validation. The default HyperFind query is All Home. This query is used if no
other query is specified.
System-defined users, such as import, do not validate an employee against a
HyperFind query.
If the Identity specified in the source, usually person number or badge number, is
not found in the list returned by the Hyperfind query, the import will fail for that
record. This logic does not apply if the user is import.

© 2015, Kronos Incorporated or a related company. All rights reserved. 7-9


Workforce Integration Manager
Basic Interface Programming
Module 7: Creating a Pay Code Edit Import

Naming the query


You will see the Query name field and all of its children in many different API
transactions.
In this case the Query name branch of the tree can be disabled. The primary
reason is that the interface uses the system-defined import user, so if no specific
HyperFind query is required. The second reason is that if no specific HyperFind
query is sent to the API, “All Home” is used.
Delete or disable the field by using the context menus available with a right-click.
If you find that you need to include a different HyperFind query other than All
Home, you can add the field back in and provide the name of the query and the
Visibility code.

Previewing the output


As part of the normal interface development process, you should preview some of
the data that will be imported. While previewing the data, check for the following:
 Is the data the correct value for the field?
 Is the data formatted correctly? For example, numeric fields contain only
numbers.
 Are optional fields being output only when they should?
 Are unwanted source records like headers and footers being included?

Workforce Integration Manager provides a method of previewing the data before


sending it to the application server. Click the Preview Data button.
 Choose non-technical view or XML
 View all or part of the output

Data elements with Action is undefined are not included in the output.

Note
Interface Designer must have a connection to the application server to
create the preview data.

Compare the values from random records in the source to the displayed output to
verify the values are correct.

My notes on defining a pay code edit import


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

7-10 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 7: Creating a Pay Code Edit Import

Testing and troubleshooting


Previewing the data is really the first step in the troubleshooting process. It should
catch errors that are obvious on a visual inspection. These errors should be
corrected and the preview should be re-run until no more obvious errors are
found.
When you are satisfied with the preview, run the link to view the application
server’s response. This finds errors that are not generally found when previewing
the data, for example:
 Values that do not match those found in the database
 Formatting errors detected by the API
 Required fields that do not have a value
 The person is not found in the database
 Values that are not valid for the type of field

Any errors returned by the API are directed to the error report that appears once
the link has completed its run. The error count is also noted on the Interface
Results Summary report.
Determining the cause of the error involves careful interpretation of the error
message returned by the API.

Examples
The following are typical errors when the ID for the person cannot be matched to
one in the database:
The action required an existing person, but either the
person for the key could not be found, the user does not have
rights to that person, or a database error occurred - Key XX.
The person could not be found with the specified ID: XX.

When a value in the import does not match a value in the database, you receive
an error such as:
The value assigned to the property could not be found - Name:
PayCodeName, Value: XXXX.

The message identifies the XML tag name (which usually resembles the
non-technical name) and the value sent to the API. In this case you need to find
the list of accepted values for this field and ensure that the value you are sending
matches one of those. Sometimes values are case sensitive.
Another error is generated when the API is expecting a numeric value and ends
up with text instead.
The value for the property is not valid. - Name:
AmountInTimeOrCurrency, Value: XXXX

Selecting a choice tag


In the example so far, you identified the employee by providing their person
number. It is possible that the customer might choose to identify the employee in
some other way, such as by their badge number.
In the Workforce Central API, the Person number is only one way of identifying an
employee. There are others:
 Badge number
 Database key values

Usually you know whether the source file gives you a person number or a badge
number, and you make the change for the identifier early in the link. However it is
also common that the provider of the source file makes a change, which requires
edits of the interface.

© 2015, Kronos Incorporated or a related company. All rights reserved. 7-11


Workforce Integration Manager
Basic Interface Programming
Module 7: Creating a Pay Code Edit Import

Person number is only one common example of a choice tag. Another example
for adding a pay code edit is the amount of time. There are two choices:
 Amount of pay code in time or currency
 Amount of pay code in time based on schedule

You need to understand the requirements of the interface in order to make a


correct selection.

The icon indicates an item where there is a choice of fields.


Change the tag by completing the following:
1. Access the choices by selecting the tag and right-clicking.
2. Select Change Field.
3. Select the replacement field from the list.
4. Choose other options to prompt for replacements if desired.
5. Select OK to make only the single replacement, or Replace All to cycle
through the link for all matching fields.
Only make this change before you define any actions for the data element
because all actions are deleted!

Including other data


So far you have provided the API with only the minimum required data. There are
however additional data elements available that provide additional functionality.
If you are going to use these optional fields, be certain that you understand their
functionality in the context of the Workforce Central system.

Labor account
When labor account data is part of the source file for a pay code edit, it usually
indicates that the time should be charged to a different labor account. This might
occur when an employee is on loan to a different department or other area.
The labor account information can be included as part of the pay code edit. There
are several ways to format the labor level information.
 102/202/302/404/502//
 102/202/302/404/502
 102/202/302/404/@H
 @H/202/302/404/502
 @H/@H/@H/405/@H

The full labor account string should be sent.


The @H notation indicates that the employee’s home account for the level is
used.

Comments
Comments can also be included. The data must match exactly how it is stored in
the Workforce Timekeeper database. The exact text of comments is stored in the
COMMENTS table.

Cleaning up the link


It is important to make the interface and link as easy to use as possible.
When you are satisfied the interface is working correctly, you should go back and
perform the following tasks:
 Delete unused data elements such as Action parameters and Query name
 Add comments where they are helpful
 Check for absolute path names wherever you reference a file
 Print a link configuration report for your records

7-12 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 7: Creating a Pay Code Edit Import

 Turn on the audit log to track changes in case of a problem

My notes on options and troubleshooting


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Handling import errors


When you are satisfied that the link is functioning correctly and you have cleaned
it up to remove the unnecessary field, you can consider the interface building
process complete. However the day-to-day running of the interface poses some
additional challenges depending on the accuracy of the source data.
It is not unusual for source data to contain some errors. In spite of all efforts to
ensure clean data, it is possible that faulty data can make its way into the source,
and cause errors that need to be corrected. There are generally two choices for
making the corrections:
 Examine the Workforce Integration Manager error log, correct the source
data, and resubmit the erroneous transaction.
 Let the API trap the error and store it for correction within the Workforce
Central application.

The first option is difficult because it involves sifting through raw data and
somehow identifying the bad data.
The second option is much easier. The API can feed data for an error to the
FailedXML API which in turn feeds the Workforce Central Transaction Assistant.
The Transaction Assistant is a Workforce Central utility that is useful for cleaning
up import errors. You should always have Workforce Integration Manager submit
errors to the Transaction Assistant because it lists each error.You can supply
values for just the bad data—without having to locate the data in the source
file—and reprocess the problematic records.

Using the Transaction Assistant


The Transaction Assistant is launched from Workforce Central.
By default, the Transaction Assistant displays errors from the last 72 hours. The
default setting of 72 hours can be changed in Workforce Central by modifying the
value in the System Settings.
The summary view provides basic information about the failed transaction.
The basic steps for handling errors in the Transaction Assistant are:

© 2015, Kronos Incorporated or a related company. All rights reserved. 7-13


Workforce Integration Manager
Basic Interface Programming
Module 7: Creating a Pay Code Edit Import

1. Select the error from the list.


2. Determine what field needs to be corrected and make the correction.
3. Click Resubmit. If the correction is accepted, the error disappears from
the list of errors. Otherwise, you receive another error.

Editing transactions
The Transaction Assistant displays each transaction based on the data included
when it was sent from Workforce Integration Manager. Details for the erroneous
transaction are found in the edit window.

Make the corrections and resubmit the data. Workforce Integration Manager is no
longer part of the process. The Transaction Assistant submits the corrected data
directly to the API.

Common error scenarios


After an interface is complete and has been tested, it should work well, provided
that the source data matches the structure and format that Workforce Integration
Manager and Workforce Central expect.
Import errors fall into the following categories:
 Random errors scattered throughout the source can often be corrected
using the Transaction Assistant.
 Massive failures for a majority of records in the source often require
changes in setup data.
 Failures due to missing data in the import cannot be fixed using the
Transaction Assistant.

Massive errors, such as including a labor level in the source file that is not in the
Workforce Central database, can be corrected by adding the labor level, selecting
all the failed transactions, and resubmitting them. This saves you the work of
re-running the Workforce Integration Manager interface.
Failures due to missing data cannot be fixed in the Transaction Assistant. The tool
only displays the fields it is sent. If you do not send a field, it will not appear in the
erroneous transaction and therefore cannot be fixed. Your only solution here is to
correct the link and re-run the interface.

7-14 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 7: Creating a Pay Code Edit Import

My notes on handling errors


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Running import reports


When you have completed the interface and initial testing, it is time to view the
outcome in the Workforce Central application.
Import reports in Workforce Central provide statistics and error lists about import
batches.
The statistics report should be run every time you process an import. The report
tells you quickly if there were any problems with the import that need to be taken
care of.
If you have no errors on your statistics report, you know there is no need to run an
error report or to use the Transaction Assistant.
If you do find errors listed on the statistics report, you should then run an error
report for details. By examining the types of errors you can make a determination
about the best approach to repairing the errors.
If the errors were from API imports, use the Transaction Assistant, if appropriate,
to fix the errors.
Workforce Central tracks all API imports. You can run reports on the imported
data.

The name of the batch is determined by Workforce Integration Manager. By


default, the batch name is the file name of the link.

My notes on import reports


________________________________________________________________
________________________________________________________________
________________________________________________________________

© 2015, Kronos Incorporated or a related company. All rights reserved. 7-15


Workforce Integration Manager
Basic Interface Programming
Module 7: Creating a Pay Code Edit Import

Summary
Remember the following key points:
 There are many different APIs available in Workforce Central.
 API import is the preferred method for bringing in data to Workforce
Central.
 API import is faster and it is a single-step process.
 You do not need to know XML in order to write an API import with
Workforce Integration Manager.
 The Data type identifies the data being imported.
 The Action is dependent on the Data type.
 The record is built based on data from the XML schema.
 Required fields are marked with an asterisk.
 Data elements that end with a question mark must have True or False as a
value.
 Employees are generally identified by their person number or their badge
number.
 Some fields have choices for what data is supplied. For example Person
number and amount of hours.
 Preview your output before sending it to the API.
 Test and troubleshoot with test data.
 Remove or disable fields that are not used

7-16 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 8: Creating a Personality Import

Module 8
Creating a Personality Import
Personality imports are one of the most commonly defined interfaces. They are
also among the most difficult to define.

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Module objectives
After completing this section you should be able to:
 Describe the typical options for source data
 Create an import for a Workforce Timekeeper Employee
 Create an import for a Workforce Employee
 Create an import that handles multiple employee types in a single file

© 2015, Kronos Incorporated or a related company. All rights reserved. 8-1


Workforce Integration Manager
Basic Interface Programming
Module 8: Creating a Personality Import

Lesson 1: Creating a Person Import


Importing person data is one of the most common interfaces written to the
Workforce Central system. It is also one of the more complex APIs. It is important
to expand your knowledge of API imports to include persons.

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Lesson objectives
After completing this lesson, you should be able to:
 Create a basic person import

Overview
One common task with implementing a new Workforce Central system is to load
that system with information about employees. Using the Workforce Central
import is the most efficient way of entering the information.

Advantages
There are advantages of using an import for person data:
 Saves time spent on data entry
 Eliminates errors that would be caused by manual entry of data

Basic and additional person data


There is some core people data that may be imported into Workforce Central. A
few examples are:
 Employee name
 Address
 User name
 Profiles

The Personality Data import provides the means to import the core data.
Because Workforce Central is a flexible system with different components, such
as Workforce Activities, and Workforce Scheduler, there are additional APIs to
import people data associated with the different components.
All of the additional components require that the basic person data be present in
the system before any additional imports are run.
The information for the additional components may come from the same source
file and may be part of the same import. Additionally, the add-on components may
impose requirements for data found in the basic person import.
Examples of people data required by add on components are:
 Activity employee settings
 Skills and certifications
 Seniority data
 Scheduling employee settings

8-2 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 8: Creating a Personality Import

Example
Acme Company is implementing a new Workforce Central system. To avoid typing
in the employee data, they have chosen to bring in as much data as possible from
their human resources system. This system contains many of the key fields they
want to have in the Workforce Timekeeper system.
Their human resources database has pre-defined utilities that make it easy to
export employee information to a delimited text file. The Kronos implementation
team plans to used this text file as the source of the data for the import.
The Kronos implementation team will configure the Workforce Timekeeper system
with the exception of employee data and will use Workforce Integration Manager
to write an import link to bring the data in via the API. They realize that they will
need to determine how to supply values for fields that are needed in Workforce
Timekeeper but do not exist in the text source file.

HR Employee Extract Workforce Timekeeper

Last name Last name


First name First name
Number Number
Address Address
Phone Phone

?
Pay rule
Labor
Account
Profiles

Questions to answer
You need to understand the following:
 What data you have available in your source?
 How the Workforce Central system is configured?
 What types of persons will the import source include?
 What data can be determined from the source?
 What data can be directly transferred?
 What data can be assigned default values?

Defining the source and output


The source of the information is typically another database, so you need to
consider the options for extracting the data from the database.
 Write your own SQL query
 Write your own text file extract
 Use a pre-defined view or query that is part of that database
 Use pre-defined text file extracts

The source may not contain all of the data. There are fields which are unique to
Workforce Central, such as pay rule and labor account, that may not be part of the
source data. Consider the options.
 Determine the value based on other data in the source
 Default the value to the most common case

If the field is required, you must supply a valid value in the import.

© 2015, Kronos Incorporated or a related company. All rights reserved. 8-3


Workforce Integration Manager
Basic Interface Programming
Module 8: Creating a Personality Import

If the field is optional, you need to first decide whether or not you want the data in
Workforce Central at all, and if you do, what is the most efficient way of getting the
value correctly entered.

Creating the record


Create the record in the usual way; right-click and select Add from the context
menu.

The Personality Data Data type is the person import for the core Workforce
Central data. If you have additional Workforce applications with their own special
imports for person information, they will be run after the Personality Data import is
complete.

Actions
There are four possible actions for Personality Data:
 AddOnly
 Delete
 Update
 UpdateOnly

Determining the required fields


Because part of writing the interface to import people, it is important to determine
what data is required. Keep in mind that there are two definitions for “required.”
 The fields that must be present for the API to successfully complete the
import.
 The data that the customer wants to be transferred to the Workforce
Central system.

The second is the critical criteria and is usually a superset of the first.

Using default values


The Workforce Central system allows you to set up default values for many of the
fields such as access profiles and display profiles. One approach for importing
data is to set the default, import the data, and then manage the exceptions on a
case-by-case basis.

8-4 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 8: Creating a Personality Import

What is the minimum data?


The minimum data necessary for a person import depends on the type of person
you are importing. The type refers to the licenses the person holds. There are
basic licenses that employees can have in the Workforce Central system.
 Workforce Timekeeper Employee
 Workforce Employee
 Workforce Manager
 Mobile Employee
 Tablet Employee

There are additional licenses for other Workforce Central applications that may
affect what fields are required.

Importing a Workforce Timekeeper employee


A Workforce Timekeeper employee typically uses a data collection device to
record his/her time. They do not use a Workforce Timekeeper web interface at all,
so any settings related to the web client are generally ignored.
A Workforce Timekeeper employee has the following required fields:
 Labor account or job
 Pay rule
 Employment status
 Person number
 Last name
 Is the license active? (1)
 License (1) (name or number)

Other types of employees will have different required fields.


Other fields such as the Hire date field and profiles are not strictly required,
however if you do not fill in a value, the API assumes default values. In the case of
the Hire date, it is the date that the transaction was processed, which may not be
the correct date.
Effective dates are defaulted to the date the API processes the record. Expiration
dates are defaulted to 01/01/3000.

Where are the fields?


Finding the required fields can be a bit of a challenge. The following table will help
you get started.

Field Top Level Location


Labor account Job assignment
Pay rule Job assignment
Badge Person
Employment status Person
Person number Person
Hire date Person
Last name Person
Is the license active? Person
License Person

© 2015, Kronos Incorporated or a related company. All rights reserved. 8-5


Workforce Integration Manager
Basic Interface Programming
Module 8: Creating a Personality Import

My notes on importing a Workforce employee


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Importing a Workforce Employee


Including Workforce Employees as part of the initial setup of a Workforce Central
system is common. This means including more data as required by the
application. If you have separate sources for each type of person, you need to
create different links for each. If all type of persons are combined in a single
source, you need to find a way to handle optional fields for each within the link.
Remember that Workforce Employee must also hold a Workforce Timekeeper
Employee license.

What is required?
A Workforce Employee has the following required fields:
 Labor account or job
 Pay rule
 Employment status
 Person number
 Last name
 Is the license active? (2)
 License (2)
 User name
 Password
 Account status of the user

The user name and password are located under the top level User data branch.
Remember to supply a hire date unless you want it defaulted to the current date.

Licenses
The Workforce Employee needs to have two licenses.
You will need to add a second set of license data elements. The icon
indicates that you can include multiple instances of this field.

Licenses are controlled by the Is the license active? field. If the field has a value of
FALSE, the license is not selected in the Workforce Central GUI.
To insert a second instance of a field and its children do the following:
1. Select the field with the icon.
2. Right-click and select Add Field from the context menu.
3. Select the desired field from the list presented. This list is context sensitive
based on the selected field so only one option may be available.
4. Choose to copy the actions from the existing selected field if desired.
Copying may save some time.
5. Click OK. The field is inserted in the proper relationship to the other fields.

8-6 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 8: Creating a Personality Import

Programming license logic


The decision to grant a license is usually based on some value in the source file.
The business rules will determine how the logic is programmed.
The general rule is to use some control value to set the Is the license active field
to TRUE or FALSE.
Assign String :Payrule
If == “Professional Hourly”; new calculation
Assign String “TRUE”
Assign String “FALSE”

The License field is the name of the license.


If there are several pay rules that would make the value TRUE, add additional IF
statements. Always make the FALSE option the last block of the calculation.
This logic can be expanded for all of the available licenses.

License types
Licenses can be identified by name or number.

License License Name


Type
1 Workforce_Timekeeper_Employee
2 Workforce_Professional_Employee
3 Workforce_Manager
4 Workforce_Accruals_Employee
5 Workforce_Activities_Employee
9 Workforce_Scheduler_Employee
10 Workforce_Attendance_Employee
11 Workforce_HR_Employee
12 Workforce_Leave_Employee
13 Workforce_HR_Interactive_Employee
14 Workforce_Record_Manager
21 Workforce_Mobile_Manager
22 Workforce_Mobile_Employee
23 Workforce _Tablet_Manager
24 Workforce _Tablet_Employee
25 Analytics _Tablet_Manager

Generally license information can be found in the LicenseType table.

© 2015, Kronos Incorporated or a related company. All rights reserved. 8-7


Workforce Integration Manager
Basic Interface Programming
Module 8: Creating a Personality Import

Handling licenses
You need to understand the customer’s business logic for assigning licenses.
Consider the three basic licenses for Workforce Central.
Some simple license scenarios are illustrated in the following table.

License Description
Workforce Workforce Workforce
Timekeeper Employee Manager
Employee
Yes No No Punches at clock
Yes Yes No Enters time via web
Yes Yes Yes Manager who enters his own time
and manages employees
No No Yes Manager only, does not enter time
Yes No Yes Manager who punches at a clock

Managers may have different combinations of the licenses. You need to


understand the precise requirements of the implementation. If a manager is
always going to hold a Workforce Employee and Workforce Timekeeper
Employee license, you will not have to program the other combinations.
If the manager can have a combination of the other two licenses, you need to
determine which of the other licenses are required and program accordingly.

License example
Acme Company has only three types of employees:
 Those who only punch at a clock
 Those who enter their time via the web
 Those who manage employees via the web and record their own time via
the web.

If you examine the possibilities in a table, it looks like this.

License
Workforce Workforce Workforce
Description
Timekeeper Employee Manager
Employee
Yes No No Punches at clock
Yes Yes No Enters time via web
Yes Yes Yes Manager who enters his own
time and manages employees

Furthermore, the licenses held by an employee are determined by the employee’s


pay rule, which is contained in the source file.
Because all employees need the Workforce_Timekeeper_Employee license, it is
a simple matter to use static text to set the Is the license active? field to TRUE.
Use calculations to set the Is the license active? field to the correct value based
on the pay rule. Examine the pay rule and use Boolean IF statements to set the
value to TRUE or FALSE.

Programming the user account status


Employees with Workforce Professional Employee licenses must have data about
their user account included in the import. However, if you include user account

8-8 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 8: Creating a Personality Import

data for all employees, the import may fail unless the employee has the correct
license.
The challenge is to create calculations that provide the correct data when needed,
and provide no data at all when the fields are not needed.
The Fail Field option in Workforce Integration Manager makes it possible to select
when to place values in a field and when to not include the field in the output at all.
Use a calculation to process the logic. Begin by loading the calculation with a
value from the source that will determine whether or not the field needs to be
included in the output.

Example
Whatever information you used to assign the Workforce Professional Employee
license can usually determine whether or not an employee needs to have user
information included.
If the pay rule is the determining factor, you would program the following
calculation for the Account status of the user:
Assign String :Payrule
If == ‘Professional Hourly’; new calculation
Assign String ‘Active’
If == :Payrule; return as field failure

In the case where several pay rules would make the value Active, you would
include multiple IF statements before the final IF that fails the field.
A similar calculation needs to be included for every field related to being a user:
 Person number (Identity) for user
 Account status of the user

The following is a possible calculation for the Person number field:


Assign String :Payrule
If == ‘Professional Hourly’; new calculation
Assign String :EmpID
If == :Payrule; return as field failure

My notes on Importing a Workforce Employee


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

About contact types


Contact types are used for:
 Phone number
 Address
 E-mail address

The Workforce Central database can support multiple contact types, however, the
application restricts the contact type choices.
The definition of telephone numbers can use up to three user-defined contact
types. E-mail addresses and postal addresses are limited to two contact types:
home or work.

© 2015, Kronos Incorporated or a related company. All rights reserved. 8-9


Workforce Integration Manager
Basic Interface Programming
Module 8: Creating a Personality Import

Postal address and e-mail address


When providing postal address or e-mail address information via the Personality
data import, the contact type must be Home or 5 or Work or 4 (the numbers are
the CONTACTTYPEIDs defined in the CONTACTTYPE table).
You can use either contact type for postal and e-mail addresses. However, be
aware that the Workforce Central GUI only displays the home postal address and
the work e-mail address.
If the interface calls for importing additional postal or e-mail addresses, add a
second set of the desired fields. Ensure that the Category of contact value is set
correctly.

Telephone number
When providing telephone number information via the Personality import, the
contact type must be one of the three site-defined labels configured in Setup
Applications > Display Preferences > Site Defined Labels > Telephone Field
labels. You may also use the corresponding CONTACTTYPEID.

Label CONTACTTYPEID
Telephone Field 1 1
Telephone Field 2 2
Telephone Field 3 3

The basic Personality data import comes with only a single set of fields for
telephone contacts. You can create up to three sets of Telephone number.

About custom data and dates


Custom Data and Custom Date are similar to telephone numbers and postal
addresses because the API requires a value for Type of custom data. The value
must match values defined in the Workforce Central application. The defined
values can be found in the setup applications or in the CUSTOMDATADEF table.
The basic Personality data import comes with only a single set of fields for
Custom Data. You can create up to ten sets of Custom Data.
Custom Date must also have a value for Type of custom date. The value must
match exactly, those defined in the application.
Other examples of fields that can include multiple instances are those that have
effective dates.
 Badge assignment
 Overtime Assignment
 Access Assignment
 Employment status
 Primary labor account

8-10 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 8: Creating a Personality Import

Updating person information


It is not uncommon to have updates for existing employees included in the same
source as new employees. The Update action for Personality data allows both
adding and updating. There is no need to run separate links or interfaces.
The Update action will update a record if it exists and will add the record if it does
not exist.
Source.TXT Workforce Timekeeper

Ann, Amber, 123, 34 A St,... Update Ann, Amber, 123, 34 A St,...


Bob, Blue, 345, 987 Com... Add Cara, Crimson, 798, 4 Ro...
Cara, Crimson, 798, 4 Ro... Update
Ed, Ecru, 941, 88 Quay ... Add

Do not use UpdateOnly unless you are certain the source contains only
employees who already exist in the Workforce Central system.

Example
Acme Company maintains all of their employee information in their human
resources system, separate from their Workforce Central system. The Workforce
Central system contains a subset of employee data that is necessary for running
the labor tracking functions.
It is important that employee contact information, such as telephone numbers and
addresses be available in the Workforce Central system, so that managers can
have access to that information in case they need to contact an employee. For
example, if the manager needs to call in extra employees to meet an unexpected
demand, he must have current telephone numbers.
Another example is contacting employees to come in to perform emergency
maintenance. It is better to call someone who lives closer than someone who lives
50 miles away. Current address information will assist the manager in making the
correct decision.

Updating requirements
The Personality data import has different requirements for updating employees
than it does for adding new employees. Some of these are:
 Where the employee is identified
 Not overwriting Workforce Central specific fields with blanks
 Not resetting passwords

Identifying the person


When you are updating a person, you need to first identify the person. If you
examine the tree structure for Personality data, you will find several instances
where Person identity data is required. The top level identifiers for these are listed
below:
 Identity
 Job assignment data
 Personal overtime assignments
 Primary labor accounts
 Person data
 Badge assignments
 Employment statuses
 Access assignments
 User account statuses
 User data

© 2015, Kronos Incorporated or a related company. All rights reserved. 8-11


Workforce Integration Manager
Basic Interface Programming
Module 8: Creating a Personality Import

The Identity of the person for an Update action must be established in the first
top-level Identity branch.

You need to supply the identifier in any location where you have an action that
supplies other data under a first level field. So if you are supplying data for fields in
each of these areas, you need to supply the person identifier in each case. Use a
variable.

Keeping existing values


When you are updating person information, the source may contain blanks for
data that is remaining the same. If the interface passes the blank to the API, the
API may return an error or Workforce Central may overwrite existing data with the
blank. Neither situation is desirable.

Examples
Fields that are not required, such as the postal address fields, may be failed if
they are blank. The interface can pass blank values regardless if the employee is
new or existing.
Field that are required for new employees, such as the pay rule, may not be failed
if the source contain a blank. Existing employees already have a pay rule, so
failing the field is an option.
If the pay rule value has not changed for an existing employee, the source
contains a blank. The interface cannot pass a blank value because the API would
return an error. Pay rule is a required field for most employees.
If the existing employee’s pay rule is changing, the source contains the new pay
rule which must be passed to the API.
Another example is the default password for a user account. If the source file
contains the default value or a blank, this would overwrite the existing password
which has likely already been changed in Workforce Central.

Determining if a person exists


To correctly define some fields in the Personality data import, you need to
differentiate between employees who do exist in the system from those who do
not currently exist in the system
To complete this task you need the following:
 Special lookup table of all the employee numbers and statuses
 Variable to return the status of new or current.

Defining the special lookup


Define the special lookup table to be a SQL query that returns the employee
number, or whatever value matches the value in the source, and the employee
status.
SELECT PersonNum FROM vp_person

The employee status is used later in determining active and inactive employees.

8-12 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 8: Creating a Personality Import

Defining the calculation


Create a variable, :EmpStatus, that is evaluated once for each source record.
The action for the variable is a calculation:
Assign String Lookup :EmpID in column 1 of the special
lookup, return column 1, default to static text of ‘NEW’ if
the lookup fails.

If the employee ID exists in Workforce Central, it is found in the lookup table and
is the value that is returned. If the employee ID does not exist in Workforce
Central, the calculation returns the static text value of “NEW.”
You can use the “NEW” value for the employee status to fail fields that are used
only for updating employee records. One example of this is the Person number in
the top level Identity field.
You can also use the “NEW” value for keeping existing values when updating
records and for handling blanks in the source file.

Handling blank values for non-required fields in the source


For fields that are not required, such as postal address, it is sufficient to fail the
field if it is blank and to transfer it if it is not blank. There is no need to differentiate
between new and existing employees.
Assign string =& :POSTALADDRESS
If == ‘’ return as field failure

Handling blank values for required fields in the source


The key to handling blank values for required fields is to first decide whether or
not the employee represented in the source record is new or existing. This can be
easily handled by a special lookup table and a calculation.
If the employee is new, the interface reads a value from the source file. If the
employee already exists, the source file contains a blank, unless the value is
changing. The interface needs to respond to all of the possibilities.
The following calculation would handle the situation:
Assign string =& :EMPSTATUS
If == ‘NEW’ return with a new calculation
Assign string =& :Payrule
If != ‘NEW’ return with a new calculation
Assign string =& :Payrule
If == ‘’ return as field failure

Similar logic would be used wherever the source could contain blanks for fields
that are not changed.
Another option would be to use a special lookup table to return the existing pay
rule for existing employees.

My notes on updating employees


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

© 2015, Kronos Incorporated or a related company. All rights reserved. 8-13


Workforce Integration Manager
Basic Interface Programming
Module 8: Creating a Personality Import

Inactivating and terminating employees


Changing the employment status to inactive or terminated requires updating the
employee’s Employment status field and in some cases the Account status of the
user to a value of Inactive or Terminated. This value is usually read directly
from the source file or is determined by examining other values in the source.
Inactive employees maintain the licenses assigned and may have other person
information updated. The exception is that an inactive employee may not be
terminated.
Terminated employees may not be updated until their employment status is set to
inactive or active.
The Employment status field may have values of Active, Inactive, or
Terminated. Each word value has corresponding numeric value of 1, 2, or 3.
The list of values and names is found in the EMPLOYMENTSTAT table.
The Account status of the user field may have the same three values as the
Employment status field. If an employee is set to an inactive or terminated status,
the accepted practice is to set the Account status of the user field to a
corresponding value.
If only the Employment status field is set to inactive and the Account status of the
user field has an Active value, the employee may appear in Genies and may be
able to logon to the system but not be able to perform any tasks.

Example
The source file contains the employee’s status in field 20 which defines the
variable :SourceStatus. The possible values are Active, Inactive, and
Terminated. Because these match the acceptable values, they may be
assigned to the Employment status field directly or with a variable.
The Account status of the user field requires a calculation to account for each
possibility.
If the source indicates active, then check the pay rule, or other determining value,
to decide which value to assign. For example, user accounts are only assigned to
employees with certain pay rules.
If the source indicates inactive or terminated, the calculation must check the pay
rule in the same manner so that ineligible employees do not end up with a
terminated or inactive user status.
Assign String :SourceStatus
IF == ‘Active’ return with new Calculation:
Assign String :Payrule
IF == ‘Professional Hourly’ return with new Calculation:
Assign String ‘Active’
IF == ‘Professional Salaried’ return with new
Calculation:
Assign String ‘Active’
IF == :Payrule return as Field failure
IF == ‘Inactive’ return with new Calculation:
Assign String :Payrule
IF == ‘Professional Hourly’ return with new Calculation:
Assign String ‘Inactive’
IF == ‘Professional Salaried’ return with new
Calculation:
Assign String ‘Inactive’
IF == :Payrule return as Field failure
IF == ‘Terminated’ return with new Calculation:
Assign String :Payrule
IF == ‘Professional Hourly’ return with new Calculation:
Assign String ‘Terminated’
IF == ‘Professional Salaried’ return with new
Calculation:
Assign String ‘Terminated’
IF == :Payrule return as Field failure

8-14 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 8: Creating a Personality Import

IF == :SourceStatus return as Field Failure

Reactivating inactive or terminated employees


Consider this scenario: Acme Company has a large number of seasonal
employees who return to work every year. To avoid all of the work of terminating
and rehiring the employees, they are marked as inactive, and all of their data
remains in the system. Occasionally an employee who has been terminated is
rehired.

Using HyperFind queries


When importing data via the Personality data transaction, you may need to use
the Name of query tag (for all actions except AddOnly). If you use a
system-defined login name such as import, you do not need to use the Name of
query tag at all unless you wish to restrict the employee list to a subset of the
whole.

Note
If you are using a non-system account (ex. PSuper, JAdams, etc.), a
HyperFind name must always be supplied. Several system accounts
like Import and SuperUser enjoy additional privileges which will allow
the omitted Query name element to deleted or disabled during import.

Other person related imports


In Workforce Central there are several imports with related person data. All of
these require that the basic person data be present. The list below is a partial list
of possibilities.

Workforce Timekeeper
Personality Data*
Process Profiles Assigned to a Person*
Seniority Date*
Working Time Directive Employee Assignment
Employee to Processor
Employee Group Assignments

Workforce Scheduler
Shift Template Profiles Assigned to Employees
Certifications Assigned to Employees*
Minor Employee Information
Rule Sets Assigned to Employees*
School Calendar Profiles for Managers
Skills Assigned to Employees*

Workforce Scheduler with optimization


Auto Scheduler Option Set Profile for Managers
Employee Job Preferences
Employee Schedule Preferences
Forecast Map Profile for Managers

Workforce Activities
Activities Employee Data*

© 2015, Kronos Incorporated or a related company. All rights reserved. 8-15


Workforce Integration Manager
Basic Interface Programming
Module 8: Creating a Personality Import

Workforce Leave
Assign a Leave Profile to a Person

Workforce Attendance
Workforce Attendance Employee Profile
* Also found in Workforce Central v5.0.

My notes on inactivating and reactivating employees


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Summary
Remember the following points about this section:
 Importing employees is a common task when implementing a new
Workforce Central system.
 Importing employees reduces errors and the amount of time required to
populate the system.
 The Workforce Central API provides a fast and efficient method for
transferring data from the source to the proper location in the Workforce
Central application.
 Sources for person data can be text files or SQL queries.
 Workforce Central provides several default values for profile information.
 If you use the AddOnly action for a Personality import, the person cannot
already exist in the database.
 Use multiple fields with TRUE/FALSE values to indicate what licenses an
employee has.
 Use calculations to toggle the value of the Is the license active? field.
 Values for many required fields must match those already in the Workforce
Central database.
 Some values for required fields can be found by looking in the tables or
views of the Workforce Central database.
 Some fields are dependent on the licenses an employee holds. One
example is Account status of the user. Use a calculation to set the value or
fail the field.
 Use special lookup tables to determine if a person exists in the database.
 Use the fail field feature in calculations to exclude fields from the output.
 The top level Identity tag identifies updated employees. It should be failed
for new employees.

8-16 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 9: Other Sources and Outputs

Module 9
Other Sources and Outputs
There are other source and output types available in Workforce Integration
Manager. They may not be used as frequently as the ones you have already
covered, but they are still important.

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Module objectives
After completing this module you should be able to:
 Create a simple API Export
 Examine a XML Document extract

© 2015, Kronos Incorporated or a related company. All rights reserved. 9-1


Workforce Integration Manager
Basic Interface Programming
Module 9: Other Sources and Outputs

Lesson 1: About other sources


Workforce Integration Manager supports sources other than text files and SQL
queries. It also supports the following source types.
 Workforce Activities
 Workforce Central API export
 Lookup tables
 XML document

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Lesson objectives
After completing this lesson, you should be able to:
 Describe each of the other sources supported by Workforce Integration
Manager

Workforce Activities Data


There are two source types that extract Workforce Activities data.
 Workforce Activities Data
 Workforce Activities Changed Data

The Workforce Activities Data source type extracts all activities related data for a
date range. You must define a date range by using variables named
:EVENTSTART and :EVENTEND. The implementation of this source type is
beyond the scope of this course.
The Workforce Activities Changed data source type depends on values found in
another table that contains information about when the last export took place.
Workforce Integration Manager accesses the Workforce Central database
through SQL queries to a views.
 Uses standard views
 Standard list of commonly requested data
 Over 70 different fields are available

Typical Activities data you can extract includes:


 Status
 Quantity
 Hours per pay code
 Hours per labor account
 Activity results such as quantities

9-2 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 9: Other Sources and Outputs

Using API Export


Workforce Central APIs provide access to much of the data in the system without
the need to understand where the data is located in the database.
This source type provides the following advantages over the Workforce
Timekeeper and SQL Query source types:
 More Workforce Central data is readily available.
 Raw data is processed on the application server rather than in Workforce
Integration Manager.
 New features are automatically supported via the API.
 The data that is exported can be encrypted using the Secure Sockets Layer
(SSL) protocol.

You must provide logon information for the application server on the source tab.
This source type requires another tab, Source Configuration, to further define
what data is returned by the API.
There are over 300 API exports that can be selected.
Select the API you wish to use and the action. Actions are usually to load the data
for export.
In some cases you may need to supply additional information in order to export
the data.

Steps for defining an API export


Perform the following steps:
1. Select Workforce Central API Export as the source type.
2. Enter the Connection name for the application server.
3. Select the database version.
4. Click the Source Configuration tab.
5. Select the API transaction from the list.
6. Select the Action for the transaction.
7. Provide values to define the API request.
8. Define the remainder of the link.

Updating schemas
Using API export requires that the API schema be present. Schema updates are
delivered in service packs.

Defining source configuration


The full list of API transactions is available in the drop-down text box. The names
of the transactions describe the data that the API returns.
The actions for the source are dependent on the API transaction selected.
 LoadAll returns data about all of the selected items.
 LoadByID returns a single item, you must supply the identifier.
 Load returns a single item, you must supply some type of identifier for the
item.
Some items, typically those with the LoadAll action, do not require additional
information to return the data.
If you need to supply identifiers or names, the list of fields appears in a tree-like
structure in the API transaction definition window. There may be one or more
required values. Required fields are marked with an asterisk.

Defining records
Defining records is similar to how other sources and output are handled; however,
there is one significant difference. You must select the field that acts as the
interval for the record.

© 2015, Kronos Incorporated or a related company. All rights reserved. 9-3


Workforce Integration Manager
Basic Interface Programming
Module 9: Other Sources and Outputs

When you click Select Field, you will get another dialog box with a tree-view of
the top level element.

Select the top level element for the record interval.

XML Document
Use the XML Document source type to extract data from any XML file for which
you can provide an acceptable XML schema document. The schema is necessary
for Workforce Integration Manager to understand the content and structure of the
XML file.
Workforce Integration Manager enables you to select elements from the schema
that represent the information you want to extract from the XML source file.

Lookup table
Lookup tables as a source behave similarly to a delimited text file. The difference
is that the lookup table is stored in the Workforce Central database.
When you use the Lookup Table source type, you need to understand the
structure of the lookup table, just like you need to understand any other text
source. The columns represent the fields and each row of the table represents a
record.

SAP® ERP
The SAP ERP source type is specially designed to exchange data with the SAP
ERP software. When used in conjunction with specially designed templates,

9-4 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 9: Other Sources and Outputs

Workforce Integration Manager can exchange data between Workforce Central


and SAP.
Using and modifying this type of interface is beyond the scope of this class.

My notes on other source types


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

© 2015, Kronos Incorporated or a related company. All rights reserved. 9-5


Workforce Integration Manager
Basic Interface Programming
Module 9: Other Sources and Outputs

Lesson 2: Using other output types


Workforce Integration Manager supports several other output types.
 ADP Output
 Dual field ASCII
 Lookup table
 Workforce HR/Payroll import
 XML document

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Lesson objectives
After completing this lesson, you should be able to:
 Describe each of the other destinations supported by Workforce
Integration Manager

Defining ADP output


ADP has a special record format. Workforce Integration Manager does much of
the formatting behind the scenes. Contact your Kronos representative for
information about this Output type
The following fields are available for the ADP Output type.
 Mapped Folder and Output Path/Filename
 Company code
 Batch number
 Combine records

Caution
Do not modify the ADP templates except for the actions or deleting
fields that are not needed. If fields are added or existing ones
modified, the link may not work.

The following shows a sample of the Data Exchange format:


Co Code,Batch ID,File #,Pay #,Job Cost#,Tax Frequency,…
ccc,EPIP50,10,, ,,, ,,,,,,,,,,C,16.00,,,,,,
ccc,EPIP50,13,, ,,, ,,,,15.00,,E,15.00,,,,,,,,,,
ccc,EPIP50,46,, ,,, ,,,,16.00,,,,,,,,,,,,,
ccc,EPIP50,47,, ,,, ,,,,16.00,,,,,,,,,,,,,
ccc,EPIP50,48,, ,,, ,,,,16.00,,,,,,,,,,,,,

Variables are acceptable as part of the file name for the output file.

Defining dual field ASCII output


This is a special file type that was originally used for Ceridian payroll interfaces.
 It is essentially a flat text file.

9-6 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 9: Other Sources and Outputs

 The system looks for two special data element names, Pay Rate and
Earnings
 These are actually treated as one field and occupy the same position in the
output file.
 If the category being processed represents hours, the Pay Rate field is
used.
 If the category represents wages (dollars), the Earnings field is used.

Note
The Pay Rate and Earnings data elements must be the same length
and be next to each other in the Records/Tables listing. This is a fixed
length text file, delimiters are not allowed.

This output type supports batch processing.

Lookup table
Lookup tables as output are stored in the Workforce Central database. They may
be used as a source for a different link or as a true lookup table in the traditional
sense.
When you use the Lookup Table output type, you need to understand that the
structure of the lookup table is determined by the structure of the record. The data
elements become the values in the columns.
There are two fields for the Lookup table Output type.
 Output Table Name
 Append records to any previous lookup table

Defining a Workforce HR/Payroll import


The Workforce HR/Payroll output type provides pre-configured templates for
importing data into the Workforce HR/Payroll application.
 Import mechanism is the database import tables
 Select the type of import desired
 Select the action

After this decision is made, Workforce Integration Manager creates the necessary
data elements and presents them in tree format.
For details on the various record data types consult the Workforce HR/Payroll
integration documents.
You only need to supply:
 Login name
 Password (database)
The options for the Data Types are read from the schema.

Defining HR/Payroll import records


Use the Edit Record dialog box to begin defining the record.
The Data type identifies the type of import. There are three choices:
 Batch compensations
 Batch control
 Batch withholding

The only Action is Update for all three data types.

© 2015, Kronos Incorporated or a related company. All rights reserved. 9-7


Workforce Integration Manager
Basic Interface Programming
Module 9: Other Sources and Outputs

Data elements
After you have define the record, Workforce Integration Manager builds the data
elements based on information in the schema.

Defining an XML Document output


Use the XML Document output type to output your source data to an XML
document. Workforce Integration Manager allows you to create the XML
document according to an XML schema file that defines the structure of the XML
required by the destination application.

Requirements
The requirements are that you have an XML schema document (.XSD) that meets
W3C schema requirements.

My notes on other output types


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Summary
The key points of this section are summarized below.
 Workforce Central API Export provides easy access to data without the
need to construct SQL queries.
 Exporting data via the APIs requires selecting the API and action, and
defining any required parameters
 Records are defined by selecting a top level record interval element.
 The Transfer from source action for data elements provides a tree-like
structure for selecting the data from the available fields for the API
transaction.
 Workforce Integration Manager can use a lookup table as a source type.
 Workforce Integration Manager can extract data from XML documents.
 Valid schemas must exist for any XML document sources.
 The ADP Output type should only be used with an approved template.
 The Dual Field ASCII type produces a fixed length Text file.
 The Dual Field type has special naming constraints for the data elements.
 Workforce Integration Manager can use a lookup table as an output type.
 Workforce Integration Manager can create XML output if it has a valid XML
schema.

9-8 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 10: Using Other Features

Module 10
Using Other Features
There are several additional features of Workforce Integration Manager that
provide useful functionality when creating interfaces. It is important to understand
how to use this functionality, so that it can be programmed when necessary.

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Module objectives
After completing this section you should be able to:
 Create a link that sorts the output
 Enable the Batch Processing tab
 Create a link that uses batch processing for output
 Use the Batch Data action
 Create batch headers and footers
 Create interface level overrides for links
 Create an e-mail notification for an interface
 Create a desktop shortcut to run Workforce Integration Manager
 Run a link configuration report
 Enable the Audit Log
 View an audit log report
 Define Date and Time locales for Workforce Integration Manager links

© 2015, Kronos Incorporated or a related company. All rights reserved. 10-1


Workforce Integration Manager
Basic Interface Programming
Module 10: Using Other Features

Lesson 1: Sorting output records


Sometimes the output from a link needs to be sorted to meet requirements. It is
important to know how this works in Workforce Integration Manager and what the
options are.

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Lesson objectives
After completing this lesson, you should be able to:
 Use the sorting feature

Sorting output
Normally, output records are created in the same order they were extracted from
the source. You can sort those output records on up to three fields as defined in
the detail-level record.
Some of the instances in which records need to be sorted in an output file include,
but are not limited to:
 Sorting by date (typical for scheduling systems)
 Sorting by employee type (typical for person imports into Workforce
Central)
 Sorting by employee number
 Sorting by labor levels; home and/or worked account (typical for payroll
systems)
 Sorting by weeks (typical for payroll systems)

This greatly reduces the need for multiple links and temporary database tables.
The sort option is only available for Text file output and only detail-level records
can be sorted.

Note
The sorting feature is dependent on having SQL Express installed.
SQL Express is part of the normal installation, but it is an option and it
can be omitted. If SQL Express is not present, the sort options are
dimmed.

10-2 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 10: Using Other Features

Sort order
The sort order for each field is based on the data type of the output field.

Output Field Type Type Of Sort


Text Alphanumeric (lexical)
Numeric Numeric
Time Duration (HH:mm) Numeric
Date/Time Date/Time

Be careful when using fields where the action is a variable and the data type of the
field does not match the data type of the variable. The data type of the field takes
precedence.
A common example is where a date value is stored in a variable but the output
field has a text data type. A sort on the output field would be lexical, not date, so
unexpected results may occur.
The sort options are found on the Output tab when the output type is text file.

Limitations
Text fields included in the sort are only sorted on the first 255 characters. The
exception to this are the Job worked and Primary job fields from a Workforce
Timekeeper source which are sorted on the first 2000 characters.

Cautions
Interface Designer returns errors for the following situations:
 Deleting or disabling a record that is included in the sort list
 Deleting or disabling a field that is included in the sort list
 Defining a sort record but not defining sort fields

Options
Sorting on a field requires that the field be defined as a data element. However, it
is possible to sort on a field and not include it in the output. Select the Used only
for sorting check box in the Output Field dialog box.

© 2015, Kronos Incorporated or a related company. All rights reserved. 10-3


Workforce Integration Manager
Basic Interface Programming
Module 10: Using Other Features

Lesson 2: Using batch processing


Batch processing functionality allows you to manipulate the output in several
different ways. These include:
 Creating separate output files
 Including subtotals
 Defining batches using selected criteria

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Lesson objectives
After completing this lesson, you should be able to:
 Enable batch processing
 Describe the different batch intervals
 Create batch output for a text file source
 Create batch output for a Workforce Timekeeper source

Overview
Batch Processing allows you to have more control over the output file
 Additional record types within the file
 Options for determining what constitutes a batch
 Number of records in the files
 Name multiple output files by using the batch identifier as a prefix or suffix
 More options for the Batch Data action

The additional record types (record creation intervals) are:


 Batch Header
 Batch Footer

Header “ABC Company”,01/01/01


Batch Header “Batch Number”,1
“001”,“AdamsA”,8.00,“REG”
“001”,“ChuC”,8.00,“REG”
Detail
“001”,“JonesJ”,8.00,“REG”
“001”,“SmithS”,8.00,“REG”
Batch Footer “001”,“TargelT”,8.00,“REG”
Footer “Batch Record Count”, 5,”

Depending of the source of the data, batches can be defined by:


 A fixed number of detail records
 Labor level
 Weeks

10-4 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 10: Using Other Features

Steps for defining batch processing


Batch Processing is enabled on the Output tab and is available if the output type
is text file or Dual Field ASCII.
1. Select the Batch Processing option on the Output tab.
2. Click the Batch Processing tab and select the batch separator and batch
location.
3. Define additional records and data elements as required.

Defining batches based on record count


Use the Record count option to define a batch by the maximum number of detail
records that are allowed. This option is available for all source types.
The Maximum number of records refers to the number of detail records
 Only detail level records are counted towards the batch limit
 Header, batch header, batch footer, and footer records are not included in
the count
 The last batch may contain fewer than the maximum number of records

Batch location
You can choose to have all of the batches:
 In a single output file
 In multiple uniquely-named output files

If you select separate files for each batch:


 The path and core name of the files comes from the Output tab
 The Batch identifier (number) is used as part of the file name, either as a
prefix or a suffix

If the file name on the Output tab is Payroll.txt, then the separate batch files may
have names like ones shown in the following table.

1Payroll.txt Payroll1.txt
2Payroll.txt Payroll2.txt
3Payroll.txt Payroll3.txt

© 2015, Kronos Incorporated or a related company. All rights reserved. 10-5


Workforce Integration Manager
Basic Interface Programming
Module 10: Using Other Features

Defining batch records


After you enable batch processing, you have two new record intervals available:
 Batch header, which appears at the start of each batch
 Batch footer, which appears at the end of each batch

There is no limit as to the number of batch header/footer records that you can
define.
 They can be used in conjunction with other records
 You can also apply qualifiers

There are additional actions that can be added to records.


 Batch identifier
 Total number of batches
 Total number of records in batch
 Sum of batch output field

The appearance of the batch intervals in the Edit Record dialog box depends on
batch processing being enabled, not the source type.

Defining batch data actions


The Batch Data action has additional capabilities when batch processing is
enabled. The options available depend on what record type the data element
using the Batch Data action belongs to.
 You can select only one option for a given action.
 Batch identifier
 Total number of batches
 Total number of records in batch
 Sum of batch output field

Creating batches by labor account


Batches by labor account divide the output based on the primary labor account of
the employee.
 Only available when the source is Workforce Timekeeper
 Specify which labor account is used to determine the batches

If the value is set to 1, then only the first labor level is used; if it is set to 2, then
only the second labor level is used, and so on.

10-6 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 10: Using Other Features

For example, consider the following output records.

Employee Primary Labor Account


Able 101/201/301
Baker 101/201/301
Jones 101/201/333
Smith 101/202/345
Thomas 101/202/345
Walton 101/233/355

 If the Labor level used to separate accounts is set to 1, there will only be a
single batch because the first labor level does not change.
 If the level is set to 2, there are three different batches; one for the 201
level, one for the 202 level, and one for the 233 level.
 If the Labor level used to separate accounts is set to 3, there are four
different batches.

Additional parsing
Furthermore, you can perform additional parsing by using offsets and lengths.
Use this in situations where a single labor level is used to store more than one
level. For example, the first five characters contain the division and the next four
characters contain the location.

Batch location
With the labor account method of separating batches, there are always separate
files for each batch. Workforce Integration Manager uses the labor account name
as the prefix or suffix of the filename.
If the file name on the Output tab is Payroll.txt, then the separate batch files
have names like those shown in the following table.

202Payroll.txt Payroll202.txt
212Payroll.txt Payroll212.txt
222Payroll.txt Payroll222.txt

Creating batches based on weeks


This option is only available if the source type is Workforce Timekeeper. The
weeks are based on the time period selected on the Source tab.

Weeks are defined as seven day intervals starting from the first day of the time
frame chosen on the Source tab and ending on the last day of the time frame.
This behavior can be modified by specifying the start day of the week.

© 2015, Kronos Incorporated or a related company. All rights reserved. 10-7


Workforce Integration Manager
Basic Interface Programming
Module 10: Using Other Features

Previous or current pay period of one week beginning on Monday.

S M T W Th F S
X Batch 1
Batch 1 X X X X X X
X X X X X X X
X X X X X X X

There is only a single batch.


Previous or current pay period of two weeks beginning on Wednesday.

S M T W Th F S
X X X Batch 1
Batch 1 Batch 2
Batch 2 X X X X
X X X X X X X

There are two batches.


Range of dates starting on a Monday and ending 24 days later on a Thursday.

S M T W Th F S
X Batch 1
Batch 2
Batch 3
Batch 4 X X

There are four batches.

Batch location
You can choose to have
 All of the batches in a single output file
 Separate files for each batch of records

If you select separate files for each batch:


 The path and core name of the files comes from the Output tab
 The batch identifier (number) is used as part of the file name, either as a
prefix or a suffix

If the file name on the Output tab is Payroll.txt, then the separate batch files may
have names like those below

1Payroll.txt Payroll1.txt
2Payroll.txt Payroll2.txt
3Payroll.txt Payroll3.txt

The identifiers begin at 1 and increment by 1 for each new week.

10-8 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 10: Using Other Features

Splitting output files based on day of the week


This feature allows you to specify the starting day of the week when you are
creating batch output for weeks within the selected time frame for a Workforce
Timekeeper source.
The primary purpose is to make it easier to create overtime averaging reports for
companies that have monthly or semi-monthly payrolls and that must do FSLA
reporting. This requires analyzing the same seven-day period each time the report
is filed.
Normally, the first day of the week for creating batches is the first date of the
selected date range. If you select the option to specify the starting day of the
week, you will override the default functionality.

Constraints
If the period start date for the batch isn't the same day of week as the start day of
week selected by the user, the first batch file generated will represent less than a
full week of data. It will start with the first day of the specified batch period, and will
end with data from the day preceding the start day of week.
At the same time, if the period end date for the batch isn't the same day of week
as the day preceding the start day of week, the last batch file generated will
represent less than a full week of data. It will start with the start day of the week,
and will end with data from the period end date.
You are alerted to either of these conditions.

Example
Start day of the week: Thursday
Start of batch period: 3/3/2009 (DOW: Tuesday)
End of batch period: 4/3/2009 (DOW: Friday)

Batch Dates Description


1st batch file: 3/3 to 3/4 (Start of period: Tues, through end-of-week: Wed)
2nd batch file: 3/5 to 3/11 (Thurs - Wed)
3rd batch file: 3/12 to 3/18 (Thurs - Wed)
4th batch file: 3/19 to 3/25 (Thurs - Wed)
5th batch file: 3/26 to 4/1 (Thurs - Wed)
6th batch file: 4/2 to 4/3 (Thurs - Fri: end of period)

My notes on batch processing


________________________________________________________________
________________________________________________________________
________________________________________________________________

© 2015, Kronos Incorporated or a related company. All rights reserved. 10-9


Workforce Integration Manager
Basic Interface Programming
Module 10: Using Other Features

Lesson 3: Another look at interfaces


Interfaces are the top level unit deployed to, and executed from, Workforce
Central. There are some critical options related to interfaces that can have an
impact on the user experience when the interface is run. It is important to
understand these options.

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Lesson objectives
After completing this lesson, you should be able to:
 Explain the purpose of interface runtime overrides
 Configure and deploy an interface that allows runtime overrides

Interface overrides
An interface is a package for one or more links that are executed in a defined
order. The order of the links is determined by their placement in the interface
(step).
Each link in the interface contains settings that can be overridden at runtime,
provided that the interface programmer configured the interface to allow
overrides. These settings are those found on the Source and Output tabs.
Naturally the fields that can be overridden depend on the source type and output
type.
Each step in the interface has an Interface Overrides Link Options check box.

This option is accessed by double-clicking the step name. If the option is selected,
the user will have access to the runtime options in Workforce Central. If the option
is not selected, the interface will not allow overrides.
If the option is selected, you will see the possible overrides for the selected link
below the list of interface steps.

10-10 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 10: Using Other Features

Changing the settings


The runtime options, or overrides, are configured in Workforce Central.
1. Select Interfaces from the Data Integration tab.
2. Select the interface you wish to run.
3. Click the Set Runtime Options tab.
4. Select the step in the interface for which you want to set the override
options.
5. Select the Source, Output or Interface Variables tab and configure the
options.
6. Click Save and Return.
If you have multiple links in an interface, you need to repeat the steps for each
link.

Caution
It is important to note that if you make a change to a setting at the link
level, that change is not automatically propagated to the interface
level. You must use the Reset Link Run Options check box.

Interface Level Variables


The interface editor includes a Variables tab. Use the Variables tab to define
interface variables. An interface variable is evaluated once for an interface; its
value can be reused in the links referenced by the interface. You determine where
the value of an interface variable is reused by assigning the interface variable to
variables defined in the links. At runtime, the value of an interface variable
overrides the value in any link variable to which it is assigned.

Note
You can only assign interface variables to preopen link variables.

The variables tab is divided into two sections. Use the top portion to add and
define interface variables. Use the bottom portion to assign interface variables to
link variables.
One typical use case for interface level variables is when an interface contains
several independent links that may need to access different databases. Links

© 2015, Kronos Incorporated or a related company. All rights reserved. 10-11


Workforce Integration Manager
Basic Interface Programming
Module 10: Using Other Features

often have to individually provide the database connection and mapped folder
information. If this information changes frequently, you would need to change it in
every location it is used, in every link. But, if the designations are referenced as
variables and assigned at the interface level, the task becomes a simple one of
changing the value at the interface level and the new value is passed to all links in
the interface.

Using commands as interface steps


Overview
A step can contain an operating system command that will be executed rather
than a link. The command in the step needs to be a command script for the
operating system in which the Workforce Integration Manager server is executing.
The command cannot be an operating system command or an executable. It must
be a command script. The command is executed in a separate operating system
process from the J2EE server.
The script can perform several tasks such as:
 Copying or moving files
 Renaming files
 Changing the working directory
 Running executable files
It is important to remember that the interface is actually running from the
Workforce Central application server. This is true even if you are running the
interface or link from Interface Designer.
The implication of this is that when you supply pathing information for commands,
you treat the commands as if they were executing from the application server
working directory, not the Interface Designer working directory. The Windows
operating system using JBoss executes commands from the \Kronos\jboss\bin
directory.

Syntax
The syntax for the command line in the interface depends on the operating
system as well. For Windows the simple syntax is shown below.
@MappedFolder@\command_script

The various parts of the command are explained in the following table.

Text Description
@ This is the default character for indicating the beginning and end
of a mapped folder name.
The character is set in the knx.engine.RunCommandVarDelimiter
which is located in the Data Integration System Settings.
MappedFolder The name of the mapped folder that points to the location of the
command. The name is not case-sensitive.
command script The script or batch file name you want to execute.

Batch files
If you are executing a batch file, you should ensure that you use absolute paths to
identify the source and destination. This practice avoids confusion. The following
is a sample of copying using absolute paths:
copy c:\Kronos\InterfaceDesigner\file.txt
c:\Kronos\InterfaceDesigner\Payroll\file.txt

10-12 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 10: Using Other Features

If you are copying files to another server, be sure to include the server name and
shared folder information:
copy c:\Kronos\InterfaceDesigner\file.txt
\\HR-Serv\Employee\file.txt

Output from the script


When you are executing the script, you need to provide for the standard output
and the standard error output from the script. Workforce Integration Manager does
not handle either of these streams. The result is that the script or batch file
appears to hang.
A simple way to address this is to redirect the streams in the command step. For
example:
@MappedFolder@\prepData.bat > @MappedFolder@\prepData.log
2>&1

The standard output of prepData.bat is redirected to the file prepData.log


and any errors are written to the same log file.

Deploying parts of an interface


This feature permits revised Interfaces, links, and tables to be individually
selected and re-deployed to the Workforce Central database. Just like a full
deployment, only saved components can be deployed.
The system confirms overwrites of any components with the same name.
Selecting Admin > Deploy Interface brings up the Deploy Interface dialog box.

Clicking Deploy deploys all the interface components.

© 2015, Kronos Incorporated or a related company. All rights reserved. 10-13


Workforce Integration Manager
Basic Interface Programming
Module 10: Using Other Features

Clicking Deploy Components brings up a different dialog box.

Here you can select the components you want to deploy.


 Interface
 Links
 Tables

My notes on interfaces
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

10-14 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 10: Using Other Features

Lesson 4: Notification
Another feature of Workforce Integration Manager interfaces is the ability to
provide notification to selected users regarding the success or failure of the
interface execution. It is important to understand the requirements and limitations
of this feature.

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Lesson objectives
After completing this lesson, you should be able to:
 Configure e-mail notification for Workforce Integration Manager
\

Overview
Workforce Integration Manager provides a method for appropriate users to
receive an e-mail when an interface completes processing or when the
processing fails.
This feature allows select users to determine the success of the interface without
having to access the results in Workforce Central.
The message can be sent via:
 K-mail to Workforce Central users
 External e-mail addresses
 Lists of users defined by a hyperfind query

Requirements
To send e-mail, Workforce Central must be installed and Process Manager must
be up and running. The EMS service must be configured to allow the SMTP
protocol. The SMTP service must be running as well.
Messaging, k-mail, must be set up in Workforce Central. Process Manager does
not need to be installed or running.

Constraints
The E-mail notification feature does have some restrictions.
 An external mail server must be available and configured in Workforce
Central
 Recipients cannot send replies
 There are no error messages for invalid external E-mail addresses

© 2015, Kronos Incorporated or a related company. All rights reserved. 10-15


Workforce Integration Manager
Basic Interface Programming
Module 10: Using Other Features

Configuring notification
Notification is configured at the interface level.

Steps to configure notification


1. Launch Interface Designer and open an interface.
2. Click the Runtime Parameters tab of the interface.
3. Select the Workflow Notification check box.
4. Supply the Application server name, Login name, and Password.
5. Add the mail recipients. These can be k-mail users, HyperFind queries, or
e-mail addresses.
6. Specify the type of notification each person or group receives. The choices
are Always after an interface runs or Only when errors occur.
7. Save the changes.

There is a search function for K-mail users.

Adding recipients
When you click Add, you can add multiple recipients.

My notes on notifications
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

10-16 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 10: Using Other Features

Lesson 5: Using command line options and creating


shortcuts
Interfaces are primarily executed from within Workforce Central. However, there
may exist a requirement that calls for executing interfaces from a shortcut on the
desktop. It is important to know how this works if you ever need to implement the
scenario.

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Lesson objectives
After completing this lesson, you should be able to:
 Configure an interface to run from a desktop shortcut

You can run the Workforce Integration Manager utility from the command line. The
syntax is:
“C:\Kronos\InterfaceDesigner\KNX.EXE” /run=InterfaceName
/switch
You can use the following list of commonly used command line switches when
Workforce Integration Manager is run from a shortcut or a command line prompt.
 /run=”Interface_Name”
 /current
 /previous
 /range
 /ignoresignoff
Additional options are found in the online Help.

Creating shortcuts
Typically, a link is not run from the Workforce Integration Manager runtime
environment; it is set up as a shortcut on the end user’s desktop.
To set up a shortcut on the desktop:
1. Right-click anywhere on the Windows Desktop.
2. Select New > Shortcut.
3. At the Command Line prompt, specify the path of the knx.exe file. Also use
the command line parameter:
/run=”Interface_Name“

where Interface_Name is the file name of the interface.


The Target entry is:
“C:\Kronos\InterfaceDesigner\KNX.exe” /run=”FirstLink”

© 2015, Kronos Incorporated or a related company. All rights reserved. 10-17


Workforce Integration Manager
Basic Interface Programming
Module 10: Using Other Features

Options
You add switch settings following the /run= entry.
To specify the previous pay period for a Workforce Timekeeper source, add the
/previous parameter as follows:
“C:\Kronos\InterfaceDesigner\KNX.exe” /run=”FirstLink”
/previous

My notes on command lines and shortcuts


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

10-18 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 10: Using Other Features

Lesson 6: Running a configuration report


A configuration report is an important part of the interface development process. It
describes the settings for the link in detail. Should you ever have to reconstruct
the link, the configuration report contains all the information necessary to
reconstruct the link.

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Lesson objective
After completing this lesson, you should be able to:
 Run a link configuration report

Configuration report
The configuration report provides a detailed description of the link
 Presented in functional areas for easy reference
 Run the report when the link is complete

Steps to run a configuration report:


1. Open the link for which you want to run the report.
2. Select Reports > Link Configuration Report from the menu.

My notes on configuration reports


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

© 2015, Kronos Incorporated or a related company. All rights reserved. 10-19


Workforce Integration Manager
Basic Interface Programming
Module 10: Using Other Features

Lesson 7: Using the audit log


The Audit Log provides a method for recording the initial configuration of an
interface and any changes made to the original configuration.
 Helpful when diagnosing why a link is no longer functioning correctly.
 If the user cannot remember what changes were made, the Audit Log may
provide the answer.
 Changes are maintained as part of the link.
 Snapshot of the initial configuration of the link when the audit log was
turned on the first time.
 Contains a list of the last 100 (configurable) changes made to the link.

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Lesson objectives
After competing this lesson, you should be able to:
 Turn on the audit log
 Run an audit log report

Using the audit log


To enable the audit log for a link, open the link, then do the following:
1. Select Admin > Audit Log > Properties. The Audit Log Properties
dialog box appears.
2. Select the Audit Logging is in effect check box.
3. Modify the other settings as needed.
4. Click OK.
5. Save the link.

The Audit Trail has options.


 Audit Logging is in effect
 Configuration change items
 Restore defaults

Stopping the log


To stop audit logging for a particular link file:
1. Select Admin > Audit Log > Properties.
2. Deselect the Audit Logging is in effect check box.
3. Click OK.
4. Save the link.

10-20 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 10: Using Other Features

Viewing the log


The audit log for link changes is stored within the link itself. To retrieve an audit log
report for a particular link file
1. Select Admin > Audit Log > Report.
2. View the report or send it to the printer.

The log report


The contents of the Audit Log Report are detailed. Overall, there are three
sections in the report:
 The header section contains the date and time of when the snapshot was
generated and also the audit-log size parameters. These are discussed
later in this section.
 The snapshot configuration section contains both the configuration
parameters and the last modified timestamps of the lookup table files
accessed by the configuration at the time the snapshot was taken.
 The final section contains the Configuration change and link run event
details in chronological order.

Because there are several possible configuration changes, there are a series of
codes that explain some aspects of the changes when presented in the report. A
configuration change detail record consists of these columns:
 Date/time of change
 User interface location
 Status code
 Details of the change

After the report is run, it is found in the working directory with the name
link_name.AUD.

Purging the log


To purge the log:
1. Select Admin > Audit Log > Purge. A confirmation dialog box appears.
2. Read the information in the dialog and click Yes, No or Cancel.

My notes on the audit log


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

© 2015, Kronos Incorporated or a related company. All rights reserved. 10-21


Workforce Integration Manager
Basic Interface Programming
Module 10: Using Other Features

Lesson 8: Workforce Integration Manager and Locale


Policies
A Workforce Integration Manager link can be configured to use specific date and
time settings. However, if a locale policy is assigned to a user running the link, the
locale policy takes preference.

Why is this important to me?


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Lesson objective
After completing this lesson, you should be able to:
 Configure a locale policy for Workforce Integration Manager.
 Confirm that the Workforce Integration Manager locale policy operated
as it was defined.

Configuring locale policies for Workforce Integration Manager


To support multiple languages on a single application server that has Workforce
Integration Manager installed, you can specify time and date formats by locale in
the Data Integration section of the Locale Policy Editor.
To configure a locale policy for Workforce Integration Manager:
1. Select Setup > System Configuration > Locale Policy.
2. Select an existing locale policy, and then click Edit.
3. In the Data Integration section of the Locale Policy Editor, specify the time
and date settings for the locale.
4. Click Save.
5. Ensure that any users who run data integration interfaces are assigned the
locale policy.

Note
Use the Locale Policy field in the People Editor (Job Assignment >
Access Profiles).

10-22 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 10: Using Other Features

Note
The date and time settings specified in the locale policy override the
corresponding date and time system settings specified on the Data
Integration system settings tab. The Data Integration system settings
are used by default if the user is not assigned a locale policy.

Reviewing locale policy results


After a Workforce Integration Manager link has been run by a user that has a
locale policy assigned to them, the results can be viewed using the Interface
Results Summary.

© 2015, Kronos Incorporated or a related company. All rights reserved. 10-23


Workforce Integration Manager
Basic Interface Programming
Module 10: Using Other Features

In addition to viewing the Interface Results Summary, also review the output file to
confirm that the locale policy setting did, in fact, override the system settings or
any date/time settings on the Workforce Integration Manager link itself.

My notes on locale policies


________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________
________________________________________________________________

Knowledge check
1. Where is Batch Processing enabled?
________________________________________________________________

2. Do the Batch Separator options vary with the source type?


________________________________________________________________

10-24 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Module 10: Using Other Features

3. Does having batch processing enabled give you different record creation
intervals? Name them.
________________________________________________________________

4. Does having batch processing turned on give you additional options for the
Batch Data action?
________________________________________________________________

5. Does having batch processing turned on give you additional options for the
Transfer from Source Action?
________________________________________________________________

6. What is the maximum number of data elements that can be included in a sort?
________________________________________________________________

7. How is the working directory set when you launch an interface from a desktop
shortcut?
________________________________________________________________

8. When should you turn on the Audit Log?


________________________________________________________________

Summary
The following bullets summarize the key points of this section:
 You can sort text file output on up to three fields.
 Sorting is enabled on the Output tab.
 The type of sort used depends on the data type of the selected data
element.
 Batches are subdivisions of the regular output.
 Batch processing is enabled on the Output tab.
 Batch processing is available only for text file type output.
 Batches can be separated based on record count.
 Batches can be kept within a single file or placed in multiple files with an
identifier as part of the output file name.
 When batch processing is enabled, there are additional options for the
Batch Data action. The available options depend on the record creation
interval.
 Some link settings can be overridden at the interface level.
 You can send e-mail notifications for the success and failure of an interface
run.
 There are command line options available to run interfaces from the
desktop.
 Workforce Integration Manager interfaces can be run from a shortcut.
 An audit log is available to track configuration changes and runtime events
for a link.
 The audit log is off by default.
 The audit log should only be turned on after the link is deemed complete.
 The audit log report is stored within the Workforce Integration Manager link
file (*.KNX).
 The audit log has a purge utility.
 Date and time formats can be specified by locale.

© 2015, Kronos Incorporated or a related company. All rights reserved. 10-25


Workforce Integration Manager
Basic Interface Programming
Module 10: Using Other Features

10-26 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming
Course Summary

Course Summary
Conclusion
Thank you for your participation in class. You have successfully completed this
course and are on your way to applying what you’ve learned in class to your work.

Course objectives
After completing this course, you should be able to:
 Execute interfaces in Workforce Central
 Create simple interfaces using text files as sources and outputs
 Create interfaces that extract data from Workforce Timekeeper
 Create interfaces for importing data to Workforce Central
 Set up and configure administrative tasks

Additional skills practice, reference, and help


As you apply your new skills throughout your implementation and in your
workplace, access any of the following resources for practice, reference, and
help:
 KnowledgePass. If you have a subscription, access it on the Education
page in the Kronos Customer Portal (https://customer.kronos.com/). The
first time you access the Customer Portal, you will need to register for a
unique user name and password. You will need your Solution ID to do this.
 Web support on the Kronos Customer Portal.
(https://customer.kronos.com/). The first time you access the Customer
Portal, you will need to register for a unique user name and password. You
will need your Customer Solution ID to do this.
 Online Help in the product
 Kronos Global Support

Scan this code with your smart phone or tablet to find


Kronos course schedules, registration options,
learning paths, and much more.

XML Import Guide


Use the on-line XML Import Guide to help you determine the acceptable values,
formatting, and dependencies for each field.

© 2015, Kronos Incorporated or a related company. All rights reserved. 10-27


Workforce Integration Manager
Basic Interface Programming
Course Summary

Use online Help for context sensitive information. You can also use the index to
locate help on a specific topic. Online Help guides you through the necessary
steps for performing common tasks.

10-28 © 2015, Kronos Incorporated or a related company. All rights reserved.


Workforce Integration Manager
Basic Interface Programming

You might also like