Batch Email: Difference between revisions

From eStream Software
Line 57: Line 57:
::* Go to '''Code''' tab.
::* Go to '''Code''' tab.
::* Insert the '''Procedure OnGetEmailSettings''' into existing payslip format.
::* Insert the '''Procedure OnGetEmailSettings''' into existing payslip format.
{| class="mw-collapsible mw-collapsed wikitable"
::{| class="mw-collapsible mw-collapsed wikitable"
! Procedure OnGetEmailSettings Script   
! Procedure OnGetEmailSettings Script   
|-
|-

Revision as of 08:29, 18 July 2017

Introduction

Batch email an add-on module to allow the payslip send via email to each of the employees email address.

Checklist

1. SQL Payroll version

  • SQL Payroll version must be installed and upgrade to version 91 and above.
  • Please contact to your local sales agent to get the latest SQL Payroll version.

2. Batch Email Module

  • Must add-on the batch email module.
  • Please contact to your local sales agent for more detail.

3. E-Mail Application

  • Make sure your computer had set a default E-mail application like Microsoft Outlook, Outlook Express, Mozilla Thunderbird or Windows Live Mail.

4. Employee Email

  • At Maintain Employee..., all employees must have at least 1 email address.
BatchEmail-00.jpg


  • Multiple email address, eg. user01@mail.com,user02@mail.com
Important:
1. Use comma to separate the different emails.
2. DO NOT have any spacing in between the emails.

Step by Step

[Payroll | Print Pay Slip...]
1. Select a process, ie. month end salary processed.
2. Click on Apply.
3. Click on Preview
BatchEmail-01.jpg


4. Select a payslip format. Press Ok.
5. Click on the Arrow Down beside the Export button.
6. Click on Export to E-Mail Client (Batch).See the screenshot below.
BatchEmail-02.jpg


7. Payslip has email successfully. It will show the message below.
[Employee name] Report of total x page(s) has been sent to recipient email user01@gmail.com.
BatchEmail-03.jpg


Error and Solution

1. Insufficient license rights to execute this function (Export to E-Mail Client (Batch)).
BatchEmail-06.jpg


Solution:
  • Make sure your license has turn-on the Batch Email module.


2. Procedure OnGetEmailSetting is missing. It is because payslip format copy from old version.
BatchEmail-07.jpg


Solution:
  • Open the payslip report designer...
BatchEmail-08a.jpg


  • Go to Code tab.
  • Insert the Procedure OnGetEmailSettings into existing payslip format.
Procedure OnGetEmailSettings Script
procedure OnGetEmailSettings(EmailSettings: TStrings);
var D: TfrxDataSet;
    vEmail, vName: Variant;
    lSubject : String;
begin
  lSubject :='Payslip For ' + GetMonth;
  D        := Report.GetDataSet('Employee');
  vEmail   := D.Value['Email'];
  if vEmail = Null then vEmail := '';

  vName := D.Value['Name'];
  if vName = Null then vName := '';

  if (vName <> '' ) and (vEmail <> '') then begin
    EmailSettings.Values['Recipients'] := vEmail;
    EmailSettings.Values['Subject']    := lSubject;
    EmailSettings.Values['Body']       := 'Dear Sir/Madam,' + #13 +
                                          'Please check the attachment for ' + lSubject + #13#13 +
                                          'Best Regards,' + #13 +
                                          <Profile."CompanyName">;
  end;
  //ID uses for display on progress dialog
  EmailSettings.Values['ID']        := vName;
end;



3. Payslip email no recipients specified.
BatchEmail-05.jpg


Solution:


4. Payslip doesn't send to recipient email.
BatchEmail-04.jpg


Solution:


See also