Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

In this article

...

To check that if the amount of hours submitted by employees every week meet the amount of hours per week agreed in the employee's contract, we build this pipeline. It is a sub-pipeline of the parental pipeline of Booked Hours Notifications.

Expand

Send emails to employees

...

and their managers who do not book any hours

To retrieve the employee employees that has have not submitted hours yet and send them reminder emails to remind them about submitting the hours. It is a sub-pipeline Pipeline of the parental pipeline Parental Pipeline of Booked Hours Notifications.

...

Expand

Snap

Step

Configuration

Result/Output

Snap 1

Add and configure an Exact Online Read Snap ( to query Payroll - Employments data. 

Filter Employee from the parental pipeline using Filter Records table. Select ID and StartDate fields using Output field selection table.

All records of Employments data EmployeeHID from ExactOnline API.

Snap 2

Add a Structure Snap ) to restructure the fields from step1.

Please check the mapper settings in the pipeline. Please notice that for StartDate field, we will handle it using the expression: $StartDate.replace("/Date(","").replace(")/",""), and map it to $StartDate.

All records of mapped Employments data with reformed StartDate field.

Snap 3

Add and configure a new Exact Online Read Snap ) to query HRM - Schedules data. 

Filter Employment as $EmploymentId from the mapper of step 2 using Filter Records table. Select AverageHours fields using Output field selection table. 

All records of Schedules data filtered by employeeId from ExactOnline API.

Snap 4

Add a Filter Snap (to filter the data with condition of $AverageHours > $original.Hours to ensure that the number of contract hours is larger than the booked hours.

Schedules data filtered by the expression $AverageHours > $original.Hours.

Snap 5

Add and configure an Exact Online Read Snap () to query Payroll - Employees data. 

Filter EmployeeHID from the parental pipeline using Filter Records table. Select ID,BusinessEmail, FullName, Manager and FirstName fields using Output field selection table.

All records of Employees data filtered by EmployeeHID from ExactOnline API.

Snap 6

Add a Router Snap  to route to outputs, if the Manager is not null, route to the output0, else then route to the output1.

-

Snap 7

Once the Manager is not null, then add and configure a new Exact Online Read Snap ()  to retrieve the manager information via Payroll - Employees endpoint. 

Filter the ID as $Manager from Filter Records table. Select BusinessEmail fields using Output field selection table. 

The record of Manager data from ExactOnline API.

Snap 8

Add a Structure Snap ( to restructure the data stream after Read Snap.

Restructured data of the manager.

Snap 6

Snap 11

Add another Structure Snap ( after Router Snap (output1.

Restructured data of the employee.

Snap 9,12

Add Email Sender Snaps respectively ( to send emails to the employees and the managers (if available) of the employees. 

Result data of sending email to the employee and manager(if have).

Snap 10

Finally add a Join Snap (  to join the responses from Emails Senders.

Joined data of Result of sending email to the employee and manager(if have).

Send emails to employees who don't book enough hours and their managers

To retrieve the employee employees that did not submit enough hours and send them reminder emails to remind them for submitting the hours. It is a sub-pipeline Pipeline of the parental pipeline Parent Pipeline of Booked Hours Notifications.

...

Expand

Snap

Step

Configuration

Result/Output

Snap 1

Add and configure an Exact Online Read Snap

...

to query Payroll - Employees data. 

Filter EmployeeHID from the

...

Parent Pipeline using Filter Records table. Select ID, BusinessEmail, FullName, Manager and FirstName fields using Output field selection table.

All records of Employments data filtered by EmployeeHID from ExactOnline API.

Snap 2

Add a Router Snap

...

to route to output.

Route the output based on the following condition:

  • If the Manager is not null, route to the output0, else

...

  • route to the output1.

...

Snap 3

Add a Mapper

...

Snap after output0.

Map the employee data. 

The

...

mapped employments data with new field names.

Snap 4

Once the Manager is not null, then add

...

a new Exact Online Read

...

Snap. 

Configure the Snap to retrieve the manager information

...

through

Payroll - Employees endpoint. 

Filter the ID

...

$Manager from Filter Records table. Select BusinessEmail fields using Output

...

Field Selection table. 

The record of Manager data from ExactOnline API.

Snap 5

Add a Structure

...

Snap 

Configure the Snap to restructure the data stream after Read Snap.

Restructured data of the manager.

Snap 9

Add another Structure

...

Snap after Router Snap output1.

Restructured data of the employee.

...

Snap 6,10

...

Add two Filter Snaps.

Configure the Snaps to filter the employee emails that are not null.

The employee data with a valid email address.

Snap 7, 10

Add Email Sender Snaps

...

after two Filter

...

Snaps

Configure the Snaps to send emails to the employees and

...

their respective managers

...

Result data of sending email to the employee and manager

...

.

Snap 8

Add a Join Snap to join the responses from Emails'

...

Sender Snap.

Joined data of Result of sending email to the employee and manager

...

.

...