From 4e10be3c5d8084040d34df51e13adfe3d1fa6f7f Mon Sep 17 00:00:00 2001 From: SQLwilson Date: Thu, 23 Oct 2025 11:34:55 +0800 Subject: [PATCH 01/13] fix: Updated File folder content resolving markdown warning) --- docs/usage/File/import-data.md | 99 +++++++++++++++++----------------- 1 file changed, 51 insertions(+), 48 deletions(-) diff --git a/docs/usage/File/import-data.md b/docs/usage/File/import-data.md index f26bb09..7b80c47 100644 --- a/docs/usage/File/import-data.md +++ b/docs/usage/File/import-data.md @@ -7,7 +7,8 @@ tags: ["SQL Payroll", "Usage"] --- ## UBS Payroll -### Type Information/Data Import + +### Type Information/Data Import (UBS) 1. Maintain Branch (branch.dbf) 2. Maintain Category (category.dbf) @@ -18,62 +19,64 @@ tags: ["SQL Payroll", "Usage"] 7. Maintain Deduction (dedtable.dbf) 8. Maintain Employee (pmast.dbf) -### Requirement +### Requirement (UBS) + 1. UBS Payroll Version 9 and above 2. UBS Payroll Data (after restore) 3. SQL Payroll Application 4. Empty Database of SQL Payroll +### Steps (UBS) -### Steps If your pc do not install UBS Payroll follow step 1 , if you had install UBS Payroll in your pc IGNORE step 1 1. Extract your UBS Payroll file by using 7zip. -![1](../../../static/img/usage/file/data-import/ubs-step1.png) + ![1](../../../static/img/usage/file/data-import/ubs-step1.png) -- Download 7 Zip to extract UBS Payroll Backup file. -Download Path for 7 Zip : Window 32 Bits : https://www.7-zip.org/a/7z2501.msi Window 64 Bits: https://www.7-zip.org/a/7z2501-x64.msi + - Download 7 Zip to extract UBS Payroll Backup file. + Download Path for 7 Zip : [Window 32 Bits](https://www.7-zip.org/a/7z2501.msi) ,[Window 64 Bits](https://www.7-zip.org/a/7z2501-x64.msi) 2. Create a Empty Database in SQL Payroll -![2](../../../static/img/usage/file/data-import/ubs-step2-1.png) + ![2](../../../static/img/usage/file/data-import/ubs-step2-1.png) -![3](../../../static/img/usage/file/data-import/ubs-step2-2.png) + ![3](../../../static/img/usage/file/data-import/ubs-step2-2.png) -![4](../../../static/img/usage/file/data-import/ubs-step2-3.png) + ![4](../../../static/img/usage/file/data-import/ubs-step2-3.png) 3. Login the Empty Database of SQL Payroll -![5](../../../static/img/usage/file/data-import/ubs-step3.png) + ![5](../../../static/img/usage/file/data-import/ubs-step3.png) 4. Click File | Import Data | UBS Payroll -![6](../../../static/img/usage/file/data-import/ubs-step4.png) + ![6](../../../static/img/usage/file/data-import/ubs-step4.png) 5. Select the the extracted backup folder or UBS Payroll Directory Folder & Click Ok to Start Import -![7](../../../static/img/usage/file/data-import/ubs-step5.png) + ![7](../../../static/img/usage/file/data-import/ubs-step5.png) -If failed to connect and prompt message "Provider cannot be found. It may not be properly install". -You need to download and install the file "VFPOLEDBSetup.msi" from: https://www.microsoft.com/en-my/download/details.aspx?id=14839 + If failed to connect and prompt message "Provider cannot be found. It may not be properly install". + You need to download and install the file [VFPOLEDBSetup.msi](https://www.microsoft.com/en-my/download/details.aspx?id=14839) 6. Click Close to finish import. -![8](../../../static/img/usage/file/data-import/ubs-step6.png) + ![8](../../../static/img/usage/file/data-import/ubs-step6.png) 7. Go Human Resources | Maintain Employee to check all your Employee List imported successfully from UBS Payroll. -![9](../../../static/img/usage/file/data-import/ubs-step7-1.png) + ![9](../../../static/img/usage/file/data-import/ubs-step7-1.png) -![10](../../../static/img/usage/file/data-import/ubs-step7-2.png) + ![10](../../../static/img/usage/file/data-import/ubs-step7-2.png) -### FAQ +### FAQ (UBS) 1. Get message "Provider cannot be found ....it may not be properly installed" when try to import the UBS backup folder. Answer: The computer need to add Microsoft Visual FocPro Driver in ODBC Data Source Adminstrator (control panel) -## AutoCount Payroll -### Type Information/Data Import +## AutoCount Payroll (AutoCount) + +### Type Information/Data Import (AutoCount) 1. Company Profile (PROFILE) 2. Maintain Payment Method (BANK) @@ -83,32 +86,33 @@ Answer: The computer need to add Microsoft Visual FocPro Driver in ODBC Data Sou 6. Maintain Deduction (DEDUCTION) 7. Maintain Employee (EMPLOYEE) +### Requirement (AutoCount) -### Requirement 1. Backup of Autocount Payroll File which normally the file extention is P01 (Eg. SAMPLE COMPANY SDN BHD [2012] - 20120606.P01) 2. SQL Payroll Application 3. Empty Database of SQL Payroll +### Steps (AutoCount) -### Steps If your pc do not install UBS Payroll follow step 1 , if you had install UBS Payroll in your pc IGNORE step 1 1. Login the Empty Database of SQL Payroll 2. Click File | Import Data | AutoCount Payroll -![11](../../../static/img/usage/file/data-import/ac-step2-1.png) + ![11](../../../static/img/usage/file/data-import/ac-step2-1.png) 3. Select the Autocount Backup File & Click Open -![12](../../../static/img/usage/file/data-import/ac-step2-2.png) + ![12](../../../static/img/usage/file/data-import/ac-step2-2.png) 4. Click Ok To Start Import -![13](../../../static/img/usage/file/data-import/ac-step2-3.png) + ![13](../../../static/img/usage/file/data-import/ac-step2-3.png) 5. Click Close to Finish import. ## Others + ### Type Information/Data Import 1. Pending Overtime @@ -118,46 +122,45 @@ If your pc do not install UBS Payroll follow step 1 , if you had install UBS Pay 5. Pending Unpaid Leave ### Steps + Below example is import Pending Overtime & is applicable for other Attendance System 1. Click File | Import Data | [Select the Time Attendance] (eg ELID, SynGlobal Time Attendance, etc) -![14](../../../static/img/usage/file/data-import/others-step1.png) - + ![14](../../../static/img/usage/file/data-import/others-step1.png) 2. Click the 3 Dot Button to Open -![15](../../../static/img/usage/file/data-import/others-step2-1.png) + ![15](../../../static/img/usage/file/data-import/others-step2-1.png) -| Field | Properties | -|---|---| -|Data From|Is the path for the CSV file to be import.| -|New Setting...|Create New Setting for New Import.| -|Load Setting...|Use the saved Setting created/saved on last import from Database.| -|Load From File...|Use the saved Setting created/saved on last import from External XML File.| -|Manage Setting Button|For Delete the saved Setting created/saved on last import from Database (See below picture).| + | Field | Properties | + |---|---| + |Data From|Is the path for the CSV file to be import.| + |New Setting...|Create New Setting for New Import.| + |Load Setting...|Use the saved Setting created/saved on last import from Database.| + |Load From File...|Use the saved Setting created/saved on last import from External XML File.| + |Manage Setting Button|For Delete the saved Setting created/saved on last import from Database (See below picture).| -![16](../../../static/img/usage/file/data-import/others-step2-2.png) + ![16](../../../static/img/usage/file/data-import/others-step2-2.png) 3. Click Next -![17](../../../static/img/usage/file/data-import/others-step3-1.png) - -![18](../../../static/img/usage/file/data-import/others-step3-2.png) + ![17](../../../static/img/usage/file/data-import/others-step3-1.png) -|Field|Properties| -|---|---| -|Description|Setting Name.| -|Save button|Save the current setting for future use.| -|From row|From which row number in the CSV file start to import.| -|Separator Options|Type of separator in the CSV file.| -|Field|Which Column To Map and Import.| + ![18](../../../static/img/usage/file/data-import/others-step3-2.png) + |Field|Properties| + |---|---| + |Description|Setting Name.| + |Save button|Save the current setting for future use.| + |From row|From which row number in the CSV file start to import.| + |Separator Options|Type of separator in the CSV file.| + |Field|Which Column To Map and Import.| 4. Click Finish button after finish select & Map all the fields. -![19](../../../static/img/usage/file/data-import/others-step4.png) + ![19](../../../static/img/usage/file/data-import/others-step4.png) 5. Click Ok -![20](../../../static/img/usage/file/data-import/others-step5.png) + ![20](../../../static/img/usage/file/data-import/others-step5.png) From 04527df254c067b2f58520737863b7b119b00192 Mon Sep 17 00:00:00 2001 From: yichensql-gif Date: Fri, 17 Oct 2025 09:33:37 +0800 Subject: [PATCH 02/13] refactor: change general img structure and fixed warning for pcb, socso and tools --- docs/faq/date-format.md | 34 ------------ docs/faq/error-calendarinfo.md | 22 -------- docs/faq/missing-code.md | 16 ------ docs/miscellaneous/pcb.md | 1 - docs/miscellaneous/socso.md | 4 +- docs/usage/general/batch-email.md | 50 ++++++++--------- .../general/change-payroll-description.md | 10 ++-- docs/usage/general/daily-pay-method.md | 15 ++--- docs/usage/general/final-payroll.md | 26 ++++----- docs/usage/general/online-mobile-approval.md | 36 ++++++------ .../usage/general/pcb-cp38-receipt-no-date.md | 12 ++-- docs/usage/general/zakat-tabung-haji.md | 32 +++++------ docs/usage/tools/maintain-diy.md | 52 +++++++++--------- docs/usage/tools/options.md | 4 +- .../batch-email/copy-template.png | Bin .../batch-email/email-client-filter.png | Bin .../batch-email/email-client-more.png | Bin .../email-client-print-payslip.png | Bin .../email-client-select-payslip.png | Bin .../batch-email/email-client-send.png | Bin .../employee-name-2-pdf-password-1.png | Bin .../employee-name-2-pdf-password-2.png | Bin .../global-pdf-password-usename-ic-pass.png | Bin .../batch-email/more-dropdown.png | Bin .../usage/{ => general}/batch-email/new.png | Bin .../batch-email/paste-employee-result.png | Bin .../batch-email/paste-employee.png | Bin .../batch-email/pdf-password-global.png | Bin .../batch-email/pdf-password-individual.png | Bin .../batch-email/smtp-app-password.png | Bin .../batch-email/smtp-company-profile.png | Bin .../{ => general}/batch-email/smtp-export.png | Bin .../{ => general}/batch-email/smtp-filter.png | Bin .../batch-email/smtp-print-payslip.png | Bin .../batch-email/smtp-select-payslip.png | Bin .../{ => general}/batch-email/smtp-send.png | Bin .../{ => general}/batch-email/template.png | Bin .../batch-email/wiki-batch-email.png | Bin .../after-process-change.png | Bin .../change-payroll-description/default.png | Bin .../description.png | Bin .../change-payroll-description/process.png | Bin .../change-payroll-description/result.png | Bin .../daily-pay-method/check-overtime.png | Bin .../daily-pay-method/check-wages.png | Bin .../contributions-settings.png | Bin .../final-payroll-process.png | Bin .../daily-pay-method/input-daily-rate.png | Bin .../pending-payroll-overtime.png | Bin .../pending-payroll-wages.png | Bin .../date-format-additional-setting.jpg | Bin .../date-format/date-format-change.jpg | Bin .../date-format/date-format-issue.jpg | Bin .../date-format/date-format-result.jpg | Bin .../final-payroll/check-details.png | Bin .../final-payroll/employee-1.png | Bin .../final-payroll/employee-2.png | Bin .../final-payroll/export-result.png | Bin .../{ => general}/final-payroll/export.png | Bin .../final-payroll/print-payroll.png | Bin .../final-payroll/print-payslip.png | Bin .../{ => general}/final-payroll/process.png | Bin .../{ => general}/final-payroll/result-1.png | Bin .../{ => general}/final-payroll/result-2.png | Bin .../final-payroll/select-date-year.png | Bin .../{ => general}/final-payroll/summary-1.png | Bin .../{ => general}/final-payroll/summary-2.png | Bin .../sample-scenario-1.png | Bin .../sample-scenario-10.png | Bin .../sample-scenario-11.png | Bin .../sample-scenario-2.png | Bin .../sample-scenario-3.png | Bin .../sample-scenario-4.png | Bin .../sample-scenario-5.png | Bin .../sample-scenario-6.png | Bin .../sample-scenario-7.png | Bin .../sample-scenario-8.png | Bin .../sample-scenario-9.png | Bin .../online-mobile-approval/setup-step-1.png | Bin .../online-mobile-approval/setup-step-2-1.png | Bin .../online-mobile-approval/setup-step-2-2.png | Bin .../online-mobile-approval/setup-step-3-1.png | Bin .../online-mobile-approval/setup-step-3-2.png | Bin .../online-mobile-approval/setup-step-3-3.png | Bin .../online-mobile-approval/setup-step-4.png | Bin .../pcb-cp38-receipt-no-date/calculate.png | Bin .../pcb-cp38-receipt-no-date/example.png | Bin .../pcb-receipt-interface.png | Bin .../pcb-cp38-receipt-no-date/pcb-receipt.png | Bin .../print-income-tax-pcb.png | Bin .../pcb-cp38-receipt-no-date/result.png | Bin .../zakat-tabung-haji/company-profile.png | Bin .../zakat-tabung-haji/create-tabung-haji.png | Bin .../zakat-tabung-haji/create-zakat.png | Bin .../employee-edit-zakat-tabung-haji.png | Bin .../lembaga-zakat-selangor-1.png | Bin .../lembaga-zakat-selangor-2.png | Bin .../zakat-tabung-haji/maintain-deduction.png | Bin .../zakat-tabung-haji/new-deduction.png | Bin .../pending-payroll-deduction.png | Bin .../zakat-tabung-haji/process-result.png | Bin .../zakat-tabung-haji/select-date.png | Bin .../select-payment-format.png | Bin .../zakat-tabung-haji/tabung-haji-number.png | Bin .../zakat-tabung-haji/tabung-haji-report.png | Bin .../tabung-haji-select-date.png | Bin .../{ => general}/zakat-tabung-haji/zakat.png | Bin 107 files changed, 121 insertions(+), 193 deletions(-) delete mode 100644 docs/faq/date-format.md delete mode 100644 docs/faq/error-calendarinfo.md delete mode 100644 docs/faq/missing-code.md rename static/img/usage/{ => general}/batch-email/copy-template.png (100%) rename static/img/usage/{ => general}/batch-email/email-client-filter.png (100%) rename static/img/usage/{ => general}/batch-email/email-client-more.png (100%) rename static/img/usage/{ => general}/batch-email/email-client-print-payslip.png (100%) rename static/img/usage/{ => general}/batch-email/email-client-select-payslip.png (100%) rename static/img/usage/{ => general}/batch-email/email-client-send.png (100%) rename static/img/usage/{ => general}/batch-email/employee-name-2-pdf-password-1.png (100%) rename static/img/usage/{ => general}/batch-email/employee-name-2-pdf-password-2.png (100%) rename static/img/usage/{ => general}/batch-email/global-pdf-password-usename-ic-pass.png (100%) rename static/img/usage/{ => general}/batch-email/more-dropdown.png (100%) rename static/img/usage/{ => general}/batch-email/new.png (100%) rename static/img/usage/{ => general}/batch-email/paste-employee-result.png (100%) rename static/img/usage/{ => general}/batch-email/paste-employee.png (100%) rename static/img/usage/{ => general}/batch-email/pdf-password-global.png (100%) rename static/img/usage/{ => general}/batch-email/pdf-password-individual.png (100%) rename static/img/usage/{ => general}/batch-email/smtp-app-password.png (100%) rename static/img/usage/{ => general}/batch-email/smtp-company-profile.png (100%) rename static/img/usage/{ => general}/batch-email/smtp-export.png (100%) rename static/img/usage/{ => general}/batch-email/smtp-filter.png (100%) rename static/img/usage/{ => general}/batch-email/smtp-print-payslip.png (100%) rename static/img/usage/{ => general}/batch-email/smtp-select-payslip.png (100%) rename static/img/usage/{ => general}/batch-email/smtp-send.png (100%) rename static/img/usage/{ => general}/batch-email/template.png (100%) rename static/img/usage/{ => general}/batch-email/wiki-batch-email.png (100%) rename static/img/usage/{ => general}/change-payroll-description/after-process-change.png (100%) rename static/img/usage/{ => general}/change-payroll-description/default.png (100%) rename static/img/usage/{ => general}/change-payroll-description/description.png (100%) rename static/img/usage/{ => general}/change-payroll-description/process.png (100%) rename static/img/usage/{ => general}/change-payroll-description/result.png (100%) rename static/img/usage/{ => general}/daily-pay-method/check-overtime.png (100%) rename static/img/usage/{ => general}/daily-pay-method/check-wages.png (100%) rename static/img/usage/{ => general}/daily-pay-method/contributions-settings.png (100%) rename static/img/usage/{ => general}/daily-pay-method/final-payroll-process.png (100%) rename static/img/usage/{ => general}/daily-pay-method/input-daily-rate.png (100%) rename static/img/usage/{ => general}/daily-pay-method/pending-payroll-overtime.png (100%) rename static/img/usage/{ => general}/daily-pay-method/pending-payroll-wages.png (100%) rename static/img/{faq => usage/general}/date-format/date-format-additional-setting.jpg (100%) rename static/img/{faq => usage/general}/date-format/date-format-change.jpg (100%) rename static/img/{faq => usage/general}/date-format/date-format-issue.jpg (100%) rename static/img/{faq => usage/general}/date-format/date-format-result.jpg (100%) rename static/img/usage/{ => general}/final-payroll/check-details.png (100%) rename static/img/usage/{ => general}/final-payroll/employee-1.png (100%) rename static/img/usage/{ => general}/final-payroll/employee-2.png (100%) rename static/img/usage/{ => general}/final-payroll/export-result.png (100%) rename static/img/usage/{ => general}/final-payroll/export.png (100%) rename static/img/usage/{ => general}/final-payroll/print-payroll.png (100%) rename static/img/usage/{ => general}/final-payroll/print-payslip.png (100%) rename static/img/usage/{ => general}/final-payroll/process.png (100%) rename static/img/usage/{ => general}/final-payroll/result-1.png (100%) rename static/img/usage/{ => general}/final-payroll/result-2.png (100%) rename static/img/usage/{ => general}/final-payroll/select-date-year.png (100%) rename static/img/usage/{ => general}/final-payroll/summary-1.png (100%) rename static/img/usage/{ => general}/final-payroll/summary-2.png (100%) rename static/img/usage/{ => general}/online-mobile-approval/sample-scenario-1.png (100%) rename static/img/usage/{ => general}/online-mobile-approval/sample-scenario-10.png (100%) rename static/img/usage/{ => general}/online-mobile-approval/sample-scenario-11.png (100%) rename static/img/usage/{ => general}/online-mobile-approval/sample-scenario-2.png (100%) rename static/img/usage/{ => general}/online-mobile-approval/sample-scenario-3.png (100%) rename static/img/usage/{ => general}/online-mobile-approval/sample-scenario-4.png (100%) rename static/img/usage/{ => general}/online-mobile-approval/sample-scenario-5.png (100%) rename static/img/usage/{ => general}/online-mobile-approval/sample-scenario-6.png (100%) rename static/img/usage/{ => general}/online-mobile-approval/sample-scenario-7.png (100%) rename static/img/usage/{ => general}/online-mobile-approval/sample-scenario-8.png (100%) rename static/img/usage/{ => general}/online-mobile-approval/sample-scenario-9.png (100%) rename static/img/usage/{ => general}/online-mobile-approval/setup-step-1.png (100%) rename static/img/usage/{ => general}/online-mobile-approval/setup-step-2-1.png (100%) rename static/img/usage/{ => general}/online-mobile-approval/setup-step-2-2.png (100%) rename static/img/usage/{ => general}/online-mobile-approval/setup-step-3-1.png (100%) rename static/img/usage/{ => general}/online-mobile-approval/setup-step-3-2.png (100%) rename static/img/usage/{ => general}/online-mobile-approval/setup-step-3-3.png (100%) rename static/img/usage/{ => general}/online-mobile-approval/setup-step-4.png (100%) rename static/img/usage/{ => general}/pcb-cp38-receipt-no-date/calculate.png (100%) rename static/img/usage/{ => general}/pcb-cp38-receipt-no-date/example.png (100%) rename static/img/usage/{ => general}/pcb-cp38-receipt-no-date/pcb-receipt-interface.png (100%) rename static/img/usage/{ => general}/pcb-cp38-receipt-no-date/pcb-receipt.png (100%) rename static/img/usage/{ => general}/pcb-cp38-receipt-no-date/print-income-tax-pcb.png (100%) rename static/img/usage/{ => general}/pcb-cp38-receipt-no-date/result.png (100%) rename static/img/usage/{ => general}/zakat-tabung-haji/company-profile.png (100%) rename static/img/usage/{ => general}/zakat-tabung-haji/create-tabung-haji.png (100%) rename static/img/usage/{ => general}/zakat-tabung-haji/create-zakat.png (100%) rename static/img/usage/{ => general}/zakat-tabung-haji/employee-edit-zakat-tabung-haji.png (100%) rename static/img/usage/{ => general}/zakat-tabung-haji/lembaga-zakat-selangor-1.png (100%) rename static/img/usage/{ => general}/zakat-tabung-haji/lembaga-zakat-selangor-2.png (100%) rename static/img/usage/{ => general}/zakat-tabung-haji/maintain-deduction.png (100%) rename static/img/usage/{ => general}/zakat-tabung-haji/new-deduction.png (100%) rename static/img/usage/{ => general}/zakat-tabung-haji/pending-payroll-deduction.png (100%) rename static/img/usage/{ => general}/zakat-tabung-haji/process-result.png (100%) rename static/img/usage/{ => general}/zakat-tabung-haji/select-date.png (100%) rename static/img/usage/{ => general}/zakat-tabung-haji/select-payment-format.png (100%) rename static/img/usage/{ => general}/zakat-tabung-haji/tabung-haji-number.png (100%) rename static/img/usage/{ => general}/zakat-tabung-haji/tabung-haji-report.png (100%) rename static/img/usage/{ => general}/zakat-tabung-haji/tabung-haji-select-date.png (100%) rename static/img/usage/{ => general}/zakat-tabung-haji/zakat.png (100%) diff --git a/docs/faq/date-format.md b/docs/faq/date-format.md deleted file mode 100644 index e3b1200..0000000 --- a/docs/faq/date-format.md +++ /dev/null @@ -1,34 +0,0 @@ ---- -title: Why Date format not display correctly in some payroll report? -description: A guide to solve date format not display correctly in some payroll report -slug: /faq/date-format -tags: ["SQL Payroll", "FAQ", "Date"] ---- - -## Issue - -What is the faster solution to show the date format correctly? - -![date-format-issue](../../static/img/faq/date-format/date-format-issue.jpg) - -*Example report: Government Reports | Print Income Tax PCB 2 (II)* - -## Solution - -1. Go to **Control Panel**. - -2. Search for **Region** in Control Panel. - -3. Click on **Additional Settings**... - -![date-format-additional-setting](../../static/img/faq/date-format/date-format-additional-setting.jpg) - -4. Click to **Date** tab. - -5. Change the Short Date Format to **DD/MM/YYYY** - -![date-format-change](../../static/img/faq/date-format/date-format-change.jpg) - -6. Date format has display correctly now. - -![date-format-result](../../static/img/faq/date-format/date-format-result.jpg) \ No newline at end of file diff --git a/docs/faq/error-calendarinfo.md b/docs/faq/error-calendarinfo.md deleted file mode 100644 index 79eaa15..0000000 --- a/docs/faq/error-calendarinfo.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: Why show error message dataset "CalendarInfo" does not exist when batch email using customize payslip format? -description: A guide to solve error message dataset "CalendarInfo" does not exist when batch email using customize payslip format -slug: /faq/error-calendarinfo -tags: ["SQL Payroll", "FAQ", "Error"] ---- - -## Issue - -Error message prompt when try to **Export to E-Mail Client (Batch)** using **customize payslip format**. - -![error-issue](../../static/img/faq/error-calendarinfo/error-issue.jpg) - -## Solution - -At payslip report designer, change the **[\]** to **[\]** - -![error-solution](../../static/img/faq/error-calendarinfo/error-solution.jpg) - -**After correction**, it will be look like the screenshot below. - -![error-result](../../static/img/faq/error-calendarinfo/error-result.jpg) \ No newline at end of file diff --git a/docs/faq/missing-code.md b/docs/faq/missing-code.md deleted file mode 100644 index 229b9bb..0000000 --- a/docs/faq/missing-code.md +++ /dev/null @@ -1,16 +0,0 @@ ---- -title: How to fix Missing Code and Employee Name columns in the month payroll screen? -description: A guide to solve Missing Code and Employee Name columns in the month payroll screen -slug: /faq/missing-code -tags: ["SQL Payroll", "FAQ", "Missing"] ---- - -## Issue - -![missingcode-issue](../../static/img/faq/missing-code/missingcode-issue.jpg) - -## Solution - -Tick the **Code** and **Name** columns. - -![missingcode-solution](../../static/img/faq/missing-code/missingcode-solution.jpg) \ No newline at end of file diff --git a/docs/miscellaneous/pcb.md b/docs/miscellaneous/pcb.md index 306acc2..f3f397c 100644 --- a/docs/miscellaneous/pcb.md +++ b/docs/miscellaneous/pcb.md @@ -33,4 +33,3 @@ This Table is for employer who does not use computerised payroll software or pro ![fun-fact](../../static/img/miscellaneous/pcb/fun-fact.png) ## PCB & CP38 Receipt No & Date - diff --git a/docs/miscellaneous/socso.md b/docs/miscellaneous/socso.md index a907d29..540f593 100644 --- a/docs/miscellaneous/socso.md +++ b/docs/miscellaneous/socso.md @@ -20,7 +20,7 @@ tags: ["SQL Payroll", "SOCSO"] ## Socso Table -**View | View Socso Table** +Go to **View | View Socso Table** This function is to show a list of Socso Amount which is need to be pay/deduct from the Salary by Employee & Employer. @@ -32,4 +32,4 @@ Any changes here will not affect the Process of Payroll. :::info[Government Official Portal] [Pertubuhan Keselamatan Sosial](http://www.perkeso.gov.my/) -::: \ No newline at end of file +::: diff --git a/docs/usage/general/batch-email.md b/docs/usage/general/batch-email.md index 1113fdc..7bb2b9e 100644 --- a/docs/usage/general/batch-email.md +++ b/docs/usage/general/batch-email.md @@ -11,37 +11,37 @@ Make sure you had done setting the template in Maintain Employee. ## Setting in Maintain Employee -You can [CLICK HERE]() to go Batch Email Link +You can [CLICK HERE](https://docs.sql.com.my/sqlacc/usage/tools/fast-report/guide#fast-report---e-mail-client-batch--e-mail-native) to go Batch Email Link 1. Click on 3.2.2 Version 1.2021.196.166 & above - ![wiki-batch-email](../../../static/img/usage/batch-email/wiki-batch-email.png) + ![wiki-batch-email](../../../static/img/usage/general/batch-email/wiki-batch-email.png) 2. Scroll down until see this Sample E-Mail Template (Version 1.2021.196.166 & above) > Click on Expand - ![template](../../../static/img/usage/batch-email/template.png) + ![template](../../../static/img/usage/general/batch-email/template.png) 3. Copy all - ![copy-template](../../../static/img/usage/batch-email/copy-template.png) + ![copy-template](../../../static/img/usage/general/batch-email/copy-template.png) 4. Open your SQL Payroll System 5. Navigate to **Human Resource** > **Maintain Employee** and click New - ![new](../../../static/img/usage/batch-email/new.png) + ![new](../../../static/img/usage/general/batch-email/new.png) 6. Click 🔽 beside **More** - ![more-dropdown](../../../static/img/usage/batch-email/more-dropdown.png) + ![more-dropdown](../../../static/img/usage/general/batch-email/more-dropdown.png) 7. Click on Paste Employee - ![paste-employee](../../../static/img/usage/batch-email/paste-employee.png) + ![paste-employee](../../../static/img/usage/general/batch-email/paste-employee.png) 8. After Paste Employee you will see Employee Code as **EMAIL** and the PDF Password Setting at **Note** - ![paste-employee-result](../../../static/img/usage/batch-email/paste-employee-result.png) + ![paste-employee-result](../../../static/img/usage/general/batch-email/paste-employee-result.png) ## Setting PDF Password @@ -65,13 +65,13 @@ Only available in Version 1.2021.2066.174 & above [PrivatePassword] ``` - ![employee-name-2-pdf-password-1](../../../static/img/usage/batch-email/employee-name-2-pdf-password-1.png) + ![employee-name-2-pdf-password-1](../../../static/img/usage/general/batch-email/employee-name-2-pdf-password-1.png) 2. Under Employee profile set the password at **Name 2** > For Example : **_testing_** is the PDF Password - ![employee-name-2-pdf-password-2](../../../static/img/usage/batch-email/employee-name-2-pdf-password-2.png) + ![employee-name-2-pdf-password-2](../../../static/img/usage/general/batch-email/employee-name-2-pdf-password-2.png) ### Scenario 2 : Setting Global PDF Password by UseName and ICPass @@ -107,7 +107,7 @@ Only available in Version 1.2021.2066.174 & above > > The password is : **L@014321** - ![global-pdf-password-usename-ic-pass](../../../static/img/usage/batch-email/global-pdf-password-usename-ic-pass.png) + ![global-pdf-password-usename-ic-pass](../../../static/img/usage/general/batch-email/global-pdf-password-usename-ic-pass.png) ### Scenario 3 : Setting Global PDF Password @@ -137,7 +137,7 @@ This settings configures **all employees** to have the same password > The PDF Password is **_‘BatchEmail’_** - ![pdf-password-global](../../../static/img/usage/batch-email/pdf-password-global.png) + ![pdf-password-global](../../../static/img/usage/general/batch-email/pdf-password-global.png) ### Scenario 4 : Setting Private/ Individual Password @@ -179,7 +179,7 @@ Must set for all Employees ``` - ![pdf-password-individual](../../../static/img/usage/batch-email/pdf-password-individual.png) + ![pdf-password-individual](../../../static/img/usage/general/batch-email/pdf-password-individual.png) ## Send Payslip by Batch Email @@ -191,25 +191,25 @@ Make sure your pc had install window email (Ex : Outlook or Thunderbird) 1. Go to Payroll > Print Pay Slip ... - ![email-client-print-payslip](../../../static/img/usage/batch-email/email-client-print-payslip.png) + ![email-client-print-payslip](../../../static/img/usage/general/batch-email/email-client-print-payslip.png) 2. Filter your process you wish to batch email > Apply - ![email-client-filter](../../../static/img/usage/batch-email/email-client-filter.png) + ![email-client-filter](../../../static/img/usage/general/batch-email/email-client-filter.png) 3. Click 🔽 Beside Printer icon 4. Click on Export to E-Mail Client (Batch) - ![email-client-more](../../../static/img/usage/batch-email/email-client-more.png) + ![email-client-more](../../../static/img/usage/general/batch-email/email-client-more.png) 5. Select your payslip format > OK - ![email-client-select-payslip](../../../static/img/usage/batch-email/email-client-select-payslip.png) + ![email-client-select-payslip](../../../static/img/usage/general/batch-email/email-client-select-payslip.png) 6. After click ok will prompt window and show has been sent to recipient email, mean success send out - ![email-client-send](../../../static/img/usage/batch-email/email-client-send.png) + ![email-client-send](../../../static/img/usage/general/batch-email/email-client-send.png) ### E-Mail SMTP (Batch) @@ -222,7 +222,7 @@ Make Sure you had create App Password 1. Go to **File** > **Company Profile** - ![smtp-company-profile](../../../static/img/usage/batch-email/smtp-company-profile.png) + ![smtp-company-profile](../../../static/img/usage/general/batch-email/smtp-company-profile.png) 2. Select Email Setting from the tabs @@ -230,26 +230,26 @@ Make Sure you had create App Password > \*\*Password : Is your App Password - ![smtp-app-password](../../../static/img/usage/batch-email/smtp-app-password.png) + ![smtp-app-password](../../../static/img/usage/general/batch-email/smtp-app-password.png) 4. Go to **Payroll**, click **Print Pay Slip** - ![smtp-print-payslip](../../../static/img/usage/batch-email/smtp-print-payslip.png) + ![smtp-print-payslip](../../../static/img/usage/general/batch-email/smtp-print-payslip.png) 5. Filter your process you wish to batch email > Apply - ![smtp-filter](../../../static/img/usage/batch-email/smtp-filter.png) + ![smtp-filter](../../../static/img/usage/general/batch-email/smtp-filter.png) 6. Click 🔽 Beside Printer icon 7. Click on Export to E-Mail SMTP (Batch) - ![smtp-export](../../../static/img/usage/batch-email/smtp-export.png) + ![smtp-export](../../../static/img/usage/general/batch-email/smtp-export.png) 8. Select your payslip format > OK - ![smtp-select-payslip](../../../static/img/usage/batch-email/smtp-select-payslip.png) + ![smtp-select-payslip](../../../static/img/usage/general/batch-email/smtp-select-payslip.png) 9. After click ok will prompt window and show has been sent to recipient email, mean success send out - ![smtp-send](../../../static/img/usage/batch-email/smtp-send.png) + ![smtp-send](../../../static/img/usage/general/batch-email/smtp-send.png) diff --git a/docs/usage/general/change-payroll-description.md b/docs/usage/general/change-payroll-description.md index 1bb34fe..d858130 100644 --- a/docs/usage/general/change-payroll-description.md +++ b/docs/usage/general/change-payroll-description.md @@ -9,7 +9,7 @@ tags: ["SQL Payroll", "Description"] Picture below shows a default payroll description ::: -![default](../../../static/img/usage/change-payroll-description/default.png) +![default](../../../static/img/usage/general/change-payroll-description/default.png) ## Setup @@ -17,20 +17,20 @@ Picture below shows a default payroll description 2. Select the month, and key in the description that you want in “Description 1”. - ![description](../../../static/img/usage/change-payroll-description/description.png) + ![description](../../../static/img/usage/general/change-payroll-description/description.png) 3. Press Process - ![process](../../../static/img/usage/change-payroll-description/process.png) + ![process](../../../static/img/usage/general/change-payroll-description/process.png) 4. You will see the description on the top of the month end. 5. If you click on “Past Payroll” icon and you will see the month end description that you created. - ![result](../../../static/img/usage/change-payroll-description/result.png) + ![result](../../../static/img/usage/general/change-payroll-description/result.png) To change the payroll description AFTER processed, 6. At Open Payroll, press F2 key and amend the description directly. - ![after-process-change](../../../static/img/usage/change-payroll-description/after-process-change.png) + ![after-process-change](../../../static/img/usage/general/change-payroll-description/after-process-change.png) diff --git a/docs/usage/general/daily-pay-method.md b/docs/usage/general/daily-pay-method.md index 434f723..aef2a34 100644 --- a/docs/usage/general/daily-pay-method.md +++ b/docs/usage/general/daily-pay-method.md @@ -23,7 +23,7 @@ This guide explains how to set daily payment for your employees. Given the below - Working Day Per Month = 1 - Working Hour Per Day = 8 - ![contributions-settings](../../../static/img/usage/daily-pay-method/contributions-settings.png) + ![contributions-settings](../../../static/img/usage/general/daily-pay-method/contributions-settings.png) 2. Input the daily rate in maintain employee @@ -31,7 +31,7 @@ This guide explains how to set daily payment for your employees. Given the below 2. Input the daily rate (RM16.00 per day) in the Wages field. 3. Set the contribution to “DAILY”. - ![input-daily-rate](../../../static/img/usage/daily-pay-method/input-daily-rate.png) + ![input-daily-rate](../../../static/img/usage/general/daily-pay-method/input-daily-rate.png) 3. Open pending payroll – Wages @@ -41,7 +41,7 @@ This guide explains how to set daily payment for your employees. Given the below - Work unit = 1 day - Rate = RM16.00 per day - ![pending-payroll-wages](../../../static/img/usage/daily-pay-method/pending-payroll-wages.png) + ![pending-payroll-wages](../../../static/img/usage/general/daily-pay-method/pending-payroll-wages.png) 4. Open pending payroll – Overtime @@ -52,21 +52,21 @@ This guide explains how to set daily payment for your employees. Given the below - Work Unit = No.of hours (OT) - Rate = 1.5 rate per hour (OT) - ![pending-payroll-overtime](../../../static/img/usage/daily-pay-method/pending-payroll-overtime.png) + ![pending-payroll-overtime](../../../static/img/usage/general/daily-pay-method/pending-payroll-overtime.png) 5. Final payroll process 1. Navigate to **Payroll** > **New Payroll** 2. Click on Final followed by Process button. - ![final-payroll-process](../../../static/img/usage/daily-pay-method/final-payroll-process.png) + ![final-payroll-process](../../../static/img/usage/general/daily-pay-method/final-payroll-process.png) 6. Check the wages records 1. Click on the Wages to retrieve the detailed wages records. 2. You will see the records are posted from wages pending for the month. - ![check-wages](../../../static/img/usage/daily-pay-method/check-wages.png) + ![check-wages](../../../static/img/usage/general/daily-pay-method/check-wages.png) 7. Check the overtime records @@ -82,9 +82,10 @@ This guide explains how to set daily payment for your employees. Given the below - Hourly Pay Rate = RM16.00 / 8 hrs = RM2.00 per hour Therefore, the overtime calculation is + |Code|Work Unit|Rate|Pay Rate|OT Pay Rate|Amount| |:--:| :-----: |:--:|:------:|:---------:|:----:| |HW15|4hrs|1.5|2.00|RM2.00 x 1.5 = RM3.00|RM3.00 x 4 hrs = RM12.00| |HW15|4hrs|1.5|2.00|RM2.00 x 1.5 = RM3.00|RM3.00 x 3 hrs = RM9.00| - ![check-overtime](../../../static/img/usage/daily-pay-method/check-overtime.png) + ![check-overtime](../../../static/img/usage/general/daily-pay-method/check-overtime.png) diff --git a/docs/usage/general/final-payroll.md b/docs/usage/general/final-payroll.md index dcdf766..12cde43 100644 --- a/docs/usage/general/final-payroll.md +++ b/docs/usage/general/final-payroll.md @@ -9,13 +9,13 @@ tags: ["SQL Payroll", "Final"] 1. On top of your screen, look for **Human Resource** > **Maintain Employee** > double click any one of the employee and go into this screen - ![employee-1](../../../static/img/usage/final-payroll/employee-1.png) + ![employee-1](../../../static/img/usage/general/final-payroll/employee-1.png) :::info[note] Make sure you have selected the correct wages type and key in the wages amount ::: - ![employee-2](../../../static/img/usage/final-payroll/employee-2.png) + ![employee-2](../../../static/img/usage/general/final-payroll/employee-2.png) - This screen is to set your employees monthly fixed allowance - Click on the ‘+’ button where the red arrow pointed, then select the type of allowance that you maintained in allowance maintenance @@ -23,22 +23,22 @@ tags: ["SQL Payroll", "Final"] 2. On top of your screen, look for **Human Resource** > **Maintain Employee** > double click any one of the employee and go into this screen - ![select-date-year](../../../static/img/usage/final-payroll/select-date-year.png) + ![select-date-year](../../../static/img/usage/general/final-payroll/select-date-year.png) - Select the correct year and month , for those that are not cut off at month end you can click on the ‘…’ button at where the red arrow pointed to select the cut off day. - Description2, ref1 and ref2, you can key in as reference purpose. 1. Click on the process to proceed, then you will see the screen below - ![process](../../../static/img/usage/final-payroll/process.png) + ![process](../../../static/img/usage/general/final-payroll/process.png) 2. Click on the print payslip to check on the amount that calculated from system - ![print-payslip](../../../static/img/usage/final-payroll/print-payslip.png) + ![print-payslip](../../../static/img/usage/general/final-payroll/print-payslip.png) You can scroll to the right to check completely - ![check-details](../../../static/img/usage/final-payroll/check-details.png) + ![check-details](../../../static/img/usage/general/final-payroll/check-details.png) 3. Assume it is all correct amount, just click on the preview to check on how it will be printed out with 5 kinds of designs @@ -46,17 +46,17 @@ tags: ["SQL Payroll", "Final"] - Refer image below to export to other documents, for printing jiust click on the printer icon at the most left - ![export](../../../static/img/usage/final-payroll/export.png) + ![export](../../../static/img/usage/general/final-payroll/export.png) - The image below is a sample of pdf file after exported - ![export-result](../../../static/img/usage/final-payroll/export-result.png) + ![export-result](../../../static/img/usage/general/final-payroll/export-result.png) 5. Follow the steps below: 1. Back to step **2.ii** - ![print-payroll](../../../static/img/usage/final-payroll/print-payroll.png) + ![print-payroll](../../../static/img/usage/general/final-payroll/print-payroll.png) - This is print payroll summary (a quick summary to check on all those wages, allowance, gross pay, epf , socso etc… of all employees) @@ -64,9 +64,9 @@ tags: ["SQL Payroll", "Final"] 2. **Payment summary** - ![summary-1](../../../static/img/usage/final-payroll/summary-1.png) + ![summary-1](../../../static/img/usage/general/final-payroll/summary-1.png) - ![summary-2](../../../static/img/usage/final-payroll/summary-2.png) + ![summary-2](../../../static/img/usage/general/final-payroll/summary-2.png) Click on the Blue coirage report, then you will go to a screen that show you how the cash notes is being paid to the employees. @@ -76,8 +76,8 @@ tags: ["SQL Payroll", "Final"] - It will display the employee epf, socso / employer epf, socso correspondingly. - ![result-1](../../../static/img/usage/final-payroll/result-1.png) + ![result-1](../../../static/img/usage/general/final-payroll/result-1.png) - You can double click your employee name to check on its individual’s amount - ![result-2](../../../static/img/usage/final-payroll/result-2.png) + ![result-2](../../../static/img/usage/general/final-payroll/result-2.png) diff --git a/docs/usage/general/online-mobile-approval.md b/docs/usage/general/online-mobile-approval.md index 9873fe4..f32ff59 100644 --- a/docs/usage/general/online-mobile-approval.md +++ b/docs/usage/general/online-mobile-approval.md @@ -27,13 +27,13 @@ These **ALL** can use Online Approval for user : 2. Click process > prompt a dialog box to override > click **_Online Approval_** - ![sample-scenario-1](../../../static/img/usage/online-mobile-approval/sample-scenario-1.png) + ![sample-scenario-1](../../../static/img/usage/general/online-mobile-approval/sample-scenario-1.png) 1. Tick the ID that you choose to get approval 2. You can choose to send by **Whatsapp**, **Send by Email** or **Send by Whatsapp & Email** - ![sample-scenario-2](../../../static/img/usage/online-mobile-approval/sample-scenario-2.png) + ![sample-scenario-2](../../../static/img/usage/general/online-mobile-approval/sample-scenario-2.png) 3. You will received a message at whatsapp or email send by system @@ -41,13 +41,13 @@ These **ALL** can use Online Approval for user : > You will received a message > Click that link - ![sample-scenario-3](../../../static/img/usage/online-mobile-approval/sample-scenario-3.png) + ![sample-scenario-3](../../../static/img/usage/general/online-mobile-approval/sample-scenario-3.png) - **Senario 2 : Send By Email** > You will received an email > Click **_‘CLICK HERE FOR MORE ACTIONS’_** - ![sample-scenario-4](../../../static/img/usage/online-mobile-approval/sample-scenario-4.png) + ![sample-scenario-4](../../../static/img/usage/general/online-mobile-approval/sample-scenario-4.png) 4. Login **Gmail Address** that you setting in maintain user **Open ID (Google)** @@ -58,15 +58,15 @@ These **ALL** can use Online Approval for user : ::: - ![sample-scenario-5](../../../static/img/usage/online-mobile-approval/sample-scenario-5.png) + ![sample-scenario-5](../../../static/img/usage/general/online-mobile-approval/sample-scenario-5.png) 5. Enter your **Gmail Password** - ![sample-scenario-6](../../../static/img/usage/online-mobile-approval/sample-scenario-6.png) + ![sample-scenario-6](../../../static/img/usage/general/online-mobile-approval/sample-scenario-6.png) 6. After Login **Gmail** you will see this window - ![sample-scenario-7](../../../static/img/usage/online-mobile-approval/sample-scenario-7.png) + ![sample-scenario-7](../../../static/img/usage/general/online-mobile-approval/sample-scenario-7.png) 7. You can click on **_Doc Detail_** and **_ScreenShot_** to see the detail @@ -76,7 +76,7 @@ These **ALL** can use Online Approval for user : 3. **Reply** : You can left a message and click Approve or Reject - ![sample-scenario-8](../../../static/img/usage/online-mobile-approval/sample-scenario-8.png) + ![sample-scenario-8](../../../static/img/usage/general/online-mobile-approval/sample-scenario-8.png) :::info[note] After Approve or Reject you can go back SQL Payroll, you will see below screen @@ -90,7 +90,7 @@ These **ALL** can use Online Approval for user : > > c. Click **OK** to save that transaction - ![sample-scenario-9](../../../static/img/usage/online-mobile-approval/sample-scenario-9.png) + ![sample-scenario-9](../../../static/img/usage/general/online-mobile-approval/sample-scenario-9.png) - **Senario 2 : Reject Override** @@ -100,25 +100,25 @@ These **ALL** can use Online Approval for user : > > c. The OK button is disabled after reject, click Cancel - ![sample-scenario-10](../../../static/img/usage/online-mobile-approval/sample-scenario-10.png) + ![sample-scenario-10](../../../static/img/usage/general/online-mobile-approval/sample-scenario-10.png) After Click Cancel System will Prompt back to this dialog box - ![sample-scenario-11](../../../static/img/usage/online-mobile-approval/sample-scenario-11.png) + ![sample-scenario-11](../../../static/img/usage/general/online-mobile-approval/sample-scenario-11.png) ## Setup ### Step 1 : Navigate to Tools > Maintain User - ![setup-step-1](../../../static/img/usage/online-mobile-approval/setup-step-1.png) + ![setup-step-1](../../../static/img/usage/general/online-mobile-approval/setup-step-1.png) ### Step 2 : Edit User 1. Double click the user will be set for Approval > Edit - ![setup-step-2-1](../../../static/img/usage/online-mobile-approval/setup-step-2-1.png) + ![setup-step-2-1](../../../static/img/usage/general/online-mobile-approval/setup-step-2-1.png) - ![setup-step-2-2](../../../static/img/usage/online-mobile-approval/setup-step-2-2.png) + ![setup-step-2-2](../../../static/img/usage/general/online-mobile-approval/setup-step-2-2.png) ### Step 3 : Set Approval Person @@ -134,7 +134,7 @@ These **ALL** can use Online Approval for user : If receive notification email and approve email is Gmail, do setting only at **3. OPEN ID (Google)** and leave **2.Email** column blank ::: - ![setup-step-3-1](../../../static/img/usage/online-mobile-approval/setup-step-3-1.png) + ![setup-step-3-1](../../../static/img/usage/general/online-mobile-approval/setup-step-3-1.png) For Example : @@ -145,7 +145,7 @@ These **ALL** can use Online Approval for user : 1. Open ID (Google) : `XXXXXX@gmail.com` 2. Email : **Left as blank** - ![setup-step-3-2](../../../static/img/usage/online-mobile-approval/setup-step-3-2.png) + ![setup-step-3-2](../../../static/img/usage/general/online-mobile-approval/setup-step-3-2.png) - **Senario 2 : Use Different email to received notification and give approval** @@ -155,7 +155,7 @@ These **ALL** can use Online Approval for user : 1. Open ID (Google) : Put your gmail address `XXXXXX@gmail.com` 2. Email : `XXXXXX@estream.com` - ![setup-step-3-3](../../../static/img/usage/online-mobile-approval/setup-step-3-3.png) + ![setup-step-3-3](../../../static/img/usage/general/online-mobile-approval/setup-step-3-3.png) ### Step 4 : Setting SMTP @@ -187,4 +187,4 @@ These **ALL** can use Online Approval for user : 9. After done setting click Save - ![setup-step-4](../../../static/img/usage/online-mobile-approval/setup-step-4.png) + ![setup-step-4](../../../static/img/usage/general/online-mobile-approval/setup-step-4.png) diff --git a/docs/usage/general/pcb-cp38-receipt-no-date.md b/docs/usage/general/pcb-cp38-receipt-no-date.md index 1816a64..3966267 100644 --- a/docs/usage/general/pcb-cp38-receipt-no-date.md +++ b/docs/usage/general/pcb-cp38-receipt-no-date.md @@ -10,17 +10,17 @@ tags: ["SQL Payroll", "PCB", "CP38", "Receipt"] Given an example with this Month (June) with **PCB amount** of **RM1444.90**. ::: -![example](../../../static/img/usage/pcb-cp38-receipt-no-date/example.png) +![example](../../../static/img/usage/general/pcb-cp38-receipt-no-date/example.png) ## Setup 1. Right click on the particular Month End process and click **PCB Receipt** - ![pcb-receipt](../../../static/img/usage/pcb-cp38-receipt-no-date/pcb-receipt.png) + ![pcb-receipt](../../../static/img/usage/general/pcb-cp38-receipt-no-date/pcb-receipt.png) 2. The Following screen will be seen - ![pcb-receipt-interface](../../../static/img/usage/pcb-cp38-receipt-no-date/pcb-receipt-interface.png) + ![pcb-receipt-interface](../../../static/img/usage/general/pcb-cp38-receipt-no-date/pcb-receipt-interface.png) >1 Enter the Receipt Date. > @@ -28,14 +28,14 @@ Given an example with this Month (June) with **PCB amount** of **RM1444.90**. > >3 Press calculate amount to show the total amount of PCB u paid that month. - ![calculate](../../../static/img/usage/pcb-cp38-receipt-no-date/calculate.png) + ![calculate](../../../static/img/usage/general/pcb-cp38-receipt-no-date/calculate.png) The **TOTAL** PCB Normal amount of the employees which is **RM 1444.90**. 3. Go to **Payroll** > **Government Reports** > **Print Income Tax PCB 2(II)** - ![print-income-tax-pcb](../../../static/img/usage/pcb-cp38-receipt-no-date/print-income-tax-pcb.png) + ![print-income-tax-pcb](../../../static/img/usage/general/pcb-cp38-receipt-no-date/print-income-tax-pcb.png) 4. Preview the employees Tax PCB 2(II). The following result will show in the report: - ![result](../../../static/img/usage/pcb-cp38-receipt-no-date/result.png) + ![result](../../../static/img/usage/general/pcb-cp38-receipt-no-date/result.png) diff --git a/docs/usage/general/zakat-tabung-haji.md b/docs/usage/general/zakat-tabung-haji.md index 6e07569..a62a0a1 100644 --- a/docs/usage/general/zakat-tabung-haji.md +++ b/docs/usage/general/zakat-tabung-haji.md @@ -9,43 +9,43 @@ tags: ["SQL Payroll", "Zakat", "Tabung Haji"] 1. Go to **File** > **Company Profile** - ![company-profile](../../../static/img/usage/zakat-tabung-haji/company-profile.png) + ![company-profile](../../../static/img/usage/general/zakat-tabung-haji/company-profile.png) 2. Click **Zakat** and key in Zakat Employer Number : - ![zakat](../../../static/img/usage/zakat-tabung-haji/zakat.png) + ![zakat](../../../static/img/usage/general/zakat-tabung-haji/zakat.png) 3. Click **Tabung Haji** and key in your company's Tabung Haji Number. Press SAVE once you have keyed in. - ![tabung-haji-number](../../../static/img/usage/zakat-tabung-haji/tabung-haji-number.png) + ![tabung-haji-number](../../../static/img/usage/general/zakat-tabung-haji/tabung-haji-number.png) 4. Go to **Payroll** > **Maintenance** > **Maintain Deduction** : - ![maintain-deduction](../../../static/img/usage/zakat-tabung-haji/maintain-deduction.png) + ![maintain-deduction](../../../static/img/usage/general/zakat-tabung-haji/maintain-deduction.png) 5. Create a new **Deduction** by clicking the **NEW** button. - ![new-deduction](../../../static/img/usage/zakat-tabung-haji/new-deduction.png) + ![new-deduction](../../../static/img/usage/general/zakat-tabung-haji/new-deduction.png) 6. Create **ZAKAT** deduction following these steps, remeber to press SAVE. - ![create-zakat](../../../static/img/usage/zakat-tabung-haji/create-zakat.png) + ![create-zakat](../../../static/img/usage/general/zakat-tabung-haji/create-zakat.png) 7. Create **Tabung Haji** deduction by Pressing the **NEW** button and follow the image. Remember to press **SAVE**. - ![create-tabung-haji](../../../static/img/usage/zakat-tabung-haji/create-tabung-haji.png) + ![create-tabung-haji](../../../static/img/usage/general/zakat-tabung-haji/create-tabung-haji.png) 8. Once you have created the 2 new deduction, please go to Payroll -> Open pending payroll and key in your deduction. - ![pending-payroll-deduction](../../../static/img/usage/zakat-tabung-haji/pending-payroll-deduction.png) + ![pending-payroll-deduction](../../../static/img/usage/general/zakat-tabung-haji/pending-payroll-deduction.png) 9. Select the employee name, and key in the deduction amount for **Zakat** and **Tabung Haji**. Press **Save** - ![employee-edit-zakat-tabung-haji](../../../static/img/usage/zakat-tabung-haji/employee-edit-zakat-tabung-haji.png) + ![employee-edit-zakat-tabung-haji](../../../static/img/usage/general/zakat-tabung-haji/employee-edit-zakat-tabung-haji.png) 10. When you process your month end, you will see the **Deduction** amount as well as the gross **Zakat** that you keyed in **Pending Payroll** - ![process-result](../../../static/img/usage/zakat-tabung-haji/process-result.png) + ![process-result](../../../static/img/usage/general/zakat-tabung-haji/process-result.png) ## Print Zakat Report @@ -53,17 +53,17 @@ tags: ["SQL Payroll", "Zakat", "Tabung Haji"] 2. Select the **Year** and **Month**, press the **Apply** button. Once you see the employee name, press the word **"Submission.."**: - ![select-date](../../../static/img/usage/zakat-tabung-haji/select-date.png) + ![select-date](../../../static/img/usage/general/zakat-tabung-haji/select-date.png) 3. Select the payment format: - ![select-payment-format](../../../static/img/usage/zakat-tabung-haji/select-payment-format.png) + ![select-payment-format](../../../static/img/usage/general/zakat-tabung-haji/select-payment-format.png) 4. If you selected Lembaga Zakat Selangor, you have to key in the Bank account and the cheque number. Once that is done, You can save the text file to your desktop. - ![lembaga-zakat-selangor-1](../../../static/img/usage/zakat-tabung-haji/lembaga-zakat-selangor-1.png) + ![lembaga-zakat-selangor-1](../../../static/img/usage/general/zakat-tabung-haji/lembaga-zakat-selangor-1.png) - ![lembaga-zakat-selangor-2](../../../static/img/usage/zakat-tabung-haji/lembaga-zakat-selangor-2.png) + ![lembaga-zakat-selangor-2](../../../static/img/usage/general/zakat-tabung-haji/lembaga-zakat-selangor-2.png) ## Print Tabung Haji Report @@ -71,8 +71,8 @@ tags: ["SQL Payroll", "Zakat", "Tabung Haji"] 2. Select the **Year** and **Month**, press **Apply**. Press the **Preview** button. - ![tabung-haji-select-date](../../../static/img/usage/zakat-tabung-haji/tabung-haji-select-date.png) + ![tabung-haji-select-date](../../../static/img/usage/general/zakat-tabung-haji/tabung-haji-select-date.png) 3. You will see this report. You may print it out or export it as a PDF file : - ![tabung-haji-report](../../../static/img/usage/zakat-tabung-haji/tabung-haji-report.png) + ![tabung-haji-report](../../../static/img/usage/general/zakat-tabung-haji/tabung-haji-report.png) diff --git a/docs/usage/tools/maintain-diy.md b/docs/usage/tools/maintain-diy.md index de54f70..a1d6fd8 100644 --- a/docs/usage/tools/maintain-diy.md +++ b/docs/usage/tools/maintain-diy.md @@ -25,7 +25,7 @@ This is **Additional Module** (DIY Fields & DIY Script Module) User can override the build in Calculation/Formula to suite their requirement. The Language use is Pascal. -**Available Calculation Types** +**Available Calculation Types:** 1. **Generate Document Number**: Manipulate the Next Document Number Format. 2. **Leave Entitlement Policy**: Manipulate yearly Leave Entitlement @@ -48,11 +48,11 @@ Below is Example to change the Leave Entitlement Processor to be calculate from 1. Right Click at **Leave Entitlement Processor** and select **New Calculation**. -![diy-example1-1](../../../static/img/usage/tools/maintain-diy/diy-example1-1.png) + ![diy-example1-1](../../../static/img/usage/tools/maintain-diy/diy-example1-1.png) 2. Click **New Button** and select any Formula which suit you & Click OK. -![diy-example1-2](../../../static/img/usage/tools/maintain-diy/diy-example1-2.png) + ![diy-example1-2](../../../static/img/usage/tools/maintain-diy/diy-example1-2.png) 3. Enter any **Description** (eg Leave_Entitlement_Processor-Confirm Date) in the Description field (Only Alphanumeric & no spacing). @@ -68,22 +68,22 @@ Below is example to change the Unpaid Leave Amount to base on Working Days in Ma 2. Click **New Button** and select any Formula which suit you & Click OK. -![diy-example2-1](../../../static/img/usage/tools/maintain-diy/diy-example2-1.png) + ![diy-example2-1](../../../static/img/usage/tools/maintain-diy/diy-example2-1.png) 3. Enter any **Description** (eg Leave_Calculate_Amt-Unpaid) in the Description field (Only Alphanumeric & no spacing). 4. In the **Script** look for the word *DaysBetweenStartAndEndDate* & change it to *WorkingDayPerMonth* or Copy below script & paste to the Script Section. -```pascal -// Example - Leave Calculate Amount - Based On Employee Default Wages -uses DB, DateUtils; + ```pascal + // Example - Leave Calculate Amount - Based On Employee Default Wages + uses DB, DateUtils; -begin - Amount := DefaultWages / WorkingDayPerMonth; -end. -``` + begin + Amount := DefaultWages / WorkingDayPerMonth; + end. + ``` -![diy-example2-2](../../../static/img/usage/tools/maintain-diy/diy-example2-2.png) + ![diy-example2-2](../../../static/img/usage/tools/maintain-diy/diy-example2-2.png) 5. Click **Compile button** to make sure is **Compile success**. @@ -105,21 +105,21 @@ Below is example to set Maximum limit the Overtime Rate. 4. Copy below script & paste to the Script Section. -```pascal -uses Math, DB; + ```pascal + uses Math, DB; -var V: Double; -begin - V := 0; - if OTAmount > 1500.00 then - V := 10.82 else //(1500/26/8) - V := (OTAmount / 26 /8); - - PayRate := SimpleRoundToEx(V, -2); -end. -``` + var V: Double; + begin + V := 0; + if OTAmount > 1500.00 then + V := 10.82 else //(1500/26/8) + V := (OTAmount / 26 /8); + + PayRate := SimpleRoundToEx(V, -2); + end. + ``` -![diy-example3-1](../../../static/img/usage/tools/maintain-diy/diy-example3-1.png) + ![diy-example3-1](../../../static/img/usage/tools/maintain-diy/diy-example3-1.png) 5. Click **Compile button** to make sure is **Compile success**. @@ -127,4 +127,4 @@ end. 7. Select the Item just created (eg Overtime_Max_Rate) and click Ok button. -8. Done & **Remember** to set it at **Maintain Overtime**. \ No newline at end of file +8. Done & **Remember** to set it at **Maintain Overtime**. diff --git a/docs/usage/tools/options.md b/docs/usage/tools/options.md index 261347b..a07e6b2 100644 --- a/docs/usage/tools/options.md +++ b/docs/usage/tools/options.md @@ -26,7 +26,7 @@ This is the setting is set and will apply to all user. 2. **Auto Mark Finalize After Save PaySheet Changes.** Tick this option is wanted system to put indicator which employee you had done at PaySheet. -![system-general-setting](../../../static/img/usage/tools/options/system-general-setting.png) + ![system-general-setting](../../../static/img/usage/tools/options/system-general-setting.png) 3. You can choose the following password requirement: @@ -45,4 +45,4 @@ This is the setting is set and will apply to all user. This is the setting changes is set for the Current Login user. -![personal-general-setting](../../../static/img/usage/tools/options/personal-general-setting.png) \ No newline at end of file +![personal-general-setting](../../../static/img/usage/tools/options/personal-general-setting.png) diff --git a/static/img/usage/batch-email/copy-template.png b/static/img/usage/general/batch-email/copy-template.png similarity index 100% rename from static/img/usage/batch-email/copy-template.png rename to static/img/usage/general/batch-email/copy-template.png diff --git a/static/img/usage/batch-email/email-client-filter.png b/static/img/usage/general/batch-email/email-client-filter.png similarity index 100% rename from static/img/usage/batch-email/email-client-filter.png rename to static/img/usage/general/batch-email/email-client-filter.png diff --git a/static/img/usage/batch-email/email-client-more.png b/static/img/usage/general/batch-email/email-client-more.png similarity index 100% rename from static/img/usage/batch-email/email-client-more.png rename to static/img/usage/general/batch-email/email-client-more.png diff --git a/static/img/usage/batch-email/email-client-print-payslip.png b/static/img/usage/general/batch-email/email-client-print-payslip.png similarity index 100% rename from static/img/usage/batch-email/email-client-print-payslip.png rename to static/img/usage/general/batch-email/email-client-print-payslip.png diff --git a/static/img/usage/batch-email/email-client-select-payslip.png b/static/img/usage/general/batch-email/email-client-select-payslip.png similarity index 100% rename from static/img/usage/batch-email/email-client-select-payslip.png rename to static/img/usage/general/batch-email/email-client-select-payslip.png diff --git a/static/img/usage/batch-email/email-client-send.png b/static/img/usage/general/batch-email/email-client-send.png similarity index 100% rename from static/img/usage/batch-email/email-client-send.png rename to static/img/usage/general/batch-email/email-client-send.png diff --git a/static/img/usage/batch-email/employee-name-2-pdf-password-1.png b/static/img/usage/general/batch-email/employee-name-2-pdf-password-1.png similarity index 100% rename from static/img/usage/batch-email/employee-name-2-pdf-password-1.png rename to static/img/usage/general/batch-email/employee-name-2-pdf-password-1.png diff --git a/static/img/usage/batch-email/employee-name-2-pdf-password-2.png b/static/img/usage/general/batch-email/employee-name-2-pdf-password-2.png similarity index 100% rename from static/img/usage/batch-email/employee-name-2-pdf-password-2.png rename to static/img/usage/general/batch-email/employee-name-2-pdf-password-2.png diff --git a/static/img/usage/batch-email/global-pdf-password-usename-ic-pass.png b/static/img/usage/general/batch-email/global-pdf-password-usename-ic-pass.png similarity index 100% rename from static/img/usage/batch-email/global-pdf-password-usename-ic-pass.png rename to static/img/usage/general/batch-email/global-pdf-password-usename-ic-pass.png diff --git a/static/img/usage/batch-email/more-dropdown.png b/static/img/usage/general/batch-email/more-dropdown.png similarity index 100% rename from static/img/usage/batch-email/more-dropdown.png rename to static/img/usage/general/batch-email/more-dropdown.png diff --git a/static/img/usage/batch-email/new.png b/static/img/usage/general/batch-email/new.png similarity index 100% rename from static/img/usage/batch-email/new.png rename to static/img/usage/general/batch-email/new.png diff --git a/static/img/usage/batch-email/paste-employee-result.png b/static/img/usage/general/batch-email/paste-employee-result.png similarity index 100% rename from static/img/usage/batch-email/paste-employee-result.png rename to static/img/usage/general/batch-email/paste-employee-result.png diff --git a/static/img/usage/batch-email/paste-employee.png b/static/img/usage/general/batch-email/paste-employee.png similarity index 100% rename from static/img/usage/batch-email/paste-employee.png rename to static/img/usage/general/batch-email/paste-employee.png diff --git a/static/img/usage/batch-email/pdf-password-global.png b/static/img/usage/general/batch-email/pdf-password-global.png similarity index 100% rename from static/img/usage/batch-email/pdf-password-global.png rename to static/img/usage/general/batch-email/pdf-password-global.png diff --git a/static/img/usage/batch-email/pdf-password-individual.png b/static/img/usage/general/batch-email/pdf-password-individual.png similarity index 100% rename from static/img/usage/batch-email/pdf-password-individual.png rename to static/img/usage/general/batch-email/pdf-password-individual.png diff --git a/static/img/usage/batch-email/smtp-app-password.png b/static/img/usage/general/batch-email/smtp-app-password.png similarity index 100% rename from static/img/usage/batch-email/smtp-app-password.png rename to static/img/usage/general/batch-email/smtp-app-password.png diff --git a/static/img/usage/batch-email/smtp-company-profile.png b/static/img/usage/general/batch-email/smtp-company-profile.png similarity index 100% rename from static/img/usage/batch-email/smtp-company-profile.png rename to static/img/usage/general/batch-email/smtp-company-profile.png diff --git a/static/img/usage/batch-email/smtp-export.png b/static/img/usage/general/batch-email/smtp-export.png similarity index 100% rename from static/img/usage/batch-email/smtp-export.png rename to static/img/usage/general/batch-email/smtp-export.png diff --git a/static/img/usage/batch-email/smtp-filter.png b/static/img/usage/general/batch-email/smtp-filter.png similarity index 100% rename from static/img/usage/batch-email/smtp-filter.png rename to static/img/usage/general/batch-email/smtp-filter.png diff --git a/static/img/usage/batch-email/smtp-print-payslip.png b/static/img/usage/general/batch-email/smtp-print-payslip.png similarity index 100% rename from static/img/usage/batch-email/smtp-print-payslip.png rename to static/img/usage/general/batch-email/smtp-print-payslip.png diff --git a/static/img/usage/batch-email/smtp-select-payslip.png b/static/img/usage/general/batch-email/smtp-select-payslip.png similarity index 100% rename from static/img/usage/batch-email/smtp-select-payslip.png rename to static/img/usage/general/batch-email/smtp-select-payslip.png diff --git a/static/img/usage/batch-email/smtp-send.png b/static/img/usage/general/batch-email/smtp-send.png similarity index 100% rename from static/img/usage/batch-email/smtp-send.png rename to static/img/usage/general/batch-email/smtp-send.png diff --git a/static/img/usage/batch-email/template.png b/static/img/usage/general/batch-email/template.png similarity index 100% rename from static/img/usage/batch-email/template.png rename to static/img/usage/general/batch-email/template.png diff --git a/static/img/usage/batch-email/wiki-batch-email.png b/static/img/usage/general/batch-email/wiki-batch-email.png similarity index 100% rename from static/img/usage/batch-email/wiki-batch-email.png rename to static/img/usage/general/batch-email/wiki-batch-email.png diff --git a/static/img/usage/change-payroll-description/after-process-change.png b/static/img/usage/general/change-payroll-description/after-process-change.png similarity index 100% rename from static/img/usage/change-payroll-description/after-process-change.png rename to static/img/usage/general/change-payroll-description/after-process-change.png diff --git a/static/img/usage/change-payroll-description/default.png b/static/img/usage/general/change-payroll-description/default.png similarity index 100% rename from static/img/usage/change-payroll-description/default.png rename to static/img/usage/general/change-payroll-description/default.png diff --git a/static/img/usage/change-payroll-description/description.png b/static/img/usage/general/change-payroll-description/description.png similarity index 100% rename from static/img/usage/change-payroll-description/description.png rename to static/img/usage/general/change-payroll-description/description.png diff --git a/static/img/usage/change-payroll-description/process.png b/static/img/usage/general/change-payroll-description/process.png similarity index 100% rename from static/img/usage/change-payroll-description/process.png rename to static/img/usage/general/change-payroll-description/process.png diff --git a/static/img/usage/change-payroll-description/result.png b/static/img/usage/general/change-payroll-description/result.png similarity index 100% rename from static/img/usage/change-payroll-description/result.png rename to static/img/usage/general/change-payroll-description/result.png diff --git a/static/img/usage/daily-pay-method/check-overtime.png b/static/img/usage/general/daily-pay-method/check-overtime.png similarity index 100% rename from static/img/usage/daily-pay-method/check-overtime.png rename to static/img/usage/general/daily-pay-method/check-overtime.png diff --git a/static/img/usage/daily-pay-method/check-wages.png b/static/img/usage/general/daily-pay-method/check-wages.png similarity index 100% rename from static/img/usage/daily-pay-method/check-wages.png rename to static/img/usage/general/daily-pay-method/check-wages.png diff --git a/static/img/usage/daily-pay-method/contributions-settings.png b/static/img/usage/general/daily-pay-method/contributions-settings.png similarity index 100% rename from static/img/usage/daily-pay-method/contributions-settings.png rename to static/img/usage/general/daily-pay-method/contributions-settings.png diff --git a/static/img/usage/daily-pay-method/final-payroll-process.png b/static/img/usage/general/daily-pay-method/final-payroll-process.png similarity index 100% rename from static/img/usage/daily-pay-method/final-payroll-process.png rename to static/img/usage/general/daily-pay-method/final-payroll-process.png diff --git a/static/img/usage/daily-pay-method/input-daily-rate.png b/static/img/usage/general/daily-pay-method/input-daily-rate.png similarity index 100% rename from static/img/usage/daily-pay-method/input-daily-rate.png rename to static/img/usage/general/daily-pay-method/input-daily-rate.png diff --git a/static/img/usage/daily-pay-method/pending-payroll-overtime.png b/static/img/usage/general/daily-pay-method/pending-payroll-overtime.png similarity index 100% rename from static/img/usage/daily-pay-method/pending-payroll-overtime.png rename to static/img/usage/general/daily-pay-method/pending-payroll-overtime.png diff --git a/static/img/usage/daily-pay-method/pending-payroll-wages.png b/static/img/usage/general/daily-pay-method/pending-payroll-wages.png similarity index 100% rename from static/img/usage/daily-pay-method/pending-payroll-wages.png rename to static/img/usage/general/daily-pay-method/pending-payroll-wages.png diff --git a/static/img/faq/date-format/date-format-additional-setting.jpg b/static/img/usage/general/date-format/date-format-additional-setting.jpg similarity index 100% rename from static/img/faq/date-format/date-format-additional-setting.jpg rename to static/img/usage/general/date-format/date-format-additional-setting.jpg diff --git a/static/img/faq/date-format/date-format-change.jpg b/static/img/usage/general/date-format/date-format-change.jpg similarity index 100% rename from static/img/faq/date-format/date-format-change.jpg rename to static/img/usage/general/date-format/date-format-change.jpg diff --git a/static/img/faq/date-format/date-format-issue.jpg b/static/img/usage/general/date-format/date-format-issue.jpg similarity index 100% rename from static/img/faq/date-format/date-format-issue.jpg rename to static/img/usage/general/date-format/date-format-issue.jpg diff --git a/static/img/faq/date-format/date-format-result.jpg b/static/img/usage/general/date-format/date-format-result.jpg similarity index 100% rename from static/img/faq/date-format/date-format-result.jpg rename to static/img/usage/general/date-format/date-format-result.jpg diff --git a/static/img/usage/final-payroll/check-details.png b/static/img/usage/general/final-payroll/check-details.png similarity index 100% rename from static/img/usage/final-payroll/check-details.png rename to static/img/usage/general/final-payroll/check-details.png diff --git a/static/img/usage/final-payroll/employee-1.png b/static/img/usage/general/final-payroll/employee-1.png similarity index 100% rename from static/img/usage/final-payroll/employee-1.png rename to static/img/usage/general/final-payroll/employee-1.png diff --git a/static/img/usage/final-payroll/employee-2.png b/static/img/usage/general/final-payroll/employee-2.png similarity index 100% rename from static/img/usage/final-payroll/employee-2.png rename to static/img/usage/general/final-payroll/employee-2.png diff --git a/static/img/usage/final-payroll/export-result.png b/static/img/usage/general/final-payroll/export-result.png similarity index 100% rename from static/img/usage/final-payroll/export-result.png rename to static/img/usage/general/final-payroll/export-result.png diff --git a/static/img/usage/final-payroll/export.png b/static/img/usage/general/final-payroll/export.png similarity index 100% rename from static/img/usage/final-payroll/export.png rename to static/img/usage/general/final-payroll/export.png diff --git a/static/img/usage/final-payroll/print-payroll.png b/static/img/usage/general/final-payroll/print-payroll.png similarity index 100% rename from static/img/usage/final-payroll/print-payroll.png rename to static/img/usage/general/final-payroll/print-payroll.png diff --git a/static/img/usage/final-payroll/print-payslip.png b/static/img/usage/general/final-payroll/print-payslip.png similarity index 100% rename from static/img/usage/final-payroll/print-payslip.png rename to static/img/usage/general/final-payroll/print-payslip.png diff --git a/static/img/usage/final-payroll/process.png b/static/img/usage/general/final-payroll/process.png similarity index 100% rename from static/img/usage/final-payroll/process.png rename to static/img/usage/general/final-payroll/process.png diff --git a/static/img/usage/final-payroll/result-1.png b/static/img/usage/general/final-payroll/result-1.png similarity index 100% rename from static/img/usage/final-payroll/result-1.png rename to static/img/usage/general/final-payroll/result-1.png diff --git a/static/img/usage/final-payroll/result-2.png b/static/img/usage/general/final-payroll/result-2.png similarity index 100% rename from static/img/usage/final-payroll/result-2.png rename to static/img/usage/general/final-payroll/result-2.png diff --git a/static/img/usage/final-payroll/select-date-year.png b/static/img/usage/general/final-payroll/select-date-year.png similarity index 100% rename from static/img/usage/final-payroll/select-date-year.png rename to static/img/usage/general/final-payroll/select-date-year.png diff --git a/static/img/usage/final-payroll/summary-1.png b/static/img/usage/general/final-payroll/summary-1.png similarity index 100% rename from static/img/usage/final-payroll/summary-1.png rename to static/img/usage/general/final-payroll/summary-1.png diff --git a/static/img/usage/final-payroll/summary-2.png b/static/img/usage/general/final-payroll/summary-2.png similarity index 100% rename from static/img/usage/final-payroll/summary-2.png rename to static/img/usage/general/final-payroll/summary-2.png diff --git a/static/img/usage/online-mobile-approval/sample-scenario-1.png b/static/img/usage/general/online-mobile-approval/sample-scenario-1.png similarity index 100% rename from static/img/usage/online-mobile-approval/sample-scenario-1.png rename to static/img/usage/general/online-mobile-approval/sample-scenario-1.png diff --git a/static/img/usage/online-mobile-approval/sample-scenario-10.png b/static/img/usage/general/online-mobile-approval/sample-scenario-10.png similarity index 100% rename from static/img/usage/online-mobile-approval/sample-scenario-10.png rename to static/img/usage/general/online-mobile-approval/sample-scenario-10.png diff --git a/static/img/usage/online-mobile-approval/sample-scenario-11.png b/static/img/usage/general/online-mobile-approval/sample-scenario-11.png similarity index 100% rename from static/img/usage/online-mobile-approval/sample-scenario-11.png rename to static/img/usage/general/online-mobile-approval/sample-scenario-11.png diff --git a/static/img/usage/online-mobile-approval/sample-scenario-2.png b/static/img/usage/general/online-mobile-approval/sample-scenario-2.png similarity index 100% rename from static/img/usage/online-mobile-approval/sample-scenario-2.png rename to static/img/usage/general/online-mobile-approval/sample-scenario-2.png diff --git a/static/img/usage/online-mobile-approval/sample-scenario-3.png b/static/img/usage/general/online-mobile-approval/sample-scenario-3.png similarity index 100% rename from static/img/usage/online-mobile-approval/sample-scenario-3.png rename to static/img/usage/general/online-mobile-approval/sample-scenario-3.png diff --git a/static/img/usage/online-mobile-approval/sample-scenario-4.png b/static/img/usage/general/online-mobile-approval/sample-scenario-4.png similarity index 100% rename from static/img/usage/online-mobile-approval/sample-scenario-4.png rename to static/img/usage/general/online-mobile-approval/sample-scenario-4.png diff --git a/static/img/usage/online-mobile-approval/sample-scenario-5.png b/static/img/usage/general/online-mobile-approval/sample-scenario-5.png similarity index 100% rename from static/img/usage/online-mobile-approval/sample-scenario-5.png rename to static/img/usage/general/online-mobile-approval/sample-scenario-5.png diff --git a/static/img/usage/online-mobile-approval/sample-scenario-6.png b/static/img/usage/general/online-mobile-approval/sample-scenario-6.png similarity index 100% rename from static/img/usage/online-mobile-approval/sample-scenario-6.png rename to static/img/usage/general/online-mobile-approval/sample-scenario-6.png diff --git a/static/img/usage/online-mobile-approval/sample-scenario-7.png b/static/img/usage/general/online-mobile-approval/sample-scenario-7.png similarity index 100% rename from static/img/usage/online-mobile-approval/sample-scenario-7.png rename to static/img/usage/general/online-mobile-approval/sample-scenario-7.png diff --git a/static/img/usage/online-mobile-approval/sample-scenario-8.png b/static/img/usage/general/online-mobile-approval/sample-scenario-8.png similarity index 100% rename from static/img/usage/online-mobile-approval/sample-scenario-8.png rename to static/img/usage/general/online-mobile-approval/sample-scenario-8.png diff --git a/static/img/usage/online-mobile-approval/sample-scenario-9.png b/static/img/usage/general/online-mobile-approval/sample-scenario-9.png similarity index 100% rename from static/img/usage/online-mobile-approval/sample-scenario-9.png rename to static/img/usage/general/online-mobile-approval/sample-scenario-9.png diff --git a/static/img/usage/online-mobile-approval/setup-step-1.png b/static/img/usage/general/online-mobile-approval/setup-step-1.png similarity index 100% rename from static/img/usage/online-mobile-approval/setup-step-1.png rename to static/img/usage/general/online-mobile-approval/setup-step-1.png diff --git a/static/img/usage/online-mobile-approval/setup-step-2-1.png b/static/img/usage/general/online-mobile-approval/setup-step-2-1.png similarity index 100% rename from static/img/usage/online-mobile-approval/setup-step-2-1.png rename to static/img/usage/general/online-mobile-approval/setup-step-2-1.png diff --git a/static/img/usage/online-mobile-approval/setup-step-2-2.png b/static/img/usage/general/online-mobile-approval/setup-step-2-2.png similarity index 100% rename from static/img/usage/online-mobile-approval/setup-step-2-2.png rename to static/img/usage/general/online-mobile-approval/setup-step-2-2.png diff --git a/static/img/usage/online-mobile-approval/setup-step-3-1.png b/static/img/usage/general/online-mobile-approval/setup-step-3-1.png similarity index 100% rename from static/img/usage/online-mobile-approval/setup-step-3-1.png rename to static/img/usage/general/online-mobile-approval/setup-step-3-1.png diff --git a/static/img/usage/online-mobile-approval/setup-step-3-2.png b/static/img/usage/general/online-mobile-approval/setup-step-3-2.png similarity index 100% rename from static/img/usage/online-mobile-approval/setup-step-3-2.png rename to static/img/usage/general/online-mobile-approval/setup-step-3-2.png diff --git a/static/img/usage/online-mobile-approval/setup-step-3-3.png b/static/img/usage/general/online-mobile-approval/setup-step-3-3.png similarity index 100% rename from static/img/usage/online-mobile-approval/setup-step-3-3.png rename to static/img/usage/general/online-mobile-approval/setup-step-3-3.png diff --git a/static/img/usage/online-mobile-approval/setup-step-4.png b/static/img/usage/general/online-mobile-approval/setup-step-4.png similarity index 100% rename from static/img/usage/online-mobile-approval/setup-step-4.png rename to static/img/usage/general/online-mobile-approval/setup-step-4.png diff --git a/static/img/usage/pcb-cp38-receipt-no-date/calculate.png b/static/img/usage/general/pcb-cp38-receipt-no-date/calculate.png similarity index 100% rename from static/img/usage/pcb-cp38-receipt-no-date/calculate.png rename to static/img/usage/general/pcb-cp38-receipt-no-date/calculate.png diff --git a/static/img/usage/pcb-cp38-receipt-no-date/example.png b/static/img/usage/general/pcb-cp38-receipt-no-date/example.png similarity index 100% rename from static/img/usage/pcb-cp38-receipt-no-date/example.png rename to static/img/usage/general/pcb-cp38-receipt-no-date/example.png diff --git a/static/img/usage/pcb-cp38-receipt-no-date/pcb-receipt-interface.png b/static/img/usage/general/pcb-cp38-receipt-no-date/pcb-receipt-interface.png similarity index 100% rename from static/img/usage/pcb-cp38-receipt-no-date/pcb-receipt-interface.png rename to static/img/usage/general/pcb-cp38-receipt-no-date/pcb-receipt-interface.png diff --git a/static/img/usage/pcb-cp38-receipt-no-date/pcb-receipt.png b/static/img/usage/general/pcb-cp38-receipt-no-date/pcb-receipt.png similarity index 100% rename from static/img/usage/pcb-cp38-receipt-no-date/pcb-receipt.png rename to static/img/usage/general/pcb-cp38-receipt-no-date/pcb-receipt.png diff --git a/static/img/usage/pcb-cp38-receipt-no-date/print-income-tax-pcb.png b/static/img/usage/general/pcb-cp38-receipt-no-date/print-income-tax-pcb.png similarity index 100% rename from static/img/usage/pcb-cp38-receipt-no-date/print-income-tax-pcb.png rename to static/img/usage/general/pcb-cp38-receipt-no-date/print-income-tax-pcb.png diff --git a/static/img/usage/pcb-cp38-receipt-no-date/result.png b/static/img/usage/general/pcb-cp38-receipt-no-date/result.png similarity index 100% rename from static/img/usage/pcb-cp38-receipt-no-date/result.png rename to static/img/usage/general/pcb-cp38-receipt-no-date/result.png diff --git a/static/img/usage/zakat-tabung-haji/company-profile.png b/static/img/usage/general/zakat-tabung-haji/company-profile.png similarity index 100% rename from static/img/usage/zakat-tabung-haji/company-profile.png rename to static/img/usage/general/zakat-tabung-haji/company-profile.png diff --git a/static/img/usage/zakat-tabung-haji/create-tabung-haji.png b/static/img/usage/general/zakat-tabung-haji/create-tabung-haji.png similarity index 100% rename from static/img/usage/zakat-tabung-haji/create-tabung-haji.png rename to static/img/usage/general/zakat-tabung-haji/create-tabung-haji.png diff --git a/static/img/usage/zakat-tabung-haji/create-zakat.png b/static/img/usage/general/zakat-tabung-haji/create-zakat.png similarity index 100% rename from static/img/usage/zakat-tabung-haji/create-zakat.png rename to static/img/usage/general/zakat-tabung-haji/create-zakat.png diff --git a/static/img/usage/zakat-tabung-haji/employee-edit-zakat-tabung-haji.png b/static/img/usage/general/zakat-tabung-haji/employee-edit-zakat-tabung-haji.png similarity index 100% rename from static/img/usage/zakat-tabung-haji/employee-edit-zakat-tabung-haji.png rename to static/img/usage/general/zakat-tabung-haji/employee-edit-zakat-tabung-haji.png diff --git a/static/img/usage/zakat-tabung-haji/lembaga-zakat-selangor-1.png b/static/img/usage/general/zakat-tabung-haji/lembaga-zakat-selangor-1.png similarity index 100% rename from static/img/usage/zakat-tabung-haji/lembaga-zakat-selangor-1.png rename to static/img/usage/general/zakat-tabung-haji/lembaga-zakat-selangor-1.png diff --git a/static/img/usage/zakat-tabung-haji/lembaga-zakat-selangor-2.png b/static/img/usage/general/zakat-tabung-haji/lembaga-zakat-selangor-2.png similarity index 100% rename from static/img/usage/zakat-tabung-haji/lembaga-zakat-selangor-2.png rename to static/img/usage/general/zakat-tabung-haji/lembaga-zakat-selangor-2.png diff --git a/static/img/usage/zakat-tabung-haji/maintain-deduction.png b/static/img/usage/general/zakat-tabung-haji/maintain-deduction.png similarity index 100% rename from static/img/usage/zakat-tabung-haji/maintain-deduction.png rename to static/img/usage/general/zakat-tabung-haji/maintain-deduction.png diff --git a/static/img/usage/zakat-tabung-haji/new-deduction.png b/static/img/usage/general/zakat-tabung-haji/new-deduction.png similarity index 100% rename from static/img/usage/zakat-tabung-haji/new-deduction.png rename to static/img/usage/general/zakat-tabung-haji/new-deduction.png diff --git a/static/img/usage/zakat-tabung-haji/pending-payroll-deduction.png b/static/img/usage/general/zakat-tabung-haji/pending-payroll-deduction.png similarity index 100% rename from static/img/usage/zakat-tabung-haji/pending-payroll-deduction.png rename to static/img/usage/general/zakat-tabung-haji/pending-payroll-deduction.png diff --git a/static/img/usage/zakat-tabung-haji/process-result.png b/static/img/usage/general/zakat-tabung-haji/process-result.png similarity index 100% rename from static/img/usage/zakat-tabung-haji/process-result.png rename to static/img/usage/general/zakat-tabung-haji/process-result.png diff --git a/static/img/usage/zakat-tabung-haji/select-date.png b/static/img/usage/general/zakat-tabung-haji/select-date.png similarity index 100% rename from static/img/usage/zakat-tabung-haji/select-date.png rename to static/img/usage/general/zakat-tabung-haji/select-date.png diff --git a/static/img/usage/zakat-tabung-haji/select-payment-format.png b/static/img/usage/general/zakat-tabung-haji/select-payment-format.png similarity index 100% rename from static/img/usage/zakat-tabung-haji/select-payment-format.png rename to static/img/usage/general/zakat-tabung-haji/select-payment-format.png diff --git a/static/img/usage/zakat-tabung-haji/tabung-haji-number.png b/static/img/usage/general/zakat-tabung-haji/tabung-haji-number.png similarity index 100% rename from static/img/usage/zakat-tabung-haji/tabung-haji-number.png rename to static/img/usage/general/zakat-tabung-haji/tabung-haji-number.png diff --git a/static/img/usage/zakat-tabung-haji/tabung-haji-report.png b/static/img/usage/general/zakat-tabung-haji/tabung-haji-report.png similarity index 100% rename from static/img/usage/zakat-tabung-haji/tabung-haji-report.png rename to static/img/usage/general/zakat-tabung-haji/tabung-haji-report.png diff --git a/static/img/usage/zakat-tabung-haji/tabung-haji-select-date.png b/static/img/usage/general/zakat-tabung-haji/tabung-haji-select-date.png similarity index 100% rename from static/img/usage/zakat-tabung-haji/tabung-haji-select-date.png rename to static/img/usage/general/zakat-tabung-haji/tabung-haji-select-date.png diff --git a/static/img/usage/zakat-tabung-haji/zakat.png b/static/img/usage/general/zakat-tabung-haji/zakat.png similarity index 100% rename from static/img/usage/zakat-tabung-haji/zakat.png rename to static/img/usage/general/zakat-tabung-haji/zakat.png From 0adc810a6cc74fd03e8120a78326fa74b4c45d19 Mon Sep 17 00:00:00 2001 From: yichensql-gif Date: Thu, 23 Oct 2025 14:33:56 +0800 Subject: [PATCH 03/13] fix: rephase some grammar --- docs/usage/general/batch-email.md | 4 ++-- docs/usage/general/online-mobile-approval.md | 2 +- docs/usage/tools/maintain-diy.md | 16 ++++++++-------- docs/usage/tools/options.md | 2 +- docs/usage/tools/sql-view.md | 4 ++-- 5 files changed, 14 insertions(+), 14 deletions(-) diff --git a/docs/usage/general/batch-email.md b/docs/usage/general/batch-email.md index 7bb2b9e..8abe266 100644 --- a/docs/usage/general/batch-email.md +++ b/docs/usage/general/batch-email.md @@ -11,7 +11,7 @@ Make sure you had done setting the template in Maintain Employee. ## Setting in Maintain Employee -You can [CLICK HERE](https://docs.sql.com.my/sqlacc/usage/tools/fast-report/guide#fast-report---e-mail-client-batch--e-mail-native) to go Batch Email Link +You can open the Batch Email guide for Fast Report (E-Mail Client Batch / E-Mail Native): [Batch Email guide](https://docs.sql.com.my/sqlacc/usage/tools/fast-report/guide#fast-report---e-mail-client-batch--e-mail-native) 1. Click on 3.2.2 Version 1.2021.196.166 & above @@ -216,7 +216,7 @@ Make sure your pc had install window email (Ex : Outlook or Thunderbird) :::info[note] Make Sure you had create App Password -- If you’re using Gmail , you can [CLICK HERE](https://support.google.com/accounts/answer/185833?hl=en) to create your App Password +- If you’re using Gmail, see Google’s guide to create an App Password: [Create an App Password](https://support.google.com/accounts/answer/185833?hl=en) ::: diff --git a/docs/usage/general/online-mobile-approval.md b/docs/usage/general/online-mobile-approval.md index f32ff59..01ea8d6 100644 --- a/docs/usage/general/online-mobile-approval.md +++ b/docs/usage/general/online-mobile-approval.md @@ -168,7 +168,7 @@ These **ALL** can use Online Approval for user : 1. Make Sure you had create App Password - - If you’re using Gmail , you can [CLICK HERE](https://support.google.com/accounts/answer/185833?hl=en) to follow the steps to create your App Password + - If you’re using Gmail, see Google’s guide to create an App Password: [Create an App Password](https://support.google.com/accounts/answer/185833?hl=en) - After get App Password, return to your SQL Payroll 2. Click on Email Setting diff --git a/docs/usage/tools/maintain-diy.md b/docs/usage/tools/maintain-diy.md index a1d6fd8..11197f2 100644 --- a/docs/usage/tools/maintain-diy.md +++ b/docs/usage/tools/maintain-diy.md @@ -44,7 +44,7 @@ User can override the build in Calculation/Formula to suite their requirement. T ### Example 1 - Leave Entitlement Processor - Calculate from Confirm Date -Below is Example to change the Leave Entitlement Processor to be calculate from the Confirmation Date. +Below is example to change the Leave Entitlement Processor to be calculate from the Confirmation Date. 1. Right Click at **Leave Entitlement Processor** and select **New Calculation**. @@ -54,9 +54,9 @@ Below is Example to change the Leave Entitlement Processor to be calculate from ![diy-example1-2](../../../static/img/usage/tools/maintain-diy/diy-example1-2.png) -3. Enter any **Description** (eg Leave_Entitlement_Processor-Confirm Date) in the Description field (Only Alphanumeric & no spacing). +3. Enter any **Description** (eg. Leave_Entitlement_Processor-Confirm Date) in the Description field (Only Alphanumeric & no spacing). -4. In the **Script** look for the word *lJoinDate* & change it to *lConfirmDate*. +4. In the **Script** look for the word `lJoinDate` & change it to `lConfirmDate`. ![diy-example1-3](../../../static/img/usage/tools/maintain-diy/diy-example1-3.jpg) @@ -70,9 +70,9 @@ Below is example to change the Unpaid Leave Amount to base on Working Days in Ma ![diy-example2-1](../../../static/img/usage/tools/maintain-diy/diy-example2-1.png) -3. Enter any **Description** (eg Leave_Calculate_Amt-Unpaid) in the Description field (Only Alphanumeric & no spacing). +3. Enter any **Description** (eg. Leave_Calculate_Amt-Unpaid) in the Description field (Only Alphanumeric & no spacing). -4. In the **Script** look for the word *DaysBetweenStartAndEndDate* & change it to *WorkingDayPerMonth* or Copy below script & paste to the Script Section. +4. In the **Script** look for the word `DaysBetweenStartAndEndDate` & change it to `WorkingDayPerMonth` or Copy below script & paste to the Script Section. ```pascal // Example - Leave Calculate Amount - Based On Employee Default Wages @@ -89,7 +89,7 @@ Below is example to change the Unpaid Leave Amount to base on Working Days in Ma 6. Click **Save** button and click X to Close. -7. Select the Item just created (eg Leave_Calculate_Amt-Unpaid) and click Ok button. +7. Select the Item just created (eg. Leave_Calculate_Amt-Unpaid) and click Ok button. 8. Done & **Remember** to set it at **Maintain Leave Group** under the **Amount Column** for UL. @@ -101,7 +101,7 @@ Below is example to set Maximum limit the Overtime Rate. 2. Click **New Button**. -3. Enter any **Description** (eg Overtime_Max_Rate) in the Description field (Only Alphanumeric & no spacing) +3. Enter any **Description** (eg. Overtime_Max_Rate) in the Description field (Only Alphanumeric & no spacing) 4. Copy below script & paste to the Script Section. @@ -125,6 +125,6 @@ Below is example to set Maximum limit the Overtime Rate. 6. Click **Save** button and click X to Close. -7. Select the Item just created (eg Overtime_Max_Rate) and click Ok button. +7. Select the Item just created (eg. Overtime_Max_Rate) and click Ok button. 8. Done & **Remember** to set it at **Maintain Overtime**. diff --git a/docs/usage/tools/options.md b/docs/usage/tools/options.md index a07e6b2..61168ba 100644 --- a/docs/usage/tools/options.md +++ b/docs/usage/tools/options.md @@ -43,6 +43,6 @@ This is the setting is set and will apply to all user. ## Personal Setting -This is the setting changes is set for the Current Login user. +These settings apply only to the currently logged-in user. ![personal-general-setting](../../../static/img/usage/tools/options/personal-general-setting.png) diff --git a/docs/usage/tools/sql-view.md b/docs/usage/tools/sql-view.md index a1ea83f..751d4f5 100644 --- a/docs/usage/tools/sql-view.md +++ b/docs/usage/tools/sql-view.md @@ -27,9 +27,9 @@ In this example scenario, the goal is allowing KL User to view/ edit only the em ![new-template](../../../static/img/usage/tools/sql-view/new-template.png) - 3. Press New + 3. Press **New** - 4. Enter description, enter condition and save + 4. Enter description, condition and save ![save-template](../../../static/img/usage/tools/sql-view/save-template.png) From c8a77b6957a54f863f940a66296461fab0f710bb Mon Sep 17 00:00:00 2001 From: LimXD2003 Date: Fri, 17 Oct 2025 11:30:05 +0800 Subject: [PATCH 04/13] fix : update HR page image names code formatting (to resolve yellow highlight from markdownlint) --- .../human-resource/human-resources-faq.md | 12 ++-- .../human-resource/human-resources-setup.md | 68 ++++++------------ .../human-resourrces-additional-functions.md | 44 +++++------- ...1.jpg => faq-get-appointment-letter-1.jpg} | Bin ...tep1.jpg => advanced-repayment-step-1.jpg} | Bin ...nt-Step1.jpg => auto-repayment-step-1.jpg} | Bin .../{5.png => ic-as-pdf-password-1.png} | Bin .../{6.png => ic-as-pdf-password-2.png} | Bin .../{7.png => ic-as-pdf-password-3.png} | Bin .../{8.png => ic-as-pdf-password-4.png} | Bin ....jpg => loan-repayment-history-step-1.jpg} | Bin ...n-employee.png => maintain-employee-1.png} | Bin .../maintain-employee-button.png | Bin 0 -> 6543 bytes ...oan-Step1.jpg => maintain-loan-step-1.jpg} | Bin ...oan-Step2.jpg => maintain-loan-step-2.jpg} | Bin ...Allowance-Tab1.jpg => allowance-tab-1.jpg} | Bin ...chments-Tab1.jpg => attachments-tab-1.jpg} | Bin .../{Child-Tab1.jpg => child-tab-1.jpg} | Bin ...Deduction-Tab1.jpg => deduction-tab-1.jpg} | Bin .../{Family-Tab1.jpg => family-tab-1.jpg} | Bin .../{Grouping-Tab1.jpg => grouping-tab-1.jpg} | Bin .../{History-Tab1.jpg => history-tab-1.jpg} | Bin ...ement1.png => maintain-announcement-1.png} | Bin ...tain-Branch1.jpg => maintain-branch-1.jpg} | Bin ...-Category1.jpg => maintain-category-1.jpg} | Bin ...artment1.jpg => maintain-department-1.jpg} | Bin ...intain-Group1.jpg => maintain-group-1.jpg} | Bin ...tType1.jpg => maintain-history-type-1.jpg} | Bin .../{Maintain-Job1.jpg => maintain-job-1.jpg} | Bin ...in-Project1.jpg => maintain-project-1.jpg} | Bin ...Maintain-Race1.jpg => maintain-race-1.jpg} | Bin ...Maintain-Task1.jpg => maintain-task-1.jpg} | Bin .../{Note-Tab1.jpg => note-tab-1.jpg} | Bin .../{Payroll-Tab1.jpg => payroll-tab-1.jpg} | Bin .../{Personal-Tab1.jpg => personal-tab-1.jpg} | Bin ...ting-1.png => print-history-listing-1.png} | Bin ...ting-2.png => print-history-listing-2.png} | Bin 37 files changed, 45 insertions(+), 79 deletions(-) rename static/img/usage/human-resource/hr-faq-images/{faq-GetAppointmentLetter1.jpg => faq-get-appointment-letter-1.jpg} (100%) rename static/img/usage/human-resource/hr-function-images/{AdvancedRepayment-Step1.jpg => advanced-repayment-step-1.jpg} (100%) rename static/img/usage/human-resource/hr-function-images/{AutoRepayment-Step1.jpg => auto-repayment-step-1.jpg} (100%) rename static/img/usage/human-resource/hr-function-images/{5.png => ic-as-pdf-password-1.png} (100%) rename static/img/usage/human-resource/hr-function-images/{6.png => ic-as-pdf-password-2.png} (100%) rename static/img/usage/human-resource/hr-function-images/{7.png => ic-as-pdf-password-3.png} (100%) rename static/img/usage/human-resource/hr-function-images/{8.png => ic-as-pdf-password-4.png} (100%) rename static/img/usage/human-resource/hr-function-images/{LoanRepaymentHistory-Step1.jpg => loan-repayment-history-step-1.jpg} (100%) rename static/img/usage/human-resource/hr-function-images/{maintain-employee.png => maintain-employee-1.png} (100%) create mode 100644 static/img/usage/human-resource/hr-function-images/maintain-employee-button.png rename static/img/usage/human-resource/hr-function-images/{MaintainLoan-Step1.jpg => maintain-loan-step-1.jpg} (100%) rename static/img/usage/human-resource/hr-function-images/{MaintainLoan-Step2.jpg => maintain-loan-step-2.jpg} (100%) rename static/img/usage/human-resource/hr-setup-images/{Allowance-Tab1.jpg => allowance-tab-1.jpg} (100%) rename static/img/usage/human-resource/hr-setup-images/{Attachments-Tab1.jpg => attachments-tab-1.jpg} (100%) rename static/img/usage/human-resource/hr-setup-images/{Child-Tab1.jpg => child-tab-1.jpg} (100%) rename static/img/usage/human-resource/hr-setup-images/{Deduction-Tab1.jpg => deduction-tab-1.jpg} (100%) rename static/img/usage/human-resource/hr-setup-images/{Family-Tab1.jpg => family-tab-1.jpg} (100%) rename static/img/usage/human-resource/hr-setup-images/{Grouping-Tab1.jpg => grouping-tab-1.jpg} (100%) rename static/img/usage/human-resource/hr-setup-images/{History-Tab1.jpg => history-tab-1.jpg} (100%) rename static/img/usage/human-resource/hr-setup-images/{Maintain-Announcement1.png => maintain-announcement-1.png} (100%) rename static/img/usage/human-resource/hr-setup-images/{Maintain-Branch1.jpg => maintain-branch-1.jpg} (100%) rename static/img/usage/human-resource/hr-setup-images/{Maintain-Category1.jpg => maintain-category-1.jpg} (100%) rename static/img/usage/human-resource/hr-setup-images/{Maintain-Department1.jpg => maintain-department-1.jpg} (100%) rename static/img/usage/human-resource/hr-setup-images/{Maintain-Group1.jpg => maintain-group-1.jpg} (100%) rename static/img/usage/human-resource/hr-setup-images/{Maintain-HistortType1.jpg => maintain-history-type-1.jpg} (100%) rename static/img/usage/human-resource/hr-setup-images/{Maintain-Job1.jpg => maintain-job-1.jpg} (100%) rename static/img/usage/human-resource/hr-setup-images/{Maintain-Project1.jpg => maintain-project-1.jpg} (100%) rename static/img/usage/human-resource/hr-setup-images/{Maintain-Race1.jpg => maintain-race-1.jpg} (100%) rename static/img/usage/human-resource/hr-setup-images/{Maintain-Task1.jpg => maintain-task-1.jpg} (100%) rename static/img/usage/human-resource/hr-setup-images/{Note-Tab1.jpg => note-tab-1.jpg} (100%) rename static/img/usage/human-resource/hr-setup-images/{Payroll-Tab1.jpg => payroll-tab-1.jpg} (100%) rename static/img/usage/human-resource/hr-setup-images/{Personal-Tab1.jpg => personal-tab-1.jpg} (100%) rename static/img/usage/human-resource/hr-setup-images/{PrintHistoryListing-1.png => print-history-listing-1.png} (100%) rename static/img/usage/human-resource/hr-setup-images/{PrintHistoryListing-2.png => print-history-listing-2.png} (100%) diff --git a/docs/usage/human-resource/human-resources-faq.md b/docs/usage/human-resource/human-resources-faq.md index 9771627..dc0ea83 100644 --- a/docs/usage/human-resource/human-resources-faq.md +++ b/docs/usage/human-resource/human-resources-faq.md @@ -6,26 +6,26 @@ slug: /usage/human-resource/faq tags: ["SQL Account", "HR", "FAQ"] --- -## Where I can get/modify the appointment letter? +## 1. Where I can get/modify the appointment letter? -**Issue:** +**Issue:** -Where do i get the appointment letters +Where to get the appointment letters **Solution:** 1. Go to **Human Resource | Maintain Employee**..., you can found the following common use employee letters: - - Acceptance of Resignatin Letter + - Acceptance of Resignation Letter - Appointment Letter - Confirmation Letter - Employment Application Form - Increment Letter - - Interview Aseessment Form + - Interview Assessment Form - and more... 2. **Highlight** the employee. 3. Click **preview**. 4. Select the **HR.Employee Appointment Report**. -![HR_FAQ](../../../static/img/usage/human-resource/hr-faq-images/faq-GetAppointmentLetter1.jpg) \ No newline at end of file +![HR_FAQ](../../../static/img/usage/human-resource/hr-faq-images/faq-get-appointment-letter-1.jpg) diff --git a/docs/usage/human-resource/human-resources-setup.md b/docs/usage/human-resource/human-resources-setup.md index 872ac20..c1b982c 100644 --- a/docs/usage/human-resource/human-resources-setup.md +++ b/docs/usage/human-resource/human-resources-setup.md @@ -10,7 +10,6 @@ tags: ["SQL Payroll", "HR"] Whenever a new staff/worker/person/crew enter the company, Maintain Employee is the place where user needs to key in the details - 1. Navigate yourself to the Maintain Employee panel ![navigate-1](../../../static/img/usage/human-resource/hr-setup-images/navigate-1.png) @@ -25,14 +24,14 @@ Whenever a new staff/worker/person/crew enter the company, Maintain Employee is 3. Key in the employee’s personal details - ![HR_Maintain_Employee_1](../../../static/img/usage/human-resource/hr-setup-images/Personal-Tab1.jpg) + ![HR_Maintain_Employee_1](../../../static/img/usage/human-resource/hr-setup-images/personal-tab-1.jpg) ### Personal Click the *Change Password* button & enter the password if you wanted to allow the Employee to login to see his/her own payroll data & report Remember to untick the *Active* for any employee had resign before process the payroll. -![HR_Personal_1](../../../static/img/usage/human-resource/hr-setup-images/Personal-Tab1.jpg) +![HR_Personal_1](../../../static/img/usage/human-resource/hr-setup-images/personal-tab-1.jpg) | Field Name | Properties | |-----------------|------------| @@ -93,15 +92,14 @@ In this tab is use for report grouping for the selected employee. It can be eith - [History Type](../../usage/human-resource/human-resources-setup.md#maintain-history-type) - [Announcement](../../usage/human-resource/human-resources-setup.md#maintain-announcement) - -![HR_Grouping_1](../../../static/img/usage/human-resource/hr-setup-images/Grouping-Tab1.jpg) +![HR_Grouping_1](../../../static/img/usage/human-resource/hr-setup-images/grouping-tab-1.jpg) ### Family In this tab is use to keep the his/her spouse/family information. It is useful in case anything happen to the employee we able to inform/contact his/her spouse/family -![HR_Family_1](../../../static/img/usage/human-resource/hr-setup-images/Family-Tab1.jpg) +![HR_Family_1](../../../static/img/usage/human-resource/hr-setup-images/family-tab-1.jpg) | Field Name | Properties | |----------------|------------| @@ -129,7 +127,7 @@ It is useful in case anything happen to the employee we able to inform/contact h ### Payroll Info -![HR_Payroll_1](../../../static/img/usage/human-resource/hr-setup-images/Payroll-Tab1.jpg) +![HR_Payroll_1](../../../static/img/usage/human-resource/hr-setup-images/payroll-tab-1.jpg) | Field Name | Properties | Field Name | Properties | |------------------|------------|------------------|------------| @@ -172,13 +170,13 @@ It is useful in case anything happen to the employee we able to inform/contact h In this Tab is to enter the Fixed [Allowance](/usage/payroll/setup#maintain-allowance) entitled for each month for selected Employee. -![HR_Allowance_1](../../../static/img/usage/human-resource/hr-setup-images/Allowance-Tab1.jpg) +![HR_Allowance_1](../../../static/img/usage/human-resource/hr-setup-images/allowance-tab-1.jpg) ### Deduction In this Tab is to enter the Fixed [Deduction](/usage/payroll/setup#maintain-deduction) entitled for each month for selected Employee. -![HR_Deduction_1](../../../static/img/usage/human-resource/hr-setup-images/Deduction-Tab1.jpg) +![HR_Deduction_1](../../../static/img/usage/human-resource/hr-setup-images/deduction-tab-1.jpg) ### Note @@ -188,14 +186,14 @@ For Photo please try 1. Save in Jpeg file. 2. The Jpeg file size limit as 200KB -![HR_Note_1](../../../static/img/usage/human-resource/hr-setup-images/Note-Tab1.jpg) +![HR_Note_1](../../../static/img/usage/human-resource/hr-setup-images/note-tab-1.jpg) ### History In this tab is to show the list of history changes in this selected Employee. Select the Increment at the type column in order to print the Increment Letter (HR.Employee.Increment.Report). -![HR_History_1](../../../static/img/usage/human-resource/hr-setup-images/History-Tab1.jpg) +![HR_History_1](../../../static/img/usage/human-resource/hr-setup-images/history-tab-1.jpg) | Field Name | Properties | |--------------|-------------------------------------| @@ -208,7 +206,7 @@ Select the Increment at the type column in order to print the Increment Letter ( In this tab is to list out all taxable children(s). -![HR_hild_1](../../../static/img/usage/human-resource/hr-setup-images/Child-Tab1.jpg) +![HR_hild_1](../../../static/img/usage/human-resource/hr-setup-images/child-tab-1.jpg) | Field Name | Properties | |--------------------|------------------------------------------------------------------------------------------------------| @@ -229,15 +227,13 @@ In this tab is to list out all taxable children(s). Here user can attach the file to selected employee (eg Letter of Offer). Make sure the file is keep in the server as the system only keep the file link/path only. -![HR_Attachments_1](../../../static/img/usage/human-resource/hr-setup-images/Attachments-Tab1.jpg) - - +![HR_Attachments_1](../../../static/img/usage/human-resource/hr-setup-images/attachments-tab-1.jpg) ## Maintain Branch This is useful for user had many branch company but the salary is paid from HQ. -![HR_maintain_branch_1](../../../static/img/usage/human-resource/hr-setup-images/Maintain-Branch1.jpg) +![HR_maintain_branch_1](../../../static/img/usage/human-resource/hr-setup-images/maintain-branch-1.jpg) | Field Name | Properties | |----------------|----------------------------------------------------------------------------| @@ -246,13 +242,11 @@ This is useful for user had many branch company but the salary is paid from HQ. | Active | Untick it if the selected branch code is unavailable | | Set as Default | Click This button if wanted the selected Branch Code to be Auto Assign this Branch Code on New at [Maintain Employee](/usage/human-resource/setup#maintain-employee) | - - ## Maintain Department A division of a large organization such as Account, Marketing & etc. -![HR_department_1](../../../static/img/usage/human-resource/hr-setup-images/Maintain-Department1.jpg) +![HR_department_1](../../../static/img/usage/human-resource/hr-setup-images/maintain-department-1.jpg) | Field Name | Properties | |----------------|----------------------------------------------------------------------------| @@ -261,13 +255,11 @@ A division of a large organization such as Account, Marketing & etc. | Active | Untick it if the selected Department code is unavailable | | Set as Default | Click This button if wanted the selected Department Code to be Auto Assign this Department Code on New at [Maintain Employee](../../usage/human-resource/setup#maintain-employee) | - - ## Maintain Group This is another type of report grouping by Group type. -![HR_group_1](../../../static/img/usage/human-resource/hr-setup-images/Maintain-Group1.jpg) +![HR_group_1](../../../static/img/usage/human-resource/hr-setup-images/maintain-group-1.jpg) | Field Name | Properties | |----------------|----------------------------------------------------------------------------| @@ -276,13 +268,11 @@ This is another type of report grouping by Group type. | Active | Untick it if the selected Group code is unavailable | | Set as Default | Click This button if wanted the selected Group Code to be Auto Assign this Group Code on New at [Maintain Employee](../../usage/human-resource/setup#maintain-employee) | - - ## Maintain Category User also can divide the employee by class or division. -![HR_category_1](../../../static/img/usage/human-resource/hr-setup-images/Maintain-Category1.jpg) +![HR_category_1](../../../static/img/usage/human-resource/hr-setup-images/maintain-category-1.jpg) | Field Name | Properties | |----------------|----------------------------------------------------------------------------| @@ -291,13 +281,11 @@ User also can divide the employee by class or division. | Active | Untick it if the selected Category Code is unavailable | | Set as Default | Click This button if wanted the selected Category Code to be Auto Assign this Category Code on New at [Maintain Employee](../../usage/human-resource/setup#maintain-employee) | - - ## Maintain Project User also can Group the employee by Project which the employee work at. -![HR_project_1](../../../static/img/usage/human-resource/hr-setup-images/Maintain-Project1.jpg) +![HR_project_1](../../../static/img/usage/human-resource/hr-setup-images/maintain-project-1.jpg) | Field Name | Properties | |----------------|----------------------------------------------------------------------------| @@ -306,13 +294,11 @@ User also can Group the employee by Project which the employee work at. | Active | Untick it if the selected Project Code is unavailable | | Set as Default | Click This button if wanted the selected Project Code to be Auto Assign this Project Code on New at [Maintain Employee](../../usage/human-resource/setup#maintain-employee) | - - ## Maintain Job User also can Group the employee by Job Type in report. -![HR_Job_1](../../../static/img/usage/human-resource/hr-setup-images/Maintain-Job1.jpg) +![HR_Job_1](../../../static/img/usage/human-resource/hr-setup-images/maintain-job-1.jpg) | Field Name | Properties | |----------------|----------------------------------------------------------------------------| @@ -321,13 +307,11 @@ User also can Group the employee by Job Type in report. | Active | Untick it if the selected Job Code is unavailable | | Set as Default | Click This button if wanted the selected Job Code to be Auto Assign this Job Code on New at [Maintain Employee](../../usage/human-resource/setup#maintain-employee) | - - ## Maintain Task User also can divide the employee by piece of work to be done or undertaken. -![HR_Task_1](../../../static/img/usage/human-resource/hr-setup-images/Maintain-Task1.jpg) +![HR_Task_1](../../../static/img/usage/human-resource/hr-setup-images/maintain-task-1.jpg) | Field Name | Properties | |----------------|----------------------------------------------------------------------------| @@ -336,13 +320,11 @@ User also can divide the employee by piece of work to be done or undertaken. | Active | Untick it if the selected Task Code is unavailable | | Set as Default | Click This button if wanted the selected Task Code to be Auto Assign this Task Code on New at [Maintain Employee](../../usage/human-resource/setup#maintain-employee) | - - ## Maintain Race User also can Group the employee by Race Type in report. -![HR_Race_1](../../../static/img/usage/human-resource/hr-setup-images/Maintain-Race1.jpg) +![HR_Race_1](../../../static/img/usage/human-resource/hr-setup-images/maintain-race-1.jpg) | Field Name | Properties | |----------------|----------------------------------------------------------------------------| @@ -351,12 +333,11 @@ User also can Group the employee by Race Type in report. | Active | Untick it if the selected Race Code is unavailable | | Set as Default | Click This button if wanted the selected Race Code to be Auto Assign this Race Code on New at [Maintain Employee](../../usage/human-resource/setup#maintain-employee) | - ## Maintain History Type This is to use to allow user to Group the Changes in the Maintain Employee -![HR_History_Type_1](../../../static/img/usage/human-resource/hr-setup-images/Maintain-HistortType1.jpg) +![HR_History_Type_1](../../../static/img/usage/human-resource/hr-setup-images/maintain-history-type-1.jpg) | Field Name | Properties | |----------------|------------------------------------------------------------------------------------------------| @@ -365,12 +346,11 @@ This is to use to allow user to Group the Changes in the Maintain Employee | Active | Untick it if the selected History Type Code is unavailable | | Set as Default | Click This button if wanted the selected History Type Code to be Auto Assign this History Type Code on New Changes at [Maintain Employee](../../usage/human-resource/setup#maintain-employee) | - ## Maintain Announcement This is to used to create, manage, and distribute company-wide or employee-specific announcements within the payroll and HR system, allowing users to share information, updates, or important reminders with their team -![HR_Announcement_1](../../../static/img/usage/human-resource/hr-setup-images/Maintain-Announcement1.png) +![HR_Announcement_1](../../../static/img/usage/human-resource/hr-setup-images/maintain-announcement-1.png) | Field Name | Properties | |-------------|-------------| @@ -380,14 +360,12 @@ This is to used to create, manage, and distribute company-wide or employee-speci | Category | The classification or type of announcement (e.g., General, System Update, Event). | | Remark | Additional notes or comments related to the announcement. | - - ## Print History Lisitng This provides a comprehensive record of all past history types for employees, and is able to furthur and filter, sort and group the employees witth the fields below -![HR_print_history_listing_1](../../../static/img/usage/human-resource/hr-setup-images/PrintHistoryListing-1.png) +![HR_print_history_listing_1](../../../static/img/usage/human-resource/hr-setup-images/print-history-listing-1.png) This is how the report generated will look like -![HR_print_history_listing_2](../../../static/img/usage/human-resource/hr-setup-images/PrintHistoryListing-2.png) \ No newline at end of file +![HR_print_history_listing_2](../../../static/img/usage/human-resource/hr-setup-images/print-history-listing-2.png) diff --git a/docs/usage/human-resource/human-resourrces-additional-functions.md b/docs/usage/human-resource/human-resourrces-additional-functions.md index 414c6de..af69c7a 100644 --- a/docs/usage/human-resource/human-resourrces-additional-functions.md +++ b/docs/usage/human-resource/human-resourrces-additional-functions.md @@ -27,7 +27,7 @@ In order to use this, user’s computer must configure with window email first 2. Key in the PDF password and enter the email address - ![maintain-employee](../../../static/img/usage/human-resource/hr-function-images/maintain-employee.png) + ![maintain-employee](../../../static/img/usage/human-resource/hr-function-images/maintain-employee-1.png) 3. Next, go to **Payroll** > **Print Payslip**. Choose the month End Payslip, Apply and Preview @@ -59,15 +59,13 @@ In order to use this, user’s computer must configure with window email first 5. Save the structure, copy and paste the New IC value to Name2 column -![5](../../../static/img/usage/human-resource/hr-function-images/5.png) +![5](../../../static/img/usage/human-resource/hr-function-images/ic-as-pdf-password-1.png) -![6](../../../static/img/usage/human-resource/hr-function-images/6.png) - -![7](../../../static/img/usage/human-resource/hr-function-images/7.png) - -![8](../../../static/img/usage/human-resource/hr-function-images/8.png) +![6](../../../static/img/usage/human-resource/hr-function-images/ic-as-pdf-password-2.png) +![7](../../../static/img/usage/human-resource/hr-function-images/ic-as-pdf-password-3.png) +![8](../../../static/img/usage/human-resource/hr-function-images/ic-as-pdf-password-4.png) ## Employee Login @@ -75,7 +73,7 @@ In order to use this, user’s computer must configure with window email first This guide explains how to configure and create an account for the employee in SQL Payroll which allow the employee to view their details ::: -### Setup +### Employee Login Setup 1. In SQL Payroll, go to **Human Resource** > **Maintain Employee** @@ -95,15 +93,13 @@ This guide explains how to configure and create an account for the employee in S ![employee-view](../../../static/img/usage/human-resource/hr-function-images/employee-view.png) - - ## Print Letter :::info This guide explains how to print Appointment, Confirmation, Increment letter ::: -### Setup +### Print Letter Setup 1. Navigate to the **Maintain Employee** panel @@ -155,11 +151,9 @@ For increment letter, make sure increment is set in **history** in order for the ![increment-letter-setup](../../../static/img/usage/human-resource/hr-function-images/increment-letter-setup.png) - - ## Maintain Employee with MyKad Reader -### Setup +### MyKad Reader Setup 1. Link your Smart Card Reader to your computer @@ -191,15 +185,13 @@ For increment letter, make sure increment is set in **history** in order for the ![result](../../../static/img/usage/human-resource/hr-function-images/result.png) - - ## Recurring Zakat -### Setup +### Recurring Zakat Setup 1. Go to **Maintain Employee**: - ![maintain-employee](../../../static/img/usage/human-resource/hr-function-images/maintain-employee.png) + ![maintain-employee](../../../static/img/usage/human-resource/hr-function-images/maintain-employee-button.png) 2. Select the respective employee and go to Deduction @@ -219,8 +211,6 @@ For increment letter, make sure increment is set in **history** in order for the ![result-2](../../../static/img/usage/human-resource/hr-function-images/result-2.png) - - ## Loan :::note NOTE: @@ -233,7 +223,7 @@ For company which also provide a loan for their employee(s) that is expected to At here allow the user to setting up the loan for the Selected Employee... -### Setup +### Maintain Loan Setup Assuming we had the following scenario: @@ -249,11 +239,11 @@ Assuming we had the following scenario: 1. Click **New** & Enter As Following. -![HR_Maintain_Loan_step_1](../../../static/img/usage/human-resource/hr-function-images/MaintainLoan-Step1.jpg) + ![HR_Maintain_Loan_step_1](../../../static/img/usage/human-resource/hr-function-images/maintain-loan-step-1.jpg) 2. Click **Schedule | Generate**... Button. -![HR_Maintain_Loan_step_2](../../../static/img/usage/human-resource/hr-function-images/MaintainLoan-Step2.jpg) + ![HR_Maintain_Loan_step_2](../../../static/img/usage/human-resource/hr-function-images/maintain-loan-step-2.jpg) 3. Click **Ok** button to confirm. 4. Click **Save**. @@ -263,18 +253,16 @@ Assuming we had the following scenario: 1. Go to process as normal at [New Payroll](/usage/payroll/general#create-payroll). 2. At the Selected Employee Paysheet Click **Loan**. -![HR_Auto_Repayment_1](../../../static/img/usage/human-resource/hr-function-images/AutoRepayment-Step1.jpg) +![HR_Auto_Repayment_1](../../../static/img/usage/human-resource/hr-function-images/auto-repayment-step-1.jpg) #### Advanced Repayments 1. At **Transaction** Tab -![HR_Advanced_Repayment_1](../../../static/img/usage/human-resource/hr-function-images/AdvancedRepayment-Step1.jpg) - - +![HR_Advanced_Repayment_1](../../../static/img/usage/human-resource/hr-function-images/advanced-repayment-step-1.jpg) ## Print Loan Repayment History This is to generate/print the Ledger/History of Loan given by company for the selected/All Employees Report... -![HR_Loan_Repayment_History_1](../../../static/img/usage/human-resource/hr-function-images/LoanRepaymentHistory-Step1.jpg) \ No newline at end of file +![HR_Loan_Repayment_History_1](../../../static/img/usage/human-resource/hr-function-images/loan-repayment-history-step-1.jpg) diff --git a/static/img/usage/human-resource/hr-faq-images/faq-GetAppointmentLetter1.jpg b/static/img/usage/human-resource/hr-faq-images/faq-get-appointment-letter-1.jpg similarity index 100% rename from static/img/usage/human-resource/hr-faq-images/faq-GetAppointmentLetter1.jpg rename to static/img/usage/human-resource/hr-faq-images/faq-get-appointment-letter-1.jpg diff --git a/static/img/usage/human-resource/hr-function-images/AdvancedRepayment-Step1.jpg b/static/img/usage/human-resource/hr-function-images/advanced-repayment-step-1.jpg similarity index 100% rename from static/img/usage/human-resource/hr-function-images/AdvancedRepayment-Step1.jpg rename to static/img/usage/human-resource/hr-function-images/advanced-repayment-step-1.jpg diff --git a/static/img/usage/human-resource/hr-function-images/AutoRepayment-Step1.jpg b/static/img/usage/human-resource/hr-function-images/auto-repayment-step-1.jpg similarity index 100% rename from static/img/usage/human-resource/hr-function-images/AutoRepayment-Step1.jpg rename to static/img/usage/human-resource/hr-function-images/auto-repayment-step-1.jpg diff --git a/static/img/usage/human-resource/hr-function-images/5.png b/static/img/usage/human-resource/hr-function-images/ic-as-pdf-password-1.png similarity index 100% rename from static/img/usage/human-resource/hr-function-images/5.png rename to static/img/usage/human-resource/hr-function-images/ic-as-pdf-password-1.png diff --git a/static/img/usage/human-resource/hr-function-images/6.png b/static/img/usage/human-resource/hr-function-images/ic-as-pdf-password-2.png similarity index 100% rename from static/img/usage/human-resource/hr-function-images/6.png rename to static/img/usage/human-resource/hr-function-images/ic-as-pdf-password-2.png diff --git a/static/img/usage/human-resource/hr-function-images/7.png b/static/img/usage/human-resource/hr-function-images/ic-as-pdf-password-3.png similarity index 100% rename from static/img/usage/human-resource/hr-function-images/7.png rename to static/img/usage/human-resource/hr-function-images/ic-as-pdf-password-3.png diff --git a/static/img/usage/human-resource/hr-function-images/8.png b/static/img/usage/human-resource/hr-function-images/ic-as-pdf-password-4.png similarity index 100% rename from static/img/usage/human-resource/hr-function-images/8.png rename to static/img/usage/human-resource/hr-function-images/ic-as-pdf-password-4.png diff --git a/static/img/usage/human-resource/hr-function-images/LoanRepaymentHistory-Step1.jpg b/static/img/usage/human-resource/hr-function-images/loan-repayment-history-step-1.jpg similarity index 100% rename from static/img/usage/human-resource/hr-function-images/LoanRepaymentHistory-Step1.jpg rename to static/img/usage/human-resource/hr-function-images/loan-repayment-history-step-1.jpg diff --git a/static/img/usage/human-resource/hr-function-images/maintain-employee.png b/static/img/usage/human-resource/hr-function-images/maintain-employee-1.png similarity index 100% rename from static/img/usage/human-resource/hr-function-images/maintain-employee.png rename to static/img/usage/human-resource/hr-function-images/maintain-employee-1.png diff --git a/static/img/usage/human-resource/hr-function-images/maintain-employee-button.png b/static/img/usage/human-resource/hr-function-images/maintain-employee-button.png new file mode 100644 index 0000000000000000000000000000000000000000..20d0875fd4223c66a7af9d32bdcfaeb4e5131cd4 GIT binary patch literal 6543 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 literal 0 HcmV?d00001 diff --git a/static/img/usage/human-resource/hr-function-images/MaintainLoan-Step1.jpg b/static/img/usage/human-resource/hr-function-images/maintain-loan-step-1.jpg similarity index 100% rename from static/img/usage/human-resource/hr-function-images/MaintainLoan-Step1.jpg rename to static/img/usage/human-resource/hr-function-images/maintain-loan-step-1.jpg diff --git a/static/img/usage/human-resource/hr-function-images/MaintainLoan-Step2.jpg b/static/img/usage/human-resource/hr-function-images/maintain-loan-step-2.jpg similarity index 100% rename from static/img/usage/human-resource/hr-function-images/MaintainLoan-Step2.jpg rename to static/img/usage/human-resource/hr-function-images/maintain-loan-step-2.jpg diff --git a/static/img/usage/human-resource/hr-setup-images/Allowance-Tab1.jpg b/static/img/usage/human-resource/hr-setup-images/allowance-tab-1.jpg similarity index 100% rename from static/img/usage/human-resource/hr-setup-images/Allowance-Tab1.jpg rename to static/img/usage/human-resource/hr-setup-images/allowance-tab-1.jpg diff --git a/static/img/usage/human-resource/hr-setup-images/Attachments-Tab1.jpg b/static/img/usage/human-resource/hr-setup-images/attachments-tab-1.jpg similarity index 100% rename from static/img/usage/human-resource/hr-setup-images/Attachments-Tab1.jpg rename to static/img/usage/human-resource/hr-setup-images/attachments-tab-1.jpg diff --git a/static/img/usage/human-resource/hr-setup-images/Child-Tab1.jpg b/static/img/usage/human-resource/hr-setup-images/child-tab-1.jpg similarity index 100% rename from static/img/usage/human-resource/hr-setup-images/Child-Tab1.jpg rename to static/img/usage/human-resource/hr-setup-images/child-tab-1.jpg diff --git a/static/img/usage/human-resource/hr-setup-images/Deduction-Tab1.jpg b/static/img/usage/human-resource/hr-setup-images/deduction-tab-1.jpg similarity index 100% rename from static/img/usage/human-resource/hr-setup-images/Deduction-Tab1.jpg rename to static/img/usage/human-resource/hr-setup-images/deduction-tab-1.jpg diff --git a/static/img/usage/human-resource/hr-setup-images/Family-Tab1.jpg b/static/img/usage/human-resource/hr-setup-images/family-tab-1.jpg similarity index 100% rename from static/img/usage/human-resource/hr-setup-images/Family-Tab1.jpg rename to static/img/usage/human-resource/hr-setup-images/family-tab-1.jpg diff --git a/static/img/usage/human-resource/hr-setup-images/Grouping-Tab1.jpg b/static/img/usage/human-resource/hr-setup-images/grouping-tab-1.jpg similarity index 100% rename from static/img/usage/human-resource/hr-setup-images/Grouping-Tab1.jpg rename to static/img/usage/human-resource/hr-setup-images/grouping-tab-1.jpg diff --git a/static/img/usage/human-resource/hr-setup-images/History-Tab1.jpg b/static/img/usage/human-resource/hr-setup-images/history-tab-1.jpg similarity index 100% rename from static/img/usage/human-resource/hr-setup-images/History-Tab1.jpg rename to static/img/usage/human-resource/hr-setup-images/history-tab-1.jpg diff --git a/static/img/usage/human-resource/hr-setup-images/Maintain-Announcement1.png b/static/img/usage/human-resource/hr-setup-images/maintain-announcement-1.png similarity index 100% rename from static/img/usage/human-resource/hr-setup-images/Maintain-Announcement1.png rename to static/img/usage/human-resource/hr-setup-images/maintain-announcement-1.png diff --git a/static/img/usage/human-resource/hr-setup-images/Maintain-Branch1.jpg b/static/img/usage/human-resource/hr-setup-images/maintain-branch-1.jpg similarity index 100% rename from static/img/usage/human-resource/hr-setup-images/Maintain-Branch1.jpg rename to static/img/usage/human-resource/hr-setup-images/maintain-branch-1.jpg diff --git a/static/img/usage/human-resource/hr-setup-images/Maintain-Category1.jpg b/static/img/usage/human-resource/hr-setup-images/maintain-category-1.jpg similarity index 100% rename from static/img/usage/human-resource/hr-setup-images/Maintain-Category1.jpg rename to static/img/usage/human-resource/hr-setup-images/maintain-category-1.jpg diff --git a/static/img/usage/human-resource/hr-setup-images/Maintain-Department1.jpg b/static/img/usage/human-resource/hr-setup-images/maintain-department-1.jpg similarity index 100% rename from static/img/usage/human-resource/hr-setup-images/Maintain-Department1.jpg rename to static/img/usage/human-resource/hr-setup-images/maintain-department-1.jpg diff --git a/static/img/usage/human-resource/hr-setup-images/Maintain-Group1.jpg b/static/img/usage/human-resource/hr-setup-images/maintain-group-1.jpg similarity index 100% rename from static/img/usage/human-resource/hr-setup-images/Maintain-Group1.jpg rename to static/img/usage/human-resource/hr-setup-images/maintain-group-1.jpg diff --git a/static/img/usage/human-resource/hr-setup-images/Maintain-HistortType1.jpg b/static/img/usage/human-resource/hr-setup-images/maintain-history-type-1.jpg similarity index 100% rename from static/img/usage/human-resource/hr-setup-images/Maintain-HistortType1.jpg rename to static/img/usage/human-resource/hr-setup-images/maintain-history-type-1.jpg diff --git a/static/img/usage/human-resource/hr-setup-images/Maintain-Job1.jpg b/static/img/usage/human-resource/hr-setup-images/maintain-job-1.jpg similarity index 100% rename from static/img/usage/human-resource/hr-setup-images/Maintain-Job1.jpg rename to static/img/usage/human-resource/hr-setup-images/maintain-job-1.jpg diff --git a/static/img/usage/human-resource/hr-setup-images/Maintain-Project1.jpg b/static/img/usage/human-resource/hr-setup-images/maintain-project-1.jpg similarity index 100% rename from static/img/usage/human-resource/hr-setup-images/Maintain-Project1.jpg rename to static/img/usage/human-resource/hr-setup-images/maintain-project-1.jpg diff --git a/static/img/usage/human-resource/hr-setup-images/Maintain-Race1.jpg b/static/img/usage/human-resource/hr-setup-images/maintain-race-1.jpg similarity index 100% rename from static/img/usage/human-resource/hr-setup-images/Maintain-Race1.jpg rename to static/img/usage/human-resource/hr-setup-images/maintain-race-1.jpg diff --git a/static/img/usage/human-resource/hr-setup-images/Maintain-Task1.jpg b/static/img/usage/human-resource/hr-setup-images/maintain-task-1.jpg similarity index 100% rename from static/img/usage/human-resource/hr-setup-images/Maintain-Task1.jpg rename to static/img/usage/human-resource/hr-setup-images/maintain-task-1.jpg diff --git a/static/img/usage/human-resource/hr-setup-images/Note-Tab1.jpg b/static/img/usage/human-resource/hr-setup-images/note-tab-1.jpg similarity index 100% rename from static/img/usage/human-resource/hr-setup-images/Note-Tab1.jpg rename to static/img/usage/human-resource/hr-setup-images/note-tab-1.jpg diff --git a/static/img/usage/human-resource/hr-setup-images/Payroll-Tab1.jpg b/static/img/usage/human-resource/hr-setup-images/payroll-tab-1.jpg similarity index 100% rename from static/img/usage/human-resource/hr-setup-images/Payroll-Tab1.jpg rename to static/img/usage/human-resource/hr-setup-images/payroll-tab-1.jpg diff --git a/static/img/usage/human-resource/hr-setup-images/Personal-Tab1.jpg b/static/img/usage/human-resource/hr-setup-images/personal-tab-1.jpg similarity index 100% rename from static/img/usage/human-resource/hr-setup-images/Personal-Tab1.jpg rename to static/img/usage/human-resource/hr-setup-images/personal-tab-1.jpg diff --git a/static/img/usage/human-resource/hr-setup-images/PrintHistoryListing-1.png b/static/img/usage/human-resource/hr-setup-images/print-history-listing-1.png similarity index 100% rename from static/img/usage/human-resource/hr-setup-images/PrintHistoryListing-1.png rename to static/img/usage/human-resource/hr-setup-images/print-history-listing-1.png diff --git a/static/img/usage/human-resource/hr-setup-images/PrintHistoryListing-2.png b/static/img/usage/human-resource/hr-setup-images/print-history-listing-2.png similarity index 100% rename from static/img/usage/human-resource/hr-setup-images/PrintHistoryListing-2.png rename to static/img/usage/human-resource/hr-setup-images/print-history-listing-2.png From 34de948161ef161b7b723a7468f78db38b9042c0 Mon Sep 17 00:00:00 2001 From: LimXD2003 Date: Sat, 25 Oct 2025 10:06:57 +0800 Subject: [PATCH 05/13] fix: fix trailing spaces and image description names to kebab-case --- .../human-resource/human-resources-faq.md | 2 +- .../human-resource/human-resources-setup.md | 108 +++++++++--------- .../human-resourrces-additional-functions.md | 82 ++++++------- .../{new.png => new-employee.png} | Bin 4 files changed, 97 insertions(+), 95 deletions(-) rename static/img/usage/human-resource/hr-setup-images/{new.png => new-employee.png} (100%) diff --git a/docs/usage/human-resource/human-resources-faq.md b/docs/usage/human-resource/human-resources-faq.md index dc0ea83..e051fa7 100644 --- a/docs/usage/human-resource/human-resources-faq.md +++ b/docs/usage/human-resource/human-resources-faq.md @@ -28,4 +28,4 @@ Where to get the appointment letters 3. Click **preview**. 4. Select the **HR.Employee Appointment Report**. -![HR_FAQ](../../../static/img/usage/human-resource/hr-faq-images/faq-get-appointment-letter-1.jpg) +![des-faq-get-appointment-letter-1](../../../static/img/usage/human-resource/hr-faq-images/faq-get-appointment-letter-1.jpg) diff --git a/docs/usage/human-resource/human-resources-setup.md b/docs/usage/human-resource/human-resources-setup.md index c1b982c..3f35ee8 100644 --- a/docs/usage/human-resource/human-resources-setup.md +++ b/docs/usage/human-resource/human-resources-setup.md @@ -12,26 +12,26 @@ Whenever a new staff/worker/person/crew enter the company, Maintain Employee is 1. Navigate yourself to the Maintain Employee panel - ![navigate-1](../../../static/img/usage/human-resource/hr-setup-images/navigate-1.png) + ![des-navigate-1](../../../static/img/usage/human-resource/hr-setup-images/navigate-1.png) \*OR Click on the home page "Maintain Employee"\*\* - ![navigate-2](../../../static/img/usage/human-resource/hr-setup-images/navigate-2.png) + ![des-navigate-2](../../../static/img/usage/human-resource/hr-setup-images/navigate-2.png) 2. Click new to create new employee - ![new](../../../static/img/usage/human-resource/hr-setup-images/new.png) + ![des-new-employee](../../../static/img/usage/human-resource/hr-setup-images/new-employee.png) 3. Key in the employee’s personal details - ![HR_Maintain_Employee_1](../../../static/img/usage/human-resource/hr-setup-images/personal-tab-1.jpg) + ![des-personal-tab-1](../../../static/img/usage/human-resource/hr-setup-images/personal-tab-1.jpg) ### Personal Click the *Change Password* button & enter the password if you wanted to allow the Employee to login to see his/her own payroll data & report Remember to untick the *Active* for any employee had resign before process the payroll. -![HR_Personal_1](../../../static/img/usage/human-resource/hr-setup-images/personal-tab-1.jpg) +![des-personal-tab-1](../../../static/img/usage/human-resource/hr-setup-images/personal-tab-1.jpg) | Field Name | Properties | |-----------------|------------| @@ -92,42 +92,42 @@ In this tab is use for report grouping for the selected employee. It can be eith - [History Type](../../usage/human-resource/human-resources-setup.md#maintain-history-type) - [Announcement](../../usage/human-resource/human-resources-setup.md#maintain-announcement) -![HR_Grouping_1](../../../static/img/usage/human-resource/hr-setup-images/grouping-tab-1.jpg) +![des-grouping-tab-1](../../../static/img/usage/human-resource/hr-setup-images/grouping-tab-1.jpg) ### Family -In this tab is use to keep the his/her spouse/family information. +In this tab is use to keep the his/her spouse/family information. It is useful in case anything happen to the employee we able to inform/contact his/her spouse/family -![HR_Family_1](../../../static/img/usage/human-resource/hr-setup-images/family-tab-1.jpg) +![des-family-tab-1](../../../static/img/usage/human-resource/hr-setup-images/family-tab-1.jpg) | Field Name | Properties | |----------------|------------| -| Spouse Name | Definition: Employee husband/wife full name | -| | Field Type: Alphanumerical | -| | Length: 160 | -| Spouse Address | Definition: Employee husband/wife Correspondence Address | -| | Field Type: Alphanumerical | -| | Length: 60 (for Each Line) | -| Spouse Phone | Definition: Employee husband/wife Correspondence Phone Number | -| | Field Type: Alphanumerical | -| | Length: 20 (for Each Line) | -| Spouse Mobile | Definition: Employee husband/wife Handphone Number | -| | Field Type: Alphanumerical | -| | Length: 20 | -| Tax Branch | Definition: Employee husband/wife Tax Branch | -| | Field Type: Alphanumerical | -| | Length: 40 | -| Tax No | Definition: Employee husband/wife Tax Number | -| | Field Type: Alphanumerical | -| | Length: 20 | -| Spouse IC No | Definition: Employee husband/wife New Identity Card Number | -| | Field Type: Alphanumerical | -| | Length: 20 | +| Spouse Name | Definition: Employee husband/wife full name | +| | Field Type: Alphanumerical | +| | Length: 160 | +| Spouse Address | Definition: Employee husband/wife Correspondence Address | +| | Field Type: Alphanumerical | +| | Length: 60 (for Each Line) | +| Spouse Phone | Definition: Employee husband/wife Correspondence Phone Number | +| | Field Type: Alphanumerical | +| | Length: 20 (for Each Line) | +| Spouse Mobile | Definition: Employee husband/wife Handphone Number | +| | Field Type: Alphanumerical | +| | Length: 20 | +| Tax Branch | Definition: Employee husband/wife Tax Branch | +| | Field Type: Alphanumerical | +| | Length: 40 | +| Tax No | Definition: Employee husband/wife Tax Number | +| | Field Type: Alphanumerical | +| | Length: 20 | +| Spouse IC No | Definition: Employee husband/wife New Identity Card Number | +| | Field Type: Alphanumerical | +| | Length: 20 | ### Payroll Info -![HR_Payroll_1](../../../static/img/usage/human-resource/hr-setup-images/payroll-tab-1.jpg) +![des-payroll-tab-1](../../../static/img/usage/human-resource/hr-setup-images/payroll-tab-1.jpg) | Field Name | Properties | Field Name | Properties | |------------------|------------|------------------|------------| @@ -170,30 +170,30 @@ It is useful in case anything happen to the employee we able to inform/contact h In this Tab is to enter the Fixed [Allowance](/usage/payroll/setup#maintain-allowance) entitled for each month for selected Employee. -![HR_Allowance_1](../../../static/img/usage/human-resource/hr-setup-images/allowance-tab-1.jpg) +![des-allowance-tab-1](../../../static/img/usage/human-resource/hr-setup-images/allowance-tab-1.jpg) ### Deduction In this Tab is to enter the Fixed [Deduction](/usage/payroll/setup#maintain-deduction) entitled for each month for selected Employee. -![HR_Deduction_1](../../../static/img/usage/human-resource/hr-setup-images/deduction-tab-1.jpg) +![des-deduction-tab-1](../../../static/img/usage/human-resource/hr-setup-images/deduction-tab-1.jpg) ### Note -In this Tab user can load the Photo & other Information for the selected Employee. -For Photo please try +In this Tab user can load the Photo & other Information for the selected Employee. +For Photo please try 1. Save in Jpeg file. 2. The Jpeg file size limit as 200KB -![HR_Note_1](../../../static/img/usage/human-resource/hr-setup-images/note-tab-1.jpg) +![des-note-tab-1](../../../static/img/usage/human-resource/hr-setup-images/note-tab-1.jpg) ### History -In this tab is to show the list of history changes in this selected Employee. -Select the Increment at the type column in order to print the Increment Letter (HR.Employee.Increment.Report). +In this tab is to show the list of history changes in this selected Employee. +Select the Increment at the type column in order to print the Increment Letter (HR.Employee.Increment.Report). -![HR_History_1](../../../static/img/usage/human-resource/hr-setup-images/history-tab-1.jpg) +![des-history-tab-1](../../../static/img/usage/human-resource/hr-setup-images/history-tab-1.jpg) | Field Name | Properties | |--------------|-------------------------------------| @@ -206,7 +206,7 @@ Select the Increment at the type column in order to print the Increment Letter ( In this tab is to list out all taxable children(s). -![HR_hild_1](../../../static/img/usage/human-resource/hr-setup-images/child-tab-1.jpg) +![des-child-tab-1](../../../static/img/usage/human-resource/hr-setup-images/child-tab-1.jpg) | Field Name | Properties | |--------------------|------------------------------------------------------------------------------------------------------| @@ -224,16 +224,16 @@ In this tab is to list out all taxable children(s). ### Attachments -Here user can attach the file to selected employee (eg Letter of Offer). -Make sure the file is keep in the server as the system only keep the file link/path only. +Here user can attach the file to selected employee (eg Letter of Offer). +Make sure the file is keep in the server as the system only keep the file link/path only. -![HR_Attachments_1](../../../static/img/usage/human-resource/hr-setup-images/attachments-tab-1.jpg) +![des-attachments-tab-1](../../../static/img/usage/human-resource/hr-setup-images/attachments-tab-1.jpg) ## Maintain Branch This is useful for user had many branch company but the salary is paid from HQ. -![HR_maintain_branch_1](../../../static/img/usage/human-resource/hr-setup-images/maintain-branch-1.jpg) +![des-maintain-branch-1](../../../static/img/usage/human-resource/hr-setup-images/maintain-branch-1.jpg) | Field Name | Properties | |----------------|----------------------------------------------------------------------------| @@ -246,7 +246,7 @@ This is useful for user had many branch company but the salary is paid from HQ. A division of a large organization such as Account, Marketing & etc. -![HR_department_1](../../../static/img/usage/human-resource/hr-setup-images/maintain-department-1.jpg) +![des-maintain-department-1](../../../static/img/usage/human-resource/hr-setup-images/maintain-department-1.jpg) | Field Name | Properties | |----------------|----------------------------------------------------------------------------| @@ -259,7 +259,7 @@ A division of a large organization such as Account, Marketing & etc. This is another type of report grouping by Group type. -![HR_group_1](../../../static/img/usage/human-resource/hr-setup-images/maintain-group-1.jpg) +![des-maintain-group-1](../../../static/img/usage/human-resource/hr-setup-images/maintain-group-1.jpg) | Field Name | Properties | |----------------|----------------------------------------------------------------------------| @@ -272,7 +272,7 @@ This is another type of report grouping by Group type. User also can divide the employee by class or division. -![HR_category_1](../../../static/img/usage/human-resource/hr-setup-images/maintain-category-1.jpg) +![des-maintain-category-1](../../../static/img/usage/human-resource/hr-setup-images/maintain-category-1.jpg) | Field Name | Properties | |----------------|----------------------------------------------------------------------------| @@ -285,7 +285,7 @@ User also can divide the employee by class or division. User also can Group the employee by Project which the employee work at. -![HR_project_1](../../../static/img/usage/human-resource/hr-setup-images/maintain-project-1.jpg) +![des-maintain-project-1](../../../static/img/usage/human-resource/hr-setup-images/maintain-project-1.jpg) | Field Name | Properties | |----------------|----------------------------------------------------------------------------| @@ -298,7 +298,7 @@ User also can Group the employee by Project which the employee work at. User also can Group the employee by Job Type in report. -![HR_Job_1](../../../static/img/usage/human-resource/hr-setup-images/maintain-job-1.jpg) +![des-maintain-job-1](../../../static/img/usage/human-resource/hr-setup-images/maintain-job-1.jpg) | Field Name | Properties | |----------------|----------------------------------------------------------------------------| @@ -311,7 +311,7 @@ User also can Group the employee by Job Type in report. User also can divide the employee by piece of work to be done or undertaken. -![HR_Task_1](../../../static/img/usage/human-resource/hr-setup-images/maintain-task-1.jpg) +![des-maintain-task-1](../../../static/img/usage/human-resource/hr-setup-images/maintain-task-1.jpg) | Field Name | Properties | |----------------|----------------------------------------------------------------------------| @@ -324,7 +324,7 @@ User also can divide the employee by piece of work to be done or undertaken. User also can Group the employee by Race Type in report. -![HR_Race_1](../../../static/img/usage/human-resource/hr-setup-images/maintain-race-1.jpg) +![des-maintain-race-1](../../../static/img/usage/human-resource/hr-setup-images/maintain-race-1.jpg) | Field Name | Properties | |----------------|----------------------------------------------------------------------------| @@ -337,7 +337,7 @@ User also can Group the employee by Race Type in report. This is to use to allow user to Group the Changes in the Maintain Employee -![HR_History_Type_1](../../../static/img/usage/human-resource/hr-setup-images/maintain-history-type-1.jpg) +![des-maintain-history-type-1](../../../static/img/usage/human-resource/hr-setup-images/maintain-history-type-1.jpg) | Field Name | Properties | |----------------|------------------------------------------------------------------------------------------------| @@ -350,7 +350,7 @@ This is to use to allow user to Group the Changes in the Maintain Employee This is to used to create, manage, and distribute company-wide or employee-specific announcements within the payroll and HR system, allowing users to share information, updates, or important reminders with their team -![HR_Announcement_1](../../../static/img/usage/human-resource/hr-setup-images/maintain-announcement-1.png) +![des-maintain-announcement-1](../../../static/img/usage/human-resource/hr-setup-images/maintain-announcement-1.png) | Field Name | Properties | |-------------|-------------| @@ -364,8 +364,8 @@ This is to used to create, manage, and distribute company-wide or employee-speci This provides a comprehensive record of all past history types for employees, and is able to furthur and filter, sort and group the employees witth the fields below -![HR_print_history_listing_1](../../../static/img/usage/human-resource/hr-setup-images/print-history-listing-1.png) +![des-print-history-listing-1](../../../static/img/usage/human-resource/hr-setup-images/print-history-listing-1.png) This is how the report generated will look like -![HR_print_history_listing_2](../../../static/img/usage/human-resource/hr-setup-images/print-history-listing-2.png) +![des-print-history-listing-2](../../../static/img/usage/human-resource/hr-setup-images/print-history-listing-2.png) diff --git a/docs/usage/human-resource/human-resourrces-additional-functions.md b/docs/usage/human-resource/human-resourrces-additional-functions.md index af69c7a..040cc68 100644 --- a/docs/usage/human-resource/human-resourrces-additional-functions.md +++ b/docs/usage/human-resource/human-resourrces-additional-functions.md @@ -27,25 +27,25 @@ In order to use this, user’s computer must configure with window email first 2. Key in the PDF password and enter the email address - ![maintain-employee](../../../static/img/usage/human-resource/hr-function-images/maintain-employee-1.png) + ![des-maintain-employee-1](../../../static/img/usage/human-resource/hr-function-images/maintain-employee-1.png) 3. Next, go to **Payroll** > **Print Payslip**. Choose the month End Payslip, Apply and Preview 4. Click on the 🔽 beside the excel export, click on **Export to Email Client (Batch)** - ![export-to-email-client-batch](../../../static/img/usage/human-resource/hr-function-images/export-to-email-client-batch.png) + ![des-export-to-email-client-batch](../../../static/img/usage/human-resource/hr-function-images/export-to-email-client-batch.png) :::tip For Testing purpose, you may activate the module at File > Customize Payroll Module and ticked **Batch Email** ::: - ![batch-email](../../../static/img/usage/human-resource/hr-function-images/batch-email.png) + ![des-batch-email](../../../static/img/usage/human-resource/hr-function-images/batch-email.png) :::warning Error If you haven't configure your window email, you will see an error message as below. Make sure yo have configure your window email before doing these steps. ::: - ![error](../../../static/img/usage/human-resource/hr-function-images/error.png) + ![des-error](../../../static/img/usage/human-resource/hr-function-images/error.png) ### Simple Steps To use IC as PDF Password @@ -59,13 +59,13 @@ In order to use this, user’s computer must configure with window email first 5. Save the structure, copy and paste the New IC value to Name2 column -![5](../../../static/img/usage/human-resource/hr-function-images/ic-as-pdf-password-1.png) +![des-ic-as-pdf-password-1](../../../static/img/usage/human-resource/hr-function-images/ic-as-pdf-password-1.png) -![6](../../../static/img/usage/human-resource/hr-function-images/ic-as-pdf-password-2.png) +![des-ic-as-pdf-password-2](../../../static/img/usage/human-resource/hr-function-images/ic-as-pdf-password-2.png) -![7](../../../static/img/usage/human-resource/hr-function-images/ic-as-pdf-password-3.png) +![des-ic-as-pdf-password-3](../../../static/img/usage/human-resource/hr-function-images/ic-as-pdf-password-3.png) -![8](../../../static/img/usage/human-resource/hr-function-images/ic-as-pdf-password-4.png) +![des-ic-as-pdf-password-4](../../../static/img/usage/human-resource/hr-function-images/ic-as-pdf-password-4.png) ## Employee Login @@ -79,19 +79,19 @@ This guide explains how to configure and create an account for the employee in S 2. Click on **Change Password** - ![change-password](../../../static/img/usage/human-resource/hr-function-images/change-password.png) + ![des-change-password](../../../static/img/usage/human-resource/hr-function-images/change-password.png) 3. Enter a new password for the employee - ![enter-password](../../../static/img/usage/human-resource/hr-function-images/enter-password.png) + ![des-enter-password](../../../static/img/usage/human-resource/hr-function-images/enter-password.png) 4. Next, ask the employee to open SQL Payroll, login into it by using the **Employee Code** and **Password** configured previously. That's it! 🥳 - ![login](../../../static/img/usage/human-resource/hr-function-images/login.png) + ![des-login](../../../static/img/usage/human-resource/hr-function-images/login.png) 5. Finally, here's an example of employee view - ![employee-view](../../../static/img/usage/human-resource/hr-function-images/employee-view.png) + ![des-employee-view](../../../static/img/usage/human-resource/hr-function-images/employee-view.png) ## Print Letter @@ -103,23 +103,23 @@ This guide explains how to print Appointment, Confirmation, Increment letter 1. Navigate to the **Maintain Employee** panel - ![navigate](../../../static/img/usage/human-resource/hr-function-images/navigate.png) + ![des-v](../../../static/img/usage/human-resource/hr-function-images/navigate.png) 2. Select the employee - ![select-employee](../../../static/img/usage/human-resource/hr-function-images/select-employee.png) + ![des-select-employee](../../../static/img/usage/human-resource/hr-function-images/select-employee.png) 3. Click preview reports - ![preview-report](../../../static/img/usage/human-resource/hr-function-images/preview-report.png) + ![des-preview-report](../../../static/img/usage/human-resource/hr-function-images/preview-report.png) 4. Select the report you want by double clicking it - ![select-report](../../../static/img/usage/human-resource/hr-function-images/select-report.png) + ![des-select-report](../../../static/img/usage/human-resource/hr-function-images/select-report.png) 5. This is the example of the appointment letter - ![letter-example](../../../static/img/usage/human-resource/hr-function-images/letter-example.png) + ![des-letter-example](../../../static/img/usage/human-resource/hr-function-images/letter-example.png) #### Increment Letter @@ -129,27 +129,27 @@ For increment letter, make sure increment is set in **history** in order for the 1. Navigate to **Human Resource** > **Maintain Employee** - ![navigate-1](../../../static/img/usage/human-resource/hr-function-images/navigate-1.png) + ![des-navigate-1](../../../static/img/usage/human-resource/hr-function-images/navigate-1.png) 2. Alternatively, you can click on the **Maintain Employee** available in the homepage - ![navigate-2](../../../static/img/usage/human-resource/hr-function-images/navigate-2.png) + ![des-navigate-2](../../../static/img/usage/human-resource/hr-function-images/navigate-2.png) 3. Go to the employee details, click on History from the tab view - ![inc-letter-select-employee](../../../static/img/usage/human-resource/hr-function-images/inc-letter-select-employee.png) + ![des-inc-letter-select-employee](../../../static/img/usage/human-resource/hr-function-images/inc-letter-select-employee.png) 4. Click preview reports - ![inc-letter-click-preview](../../../static/img/usage/human-resource/hr-function-images/inc-letter-click-preview.png) + ![des-inc-letter-click-preview](../../../static/img/usage/human-resource/hr-function-images/inc-letter-click-preview.png) 5. Select the report you want to print - ![inc-letter-select-report](../../../static/img/usage/human-resource/hr-function-images/inc-letter-select-report.png) + ![des-inc-letter-select-report](../../../static/img/usage/human-resource/hr-function-images/inc-letter-select-report.png) #### Increment letter setup in history -![increment-letter-setup](../../../static/img/usage/human-resource/hr-function-images/increment-letter-setup.png) +![des-increment-letter-setup](../../../static/img/usage/human-resource/hr-function-images/increment-letter-setup.png) ## Maintain Employee with MyKad Reader @@ -159,31 +159,31 @@ For increment letter, make sure increment is set in **history** in order for the 2. Reader will turn red light when you success link to your computer - ![reader](../../../static/img/usage/human-resource/hr-function-images/reader.png) + ![des-reader](../../../static/img/usage/human-resource/hr-function-images/reader.png) 3. Put MyKard into reader 4. Reader will show blue light when success read your MyKad - ![plug-in-mykad](../../../static/img/usage/human-resource/hr-function-images/plug-in-mykad.png) + ![des-plug-in-mykad](../../../static/img/usage/human-resource/hr-function-images/plug-in-mykad.png) 5. Open your SQL Payroll New Employee Profile > **Read MyKad** - ![read-mykad](../../../static/img/usage/human-resource/hr-function-images/read-mykad.png) + ![des-read-mykad](../../../static/img/usage/human-resource/hr-function-images/read-mykad.png) 6. Select **Reader Devices** > **Click Read Card** - ![read-card](../../../static/img/usage/human-resource/hr-function-images/read-card.png) + ![des-read-card](../../../static/img/usage/human-resource/hr-function-images/read-card.png) 7. Click **Read MyKad** - ![read-mykad-physical](../../../static/img/usage/human-resource/hr-function-images/read-mykad-physical.png) + ![des-read-mykad-physical](../../../static/img/usage/human-resource/hr-function-images/read-mykad-physical.png) 8. Inside System will auto fill up MyKard Detail - **(NAME , ADDRESS , ID Number, D.O.B, GENDER)** - ![result](../../../static/img/usage/human-resource/hr-function-images/result.png) + ![des-result](../../../static/img/usage/human-resource/hr-function-images/result.png) ## Recurring Zakat @@ -191,25 +191,25 @@ For increment letter, make sure increment is set in **history** in order for the 1. Go to **Maintain Employee**: - ![maintain-employee](../../../static/img/usage/human-resource/hr-function-images/maintain-employee-button.png) + ![des-maintain-employee-button](../../../static/img/usage/human-resource/hr-function-images/maintain-employee-button.png) 2. Select the respective employee and go to Deduction - ![deduction](../../../static/img/usage/human-resource/hr-function-images/deduction.png) + ![des-deduction](../../../static/img/usage/human-resource/hr-function-images/deduction.png) 3. Enter a deduction and tick Zakat check box. You will notice that the other contribution checkbox will be unticked - ![check-zakat](../../../static/img/usage/human-resource/hr-function-images/check-zakat.png) + ![des-check-zakat](../../../static/img/usage/human-resource/hr-function-images/check-zakat.png) 4. Key in Rate and set the period of contribution in the Date From and Date To column. - ![key-in-rate](../../../static/img/usage/human-resource/hr-function-images/key-in-rate.png) + ![des-key-in-rate](../../../static/img/usage/human-resource/hr-function-images/key-in-rate.png) 5. Save and process your month end. You will see the amount in your Gross Zakat - ![result-1](../../../static/img/usage/human-resource/hr-function-images/result-1.png) + ![des-result-1](../../../static/img/usage/human-resource/hr-function-images/result-1.png) - ![result-2](../../../static/img/usage/human-resource/hr-function-images/result-2.png) + ![des-result-2](../../../static/img/usage/human-resource/hr-function-images/result-2.png) ## Loan @@ -239,30 +239,32 @@ Assuming we had the following scenario: 1. Click **New** & Enter As Following. - ![HR_Maintain_Loan_step_1](../../../static/img/usage/human-resource/hr-function-images/maintain-loan-step-1.jpg) + ![des-maintain-loan-step-1](../../../static/img/usage/human-resource/hr-function-images/maintain-loan-step-1.jpg) 2. Click **Schedule | Generate**... Button. - ![HR_Maintain_Loan_step_2](../../../static/img/usage/human-resource/hr-function-images/maintain-loan-step-2.jpg) + ![des-maintain-loan-step-2](../../../static/img/usage/human-resource/hr-function-images/maintain-loan-step-2.jpg) 3. Click **Ok** button to confirm. + 4. Click **Save**. #### Auto Repayment 1. Go to process as normal at [New Payroll](/usage/payroll/general#create-payroll). + 2. At the Selected Employee Paysheet Click **Loan**. -![HR_Auto_Repayment_1](../../../static/img/usage/human-resource/hr-function-images/auto-repayment-step-1.jpg) + ![des-auto-repayment-step-1](../../../static/img/usage/human-resource/hr-function-images/auto-repayment-step-1.jpg) #### Advanced Repayments 1. At **Transaction** Tab -![HR_Advanced_Repayment_1](../../../static/img/usage/human-resource/hr-function-images/advanced-repayment-step-1.jpg) + ![des-advanced-repayment-step-1](../../../static/img/usage/human-resource/hr-function-images/advanced-repayment-step-1.jpg) ## Print Loan Repayment History This is to generate/print the Ledger/History of Loan given by company for the selected/All Employees Report... -![HR_Loan_Repayment_History_1](../../../static/img/usage/human-resource/hr-function-images/loan-repayment-history-step-1.jpg) +![des-loan-repayment-history-step-1](../../../static/img/usage/human-resource/hr-function-images/loan-repayment-history-step-1.jpg) diff --git a/static/img/usage/human-resource/hr-setup-images/new.png b/static/img/usage/human-resource/hr-setup-images/new-employee.png similarity index 100% rename from static/img/usage/human-resource/hr-setup-images/new.png rename to static/img/usage/human-resource/hr-setup-images/new-employee.png From 27d8ed89aca0f4e99a6b2f4d6ffc5a01ee4253b7 Mon Sep 17 00:00:00 2001 From: yichensql-gif Date: Fri, 19 Sep 2025 17:58:40 +0800 Subject: [PATCH 06/13] feat: add wiki docs & restructure --- .vscode/settings.json | 1 + docs/faq/date-format.md | 34 ++ docs/faq/error-calendarinfo.md | 22 + docs/faq/missing-code.md | 16 + docs/getting-started/modules.md | 20 +- docs/integration/hrms/e-leave/app-usage.md | 1 + docs/integration/hrms/e-leave/faq.md | 26 + .../integration/hrms/e-leave/payroll-setup.md | 1 + docs/integration/hrms/e-leave/sync-cloud.md | 1 + docs/miscellaneous/epf/overview.md | 16 + docs/miscellaneous/pcb.md | 16 + docs/miscellaneous/socso.md | 16 + docs/usage/File/_category_.json | 8 + docs/usage/File/company-profile.md | 50 ++ docs/usage/File/import-data.md | 163 +++++ docs/usage/general/_category_.json | 9 + docs/usage/{ => general}/batch-email.md | 50 +- .../change-payroll-description.md | 12 +- docs/usage/{ => general}/daily-pay-method.md | 16 +- docs/usage/{ => general}/final-payroll.md | 28 +- .../{ => general}/online-mobile-approval.md | 38 +- .../{ => general}/pcb-cp38-receipt-no-date.md | 14 +- docs/usage/{ => general}/zakat-tabung-haji.md | 34 +- docs/usage/human-resource/_category_.json | 8 +- docs/usage/human-resource/bulk-email.md | 66 -- docs/usage/human-resource/employee-login.md | 30 - .../human-resource/human-resources-faq.md | 31 + .../human-resource/human-resources-setup.md | 393 ++++++++++++ .../human-resourrces-additional-functions.md | 280 +++++++++ .../usage/human-resource/maintain-employee.md | 119 ---- docs/usage/human-resource/print-letter.md | 64 -- docs/usage/human-resource/read-mykad.md | 38 -- docs/usage/human-resource/recurring-zakat.md | 30 - docs/usage/leave/_category_.json | 9 + docs/usage/leave/faq.md | 24 + docs/usage/{leave.md => leave/guide.md} | 134 +++-- docs/usage/payroll/_category_.json | 2 +- docs/usage/payroll/advanced-paid.md | 48 -- docs/usage/payroll/bonus.md | 45 -- .../payroll/comparison-previous-month.md | 36 -- docs/usage/payroll/cp38.md | 33 - docs/usage/payroll/faq.md | 216 +++++++ docs/usage/payroll/general-guide.md | 85 --- docs/usage/payroll/guide.md | 561 +++++++++++++++++ .../usage/payroll/maintenance/_category_.json | 9 - .../payroll/maintenance/maintain-allowance.md | 49 -- .../maintenance/maintain-commission.md | 48 -- .../maintenance/maintain-contribution.md | 45 -- .../maintain-employee-opening-balance.md | 45 -- .../payroll/maintenance/maintain-frequency.md | 55 -- .../payroll/maintenance/maintain-overtime.md | 202 ------- .../maintenance/maintain-payment-method.md | 80 --- .../payroll/maintenance/maintain-wages.md | 43 -- docs/usage/payroll/opening-balance.md | 52 -- docs/usage/payroll/recurring-payroll.md | 60 -- docs/usage/payroll/setup.md | 565 ++++++++++++++++++ docs/usage/report.md | 76 +++ docs/usage/report/_category_.json | 9 - docs/usage/report/ea-form.md | 60 -- docs/usage/report/report.md | 20 - docs/usage/tools/_category_.json | 2 +- docs/usage/tools/maintain-diy.md | 130 ++++ docs/usage/tools/options.md | 48 ++ docs/usage/tools/sql-view.md | 1 + .../date-format-additional-setting.jpg | Bin 0 -> 52760 bytes .../faq/date-format/date-format-change.jpg | Bin 0 -> 30916 bytes .../img/faq/date-format/date-format-issue.jpg | Bin 0 -> 70461 bytes .../faq/date-format/date-format-result.jpg | Bin 0 -> 39766 bytes .../faq/error-calendarinfo/error-issue.jpg | Bin 0 -> 20357 bytes .../faq/error-calendarinfo/error-result.jpg | Bin 0 -> 11085 bytes .../faq/error-calendarinfo/error-solution.jpg | Bin 0 -> 60443 bytes .../faq/missing-code/missingcode-issue.jpg | Bin 0 -> 70134 bytes .../faq/missing-code/missingcode-solution.jpg | Bin 0 -> 123739 bytes .../register-email-eleave/register-setup.png | Bin 0 -> 46940 bytes .../register-email-eleave/register-sync.jpg | Bin 0 -> 18184 bytes .../remove-staff-email.png | Bin 0 -> 40935 bytes .../faq/register-email-eleave/remove-sync.jpg | Bin 0 -> 18184 bytes static/img/miscellaneous/epf/epf-table.jpg | Bin 0 -> 97857 bytes static/img/miscellaneous/pcb/pcb-table.jpg | Bin 0 -> 79481 bytes .../img/miscellaneous/socso/socso-table.jpg | Bin 0 -> 86163 bytes .../img/usage/file/data-import/ac-step2-1.png | Bin 0 -> 47807 bytes .../img/usage/file/data-import/ac-step2-2.png | Bin 0 -> 19927 bytes .../img/usage/file/data-import/ac-step2-3.png | Bin 0 -> 59515 bytes .../usage/file/data-import/others-step1.png | Bin 0 -> 61710 bytes .../usage/file/data-import/others-step2-1.png | Bin 0 -> 51676 bytes .../usage/file/data-import/others-step2-2.png | Bin 0 -> 62578 bytes .../usage/file/data-import/others-step3-1.png | Bin 0 -> 83428 bytes .../usage/file/data-import/others-step3-2.png | Bin 0 -> 97466 bytes .../usage/file/data-import/others-step4.png | Bin 0 -> 74495 bytes .../usage/file/data-import/others-step5.png | Bin 0 -> 100770 bytes .../img/usage/file/data-import/ubs-step1.png | Bin 0 -> 63979 bytes .../usage/file/data-import/ubs-step2-1.png | Bin 0 -> 91204 bytes .../usage/file/data-import/ubs-step2-2.png | Bin 0 -> 34887 bytes .../usage/file/data-import/ubs-step2-3.png | Bin 0 -> 32610 bytes .../img/usage/file/data-import/ubs-step3.png | Bin 0 -> 88452 bytes .../img/usage/file/data-import/ubs-step4.png | Bin 0 -> 70938 bytes .../img/usage/file/data-import/ubs-step5.png | Bin 0 -> 94187 bytes .../img/usage/file/data-import/ubs-step6.png | Bin 0 -> 18783 bytes .../usage/file/data-import/ubs-step7-1.png | Bin 0 -> 32899 bytes .../usage/file/data-import/ubs-step7-2.png | Bin 0 -> 51722 bytes .../faq-GetAppointmentLetter1.jpg | Bin 0 -> 142579 bytes .../human-resource/hr-function-images/5.png | Bin 0 -> 227166 bytes .../human-resource/hr-function-images/6.png | Bin 0 -> 113059 bytes .../human-resource/hr-function-images/7.png | Bin 0 -> 410171 bytes .../human-resource/hr-function-images/8.png | Bin 0 -> 214265 bytes .../AdvancedRepayment-Step1.jpg | Bin 0 -> 122628 bytes .../AutoRepayment-Step1.jpg | Bin 0 -> 192844 bytes .../LoanRepaymentHistory-Step1.jpg | Bin 0 -> 163492 bytes .../hr-function-images/MaintainLoan-Step1.jpg | Bin 0 -> 99116 bytes .../hr-function-images/MaintainLoan-Step2.jpg | Bin 0 -> 86886 bytes .../hr-function-images/batch-email.png | Bin 0 -> 40758 bytes .../hr-function-images/change-password.png | Bin 0 -> 102776 bytes .../hr-function-images/check-zakat.png | Bin 0 -> 74054 bytes .../hr-function-images/deduction.png | Bin 0 -> 60866 bytes .../hr-function-images/employee-view.png | Bin 0 -> 114426 bytes .../hr-function-images/enter-password.png | Bin 0 -> 46980 bytes .../hr-function-images/error.png | Bin 0 -> 517855 bytes .../export-to-email-client-batch.png | Bin 0 -> 332272 bytes .../inc-letter-click-preview.png | Bin 0 -> 57801 bytes .../inc-letter-select-employee.png | Bin 0 -> 33389 bytes .../inc-letter-select-report.png | Bin 0 -> 15516 bytes .../increment-letter-setup.png | Bin 0 -> 440232 bytes .../hr-function-images/key-in-rate.png | Bin 0 -> 191499 bytes .../hr-function-images/letter-example.png | Bin 0 -> 955578 bytes .../hr-function-images/login.png | Bin 0 -> 642237 bytes .../maintain-employee copy.png | Bin 0 -> 6543 bytes .../hr-function-images/maintain-employee.png | Bin 0 -> 254497 bytes .../hr-function-images/navigate-1.png | Bin 0 -> 21506 bytes .../hr-function-images/navigate-2.png | Bin 0 -> 122329 bytes .../hr-function-images/navigate.png | Bin 0 -> 455907 bytes .../hr-function-images/plug-in-mykad.png | Bin 0 -> 514576 bytes .../hr-function-images/preview-report.png | Bin 0 -> 449279 bytes .../hr-function-images/read-card.png | Bin 0 -> 336330 bytes .../read-mykad-physical.png | Bin 0 -> 542489 bytes .../hr-function-images/read-mykad.png | Bin 0 -> 413705 bytes .../hr-function-images/reader.png | Bin 0 -> 111292 bytes .../hr-function-images/result-1.png | Bin 0 -> 71241 bytes .../hr-function-images/result-2.png | Bin 0 -> 178211 bytes .../hr-function-images/result.png | Bin 0 -> 678556 bytes .../hr-function-images/select-employee.png | Bin 0 -> 190596 bytes .../hr-function-images/select-report.png | Bin 0 -> 158008 bytes .../yc1-appointment-letter.jpg | Bin 0 -> 56396 bytes .../hr-setup-images/Allowance-Tab1.jpg | Bin 0 -> 87804 bytes .../hr-setup-images/Attachments-Tab1.jpg | Bin 0 -> 76524 bytes .../hr-setup-images/Child-Tab1.jpg | Bin 0 -> 83174 bytes .../hr-setup-images/Deduction-Tab1.jpg | Bin 0 -> 81812 bytes .../hr-setup-images/Family-Tab1.jpg | Bin 0 -> 95299 bytes .../hr-setup-images/Grouping-Tab1.jpg | Bin 0 -> 81854 bytes .../hr-setup-images/History-Tab1.jpg | Bin 0 -> 114569 bytes .../Maintain-Announcement1.png | Bin 0 -> 35537 bytes .../hr-setup-images/Maintain-Branch1.jpg | Bin 0 -> 35116 bytes .../hr-setup-images/Maintain-Category1.jpg | Bin 0 -> 34713 bytes .../hr-setup-images/Maintain-Department1.jpg | Bin 0 -> 36849 bytes .../hr-setup-images/Maintain-Group1.jpg | Bin 0 -> 35437 bytes .../hr-setup-images/Maintain-HistortType1.jpg | Bin 0 -> 35828 bytes .../hr-setup-images/Maintain-Job1.jpg | Bin 0 -> 34945 bytes .../hr-setup-images/Maintain-Project1.jpg | Bin 0 -> 34945 bytes .../hr-setup-images/Maintain-Race1.jpg | Bin 0 -> 34901 bytes .../hr-setup-images/Maintain-Task1.jpg | Bin 0 -> 34446 bytes .../hr-setup-images/Note-Tab1.jpg | Bin 0 -> 78083 bytes .../hr-setup-images/Payroll-Tab1.jpg | Bin 0 -> 113842 bytes .../hr-setup-images/Personal-Tab1.jpg | Bin 0 -> 101654 bytes .../hr-setup-images/PrintHistoryListing-1.png | Bin 0 -> 49993 bytes .../hr-setup-images/PrintHistoryListing-2.png | Bin 0 -> 11738 bytes .../hr-setup-images/navigate-1.png | Bin 0 -> 21506 bytes .../hr-setup-images/navigate-2.png | Bin 0 -> 122329 bytes .../human-resource/hr-setup-images/new.png | Bin 0 -> 180014 bytes .../print-letter/appointment-letter.jpg | Bin 0 -> 56396 bytes .../leave-module/print-attendance-report.png | Bin 0 -> 128485 bytes .../print-leave-application-report.png | Bin 0 -> 115983 bytes .../print-leave-balance-report.png | Bin 0 -> 122863 bytes .../print-yearly-leave-report.png | Bin 0 -> 130328 bytes static/img/usage/payroll/faq/issue_1.png | Bin 0 -> 70134 bytes static/img/usage/payroll/faq/issue_2.png | Bin 0 -> 20357 bytes static/img/usage/payroll/faq/issue_4.png | Bin 0 -> 70461 bytes static/img/usage/payroll/faq/solution_1.png | Bin 0 -> 123739 bytes static/img/usage/payroll/faq/solution_2a.png | Bin 0 -> 60443 bytes static/img/usage/payroll/faq/solution_2b.png | Bin 0 -> 11085 bytes static/img/usage/payroll/faq/solution_4a.png | Bin 0 -> 52760 bytes static/img/usage/payroll/faq/solution_4b.png | Bin 0 -> 30916 bytes static/img/usage/payroll/faq/solution_4c.png | Bin 0 -> 39766 bytes .../openPendingPayroll_AdvancePaid.png | Bin 0 -> 63134 bytes .../general/openPendingPayroll_Allowance.png | Bin 0 -> 67911 bytes .../general/openPendingPayroll_Bonus.png | Bin 0 -> 215101 bytes .../general/openPendingPayroll_CP3801.png | Bin 0 -> 55881 bytes .../general/openPendingPayroll_CP3802.png | Bin 0 -> 155356 bytes .../general/openPendingPayroll_Claim.png | Bin 0 -> 68784 bytes .../general/openPendingPayroll_Deduction.png | Bin 0 -> 65167 bytes .../general/openPendingPayroll_Overtime.png | Bin 0 -> 72449 bytes .../general/openPendingPayroll_PaidLeave.png | Bin 0 -> 61724 bytes .../openPendingPayroll_PendingYYYY.png | Bin 0 -> 62826 bytes .../openPendingPayroll_Pending_Navigator.png | Bin 0 -> 109818 bytes ...endingPayroll_Show_All_Pending_Payroll.png | Bin 0 -> 43467 bytes .../general/openPendingPayroll_TaxDeduct.png | Bin 0 -> 66993 bytes .../openPendingPayroll_UnpaidLeave.png | Bin 0 -> 61847 bytes .../general/openPendingPayroll_Wages.png | Bin 0 -> 95465 bytes .../img/usage/payroll/general/pay_adHoc.png | Bin 0 -> 150536 bytes .../payroll/general/pay_adHoc_bonusallow.png | Bin 0 -> 39636 bytes .../payroll/general/pay_adhoc_montlyFA.png | Bin 0 -> 57611 bytes .../usage/payroll/general/pay_frequency.png | Bin 0 -> 125443 bytes .../account_mapping_table.png | Bin 0 -> 87218 bytes .../configure_payroll_accounting.jpg | Bin 0 -> 106065 bytes ...pany_name_and_last_saved_date_and_time.jpg | Bin 0 -> 21138 bytes .../export_import_as_PV_JE.jpg | Bin 0 -> 22029 bytes .../generate_PV_JE.jpg | Bin 0 -> 67080 bytes .../gl_account_mapping.jpg | Bin 0 -> 35693 bytes .../generate-payment-voucher/import_PV_JE.jpg | Bin 0 -> 23172 bytes .../import_PV_JE_successful.jpg | Bin 0 -> 50774 bytes .../insert_process_and_date.jpg | Bin 0 -> 21106 bytes .../load_from_sql_account.jpg | Bin 0 -> 9795 bytes .../load_sql_account_file.jpg | Bin 0 -> 47274 bytes .../navigate_import_payment_voucher.png | Bin 0 -> 45568 bytes .../overview_process_flow.jpg | Bin 0 -> 24858 bytes .../posting_method.jpg | Bin 0 -> 18451 bytes .../save_gl_account_to_file.png | Bin 0 -> 9939 bytes .../save_gl_to_file.jpg | Bin 0 -> 27597 bytes .../maintain-claim/add-fixed-claim.png | Bin 0 -> 232212 bytes .../maintenance/maintain-claim/insert.png | Bin 0 -> 28499 bytes .../maintenance/maintain-claim/navigate.png | Bin 0 -> 110590 bytes .../maintenance/maintain-claim/new.png | Bin 0 -> 117966 bytes .../process-month-end-add-claim.png | Bin 0 -> 332337 bytes .../add-fixed-deduction.png | Bin 0 -> 778423 bytes .../maintenance/maintain-deduction/insert.png | Bin 0 -> 130808 bytes .../maintain-deduction/navigate.png | Bin 0 -> 110292 bytes .../maintenance/maintain-deduction/new.png | Bin 0 -> 106447 bytes .../process-month-end-add-deduction.png | Bin 0 -> 1533135 bytes .../maintain-diy/diy-calculation-type.png | Bin 0 -> 38473 bytes .../tools/maintain-diy/diy-example1-1.png | Bin 0 -> 30530 bytes .../tools/maintain-diy/diy-example1-2.png | Bin 0 -> 17183 bytes .../tools/maintain-diy/diy-example1-3.jpg | Bin 0 -> 69103 bytes .../tools/maintain-diy/diy-example2-1.png | Bin 0 -> 10321 bytes .../tools/maintain-diy/diy-example2-2.png | Bin 0 -> 42084 bytes .../tools/maintain-diy/diy-example3-1.png | Bin 0 -> 43169 bytes .../usage/tools/maintain-diy/diy-intro.png | Bin 0 -> 16057 bytes .../img/usage/tools/options/options-intro.jpg | Bin 0 -> 20193 bytes .../options/personal-general-setting.png | Bin 0 -> 38504 bytes .../tools/options/system-general-setting.png | Bin 0 -> 27824 bytes .../tools/options/system-password-policy.png | Bin 0 -> 31306 bytes 238 files changed, 2912 insertions(+), 1531 deletions(-) create mode 100644 .vscode/settings.json create mode 100644 docs/faq/date-format.md create mode 100644 docs/faq/error-calendarinfo.md create mode 100644 docs/faq/missing-code.md create mode 100644 docs/usage/File/_category_.json create mode 100644 docs/usage/File/company-profile.md create mode 100644 docs/usage/File/import-data.md create mode 100644 docs/usage/general/_category_.json rename docs/usage/{ => general}/batch-email.md (67%) rename docs/usage/{ => general}/change-payroll-description.md (57%) rename docs/usage/{ => general}/daily-pay-method.md (77%) rename docs/usage/{ => general}/final-payroll.md (70%) rename docs/usage/{ => general}/online-mobile-approval.md (75%) rename docs/usage/{ => general}/pcb-cp38-receipt-no-date.md (57%) rename docs/usage/{ => general}/zakat-tabung-haji.md (53%) delete mode 100644 docs/usage/human-resource/bulk-email.md delete mode 100644 docs/usage/human-resource/employee-login.md create mode 100644 docs/usage/human-resource/human-resources-faq.md create mode 100644 docs/usage/human-resource/human-resources-setup.md create mode 100644 docs/usage/human-resource/human-resourrces-additional-functions.md delete mode 100644 docs/usage/human-resource/maintain-employee.md delete mode 100644 docs/usage/human-resource/print-letter.md delete mode 100644 docs/usage/human-resource/read-mykad.md delete mode 100644 docs/usage/human-resource/recurring-zakat.md create mode 100644 docs/usage/leave/_category_.json create mode 100644 docs/usage/leave/faq.md rename docs/usage/{leave.md => leave/guide.md} (59%) delete mode 100644 docs/usage/payroll/advanced-paid.md delete mode 100644 docs/usage/payroll/bonus.md delete mode 100644 docs/usage/payroll/comparison-previous-month.md delete mode 100644 docs/usage/payroll/cp38.md create mode 100644 docs/usage/payroll/faq.md delete mode 100644 docs/usage/payroll/general-guide.md create mode 100644 docs/usage/payroll/guide.md delete mode 100644 docs/usage/payroll/maintenance/_category_.json delete mode 100644 docs/usage/payroll/maintenance/maintain-allowance.md delete mode 100644 docs/usage/payroll/maintenance/maintain-commission.md delete mode 100644 docs/usage/payroll/maintenance/maintain-contribution.md delete mode 100644 docs/usage/payroll/maintenance/maintain-employee-opening-balance.md delete mode 100644 docs/usage/payroll/maintenance/maintain-frequency.md delete mode 100644 docs/usage/payroll/maintenance/maintain-overtime.md delete mode 100644 docs/usage/payroll/maintenance/maintain-payment-method.md delete mode 100644 docs/usage/payroll/maintenance/maintain-wages.md delete mode 100644 docs/usage/payroll/opening-balance.md delete mode 100644 docs/usage/payroll/recurring-payroll.md create mode 100644 docs/usage/payroll/setup.md create mode 100644 docs/usage/report.md delete mode 100644 docs/usage/report/_category_.json delete mode 100644 docs/usage/report/ea-form.md delete mode 100644 docs/usage/report/report.md create mode 100644 docs/usage/tools/maintain-diy.md create mode 100644 docs/usage/tools/options.md create mode 100644 static/img/faq/date-format/date-format-additional-setting.jpg create mode 100644 static/img/faq/date-format/date-format-change.jpg create mode 100644 static/img/faq/date-format/date-format-issue.jpg create mode 100644 static/img/faq/date-format/date-format-result.jpg create mode 100644 static/img/faq/error-calendarinfo/error-issue.jpg create mode 100644 static/img/faq/error-calendarinfo/error-result.jpg create mode 100644 static/img/faq/error-calendarinfo/error-solution.jpg create mode 100644 static/img/faq/missing-code/missingcode-issue.jpg create mode 100644 static/img/faq/missing-code/missingcode-solution.jpg create mode 100644 static/img/faq/register-email-eleave/register-setup.png create mode 100644 static/img/faq/register-email-eleave/register-sync.jpg create mode 100644 static/img/faq/register-email-eleave/remove-staff-email.png create mode 100644 static/img/faq/register-email-eleave/remove-sync.jpg create mode 100644 static/img/miscellaneous/epf/epf-table.jpg create mode 100644 static/img/miscellaneous/pcb/pcb-table.jpg create mode 100644 static/img/miscellaneous/socso/socso-table.jpg create mode 100644 static/img/usage/file/data-import/ac-step2-1.png create mode 100644 static/img/usage/file/data-import/ac-step2-2.png create mode 100644 static/img/usage/file/data-import/ac-step2-3.png create mode 100644 static/img/usage/file/data-import/others-step1.png create mode 100644 static/img/usage/file/data-import/others-step2-1.png create mode 100644 static/img/usage/file/data-import/others-step2-2.png create mode 100644 static/img/usage/file/data-import/others-step3-1.png create mode 100644 static/img/usage/file/data-import/others-step3-2.png create mode 100644 static/img/usage/file/data-import/others-step4.png create mode 100644 static/img/usage/file/data-import/others-step5.png create mode 100644 static/img/usage/file/data-import/ubs-step1.png create mode 100644 static/img/usage/file/data-import/ubs-step2-1.png create mode 100644 static/img/usage/file/data-import/ubs-step2-2.png create mode 100644 static/img/usage/file/data-import/ubs-step2-3.png create mode 100644 static/img/usage/file/data-import/ubs-step3.png create mode 100644 static/img/usage/file/data-import/ubs-step4.png create mode 100644 static/img/usage/file/data-import/ubs-step5.png create mode 100644 static/img/usage/file/data-import/ubs-step6.png create mode 100644 static/img/usage/file/data-import/ubs-step7-1.png create mode 100644 static/img/usage/file/data-import/ubs-step7-2.png create mode 100644 static/img/usage/human-resource/hr-faq-images/faq-GetAppointmentLetter1.jpg create mode 100644 static/img/usage/human-resource/hr-function-images/5.png create mode 100644 static/img/usage/human-resource/hr-function-images/6.png create mode 100644 static/img/usage/human-resource/hr-function-images/7.png create mode 100644 static/img/usage/human-resource/hr-function-images/8.png create mode 100644 static/img/usage/human-resource/hr-function-images/AdvancedRepayment-Step1.jpg create mode 100644 static/img/usage/human-resource/hr-function-images/AutoRepayment-Step1.jpg create mode 100644 static/img/usage/human-resource/hr-function-images/LoanRepaymentHistory-Step1.jpg create mode 100644 static/img/usage/human-resource/hr-function-images/MaintainLoan-Step1.jpg create mode 100644 static/img/usage/human-resource/hr-function-images/MaintainLoan-Step2.jpg create mode 100644 static/img/usage/human-resource/hr-function-images/batch-email.png create mode 100644 static/img/usage/human-resource/hr-function-images/change-password.png create mode 100644 static/img/usage/human-resource/hr-function-images/check-zakat.png create mode 100644 static/img/usage/human-resource/hr-function-images/deduction.png create mode 100644 static/img/usage/human-resource/hr-function-images/employee-view.png create mode 100644 static/img/usage/human-resource/hr-function-images/enter-password.png create mode 100644 static/img/usage/human-resource/hr-function-images/error.png create mode 100644 static/img/usage/human-resource/hr-function-images/export-to-email-client-batch.png create mode 100644 static/img/usage/human-resource/hr-function-images/inc-letter-click-preview.png create mode 100644 static/img/usage/human-resource/hr-function-images/inc-letter-select-employee.png create mode 100644 static/img/usage/human-resource/hr-function-images/inc-letter-select-report.png create mode 100644 static/img/usage/human-resource/hr-function-images/increment-letter-setup.png create mode 100644 static/img/usage/human-resource/hr-function-images/key-in-rate.png create mode 100644 static/img/usage/human-resource/hr-function-images/letter-example.png create mode 100644 static/img/usage/human-resource/hr-function-images/login.png create mode 100644 static/img/usage/human-resource/hr-function-images/maintain-employee copy.png create mode 100644 static/img/usage/human-resource/hr-function-images/maintain-employee.png create mode 100644 static/img/usage/human-resource/hr-function-images/navigate-1.png create mode 100644 static/img/usage/human-resource/hr-function-images/navigate-2.png create mode 100644 static/img/usage/human-resource/hr-function-images/navigate.png create mode 100644 static/img/usage/human-resource/hr-function-images/plug-in-mykad.png create mode 100644 static/img/usage/human-resource/hr-function-images/preview-report.png create mode 100644 static/img/usage/human-resource/hr-function-images/read-card.png create mode 100644 static/img/usage/human-resource/hr-function-images/read-mykad-physical.png create mode 100644 static/img/usage/human-resource/hr-function-images/read-mykad.png create mode 100644 static/img/usage/human-resource/hr-function-images/reader.png create mode 100644 static/img/usage/human-resource/hr-function-images/result-1.png create mode 100644 static/img/usage/human-resource/hr-function-images/result-2.png create mode 100644 static/img/usage/human-resource/hr-function-images/result.png create mode 100644 static/img/usage/human-resource/hr-function-images/select-employee.png create mode 100644 static/img/usage/human-resource/hr-function-images/select-report.png create mode 100644 static/img/usage/human-resource/hr-function-images/yc1-appointment-letter.jpg create mode 100644 static/img/usage/human-resource/hr-setup-images/Allowance-Tab1.jpg create mode 100644 static/img/usage/human-resource/hr-setup-images/Attachments-Tab1.jpg create mode 100644 static/img/usage/human-resource/hr-setup-images/Child-Tab1.jpg create mode 100644 static/img/usage/human-resource/hr-setup-images/Deduction-Tab1.jpg create mode 100644 static/img/usage/human-resource/hr-setup-images/Family-Tab1.jpg create mode 100644 static/img/usage/human-resource/hr-setup-images/Grouping-Tab1.jpg create mode 100644 static/img/usage/human-resource/hr-setup-images/History-Tab1.jpg create mode 100644 static/img/usage/human-resource/hr-setup-images/Maintain-Announcement1.png create mode 100644 static/img/usage/human-resource/hr-setup-images/Maintain-Branch1.jpg create mode 100644 static/img/usage/human-resource/hr-setup-images/Maintain-Category1.jpg create mode 100644 static/img/usage/human-resource/hr-setup-images/Maintain-Department1.jpg create mode 100644 static/img/usage/human-resource/hr-setup-images/Maintain-Group1.jpg create mode 100644 static/img/usage/human-resource/hr-setup-images/Maintain-HistortType1.jpg create mode 100644 static/img/usage/human-resource/hr-setup-images/Maintain-Job1.jpg create mode 100644 static/img/usage/human-resource/hr-setup-images/Maintain-Project1.jpg create mode 100644 static/img/usage/human-resource/hr-setup-images/Maintain-Race1.jpg create mode 100644 static/img/usage/human-resource/hr-setup-images/Maintain-Task1.jpg create mode 100644 static/img/usage/human-resource/hr-setup-images/Note-Tab1.jpg create mode 100644 static/img/usage/human-resource/hr-setup-images/Payroll-Tab1.jpg create mode 100644 static/img/usage/human-resource/hr-setup-images/Personal-Tab1.jpg create mode 100644 static/img/usage/human-resource/hr-setup-images/PrintHistoryListing-1.png create mode 100644 static/img/usage/human-resource/hr-setup-images/PrintHistoryListing-2.png create mode 100644 static/img/usage/human-resource/hr-setup-images/navigate-1.png create mode 100644 static/img/usage/human-resource/hr-setup-images/navigate-2.png create mode 100644 static/img/usage/human-resource/hr-setup-images/new.png create mode 100644 static/img/usage/human-resource/print-letter/appointment-letter.jpg create mode 100644 static/img/usage/leave-module/print-attendance-report.png create mode 100644 static/img/usage/leave-module/print-leave-application-report.png create mode 100644 static/img/usage/leave-module/print-leave-balance-report.png create mode 100644 static/img/usage/leave-module/print-yearly-leave-report.png create mode 100644 static/img/usage/payroll/faq/issue_1.png create mode 100644 static/img/usage/payroll/faq/issue_2.png create mode 100644 static/img/usage/payroll/faq/issue_4.png create mode 100644 static/img/usage/payroll/faq/solution_1.png create mode 100644 static/img/usage/payroll/faq/solution_2a.png create mode 100644 static/img/usage/payroll/faq/solution_2b.png create mode 100644 static/img/usage/payroll/faq/solution_4a.png create mode 100644 static/img/usage/payroll/faq/solution_4b.png create mode 100644 static/img/usage/payroll/faq/solution_4c.png create mode 100644 static/img/usage/payroll/general/openPendingPayroll_AdvancePaid.png create mode 100644 static/img/usage/payroll/general/openPendingPayroll_Allowance.png create mode 100644 static/img/usage/payroll/general/openPendingPayroll_Bonus.png create mode 100644 static/img/usage/payroll/general/openPendingPayroll_CP3801.png create mode 100644 static/img/usage/payroll/general/openPendingPayroll_CP3802.png create mode 100644 static/img/usage/payroll/general/openPendingPayroll_Claim.png create mode 100644 static/img/usage/payroll/general/openPendingPayroll_Deduction.png create mode 100644 static/img/usage/payroll/general/openPendingPayroll_Overtime.png create mode 100644 static/img/usage/payroll/general/openPendingPayroll_PaidLeave.png create mode 100644 static/img/usage/payroll/general/openPendingPayroll_PendingYYYY.png create mode 100644 static/img/usage/payroll/general/openPendingPayroll_Pending_Navigator.png create mode 100644 static/img/usage/payroll/general/openPendingPayroll_Show_All_Pending_Payroll.png create mode 100644 static/img/usage/payroll/general/openPendingPayroll_TaxDeduct.png create mode 100644 static/img/usage/payroll/general/openPendingPayroll_UnpaidLeave.png create mode 100644 static/img/usage/payroll/general/openPendingPayroll_Wages.png create mode 100644 static/img/usage/payroll/general/pay_adHoc.png create mode 100644 static/img/usage/payroll/general/pay_adHoc_bonusallow.png create mode 100644 static/img/usage/payroll/general/pay_adhoc_montlyFA.png create mode 100644 static/img/usage/payroll/general/pay_frequency.png create mode 100644 static/img/usage/payroll/generate-payment-voucher/account_mapping_table.png create mode 100644 static/img/usage/payroll/generate-payment-voucher/configure_payroll_accounting.jpg create mode 100644 static/img/usage/payroll/generate-payment-voucher/display_company_name_and_last_saved_date_and_time.jpg create mode 100644 static/img/usage/payroll/generate-payment-voucher/export_import_as_PV_JE.jpg create mode 100644 static/img/usage/payroll/generate-payment-voucher/generate_PV_JE.jpg create mode 100644 static/img/usage/payroll/generate-payment-voucher/gl_account_mapping.jpg create mode 100644 static/img/usage/payroll/generate-payment-voucher/import_PV_JE.jpg create mode 100644 static/img/usage/payroll/generate-payment-voucher/import_PV_JE_successful.jpg create mode 100644 static/img/usage/payroll/generate-payment-voucher/insert_process_and_date.jpg create mode 100644 static/img/usage/payroll/generate-payment-voucher/load_from_sql_account.jpg create mode 100644 static/img/usage/payroll/generate-payment-voucher/load_sql_account_file.jpg create mode 100644 static/img/usage/payroll/generate-payment-voucher/navigate_import_payment_voucher.png create mode 100644 static/img/usage/payroll/generate-payment-voucher/overview_process_flow.jpg create mode 100644 static/img/usage/payroll/generate-payment-voucher/posting_method.jpg create mode 100644 static/img/usage/payroll/generate-payment-voucher/save_gl_account_to_file.png create mode 100644 static/img/usage/payroll/generate-payment-voucher/save_gl_to_file.jpg create mode 100644 static/img/usage/payroll/maintenance/maintain-claim/add-fixed-claim.png create mode 100644 static/img/usage/payroll/maintenance/maintain-claim/insert.png create mode 100644 static/img/usage/payroll/maintenance/maintain-claim/navigate.png create mode 100644 static/img/usage/payroll/maintenance/maintain-claim/new.png create mode 100644 static/img/usage/payroll/maintenance/maintain-claim/process-month-end-add-claim.png create mode 100644 static/img/usage/payroll/maintenance/maintain-deduction/add-fixed-deduction.png create mode 100644 static/img/usage/payroll/maintenance/maintain-deduction/insert.png create mode 100644 static/img/usage/payroll/maintenance/maintain-deduction/navigate.png create mode 100644 static/img/usage/payroll/maintenance/maintain-deduction/new.png create mode 100644 static/img/usage/payroll/maintenance/maintain-deduction/process-month-end-add-deduction.png create mode 100644 static/img/usage/tools/maintain-diy/diy-calculation-type.png create mode 100644 static/img/usage/tools/maintain-diy/diy-example1-1.png create mode 100644 static/img/usage/tools/maintain-diy/diy-example1-2.png create mode 100644 static/img/usage/tools/maintain-diy/diy-example1-3.jpg create mode 100644 static/img/usage/tools/maintain-diy/diy-example2-1.png create mode 100644 static/img/usage/tools/maintain-diy/diy-example2-2.png create mode 100644 static/img/usage/tools/maintain-diy/diy-example3-1.png create mode 100644 static/img/usage/tools/maintain-diy/diy-intro.png create mode 100644 static/img/usage/tools/options/options-intro.jpg create mode 100644 static/img/usage/tools/options/personal-general-setting.png create mode 100644 static/img/usage/tools/options/system-general-setting.png create mode 100644 static/img/usage/tools/options/system-password-policy.png diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..9e26dfe --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1 @@ +{} \ No newline at end of file diff --git a/docs/faq/date-format.md b/docs/faq/date-format.md new file mode 100644 index 0000000..e3b1200 --- /dev/null +++ b/docs/faq/date-format.md @@ -0,0 +1,34 @@ +--- +title: Why Date format not display correctly in some payroll report? +description: A guide to solve date format not display correctly in some payroll report +slug: /faq/date-format +tags: ["SQL Payroll", "FAQ", "Date"] +--- + +## Issue + +What is the faster solution to show the date format correctly? + +![date-format-issue](../../static/img/faq/date-format/date-format-issue.jpg) + +*Example report: Government Reports | Print Income Tax PCB 2 (II)* + +## Solution + +1. Go to **Control Panel**. + +2. Search for **Region** in Control Panel. + +3. Click on **Additional Settings**... + +![date-format-additional-setting](../../static/img/faq/date-format/date-format-additional-setting.jpg) + +4. Click to **Date** tab. + +5. Change the Short Date Format to **DD/MM/YYYY** + +![date-format-change](../../static/img/faq/date-format/date-format-change.jpg) + +6. Date format has display correctly now. + +![date-format-result](../../static/img/faq/date-format/date-format-result.jpg) \ No newline at end of file diff --git a/docs/faq/error-calendarinfo.md b/docs/faq/error-calendarinfo.md new file mode 100644 index 0000000..79eaa15 --- /dev/null +++ b/docs/faq/error-calendarinfo.md @@ -0,0 +1,22 @@ +--- +title: Why show error message dataset "CalendarInfo" does not exist when batch email using customize payslip format? +description: A guide to solve error message dataset "CalendarInfo" does not exist when batch email using customize payslip format +slug: /faq/error-calendarinfo +tags: ["SQL Payroll", "FAQ", "Error"] +--- + +## Issue + +Error message prompt when try to **Export to E-Mail Client (Batch)** using **customize payslip format**. + +![error-issue](../../static/img/faq/error-calendarinfo/error-issue.jpg) + +## Solution + +At payslip report designer, change the **[\]** to **[\]** + +![error-solution](../../static/img/faq/error-calendarinfo/error-solution.jpg) + +**After correction**, it will be look like the screenshot below. + +![error-result](../../static/img/faq/error-calendarinfo/error-result.jpg) \ No newline at end of file diff --git a/docs/faq/missing-code.md b/docs/faq/missing-code.md new file mode 100644 index 0000000..229b9bb --- /dev/null +++ b/docs/faq/missing-code.md @@ -0,0 +1,16 @@ +--- +title: How to fix Missing Code and Employee Name columns in the month payroll screen? +description: A guide to solve Missing Code and Employee Name columns in the month payroll screen +slug: /faq/missing-code +tags: ["SQL Payroll", "FAQ", "Missing"] +--- + +## Issue + +![missingcode-issue](../../static/img/faq/missing-code/missingcode-issue.jpg) + +## Solution + +Tick the **Code** and **Name** columns. + +![missingcode-solution](../../static/img/faq/missing-code/missingcode-solution.jpg) \ No newline at end of file diff --git a/docs/getting-started/modules.md b/docs/getting-started/modules.md index a6391f0..3e3d9c2 100644 --- a/docs/getting-started/modules.md +++ b/docs/getting-started/modules.md @@ -18,21 +18,21 @@ SQL Payroll consists of 3 main modules: | Module | Description | | -------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | -| [**Maintain Allowance**](../usage/payroll/maintenance/maintain-allowance.md) | Define the allowance type, rate and contribution | -| **Maintain Claims** | Define the claims type and amount | -| [**Maintain Commission**](../usage/payroll/maintenance/maintain-commission.md) | Define the commission type, rate and contribution | -| [**Maintain Contribution**](../usage/payroll/maintenance/maintain-contribution.md) | Enable to set Bonus, Director Fee, EPF, working hour/day per month, OT, etc. | -| **Maintain Deduction** | Define the deduction type, rate and contribution | -| [**Maintain Frequency**](../usage/payroll/maintenance/maintain-frequency.md) | Enable to set different frequency, eg. weekly, half month | -| [**Maintain Overtime**](../usage/payroll/maintenance/maintain-overtime.md) | Define the overtime type, rate , unit type, and contribution | -| [**Maintain Payment Method**](../usage/payroll/maintenance/maintain-payment-method.md) | Define the bank information | -| [**Maintain Wages**](../usage/payroll/maintenance/maintain-wages.md) | Enable to set different contribution on Wages, such EPF, SOCSO, EIS, PCB, OT,EA and HRDF | +| [**Maintain Allowance**](../usage/payroll/setup.md#maintain-allowance) | Define the allowance type, rate and contribution | +| [**Maintain Claims**](../usage/payroll/setup.md#maintain-claim) | Define the claims type and amount | +| [**Maintain Commission**](../usage/payroll/setup.md#maintain-commission) | Define the commission type, rate and contribution | +| [**Maintain Contribution**](../usage/payroll/setup.md#maintain-contribution) | Enable to set Bonus, Director Fee, EPF, working hour/day per month, OT, etc. | +| [**Maintain Deduction**](../usage/payroll/setup.md#maintain-deduction) | Define the deduction type, rate and contribution | +| [**Maintain Frequency**](../usage/payroll/setup.md#maintain-frequency) | Enable to set different frequency, eg. weekly, half month | +| [**Maintain Overtime**](../usage/payroll/setup.md#maintain-overtime) | Define the overtime type, rate , unit type, and contribution | +| [**Maintain Payment Method**](../usage/payroll/setup.md#maintain-payment-method) | Define the bank information | +| [**Maintain Wages**](../usage/payroll/setup.md#maintain-wages) | Enable to set different contribution on Wages, such EPF, SOCSO, EIS, PCB, OT,EA and HRDF | ## Other Basic modules | Module | Description | | --------------------------------------------------------------------- | -------------------------------------------------------------------- | -| [**Maintain Employee**](../usage/human-resource/maintain-employee.md) | Help to maintain employees biodata | +| [**Maintain Employee**](../usage/human-resource/human-resources-setup.md#maintain-employee) | Help to maintain employees biodata | | **Maintain Branch** | Define the branch name, eg. HQ, branch A, B, C, etc | | **Maintain Department** | Define the department, eg. Accounts, Sales, Production, etc | | **Maintain Group** | Define the group level, eg. Director, Manager, Executive, Clerk, etc | diff --git a/docs/integration/hrms/e-leave/app-usage.md b/docs/integration/hrms/e-leave/app-usage.md index 8c24841..6058291 100644 --- a/docs/integration/hrms/e-leave/app-usage.md +++ b/docs/integration/hrms/e-leave/app-usage.md @@ -2,6 +2,7 @@ sidebar_position: 2 title: App Usage description: An E Leave features in SQL HRMS app guide +slug: /integration/hrms/e-leave/app-usage --- ## Dashboard diff --git a/docs/integration/hrms/e-leave/faq.md b/docs/integration/hrms/e-leave/faq.md index c172121..2d8456c 100644 --- a/docs/integration/hrms/e-leave/faq.md +++ b/docs/integration/hrms/e-leave/faq.md @@ -2,6 +2,8 @@ sidebar_position: 4 title: FAQ description: E-Leave Frequently Asked Questions +slug: /integration/hrms/e-leave/faq +tags: ["SQL Payroll", "FAQ", "Register", "Email", "E Leave"] --- ## Leave Applications & Approvals @@ -135,3 +137,27 @@ This occurs when: :::info[Reminder] If you rely on HRMS for leave and claim applications, always finish with **Update Payroll** so records are posted to SQL Payroll. ::: + +### 13. How to register the staff email to access the E Leave? + +1. **Update 1 email address** to each employee (staff) in Maintain Employee. + +![register-setup](../../../../static/img/faq/register-email-eleave/register-setup.png) + +2. Access to menu : **Cloud | Sync Cloud..** + +3. Click **Sync Now**. + +![register-sync](../../../../static/img/faq/register-email-eleave/register-sync.jpg) + +### 14. How to deregister the staff email to access the E Leave? + +1. Remove the staff email from Maintain Employee. + +![remove-staff-email](../../../../static/img/faq/register-email-eleave/remove-staff-email.png) + +2. Access to menu : Cloud | Sync Cloud.. + +3. Click Sync Now to update. + +![remove-sync](../../../../static/img/faq/register-email-eleave/remove-sync.jpg) diff --git a/docs/integration/hrms/e-leave/payroll-setup.md b/docs/integration/hrms/e-leave/payroll-setup.md index a4c721f..601c438 100644 --- a/docs/integration/hrms/e-leave/payroll-setup.md +++ b/docs/integration/hrms/e-leave/payroll-setup.md @@ -2,6 +2,7 @@ sidebar_position: 1 title: Payroll Setup description: An E Leave setup guide in SQL Payroll +slug: /integration/hrms/e-leave/payroll-setup --- ## Multi-Level Leave Approval & Notification Settings diff --git a/docs/integration/hrms/e-leave/sync-cloud.md b/docs/integration/hrms/e-leave/sync-cloud.md index a4f7194..4959d3a 100644 --- a/docs/integration/hrms/e-leave/sync-cloud.md +++ b/docs/integration/hrms/e-leave/sync-cloud.md @@ -2,6 +2,7 @@ sidebar_position: 3 title: Sync Cloud description: An E Leave sync cloud guide in SQL Payroll +slug: /integration/hrms/e-leave/sync-cloud --- **Step 1:** Cloud Icon | Sync Cloud… | Leave App | Sync All diff --git a/docs/miscellaneous/epf/overview.md b/docs/miscellaneous/epf/overview.md index f339c76..940f7f6 100644 --- a/docs/miscellaneous/epf/overview.md +++ b/docs/miscellaneous/epf/overview.md @@ -22,6 +22,20 @@ tags: ["SQL Payroll", "EPF"] ![contribution-rate-2](../../../static/img/miscellaneous/epf/contribution-rate-2.png) +## EPF Table + +This function is to show a list of EPF Amount which is need to be pay/deduct from the Salary by Employee & Employer. + +1. User can manually change the Rate by Amount or by percentage. +2. Just Click Rebuild after the changes. +3. Any changes here will not affect the Process of Payroll. + +![epf-table](../../../static/img/miscellaneous/epf/epf-table.jpg) + +:::info[Government Official Portal] + [Kumpulan Wang Simpanan Pekerja](http://www.kwsp.gov.my/) +::: + ## Frequently Asked Questions (FAQs) ### How Does SQL Payroll manage EPF contributions? @@ -43,6 +57,8 @@ You can set the EPF rate at 19% for employees In the management level. The emplo - If employee is above 60 years old, the employee’s EPF contribution rate will be 0% while the employer’s contribution will be 4% +![over-60](../../../static/img/miscellaneous/epf/over-60.png) + ### Are employees above the age of 75 required to contribute for EPF? - No. No contributions are required from both parties. diff --git a/docs/miscellaneous/pcb.md b/docs/miscellaneous/pcb.md index 0093f4d..306acc2 100644 --- a/docs/miscellaneous/pcb.md +++ b/docs/miscellaneous/pcb.md @@ -15,6 +15,22 @@ tags: ["SQL Payroll", "PCB"] ![subject-to-pcb](../../static/img/miscellaneous/pcb/subject-to-pcb.png) +## PCB Table + +This function is to show a list of PCB Amount which is need to be pay/deduct from the Salary by Employee & Employer. + +This Table is for employer who does not use computerised payroll software or proses payroll manually. + +![pcb-table](../../static/img/miscellaneous/pcb/pcb-table.jpg) + +:::info[Government Official Portal] + - [Inland Revenue Board Of Malaysia (LHDN)](http://www.hasil.gov.my/) + - [For PCB Calculation Checking](http://ekl.hasil.gov.my/pcbcalc/index.php?&lang=may) +::: + ## Fun Facts ![fun-fact](../../static/img/miscellaneous/pcb/fun-fact.png) + +## PCB & CP38 Receipt No & Date + diff --git a/docs/miscellaneous/socso.md b/docs/miscellaneous/socso.md index e5f6565..a907d29 100644 --- a/docs/miscellaneous/socso.md +++ b/docs/miscellaneous/socso.md @@ -17,3 +17,19 @@ tags: ["SQL Payroll", "SOCSO"] ## SOCSO First Category and Second Category ![category](../../static/img/miscellaneous/socso/category.png) + +## Socso Table + +**View | View Socso Table** + +This function is to show a list of Socso Amount which is need to be pay/deduct from the Salary by Employee & Employer. + +User can change the option by untick the Option Uses Standard Socso Table. + +Any changes here will not affect the Process of Payroll. + +![socso-table](../../static/img/miscellaneous/socso/socso-table.jpg) + +:::info[Government Official Portal] + [Pertubuhan Keselamatan Sosial](http://www.perkeso.gov.my/) +::: \ No newline at end of file diff --git a/docs/usage/File/_category_.json b/docs/usage/File/_category_.json new file mode 100644 index 0000000..28f6fd2 --- /dev/null +++ b/docs/usage/File/_category_.json @@ -0,0 +1,8 @@ +{ + "label": "File", + "position": 1, + "link": { + "type": "generated-index", + "description": "File guide" + } +} \ No newline at end of file diff --git a/docs/usage/File/company-profile.md b/docs/usage/File/company-profile.md new file mode 100644 index 0000000..fcec29b --- /dev/null +++ b/docs/usage/File/company-profile.md @@ -0,0 +1,50 @@ +--- +sidebar_position: 1 +title: Company Profile +description: File Guide +slug: /usage/file/company-profile +tags: ["SQL Payroll", "Usage"] +--- + +##A guide to Maintain Company Profile in SQL Payroll +## Setup + +1. Navigate to File > Company Profile + + ![company-profile](../../../static/img/getting-started/company-profile/company-profile.png) + +2. Fill up "General" section + + ![general](../../../static/img/getting-started/company-profile/general.png) + +3. Fill up "EPF" Section + + ![epf-1](../../../static/img/getting-started/company-profile/epf-1.png) + + ![epf-2](../../../static/img/getting-started/company-profile/epf-2.png) + +4. Fill up "Tax" Section + + ![tax-1](../../../static/img/getting-started/company-profile/tax-1.png) + + ![tax-2](../../../static/img/getting-started/company-profile/tax-2.png) + +5. Fill up "SOCSO" Section + + ![socso-1](../../../static/img/getting-started/company-profile/socso-1.png) + + ![socso-2](../../../static/img/getting-started/company-profile/socso-2.png) + +6. Fill up "Zakat" Section + + ![zakat](../../../static/img/getting-started/company-profile/zakat.png) + +7. Fill up " Officer" Section + + ![officer-1](../../../static/img/getting-started/company-profile/officer-2.png) + + ![officer-2](../../../static/img/getting-started/company-profile/officer-2.png) + +8. Fill up "Dealer" Section + + ![dealer](../../../static/img/getting-started/company-profile/dealer.png) \ No newline at end of file diff --git a/docs/usage/File/import-data.md b/docs/usage/File/import-data.md new file mode 100644 index 0000000..f26bb09 --- /dev/null +++ b/docs/usage/File/import-data.md @@ -0,0 +1,163 @@ +--- +sidebar_position: 2 +title: Import Data +description: Import Data Guide +slug: /usage/file/import-data +tags: ["SQL Payroll", "Usage"] +--- + +## UBS Payroll +### Type Information/Data Import + +1. Maintain Branch (branch.dbf) +2. Maintain Category (category.dbf) +3. Maintain Department (dept.dbf) +4. Maintain Project (project.dbf) +5. Maintain Race (race.dbf) +6. Maintain Allowance (awtable.dbf) +7. Maintain Deduction (dedtable.dbf) +8. Maintain Employee (pmast.dbf) + +### Requirement +1. UBS Payroll Version 9 and above +2. UBS Payroll Data (after restore) +3. SQL Payroll Application +4. Empty Database of SQL Payroll + + +### Steps +If your pc do not install UBS Payroll follow step 1 , if you had install UBS Payroll in your pc IGNORE step 1 + +1. Extract your UBS Payroll file by using 7zip. + +![1](../../../static/img/usage/file/data-import/ubs-step1.png) + +- Download 7 Zip to extract UBS Payroll Backup file. +Download Path for 7 Zip : Window 32 Bits : https://www.7-zip.org/a/7z2501.msi Window 64 Bits: https://www.7-zip.org/a/7z2501-x64.msi + +2. Create a Empty Database in SQL Payroll + +![2](../../../static/img/usage/file/data-import/ubs-step2-1.png) + +![3](../../../static/img/usage/file/data-import/ubs-step2-2.png) + +![4](../../../static/img/usage/file/data-import/ubs-step2-3.png) + +3. Login the Empty Database of SQL Payroll + +![5](../../../static/img/usage/file/data-import/ubs-step3.png) + +4. Click File | Import Data | UBS Payroll + +![6](../../../static/img/usage/file/data-import/ubs-step4.png) + +5. Select the the extracted backup folder or UBS Payroll Directory Folder & Click Ok to Start Import + +![7](../../../static/img/usage/file/data-import/ubs-step5.png) + +If failed to connect and prompt message "Provider cannot be found. It may not be properly install". +You need to download and install the file "VFPOLEDBSetup.msi" from: https://www.microsoft.com/en-my/download/details.aspx?id=14839 + +6. Click Close to finish import. +![8](../../../static/img/usage/file/data-import/ubs-step6.png) + +7. Go Human Resources | Maintain Employee to check all your Employee List imported successfully from UBS Payroll. + +![9](../../../static/img/usage/file/data-import/ubs-step7-1.png) + +![10](../../../static/img/usage/file/data-import/ubs-step7-2.png) + +### FAQ + +1. Get message "Provider cannot be found ....it may not be properly installed" when try to import the UBS backup folder. +Answer: The computer need to add Microsoft Visual FocPro Driver in ODBC Data Source Adminstrator (control panel) + +## AutoCount Payroll +### Type Information/Data Import + +1. Company Profile (PROFILE) +2. Maintain Payment Method (BANK) +3. Maintain Department (DEPT) +4. Maintain Race (RACE) +5. Maintain Allowance (ALLOWANCE) +6. Maintain Deduction (DEDUCTION) +7. Maintain Employee (EMPLOYEE) + + +### Requirement +1. Backup of Autocount Payroll File which normally the file extention is P01 (Eg. SAMPLE COMPANY SDN BHD [2012] - 20120606.P01) +2. SQL Payroll Application +3. Empty Database of SQL Payroll + + +### Steps +If your pc do not install UBS Payroll follow step 1 , if you had install UBS Payroll in your pc IGNORE step 1 + +1. Login the Empty Database of SQL Payroll +2. Click File | Import Data | AutoCount Payroll + +![11](../../../static/img/usage/file/data-import/ac-step2-1.png) + +3. Select the Autocount Backup File & Click Open + +![12](../../../static/img/usage/file/data-import/ac-step2-2.png) + +4. Click Ok To Start Import + +![13](../../../static/img/usage/file/data-import/ac-step2-3.png) + +5. Click Close to Finish import. + +## Others +### Type Information/Data Import + +1. Pending Overtime +2. Pending Deduction +3. Leave Application +4. Pending Wages +5. Pending Unpaid Leave + +### Steps +Below example is import Pending Overtime & is applicable for other Attendance System + +1. Click File | Import Data | [Select the Time Attendance] (eg ELID, SynGlobal Time Attendance, etc) + +![14](../../../static/img/usage/file/data-import/others-step1.png) + + +2. Click the 3 Dot Button to Open + +![15](../../../static/img/usage/file/data-import/others-step2-1.png) + +| Field | Properties | +|---|---| +|Data From|Is the path for the CSV file to be import.| +|New Setting...|Create New Setting for New Import.| +|Load Setting...|Use the saved Setting created/saved on last import from Database.| +|Load From File...|Use the saved Setting created/saved on last import from External XML File.| +|Manage Setting Button|For Delete the saved Setting created/saved on last import from Database (See below picture).| + +![16](../../../static/img/usage/file/data-import/others-step2-2.png) + +3. Click Next + +![17](../../../static/img/usage/file/data-import/others-step3-1.png) + +![18](../../../static/img/usage/file/data-import/others-step3-2.png) + +|Field|Properties| +|---|---| +|Description|Setting Name.| +|Save button|Save the current setting for future use.| +|From row|From which row number in the CSV file start to import.| +|Separator Options|Type of separator in the CSV file.| +|Field|Which Column To Map and Import.| + + +4. Click Finish button after finish select & Map all the fields. + +![19](../../../static/img/usage/file/data-import/others-step4.png) + +5. Click Ok + +![20](../../../static/img/usage/file/data-import/others-step5.png) diff --git a/docs/usage/general/_category_.json b/docs/usage/general/_category_.json new file mode 100644 index 0000000..9ad3948 --- /dev/null +++ b/docs/usage/general/_category_.json @@ -0,0 +1,9 @@ +{ + "label": "General", + "position": 7, + "link": { + "type": "generated-index", + "description": "General guide of SQL Payroll", + "slug": "/usage/general" + } +} \ No newline at end of file diff --git a/docs/usage/batch-email.md b/docs/usage/general/batch-email.md similarity index 67% rename from docs/usage/batch-email.md rename to docs/usage/general/batch-email.md index 8a8af58..1113fdc 100644 --- a/docs/usage/batch-email.md +++ b/docs/usage/general/batch-email.md @@ -1,7 +1,7 @@ --- title: Batch Email description: A guide to do batch email (Email Client Batch & SMTP Batch) -slug: /usage/batch-email +slug: /usage/general/batch-email tags: ["SQL Payroll", "Batch Email", "Email Client Batch", "SMTP Batch"] --- @@ -15,33 +15,33 @@ You can [CLICK HERE]( Click on Expand - ![template](../../static/img/usage/batch-email/template.png) + ![template](../../../static/img/usage/batch-email/template.png) 3. Copy all - ![copy-template](../../static/img/usage/batch-email/copy-template.png) + ![copy-template](../../../static/img/usage/batch-email/copy-template.png) 4. Open your SQL Payroll System 5. Navigate to **Human Resource** > **Maintain Employee** and click New - ![new](../../static/img/usage/batch-email/new.png) + ![new](../../../static/img/usage/batch-email/new.png) 6. Click 🔽 beside **More** - ![more-dropdown](../../static/img/usage/batch-email/more-dropdown.png) + ![more-dropdown](../../../static/img/usage/batch-email/more-dropdown.png) 7. Click on Paste Employee - ![paste-employee](../../static/img/usage/batch-email/paste-employee.png) + ![paste-employee](../../../static/img/usage/batch-email/paste-employee.png) 8. After Paste Employee you will see Employee Code as **EMAIL** and the PDF Password Setting at **Note** - ![paste-employee-result](../../static/img/usage/batch-email/paste-employee-result.png) + ![paste-employee-result](../../../static/img/usage/batch-email/paste-employee-result.png) ## Setting PDF Password @@ -65,13 +65,13 @@ Only available in Version 1.2021.2066.174 & above [PrivatePassword] ``` - ![employee-name-2-pdf-password-1](../../static/img/usage/batch-email/employee-name-2-pdf-password-1.png) + ![employee-name-2-pdf-password-1](../../../static/img/usage/batch-email/employee-name-2-pdf-password-1.png) 2. Under Employee profile set the password at **Name 2** > For Example : **_testing_** is the PDF Password - ![employee-name-2-pdf-password-2](../../static/img/usage/batch-email/employee-name-2-pdf-password-2.png) + ![employee-name-2-pdf-password-2](../../../static/img/usage/batch-email/employee-name-2-pdf-password-2.png) ### Scenario 2 : Setting Global PDF Password by UseName and ICPass @@ -107,7 +107,7 @@ Only available in Version 1.2021.2066.174 & above > > The password is : **L@014321** - ![global-pdf-password-usename-ic-pass](../../static/img/usage/batch-email/global-pdf-password-usename-ic-pass.png) + ![global-pdf-password-usename-ic-pass](../../../static/img/usage/batch-email/global-pdf-password-usename-ic-pass.png) ### Scenario 3 : Setting Global PDF Password @@ -137,7 +137,7 @@ This settings configures **all employees** to have the same password > The PDF Password is **_‘BatchEmail’_** - ![pdf-password-global](../../static/img/usage/batch-email/pdf-password-global.png) + ![pdf-password-global](../../../static/img/usage/batch-email/pdf-password-global.png) ### Scenario 4 : Setting Private/ Individual Password @@ -179,7 +179,7 @@ Must set for all Employees ``` - ![pdf-password-individual](../../static/img/usage/batch-email/pdf-password-individual.png) + ![pdf-password-individual](../../../static/img/usage/batch-email/pdf-password-individual.png) ## Send Payslip by Batch Email @@ -191,25 +191,25 @@ Make sure your pc had install window email (Ex : Outlook or Thunderbird) 1. Go to Payroll > Print Pay Slip ... - ![email-client-print-payslip](../../static/img/usage/batch-email/email-client-print-payslip.png) + ![email-client-print-payslip](../../../static/img/usage/batch-email/email-client-print-payslip.png) 2. Filter your process you wish to batch email > Apply - ![email-client-filter](../../static/img/usage/batch-email/email-client-filter.png) + ![email-client-filter](../../../static/img/usage/batch-email/email-client-filter.png) 3. Click 🔽 Beside Printer icon 4. Click on Export to E-Mail Client (Batch) - ![email-client-more](../../static/img/usage/batch-email/email-client-more.png) + ![email-client-more](../../../static/img/usage/batch-email/email-client-more.png) 5. Select your payslip format > OK - ![email-client-select-payslip](../../static/img/usage/batch-email/email-client-select-payslip.png) + ![email-client-select-payslip](../../../static/img/usage/batch-email/email-client-select-payslip.png) 6. After click ok will prompt window and show has been sent to recipient email, mean success send out - ![email-client-send](../../static/img/usage/batch-email/email-client-send.png) + ![email-client-send](../../../static/img/usage/batch-email/email-client-send.png) ### E-Mail SMTP (Batch) @@ -222,7 +222,7 @@ Make Sure you had create App Password 1. Go to **File** > **Company Profile** - ![smtp-company-profile](../../static/img/usage/batch-email/smtp-company-profile.png) + ![smtp-company-profile](../../../static/img/usage/batch-email/smtp-company-profile.png) 2. Select Email Setting from the tabs @@ -230,26 +230,26 @@ Make Sure you had create App Password > \*\*Password : Is your App Password - ![smtp-app-password](../../static/img/usage/batch-email/smtp-app-password.png) + ![smtp-app-password](../../../static/img/usage/batch-email/smtp-app-password.png) 4. Go to **Payroll**, click **Print Pay Slip** - ![smtp-print-payslip](../../static/img/usage/batch-email/smtp-print-payslip.png) + ![smtp-print-payslip](../../../static/img/usage/batch-email/smtp-print-payslip.png) 5. Filter your process you wish to batch email > Apply - ![smtp-filter](../../static/img/usage/batch-email/smtp-filter.png) + ![smtp-filter](../../../static/img/usage/batch-email/smtp-filter.png) 6. Click 🔽 Beside Printer icon 7. Click on Export to E-Mail SMTP (Batch) - ![smtp-export](../../static/img/usage/batch-email/smtp-export.png) + ![smtp-export](../../../static/img/usage/batch-email/smtp-export.png) 8. Select your payslip format > OK - ![smtp-select-payslip](../../static/img/usage/batch-email/smtp-select-payslip.png) + ![smtp-select-payslip](../../../static/img/usage/batch-email/smtp-select-payslip.png) 9. After click ok will prompt window and show has been sent to recipient email, mean success send out - ![smtp-send](../../static/img/usage/batch-email/smtp-send.png) + ![smtp-send](../../../static/img/usage/batch-email/smtp-send.png) diff --git a/docs/usage/change-payroll-description.md b/docs/usage/general/change-payroll-description.md similarity index 57% rename from docs/usage/change-payroll-description.md rename to docs/usage/general/change-payroll-description.md index 2cdb497..1bb34fe 100644 --- a/docs/usage/change-payroll-description.md +++ b/docs/usage/general/change-payroll-description.md @@ -1,7 +1,7 @@ --- title: Change Payroll Description description: A guide on how to change the payroll description -slug: /usage/change-payroll-description +slug: /usage/general/change-payroll-description tags: ["SQL Payroll", "Description"] --- @@ -9,7 +9,7 @@ tags: ["SQL Payroll", "Description"] Picture below shows a default payroll description ::: -![default](../../static/img/usage/change-payroll-description/default.png) +![default](../../../static/img/usage/change-payroll-description/default.png) ## Setup @@ -17,20 +17,20 @@ Picture below shows a default payroll description 2. Select the month, and key in the description that you want in “Description 1”. - ![description](../../static/img/usage/change-payroll-description/description.png) + ![description](../../../static/img/usage/change-payroll-description/description.png) 3. Press Process - ![process](../../static/img/usage/change-payroll-description/process.png) + ![process](../../../static/img/usage/change-payroll-description/process.png) 4. You will see the description on the top of the month end. 5. If you click on “Past Payroll” icon and you will see the month end description that you created. - ![result](../../static/img/usage/change-payroll-description/result.png) + ![result](../../../static/img/usage/change-payroll-description/result.png) To change the payroll description AFTER processed, 6. At Open Payroll, press F2 key and amend the description directly. - ![after-process-change](../../static/img/usage/change-payroll-description/after-process-change.png) + ![after-process-change](../../../static/img/usage/change-payroll-description/after-process-change.png) diff --git a/docs/usage/daily-pay-method.md b/docs/usage/general/daily-pay-method.md similarity index 77% rename from docs/usage/daily-pay-method.md rename to docs/usage/general/daily-pay-method.md index 9eb7c1d..434f723 100644 --- a/docs/usage/daily-pay-method.md +++ b/docs/usage/general/daily-pay-method.md @@ -1,7 +1,7 @@ --- title: Daily Pay Method description: A guide to process daily pay method for employee -slug: /usage/daily-pay-method +slug: /usage/general/daily-pay-method tags: ["SQL Payroll", "Daily Pay"] --- @@ -23,7 +23,7 @@ This guide explains how to set daily payment for your employees. Given the below - Working Day Per Month = 1 - Working Hour Per Day = 8 - ![contributions-settings](../../static/img/usage/daily-pay-method/contributions-settings.png) + ![contributions-settings](../../../static/img/usage/daily-pay-method/contributions-settings.png) 2. Input the daily rate in maintain employee @@ -31,7 +31,7 @@ This guide explains how to set daily payment for your employees. Given the below 2. Input the daily rate (RM16.00 per day) in the Wages field. 3. Set the contribution to “DAILY”. - ![input-daily-rate](../../static/img/usage/daily-pay-method/input-daily-rate.png) + ![input-daily-rate](../../../static/img/usage/daily-pay-method/input-daily-rate.png) 3. Open pending payroll – Wages @@ -41,7 +41,7 @@ This guide explains how to set daily payment for your employees. Given the below - Work unit = 1 day - Rate = RM16.00 per day - ![pending-payroll-wages](../../static/img/usage/daily-pay-method/pending-payroll-wages.png) + ![pending-payroll-wages](../../../static/img/usage/daily-pay-method/pending-payroll-wages.png) 4. Open pending payroll – Overtime @@ -52,21 +52,21 @@ This guide explains how to set daily payment for your employees. Given the below - Work Unit = No.of hours (OT) - Rate = 1.5 rate per hour (OT) - ![pending-payroll-overtime](../../static/img/usage/daily-pay-method/pending-payroll-overtime.png) + ![pending-payroll-overtime](../../../static/img/usage/daily-pay-method/pending-payroll-overtime.png) 5. Final payroll process 1. Navigate to **Payroll** > **New Payroll** 2. Click on Final followed by Process button. - ![final-payroll-process](../../static/img/usage/daily-pay-method/final-payroll-process.png) + ![final-payroll-process](../../../static/img/usage/daily-pay-method/final-payroll-process.png) 6. Check the wages records 1. Click on the Wages to retrieve the detailed wages records. 2. You will see the records are posted from wages pending for the month. - ![check-wages](../../static/img/usage/daily-pay-method/check-wages.png) + ![check-wages](../../../static/img/usage/daily-pay-method/check-wages.png) 7. Check the overtime records @@ -87,4 +87,4 @@ This guide explains how to set daily payment for your employees. Given the below |HW15|4hrs|1.5|2.00|RM2.00 x 1.5 = RM3.00|RM3.00 x 4 hrs = RM12.00| |HW15|4hrs|1.5|2.00|RM2.00 x 1.5 = RM3.00|RM3.00 x 3 hrs = RM9.00| - ![check-overtime](../../static/img/usage/daily-pay-method/check-overtime.png) + ![check-overtime](../../../static/img/usage/daily-pay-method/check-overtime.png) diff --git a/docs/usage/final-payroll.md b/docs/usage/general/final-payroll.md similarity index 70% rename from docs/usage/final-payroll.md rename to docs/usage/general/final-payroll.md index d2a1e0b..dcdf766 100644 --- a/docs/usage/final-payroll.md +++ b/docs/usage/general/final-payroll.md @@ -1,7 +1,7 @@ --- title: Final Payroll description: A guide to do final payroll to process the net pay amount based on computerized calculation -slug: /usage/final-payroll +slug: /usage/general/final-payroll tags: ["SQL Payroll", "Final"] --- @@ -9,13 +9,13 @@ tags: ["SQL Payroll", "Final"] 1. On top of your screen, look for **Human Resource** > **Maintain Employee** > double click any one of the employee and go into this screen - ![employee-1](../../static/img/usage/final-payroll/employee-1.png) + ![employee-1](../../../static/img/usage/final-payroll/employee-1.png) :::info[note] Make sure you have selected the correct wages type and key in the wages amount ::: - ![employee-2](../../static/img/usage/final-payroll/employee-2.png) + ![employee-2](../../../static/img/usage/final-payroll/employee-2.png) - This screen is to set your employees monthly fixed allowance - Click on the ‘+’ button where the red arrow pointed, then select the type of allowance that you maintained in allowance maintenance @@ -23,22 +23,22 @@ tags: ["SQL Payroll", "Final"] 2. On top of your screen, look for **Human Resource** > **Maintain Employee** > double click any one of the employee and go into this screen - ![select-date-year](../../static/img/usage/final-payroll/select-date-year.png) + ![select-date-year](../../../static/img/usage/final-payroll/select-date-year.png) - Select the correct year and month , for those that are not cut off at month end you can click on the ‘…’ button at where the red arrow pointed to select the cut off day. - Description2, ref1 and ref2, you can key in as reference purpose. 1. Click on the process to proceed, then you will see the screen below - ![process](../../static/img/usage/final-payroll/process.png) + ![process](../../../static/img/usage/final-payroll/process.png) 2. Click on the print payslip to check on the amount that calculated from system - ![print-payslip](../../static/img/usage/final-payroll/print-payslip.png) + ![print-payslip](../../../static/img/usage/final-payroll/print-payslip.png) You can scroll to the right to check completely - ![check-details](../../static/img/usage/final-payroll/check-details.png) + ![check-details](../../../static/img/usage/final-payroll/check-details.png) 3. Assume it is all correct amount, just click on the preview to check on how it will be printed out with 5 kinds of designs @@ -46,17 +46,17 @@ tags: ["SQL Payroll", "Final"] - Refer image below to export to other documents, for printing jiust click on the printer icon at the most left - ![export](../../static/img/usage/final-payroll/export.png) + ![export](../../../static/img/usage/final-payroll/export.png) - The image below is a sample of pdf file after exported - ![export-result](../../static/img/usage/final-payroll/export-result.png) + ![export-result](../../../static/img/usage/final-payroll/export-result.png) 5. Follow the steps below: 1. Back to step **2.ii** - ![print-payroll](../../static/img/usage/final-payroll/print-payroll.png) + ![print-payroll](../../../static/img/usage/final-payroll/print-payroll.png) - This is print payroll summary (a quick summary to check on all those wages, allowance, gross pay, epf , socso etc… of all employees) @@ -64,9 +64,9 @@ tags: ["SQL Payroll", "Final"] 2. **Payment summary** - ![summary-1](../../static/img/usage/final-payroll/summary-1.png) + ![summary-1](../../../static/img/usage/final-payroll/summary-1.png) - ![summary-2](../../static/img/usage/final-payroll/summary-2.png) + ![summary-2](../../../static/img/usage/final-payroll/summary-2.png) Click on the Blue coirage report, then you will go to a screen that show you how the cash notes is being paid to the employees. @@ -76,8 +76,8 @@ tags: ["SQL Payroll", "Final"] - It will display the employee epf, socso / employer epf, socso correspondingly. - ![result-1](../../static/img/usage/final-payroll/result-1.png) + ![result-1](../../../static/img/usage/final-payroll/result-1.png) - You can double click your employee name to check on its individual’s amount - ![result-2](../../static/img/usage/final-payroll/result-2.png) + ![result-2](../../../static/img/usage/final-payroll/result-2.png) diff --git a/docs/usage/online-mobile-approval.md b/docs/usage/general/online-mobile-approval.md similarity index 75% rename from docs/usage/online-mobile-approval.md rename to docs/usage/general/online-mobile-approval.md index 4666c4f..9873fe4 100644 --- a/docs/usage/online-mobile-approval.md +++ b/docs/usage/general/online-mobile-approval.md @@ -1,7 +1,7 @@ --- title: Online Mobile Approval description: A guide to carry out online mobile approval -slug: /usage/online-mobile-approval +slug: /usage/general/online-mobile-approval tags: ["SQL Payroll", "Online Mobile Approval"] --- @@ -27,13 +27,13 @@ These **ALL** can use Online Approval for user : 2. Click process > prompt a dialog box to override > click **_Online Approval_** - ![sample-scenario-1](../../static/img/usage/online-mobile-approval/sample-scenario-1.png) + ![sample-scenario-1](../../../static/img/usage/online-mobile-approval/sample-scenario-1.png) 1. Tick the ID that you choose to get approval 2. You can choose to send by **Whatsapp**, **Send by Email** or **Send by Whatsapp & Email** - ![sample-scenario-2](../../static/img/usage/online-mobile-approval/sample-scenario-2.png) + ![sample-scenario-2](../../../static/img/usage/online-mobile-approval/sample-scenario-2.png) 3. You will received a message at whatsapp or email send by system @@ -41,13 +41,13 @@ These **ALL** can use Online Approval for user : > You will received a message > Click that link - ![sample-scenario-3](../../static/img/usage/online-mobile-approval/sample-scenario-3.png) + ![sample-scenario-3](../../../static/img/usage/online-mobile-approval/sample-scenario-3.png) - **Senario 2 : Send By Email** > You will received an email > Click **_‘CLICK HERE FOR MORE ACTIONS’_** - ![sample-scenario-4](../../static/img/usage/online-mobile-approval/sample-scenario-4.png) + ![sample-scenario-4](../../../static/img/usage/online-mobile-approval/sample-scenario-4.png) 4. Login **Gmail Address** that you setting in maintain user **Open ID (Google)** @@ -58,15 +58,15 @@ These **ALL** can use Online Approval for user : ::: - ![sample-scenario-5](../../static/img/usage/online-mobile-approval/sample-scenario-5.png) + ![sample-scenario-5](../../../static/img/usage/online-mobile-approval/sample-scenario-5.png) 5. Enter your **Gmail Password** - ![sample-scenario-6](../../static/img/usage/online-mobile-approval/sample-scenario-6.png) + ![sample-scenario-6](../../../static/img/usage/online-mobile-approval/sample-scenario-6.png) 6. After Login **Gmail** you will see this window - ![sample-scenario-7](../../static/img/usage/online-mobile-approval/sample-scenario-7.png) + ![sample-scenario-7](../../../static/img/usage/online-mobile-approval/sample-scenario-7.png) 7. You can click on **_Doc Detail_** and **_ScreenShot_** to see the detail @@ -76,7 +76,7 @@ These **ALL** can use Online Approval for user : 3. **Reply** : You can left a message and click Approve or Reject - ![sample-scenario-8](../../static/img/usage/online-mobile-approval/sample-scenario-8.png) + ![sample-scenario-8](../../../static/img/usage/online-mobile-approval/sample-scenario-8.png) :::info[note] After Approve or Reject you can go back SQL Payroll, you will see below screen @@ -90,7 +90,7 @@ These **ALL** can use Online Approval for user : > > c. Click **OK** to save that transaction - ![sample-scenario-9](../../static/img/usage/online-mobile-approval/sample-scenario-9.png) + ![sample-scenario-9](../../../static/img/usage/online-mobile-approval/sample-scenario-9.png) - **Senario 2 : Reject Override** @@ -100,25 +100,25 @@ These **ALL** can use Online Approval for user : > > c. The OK button is disabled after reject, click Cancel - ![sample-scenario-10](../../static/img/usage/online-mobile-approval/sample-scenario-10.png) + ![sample-scenario-10](../../../static/img/usage/online-mobile-approval/sample-scenario-10.png) After Click Cancel System will Prompt back to this dialog box - ![sample-scenario-11](../../static/img/usage/online-mobile-approval/sample-scenario-11.png) + ![sample-scenario-11](../../../static/img/usage/online-mobile-approval/sample-scenario-11.png) ## Setup ### Step 1 : Navigate to Tools > Maintain User - ![setup-step-1](../../static/img/usage/online-mobile-approval/setup-step-1.png) + ![setup-step-1](../../../static/img/usage/online-mobile-approval/setup-step-1.png) ### Step 2 : Edit User 1. Double click the user will be set for Approval > Edit - ![setup-step-2-1](../../static/img/usage/online-mobile-approval/setup-step-2-1.png) + ![setup-step-2-1](../../../static/img/usage/online-mobile-approval/setup-step-2-1.png) - ![setup-step-2-2](../../static/img/usage/online-mobile-approval/setup-step-2-2.png) + ![setup-step-2-2](../../../static/img/usage/online-mobile-approval/setup-step-2-2.png) ### Step 3 : Set Approval Person @@ -134,7 +134,7 @@ These **ALL** can use Online Approval for user : If receive notification email and approve email is Gmail, do setting only at **3. OPEN ID (Google)** and leave **2.Email** column blank ::: - ![setup-step-3-1](../../static/img/usage/online-mobile-approval/setup-step-3-1.png) + ![setup-step-3-1](../../../static/img/usage/online-mobile-approval/setup-step-3-1.png) For Example : @@ -145,7 +145,7 @@ These **ALL** can use Online Approval for user : 1. Open ID (Google) : `XXXXXX@gmail.com` 2. Email : **Left as blank** - ![setup-step-3-2](../../static/img/usage/online-mobile-approval/setup-step-3-2.png) + ![setup-step-3-2](../../../static/img/usage/online-mobile-approval/setup-step-3-2.png) - **Senario 2 : Use Different email to received notification and give approval** @@ -155,7 +155,7 @@ These **ALL** can use Online Approval for user : 1. Open ID (Google) : Put your gmail address `XXXXXX@gmail.com` 2. Email : `XXXXXX@estream.com` - ![setup-step-3-3](../../static/img/usage/online-mobile-approval/setup-step-3-3.png) + ![setup-step-3-3](../../../static/img/usage/online-mobile-approval/setup-step-3-3.png) ### Step 4 : Setting SMTP @@ -187,4 +187,4 @@ These **ALL** can use Online Approval for user : 9. After done setting click Save - ![setup-step-4](../../static/img/usage/online-mobile-approval/setup-step-4.png) + ![setup-step-4](../../../static/img/usage/online-mobile-approval/setup-step-4.png) diff --git a/docs/usage/pcb-cp38-receipt-no-date.md b/docs/usage/general/pcb-cp38-receipt-no-date.md similarity index 57% rename from docs/usage/pcb-cp38-receipt-no-date.md rename to docs/usage/general/pcb-cp38-receipt-no-date.md index 18bc9cf..1816a64 100644 --- a/docs/usage/pcb-cp38-receipt-no-date.md +++ b/docs/usage/general/pcb-cp38-receipt-no-date.md @@ -1,7 +1,7 @@ --- title: PCB & CP38 Receipt No & Date description: A guide to maintain payroll frequency method -slug: /usage/pcb-cp38-receipt-no-date +slug: /usage/general/pcb-cp38-receipt-no-date tags: ["SQL Payroll", "PCB", "CP38", "Receipt"] --- @@ -10,17 +10,17 @@ tags: ["SQL Payroll", "PCB", "CP38", "Receipt"] Given an example with this Month (June) with **PCB amount** of **RM1444.90**. ::: -![example](../../static/img/usage/pcb-cp38-receipt-no-date/example.png) +![example](../../../static/img/usage/pcb-cp38-receipt-no-date/example.png) ## Setup 1. Right click on the particular Month End process and click **PCB Receipt** - ![pcb-receipt](../../static/img/usage/pcb-cp38-receipt-no-date/pcb-receipt.png) + ![pcb-receipt](../../../static/img/usage/pcb-cp38-receipt-no-date/pcb-receipt.png) 2. The Following screen will be seen - ![pcb-receipt-interface](../../static/img/usage/pcb-cp38-receipt-no-date/pcb-receipt-interface.png) + ![pcb-receipt-interface](../../../static/img/usage/pcb-cp38-receipt-no-date/pcb-receipt-interface.png) >1 Enter the Receipt Date. > @@ -28,14 +28,14 @@ Given an example with this Month (June) with **PCB amount** of **RM1444.90**. > >3 Press calculate amount to show the total amount of PCB u paid that month. - ![calculate](../../static/img/usage/pcb-cp38-receipt-no-date/calculate.png) + ![calculate](../../../static/img/usage/pcb-cp38-receipt-no-date/calculate.png) The **TOTAL** PCB Normal amount of the employees which is **RM 1444.90**. 3. Go to **Payroll** > **Government Reports** > **Print Income Tax PCB 2(II)** - ![print-income-tax-pcb](../../static/img/usage/pcb-cp38-receipt-no-date/print-income-tax-pcb.png) + ![print-income-tax-pcb](../../../static/img/usage/pcb-cp38-receipt-no-date/print-income-tax-pcb.png) 4. Preview the employees Tax PCB 2(II). The following result will show in the report: - ![result](../../static/img/usage/pcb-cp38-receipt-no-date/result.png) + ![result](../../../static/img/usage/pcb-cp38-receipt-no-date/result.png) diff --git a/docs/usage/zakat-tabung-haji.md b/docs/usage/general/zakat-tabung-haji.md similarity index 53% rename from docs/usage/zakat-tabung-haji.md rename to docs/usage/general/zakat-tabung-haji.md index ef40ed9..6e07569 100644 --- a/docs/usage/zakat-tabung-haji.md +++ b/docs/usage/general/zakat-tabung-haji.md @@ -1,7 +1,7 @@ --- title: Zakat and Tabung Haji description: A guide to apply Zakat and Tabung Haji deduction for employee -slug: /usage/zakat-tabung-haji +slug: /usage/general/zakat-tabung-haji tags: ["SQL Payroll", "Zakat", "Tabung Haji"] --- @@ -9,43 +9,43 @@ tags: ["SQL Payroll", "Zakat", "Tabung Haji"] 1. Go to **File** > **Company Profile** - ![company-profile](../../static/img/usage/zakat-tabung-haji/company-profile.png) + ![company-profile](../../../static/img/usage/zakat-tabung-haji/company-profile.png) 2. Click **Zakat** and key in Zakat Employer Number : - ![zakat](../../static/img/usage/zakat-tabung-haji/zakat.png) + ![zakat](../../../static/img/usage/zakat-tabung-haji/zakat.png) 3. Click **Tabung Haji** and key in your company's Tabung Haji Number. Press SAVE once you have keyed in. - ![tabung-haji-number](../../static/img/usage/zakat-tabung-haji/tabung-haji-number.png) + ![tabung-haji-number](../../../static/img/usage/zakat-tabung-haji/tabung-haji-number.png) 4. Go to **Payroll** > **Maintenance** > **Maintain Deduction** : - ![maintain-deduction](../../static/img/usage/zakat-tabung-haji/maintain-deduction.png) + ![maintain-deduction](../../../static/img/usage/zakat-tabung-haji/maintain-deduction.png) 5. Create a new **Deduction** by clicking the **NEW** button. - ![new-deduction](../../static/img/usage/zakat-tabung-haji/new-deduction.png) + ![new-deduction](../../../static/img/usage/zakat-tabung-haji/new-deduction.png) 6. Create **ZAKAT** deduction following these steps, remeber to press SAVE. - ![create-zakat](../../static/img/usage/zakat-tabung-haji/create-zakat.png) + ![create-zakat](../../../static/img/usage/zakat-tabung-haji/create-zakat.png) 7. Create **Tabung Haji** deduction by Pressing the **NEW** button and follow the image. Remember to press **SAVE**. - ![create-tabung-haji](../../static/img/usage/zakat-tabung-haji/create-tabung-haji.png) + ![create-tabung-haji](../../../static/img/usage/zakat-tabung-haji/create-tabung-haji.png) 8. Once you have created the 2 new deduction, please go to Payroll -> Open pending payroll and key in your deduction. - ![pending-payroll-deduction](../../static/img/usage/zakat-tabung-haji/pending-payroll-deduction.png) + ![pending-payroll-deduction](../../../static/img/usage/zakat-tabung-haji/pending-payroll-deduction.png) 9. Select the employee name, and key in the deduction amount for **Zakat** and **Tabung Haji**. Press **Save** - ![employee-edit-zakat-tabung-haji](../../static/img/usage/zakat-tabung-haji/employee-edit-zakat-tabung-haji.png) + ![employee-edit-zakat-tabung-haji](../../../static/img/usage/zakat-tabung-haji/employee-edit-zakat-tabung-haji.png) 10. When you process your month end, you will see the **Deduction** amount as well as the gross **Zakat** that you keyed in **Pending Payroll** - ![process-result](../../static/img/usage/zakat-tabung-haji/process-result.png) + ![process-result](../../../static/img/usage/zakat-tabung-haji/process-result.png) ## Print Zakat Report @@ -53,17 +53,17 @@ tags: ["SQL Payroll", "Zakat", "Tabung Haji"] 2. Select the **Year** and **Month**, press the **Apply** button. Once you see the employee name, press the word **"Submission.."**: - ![select-date](../../static/img/usage/zakat-tabung-haji/select-date.png) + ![select-date](../../../static/img/usage/zakat-tabung-haji/select-date.png) 3. Select the payment format: - ![select-payment-format](../../static/img/usage/zakat-tabung-haji/select-payment-format.png) + ![select-payment-format](../../../static/img/usage/zakat-tabung-haji/select-payment-format.png) 4. If you selected Lembaga Zakat Selangor, you have to key in the Bank account and the cheque number. Once that is done, You can save the text file to your desktop. - ![lembaga-zakat-selangor-1](../../static/img/usage/zakat-tabung-haji/lembaga-zakat-selangor-1.png) + ![lembaga-zakat-selangor-1](../../../static/img/usage/zakat-tabung-haji/lembaga-zakat-selangor-1.png) - ![lembaga-zakat-selangor-2](../../static/img/usage/zakat-tabung-haji/lembaga-zakat-selangor-2.png) + ![lembaga-zakat-selangor-2](../../../static/img/usage/zakat-tabung-haji/lembaga-zakat-selangor-2.png) ## Print Tabung Haji Report @@ -71,8 +71,8 @@ tags: ["SQL Payroll", "Zakat", "Tabung Haji"] 2. Select the **Year** and **Month**, press **Apply**. Press the **Preview** button. - ![tabung-haji-select-date](../../static/img/usage/zakat-tabung-haji/tabung-haji-select-date.png) + ![tabung-haji-select-date](../../../static/img/usage/zakat-tabung-haji/tabung-haji-select-date.png) 3. You will see this report. You may print it out or export it as a PDF file : - ![tabung-haji-report](../../static/img/usage/zakat-tabung-haji/tabung-haji-report.png) + ![tabung-haji-report](../../../static/img/usage/zakat-tabung-haji/tabung-haji-report.png) diff --git a/docs/usage/human-resource/_category_.json b/docs/usage/human-resource/_category_.json index c1f83fb..f1ef8f8 100644 --- a/docs/usage/human-resource/_category_.json +++ b/docs/usage/human-resource/_category_.json @@ -1,10 +1,8 @@ { - "label": "Human Resource", - "position": 1, + "label": "Human Resources", + "position": 2, "link": { "type": "generated-index", - "description": "A series of Guide to Human Resource module in SQL Payroll", - "slug": "/usage/human-resource" - + "description": "Human Resource guide" } } \ No newline at end of file diff --git a/docs/usage/human-resource/bulk-email.md b/docs/usage/human-resource/bulk-email.md deleted file mode 100644 index a93aeee..0000000 --- a/docs/usage/human-resource/bulk-email.md +++ /dev/null @@ -1,66 +0,0 @@ ---- -id: bulk-email -title: Bulk Email with Password -description: A guide to payroll bulk email module for SQL Payroll -slug: /usage/human-resource/bulk-email -tags: ["SQL Payroll", "Bulk Email"] ---- - -:::note - -- Not applicable for Export Email Client or Export to PDF -- For Email Client, 10 records in one PDF, email to 1 recipient, system unable to generate password due to not sure which password should get - -::: - -## Prerequisites - -:::info -In order to use this, user’s computer must configure with window email first -::: - -## Setup - -1. Navigate to **Human Resource** > **Maintain Employee** - -2. Key in the PDF password and enter the email address - - ![maintain-employee](../../../static/img/usage/human-resource/payroll-bulk-email/maintain-employee.png) - -3. Next, go to **Payroll** > **Print Payslip**. Choose the month End Payslip, Apply and Preview - -4. Click on the 🔽 beside the excel export, click on **Export to Email Client (Batch)** - - ![export-to-email-client-batch](../../../static/img/usage/human-resource/payroll-bulk-email/export-to-email-client-batch.png) - - :::tip - For Testing purpose, you may activate the module at File > Customize Payroll Module and ticked **Batch Email** - ::: - - ![batch-email](../../../static/img/usage/human-resource/payroll-bulk-email/batch-email.png) - - :::warning Error - If you haven't configure your window email, you will see an error message as below. Make sure yo have configure your window email before doing these steps. - ::: - - ![error](../../../static/img/usage/human-resource/payroll-bulk-email/error.png) - -## Simple Steps To use IC as PDF Password - -1. Navigate to **Human Resource** > **Maintain Employee** - -2. Click on one employee record, hold the `Shift` key in the keyboard and click on the last record to highlight all - -3. Click on 🔽 button beside More, select Batch Edit - -4. From the columns, click on field Chooser and select **Name2**, **New IC** - -5. Save the structure, copy and paste the New IC value to Name2 column - -![5](../../../static/img/usage/human-resource/payroll-bulk-email/5.png) - -![6](../../../static/img/usage/human-resource/payroll-bulk-email/6.png) - -![7](../../../static/img/usage/human-resource/payroll-bulk-email/7.png) - -![8](../../../static/img/usage/human-resource/payroll-bulk-email/8.png) diff --git a/docs/usage/human-resource/employee-login.md b/docs/usage/human-resource/employee-login.md deleted file mode 100644 index f915122..0000000 --- a/docs/usage/human-resource/employee-login.md +++ /dev/null @@ -1,30 +0,0 @@ ---- -title: Employee Login -description: A guide to setup employee login and allow employee to view their details -slug: /usage/human-resource/employee-login -tags: ["SQL Payroll", "Login", "Personal Info"] ---- - -:::info -This guide explains how to configure and create an account for the employee in SQL Payroll which allow the employee to view their details -::: - -## Setup - -1. In SQL Payroll, go to **Human Resource** > **Maintain Employee** - -2. Click on **Change Password** - - ![change-password](../../../static/img/usage/human-resource/employee-login/change-password.png) - -3. Enter a new password for the employee - - ![enter-password](../../../static/img/usage/human-resource/employee-login/enter-password.png) - -4. Next, ask the employee to open SQL Payroll, login into it by using the **Employee Code** and **Password** configured previously. That's it! 🥳 - - ![login](../../../static/img/usage/human-resource/employee-login/login.png) - -5. Finally, here's an example of employee view - - ![employee-view](../../../static/img/usage/human-resource/employee-login/employee-view.png) diff --git a/docs/usage/human-resource/human-resources-faq.md b/docs/usage/human-resource/human-resources-faq.md new file mode 100644 index 0000000..9771627 --- /dev/null +++ b/docs/usage/human-resource/human-resources-faq.md @@ -0,0 +1,31 @@ +--- +sidebar_position: 3 +title: FAQ +description: FAQ +slug: /usage/human-resource/faq +tags: ["SQL Account", "HR", "FAQ"] +--- + +## Where I can get/modify the appointment letter? + +**Issue:** + +Where do i get the appointment letters + +**Solution:** + +1. Go to **Human Resource | Maintain Employee**..., you can found the following common use employee letters: + + - Acceptance of Resignatin Letter + - Appointment Letter + - Confirmation Letter + - Employment Application Form + - Increment Letter + - Interview Aseessment Form + - and more... + +2. **Highlight** the employee. +3. Click **preview**. +4. Select the **HR.Employee Appointment Report**. + +![HR_FAQ](../../../static/img/usage/human-resource/hr-faq-images/faq-GetAppointmentLetter1.jpg) \ No newline at end of file diff --git a/docs/usage/human-resource/human-resources-setup.md b/docs/usage/human-resource/human-resources-setup.md new file mode 100644 index 0000000..872ac20 --- /dev/null +++ b/docs/usage/human-resource/human-resources-setup.md @@ -0,0 +1,393 @@ +--- +sidebar_position: 1 +title: Setup +description: Setup +slug: /usage/human-resource/setup +tags: ["SQL Payroll", "HR"] +--- + +## Maintain Employee + +Whenever a new staff/worker/person/crew enter the company, Maintain Employee is the place where user needs to key in the details + + +1. Navigate yourself to the Maintain Employee panel + + ![navigate-1](../../../static/img/usage/human-resource/hr-setup-images/navigate-1.png) + + \*OR Click on the home page "Maintain Employee"\*\* + + ![navigate-2](../../../static/img/usage/human-resource/hr-setup-images/navigate-2.png) + +2. Click new to create new employee + + ![new](../../../static/img/usage/human-resource/hr-setup-images/new.png) + +3. Key in the employee’s personal details + + ![HR_Maintain_Employee_1](../../../static/img/usage/human-resource/hr-setup-images/Personal-Tab1.jpg) + +### Personal + +Click the *Change Password* button & enter the password if you wanted to allow the Employee to login to see his/her own payroll data & report +Remember to untick the *Active* for any employee had resign before process the payroll. + +![HR_Personal_1](../../../static/img/usage/human-resource/hr-setup-images/Personal-Tab1.jpg) + +| Field Name | Properties | +|-----------------|------------| +| Code | Definition: Employee code | +| | Field Type: Alphanumerical | +| | Length: 30 | +| Job Title | Definition: Employee Job Title | +| | Field Type: Alphanumerical | +| | Length: 60 | +| Name | Definition: Full Employee Name | +| | Field Type: Alphanumerical | +| | Length: 160 | +| Active | Definition: Unchecked if the selected employee is resigned. | +| | Field Type: Boolean | +| Gender | Definition: The employee Sex | +| | Data Options: Male or Female | +| D.O.B | Definition: The employee Date of Birth | +| | Field Type: Date (dd/MM/YYYY) | +| Address | Definition: Employee Correspondence Address | +| | Field Type: Alphanumerical | +| | Length: 60 (for Each Line) | +| Phone | Definition: Employee Correspondence Phone Number | +| | Field Type: Alphanumerical | +| | Length: 20 (for Each Line) | +| Mobile | Definition: Employee Handphone Number | +| | Field Type: Alphanumerical | +| | Length: 20 | +| Email | Definition: Employee E-Mail Address | +| | Field Type: Alphanumerical | +| | Length: 60 | +| New IC | Definition: Employee New Identity Card Number | +| | Field Type: Numerical | +| | Length: 20 (XXXXXX-XX-XXXX) | +| Old IC | Definition: Employee Old Identity Card Number | +| | Field Type: Alphanumerical | +| | Length: 20 | +| Passport | Definition: Employee Passport Number | +| | Field Type: Alphanumerical | +| | Length: 20 | +| Immigration No | Definition: Employee Immigration Number | +| | Field Type: Alphanumerical | +| | Length: 20 | +| Change Password | Definition: A password for Employee so he/she can self login to print his/her report (Eg EA, payslip, etc) | +| | Field Type: Alphanumerical | + +### Grouping + +In this tab is use for report grouping for the selected employee. It can be either by + +- [Branch](../../usage/human-resource/human-resources-setup.md#maintain-branch) +- [Department](../../usage/human-resource/human-resources-setup.md#maintain-department) +- [Group](../../usage/human-resource/human-resources-setup.md#maintain-group) +- [Category](../../usage/human-resource/human-resources-setup.md#maintain-category) +- [Project](../../usage/human-resource/human-resources-setup.md#maintain-project) +- [Job](../../usage/human-resource/human-resources-setup.md#maintain-job) +- [Task](../../usage/human-resource/human-resources-setup.md#maintain-task) +- [Race](../../usage/human-resource/human-resources-setup.md#maintain-race) +- [History Type](../../usage/human-resource/human-resources-setup.md#maintain-history-type) +- [Announcement](../../usage/human-resource/human-resources-setup.md#maintain-announcement) + + +![HR_Grouping_1](../../../static/img/usage/human-resource/hr-setup-images/Grouping-Tab1.jpg) + +### Family + +In this tab is use to keep the his/her spouse/family information. +It is useful in case anything happen to the employee we able to inform/contact his/her spouse/family + +![HR_Family_1](../../../static/img/usage/human-resource/hr-setup-images/Family-Tab1.jpg) + +| Field Name | Properties | +|----------------|------------| +| Spouse Name | Definition: Employee husband/wife full name | +| | Field Type: Alphanumerical | +| | Length: 160 | +| Spouse Address | Definition: Employee husband/wife Correspondence Address | +| | Field Type: Alphanumerical | +| | Length: 60 (for Each Line) | +| Spouse Phone | Definition: Employee husband/wife Correspondence Phone Number | +| | Field Type: Alphanumerical | +| | Length: 20 (for Each Line) | +| Spouse Mobile | Definition: Employee husband/wife Handphone Number | +| | Field Type: Alphanumerical | +| | Length: 20 | +| Tax Branch | Definition: Employee husband/wife Tax Branch | +| | Field Type: Alphanumerical | +| | Length: 40 | +| Tax No | Definition: Employee husband/wife Tax Number | +| | Field Type: Alphanumerical | +| | Length: 20 | +| Spouse IC No | Definition: Employee husband/wife New Identity Card Number | +| | Field Type: Alphanumerical | +| | Length: 20 | + +### Payroll Info + +![HR_Payroll_1](../../../static/img/usage/human-resource/hr-setup-images/Payroll-Tab1.jpg) + +| Field Name | Properties | Field Name | Properties | +|------------------|------------|------------------|------------| +| Wages Type | Definition: Employee [Wages](/usage/payroll/setup#maintain-wages) Category Type | SOCSO No | Definition: Employee SOCSO Number | +| | | | Field Type: Alphanumerical | +| | | | Length: 20 | +| Wages | Definition: Employee wages amount | SOCSO Type | Definition: Employee SOCSO Category | +| | Field Type: Numerical | | Data Options: First Category, Second Category or No SOCSO | +| Contribution | Definition: Employee [Contribution](/usage/payroll/setup#maintain-contribution) Type | Tax Branch | Definition: Employee Tax Branch | +| | | | Field Type: Alphanumerical | +| | | | Length: 40 | +| Frequency | Definition: Employee payment [Frequency](/usage/payroll/setup#maintain-frequency) | Tax No | Definition: Employee Tax Number | +| | | | Field Type: Alphanumerical | +| | | | Length: 20 | +| Payment Method | Definition: Employer [Payment Method](/usage/payroll/setup#maintain-payment-method) | Marital Status | Definition: Employee marriage status | +| | | | Data Options: Single, Married, Divorced or Widow | +| Bank | Definition: Employee Bank | Spouse Working | Definition: Tick if the Employee husband/wife is working | +| | | | Field Type: Boolean | +| Bank Account No | Definition: Employee Bank Account Number | Spouse Disabled | Definition: Tick if the Employee husband/wife is disable person | +| | Field Type: Alphanumerical | | Field Type: Boolean | +| | Length: 20 | | | +| Self Disabled | Definition: Tick if the Employee is disable person | Tax Category | Definition: Employee Tax Category. Only can select if Override Tax Category is Tick. | +| | Field Type: Boolean | | | +| Resident | Definition: Untick if the Employee Foreigner | Override Tax Category | Definition: Tick if don't wanted System Automatic Calculate the Employee Tax Category | +| | Field Type: Boolean | | Field Type: Boolean | +| | Non-Resident requirement and tax rate, refer to [Non-Resident](https://www.hasil.gov.my/en/individual/individual-life-cycle/how-to-declare-income/non-resident/) | | | +| EPF No | Definition: Employee EPF(KWSP) Number | EA Serial No | Definition: Employee EA Serial Number (Given by LHDN Department) | +| | Field Type: Alphanumerical | | Field Type: Alphanumerical | +| | Length: 20 | | Length: 8 | +| NK | Definition: Employee NK Code (can be seen on EPF Borang A) | Join Date | Definition: Employee Join the Company Date | +| | Field Type: Alphanumerical | | Field Type: Date (dd/MM/yyyy) | +| | Length: 1 | | | +| Initial | Definition: Employee Initial Code (Given by EPF Department) | Confirm Date | Definition: Employee Confirmation Date | +| | Field Type: Alphanumerical | | Field Type: Date (dd/MM/yyyy) | +| | Length: 3 | | | +| | | Resign Date |Definition: Employee Resign Date | +| | | | Field Type: Date (dd/MM/yyyy) | + +### Allowance + +In this Tab is to enter the Fixed [Allowance](/usage/payroll/setup#maintain-allowance) entitled for each month for selected Employee. + +![HR_Allowance_1](../../../static/img/usage/human-resource/hr-setup-images/Allowance-Tab1.jpg) + +### Deduction + +In this Tab is to enter the Fixed [Deduction](/usage/payroll/setup#maintain-deduction) entitled for each month for selected Employee. + +![HR_Deduction_1](../../../static/img/usage/human-resource/hr-setup-images/Deduction-Tab1.jpg) + +### Note + +In this Tab user can load the Photo & other Information for the selected Employee. +For Photo please try + + 1. Save in Jpeg file. + 2. The Jpeg file size limit as 200KB + +![HR_Note_1](../../../static/img/usage/human-resource/hr-setup-images/Note-Tab1.jpg) + +### History + +In this tab is to show the list of history changes in this selected Employee. +Select the Increment at the type column in order to print the Increment Letter (HR.Employee.Increment.Report). + +![HR_History_1](../../../static/img/usage/human-resource/hr-setup-images/History-Tab1.jpg) + +| Field Name | Properties | +|--------------|-------------------------------------| +| Post Date | Definition: Date of the data changes | +| | Field Type: Date | +| Type | Definition: Changes [History Type](../../usage/human-resource/setup#maintain-history-type) | +| Description | Definition: Detail of Data changes | + +### Child + +In this tab is to list out all taxable children(s). + +![HR_hild_1](../../../static/img/usage/human-resource/hr-setup-images/Child-Tab1.jpg) + +| Field Name | Properties | +|--------------------|------------------------------------------------------------------------------------------------------| +| Name | Definition: Employee Tax Deductable Children full name | +| | Field Type: Alphanumerical | +| | Length: 160 | +| D.O.B. | Definition: Employee Tax Deductable Children date of birth. | +| | Field Type: Date (dd/MM/yyyy) | +| | Data Option: Optional (i.e. may leave it empty if don't wanted system calculate the Children Age) | +| Tax Code | Definition: Tax Deductable Children code. | +| Rate | Definition: Rate for Tax Deductable | +| | Field Type: Numerical | +| | Data Options: 1 or 0.5 | +| Number of Children | Definition: Number of Children is use for Tax Calculation. (Auto Calculate) | + +### Attachments + +Here user can attach the file to selected employee (eg Letter of Offer). +Make sure the file is keep in the server as the system only keep the file link/path only. + +![HR_Attachments_1](../../../static/img/usage/human-resource/hr-setup-images/Attachments-Tab1.jpg) + + + +## Maintain Branch + +This is useful for user had many branch company but the salary is paid from HQ. + +![HR_maintain_branch_1](../../../static/img/usage/human-resource/hr-setup-images/Maintain-Branch1.jpg) + +| Field Name | Properties | +|----------------|----------------------------------------------------------------------------| +| Code | A Branch Code (Max 20 Character) | +| Description | A Full Description for Branch (Max 160 Character) | +| Active | Untick it if the selected branch code is unavailable | +| Set as Default | Click This button if wanted the selected Branch Code to be Auto Assign this Branch Code on New at [Maintain Employee](/usage/human-resource/setup#maintain-employee) | + + + +## Maintain Department + +A division of a large organization such as Account, Marketing & etc. + +![HR_department_1](../../../static/img/usage/human-resource/hr-setup-images/Maintain-Department1.jpg) + +| Field Name | Properties | +|----------------|----------------------------------------------------------------------------| +| Code | A Department Code (Max 20 Character) | +| Description | A Full Description for Department (Max 160 Character) | +| Active | Untick it if the selected Department code is unavailable | +| Set as Default | Click This button if wanted the selected Department Code to be Auto Assign this Department Code on New at [Maintain Employee](../../usage/human-resource/setup#maintain-employee) | + + + +## Maintain Group + +This is another type of report grouping by Group type. + +![HR_group_1](../../../static/img/usage/human-resource/hr-setup-images/Maintain-Group1.jpg) + +| Field Name | Properties | +|----------------|----------------------------------------------------------------------------| +| Code | A Group Code (Max 20 Character) | +| Description | A Full Description for Group (Max 160 Character) | +| Active | Untick it if the selected Group code is unavailable | +| Set as Default | Click This button if wanted the selected Group Code to be Auto Assign this Group Code on New at [Maintain Employee](../../usage/human-resource/setup#maintain-employee) | + + + +## Maintain Category + +User also can divide the employee by class or division. + +![HR_category_1](../../../static/img/usage/human-resource/hr-setup-images/Maintain-Category1.jpg) + +| Field Name | Properties | +|----------------|----------------------------------------------------------------------------| +| Code | A Category Code (Max 20 Character) | +| Description | A Full Description for Category (Max 160 Character) | +| Active | Untick it if the selected Category Code is unavailable | +| Set as Default | Click This button if wanted the selected Category Code to be Auto Assign this Category Code on New at [Maintain Employee](../../usage/human-resource/setup#maintain-employee) | + + + +## Maintain Project + +User also can Group the employee by Project which the employee work at. + +![HR_project_1](../../../static/img/usage/human-resource/hr-setup-images/Maintain-Project1.jpg) + +| Field Name | Properties | +|----------------|----------------------------------------------------------------------------| +| Code | A Project Code (Max 20 Character) | +| Description | A Full Description for Project (Max 160 Character) | +| Active | Untick it if the selected Project Code is unavailable | +| Set as Default | Click This button if wanted the selected Project Code to be Auto Assign this Project Code on New at [Maintain Employee](../../usage/human-resource/setup#maintain-employee) | + + + +## Maintain Job + +User also can Group the employee by Job Type in report. + +![HR_Job_1](../../../static/img/usage/human-resource/hr-setup-images/Maintain-Job1.jpg) + +| Field Name | Properties | +|----------------|----------------------------------------------------------------------------| +| Code | A Job Code (Max 20 Character) | +| Description | A Full Description for Job (Max 160 Character) | +| Active | Untick it if the selected Job Code is unavailable | +| Set as Default | Click This button if wanted the selected Job Code to be Auto Assign this Job Code on New at [Maintain Employee](../../usage/human-resource/setup#maintain-employee) | + + + +## Maintain Task + +User also can divide the employee by piece of work to be done or undertaken. + +![HR_Task_1](../../../static/img/usage/human-resource/hr-setup-images/Maintain-Task1.jpg) + +| Field Name | Properties | +|----------------|----------------------------------------------------------------------------| +| Code | A Project Code (Max 20 Character) | +| Description | A Full Description for Task (Max 160 Character) | +| Active | Untick it if the selected Task Code is unavailable | +| Set as Default | Click This button if wanted the selected Task Code to be Auto Assign this Task Code on New at [Maintain Employee](../../usage/human-resource/setup#maintain-employee) | + + + +## Maintain Race + +User also can Group the employee by Race Type in report. + +![HR_Race_1](../../../static/img/usage/human-resource/hr-setup-images/Maintain-Race1.jpg) + +| Field Name | Properties | +|----------------|----------------------------------------------------------------------------| +| Code | A Race Code (Max 20 Character) | +| Description | A Full Description for Race (Max 160 Character) | +| Active | Untick it if the selected Race Code is unavailable | +| Set as Default | Click This button if wanted the selected Race Code to be Auto Assign this Race Code on New at [Maintain Employee](../../usage/human-resource/setup#maintain-employee) | + + +## Maintain History Type + +This is to use to allow user to Group the Changes in the Maintain Employee + +![HR_History_Type_1](../../../static/img/usage/human-resource/hr-setup-images/Maintain-HistortType1.jpg) + +| Field Name | Properties | +|----------------|------------------------------------------------------------------------------------------------| +| Code | A History Type Code (Max 20 Character) | +| Description | A Full Description for History Type (Max 160 Character) | +| Active | Untick it if the selected History Type Code is unavailable | +| Set as Default | Click This button if wanted the selected History Type Code to be Auto Assign this History Type Code on New Changes at [Maintain Employee](../../usage/human-resource/setup#maintain-employee) | + + +## Maintain Announcement + +This is to used to create, manage, and distribute company-wide or employee-specific announcements within the payroll and HR system, allowing users to share information, updates, or important reminders with their team + +![HR_Announcement_1](../../../static/img/usage/human-resource/hr-setup-images/Maintain-Announcement1.png) + +| Field Name | Properties | +|-------------|-------------| +| Title | The title or subject of the announcement. | +| Date From | The start date when the announcement becomes active. | +| Date To | The end date when the announcement expires or becomes inactive. | +| Category | The classification or type of announcement (e.g., General, System Update, Event). | +| Remark | Additional notes or comments related to the announcement. | + + + +## Print History Lisitng + +This provides a comprehensive record of all past history types for employees, and is able to furthur and filter, sort and group the employees witth the fields below + +![HR_print_history_listing_1](../../../static/img/usage/human-resource/hr-setup-images/PrintHistoryListing-1.png) + +This is how the report generated will look like + +![HR_print_history_listing_2](../../../static/img/usage/human-resource/hr-setup-images/PrintHistoryListing-2.png) \ No newline at end of file diff --git a/docs/usage/human-resource/human-resourrces-additional-functions.md b/docs/usage/human-resource/human-resourrces-additional-functions.md new file mode 100644 index 0000000..414c6de --- /dev/null +++ b/docs/usage/human-resource/human-resourrces-additional-functions.md @@ -0,0 +1,280 @@ +--- +sidebar_position: 2 +title: Guide +description: Guide +slug: /usage/human-resource/guide +tags: ["SQL Payroll", "HR", "Functions"] +--- + +## Bulk Email With Password + +:::note + +- Not applicable for Export Email Client or Export to PDF +- For Email Client, 10 records in one PDF, email to 1 recipient, system unable to generate password due to not sure which password should get + +::: + +### Prerequisites + +:::info +In order to use this, user’s computer must configure with window email first +::: + +### Setup + +1. Navigate to **Human Resource** > **Maintain Employee** + +2. Key in the PDF password and enter the email address + + ![maintain-employee](../../../static/img/usage/human-resource/hr-function-images/maintain-employee.png) + +3. Next, go to **Payroll** > **Print Payslip**. Choose the month End Payslip, Apply and Preview + +4. Click on the 🔽 beside the excel export, click on **Export to Email Client (Batch)** + + ![export-to-email-client-batch](../../../static/img/usage/human-resource/hr-function-images/export-to-email-client-batch.png) + + :::tip + For Testing purpose, you may activate the module at File > Customize Payroll Module and ticked **Batch Email** + ::: + + ![batch-email](../../../static/img/usage/human-resource/hr-function-images/batch-email.png) + + :::warning Error + If you haven't configure your window email, you will see an error message as below. Make sure yo have configure your window email before doing these steps. + ::: + + ![error](../../../static/img/usage/human-resource/hr-function-images/error.png) + +### Simple Steps To use IC as PDF Password + +1. Navigate to **Human Resource** > **Maintain Employee** + +2. Click on one employee record, hold the `Shift` key in the keyboard and click on the last record to highlight all + +3. Click on 🔽 button beside More, select Batch Edit + +4. From the columns, click on field Chooser and select **Name2**, **New IC** + +5. Save the structure, copy and paste the New IC value to Name2 column + +![5](../../../static/img/usage/human-resource/hr-function-images/5.png) + +![6](../../../static/img/usage/human-resource/hr-function-images/6.png) + +![7](../../../static/img/usage/human-resource/hr-function-images/7.png) + +![8](../../../static/img/usage/human-resource/hr-function-images/8.png) + + + +## Employee Login + +:::info +This guide explains how to configure and create an account for the employee in SQL Payroll which allow the employee to view their details +::: + +### Setup + +1. In SQL Payroll, go to **Human Resource** > **Maintain Employee** + +2. Click on **Change Password** + + ![change-password](../../../static/img/usage/human-resource/hr-function-images/change-password.png) + +3. Enter a new password for the employee + + ![enter-password](../../../static/img/usage/human-resource/hr-function-images/enter-password.png) + +4. Next, ask the employee to open SQL Payroll, login into it by using the **Employee Code** and **Password** configured previously. That's it! 🥳 + + ![login](../../../static/img/usage/human-resource/hr-function-images/login.png) + +5. Finally, here's an example of employee view + + ![employee-view](../../../static/img/usage/human-resource/hr-function-images/employee-view.png) + + + +## Print Letter + +:::info +This guide explains how to print Appointment, Confirmation, Increment letter +::: + +### Setup + +1. Navigate to the **Maintain Employee** panel + + ![navigate](../../../static/img/usage/human-resource/hr-function-images/navigate.png) + +2. Select the employee + + ![select-employee](../../../static/img/usage/human-resource/hr-function-images/select-employee.png) + +3. Click preview reports + + ![preview-report](../../../static/img/usage/human-resource/hr-function-images/preview-report.png) + +4. Select the report you want by double clicking it + + ![select-report](../../../static/img/usage/human-resource/hr-function-images/select-report.png) + +5. This is the example of the appointment letter + + ![letter-example](../../../static/img/usage/human-resource/hr-function-images/letter-example.png) + +#### Increment Letter + +:::note +For increment letter, make sure increment is set in **history** in order for the report to work +::: + +1. Navigate to **Human Resource** > **Maintain Employee** + + ![navigate-1](../../../static/img/usage/human-resource/hr-function-images/navigate-1.png) + +2. Alternatively, you can click on the **Maintain Employee** available in the homepage + + ![navigate-2](../../../static/img/usage/human-resource/hr-function-images/navigate-2.png) + +3. Go to the employee details, click on History from the tab view + + ![inc-letter-select-employee](../../../static/img/usage/human-resource/hr-function-images/inc-letter-select-employee.png) + +4. Click preview reports + + ![inc-letter-click-preview](../../../static/img/usage/human-resource/hr-function-images/inc-letter-click-preview.png) + +5. Select the report you want to print + + ![inc-letter-select-report](../../../static/img/usage/human-resource/hr-function-images/inc-letter-select-report.png) + +#### Increment letter setup in history + +![increment-letter-setup](../../../static/img/usage/human-resource/hr-function-images/increment-letter-setup.png) + + + +## Maintain Employee with MyKad Reader + +### Setup + +1. Link your Smart Card Reader to your computer + +2. Reader will turn red light when you success link to your computer + + ![reader](../../../static/img/usage/human-resource/hr-function-images/reader.png) + +3. Put MyKard into reader + +4. Reader will show blue light when success read your MyKad + + ![plug-in-mykad](../../../static/img/usage/human-resource/hr-function-images/plug-in-mykad.png) + +5. Open your SQL Payroll New Employee Profile > **Read MyKad** + + ![read-mykad](../../../static/img/usage/human-resource/hr-function-images/read-mykad.png) + +6. Select **Reader Devices** > **Click Read Card** + + ![read-card](../../../static/img/usage/human-resource/hr-function-images/read-card.png) + +7. Click **Read MyKad** + + ![read-mykad-physical](../../../static/img/usage/human-resource/hr-function-images/read-mykad-physical.png) + +8. Inside System will auto fill up MyKard Detail + + - **(NAME , ADDRESS , ID Number, D.O.B, GENDER)** + + ![result](../../../static/img/usage/human-resource/hr-function-images/result.png) + + + +## Recurring Zakat + +### Setup + +1. Go to **Maintain Employee**: + + ![maintain-employee](../../../static/img/usage/human-resource/hr-function-images/maintain-employee.png) + +2. Select the respective employee and go to Deduction + + ![deduction](../../../static/img/usage/human-resource/hr-function-images/deduction.png) + +3. Enter a deduction and tick Zakat check box. You will notice that the other contribution checkbox will be unticked + + ![check-zakat](../../../static/img/usage/human-resource/hr-function-images/check-zakat.png) + +4. Key in Rate and set the period of contribution in the Date From and Date To column. + + ![key-in-rate](../../../static/img/usage/human-resource/hr-function-images/key-in-rate.png) + +5. Save and process your month end. You will see the amount in your Gross Zakat + + ![result-1](../../../static/img/usage/human-resource/hr-function-images/result-1.png) + + ![result-2](../../../static/img/usage/human-resource/hr-function-images/result-2.png) + + + +## Loan + +:::note NOTE: +This is a **Paid Module** +::: + +For company which also provide a loan for their employee(s) that is expected to be paid back by deduct from the salary with interest. + +## Maintain Loan + +At here allow the user to setting up the loan for the Selected Employee... + +### Setup + +Assuming we had the following scenario: + +| Field Name | Properties | +|-----------------------------|-------------------| +| Employee Code | 0010 | +| Loan Amount | 50,000 | +| Loan Interest | 2,000 | +| Number of Repayment (Months)| 60 | +| First Repayment Date | 01 Mar 2013 | + +#### Loan Amount & Interest Amount + +1. Click **New** & Enter As Following. + +![HR_Maintain_Loan_step_1](../../../static/img/usage/human-resource/hr-function-images/MaintainLoan-Step1.jpg) + +2. Click **Schedule | Generate**... Button. + +![HR_Maintain_Loan_step_2](../../../static/img/usage/human-resource/hr-function-images/MaintainLoan-Step2.jpg) + +3. Click **Ok** button to confirm. +4. Click **Save**. + +#### Auto Repayment + +1. Go to process as normal at [New Payroll](/usage/payroll/general#create-payroll). +2. At the Selected Employee Paysheet Click **Loan**. + +![HR_Auto_Repayment_1](../../../static/img/usage/human-resource/hr-function-images/AutoRepayment-Step1.jpg) + +#### Advanced Repayments + +1. At **Transaction** Tab + +![HR_Advanced_Repayment_1](../../../static/img/usage/human-resource/hr-function-images/AdvancedRepayment-Step1.jpg) + + + +## Print Loan Repayment History + +This is to generate/print the Ledger/History of Loan given by company for the selected/All Employees Report... + +![HR_Loan_Repayment_History_1](../../../static/img/usage/human-resource/hr-function-images/LoanRepaymentHistory-Step1.jpg) \ No newline at end of file diff --git a/docs/usage/human-resource/maintain-employee.md b/docs/usage/human-resource/maintain-employee.md deleted file mode 100644 index 153dc1c..0000000 --- a/docs/usage/human-resource/maintain-employee.md +++ /dev/null @@ -1,119 +0,0 @@ ---- -title: Maintain Employee -description: A guide to maintain employee for SQL Payroll -slug: /usage/human-resource/maintain-employee -tags: ["SQL Payroll", "Employee", "Maintain Employee"] ---- - -:::tip -Whenever a new staff/worker/person/crew enter the company, Maintain Employee is the place where user needs to key in the details -::: - -## Setup - -1. Navigate yourself to the Maintain Employee panel - - ![navigate-1](../../../static/img/usage/human-resource/maintain-employee/navigate-1.png) - - \*OR Click on the home page "Maintain Employee"\*\* - - ![navigate-2](../../../static/img/usage/human-resource/maintain-employee/navigate-2.png) - -2. Click new to create new employee - - ![new](../../../static/img/usage/human-resource/maintain-employee/new.png) - -3. Key in the employee’s personal details - - ![key-in-details](../../../static/img/usage/human-resource/maintain-employee/key-in-details.png) - - | Symbol | Description | - | ------ | ---------------------------------------------------------------------------------------------- | - | 3.(a) | A unique code for the employee, it also act as a username for the employee to login. | - | 3.(b) | The name of the position the employee will hold. (eg: chairman, secretary, auditor) | - | 3.(c) | To be untick when an employee resigns. (if resign date is not set in payroll info.) | - | 3.(d) | The name of the employee. | - | 3.(e) | The gender/sex of the employee. | - | 3.(f) | The date of birth of the employee (recommended to set so that can capture the age) | - | 3.(g) | The housing address of the employee. | - | 3.(h) | The house number of the employee. | - | 3.(i) | The handphone number of the employee. | - | 3.(j) | The email of the employee. | - | 3.(k) | The Identification Card number of the employee. | - | 3.(l) | The OLD Identification Card number of the employee. (only some very senior people will have) | - | 3.(m) | The password for the employee to login his account. (need to set/change once in order to work) | - | 3.(n) | The passport number of the employee (usually only recorded for foreign worker) | - | 3.(o) | The immigration number of the employee | - -4. Key in the employee’s grouping details - - ![key-in-grouping](../../../static/img/usage/human-resource/maintain-employee/key-in-grouping.png) - - | Symbol | Description | - | ------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | - | 4.(a) | Key in the branch/department/category of the employee in the company. (if the company doesn’t have so much grouping, just remain everything as default “----“) | - | 4.(b) | Select the type of calendar for the employee. | - | 4.(c) | Select the leave group for the employee. (please visit Maintain Leave guide for more info) | - - :::tip - - The Purpose of Grouping setting is : - - - For Reference purpose. - - - For Report representation method by Group. - - ::: - - 1. To Create new Branch / HRGroup / Department/ Category / Country/ Race - - ![create-new-branch-1](../../../static/img/usage/human-resource/maintain-employee/create-new-branch-1.png) - ![create-new-branch-2](../../../static/img/usage/human-resource/maintain-employee/create-new-branch-2.png) - -5. Key in the employee’s family details - - ![key-in-family-details](../../../static/img/usage/human-resource/maintain-employee/key-in-family-details.png) - -6. Key in the employee’s payroll information - - ![key-in-payroll-1](../../../static/img/usage/human-resource/maintain-employee/key-in-payroll-1.png) - - ![key-in-payroll-2](../../../static/img/usage/human-resource/maintain-employee/key-in-payroll-2.png) - -7. Key in the employee’s monthly fix allowances/deductions - - ![key-in-allowance-deduction](../../../static/img/usage/human-resource/maintain-employee/key-in-allowance-deduction.png) - - - Create a new allowance/deduction - - ![create-new-allowance-deduction](../../../static/img/usage/human-resource/maintain-employee/create-new-allowance-deduction.png) - -8. Add notes/remark and photo for the employee - - ![add-note](../../../static/img/usage/human-resource/maintain-employee/add-note.png) - -9. History report of the employee - - ![history-report](../../../static/img/usage/human-resource/maintain-employee/history-report.png) - - :::tip - You can manually update the history by clicking on ➕ button or click on ➖ button to remove unncessary history records - ::: - -10. Add the employee’s children information (will affect tax category) - - ![add-children-info](../../../static/img/usage/human-resource/maintain-employee/add-children-info.png) - -11. Add any attachment related to the employee - - :::tip - For Example: resume, curriculum vitae, contract agreement, receipt claims etc - ::: - - :::info - To avoid System with speed issue due on database size huge, system will only create shortcut link for the "attach" item instead of save it in the system. - - If the file been removed from locally, then the shortcut link will not function anymore. - ::: - - ![add-attachment](../../../static/img/usage/human-resource/maintain-employee/add-attachment.png) diff --git a/docs/usage/human-resource/print-letter.md b/docs/usage/human-resource/print-letter.md deleted file mode 100644 index 1f22807..0000000 --- a/docs/usage/human-resource/print-letter.md +++ /dev/null @@ -1,64 +0,0 @@ ---- -title: Print Letter -description: A guide to print Appointment/Confirmation/Increment letter -slug: /usage/human-resource/print-letter -tags: ["SQL Payroll", "Letter", "Appointment Letter", "Comfirmation Letter", "Increment Letter"] ---- - -## Introduction - -:::info -This guide explains how to print Appointment, Confirmation, Increment letter -::: - -## Setup - -1. Navigate to the **Maintain Employee** panel - - ![navigate](../../../static/img/usage/human-resource/print-letter/navigate.png) - -2. Select the employee - - ![select-employee](../../../static/img/usage/human-resource/print-letter/select-employee.png) - -3. Click preview reports - - ![preview-report](../../../static/img/usage/human-resource/print-letter/preview-report.png) - -4. Select the report you want by double clicking it - - ![select-report](../../../static/img/usage/human-resource/print-letter/select-report.png) - -5. This is the example of the appointment letter - - ![letter-example](../../../static/img/usage/human-resource/print-letter/letter-example.png) - -### Increment Letter - -:::note -For increment letter, make sure increment is set in **history** in order for the report to work -::: - -1. Navigate to **Human Resource** > **Maintain Employee** - - ![navigate-1](../../../static/img/usage/human-resource/print-letter/navigate-1.png) - -2. Alternatively, you can click on the **Maintain Employee** available in the homepage - - ![navigate-2](../../../static/img/usage/human-resource/print-letter/navigate-2.png) - -3. Go to the employee details, click on History from the tab view - - ![inc-letter-select-employee](../../../static/img/usage/human-resource/print-letter/inc-letter-select-employee.png) - -4. Click preview reports - - ![inc-letter-click-preview](../../../static/img/usage/human-resource/print-letter/inc-letter-click-preview.png) - -5. Select the report you want to print - - ![inc-letter-select-report](../../../static/img/usage/human-resource/print-letter/inc-letter-select-report.png) - -#### Increment letter setup in history - -![increment-letter-setup](../../../static/img/usage/human-resource/print-letter/increment-letter-setup.png) diff --git a/docs/usage/human-resource/read-mykad.md b/docs/usage/human-resource/read-mykad.md deleted file mode 100644 index 49f11d8..0000000 --- a/docs/usage/human-resource/read-mykad.md +++ /dev/null @@ -1,38 +0,0 @@ ---- -title: Maintain Employee with MyKad Reader -description: A guide to maintain employee using MyKad reader -slug: /usage/human-resource/read-mykad -tags: ["SQL Payroll", "Employee", "Maintain Employee", "MyKad"] ---- - -## Setup - -1. Link your Smart Card Reader to your computer - -2. Reader will turn red light when you success link to your computer - - ![reader](../../../static/img/usage/human-resource/read-mykad/reader.png) - -3. Put MyKard into reader - -4. Reader will show blue light when success read your MyKad - - ![plug-in-mykad](../../../static/img/usage/human-resource/read-mykad/plug-in-mykad.png) - -5. Open your SQL Payroll New Employee Profile > **Read MyKad** - - ![read-mykad](../../../static/img/usage/human-resource/read-mykad/read-mykad.png) - -6. Select **Reader Devices** > **Click Read Card** - - ![read-card](../../../static/img/usage/human-resource/read-mykad/read-card.png) - -7. Click **Read MyKad** - - ![read-mykad-physical](../../../static/img/usage/human-resource/read-mykad/read-mykad-physical.png) - -8. Inside System will auto fill up MyKard Detail - - - **(NAME , ADDRESS , ID Number, D.O.B, GENDER)** - - ![result](../../../static/img/usage/human-resource/read-mykad/result.png) diff --git a/docs/usage/human-resource/recurring-zakat.md b/docs/usage/human-resource/recurring-zakat.md deleted file mode 100644 index 8c42277..0000000 --- a/docs/usage/human-resource/recurring-zakat.md +++ /dev/null @@ -1,30 +0,0 @@ ---- -title: Recurring Zakat -description: A guide to process recurring zakat in Maintain Employee -slug: /usage/human-resource/recurring-zakat -tags: ["SQL Payroll", "Recurring Zakat", "Zakat", "Maintain Employee"] ---- - -## Setup - -1. Go to **Maintain Employee**: - - ![maintain-employee](../../../static/img/usage/human-resource/recurring-zakat/maintain-employee.png) - -2. Select the respective employee and go to Deduction - - ![deduction](../../../static/img/usage/human-resource/recurring-zakat/deduction.png) - -3. Enter a deduction and tick Zakat check box. You will notice that the other contribution checkbox will be unticked - - ![check-zakat](../../../static/img/usage/human-resource/recurring-zakat/check-zakat.png) - -4. Key in Rate and set the period of contribution in the Date From and Date To column. - - ![key-in-rate](../../../static/img/usage/human-resource/recurring-zakat/key-in-rate.png) - -5. Save and process your month end. You will see the amount in your Gross Zakat - - ![result-1](../../../static/img/usage/human-resource/recurring-zakat/result-1.png) - - ![result-2](../../../static/img/usage/human-resource/recurring-zakat/result-2.png) diff --git a/docs/usage/leave/_category_.json b/docs/usage/leave/_category_.json new file mode 100644 index 0000000..1b2412d --- /dev/null +++ b/docs/usage/leave/_category_.json @@ -0,0 +1,9 @@ +{ + "label": "Leave", + "position": 4, + "link": { + "type": "generated-index", + "description": "A guide of leave for SQL Payroll", + "slug": "/usage/leave" + } +} \ No newline at end of file diff --git a/docs/usage/leave/faq.md b/docs/usage/leave/faq.md new file mode 100644 index 0000000..3179ff9 --- /dev/null +++ b/docs/usage/leave/faq.md @@ -0,0 +1,24 @@ +--- +title: FAQ +description: A guide about approve same leave request +slug: /usage/leave/faq +tags: ["SQL Payroll", "FAQ", "Leave"] +--- +## Both managers have approved the same leave submitted from same employee. How many leave will be taken? + +- **Example** + +Let said + +1. Manager A (approve Acc dept) +2. Manager B (approve Acc Dept) +3. Staff C (under Acc Dept) has submitted the e-leave. + +If Manager A approve the leave while Manager B also approve the same leave for staff C. + +**How many actual leave will be deducted?** + + +- **Answer** + +1 day leave will be deducted. \ No newline at end of file diff --git a/docs/usage/leave.md b/docs/usage/leave/guide.md similarity index 59% rename from docs/usage/leave.md rename to docs/usage/leave/guide.md index 127af8b..49cfd17 100644 --- a/docs/usage/leave.md +++ b/docs/usage/leave/guide.md @@ -1,7 +1,8 @@ --- -title: Leave +sidebar_position: 4 +title: Guide description: A guide of leave for SQL Payroll -slug: /usage/leave +slug: /usage/leave/guide tags: [ "SQL Payroll", @@ -40,11 +41,11 @@ Before assigning leave group to your employee, you need to make sure that you ha 1. Firstly, point to **Leave** tab and select **Maintain Leave Type** - ![maintain-leave-type](../../static/img/usage/leave-module/maintain-leave-type.png) + ![maintain-leave-type](../../../static/img/usage/leave-module/maintain-leave-type.png) 2. Click on **New** button on the upper right corner to create new leave type - ![maintain-leave-type-new](../../static/img/usage/leave-module/maintain-leave-type-new.png) + ![maintain-leave-type-new](../../../static/img/usage/leave-module/maintain-leave-type-new.png) 3. Assign code for your leave type. @@ -55,11 +56,11 @@ Before assigning leave group to your employee, you need to make sure that you ha - Click "Save" ::: - ![maintain-leave-type-save](../../static/img/usage/leave-module/maintain-leave-type-save.png) + ![maintain-leave-type-save](../../../static/img/usage/leave-module/maintain-leave-type-save.png) 4. You have your new leave type created. - ![maintain-leave-type-result](../../static/img/usage/leave-module/maintain-leave-type-result.png) + ![maintain-leave-type-result](../../../static/img/usage/leave-module/maintain-leave-type-result.png) ## Maintain Leave Group @@ -72,11 +73,11 @@ Before assigning leave group to your employee, you need to make sure that you ha 1. Firstly, point to **Leave** tab and select **Maintain Leave Group** - ![maintain-leave-group](../../static/img/usage/leave-module/maintain-leave-group.png) + ![maintain-leave-group](../../../static/img/usage/leave-module/maintain-leave-group.png) 2. Click on **New** button on the upper right corner to create new leave group. - ![maintain-leave-group-new](../../static/img/usage/leave-module/maintain-leave-group-new.png) + ![maintain-leave-group-new](../../../static/img/usage/leave-module/maintain-leave-group-new.png) 3. Assign code for your new leave group. @@ -86,7 +87,7 @@ Before assigning leave group to your employee, you need to make sure that you ha Click on the ➕ button to select the entitled leave type for this particular leave group. ::: - ![maintain-leave-group-code](../../static/img/usage/leave-module/maintain-leave-group-code.png) + ![maintain-leave-group-code](../../../static/img/usage/leave-module/maintain-leave-group-code.png) 4. Taking **Annual Leave (AL)** as an example. @@ -98,17 +99,17 @@ Before assigning leave group to your employee, you need to make sure that you ha | 3 to 4 | 12 | | >4 | 16 | - ![maintain-leave-default-al](../../static/img/usage/leave-module/maintain-leave-default-al.png) + ![maintain-leave-default-al](../../../static/img/usage/leave-module/maintain-leave-default-al.png) If your company’s annual leave policy follows this default setting, you can point to the **Entitle** tab and select **Annual Leave Entitlement Policy**. With that, the calculation will follow the default setting. - ![maintain-leave-group-policy](../../static/img/usage/leave-module/maintain-leave-group-policy.png) + ![maintain-leave-group-policy](../../../static/img/usage/leave-module/maintain-leave-group-policy.png) Click **Save**. 5. If your company does not follow the default annual leave setting, you can always customise your own calculation by clicking on **Edit**, and then the 3 dots beside the **entitle** column - ![maintain-leave-group-entitle](../../static/img/usage/leave-module/maintain-leave-group-entitle.png) + ![maintain-leave-group-entitle](../../../static/img/usage/leave-module/maintain-leave-group-entitle.png) 6. For example, your company complies to the calculation as below. @@ -126,23 +127,46 @@ Before assigning leave group to your employee, you need to make sure that you ha | 3 | 5 | 12 | | 1 | 99 | 18 | - ![maintain-leave-group-entitilement-new](../../static/img/usage/leave-module/maintain-leave-group-entitilement-new.png) + ![maintain-leave-group-entitilement-new](../../../static/img/usage/leave-module/maintain-leave-group-entitilement-new.png) 7. Click **OK** and you are done 🥳 +## Maintain Public Holiday + +**Step 1:** Leave | Maintain Public Holiday Calendar… | Select a Public Holiday Calendar / Create New + + ![maintain-public-holiday1](../../../static/img/integration/hrms/e-tms/maintain-public-holiday1.png) + +**Step 2: Set public holidays** +User may import default Malaysia public holiday calendar or set manually + +Option 1: Global Icon | Select a State | OK + + ![maintain-public-holiday2](../../../static/img/integration/hrms/e-tms/maintain-public-holiday2.png) + +:::info +User may check or uncheck the dates +::: + +Option 2: Click on ***'P' button*** | Select date + + ![maintain-public-holiday3](../../../static/img/integration/hrms/e-tms/maintain-public-holiday3.png) + +**Step 3:** Save + ## Employee Leave Group Assignment 1. Firstly, point to **Human Resource** tab and select **Maintain Employee** - ![employee-leave-group](../../static/img/usage/leave-module/employee-leave-group.png) + ![employee-leave-group](../../../static/img/usage/leave-module/employee-leave-group.png) 2. Select relevant employee. eg: Nicole. Click **Edit** - ![employee-leave-group-edit](../../static/img/usage/leave-module/employee-leave-group-edit.png) + ![employee-leave-group-edit](../../../static/img/usage/leave-module/employee-leave-group-edit.png) 3. Click on **Grouping** tab, and you will see **Leave Group** at the last panel. - ![employee-leave-group-grouping](../../static/img/usage/leave-module/employee-leave-group-grouping.png) + ![employee-leave-group-grouping](../../../static/img/usage/leave-module/employee-leave-group-grouping.png) 4. Assign relevant leave group. @@ -151,8 +175,8 @@ Before assigning leave group to your employee, you need to make sure that you ha Click **Save** afterwards ::: - ![employee-leave-group-assign](../../static/img/usage/leave-module/employee-leave-group-assign.png) - ![employee-leave-group-save](../../static/img/usage/leave-module/employee-leave-group-save.png) + ![employee-leave-group-assign](../../../static/img/usage/leave-module/employee-leave-group-assign.png) + ![employee-leave-group-save](../../../static/img/usage/leave-module/employee-leave-group-save.png) ## Leave Application @@ -175,28 +199,28 @@ Before assigning leave group to your employee, you need to make sure that you ha 1. First, point to **Leave** and click on **Leave Application** - ![leave-application](../../static/img/usage/leave-module/leave-application.png) + ![leave-application](../../../static/img/usage/leave-module/leave-application.png) 2. Select the year. eg: Year 2015 - ![leave-application-year](../../static/img/usage/leave-module/leave-application-year.png) + ![leave-application-year](../../../static/img/usage/leave-module/leave-application-year.png) 3. Point to the name of employee and click into it. eg: Lee Chong Wai - ![leave-application-employee](../../static/img/usage/leave-module/leave-application-employee.png) + ![leave-application-employee](../../../static/img/usage/leave-module/leave-application-employee.png) 4. Click on the ➕ button. A row will appear in the display box where you can select the date, type of leave and number of day as how your employee applied. Click “Save once the application is done. - ![leave-application-date](../../static/img/usage/leave-module/leave-application-date.png) - ![leave-application-save](../../static/img/usage/leave-module/leave-application-save.png) + ![leave-application-date](../../../static/img/usage/leave-module/leave-application-date.png) + ![leave-application-save](../../../static/img/usage/leave-module/leave-application-save.png) 5. If your employee applies for half day leave or leave calculated in hours, call out **Day As Time** column. 1 working day has 8 working hours. - ![leave-application-halfday](../../static/img/usage/leave-module/leave-application-halfday.png) + ![leave-application-halfday](../../../static/img/usage/leave-module/leave-application-halfday.png) 6. Select the duration of the leave. eg: 3 hours. Then system will automatically calculate the number of day as 0.38 day. - ![leave-application-hours](../../static/img/usage/leave-module/leave-application-hours.png) + ![leave-application-hours](../../../static/img/usage/leave-module/leave-application-hours.png) ## Leave Entitlement Processor @@ -206,19 +230,19 @@ Before assigning leave group to your employee, you need to make sure that you ha 1. Leave entitlement process can be done once a year. First, point to **Leave** and click on **Leave Entitlement Processor**. - ![leave-entitlement-processor](../../static/img/usage/leave-module/leave-entitlement-processor.png) + ![leave-entitlement-processor](../../../static/img/usage/leave-module/leave-entitlement-processor.png) 2. Select the Transaction Posting Year. eg: 2015. And click “Process” - ![leave-entitlement-processor-process](../../static/img/usage/leave-module/leave-entitlement-processor-process.png) + ![leave-entitlement-processor-process](../../../static/img/usage/leave-module/leave-entitlement-processor-process.png) 3. You will see a table clearly stating the number of leave each and every employee entitled in the year 2015. - ![leave-entitlement-processor-details](../../static/img/usage/leave-module/leave-entitlement-processor-details.png) + ![leave-entitlement-processor-details](../../../static/img/usage/leave-module/leave-entitlement-processor-details.png) 4. System allows you to edit the number of day. Click **Save** when the setting is done. - ![leave-entitlement-processor-save](../../static/img/usage/leave-module/leave-entitlement-processor-save.png) + ![leave-entitlement-processor-save](../../../static/img/usage/leave-module/leave-entitlement-processor-save.png) ## Leave Report @@ -229,27 +253,43 @@ Before assigning leave group to your employee, you need to make sure that you ha | Leave Balance Report | Analyse the number of days taken for annual leaves, medical leaves,etc | | Yearly Leave Report | Generate 12 months total leaves taken for a leave type like annual leave, unpaid leave, medical leave, etc | +### Print Leave Application Report + +![print-leave-application-report](../../../static/img/usage/leave-module/print-leave-application-report.png) + +### Print Attendance Report + +![print-attendance-report](../../../static/img/usage/leave-module/print-attendance-report.png) + +### Print Leave Balance Report + +![print-leave-balance-report](../../../static/img/usage/leave-module/print-leave-balance-report.png) + +### Print Yearly Leave Report + +![print-yearly-leave-report](../../../static/img/usage/leave-module/print-yearly-leave-report.png) + ## Brought Forward Leave 1. Make sure in Leave Type brought forward (BF) is ticked - ![maintain-leave-type](../../static/img/usage/leave-module/maintain-leave-type.png) + ![maintain-leave-type](../../../static/img/usage/leave-module/maintain-leave-type.png) - ![enable-bf-leave-2](../../static/img/usage/leave-module/enable-bf-leave-2.png) + ![enable-bf-leave-2](../../../static/img/usage/leave-module/enable-bf-leave-2.png) 2. Make sure there is calculation for amount of leave brought forward (BF) - ![maintain-leave-group](../../static/img/usage/leave-module/maintain-leave-group.png) + ![maintain-leave-group](../../../static/img/usage/leave-module/maintain-leave-group.png) - ![bf-leave-calculation-2](../../static/img/usage/leave-module/bf-leave-calculation-2.png) + ![bf-leave-calculation-2](../../../static/img/usage/leave-module/bf-leave-calculation-2.png) 3. Key in leave entitlement (refer to [Leave Entitlement](#leave-entitlement-processor)) - ![leave-entitlement-processor](../../static/img/usage/leave-module/leave-entitlement-processor.png) + ![leave-entitlement-processor](../../../static/img/usage/leave-module/leave-entitlement-processor.png) - ![bf-leave-entitlement-process-2](../../static/img/usage/leave-module/bf-leave-entitlement-process-2.png) + ![bf-leave-entitlement-process-2](../../../static/img/usage/leave-module/bf-leave-entitlement-process-2.png) - ![bf-leave-entitlement-process-3](../../static/img/usage/leave-module/bf-leave-entitlement-process-3.png) + ![bf-leave-entitlement-process-3](../../../static/img/usage/leave-module/bf-leave-entitlement-process-3.png) 4. Apply leave for employees.(refer to [Leave Application](#leave-application)) @@ -257,33 +297,33 @@ Before assigning leave group to your employee, you need to make sure that you ha Leave/Leave Application/Double click Current Leave ::: - ![bf-apply-leave-1](../../static/img/usage/leave-module/bf-apply-leave-1.png) + ![bf-apply-leave-1](../../../static/img/usage/leave-module/bf-apply-leave-1.png) - ![bf-apply-leave-2](../../static/img/usage/leave-module/bf-apply-leave-2.png) + ![bf-apply-leave-2](../../../static/img/usage/leave-module/bf-apply-leave-2.png) - ![bf-apply-leave-3](../../static/img/usage/leave-module/bf-apply-leave-3.png) + ![bf-apply-leave-3](../../../static/img/usage/leave-module/bf-apply-leave-3.png) 5. Preview Leave Balance Report (Leave/Print Leave Balance Report) - ![bf-preview-report-1](../../static/img/usage/leave-module/bf-preview-report-1.png) + ![bf-preview-report-1](../../../static/img/usage/leave-module/bf-preview-report-1.png) 6. Open Leave Entitlement for 2016 (Repeat step 2) - ![bf-preview-report-2](../../static/img/usage/leave-module/bf-preview-report-2.png) + ![bf-preview-report-2](../../../static/img/usage/leave-module/bf-preview-report-2.png) ## Hourly Leave Application 1. Go to Leave > Leave Application > New Leave Application - ![hour-leave-new](../../static/img/usage/leave-module/hour-leave-new.png) + ![hour-leave-new](../../../static/img/usage/leave-module/hour-leave-new.png) 2. Select the Employee's name, then press Apply Leave - ![hour-leave-select-employee](../../static/img/usage/leave-module/hour-leave-select-employee.png) + ![hour-leave-select-employee](../../../static/img/usage/leave-module/hour-leave-select-employee.png) 3. Insert the “Day As Time” column - ![hour-leave-day-as-time](../../static/img/usage/leave-module/hour-leave-day-as-time.png) + ![hour-leave-day-as-time](../../../static/img/usage/leave-module/hour-leave-day-as-time.png) 4. Select the type of leave and the date of leave @@ -293,7 +333,7 @@ Before assigning leave group to your employee, you need to make sure that you ha - Day as time = 8.00 ( HH:MM , 8 hours in 1 day) ::: - ![hour-leave-select-type](../../static/img/usage/leave-module/hour-leave-select-type.png) + ![hour-leave-select-type](../../../static/img/usage/leave-module/hour-leave-select-type.png) 5. Apply Hourly Leave @@ -301,12 +341,12 @@ Before assigning leave group to your employee, you need to make sure that you ha - You will see that the Day column will automatically change to 0.25 - ![hour-leave-apply](../../static/img/usage/leave-module/hour-leave-apply.png) + ![hour-leave-apply](../../../static/img/usage/leave-module/hour-leave-apply.png) 6. Save - Press Save icon once you have keyed in the days/hours. Save is completed once the iconchanged to a grey colour - ![hour-leave-save](../../static/img/usage/leave-module/hour-leave-save.png) + ![hour-leave-save](../../../static/img/usage/leave-module/hour-leave-save.png) 7. This method can be used for all leaves diff --git a/docs/usage/payroll/_category_.json b/docs/usage/payroll/_category_.json index fb15275..0bc04a9 100644 --- a/docs/usage/payroll/_category_.json +++ b/docs/usage/payroll/_category_.json @@ -1,6 +1,6 @@ { "label": "Payroll", - "position": 2, + "position": 3, "link": { "type": "generated-index", "description": "Covers all payroll user guide of SQL Payroll", diff --git a/docs/usage/payroll/advanced-paid.md b/docs/usage/payroll/advanced-paid.md deleted file mode 100644 index 0a8541c..0000000 --- a/docs/usage/payroll/advanced-paid.md +++ /dev/null @@ -1,48 +0,0 @@ ---- -title: Advance Paid -description: A guide to do advanced paid -slug: /usage/payroll/advanced-paid -tags: ["SQL Payroll", "Advance Paid"] ---- - -:::info -Employee request advance salary before month end -::: - -## Setup - -1. Navigate to **Payroll > Open Pending Payroll** - -2. **Select Advance Paid** - - ![select-advance-paid](../../../static/img/usage/payroll/advanced-paid/select-advance-paid.png) - -3. **Key in accordingly** - - >***Trans date*** = date apply advance paid - > - >***Employee*** = which employee - > - >***Amount*** = amount advance paid - - ![fill-in](../../../static/img/usage/payroll/advanced-paid/fill-in.png) - -4. Go to Payroll > New Payroll - -5. Choose Ad Hoc - -6. Set the date when your employee take advance paid - -7. Under Process > select Monthly Fixed Allowance / Pending Payroll (will come out the dialog box as pic attached) - -8. Tick "Advanced Paid" - - ![config](../../../static/img/usage/payroll/advanced-paid/config.png) - -9. Process - - ![process](../../../static/img/usage/payroll/advanced-paid/process.png) - -10. Process Month end Payroll as usual, you will found there is advance deduct at the month end. - - ![result](../../../static/img/usage/payroll/advanced-paid/result.png) diff --git a/docs/usage/payroll/bonus.md b/docs/usage/payroll/bonus.md deleted file mode 100644 index 08dbf63..0000000 --- a/docs/usage/payroll/bonus.md +++ /dev/null @@ -1,45 +0,0 @@ ---- -title: Bonus -description: A guide to process bonus in SQL Payroll -slug: /usage/payroll/bonus -tags: ["SQL Payroll", "Bonus"] ---- - -## Setup - -1. Navigate to **Payroll** > **Open Pending Payroll** - - ![navigate](../../../static/img/usage/payroll/bonus/navigate.png) - -2. Click on Bonus - - ![click-bonus](../../../static/img/usage/payroll/bonus/click-bonus.png) - -3. Next, adjust the bonus of your employee - - ![adjust-employee](../../../static/img/usage/payroll/bonus/adjust-employee.png) - - 1. Click “Add” - 2. Select your employee - 3. Key in amount - 4. Save - -4. Go to **Payroll** > **New Payroll** and click on **Ad Hoc** - - ![adhoc](../../../static/img/usage/payroll/bonus/adhoc.png) - -5. Tick **EPF** if you want to deduct **EPF**, Tick **PCB** if you want to deduct **PCB** - - ![epf-pcb](../../../static/img/usage/payroll/bonus/epf-pcb.png) - -6. Tick Bonus / Allowance (To input your amount) - - ![tick-bonus](../../../static/img/usage/payroll/bonus/tick-bonus.png) - -7. Change the Description (Optional) and tick the employee you rewarded with bonus - - ![change-desc](../../../static/img/usage/payroll/bonus/change-desc.png) - -8. Complete and check the payslip - - ![result](../../../static/img/usage/payroll/bonus/result.png) diff --git a/docs/usage/payroll/comparison-previous-month.md b/docs/usage/payroll/comparison-previous-month.md deleted file mode 100644 index cd43739..0000000 --- a/docs/usage/payroll/comparison-previous-month.md +++ /dev/null @@ -1,36 +0,0 @@ ---- -title: Compare the Previous Month Payroll Of Employees -description: A guide to compare the employees' past months payrolls -slug: /usage/payroll/comparison-previous-month -tags: ["SQL Payroll", "Comparison", "Previous Month"] ---- - -## Setup - -If you want to compare your employee past months payrolls you can use out Yearly Individual Report. - -1. Go to **Payroll** > **Print Yearly Individual Report**. - - ![navigate](../../../static/img/usage/payroll/comparison-previous-month/navigate.png) - -2. Set which month you want to compare. If you want to compare August 2021 with July 2021, set the Month as 8 and Year as 2021. - -3. Press Apply button. - - ![apply](../../../static/img/usage/payroll/comparison-previous-month/apply.png) - -4. You will see the yearly earning for each employee. Click on the employee’s name to see their breakdown. - - ![employee-details](../../../static/img/usage/payroll/comparison-previous-month/employee-details.png) - -5. Press the small + icon to expand the row and see the details for allowances and overtimes - - ![expand](../../../static/img/usage/payroll/comparison-previous-month/expand.png) - -6. Press the preview icon to generate a comparison report. - - ![print-preview](../../../static/img/usage/payroll/comparison-previous-month/print-preview.png) - -7. The report will compare in 2 months (Aug 2021 vs Jul 2021). - - ![report](../../../static/img/usage/payroll/comparison-previous-month/report.png) diff --git a/docs/usage/payroll/cp38.md b/docs/usage/payroll/cp38.md deleted file mode 100644 index a7ccf7e..0000000 --- a/docs/usage/payroll/cp38.md +++ /dev/null @@ -1,33 +0,0 @@ ---- -title: CP38 -description: A guide to process CP38 -slug: /usage/payroll/cp38 -tags: ["SQL Payroll", "CP38"] ---- - -## Introduction - -- CP38 is a **instruction** to Deduct Salary which **issued by LHDN**. This CP38 instruction requires that the employer **make additional deductions in monthly installments** from the salary of the taxpayer (other than a Monthly Tax Deduction) towards settlement of taxpayer’s income tax arrears. -- The Salary Deduction Order (CP38) for tax payment in instalments aims to ease the burden **of the taxpayer** who should be paying the tax arrears in one lump sum under the Income Tax Act 1967. - -## Insert CP38 - -1. **Open Pending Payroll** and choose **CP38** - - ![select-cp38](../../../static/img/usage/payroll/cp38/select-cp38.png) - -2. Press **GENERATE** on the top left of the window. - - ![generate](../../../static/img/usage/payroll/cp38/generate.png) - -3. Key in the Amount you receive from LHDN Letter, for example this employee ( 00001- Lucious ) had to pay CP38 on **June ( RM450 )** and July **( RM550 )**. Press **GENERATE**. - - ![fill-in-details](../../../static/img/usage/payroll/cp38/fill-in-details.png) - -4. Press **SAVE** - - ![save](../../../static/img/usage/payroll/cp38/save.png) - -5. This **pending** task only needs to be completed **once**. It will impact **both the June and July month-end processes**. The following pictures below will illustrate the end result : - - ![result](../../../static/img/usage/payroll/cp38/result.png) diff --git a/docs/usage/payroll/faq.md b/docs/usage/payroll/faq.md new file mode 100644 index 0000000..8aeb31c --- /dev/null +++ b/docs/usage/payroll/faq.md @@ -0,0 +1,216 @@ +--- +sidebar_position: 3 +title: FAQ +description: A faq for payroll +slug: /usage/payroll/faq +tags: ["SQL Payroll", "FAQ"] +--- + +## How to solve when missing code and employee name columns in the month payroll screen? + +**Issue:** + +![issue-1](../../../static/img/usage/payroll/faq/issue_1.png) + +**Solution:** + +![solution-1](../../../static/img/usage/payroll/faq/solution_1.png) + +## Error message dataset "CalendarInfo" does not exist when batch email using customize payslip format + +**Issue:** + +Error message prompt when try to **Export to E-Mail Client (Batch)** using **customize payslip format**. + +![issue-2](../../../static/img/usage/payroll/faq/issue_2.png) + +**Solution:** + +At payslip report designer, + + Change the [\] to [\] + + ![solution-2a](../../../static/img/usage/payroll/faq/solution_2a.png) + +After correction, it will be look like the screenshot below. + + ![solution-2b](../../../static/img/usage/payroll/faq/solution_2b.png) + +## Where to define the company leave policy? + +**Solution:** + +1. Preset the leave policy at **Leave | Maintain Leave Group...** + +## Why date format not display correctly in some payroll report? + +**Issue:** + +What is the faster solution to show the date format correctly? + +![issue-4](../../../static/img/usage/payroll/faq/issue_4.png) + +Government Reports | Print Income Tax PCB 2 (II) + +**Solution:** + +1. Go to Control Panel. +2. Search for Region in Control Panel. 3. Click on Additional Settings... + +![solution-4a](../../../static/img/usage/payroll/faq/solution_4a.png) + +4. Click to Date tab. +5. Change the Short Date Format to DD/MM/YYYY + +![solution-4b](../../../static/img/usage/payroll/faq/solution_4b.png) + +6. Date format has display correctly now. + +![solution-4c](../../../static/img/usage/payroll/faq/solution_4c.png) + +## How to compare the Previous Month Payroll Of Employees? + +**Issue:** + +What is the approach to compare the **previous month payroll of employees**? + +**Solution:** + +If you want to compare your employee past months payrolls you can use out Yearly Individual Report. + +1. Go to **Payroll** > **Print Yearly Individual Report**. + + ![navigate](../../../static/img/usage/payroll/comparison-previous-month/navigate.png) + +2. Set which month you want to compare. If you want to compare August 2021 with July 2021, set the Month as 8 and Year as 2021. + +3. Press Apply button. + + ![apply](../../../static/img/usage/payroll/comparison-previous-month/apply.png) + +4. You will see the yearly earning for each employee. Click on the employee’s name to see their breakdown. + + ![employee-details](../../../static/img/usage/payroll/comparison-previous-month/employee-details.png) + +5. Press the small + icon to expand the row and see the details for allowances and overtimes + + ![expand](../../../static/img/usage/payroll/comparison-previous-month/expand.png) + +6. Press the preview icon to generate a comparison report. + + ![print-preview](../../../static/img/usage/payroll/comparison-previous-month/print-preview.png) + +7. The report will compare in 2 months (Aug 2021 vs Jul 2021). + + ![report](../../../static/img/usage/payroll/comparison-previous-month/report.png) + +## How to Enter Opening Balance in SQL Payroll? + +**Issue:** + +How to key in **Opening Balance** for employees in SQL Payroll? + +**Solution:** + +Maintain employee’s opening balance is done when the respective employee enter the company in a month **later than January**. + +The previous PCB amount is **needed to key in so that the system can correctly calculate** the PCB amount that’s needed to pay every month. + +1. Navigate to **Payroll** > **Open Payroll** + + ![navigate](../../../static/img/usage/payroll/opening-balance/navigate.png) + +2. Double click on the payroll year to open it + + ![open](../../../static/img/usage/payroll/opening-balance/open.png) + +3. Double click on the transaction section under "**Opening**" + + ![open-transaction](../../../static/img/usage/payroll/opening-balance/open-transaction.png) + +4. Select the employee by double clicking on its name + + ![select-employee](../../../static/img/usage/payroll/opening-balance/select-employee.png) + +5. Key in all the employee’s opening balance information + + ![fill-in-employee-details](../../../static/img/usage/payroll/opening-balance/fill-in-employee-details.png) + + :::info + + For the General part can enter information accordign to the EA form + For others part Employee need to know whether they have any of it in previous employment + ::: + +### Mapping of SQL "opening" to EA form + +![mapping](../../../static/img/usage/payroll/opening-balance/mapping.png) + +### Special note for additional EPF and PCB + +- Additional EPF and additional PCB are used when additional remuneration (bonus, commission, paid leave) is given. +- In the EA form, normal EPF and additional EPF is group into one. +- However, SQL recommend users to split the amount for a more detail input. + +![additional-epf-pcb](../../../static/img/usage/payroll/opening-balance/additional-epf-pcb.png) + + +## How to apply Recurring Payroll? + +:::info +This allow you to repeat the same amount of payment for the next month if you have already keyed in the advance payment, allowance or overtime for one month’s month end payroll +::: + +**Issue:** + +How to enable **recurring payroll** so that allowances/overtime/advance payments auto-populate in subsequent month’s payroll? + +**Solution:** + +1. Right click on previous month’s payroll > **Open** > **Open Overtime** + + ![open-overtime](../../../static/img/usage/payroll/recurring-payroll/open-overtime.png) + +2. Highlight all the Overtimes by clicking on the entries while pressing down on the SHIFT button. + + ![highlight](../../../static/img/usage/payroll/recurring-payroll/highlight.png) + +3. Right click and then Copy + + ![copy](../../../static/img/usage/payroll/recurring-payroll/copy.png) + +4. Go to **Payroll** > **Open Pending Payroll** and select Overtime + + ![select-overtime](../../../static/img/usage/payroll/recurring-payroll/select-overtime.png) + +5. Right-click on the white area and select paste + + ![paste](../../../static/img/usage/payroll/recurring-payroll/paste.png) + +6. Select all the entries by clicking on it while pressing down on the SHIFT button. then right- click and select “batch edit value”. + + ![select-batch-edit](../../../static/img/usage/payroll/recurring-payroll/select-batch-edit.png) + +7. Change the Column to “Post Date” + + ![change-column-post-date](../../../static/img/usage/payroll/recurring-payroll/change-column-post-date.png) + +8. Key in the post date of you next month’s payroll and press Execute. + + ![key-in-post-date](../../../static/img/usage/payroll/recurring-payroll/key-in-post-date.png) + +9. Press OK and Close the window. + + ![ok-confirm](../../../static/img/usage/payroll/recurring-payroll/ok-confirm.png) + +10. You will see that the Post Date has change. Press Save. The changes have been successfully saved once the icon turns grey colour. + + ![save](../../../static/img/usage/payroll/recurring-payroll/save.png) + +11. When you process your next month’s payroll. It will capture these values. + + For example, in September 2021’s month end copied from August 2021: + + ![example](../../../static/img/usage/payroll/recurring-payroll/example.png) + +12. Repeat the same steps for allowances, and advance payments. diff --git a/docs/usage/payroll/general-guide.md b/docs/usage/payroll/general-guide.md deleted file mode 100644 index bfdfd5c..0000000 --- a/docs/usage/payroll/general-guide.md +++ /dev/null @@ -1,85 +0,0 @@ ---- -sidebar_position: 2 -title: General Guide -description: A guide to maintain payroll -slug: /usage/payroll/general -tags: ["SQL Payroll", "Payroll", "Month End", "Pending Payroll"] ---- - -## Create Payroll - -1. Click into **Payroll** and look for **New Payroll**. - - :::tip - Certain company their payroll cut off date will not in the month end, some of the company will according to the 26th of the month, so you can preset your own company payroll cut off date through the "..." button. - ::: - - ![month-end](../../../static/img/usage/payroll/general/create.png) - -2. Click on the **Process** option. - -## Open Payroll - -:::info -Once you have created the payroll and you wish to view whatever you have did, then you can make some amendment. -::: - -1. Navigate to **Payroll** > **Open Payroll**. Alternatively, access it from the home page by clicking **Open Payroll** - - ![open-navigate](../../../static/img/usage/payroll/general/open-navigate.png) - -2. Select employee, double click your employee name to check on its individual’s amount - - ![open-select-employee](../../../static/img/usage/payroll/general/open-select-employee.png) - - :::info - You can process 2 month end in the same day also. Initially, you can choose to tick those first batch employees. - - While processing the 2nd batch, you can tick the 2nd batch of users. - - Example: - - **BATCH 1** - - ![batch-1-payroll](../../../static/img/usage/payroll/general/batch-1-payroll.png) - - ![batch-1-employees](../../../static/img/usage/payroll/general/batch-1-employees.png) - - **BATCH 2** - - ![batch-2-payroll](../../../static/img/usage/payroll/general/batch-2-payroll.png) - - ![batch-2-employees](../../../static/img/usage/payroll/general/batch-2-employees.png) - ::: - -## Open Pending Payroll - -:::tip -Before you process the month end, you can use open pending payroll to key-in all others add hoc info like extra allowance, overtime, claim etc. -::: - -1. Go to **Payroll** > **Open Pending Payroll**. - - ![navigate](../../../static/img/usage/payroll/general/navigate.png) - -2. Double Click on the info that you want to input, eg: Overtime. - - ![pending-click-overtime](../../../static/img/usage/payroll/general/pending-click-overtime.png) - -3. Insert the overtime info accordingly - - 1. Press on the ➕ button to add new overtime. - - ![pending-add-new-overtime](../../../static/img/usage/payroll/general/pending-add-new-overtime.png) - - 2. Insert the info accordingly like employee, overtime code, work unit etc - - ![pending-insert-info](../../../static/img/usage/payroll/general/pending-insert-info.png) - - 3. Once update accordingly then save. - - ![pending-overtime-save](../../../static/img/usage/payroll/general/pending-overtime-save.png) - -4. Once finish the update you may process the month end and observe the result. - - ![pending-result](../../../static/img/usage/payroll/general/pending-result.png) diff --git a/docs/usage/payroll/guide.md b/docs/usage/payroll/guide.md new file mode 100644 index 0000000..d5f085a --- /dev/null +++ b/docs/usage/payroll/guide.md @@ -0,0 +1,561 @@ +--- +sidebar_position: 2 +title: Guide +description: A guide to maintain payroll +slug: /usage/payroll/general +tags: ["SQL Payroll", "Payroll", "Month End", "Pending Payroll"] +--- + +## Create Payroll + +### Final Process + +Enable to process the Month Pay Salary and Final Pay Salary. + +1. Click into **Payroll** and look for **New Payroll**. + + :::tip + Certain company their payroll cut off date will not in the month end, some of the company will according to the 26th of the month, so you can preset your own company payroll cut off date through the "..." button. + ::: + + ![month-end](../../../static/img/usage/payroll/general/create.png) + +2. Click on the **Process** option. + +### Frequency Process + +To process mid month salary payroll. The salary payout is based on average % of the Fixed Salary. + +Not the last Pay of the Month. + +![pay-frequency](../../../static/img/usage/payroll/general/pay_frequency.png) + +### Ad Hoc Process + +To process Mid Month Ad Hoc Payroll + +![pay-adhoc](../../../static/img/usage/payroll/general/pay_adHoc.png) + +![pay-adhoc-bonusallow](../../../static/img/usage/payroll/general/pay_adHoc_bonusallow.png) + +Default this option +- All(PCB,Socso,EPF) Contribution for Fixed Transaction will be 0 +- Value will be 0 (Zero) & user need to self enter a value for All/Selected Employee + +![pay-adhoc-monthlyFA](../../../static/img/usage/payroll/general/pay_adhoc_montlyFA.png) + +In this option allow the user to self control the Contribution (default 100%) for Fixed Transaction. + +In other word if (eg Bonus with PCB (A) only just set Contribution to 0%) + +## Open Payroll + +:::info +Once you have created the payroll and you wish to view whatever you have did, then you can make some amendment. +::: + +1. Navigate to **Payroll** > **Open Payroll**. Alternatively, access it from the home page by clicking **Open Payroll** + + ![open-navigate](../../../static/img/usage/payroll/general/open-navigate.png) + +2. Select employee, double click your employee name to check on its individual’s amount + + ![open-select-employee](../../../static/img/usage/payroll/general/open-select-employee.png) + + :::info + You can process 2 month end in the same day also. Initially, you can choose to tick those first batch employees. + + While processing the 2nd batch, you can tick the 2nd batch of users. + + Example: + + **BATCH 1** + + ![batch-1-payroll](../../../static/img/usage/payroll/general/batch-1-payroll.png) + + ![batch-1-employees](../../../static/img/usage/payroll/general/batch-1-employees.png) + + **BATCH 2** + + ![batch-2-payroll](../../../static/img/usage/payroll/general/batch-2-payroll.png) + + ![batch-2-employees](../../../static/img/usage/payroll/general/batch-2-employees.png) + ::: + +## Open Pending Payroll + +:::tip +Before you process the month end, you can use open pending payroll to key-in all others add hoc info like extra allowance, overtime, claim etc. +::: + +- This is for the user to prepare the transaction (eg Overtime, Deduction) before Processing the Payroll... +- Available Pending Type Transactions + + + + + + + + + + + + + + +
WagesAllowanceTax DeductionOvertime
DeductionAdvance PaidClaimsLoan
CP38Advance DeductBonusPaid Leave
Director FeesUnpaid LeaveTax BenefitCommission
+ +- After all the Pending had enter user may go either below step to for next step except Pending Advance Paid + - New Payroll | Final Process + - New_Payroll | Ad Hoc Process +- For Pending Advance Paid must use New_Payroll | Ad Hoc Process then only can use New Payroll | Final Process + +### Steps + +1. Go to **Payroll** > **Open Pending Payroll**. + + ![navigate](../../../static/img/usage/payroll/general/navigate.png) + +2. Double Click on the info that you want to input, eg: Overtime. + + ![pending-click-overtime](../../../static/img/usage/payroll/general/pending-click-overtime.png) + +3. Insert the overtime info accordingly + + 1. Press on the ➕ button to add new overtime. + + ![pending-add-new-overtime](../../../static/img/usage/payroll/general/pending-add-new-overtime.png) + + 2. Insert the info accordingly like employee, overtime code, work unit etc + + ![pending-insert-info](../../../static/img/usage/payroll/general/pending-insert-info.png) + + 3. Once update accordingly then save. + + ![pending-overtime-save](../../../static/img/usage/payroll/general/pending-overtime-save.png) + +4. Once finish the update you may process the month end and observe the result. + + ![pending-result](../../../static/img/usage/payroll/general/pending-result.png) + +### Pending YYYY + +- YYYY represents the Year (e.g. if in 2013 will show as Pending 2013). +- To show the pending in Monthly (with & without Transactions). + +![open-pending-payroll-02](../../../static/img/usage/payroll/general/openPendingPayroll_PendingYYYY.png) + +### Pending Navigator + +Show which Pending Type had transactions in the day view. + +![open-pending-payroll-04](../../../static/img/usage/payroll/general/openPendingPayroll_Pending_Navigator.png) + +### Show all Pending Payroll + +To show the pending in Yearly (with Transactions). + +![open-pending-payroll-03](../../../static/img/usage/payroll/general/openPendingPayroll_Show_All_Pending_Payroll.png) + +## Pending Transactions Types + +1. Just click the + button on top of the Screen (The Green + and Money icon) to Insert record(s). + +2. After done just Click the Blue Diskette icon on top of the Screen to save the record. + +### Pending Wages + +This is useful for employees to be paid by the number of days they work (i.e. users can add the day when the selected employee comes to work). + +![pending-wages](../../../static/img/usage/payroll/general/openPendingPayroll_Wages.png) + +| Field Name | Description | Type / Length / Precision | +|---|---|---| +| Trans Date | Wages transaction date | Date | +| Post Date | Wages posting date | Date | +| Employee | Employee code | Alphanumerical, length 30 | +| Code | Wages type | Alphanumerical, length 20 | +| Description | Wages type description | Alphanumerical, length 160 | +| Amount | Wages amount | Decimal, length 18, precision 2 | + +### Pending Overtime + +![pending-overtime](../../../static/img/usage/payroll/general/openPendingPayroll_Overtime.png) + +| Field Name | Description | Type / Length / Precision | +|---|---|---| +| Trans Date | Overtime transaction date | Date | +| Post Date | Overtime posting date | Date | +| Employee | Employee code | Alphanumerical, length 30 | +| Code | Overtime type | Alphanumerical, length 20 | +| Description | Overtime type description | Alphanumerical, length 160 | +| Work Unit | It can be in Hours or Day depend what Overtime Type selected and Unit type is set at Maintain Overtime | Decimal, length 18, precision 8 | +| Rate | Overtime rate | Decimal, length 18, precision 8 | +| Day Type | It follow the Post Date to determine the Day Type which is set at Maintain Calender | Alpha, length 1 | +| Work Unit As Time | Overtime entered as time (HH:MM:SS) | Time | + +### Pending Paid Leave + +![pending-paid-leave](../../../static/img/usage/payroll/general/openPendingPayroll_PaidLeave.png) + +| Field Name | Description | Type / Length / Precision | +|---|---|---| +| Trans Date | Paid leave transaction date | Date | +| Post Date | Paid leave posting date | Date | +| Employee | Employee code | Alphanumerical, length 30 | +| Description | Paid leave description | Alphanumerical, length 160 | +| Amount | Paid leave amount | Decimal, length 18, precision 2 | + +### Pending Unpaid Leave + +![pending-unpaid-leave](../../../static/img/usage/payroll/general/openPendingPayroll_UnpaidLeave.png) + +| Field Name | Description | Type / Length / Precision | +|---|---|---| +| Trans Date | Unpaid leave transaction date | Date | +| Post Date | Unpaid leave posting date | Date | +| Employee | Employee code | Alphanumerical, length 30 | +| Code | Unpaid leave type | Alphanumerical, length 20 | +| Description | Unpaid leave type description | Alphanumerical, length 160 | +| Leave Day | Number of unpaid leave days | Decimal, length 18, precision 8 | +| Amount | Unpaid leave amount (Leave blank if want calculated by system) | Decimal, length 18, precision 2 | + +### Pending Claim + +![pending-claim](../../../static/img/usage/payroll/general/openPendingPayroll_Claim.png) + +| Field Name | Description | Type / Length / Precision | +|---|---|---| +| Trans Date | Claim transaction date | Date | +| Post Date | Claim posting date | Date | +| Employee | Employee code | Alphanumerical, length 30 | +| Code | Claim type | Alphanumerical, length 20 | +| Description | Claim type description | Alphanumerical, length 160 | +| Ref1 | Claim reference 1 | Alphanumerical, length 20 | +| Ref2 | Claim reference 2 | Alphanumerical, length 20 | +| Amount | Claim amount | Decimal, length 18, precision 2 | + +### Pending CP38 + +This is generally towards settlement of outstanding taxes. + +![pending-cp38-01](../../../static/img/usage/payroll/general/openPendingPayroll_CP3801.png) + +![pending-cp38-02](../../../static/img/usage/payroll/general/openPendingPayroll_CP3802.png) + +| Field Name | Description | Type / Length / Precision | +|---|---|---| +| Trans Date | CP38 transaction date | Date | +| Post Date | CP38 posting date | Date | +| Employee | Employee code | Alphanumerical, length 30 | +| Description | CP38 description | Alphanumerical, length 160 | +| Ref1 | Reference 1 | Alphanumerical, length 20 | +| Ref2 | Reference 2 | Alphanumerical, length 20 | +| Amount | CP38 amount | Decimal, length 18, precision 2 | +| Generate Button | For Batch Generate CP38 | | + +### Pending Allowance + +![pending-allowance](../../../static/img/usage/payroll/general/openPendingPayroll_Allowance.png) + +| Field Name | Description | Type / Length / Precision | +|---|---|---| +| Trans Date | Allowance transaction date | Date | +| Post Date | Allowance posting date | Date | +| Employee | Employee code | Alphanumerical, length 30 | +| Code | Allowance type | Alphanumerical, length 20 | +| Tax Code | Tax exemption code | Alphanumerical, length 20 | +| Description | Allowance type description | Alphanumerical, length 160 | +| Work Unit | Allowance unit | Decimal, length 18, precision 8 | +| Rate | Allowance rate | Decimal, length 18, precision 8 | +| Amount | Allowance total amount | Decimal, length 18, precision 2 | + +### Pending Deduction & Pending Commission + +Below Example information is applicable for + +- Pending Deduction +- Pending Commission + +![pending-deduction-commission](../../../static/img/usage/payroll/general/openPendingPayroll_Deduction.png) + +| Field Name | Description | Type / Length / Precision | +|---|---|---| +| Trans Date | Deduction / Commission transaction date | Date | +| Post Date | Deduction / Commission posting date | Date | +| Employee | Employee code | Alphanumerical, length 30 | +| Code | Deduction / Commission type | Alphanumerical, length 20 | +| Description | Deduction / Commission description | Alphanumerical, length 160 | +| Work Unit | Deduction unit | Decimal, length 18, precision 8 | +| Rate | Deduction rate | Decimal, length 18, precision 8 | +| Amount | Deduction total amount | Decimal, length 18, precision 2 | + +### Pending Bonus & Pending Director Fees +Below Example information is applicable for + +- Pending Bonus +- Pending Director Fees + +![pending-bonus-director-fees](../../../static/img/usage/payroll/general/openPendingPayroll_Bonus.png) + +| Field Name | Description | Type / Length / Precision | +|---|---|---| +| Trans Date | Bonus / Director fees transaction date | Date | +| Post Date | Bonus / Director fees posting date | Date | +| Pay Year | Bonus year (Default is same year as Post Date) | Integer | +| Employee | Employee code | Alphanumerical, length 30 | +| Tax Category | Employee tax category | Alphanumerical, length 10 | +| EPF Rate | Bonus EPF rate | Alphanumerical, length 10 | +| Wages | Employee wages amount | Decimal, length 18, precision 2 | +| Amount | Bonus / Director fees amount | Decimal, length 18, precision 2 | + +### Pending Advance Paid, Pending Advance Deduct & Pending Loan + +Below Example information is applicable for + +- Pending Advance Paid +- Pending Advance Deduct (Only View because it derive from Advance Paid after Ad Hoc Process) +- Pending Commission + +![pending-advance-paid-advance-deduct-commission](../../../static/img/usage/payroll/general/openPendingPayroll_AdvancePaid.png) + +| Field Name | Description | Type / Length / Precision | +|---|---|---| +| Trans Date | Advance / Loan transaction date | Date | +| Post Date | Advance / Loan posting date | Date | +| Employee | Employee code | Alphanumerical, length 30 | +| Description | Description | Alphanumerical, length 160 | +| Ref1 | Reference 1 | Alphanumerical, length 20 | +| Ref2 | Reference 2 | Alphanumerical, length 20 | +| Amount | Advance paid amount | Decimal, length 18, precision 2 | + +### Pending Tax Benefit & Pending Tax Deduction + +Below Example information is applicable for + +- Pending Tax Benefit +- Pending Tax Deduction + +![pending-tax-benefit-tax-deduction](../../../static/img/usage/payroll/general/openPendingPayroll_TaxDeduct.png) + +| Field Name | Description | Type / Length / Precision | +|---|---|---| +| Trans Date | Tax deduction / benefit transaction date | Date | +| Post Date | Tax deduction / benefit posting date | Date | +| Employee | Employee code | Alphanumerical, length 30 | +| Code | Tax deduction code | Alphanumerical, length 20 | +| Description | Tax deduction description | Alphanumerical, length 160 | +| Ref1 | Reference 1 | Alphanumerical, length 20 | +| Ref2 | Reference 2 | Alphanumerical, length 20 | +| Amount | Tax deduction description | Decimal, length 18, precision 2 | + +## Example of create open pending payroll + +### Advance Paid + +:::info +Employee request advance salary before month end +::: + +1. Navigate to **Payroll > Open Pending Payroll** + +2. **Select Advance Paid** + + ![select-advance-paid](../../../static/img/usage/payroll/advanced-paid/select-advance-paid.png) + +3. **Key in accordingly** + + >***Trans date*** = date apply advance paid + > + >***Employee*** = which employee + > + >***Amount*** = amount advance paid + + ![fill-in](../../../static/img/usage/payroll/advanced-paid/fill-in.png) + +4. Go to Payroll > New Payroll + +5. Choose Ad Hoc + +6. Set the date when your employee take advance paid + +7. Under Process > select Monthly Fixed Allowance / Pending Payroll (will come out the dialog box as pic attached) + +8. Tick "Advanced Paid" + + ![config](../../../static/img/usage/payroll/advanced-paid/config.png) + +9. Process + + ![process](../../../static/img/usage/payroll/advanced-paid/process.png) + +10. Process Month end Payroll as usual, you will found there is advance deduct at the month end. + + ![result](../../../static/img/usage/payroll/advanced-paid/result.png) + +### Bonus + +1. Navigate to **Payroll** > **Open Pending Payroll** + + ![navigate](../../../static/img/usage/payroll/bonus/navigate.png) + +2. Click on Bonus + + ![click-bonus](../../../static/img/usage/payroll/bonus/click-bonus.png) + +3. Next, adjust the bonus of your employee + + ![adjust-employee](../../../static/img/usage/payroll/bonus/adjust-employee.png) + + 1. Click “Add” + 2. Select your employee + 3. Key in amount + 4. Save + +4. Go to **Payroll** > **New Payroll** and click on **Ad Hoc** + + ![adhoc](../../../static/img/usage/payroll/bonus/adhoc.png) + +5. Tick **EPF** if you want to deduct **EPF**, Tick **PCB** if you want to deduct **PCB** + + ![epf-pcb](../../../static/img/usage/payroll/bonus/epf-pcb.png) + +6. Tick Bonus / Allowance (To input your amount) + + ![tick-bonus](../../../static/img/usage/payroll/bonus/tick-bonus.png) + +7. Change the Description (Optional) and tick the employee you rewarded with bonus + + ![change-desc](../../../static/img/usage/payroll/bonus/change-desc.png) + +8. Complete and check the payslip + + ![result](../../../static/img/usage/payroll/bonus/result.png) + +### CP38 + +- CP38 is a **instruction** to Deduct Salary which **issued by LHDN**. This CP38 instruction requires that the employer **make additional deductions in monthly installments** from the salary of the taxpayer (other than a Monthly Tax Deduction) towards settlement of taxpayer’s income tax arrears. +- The Salary Deduction Order (CP38) for tax payment in instalments aims to ease the burden **of the taxpayer** who should be paying the tax arrears in one lump sum under the Income Tax Act 1967. + +1. **Open Pending Payroll** and choose **CP38** + + ![select-cp38](../../../static/img/usage/payroll/cp38/select-cp38.png) + +2. Press **GENERATE** on the top left of the window. + + ![generate](../../../static/img/usage/payroll/cp38/generate.png) + +3. Key in the Amount you receive from LHDN Letter, for example this employee ( 00001- Lucious ) had to pay CP38 on **June ( RM450 )** and July **( RM550 )**. Press **GENERATE**. + + ![fill-in-details](../../../static/img/usage/payroll/cp38/fill-in-details.png) + +4. Press **SAVE** + + ![save](../../../static/img/usage/payroll/cp38/save.png) + +5. This **pending** task only needs to be completed **once**. It will impact **both the June and July month-end processes**. The following pictures below will illustrate the end result : + + ![result](../../../static/img/usage/payroll/cp38/result.png) + +## Generate Payment Voucher / Journal Entry + +:::success[note] +This is **Additional Module** (Payroll Accounting (SQL Payroll)) +::: + +1. To generate the monthly payroll data converted into double entry and get post into SQL Account. + +2. It is available in **SQL Payroll version 129** and above. + +3. It is available to import payroll data in **SQL Account version 745** and above. + +![1](../../../static/img/usage/payroll/generate-payment-voucher/export_import_as_PV_JE.jpg) + +### Overview of the Process Flow + +![2](../../../static/img/usage/payroll/generate-payment-voucher/overview_process_flow.jpg) + +### Configure Payroll Accounting (1 time setup) + +Go to **Menu : Payroll | Generate Payment Voucher / Journal Entry...** + +1. At Generate Payment Voucher / Journal Entry, click on **Configure Payroll Accounting.** + +![3](../../../static/img/usage/payroll/generate-payment-voucher/insert_process_and_date.jpg) + +2. Overview of the Configure Payroll Accounting settings screen. + +![4](../../../static/img/usage/payroll/generate-payment-voucher/configure_payroll_accounting.jpg) + +**Step 1: Save GL Account to File (SQL Account)** + +1. Login the SQL Account database. + +2. Go to **File | Import | (SQL Payroll) Import Payment Voucher / Journal Entry | Save GL Account File** + +![5](../../../static/img/usage/payroll/generate-payment-voucher/navigate_import_payment_voucher.png) + +![6](../../../static/img/usage/payroll/generate-payment-voucher/save_gl_account_to_file.png) + +3. Save SQL Account file to Desktop. + +![7](../../../static/img/usage/payroll/generate-payment-voucher/save_gl_to_file.jpg) + +**Step 2: SQL Account GL Code** + +1. Click on **Load From File**. + +![8](../../../static/img/usage/payroll/generate-payment-voucher/load_from_sql_account.jpg) + +2. Select a **SQL Account file (*.txt)** and click **Open**. + +![9](../../../static/img/usage/payroll/generate-payment-voucher/load_sql_account_file.jpg) + +3. After the SQL Account GL Code has loaded, the company name will be display and last saved date and time. + +![10](../../../static/img/usage/payroll/generate-payment-voucher/display_company_name_and_last_saved_date_and_time.jpg) + +4. Click Remove File button if you wish to load the new chart of account. + +**Step 3: GL Account Mapping** + +1. After load the chart of accounts (in step 2), you are able to lookup and **map the GL Account code** to wages, allowance, overtime, bonus, etc accordingly. + +![11](../../../static/img/usage/payroll/generate-payment-voucher/gl_account_mapping.jpg) + +2. Example of the account mapping: + +![12](../../../static/img/usage/payroll/generate-payment-voucher/account_mapping_table.png) + +**Step 4: Posting Method** + +1. Generate posting entry by **Payment Voucher** or by **Journal Entry**. + +2. Group by **Employee** (available in payment voucher), **Branch, Department, HR group, or Category**. + +3. Tick to **With Project Code** to post the entry with project code. + +4. OPTIONAL: Generate Journal Entry for Employer EPF, SOCSO Accrual **(by default is untick)**. For some company might charge the Employer EPF and SOCSO accrual in next month. + +![13](../../../static/img/usage/payroll/generate-payment-voucher/posting_method.jpg) + +### Generate Payment Voucher / Journal Entry + +To generate the Payment Voucher or Journal Entry from SQL Payroll. Click on **Generate**. + +![14](../../../static/img/usage/payroll/generate-payment-voucher/generate_PV_JE.jpg) + +### Import Payment Voucher / Journal Entry + +1. Login the SQL Account database. + +2. Go to **File | Import | (SQL Payroll) Import Payment Voucher / Journal Entry...** + +3. Click on **Select File** from the Payment Voucher/Journal Entry (payroll data) generate from SQL Payroll. + +![15](../../../static/img/usage/payroll/generate-payment-voucher/import_PV_JE.jpg) + +4. Click on **Execute**. + +![16](../../../static/img/usage/payroll/generate-payment-voucher/import_PV_JE_successful.jpg) diff --git a/docs/usage/payroll/maintenance/_category_.json b/docs/usage/payroll/maintenance/_category_.json deleted file mode 100644 index e67c525..0000000 --- a/docs/usage/payroll/maintenance/_category_.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "label": "Maintenance", - "position": 1, - "link": { - "type": "generated-index", - "description": "Covers all maintenance guide of SQL Payroll", - "slug": "/usage/payroll/maintenance" - } -} \ No newline at end of file diff --git a/docs/usage/payroll/maintenance/maintain-allowance.md b/docs/usage/payroll/maintenance/maintain-allowance.md deleted file mode 100644 index 9df2f5a..0000000 --- a/docs/usage/payroll/maintenance/maintain-allowance.md +++ /dev/null @@ -1,49 +0,0 @@ ---- -title: Maintain Allowance -description: A guide to process payroll with allowance -slug: /usage/payroll/maintenance/maintain-allowance -tags: ["SQL Payroll", "allowance"] ---- - -## Introduction - -:::info Features - -- Setting up maintain allowance helps you to categorize the type of allowance that employee entitle. -- This would affect the types of contribution that they need to provide (EPF/SOCSO/PCB & etc) -- This is especially useful if you have different types of allowance like Petrol, Handphone, Meal Allowance base on different company different entitlement. - -::: - -## Setup - -1. Navigate to **Payroll** > **Maintenance** > **Maintain Allowance** - - ![navigate](../../../../static/img/usage/payroll/maintenance/maintain-allowance/navigate.png) - -2. Click New to generate a New Allowance - - ![new](../../../../static/img/usage/payroll/maintenance/maintain-allowance/new.png) - -3. Insert the info that you want to set in maintain allowance - - ![insert](../../../../static/img/usage/payroll/maintenance/maintain-allowance/insert.png) - - 1. Insert the Code of the Allowance that you want to generate. - 2. Insert the Description of the allowance. - 3. Insert the fixed amount for the allowance, eg: Handphone allowance is fixed RM 300 for every employee then you can insert the rate of RM 300 but if there is not then you can left it blank. - 4. If the allowance is tax exempted then you may insert the tax exempted code. - 5. Tick or un-tick the contribution of the allowance. - -4. After create the master file of Allowance, then you can add the fixed allowance for certain employee which have the allowance monthly - - ![add-fixed-allowance](../../../../static/img/usage/payroll/maintenance/maintain-allowance/add-fixed-allowance.png) - -5. Alternatively, you can insert the allowance after process month end. - - ![process-month-end-add-allowance](../../../../static/img/usage/payroll/maintenance/maintain-allowance/process-month-end-add-allowance.png) - - 1. Click on the "**Overtime**" - 2. CLick on the ➕ to add the employee then fill in the overtime - -6. Allowance feature is same with deduction feature, all the allowance is not compulsory just depend on company policy. diff --git a/docs/usage/payroll/maintenance/maintain-commission.md b/docs/usage/payroll/maintenance/maintain-commission.md deleted file mode 100644 index 62739e0..0000000 --- a/docs/usage/payroll/maintenance/maintain-commission.md +++ /dev/null @@ -1,48 +0,0 @@ ---- -title: Maintain Commission -description: A guide to process payroll with commission -slug: /usage/payroll/maintenance/maintain-commission -tags: ["SQL Payroll", "Commission"] ---- - -## Setup - -1. Set the commission for employee - - - Navigate to **Payroll** > **Maintenance** > **Maintain Commission** - - Create new for a new commission rate - - ![maintain-commision](../../../../static/img/usage/payroll/maintenance/maintain-commission/maintain-commission.png) - -2. Open pending payroll for commission - - - Payroll/Open pending payroll/Commission - - Insert the employee and amount - - ![pending-payroll](../../../../static/img/usage/payroll/maintenance/maintain-commission/pending-payroll.png) - -3. Process month end - - 1. Method 1 : Final Payroll Process - - - Navigate to **Payroll** > **New payroll** > **Process** - - ![process-month-end-1](../../../../static/img/usage/payroll/maintenance/maintain-commission/process-month-end-1.png) - - 2. Method 2 : Process Adhoc - - - Tick EPF & PCB & Monthly Fixed Allowance/Pending Payroll - - ![process-month-end-2](../../../../static/img/usage/payroll/maintenance/maintain-commission/process-month-end-2.png) - - 3. Tick Commission - - ![tick-comm](../../../../static/img/usage/payroll/maintenance/maintain-commission/tick-comm.png) - -4. Double click the employee that you gave commission - - ![check-employee](../../../../static/img/usage/payroll/maintenance/maintain-commission/check-employee.png) - -5. Refer to commission column - - ![result](../../../../static/img/usage/payroll/maintenance/maintain-commission/result.png) diff --git a/docs/usage/payroll/maintenance/maintain-contribution.md b/docs/usage/payroll/maintenance/maintain-contribution.md deleted file mode 100644 index 039ba49..0000000 --- a/docs/usage/payroll/maintenance/maintain-contribution.md +++ /dev/null @@ -1,45 +0,0 @@ ---- -title: Maintain Contribution -description: A guide to set up maintain contribution for different workers -slug: /usage/payroll/maintenance/maintain-contribution -tags: ["SQL Payroll", "Contribution"] ---- - -## Introduction - -:::info -Learn how to set the Employee/Employer EPF rate, OT calculation and Tax calculation following this guide -::: - -- Setting up maintain contribution helps you to categorise the type of contribution an employee received -- This would affect the types of contribution that they need to provide (EPF/SOCSO/PCB & etc) -- This is especially useful if you have different types of worker such as permanent worker, contract worker, foreign worker & etc - -## Setup - -1. Navigate to **Payroll** > **Maintenance** > **Maintain Contribution** - - ![navigate](../../../../static/img/usage/payroll/maintenance/maintain-contribution/navigate.png) - -2. Click new to create new contribution - - ![new](../../../../static/img/usage/payroll/maintenance/maintain-contribution/new.png) - -3. Key in the info and tick the contribution needed - -![key-in-1](../../../../static/img/usage/payroll/maintenance/maintain-contribution/key-in-1.png) -![key-in-2](../../../../static/img/usage/payroll/maintenance/maintain-contribution/key-in-2.png) - -## Common contribution setup - -| Local Permanent Workers | Foreign Workers | -| ------------------------------------------------------------------------------------ | -------------------------------------------------------------------- | -| ![local-permanent](../../../../static/img/usage/payroll/maintenance/maintain-contribution/local-permanent.png) | ![foreign](../../../../static/img/usage/payroll/maintenance/maintain-contribution/foreign.png) | - -## Explanation of terms in Maintain Contribution panel - -![explanation-1](../../../../static/img/usage/payroll/maintenance/maintain-contribution/explanation-1.png) - -![explanation-2](../../../../static/img/usage/payroll/maintenance/maintain-contribution/explanation-2.png) - -![explanation-3](../../../../static/img/usage/payroll/maintenance/maintain-contribution/explanation-3.png) diff --git a/docs/usage/payroll/maintenance/maintain-employee-opening-balance.md b/docs/usage/payroll/maintenance/maintain-employee-opening-balance.md deleted file mode 100644 index f49d3dd..0000000 --- a/docs/usage/payroll/maintenance/maintain-employee-opening-balance.md +++ /dev/null @@ -1,45 +0,0 @@ ---- -title: Maintain Employee Opening Balance -description: A guide to maintain employee's opening balance -slug: /usage/payroll/maintenance/maintain-employee-opening-balance -tags: ["SQL Payroll", "Employee", "Opening Balance"] ---- - -## Introduction - -- Maintain employee’s opening balance is done when the respective employee enter the company in a month **later than January**. -- The previous PCB amount is **needed to key in so that the system can correctly calculate** the PCB amount that’s needed to pay every month. - -## Setup - -1. Navigate to the **Open Payroll** - - ![navigate](../../../../static/img/usage/payroll/maintenance/maintain-employee-opening-balance/navigate.png) - -2. Double click the year in Open Payroll - - ![open-payroll](../../../../static/img/usage/payroll/maintenance/maintain-employee-opening-balance/open-payroll.png) - -3. Double click the transaction under ‘Opening’ - - ![open-txn](../../../../static/img/usage/payroll/maintenance/maintain-employee-opening-balance/open-txn.png) - -4. Select the employee by double clicking on the name - - ![select-employee](../../../../static/img/usage/payroll/maintenance/maintain-employee-opening-balance/select-employee.png) - -5. Key in all the employee’s opening balance information - - ![key-in-employee-details](../../../../static/img/usage/payroll/maintenance/maintain-employee-opening-balance/key-in-employee-details.png) - -## Mapping of SQL 'opening' to EA form - -![mapping](../../../../static/img/usage/payroll/maintenance/maintain-employee-opening-balance/mapping.png) - -## Special note for additional EPF and additional PCB - -- Additional EPF and additional PCB are used when additional remuneration (bonus, commission, paid leave) is given. -- In the EA form, normal EPF and additional EPF is group into one. -- However, SQL recommend users to split the amount for a more detail input. - -![notes](../../../../static/img/usage/payroll/maintenance/maintain-employee-opening-balance/notes.png) diff --git a/docs/usage/payroll/maintenance/maintain-frequency.md b/docs/usage/payroll/maintenance/maintain-frequency.md deleted file mode 100644 index 408d018..0000000 --- a/docs/usage/payroll/maintenance/maintain-frequency.md +++ /dev/null @@ -1,55 +0,0 @@ ---- -title: Maintain Frequency -description: A guide to maintain payroll frequency method -slug: /usage/payroll/maintenance/maintain-frequency -tags: ["SQL Payroll", "Frequency"] ---- - -:::info -Frequency – Where one company will pay salary **twice or more times** in **a Month**. -::: - -## Setup - -1. Navigate to **Payroll** > **Maintenance** > **Maintain Frequency** - - ![maintain-frequency](../../../../static/img/usage/payroll/maintenance/maintain-frequency/maintain-frequency.png) - -2. Click on **New** to preset your contribution. - - ![new](../../../../static/img/usage/payroll/maintenance/maintain-frequency/new.png) - -3. Go to **Human Resource** > **Maintain Employee**, Select the particular Employee and then Go to **Payroll Info Tab** and set the Frequency According to the Maintenance Frequency respectively. - - ![set-freq-1](../../../../static/img/usage/payroll/maintenance/maintain-frequency/set-freq-1.png) - -4. After save, you can check the allowance the employee is having. In this example, the employee Nicole has an Fixed Allowance of RM 230. - - ![set-freq-2](../../../../static/img/usage/payroll/maintenance/maintain-frequency/set-freq-2.png) - -5. Next, go to **Payroll** > **New payroll** > **Frequency** - - ![frequency](../../../../static/img/usage/payroll/maintenance/maintain-frequency/frequency.png) - - 1 Select the Frequency as you Set in Maintenance Frequency (EG: Half). - - 2 The Employee/s that u have set as the Frequency type in Maintain Employee will show in this column - - 3 Tick the Sequence that u wan to process. - - 4 Click PROCESS - -6. The following result below will show in the **HALF MONTH FREQUENCY PAYROLL**. - - ![result-1](../../../../static/img/usage/payroll/maintenance/maintain-frequency/result-1.png) - -7. When it is time to do month end, click on Payroll, look for New Payroll and click on Final Month End to process. - - ![result-2](../../../../static/img/usage/payroll/maintenance/maintain-frequency/result-2.png) - -8. Select the Employee ( Nicole ) that you’ve process Frequency. The following is an example result of the Employee that had process Frequency. - - - Wages - [2800 (Basic) – 1400 (Frequency) = 1400 ] - - Allowance - [ 230 (Fixed) – 115 (Frequency) = 115 ] - - ![final-result](../../../../static/img/usage/payroll/maintenance/maintain-frequency/final-result.png) diff --git a/docs/usage/payroll/maintenance/maintain-overtime.md b/docs/usage/payroll/maintenance/maintain-overtime.md deleted file mode 100644 index 768603e..0000000 --- a/docs/usage/payroll/maintenance/maintain-overtime.md +++ /dev/null @@ -1,202 +0,0 @@ ---- -title: Maintain Overtime -description: A guide to process payroll with overtime -slug: /usage/payroll/maintenance/maintain-overtime -tags: ["SQL Payroll", "Overtime"] ---- - -## Introduction - -:::info Features - -- Setting up maintain overtime helps you to categorize the type of overtime that company have. -- This would affect the types of contribution that they need to provide (EPF/SOCSO/PCB & etc) -- This setting will bring impact of the calculation of overtime. - -::: - -## Process Overtime After Month End - -1. Click on **Payroll** > **Maintenance** > **Maintain Overtime** - - ![after-maintain-overtime](../../../../static/img/usage/payroll/maintenance/maintain-overtime/after-maintain-overtime.png) - -2. In the list, you can find some default overtime settings. Click on **New** to generate a custom one - - ![after-new](../../../../static/img/usage/payroll/maintenance/maintain-overtime/after-new.png) - -3. Key-in Overtime details as below - - ![after-enter-details](../../../../static/img/usage/payroll/maintenance/maintain-overtime/after-enter-details.png) - - - Insert the **Code** and **Description** of the overtime that you want to generate. - - Insert the **Rate** of the overtime, eg : the overtime rate is 1.5 as per overtime amount or double, triple of the overtime amount. - - **Unit Type** is to set the overtime calculation by hourly or by daily. - -Set the contribution of overtime with EPF, SOCSO, PCB, EIS etc. - -4. After that, when we need to process the payroll at the month end. Navigate to **Payroll** > **New Payroll** - - ![after-navigate-new-payroll](../../../../static/img/usage/payroll/maintenance/maintain-overtime/after-navigate-new-payroll.png) - -5. Click **Final**, and click on **Process** - - ![after-click-process](../../../../static/img/usage/payroll/maintenance/maintain-overtime/after-click-process.png) - -6. Click on any employee - - ![after-click-employee](../../../../static/img/usage/payroll/maintenance/maintain-overtime/after-click-employee.png) - -7. Click on the "**Overtime**" - - ![after-click-overtime](../../../../static/img/usage/payroll/maintenance/maintain-overtime/after-click-overtime.png) - -8. Click on the ➕ to add the info you want - - ![after-click-plus](../../../../static/img/usage/payroll/maintenance/maintain-overtime/after-click-plus.png) - -9. Click on the "**Code**" to choose the overtime type - - ![after-select-code](../../../../static/img/usage/payroll/maintenance/maintain-overtime/after-select-code.png) - -10. Key in the work unit as overtime hour, for example if Lee hong Wai overtime for 2 hours on that particular day, just key in numbering as 2 will do - - ![after-key-overtime-hour](../../../../static/img/usage/payroll/maintenance/maintain-overtime/after-key-overtime-hour.png) - -11. Alternatively, you can click on the button beside Trans Date, and tick the column name Work Unit As Time - - ![after-tick-column](../../../../static/img/usage/payroll/maintenance/maintain-overtime/after-tick-column.png) - -12. After call out the column of Work Unit As Time, you may key in he overtime minutes also (eg: 2 hours and 09 mins) - ![after-key-overtime-minutes](../../../../static/img/usage/payroll/maintenance/maintain-overtime/after-key-overtime-minutes.png) - -## Process Overtime Before Month End - -1. Click on payroll, open pending payroll. - - ![before-open-pending](../../../../static/img/usage/payroll/maintenance/maintain-overtime/before-open-pending.png) - -2. Double Click on **Overtime** - - ![before-open](../../../../static/img/usage/payroll/maintenance/maintain-overtime/before-open.png) - -3. Click on Append icon - - ![before-append-1](../../../../static/img/usage/payroll/maintenance/maintain-overtime/before-append-1.png) - - ![before-append-2](../../../../static/img/usage/payroll/maintenance/maintain-overtime/before-append-2.png) - -4. Select employee - - ![before-select-employee](../../../../static/img/usage/payroll/maintenance/maintain-overtime/before-select-employee.png) - -5. Select **Overtime Code** - - ![before-select-code](../../../../static/img/usage/payroll/maintenance/maintain-overtime/before-select-code.png) - -6. Tick and enable the **Work Unit As Time** - - ![before-enable-work-unit-as-time](../../../../static/img/usage/payroll/maintenance/maintain-overtime/before-enable-work-unit-as-time.png) - -7. Enter the time in the work unit as time, for example Lee Chong Wai worked overtime for 2hours and 30minutes, key in as shown below - - ![before-enter-time](../../../../static/img/usage/payroll/maintenance/maintain-overtime/before-enter-time.png) - -8. Repeat the same steps as shown above for the other overtime records and save after all done - - ![before-repeat](../../../../static/img/usage/payroll/maintenance/maintain-overtime/before-repeat.png) - -9. During month end, - - ![before-month-end-1](../../../../static/img/usage/payroll/maintenance/maintain-overtime/before-month-end-1.png) - - ![before-month-end-2](../../../../static/img/usage/payroll/maintenance/maintain-overtime/before-month-end-2.png) - -10. Double click on the employee’s name or code - - ![before-click-employee](../../../../static/img/usage/payroll/maintenance/maintain-overtime/before-click-employee.png) - -11. Click on the blue **Overtime** words - - ![before-click-overtime](../../../../static/img/usage/payroll/maintenance/maintain-overtime/before-click-overtime.png) - -12. The overtime records entered in pending payroll will be shown - - ![before-overtime-records](../../../../static/img/usage/payroll/maintenance/maintain-overtime/before-overtime-records.png) - -## Import Excel Overtime Format into SQL Payroll - -1. Prepare a table in Microsoft Excel as shown in the image below - - ![import-excel](../../../../static/img/usage/payroll/maintenance/maintain-overtime/import-excel.png) - - :::tip - - - **Date**: Trans Date - - **Employee**: Code of Employee - - **OT**: Code of Overtime that created in Maintain Overtime - - **Unit**: Work Unit (count 2.50 = 150 minutes/2 and a half hours) - ::: - -2. After done the table, go to file - - ![import-go-to-file](../../../../static/img/usage/payroll/maintenance/maintain-overtime/import-go-to-file.png) - -3. Click on Save as - - ![import-save-as](../../../../static/img/usage/payroll/maintenance/maintain-overtime/import-save-as.png) - -4. Select CSV file type - - ![import-select-csv](../../../../static/img/usage/payroll/maintenance/maintain-overtime/import-select-csv.png) - -5. Click Save - - ![import-save](../../../../static/img/usage/payroll/maintenance/maintain-overtime/import-save.png) - -6. Go to SQL Payroll > Payroll > Open Pending Payroll... - - ![import-open-pending-payroll](../../../../static/img/usage/payroll/maintenance/maintain-overtime/import-open-pending-payroll.png) - -7. Double click on the Overtime - - ![import-click-overtime](../../../../static/img/usage/payroll/maintenance/maintain-overtime/import-click-overtime.png) - -8. Click on the Import Data icon - - ![import-click-data](../../../../static/img/usage/payroll/maintenance/maintain-overtime/import-click-data.png) - -9. Click on the … (3 dots button) to select your data source, - - ![import-click-dots-button](../../../../static/img/usage/payroll/maintenance/maintain-overtime/import-click-dots-button.png) - -10. Select the csv file to import - - ![import-select-csv-file](../../../../static/img/usage/payroll/maintenance/maintain-overtime/import-select-csv-file.png) - -11. Click on the Next button - - ![import-next](../../../../static/img/usage/payroll/maintenance/maintain-overtime/import-next.png) - -12. Import from row 1, select Comma, select " for the text delimiter - - ![import-import](../../../../static/img/usage/payroll/maintenance/maintain-overtime/import-import.png) - -13. Select the field for every column - - ![import-select-field-1](../../../../static/img/usage/payroll/maintenance/maintain-overtime/import-select-field-1.png) - -14. Make sure you have select all the fields for the date, employee, code & workunit. - - ![import-select-field-2](../../../../static/img/usage/payroll/maintenance/maintain-overtime/import-select-field-2.png) - -15. Change the Import from row to **2** and click the finish button - - ![import-finish](../../../../static/img/usage/payroll/maintenance/maintain-overtime/import-finish.png) - -16. Click on the Close button after done importing the data - - ![import-close](../../../../static/img/usage/payroll/maintenance/maintain-overtime/import-close.png) - -17. Click on the Save icon - - ![import-last-save](../../../../static/img/usage/payroll/maintenance/maintain-overtime/import-last-save.png) diff --git a/docs/usage/payroll/maintenance/maintain-payment-method.md b/docs/usage/payroll/maintenance/maintain-payment-method.md deleted file mode 100644 index 736005a..0000000 --- a/docs/usage/payroll/maintenance/maintain-payment-method.md +++ /dev/null @@ -1,80 +0,0 @@ ---- -title: Maintain Payment Method -description: A guide to maintain payment method -slug: /usage/payroll/maintenance/maintain-payment-method -tags: ["SQL Payroll", "Payment Method"] ---- - -## Introduction - -- Maintain Payment Method helps you to categorise how you want to pay your employee -- This is useful when you have different type of banks (MBB, HLB & etc) and method of paying (Cash, Cheque, Transfer) -- At here, we can also set the **auto rounding** so that all payout is round to the nearest 5 cent - - - eg: Employee total pay = RM1234.**56** - - After auto rounding, it will become RM1234.**55** - -## Setup - -1. Navigate to the maintain payment method panel - - ![navigate](../../../../static/img/usage/payroll/maintenance/maintain-payment-method/navigate.png) - -2. Click new to create new payment method - - ![new](../../../../static/img/usage/payroll/maintenance/maintain-payment-method/new.png) - -3. Key in the information needed (Click save after configured) - - ![key-in-1](../../../../static/img/usage/payroll/maintenance/maintain-payment-method/key-in-1.png) - - ![key-in-2](../../../../static/img/usage/payroll/maintenance/maintain-payment-method/key-in-2.png) - -## Explanation of auto rounding - -### Without auto rounding - -![5](../../../../static/img/usage/payroll/maintenance/maintain-payment-method/5.png) - -- After month end will show **no adjustment** -- However, adjustment can be manually change by clicking the up/down arrow beside it - -![6](../../../../static/img/usage/payroll/maintenance/maintain-payment-method/6.png) - -### With auto rounding - -- After month end will have **auto adjustment** to nearest 5 cents - -![7](../../../../static/img/usage/payroll/maintenance/maintain-payment-method/7.png) - -## Usage - -:::info -This particular settings can be applied to several places dynamically -::: - -### New Payroll - -- You able to process payroll either Final, Frequency or Ad Hoc basis - -### Open Payroll - -- You can re-open payroll processed to check or edit - -### Open Pending Payroll - -- This pending payroll allowed to input the pending amount before final payroll process -- You may input the following type of pending amount: - - Wages - - Allowance - - Paid leave - - Overtime - - Claims - - Director Fees - - Commission - - Bonus - - Loan - - Deduction - - Unpaid leave - - Advance - - CP38 diff --git a/docs/usage/payroll/maintenance/maintain-wages.md b/docs/usage/payroll/maintenance/maintain-wages.md deleted file mode 100644 index b0837c9..0000000 --- a/docs/usage/payroll/maintenance/maintain-wages.md +++ /dev/null @@ -1,43 +0,0 @@ ---- -title: Maintain Wages -description: A guide to maintain wages -slug: /usage/payroll/maintenance/maintain-wages -tags: ["SQL Payroll", "Wages"] ---- - -## Introduction - -:::info Features - -- Enable to set different other contribution for Bonus, Director Fee, Pay Leave and Unpaid Leave. -- Maintain the Employee & Employer EPF Rate. -- Maintain the working hour and day per month. -- Enable the Overtime Calculation base on Maintain Employee Setting. It will calculate the OT based on Wages amount in Maintain Employee. - -::: - -- Setting up maintain wages helps you to categorise the type of wages an employee received. -- This would affect the types of contribution that they need to provide (EPF/SOCSO/PCB & etc) -- This is especially useful if you have different types of worker such as - permanent worker, contract worker, foreign worker & etc - -## Setup - -1. Navigate to **Payroll** > **Maintenance** > **Maintain Wages** - - ![maintain-wages](../../../../static/img/usage/payroll/maintenance/maintain-wages/maintain-wages.png) - -2. Click new to create new wages type - - ![new](../../../../static/img/usage/payroll/maintenance/maintain-wages/new.png) - -3. Key in the info and tick the contribution needed - - ![fill-in-1](../../../../static/img/usage/payroll/maintenance/maintain-wages/fill-in-1.png) - ![fill-in-2](../../../../static/img/usage/payroll/maintenance/maintain-wages/fill-in-2.png) - -## Common wages setup - -| Local Permanent Workers | Foreign Workers | -| ----------------------------------------------------------------------------- | ------------------------------------------------------------- | -| ![local-permanent](../../../../static/img/usage/payroll/maintenance/maintain-wages/local-permanent.png) | ![foreign](../../../../static/img/usage/payroll/maintenance/maintain-wages/foreign.png) | diff --git a/docs/usage/payroll/opening-balance.md b/docs/usage/payroll/opening-balance.md deleted file mode 100644 index db571ef..0000000 --- a/docs/usage/payroll/opening-balance.md +++ /dev/null @@ -1,52 +0,0 @@ ---- -title: Opening Balance -description: A guide to maintain opening balance of employees -slug: /usage/payroll/opening-balance -tags: ["SQL Payroll", "Opening Balance"] ---- - -## Introduction - -Maintain employee’s opening balance is done when the respective employee enter the company in a month **later than January**. - -The previous PCB amount is **needed to key in so that the system can correctly calculate** the PCB amount that’s needed to pay every month. - -## Setup - -1. Navigate to **Payroll** > **Open Payroll** - - ![navigate](../../../static/img/usage/payroll/opening-balance/navigate.png) - -2. Double click on the payroll year to open it - - ![open](../../../static/img/usage/payroll/opening-balance/open.png) - -3. Double click on the transaction section under "**Opening**" - - ![open-transaction](../../../static/img/usage/payroll/opening-balance/open-transaction.png) - -4. Select the employee by double clicking on its name - - ![select-employee](../../../static/img/usage/payroll/opening-balance/select-employee.png) - -5. Key in all the employee’s opening balance information - - ![fill-in-employee-details](../../../static/img/usage/payroll/opening-balance/fill-in-employee-details.png) - - :::info - - For the General part can enter information accordign to the EA form - For others part Employee need to know whether they have any of it in previous employment - ::: - -## Mapping of SQL "opening" to EA form - -![mapping](../../../static/img/usage/payroll/opening-balance/mapping.png) - -## Special note for additional EPF and PCB - -- Additional EPF and additional PCB are used when additional remuneration (bonus, commission, paid leave) is given. -- In the EA form, normal EPF and additional EPF is group into one. -- However, SQL recommend users to split the amount for a more detail input. - -![additional-epf-pcb](../../../static/img/usage/payroll/opening-balance/additional-epf-pcb.png) diff --git a/docs/usage/payroll/recurring-payroll.md b/docs/usage/payroll/recurring-payroll.md deleted file mode 100644 index 1e90e30..0000000 --- a/docs/usage/payroll/recurring-payroll.md +++ /dev/null @@ -1,60 +0,0 @@ ---- -title: Recurring Payroll -description: A guide to process recurring payroll for advance paid, allowance and overtime -slug: /usage/payroll/recurring-payroll -tags: ["SQL Payroll", "Recurring", "Recurring Payroll", "Advance Paid", "Allowance", "Overtime"] ---- - -## Setup - -:::info -This allow you to repeat the same amount of payment for the next month if you have already keyed in the advance payment, allowance or overtime for one month’s month end payroll -::: - -1. Right click on previous month’s payroll > **Open** > **Open Overtime** - - ![open-overtime](../../../static/img/usage/payroll/recurring-payroll/open-overtime.png) - -2. Highlight all the Overtimes by clicking on the entries while pressing down on the SHIFT button. - - ![highlight](../../../static/img/usage/payroll/recurring-payroll/highlight.png) - -3. Right click and then Copy - - ![copy](../../../static/img/usage/payroll/recurring-payroll/copy.png) - -4. Go to **Payroll** > **Open Pending Payroll** and select Overtime - - ![select-overtime](../../../static/img/usage/payroll/recurring-payroll/select-overtime.png) - -5. Right-click on the white area and select paste - - ![paste](../../../static/img/usage/payroll/recurring-payroll/paste.png) - -6. Select all the entries by clicking on it while pressing down on the SHIFT button. then right- click and select “batch edit value”. - - ![select-batch-edit](../../../static/img/usage/payroll/recurring-payroll/select-batch-edit.png) - -7. Change the Column to “Post Date” - - ![change-column-post-date](../../../static/img/usage/payroll/recurring-payroll/change-column-post-date.png) - -8. Key in the post date of you next month’s payroll and press Execute. - - ![key-in-post-date](../../../static/img/usage/payroll/recurring-payroll/key-in-post-date.png) - -9. Press OK and Close the window. - - ![ok-confirm](../../../static/img/usage/payroll/recurring-payroll/ok-confirm.png) - -10. You will see that the Post Date has change. Press Save. The changes have been successfully saved once the icon turns grey colour. - - ![save](../../../static/img/usage/payroll/recurring-payroll/save.png) - -11. When you process your next month’s payroll. It will capture these values. - - For example, in September 2021’s month end copied from August 2021: - - ![example](../../../static/img/usage/payroll/recurring-payroll/example.png) - -12. Repeat the same steps for allowances, and advance payments. diff --git a/docs/usage/payroll/setup.md b/docs/usage/payroll/setup.md new file mode 100644 index 0000000..ff91341 --- /dev/null +++ b/docs/usage/payroll/setup.md @@ -0,0 +1,565 @@ +--- +sidebar_position: 1 +title: Setup +description: A setup for payroll maintenance +slug: /usage/payroll/setup +tags: ["SQL Payroll", "Setup"] +--- + +## Maintain Allowance + +:::info Features + +- Setting up maintain allowance helps you to categorize the type of allowance that employee entitle. +- This would affect the types of contribution that they need to provide (EPF/SOCSO/PCB & etc) +- This is especially useful if you have different types of allowance like Petrol, Handphone, Meal Allowance base on different company different entitlement. + +::: + +1. Navigate to **Payroll** > **Maintenance** > **Maintain Allowance** + + ![navigate](../../../static/img/usage/payroll/maintenance/maintain-allowance/navigate.png) + +2. Click New to generate a New Allowance + + ![new](../../../static/img/usage/payroll/maintenance/maintain-allowance/new.png) + +3. Insert the info that you want to set in maintain allowance + + ![insert](../../../static/img/usage/payroll/maintenance/maintain-allowance/insert.png) + + 1. Insert the Code of the Allowance that you want to generate. + 2. Insert the Description of the allowance. + 3. Insert the fixed amount for the allowance, eg: Handphone allowance is fixed RM 300 for every employee then you can insert the rate of RM 300 but if there is not then you can left it blank. + 4. If the allowance is tax exempted then you may insert the tax exempted code. + 5. Tick or un-tick the contribution of the allowance. + +4. After create the master file of Allowance, then you can add the fixed allowance for certain employee which have the allowance monthly + + ![add-fixed-allowance](../../../static/img/usage/payroll/maintenance/maintain-allowance/add-fixed-allowance.png) + +5. Alternatively, you can insert the allowance after process month end. + + ![process-month-end-add-allowance](../../../static/img/usage/payroll/maintenance/maintain-allowance/process-month-end-add-allowance.png) + + 1. Click on the "**Overtime**" + 2. CLick on the ➕ to add the employee then fill in the overtime + +6. Allowance feature is same with deduction feature, all the allowance is not compulsory just depend on company policy. + +## Maintain Claim + +:::info Feature + +- Maintain Claim is used to define the types of claims available to employees, as well as set default amounts and limits. +- For example, for travel claims, accommodation expenses, and communication expenses, you can set monthly or per-claim limits, set fixed amounts, or leave them blank for employees to fill in. +- This can impact the reimbursement process, monthly reimbursement review, and payroll calculations. + +::: + +1. Navigate to **Payroll** > **Maintenance** > **Maintain claim** + + ![navigate](../../../static/img/usage/payroll/maintenance/maintain-claim/navigate.png) + +2. Click New to generate a New Claim + + ![new](../../../static/img/usage/payroll/maintenance/maintain-claim/new.png) + +3. Insert the info that you want to set in maintain claim + + ![insert](../../../static/img/usage/payroll/maintenance/maintain-claim/insert.png) + + 1. Insert the Code of the Claim that you want to generate. + 2. Insert the Description of the claim. + 3. Insert the Yearly Limit for the claim, eg: RM 2000 for every employee then you can insert the rate of RM 2000 but if there is no limit then you can left it blank as Unlimited by click the 'Set as Unlimited' button. + 4. Insert the Monthly Limit for the claim, eg: RM 200 for every employee then you can insert the rate of RM 200 but if there is no limit then you can left it blank as Unlimited by click the 'Set as Unlimited' button. + +4. After create the master file of Claim, then you can add the fixed claim's Yearly Limit and Monthly Limit for certain employee which have the claim. + + ![add-fixed-claim-limit](../../../static/img/usage/payroll/maintenance/maintain-claim/add-fixed-claim.png) + +5. Alternatively, you can insert the claim after process month end. + + ![process-month-end-add-claim](../../../static/img/usage/payroll/maintenance/maintain-claim/process-month-end-add-claim.png) + + 1. Click on the "**Claim**" + 2. CLick on the ➕ to add the employee then fill in the claim + +## Maintain Commission + +1. Set the commission for employee + + - Navigate to **Payroll** > **Maintenance** > **Maintain Commission** + - Create new for a new commission rate + + ![maintain-commision](../../../static/img/usage/payroll/maintenance/maintain-commission/maintain-commission.png) + +2. Open pending payroll for commission + + - Payroll/Open pending payroll/Commission + - Insert the employee and amount + + ![pending-payroll](../../../static/img/usage/payroll/maintenance/maintain-commission/pending-payroll.png) + +3. Process month end + + 1. Method 1 : Final Payroll Process + + - Navigate to **Payroll** > **New payroll** > **Process** + + ![process-month-end-1](../../../static/img/usage/payroll/maintenance/maintain-commission/process-month-end-1.png) + + 2. Method 2 : Process Adhoc + + - Tick EPF & PCB & Monthly Fixed Allowance/Pending Payroll + + ![process-month-end-2](../../../static/img/usage/payroll/maintenance/maintain-commission/process-month-end-2.png) + + 3. Tick Commission + + ![tick-comm](../../../static/img/usage/payroll/maintenance/maintain-commission/tick-comm.png) + +4. Double click the employee that you gave commission + + ![check-employee](../../../static/img/usage/payroll/maintenance/maintain-commission/check-employee.png) + +5. Refer to commission column + + ![result](../../../static/img/usage/payroll/maintenance/maintain-commission/result.png) + +## Maintain Contribution + +:::info +Learn how to set the Employee/Employer EPF rate, OT calculation and Tax calculation following this guide +::: + +- Setting up maintain contribution helps you to categorise the type of contribution an employee received +- This would affect the types of contribution that they need to provide (EPF/SOCSO/PCB & etc) +- This is especially useful if you have different types of worker such as permanent worker, contract worker, foreign worker & etc + +1. Navigate to **Payroll** > **Maintenance** > **Maintain Contribution** + + ![navigate](../../../static/img/usage/payroll/maintenance/maintain-contribution/navigate.png) + +2. Click new to create new contribution + + ![new](../../../static/img/usage/payroll/maintenance/maintain-contribution/new.png) + +3. Key in the info and tick the contribution needed + +![key-in-1](../../../static/img/usage/payroll/maintenance/maintain-contribution/key-in-1.png) +![key-in-2](../../../static/img/usage/payroll/maintenance/maintain-contribution/key-in-2.png) + +### Common contribution setup + +| Local Permanent Workers | Foreign Workers | +| ------------------------------------------------------------------------------------ | -------------------------------------------------------------------- | +| ![local-permanent](../../../static/img/usage/payroll/maintenance/maintain-contribution/local-permanent.png) | ![foreign](../../../static/img/usage/payroll/maintenance/maintain-contribution/foreign.png) | + +### Explanation of terms in Maintain Contribution panel + +![explanation-1](../../../static/img/usage/payroll/maintenance/maintain-contribution/explanation-1.png) + +![explanation-2](../../../static/img/usage/payroll/maintenance/maintain-contribution/explanation-2.png) + +![explanation-3](../../../static/img/usage/payroll/maintenance/maintain-contribution/explanation-3.png) + +## Maintain Deduction + +:::info Features + +Maintain Deductions is used to configure employee payroll deductions, such as personal loan deductions, company advance deductions, lateness deductions, and restaurant deductions. + +Deductions can be fixed amounts or percentages; once configured, they are automatically deducted from payroll. + +Deductions may affect net pay, tax calculations, and the inclusion or exclusion of contributions such as EPF/SOCSO. These settings should be based on company policies and regulations. + +::: + +1. Navigate to **Payroll** > **Maintenance** > **Maintain Deduction** + + ![navigate](../../../static/img/usage/payroll/maintenance/maintain-deduction/navigate.png) + +2. Click New to generate a New Deduction + + ![new](../../../static/img/usage/payroll/maintenance/maintain-deduction/new.png) + +3. Insert the info that you want to set in maintain deduction + + ![insert](../../../static/img/usage/payroll/maintenance/maintain-deduction/insert.png) + + 1. Insert the Code of the Deduction that you want to generate. + 2. Insert the Description of the deduction. + 3. Insert the fixed amount for the deduction, eg: Loan deduction is fixed RM 100 for every employee then you can insert the rate of RM 100 but if there is not then you can left it blank. + 4. Select the type of the deduction you want (General / Zakat / Tabung Haji / PTPTN). + 5. Tick or un-tick the contribution of the deduction. + +4. After create the master file of Deduction, then you can add the fixed deduction for certain employee which have the deduction monthly + + ![add-fixed-deduction](../../../static/img/usage/payroll/maintenance/maintain-deduction/add-fixed-deduction.png) + +5. Alternatively, you can insert the deduction after process month end. + + ![process-month-end-add-deduction](../../../static/img/usage/payroll/maintenance/maintain-deduction/process-month-end-add-deduction.png) + + 1. Click on the "**Deduction**" + 2. CLick on the ➕ to add the employee then fill in the deduction + +6. Deduction feature is same with allowance feature, all the deduction is not compulsory just depend on company policy. + +## Maintain Employee's Opening Balance + +- Maintain employee’s opening balance is done when the respective employee enter the company in a month **later than January**. +- The previous PCB amount is **needed to key in so that the system can correctly calculate** the PCB amount that’s needed to pay every month. + +1. Navigate to the **Open Payroll** + + ![navigate](../../../static/img/usage/payroll/maintenance/maintain-employee-opening-balance/navigate.png) + +2. Double click the year in Open Payroll + + ![open-payroll](../../../static/img/usage/payroll/maintenance/maintain-employee-opening-balance/open-payroll.png) + +3. Double click the transaction under ‘Opening’ + + ![open-txn](../../../static/img/usage/payroll/maintenance/maintain-employee-opening-balance/open-txn.png) + +4. Select the employee by double clicking on the name + + ![select-employee](../../../static/img/usage/payroll/maintenance/maintain-employee-opening-balance/select-employee.png) + +5. Key in all the employee’s opening balance information + + ![key-in-employee-details](../../../static/img/usage/payroll/maintenance/maintain-employee-opening-balance/key-in-employee-details.png) + +### Mapping of SQL 'opening' to EA form + +![mapping](../../../static/img/usage/payroll/maintenance/maintain-employee-opening-balance/mapping.png) + +### Special note for additional EPF and additional PCB + +- Additional EPF and additional PCB are used when additional remuneration (bonus, commission, paid leave) is given. +- In the EA form, normal EPF and additional EPF is group into one. +- However, SQL recommend users to split the amount for a more detail input. + +![notes](../../../static/img/usage/payroll/maintenance/maintain-employee-opening-balance/notes.png) + +:::info +Frequency – Where one company will pay salary **twice or more times** in **a Month**. +::: + +## Maintain Frequency + +1. Navigate to **Payroll** > **Maintenance** > **Maintain Frequency** + + ![maintain-frequency](../../../static/img/usage/payroll/maintenance/maintain-frequency/maintain-frequency.png) + +2. Click on **New** to preset your contribution. + + ![new](../../../static/img/usage/payroll/maintenance/maintain-frequency/new.png) + +3. Go to **Human Resource** > **Maintain Employee**, Select the particular Employee and then Go to **Payroll Info Tab** and set the Frequency According to the Maintenance Frequency respectively. + + ![set-freq-1](../../../static/img/usage/payroll/maintenance/maintain-frequency/set-freq-1.png) + +4. After save, you can check the allowance the employee is having. In this example, the employee Nicole has an Fixed Allowance of RM 230. + + ![set-freq-2](../../../static/img/usage/payroll/maintenance/maintain-frequency/set-freq-2.png) + +5. Next, go to **Payroll** > **New payroll** > **Frequency** + + ![frequency](../../../static/img/usage/payroll/maintenance/maintain-frequency/frequency.png) + + 1 Select the Frequency as you Set in Maintenance Frequency (EG: Half). + + 2 The Employee/s that u have set as the Frequency type in Maintain Employee will show in this column + + 3 Tick the Sequence that u wan to process. + + 4 Click PROCESS + +6. The following result below will show in the **HALF MONTH FREQUENCY PAYROLL**. + + ![result-1](../../../static/img/usage/payroll/maintenance/maintain-frequency/result-1.png) + +7. When it is time to do month end, click on Payroll, look for New Payroll and click on Final Month End to process. + + ![result-2](../../../static/img/usage/payroll/maintenance/maintain-frequency/result-2.png) + +8. Select the Employee ( Nicole ) that you’ve process Frequency. The following is an example result of the Employee that had process Frequency. + + - Wages - [2800 (Basic) – 1400 (Frequency) = 1400 ] + - Allowance - [ 230 (Fixed) – 115 (Frequency) = 115 ] + + ![final-result](../../../static/img/usage/payroll/maintenance/maintain-frequency/final-result.png) + +## Maintain Overtime + +:::info Features + +- Setting up maintain overtime helps you to categorize the type of overtime that company have. +- This would affect the types of contribution that they need to provide (EPF/SOCSO/PCB & etc) +- This setting will bring impact of the calculation of overtime. + +::: + +### Process Overtime After Month End + +1. Click on **Payroll** > **Maintenance** > **Maintain Overtime** + + ![after-maintain-overtime](../../../static/img/usage/payroll/maintenance/maintain-overtime/after-maintain-overtime.png) + +2. In the list, you can find some default overtime settings. Click on **New** to generate a custom one + + ![after-new](../../../static/img/usage/payroll/maintenance/maintain-overtime/after-new.png) + +3. Key-in Overtime details as below + + ![after-enter-details](../../../static/img/usage/payroll/maintenance/maintain-overtime/after-enter-details.png) + + - Insert the **Code** and **Description** of the overtime that you want to generate. + - Insert the **Rate** of the overtime, eg : the overtime rate is 1.5 as per overtime amount or double, triple of the overtime amount. + - **Unit Type** is to set the overtime calculation by hourly or by daily. + -Set the contribution of overtime with EPF, SOCSO, PCB, EIS etc. + +4. After that, when we need to process the payroll at the month end. Navigate to **Payroll** > **New Payroll** + + ![after-navigate-new-payroll](../../../static/img/usage/payroll/maintenance/maintain-overtime/after-navigate-new-payroll.png) + +5. Click **Final**, and click on **Process** + + ![after-click-process](../../../static/img/usage/payroll/maintenance/maintain-overtime/after-click-process.png) + +6. Click on any employee + + ![after-click-employee](../../../static/img/usage/payroll/maintenance/maintain-overtime/after-click-employee.png) + +7. Click on the "**Overtime**" + + ![after-click-overtime](../../../static/img/usage/payroll/maintenance/maintain-overtime/after-click-overtime.png) + +8. Click on the ➕ to add the info you want + + ![after-click-plus](../../../static/img/usage/payroll/maintenance/maintain-overtime/after-click-plus.png) + +9. Click on the "**Code**" to choose the overtime type + + ![after-select-code](../../../static/img/usage/payroll/maintenance/maintain-overtime/after-select-code.png) + +10. Key in the work unit as overtime hour, for example if Lee hong Wai overtime for 2 hours on that particular day, just key in numbering as 2 will do + + ![after-key-overtime-hour](../../../static/img/usage/payroll/maintenance/maintain-overtime/after-key-overtime-hour.png) + +11. Alternatively, you can click on the button beside Trans Date, and tick the column name Work Unit As Time + + ![after-tick-column](../../../static/img/usage/payroll/maintenance/maintain-overtime/after-tick-column.png) + +12. After call out the column of Work Unit As Time, you may key in he overtime minutes also (eg: 2 hours and 09 mins) + ![after-key-overtime-minutes](../../../static/img/usage/payroll/maintenance/maintain-overtime/after-key-overtime-minutes.png) + +### Process Overtime Before Month End + +1. Click on payroll, open pending payroll. + + ![before-open-pending](../../../static/img/usage/payroll/maintenance/maintain-overtime/before-open-pending.png) + +2. Double Click on **Overtime** + + ![before-open](../../../static/img/usage/payroll/maintenance/maintain-overtime/before-open.png) + +3. Click on Append icon + + ![before-append-1](../../../static/img/usage/payroll/maintenance/maintain-overtime/before-append-1.png) + + ![before-append-2](../../../static/img/usage/payroll/maintenance/maintain-overtime/before-append-2.png) + +4. Select employee + + ![before-select-employee](../../../static/img/usage/payroll/maintenance/maintain-overtime/before-select-employee.png) + +5. Select **Overtime Code** + + ![before-select-code](../../../static/img/usage/payroll/maintenance/maintain-overtime/before-select-code.png) + +6. Tick and enable the **Work Unit As Time** + + ![before-enable-work-unit-as-time](../../../static/img/usage/payroll/maintenance/maintain-overtime/before-enable-work-unit-as-time.png) + +7. Enter the time in the work unit as time, for example Lee Chong Wai worked overtime for 2hours and 30minutes, key in as shown below + + ![before-enter-time](../../../static/img/usage/payroll/maintenance/maintain-overtime/before-enter-time.png) + +8. Repeat the same steps as shown above for the other overtime records and save after all done + + ![before-repeat](../../../static/img/usage/payroll/maintenance/maintain-overtime/before-repeat.png) + +9. During month end, + + ![before-month-end-1](../../../static/img/usage/payroll/maintenance/maintain-overtime/before-month-end-1.png) + + ![before-month-end-2](../../../static/img/usage/payroll/maintenance/maintain-overtime/before-month-end-2.png) + +10. Double click on the employee’s name or code + + ![before-click-employee](../../../static/img/usage/payroll/maintenance/maintain-overtime/before-click-employee.png) + +11. Click on the blue **Overtime** words + + ![before-click-overtime](../../../static/img/usage/payroll/maintenance/maintain-overtime/before-click-overtime.png) + +12. The overtime records entered in pending payroll will be shown + + ![before-overtime-records](../../../static/img/usage/payroll/maintenance/maintain-overtime/before-overtime-records.png) + +### Import Excel Overtime Format into SQL Payroll + +1. Prepare a table in Microsoft Excel as shown in the image below + + ![import-excel](../../../static/img/usage/payroll/maintenance/maintain-overtime/import-excel.png) + + :::tip + + - **Date**: Trans Date + - **Employee**: Code of Employee + - **OT**: Code of Overtime that created in Maintain Overtime + - **Unit**: Work Unit (count 2.50 = 150 minutes/2 and a half hours) + ::: + +2. After done the table, go to file + + ![import-go-to-file](../../../static/img/usage/payroll/maintenance/maintain-overtime/import-go-to-file.png) + +3. Click on Save as + + ![import-save-as](../../../static/img/usage/payroll/maintenance/maintain-overtime/import-save-as.png) + +4. Select CSV file type + + ![import-select-csv](../../../static/img/usage/payroll/maintenance/maintain-overtime/import-select-csv.png) + +5. Click Save + + ![import-save](../../../static/img/usage/payroll/maintenance/maintain-overtime/import-save.png) + +6. Go to SQL Payroll > Payroll > Open Pending Payroll... + + ![import-open-pending-payroll](../../../static/img/usage/payroll/maintenance/maintain-overtime/import-open-pending-payroll.png) + +7. Double click on the Overtime + + ![import-click-overtime](../../../static/img/usage/payroll/maintenance/maintain-overtime/import-click-overtime.png) + +8. Click on the Import Data icon + + ![import-click-data](../../../static/img/usage/payroll/maintenance/maintain-overtime/import-click-data.png) + +9. Click on the … (3 dots button) to select your data source, + + ![import-click-dots-button](../../../static/img/usage/payroll/maintenance/maintain-overtime/import-click-dots-button.png) + +10. Select the csv file to import + + ![import-select-csv-file](../../../static/img/usage/payroll/maintenance/maintain-overtime/import-select-csv-file.png) + +11. Click on the Next button + + ![import-next](../../../static/img/usage/payroll/maintenance/maintain-overtime/import-next.png) + +12. Import from row 1, select Comma, select " for the text delimiter + + ![import-import](../../../static/img/usage/payroll/maintenance/maintain-overtime/import-import.png) + +13. Select the field for every column + + ![import-select-field-1](../../../static/img/usage/payroll/maintenance/maintain-overtime/import-select-field-1.png) + +14. Make sure you have select all the fields for the date, employee, code & workunit. + + ![import-select-field-2](../../../static/img/usage/payroll/maintenance/maintain-overtime/import-select-field-2.png) + +15. Change the Import from row to **2** and click the finish button + + ![import-finish](../../../static/img/usage/payroll/maintenance/maintain-overtime/import-finish.png) + +16. Click on the Close button after done importing the data + + ![import-close](../../../static/img/usage/payroll/maintenance/maintain-overtime/import-close.png) + +17. Click on the Save icon + + ![import-last-save](../../../static/img/usage/payroll/maintenance/maintain-overtime/import-last-save.png) + +## Maintain Payment Method + +- Maintain Payment Method helps you to categorise how you want to pay your employee +- This is useful when you have different type of banks (MBB, HLB & etc) and method of paying (Cash, Cheque, Transfer) +- At here, we can also set the **auto rounding** so that all payout is round to the nearest 5 cent + + - eg: Employee total pay = RM1234.**56** + - After auto rounding, it will become RM1234.**55** + +1. Navigate to the maintain payment method panel + + ![navigate](../../../static/img/usage/payroll/maintenance/maintain-payment-method/navigate.png) + +2. Click new to create new payment method + + ![new](../../../static/img/usage/payroll/maintenance/maintain-payment-method/new.png) + +3. Key in the information needed (Click save after configured) + + ![key-in-1](../../../static/img/usage/payroll/maintenance/maintain-payment-method/key-in-1.png) + + ![key-in-2](../../../static/img/usage/payroll/maintenance/maintain-payment-method/key-in-2.png) + +### Explanation of auto rounding + +**Without auto rounding** + +![5](../../../static/img/usage/payroll/maintenance/maintain-payment-method/5.png) + +- After month end will show **no adjustment** +- However, adjustment can be manually change by clicking the up/down arrow beside it + +![6](../../../static/img/usage/payroll/maintenance/maintain-payment-method/6.png) + +**With auto rounding** + +- After month end will have **auto adjustment** to nearest 5 cents + +![7](../../../static/img/usage/payroll/maintenance/maintain-payment-method/7.png) + +## Maintain Wages + +:::info Features + +- Enable to set different other contribution for Bonus, Director Fee, Pay Leave and Unpaid Leave. +- Maintain the Employee & Employer EPF Rate. +- Maintain the working hour and day per month. +- Enable the Overtime Calculation base on Maintain Employee Setting. It will calculate the OT based on Wages amount in Maintain Employee. + +::: + +- Setting up maintain wages helps you to categorise the type of wages an employee received. +- This would affect the types of contribution that they need to provide (EPF/SOCSO/PCB & etc) +- This is especially useful if you have different types of worker such as + permanent worker, contract worker, foreign worker & etc + +1. Navigate to **Payroll** > **Maintenance** > **Maintain Wages** + + ![maintain-wages](../../../static/img/usage/payroll/maintenance/maintain-wages/maintain-wages.png) + +2. Click new to create new wages type + + ![new](../../../static/img/usage/payroll/maintenance/maintain-wages/new.png) + +3. Key in the info and tick the contribution needed + + ![fill-in-1](../../../static/img/usage/payroll/maintenance/maintain-wages/fill-in-1.png) + ![fill-in-2](../../../static/img/usage/payroll/maintenance/maintain-wages/fill-in-2.png) + +### Common wages setup + +| Local Permanent Workers | Foreign Workers | +| ----------------------------------------------------------------------------- | ------------------------------------------------------------- | +| ![local-permanent](../../../static/img/usage/payroll/maintenance/maintain-wages/local-permanent.png) | ![foreign](../../../static/img/usage/payroll/maintenance/maintain-wages/foreign.png) | diff --git a/docs/usage/report.md b/docs/usage/report.md new file mode 100644 index 0000000..3830b25 --- /dev/null +++ b/docs/usage/report.md @@ -0,0 +1,76 @@ +--- +sidebar_position: 6 +title: Report +description: General topics of Report in SQL Payroll +slug: /usage/report +tags: ["SQL Payroll", "Report","EA form"] +--- + +## List of Reports + +| Report | Description | +| ---------------------------------- | ------------------------------------------------------------------------------------------------------ | +| **Print Cheque Listing Report** | Help you to generate the individual pay amount for banker | +| **Print Coinage Report** | Help you to count the number of money papers/coins required for the pay amount | +| **Print Credit Bank Report** | Help you to generate the individual pay amount via Direct Transfer service | +| **Print Pay Slip** | Enable to generate the pay slip for the employees selected | +| **Print Payroll Summary** | Help you to analyse the payroll for a month like wages, claims, unpaid leave, allowance, etc | +| **Print Yearly Individual Report** | You able to choose the employee to view the detail 12 months payroll | +| **Print Yearly Payroll Report** | Generate 12 months payroll for individual employees | +| **Statutory Reports** | You able to generate the government reports, such as EPF Borang A, Income Tax EA, Sosco Borang 8A, etc | + +## EA Form + +### Print EA Form + +1. Let's go to Payroll -> Statutary Reports (Yearly) -> Print Income Tax EA Form.. + + ![print-ea](../../static/img/usage/report/print-ea.png) + +2. Fill in the details in red box and click ▶️**Apply** + + ![fill-in](../../static/img/usage/report/fill-in.png) + +3. After the above steps, you will see the details of each employees + + :::info[Customization] + In SQL Payroll, we do support amending employee EA Form details before printing. Find out more [here](#customize-ea-form) + ::: + +4. Click on the **Print** button + + ![print](../../static/img/usage/report/print.png) + +5. Lastly, select the EA Form report you wish to print + + ![print-format](../../static/img/usage/report/print-format.png) + +### Customize EA Form + +:::info +Jump to **step 3** if you are coming from the **Print EA Form** section +::: + +1. Let's go to Payroll -> Statutary Reports (Yearly) -> Print Income Tax EA Form.. + + ![print-ea](../../static/img/usage/report/print-ea.png) + +2. fill in the details and click ▶️**Apply** + + ![fill-in](../../static/img/usage/report/fill-in.png) + +3. Click on the text **Customize EA Form** at your bottom right + + ![customize-ea](../../static/img/usage/report/customize-ea.png) + +4. Select the employee to amend and click **Customize** + + ![customize](../../static/img/usage/report/customize.png) + +5. Fill in the details you wish to amend and click **Save** ( diskette 💾) + + ![save](../../static/img/usage/report/save.png) + +6. Amended employee will be highlighted in yellow colour 🟡. + + ![highlight](../../static/img/usage/report/highlight.png) diff --git a/docs/usage/report/_category_.json b/docs/usage/report/_category_.json deleted file mode 100644 index a34b1c9..0000000 --- a/docs/usage/report/_category_.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "label": "Report", - "position": 6, - "link": { - "type": "generated-index", - "description": "General topics of Report in SQL Payroll", - "slug": "/usage/report" - } -} \ No newline at end of file diff --git a/docs/usage/report/ea-form.md b/docs/usage/report/ea-form.md deleted file mode 100644 index 036d42b..0000000 --- a/docs/usage/report/ea-form.md +++ /dev/null @@ -1,60 +0,0 @@ ---- -title: EA Form -description: EA Form Print guide -slug: /usage/report/ea-form -tags: ["SQL Payroll", "EA form"] ---- - -## Print EA Form - -1. Let's go to Payroll -> Statutary Reports (Yearly) -> Print Income Tax EA Form.. - - ![print-ea](../../../static/img/usage/report/print-ea.png) - -2. Fill in the details in red box and click ▶️**Apply** - - ![fill-in](../../../static/img/usage/report/fill-in.png) - -3. After the above steps, you will see the details of each employees - - :::info[Customization] - In SQL Payroll, we do support amending employee EA Form details before printing. Find out more [here](#customize-ea-form) - ::: - -4. Click on the **Print** button - - ![print](../../../static/img/usage/report/print.png) - -5. Lastly, select the EA Form report you wish to print - - ![print-format](../../../static/img/usage/report/print-format.png) - -## Customize EA Form - -:::info -Jump to **step 3** if you are coming from the **Print EA Form** section -::: - -1. Let's go to Payroll -> Statutary Reports (Yearly) -> Print Income Tax EA Form.. - - ![print-ea](../../../static/img/usage/report/print-ea.png) - -2. fill in the details and click ▶️**Apply** - - ![fill-in](../../../static/img/usage/report/fill-in.png) - -3. Click on the text **Customize EA Form** at your bottom right - - ![customize-ea](../../../static/img/usage/report/customize-ea.png) - -4. Select the employee to amend and click **Customize** - - ![customize](../../../static/img/usage/report/customize.png) - -5. Fill in the details you wish to amend and click **Save** ( diskette 💾) - - ![save](../../../static/img/usage/report/save.png) - -6. Amended employee will be highlighted in yellow colour 🟡. - - ![highlight](../../../static/img/usage/report/highlight.png) diff --git a/docs/usage/report/report.md b/docs/usage/report/report.md deleted file mode 100644 index 97f6ef3..0000000 --- a/docs/usage/report/report.md +++ /dev/null @@ -1,20 +0,0 @@ ---- -sidebar_position: 1 -title: Reports -description: Reports available in SQL Payroll -slug: /usage/report/reports -tags: ["SQL Payroll", "Report"] ---- - -## List of Reports - -| Report | Description | -| ---------------------------------- | ------------------------------------------------------------------------------------------------------ | -| **Print Cheque Listing Report** | Help you to generate the individual pay amount for banker | -| **Print Coinage Report** | Help you to count the number of money papers/coins required for the pay amount | -| **Print Credit Bank Report** | Help you to generate the individual pay amount via Direct Transfer service | -| **Print Pay Slip** | Enable to generate the pay slip for the employees selected | -| **Print Payroll Summary** | Help you to analyse the payroll for a month like wages, claims, unpaid leave, allowance, etc | -| **Print Yearly Individual Report** | You able to choose the employee to view the detail 12 months payroll | -| **Print Yearly Payroll Report** | Generate 12 months payroll for individual employees | -| **Statutory Reports** | You able to generate the government reports, such as EPF Borang A, Income Tax EA, Sosco Borang 8A, etc | diff --git a/docs/usage/tools/_category_.json b/docs/usage/tools/_category_.json index 7f0beb2..04dedb5 100644 --- a/docs/usage/tools/_category_.json +++ b/docs/usage/tools/_category_.json @@ -1,6 +1,6 @@ { "label": "Tools", - "position": 3, + "position": 6, "link": { "type": "generated-index", "description": "General topics of Tools in SQL Payroll", diff --git a/docs/usage/tools/maintain-diy.md b/docs/usage/tools/maintain-diy.md new file mode 100644 index 0000000..de54f70 --- /dev/null +++ b/docs/usage/tools/maintain-diy.md @@ -0,0 +1,130 @@ +--- +sidebar_position: 3 +title: Maintain DIY +description: A guide of maintain diy +slug: /usage/tools/maintain-diy +tags: ["SQL Payroll", "Maintain DIY"] +--- + +## Introduction + +:::success[note] +This is **Additional Module** (DIY Fields & DIY Script Module) +::: + +1. The function and description: + + 1. **Field and Quick Form**: User can Self Create new User Define Field(s) & Design the Layout + 2. **Script**: Customise the Application + 3. **Calculation**: Override the build in Calculation (SQL Payroll ONLY) + 4. **View Template**: For Advance Form Mode + +![diy-intro](../../../static/img/usage/tools/maintain-diy/diy-intro.png) + +## Calculation + +User can override the build in Calculation/Formula to suite their requirement. The Language use is Pascal. + +**Available Calculation Types** + +1. **Generate Document Number**: Manipulate the Next Document Number Format. +2. **Leave Entitlement Policy**: Manipulate yearly Leave Entitlement +3. **Leave Entitlement Processor**: Manipulate Calculation of Year of working +4. **Leave Calculate Amount**: Manipulate the Leave Calculation Amount +5. **Leave Calculate BF**: Calculate how many leave can be Brought Forward if not fully taken +6. **Leave Attendance Reward**: Manipulate Reward for Perfect Attendance. +7. **Overtime Pay Rate**: Manipulate the Overtime Pay rate +8. **Payroll Rounding**: Manipulate the Net Pay Amount +9. **Bonus Wages**: Manipulate Bonus and Incentive Payments. +10. **Time Attendance OT Rule**: Manipulate Overtime Rules based on Attendance. +11. **Time Attendance Leave Rule**: Manipulate Leave Rules based on Attendance. +12. **Time Attendance Reward**: Manipulate Reward Rules based on Attendance. + +![diy-calculation-type](../../../static/img/usage/tools/maintain-diy/diy-calculation-type.png) + +### Example 1 - Leave Entitlement Processor - Calculate from Confirm Date + +Below is Example to change the Leave Entitlement Processor to be calculate from the Confirmation Date. + +1. Right Click at **Leave Entitlement Processor** and select **New Calculation**. + +![diy-example1-1](../../../static/img/usage/tools/maintain-diy/diy-example1-1.png) + +2. Click **New Button** and select any Formula which suit you & Click OK. + +![diy-example1-2](../../../static/img/usage/tools/maintain-diy/diy-example1-2.png) + +3. Enter any **Description** (eg Leave_Entitlement_Processor-Confirm Date) in the Description field (Only Alphanumeric & no spacing). + +4. In the **Script** look for the word *lJoinDate* & change it to *lConfirmDate*. + +![diy-example1-3](../../../static/img/usage/tools/maintain-diy/diy-example1-3.jpg) + +### Example 2 - Leave Calculate Amount - Unpaid Leave Amount Base on Working Day + +Below is example to change the Unpaid Leave Amount to base on Working Days in Maintain Contribution. + +1. **Right Click** at Leave Calculate Amount and select **New Calculation**. + +2. Click **New Button** and select any Formula which suit you & Click OK. + +![diy-example2-1](../../../static/img/usage/tools/maintain-diy/diy-example2-1.png) + +3. Enter any **Description** (eg Leave_Calculate_Amt-Unpaid) in the Description field (Only Alphanumeric & no spacing). + +4. In the **Script** look for the word *DaysBetweenStartAndEndDate* & change it to *WorkingDayPerMonth* or Copy below script & paste to the Script Section. + +```pascal +// Example - Leave Calculate Amount - Based On Employee Default Wages +uses DB, DateUtils; + +begin + Amount := DefaultWages / WorkingDayPerMonth; +end. +``` + +![diy-example2-2](../../../static/img/usage/tools/maintain-diy/diy-example2-2.png) + +5. Click **Compile button** to make sure is **Compile success**. + +6. Click **Save** button and click X to Close. + +7. Select the Item just created (eg Leave_Calculate_Amt-Unpaid) and click Ok button. + +8. Done & **Remember** to set it at **Maintain Leave Group** under the **Amount Column** for UL. + +### Example 3 - Limit Overtime Rate + +Below is example to set Maximum limit the Overtime Rate. + +1. **Right Click** at Overtime Pay Rate and select **New Calculation**. + +2. Click **New Button**. + +3. Enter any **Description** (eg Overtime_Max_Rate) in the Description field (Only Alphanumeric & no spacing) + +4. Copy below script & paste to the Script Section. + +```pascal +uses Math, DB; + +var V: Double; +begin + V := 0; + if OTAmount > 1500.00 then + V := 10.82 else //(1500/26/8) + V := (OTAmount / 26 /8); + + PayRate := SimpleRoundToEx(V, -2); +end. +``` + +![diy-example3-1](../../../static/img/usage/tools/maintain-diy/diy-example3-1.png) + +5. Click **Compile button** to make sure is **Compile success**. + +6. Click **Save** button and click X to Close. + +7. Select the Item just created (eg Overtime_Max_Rate) and click Ok button. + +8. Done & **Remember** to set it at **Maintain Overtime**. \ No newline at end of file diff --git a/docs/usage/tools/options.md b/docs/usage/tools/options.md new file mode 100644 index 0000000..261347b --- /dev/null +++ b/docs/usage/tools/options.md @@ -0,0 +1,48 @@ +--- +sidebar_position: 2 +title: Options +description: A guide of system default or personal setting +slug: /usage/tools/options +tags: ["SQL Payroll", "Options"] +--- + +## Introduction + +This is the System application settings. It can be set as Global or Personal Setting. + +![options-intro](../../../static/img/usage/tools/options/options-intro.jpg) + +## System Default Setting + +This is the setting is set and will apply to all user. + +1. Fields name and properties: + + 1. **Payroll Value** : Is set to how many decimal point to show Amount Column (Default is 2 Decimal Point). + 2. **Work Unit** : Is to set how many decimal point to show at the Work Unit Column (Default is 2 Decimal Point). + 3. **Rate** : Is to set how many decimal point to show at the Rate Column (Default is 2 Decimal Point). + 4. **Day** : Is to set how many decimal point to show at the Day Column for Leave Application (Default is 2 Decimal Point). + 5. **Rate Rounding Precision** : Is to set how many decimal point to keep for Rate Column (Default is 8 Decimal Point). + +2. **Auto Mark Finalize After Save PaySheet Changes.** Tick this option is wanted system to put indicator which employee you had done at PaySheet. + +![system-general-setting](../../../static/img/usage/tools/options/system-general-setting.png) + +3. You can choose the following password requirement: + + 1. **Maximum Password Age (days)**: Number of days to expire and change password. + 2. **Minimum Password Length**: Password length cannot less than the minimum. + 3. **Save Password History (0-10)**: Number of password history not allow to re-use + 4. Password combination of + - At least one Upper Case letter (A-Z) + - At least one Lower Case letter (a-z) + - At least one number (0-9) + - At least one non-alphanumeric character \!\$\%\^\&\*\(\)_\-\+\=\@\~\#\<\,\>\. + +![system-password-policy](../../../static/img/usage/tools/options/system-password-policy.png) + +## Personal Setting + +This is the setting changes is set for the Current Login user. + +![personal-general-setting](../../../static/img/usage/tools/options/personal-general-setting.png) \ No newline at end of file diff --git a/docs/usage/tools/sql-view.md b/docs/usage/tools/sql-view.md index aa3d703..a1ea83f 100644 --- a/docs/usage/tools/sql-view.md +++ b/docs/usage/tools/sql-view.md @@ -1,4 +1,5 @@ --- +sidebar_position: 1 title: SQL View description: A guide of setting user view on certain records and data slug: /usage/tools/sql-view diff --git a/static/img/faq/date-format/date-format-additional-setting.jpg b/static/img/faq/date-format/date-format-additional-setting.jpg new file mode 100644 index 0000000000000000000000000000000000000000..d5205ccf3e8baafef31e782e4add939d650535c6 GIT binary patch literal 52760 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 literal 0 HcmV?d00001 diff --git a/static/img/faq/date-format/date-format-change.jpg b/static/img/faq/date-format/date-format-change.jpg new file mode 100644 index 0000000000000000000000000000000000000000..2dd1985c458dfdf6eebfc1359d055908a9abc585 GIT binary patch literal 30916 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 Qpzwc>Zv9owl^+ZL2MYho82|tP literal 0 HcmV?d00001 diff --git a/static/img/faq/date-format/date-format-issue.jpg b/static/img/faq/date-format/date-format-issue.jpg new file mode 100644 index 0000000000000000000000000000000000000000..00cddf50860734adecf380cc106845e755d90670 GIT binary patch literal 70461 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�`Fsq>F(!b4Wa{*YkXFG(XfTkr{W2J}-8bH(^GbI>u55Z-WJqEY1A9`Hc zFE58rTd|Z=e)C$Qte^w$m~7^|a1FFj+w&T+B}D9@#=z*HoRo^50P~U|Z^+mw%!>n& zEVrChCAfTxp`*X&W0+_~`nsQ7J6xyj(QnV*a-S6wRm{AWy#8_c;2rd+vN4DfKp