Report Generator 3.X For WHMCS
Line 11: | Line 11: | ||
*'''Admin Area Features:''' | *'''Admin Area Features:''' | ||
{| | {| | ||
− | |style="padding: 10px 0px 0px 30px;"|✔ | + | |style="padding: 10px 0px 0px 30px;"|✔ Generate Your Own Report Using One Of 3 Creators |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 30px;"|✔ | + | |style="padding: 0px 0px 0px 30px;"|✔ View 35 Predefined Reports |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 30px;"|✔ Report | + | |style="padding: 0px 0px 0px 30px;"|✔ Modify Report Results With Dynamic Filters |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 30px;"|✔ | + | |style="padding: 0px 0px 0px 30px;"|✔ Generate PDF Files From Reports |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 30px;"|✔ | + | |style="padding: 0px 0px 0px 30px;"|✔ Print Reports With A Print Preview |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 30px;"|✔ | + | |style="padding: 0px 0px 0px 30px;"|✔ Schedule Automatic Reports With Specified Options Being Sent: |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ To Chosen Staff Members |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ To SFTP Server |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 30px;"|✔ | + | |style="padding: 0px 0px 0px 30px;"|✔ Export & Import Reports Structure To File |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 10px 30px;"|✔ Export Reports To CSV & XML File Formats (Coming Soon) |
|} | |} | ||
+ | |||
+ | *'''Report Creation Features:''' | ||
{| | {| | ||
− | |style="padding: | + | |style="padding: 10px 0px 0px 30px;"|✔ Choose One Of 3 Creators: |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ Beginner: |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 60px;"|✔ Drag & Drop Editor |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 60px;"|✔ WHMCS Tables Only |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 60px;"|✔ Join Tables With Known Relations Only |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ Intermediate: |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 60px;"|✔ Drag & Drop Editor |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 0px 60px;"|✔ All Tables Available |
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 60px;"|✔ Modify Output With PHP | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Advanced: | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 60px;"|✔ Write SQL Query | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 60px;"|✔ All Tables Available | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 60px;"|✔ Modify Output With PHP | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 30px;"|✔ Choose Section Display Type: | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Data Table | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Pie Chart | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Area Chart | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Column Chart | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 30px;"|✔ Create Multi-Section Reports | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 30px;"|✔ Clone Sections (Coming Soon) | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 30px;"|✔ Create Section Using Multiple Tables | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 30px;"|✔ Dynamic Filter Types: | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Data Range Filter - Available On Report View | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Dropdown Filter - Specify Available Options During Report Creation | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Number Range Filter | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Text Filter | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 10px 45px;"|✔ Cron Date Filter - Define Date Range For Scheduled Reports | ||
+ | |} | ||
+ | *'''Additional Basic & Intermediate Creators Features:''' | ||
+ | {| | ||
+ | |style="padding: 10px 0px 0px 30px;"|✔ Mark Tables With Known Relations And Automatically Configure Join In Table | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 30px;"|✔ Advanced Conditioning: | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Define Static Condition | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Define Requested Relation Between Two Fields | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Add Dynamic Filter As Condition | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 30px;"|✔ Output Field: | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Field - Display Field As Is | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Concat - Join Multiple Fields Into One | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Substr - Display Only Part Of Chosen Field | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Sum - Summarize All Values With The Same Value Of Group By Field | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Count - Count All Values With The Same Value Of Group By Field | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Max - Display Maximal Value Found Within Fields With The Same Value Of Group By Field | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Min - Display Minimal Value Found Within Fields With The Same Value Of Group By Field | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Avg - Display Average Of Fields With The Same Value Of Group By Field | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 30px;"|✔ Limit Amount Of Data Displayed On Report | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 30px;"|✔ Skip Chosen Amount Of First Records Displayed On Report | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 30px;"|✔ Live Preview Of Data Returned By Report Creator | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 30px;"|✔ Live Preview Of SQL Query Built By Report Creator | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 30px;"|✔ Live Preview Of Section Generated By Report Creator | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 10px 30px;"|✔ Toggle Between Automatic & Manual Refreshing Of Generated Section | ||
|} | |} | ||
*'''General Info:''' | *'''General Info:''' | ||
{| | {| | ||
− | |style="padding: 10px 0px 0px 30px;"|✔ Migration Tool | + | |style="padding: 10px 0px 0px 30px;"|✔ Report Migration Tool (Coming Soon) |
|} | |} | ||
{| | {| | ||
Line 74: | Line 194: | ||
|style="padding: 0px 0px 10px 30px;"|✔ Supports WHMCS V5 and V6 | |style="padding: 0px 0px 10px 30px;"|✔ Supports WHMCS V5 and V6 | ||
|} | |} | ||
− | *''' | + | *'''Predefined Reports:''' |
{| | {| | ||
− | |style="padding: 10px 0px 0px 30px;"|✔ | + | |style="padding: 10px 0px 0px 30px;"|✔ 'Clients Information' Section: |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ Customers Per Country |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ Most Valuable Clients |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ Paid Orders Report |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ Orders Report |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ Created Panels Report |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ User Accounts Created: |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 60px;"| | + | |style="padding: 0px 0px 0px 60px;"|✔ Number Of Created User Accounts By Date |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 60px;"| | + | |style="padding: 0px 0px 0px 60px;"|✔ List Of User Accounts Created |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ Business Health Status: |
|} | |} | ||
− | |||
{| | {| | ||
− | |style="padding: | + | |style="padding: 0px 0px 0px 60px;"|✔ Domain Renewals For The Time Period |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 60px;"|✔ Open Tickets For The Period |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 60px;"|✔ New Invoices For The Time Period |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 60px;"|✔ Invoice Reminders For The Time Period |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 60px;"|✔ Hosting Renewals |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 60px;"|✔ Suspended Services For The Time Period |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ Complete Cases: |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 60px;"|✔ Closed & Answered Status Tickets By The Staff Member |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 60px;"|✔ Tickets Stats In Time By The Staff Member |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 60px;"|✔ Completed To-Do List Tasks By The Staff Member |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 60px;"|✔ To-Do Tasks Stats Per Status By The Staff Member |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 60px;"|✔ Orders Summary |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ Tasks And Tickets In Progress: |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 60px;"|✔ General Tickets Statistics - For Selected Staff Member Or Team In Time |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 60px;"| | + | |style="padding: 0px 0px 0px 60px;"|✔ To-Do List - Tasks Per Status For Selected Staff Member Or Team In Time |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 60px;"| | + | |style="padding: 0px 0px 0px 60px;"|✔ To-Do List - Tasks In Progress For Selected Staff Member Or Team In Time |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ Unpaid Invoices |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ Client Payment History |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 30px;"|✔ 'Services' Section: |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ Product Income In Location |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ Income Per Country |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ MRR & Churn Metrics |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ MRR & Churn Per Product |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ Orders Number |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ Orders Over The Weekdays |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ Registered Services |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ Renewals Report |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 30px | + | |style="padding: 0px 0px 0px 45px;"|✔ Tasks And Tickets In Progress: |
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Transferred Domains Report | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 30px;"|✔ 'CRM Related' Section: | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ WWW Created Panels Report | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Traders Renewals Report | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ WWW Renewals Report | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Leads Report | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 30px;"|✔ 'Staff Members' Section: | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Tickets In Hours | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Ticket Replies By Admin | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Comments On Course Of Ticket Solving | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Ratings Of Ticket Solving Course | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Ticket Response Rating | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Flexible Transactions Report | ||
|} | |} | ||
Line 200: | Line 358: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_1.png]] |
|} | |} | ||
{| | {| | ||
Line 207: | Line 365: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_2.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 15px 15px;"|'''3 | + | |style="padding: 0px 0px 15px 15px;"|'''3. When you install Report Generator for the first time you have to rename '' 'license_RENAME.php' '' file.'''<br /> |
− | + | ||
− | + | ||
− | + | ||
File is located in '' 'modules/addons/reportgenerator/license_RENAME.php'. '' Rename it from '' 'license_RENAME.php' '' to '' 'license.php'. '' | File is located in '' 'modules/addons/reportgenerator/license_RENAME.php'. '' Rename it from '' 'license_RENAME.php' '' to '' 'license.php'. '' | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_3.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 15px 15px;"|''' | + | |style="padding: 0px 0px 15px 15px;"|'''4. In order to configure your license key, you have to edit a previously renamed '' 'license.php' file.' '' '''<br /> |
Enter your license key between quotation marks as presented on the following screen. You can find your license key in your client area'' → 'My Products'. '' | Enter your license key between quotation marks as presented on the following screen. You can find your license key in your client area'' → 'My Products'. '' | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_4.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 15px 15px;"|''' | + | |style="padding: 0px 0px 15px 15px;"|'''5. Now you have to activate the module in your WHMCS system.'''<br /> |
− | '' ' | + | Log in to your WHMCS admin area. Go to '' 'Setup' '' → '' 'Addon Modules'. '' Afterwards, find '' 'Report Generator' '' and press '' 'Activate' '' button. |
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_6.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 15px 15px;"|''' | + | |style="padding: 0px 0px 15px 15px;"|'''6. In the next step you need to permit access to this module.'''<br /> |
− | + | To do so, click on '' 'Configure' '' button, tick '' 'Full Administrator' '' and press '' 'Save Changes'. '' | |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_7.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 15px 15px;"|''' | + | |style="padding: 0px 0px 15px 15px;"|'''7. You have just successfully installed Report Generator!'''<br /> |
− | + | You can access the module at '' 'Addons' '' → '' 'Report Generator'. '' | |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 30px 25px;"|[[File:RG2_8.png]] |
|} | |} | ||
+ | |||
+ | =Configuration and Management= | ||
{| | {| | ||
− | |style="padding: 0px | + | |style="padding: 10px 0px 30px 15px;"|'''Report Generator For WHMCS allows you to create custom reports using drag & drop WYSIWYG builder.<br/> |
− | + | Module also offers additional useful features like predefined reports, import/export of reports, generating reports in PDF, ability to send them to admins and much more. | |
|} | |} | ||
+ | |||
+ | ==Predefined Reports== | ||
{| | {| | ||
− | |style="padding: 0px | + | |style="padding: 10px 0px 5px 15px;"|'' 'Reports' '' the main section of the module, gives a preview of all available reports, those predefined as well as those you create by yourself.<br/> |
+ | Predefined reports are divided into five categories plus custom reports if you have some. | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px | + | |style="padding: 10px 0px 20px 15px;"|'''Clients Information''' - eleven predefined reports that will show statistics on data related to your clients, for example statistics on placed orders, tasks, etc. |
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_10.png]] |
|} | |} | ||
− | |||
− | |||
{| | {| | ||
− | |style="padding: 10px 0px | + | |style="padding: 10px 0px 20px 15px;"|'''Services''' - nine different reports ready to analyze any services related data like income, renewals or transfers in your system. |
− | + | ||
|} | |} | ||
− | |||
− | |||
{| | {| | ||
− | |style="padding: | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_10_1.png]] |
− | + | ||
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: | + | |style="padding: 10px 0px 20px 15px;"|'''Staff Members''' - three predefined reports related to staff members and tickets department. |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_10_2.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 15px 15px;"|'''CRM Related''' - four ground reports based on your CRM data. Please note that you can see them only if you are using our CRM For WHMCS module.<br/> More about CRM For WHMCS can be found [http://www.modulesgarden.com/products/whmcs/crm/features here], instructions how to [http://www.docs.modulesgarden.com/CRM_For_WHMCS configure] your CRM. |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_10_3.png]] |
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 30px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 15px;"|'''Custom reports''' - all reports that you have personally created using our inbuilt creators. |
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 30px 25px;"|[[File:RG2_10_4.png]] | ||
|} | |} | ||
===Report View=== | ===Report View=== | ||
{| | {| | ||
− | |style="padding: 10px 0px | + | |style="padding: 10px 0px 20px 15px;"|Press '' 'Show' '' button next to a report you are interested in. |
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_13.png]] |
|} | |} | ||
− | |||
− | |||
{| | {| | ||
− | |style="padding: | + | |style="padding: 0px 0px 15px 15px;"|Depending on the type of report you choose, you can choose the time frames in which you want to see the statistics.<br/> |
+ | Provide the beginning and ending dates, then press '' 'Filter' '' button. Fresh report will be generated on the run. | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 30px 25px;"|[[File: | + | |style="padding: 0px 0px 30px 25px;"|[[File:RG2_13_1.png]] |
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 15px;"|In case of some reports filtering is impossible due to the stable content of the report. | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 25px;"|[[File:RG213_2.png]] | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 15px;"|You can always view a printable version of report or generate a PDF which can be saved on your disk. | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 30px 25px;"|[[File:RG2_14.png]] | ||
|} | |} | ||
==Creating Report== | ==Creating Report== | ||
{| | {| | ||
− | |style="padding: 10px 0px 15px 15px;"|In this section we will show you how to prepare a few | + | |style="padding: 10px 0px 15px 15px;"|In this section we will show you how to prepare a few exemplary reports.<br/> |
− | + | We will now show you how to develop three different reports, each one will slightly more complicated than the previous one.<br/> | |
− | The first | + | The first steps are the same for each advancement level. |
− | + | ||
|} | |} | ||
− | |||
{| | {| | ||
− | |style="padding: | + | |style="padding: 0px 0px 15px 15px;"|Press '' 'Create Report' '' |
− | + | ||
− | + | ||
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_15.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 15px 15px;"|Now | + | |style="padding: 0px 0px 15px 15px;"|Now select the type of chart that you wish to achieve in the final result.<br/> |
− | + | You may generate a '' 'Colum', 'Pie', 'Table' '' or '' 'Area' '' chart. For presentation purposes we will start with a Table chart.<br/> | |
+ | Press it to select. | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_15.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 15px 15px;"| | + | |style="padding: 0px 0px 15px 15px;"|It is time to select the creator type. You can generate your report with: |
− | + | *creator for beginners | |
+ | *creator for admins on an intermediate level | ||
+ | *creator for professionals - expert<br/> | ||
+ | Let's begin with the easiest one - '' 'Beginner'. '' | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 30px 25px;"|[[File:RG2_16.png]] |
|} | |} | ||
− | + | ===Beginner - Unpaid Invoices Per Clients=== | |
{| | {| | ||
− | |style="padding: 0px | + | |style="padding: 10px 0px 10px 15px;"|When you enter the creator, the first things you can see is a wide description table with example. When you are familiar with it, press to hide. |
− | + | ||
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 15px 15px;"|'' 'Base Table' '' and '' 'List of available database tables'. ''<br/> |
+ | Depending on what your report is going to analyze, you must now find appropriate table.<br/> For example if you want to create a report that will base on clients, then find such WHMCS table.<br/> | ||
+ | If you want to join it with another table , then drag it and drop into '' 'Join Additional Information','' note that you may join only tables highlighted in blue. | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_17.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 15px 15px;"|Now, let's move to '' 'Display If' '' section. From available '' 'Fields' '' drag option that you want select. |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_17_1.png]] |
− | + | ||
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px | + | |style="padding: 0px 0px 20px 15px;"|We have decided to drag status and provide value: '' 'Unpaid'.'' Then only unpaid invoices will be taken into consideration in the final report. |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_18.png]] |
− | + | ||
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px | + | |style="padding: 0px 0px 20px 15px;"|Let's move to '' 'Select Fields To Display On Final Report' '' section. Drag from ' ''Fields' ' section any fields that you wish to see on your report. |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_20.png]] |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 15px 15px;"|You can also decide the way the entries will be sorted.<br/> |
+ | On the screen below you can see sorting by invoice due date in descending order. | ||
|} | |} | ||
− | |||
− | |||
{| | {| | ||
− | |style="padding: | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_21.png]] |
− | + | |} | |
+ | {| | ||
+ | |style="padding: 0px 0px 15px 15px;"|Let's check how our report will look like.<br/> | ||
+ | You can see there a list of clients, due date of their unpaid invoices together with the amount to pay and a selected payment method. | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_22.png]] | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 15px 15px;"|Take a look at the full creator view.<br/>Save the changes when your report is ready.<br/> | ||
+ | Apart form the options used to generate this report, there are also '' 'Group By' '' and ' ''Limit'. ''<br/>We will show how to use them in other examples. | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_23.png]] | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 15px;"|Finally, name your report and describe it shortly. | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_24.png]] | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 15px 15px;"|When everything is ready, you ca see your report. You can always: | ||
+ | 1. Edit your report section | ||
+ | 2. Delete report section | ||
+ | 3. Print the report | ||
+ | 4. View PDF version | ||
+ | 5. Add ne section to the report | ||
+ | 6. Delete the whole report. | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 30px 25px;"|[[File:RG2_25.png]] | ||
+ | |} | ||
+ | ===Intermediate Creator=== | ||
+ | {| | ||
+ | |style="padding: 10px 0px 30px 15px;"|Detailed instructions on how to use our Intermediate creator will be available soon!<br/> | ||
+ | Please be patient. | ||
|} | |} | ||
+ | ===Advanced Creator=== | ||
{| | {| | ||
− | |style="padding: 0px | + | |style="padding: 10px 0px 30px 15px;"|This section is not ready yet. We are sorry for the inconvenience. |
|} | |} | ||
+ | <!-- | ||
{| | {| | ||
− | |style="padding: 0px 0px 15px 15px;"|Join orders table to clients table. We will need it to display columns from both tables here.<br /> | + | |style="padding: 0px 0px 15px 15px;"|Join orders table to clients table. We will need it to display columns from both tables here.<br/> |
Press '' 'Join Another Table' '' to proceed. | Press '' 'Join Another Table' '' to proceed. | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_24.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 15px 15px;"|It is time to think about how we want to connect these two tables.<br /> | + | |style="padding: 0px 0px 15px 15px;"|It is time to think about how we want to connect these two tables.<br/> |
− | We want to display a client even if he/she has no orders, therefore from '' 'Please Specify A Join Type' '' we will choose:<br /> | + | We want to display a client even if he/she has no orders, therefore from '' 'Please Specify A Join Type' '' we will choose:<br/> |
− | '' 'Return all rows from the left table, even if there are no matches at the right table'. '' | + | '' 'Return all rows from the left table, even if there are no matches at the right table'.'' |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_25.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 15px 15px;"|Now select two tables to join. For purposes of this report, these will be tables '' 'Clients' '' and '' 'Orders'. ''<br /> | + | |style="padding: 0px 0px 15px 15px;"|Now select two tables to join. For purposes of this report, these will be tables '' 'Clients' '' and '' 'Orders'. ''<br/> |
It is time to decide which columns will be used to join chosen columns.<br /> | It is time to decide which columns will be used to join chosen columns.<br /> | ||
− | In the table '' 'Orders' '' we can find column '' 'userid' '' in which there is stored ID of client who made an order.<br /> | + | In the table '' 'Orders' '' we can find column '' 'userid' '' in which there is stored ID of client who made an order.<br/> |
− | Therefore we will join them using '' 'Clients Table : ID' '' and '' 'Orders Table : userid'. ''<br /> | + | Therefore we will join them using '' 'Clients Table : ID' '' and '' 'Orders Table : userid'. ''<br/> |
In the end press '' 'Confirm!' '' | In the end press '' 'Confirm!' '' | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_26.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 15px 15px;"|We want to display clients details in one column and quantity of orders in another one.<br /> | + | |style="padding: 0px 0px 15px 15px;"|We want to display clients details in one column and quantity of orders in another one.<br/> |
The first column will be displayed by: | The first column will be displayed by: | ||
concat(tblclients.id, '# ', tblclients.firstname, ' ', tblclients.lastname) as Client | concat(tblclients.id, '# ', tblclients.firstname, ' ', tblclients.lastname) as Client | ||
Line 422: | Line 613: | ||
Count along with grouping by allow us to count records for each client. | Count along with grouping by allow us to count records for each client. | ||
Orders Table : ID as Any_Order_Exist | Orders Table : ID as Any_Order_Exist | ||
− | This column was added to handle clients who do not have any orders.<br /> | + | This column was added to handle clients who do not have any orders.<br/> |
− | Due to join type, '' 'COUNT(*) as Orders' '' will be filled with 1 for them.<br /> | + | Due to join type, '' 'COUNT(*) as Orders' '' will be filled with 1 for them.<br/> |
Proceed to '' 'Groups & Limits' '' tab to set up grouping by (currently our generator does not recognize what should be counted). | Proceed to '' 'Groups & Limits' '' tab to set up grouping by (currently our generator does not recognize what should be counted). | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_27.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 15px 15px;"|We want to group records by clients, therefore fill '' 'Group This Section By' '' with '' 'Clients Table : ID' '' which is a unique key at the client table.<br /> | + | |style="padding: 0px 0px 15px 15px;"|We want to group records by clients, therefore fill '' 'Group This Section By' '' with '' 'Clients Table : ID' '' which is a unique key at the client table.<br/> |
− | Additionally, let's set up sorting clients by quantity of orders, we can use column alias for this.<br /> | + | Additionally, let's set up sorting clients by quantity of orders, we can use column alias for this.<br/> |
As we predicted, clients with 0 orders have assigned 1 order. Proceed to '' 'Your Own Code' '' to fix that. | As we predicted, clients with 0 orders have assigned 1 order. Proceed to '' 'Your Own Code' '' to fix that. | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_28.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 15px 15px;"|At '' 'Your Own Code' '' tab you can modify received output.<br /> | + | |style="padding: 0px 0px 15px 15px;"|At '' 'Your Own Code' '' tab you can modify received output.<br/> |
Code has to be placed in delimiters as shown below. | Code has to be placed in delimiters as shown below. | ||
<?php | <?php | ||
// your custom code here | // your custom code here | ||
?> | ?> | ||
− | The '' '$result' '' variable is passed by reference and contains just iterated element of the result array.<br /> | + | The '' '$result' '' variable is passed by reference and contains just iterated element of the result array.<br/> |
− | In this way you can create new columns in your table or modify existing ones through modifying this variable.<br /> | + | In this way you can create new columns in your table or modify existing ones through modifying this variable.<br/> |
− | You can access it as typical array where the key is a column name and value is a current row value.<br /> | + | You can access it as typical array where the key is a column name and value is a current row value.<br/> |
− | '''Important 1: <span style="color:#FF0000">Use this field with caution</span>, because every mistake made here can result with <span style="color:#FF0000">error in your production environment</span>.'''<br /> | + | '''Important 1: <span style="color:#FF0000">Use this field with caution</span>, because every mistake made here can result with <span style="color:#FF0000">error in your production environment</span>.'''<br/> |
− | ''Note: While working on $result you can use aliases!''<br /> | + | ''Note: While working on $result you can use aliases!''<br/> |
− | What we need to do is assign 0 to '' 'Orders' '' column if '' 'Any_Order_Exist' '' column is empty.<br /> | + | What we need to do is assign 0 to '' 'Orders' '' column if '' 'Any_Order_Exist' '' column is empty.<br/> |
− | Additionally, we are unable to remove previously added column, therefore we will display '' 'Yes/No' '' in '' 'Any_Order_Exist' '' depending on existence of any order assigned to client.<br /> | + | Additionally, we are unable to remove previously added column, therefore we will display '' 'Yes/No' '' in '' 'Any_Order_Exist' '' depending on existence of any order assigned to client.<br/> |
Code placed below will do it for you: | Code placed below will do it for you: | ||
<?php | <?php | ||
Line 467: | Line 658: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_29.png]] |
|} | |} | ||
{| | {| | ||
Line 473: | Line 664: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 30px 25px;"|[[File: | + | |style="padding: 0px 0px 30px 25px;"|[[File:RG2_30.png]] |
|} | |} | ||
+ | --> | ||
− | === | + | <!-- |
+ | ===Expert - Unpaid Invoices=== | ||
{| | {| | ||
− | |style="padding: 10px 0px 15px 15px;"|In the third report we will show you how to prepare report displaying clients with the highest number of unpaid invoices.<br /> | + | |style="padding: 10px 0px 15px 15px;"|In the third report we will show you how to prepare report displaying clients with the highest number of unpaid invoices.<br/> |
− | We will also add second section displaying unpaid invoices which can be filtered by client first and last name.<br /> | + | We will also add second section displaying unpaid invoices which can be filtered by client first and last name.<br/> |
− | Start by defining report name and description, choose report type and starting table.<br /> | + | Start by defining report name and description, choose report type and starting table.<br/> |
Press '' 'Join Another Table' '' to proceed. | Press '' 'Join Another Table' '' to proceed. | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_31.png]] |
|} | |} | ||
{| | {| | ||
Line 490: | Line 683: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_32.png]] |
|} | |} | ||
{| | {| | ||
Line 497: | Line 690: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_33.png]] |
|} | |} | ||
{| | {| | ||
Line 503: | Line 696: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_34.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 15px 15px;"|Select column you want to define condition for, select filter operand, define default value of filter and filter friendly name.<br /> | + | |style="padding: 0px 0px 15px 15px;"|Select column you want to define condition for, select filter operand, define default value of filter and filter friendly name.<br/> |
Conditions can be changed at the report view, they will be displayed under friendly name defined here. | Conditions can be changed at the report view, they will be displayed under friendly name defined here. | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_35.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 15px 15px;"|Fill '' 'concat(tblclients.id, tblclients.lastname, tblclients.firstname)' '' into '' 'Group This Section By' '' field.<br /> | + | |style="padding: 0px 0px 15px 15px;"|Fill '' 'concat(tblclients.id, tblclients.lastname, tblclients.firstname)' '' into '' 'Group This Section By' '' field.<br/> |
− | Owing to previously introduced concat you can both make sure you will be counting invoices properly and display string generated by concat under summary column in table.<br /> | + | Owing to previously introduced concat you can both make sure you will be counting invoices properly and display string generated by concat under summary column in table.<br/> |
− | This concat returns client ID, lastname and firstname in one string.<br /> | + | This concat returns client ID, lastname and firstname in one string.<br/> |
− | Order records using '' 'Sum' '' alias and define limit of column for this report.<br /> | + | Order records using '' 'Sum' '' alias and define limit of column for this report.<br/> |
Now, let's create the second section. To do so, press '' 'Create New Section'. '' | Now, let's create the second section. To do so, press '' 'Create New Section'. '' | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_36.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 15px 15px;"|In this section we want to display a list of all unpaid invoices of a selected client.<br /> | + | |style="padding: 0px 0px 15px 15px;"|In this section we want to display a list of all unpaid invoices of a selected client.<br/> |
− | Select date table and start of client table.<br /> | + | Select date table and start of client table.<br/> |
Additionally, join client table with invoice table as in previous section. | Additionally, join client table with invoice table as in previous section. | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_37.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 15px 15px;"|Now, add desired columns. As you can see on the following screen, we have used concat to display clients details in the first column.<br /> | + | |style="padding: 0px 0px 15px 15px;"|Now, add desired columns. As you can see on the following screen, we have used concat to display clients details in the first column.<br/> |
Proceed to condition tab and press '' 'Add New Condition' '' button. | Proceed to condition tab and press '' 'Add New Condition' '' button. | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_38.png]] |
|} | |} | ||
{| | {| | ||
Line 543: | Line 736: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_39.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_40.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 15px 15px;"|Proceed to '' 'Groups & Limits' '' tab and set up ordering by ID.<br /> | + | |style="padding: 0px 0px 15px 15px;"|Proceed to '' 'Groups & Limits' '' tab and set up ordering by ID.<br/> |
You can also increase limits of record displayed on the report. | You can also increase limits of record displayed on the report. | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_41.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 15px 15px;"|Let's proceed to '' 'Your Own Code' '' section to replace '' 'No Company Assigned' '' with blank field.<br /> | + | |style="padding: 0px 0px 15px 15px;"|Let's proceed to '' 'Your Own Code' '' section to replace '' 'No Company Assigned' '' with blank field.<br/> |
Copy and paste code placed below: | Copy and paste code placed below: | ||
<?php | <?php | ||
Line 568: | Line 761: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 30px 25px;"|[[File: | + | |style="padding: 0px 0px 30px 25px;"|[[File:RG2_42.png]] |
|} | |} | ||
+ | --> | ||
− | == | + | <!-- |
+ | ==Modify Report== | ||
{| | {| | ||
− | |style="padding: 10px 0px 20px 15px;"|All reports can be easily altered. Press '' 'Edit' '' next to report that you wish to modify. | + | |style="padding: 10px 0px 20px 15px;"|All custom reports can be easily altered. Press '' 'Edit' '' next to report that you wish to modify. |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_43.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 15px 15px;"|Edit screen is the same as generate screen. Therefore you are allowed to modify and even entirely change report according to your needs.<br /> | + | |style="padding: 0px 0px 15px 15px;"|Edit screen is the same as generate screen. Therefore you are allowed to modify and even entirely change report according to your needs.<br/> |
− | We will add filtering results by clients' nationality to this report.<br /> | + | We will add filtering results by clients' nationality to this report.<br/> |
Join hosting table with client table as shown on the following screen. | Join hosting table with client table as shown on the following screen. | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_44.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 15px 15px;"|Proceed to '' 'Conditions' '' tab and press '' 'Add New Filter' '' | + | |style="padding: 0px 0px 15px 15px;"|Proceed to '' 'Conditions' '' tab and press '' 'Add New Filter'.''<br/> |
Filter set up shown on the following screen will filter report output depending on client's country. | Filter set up shown on the following screen will filter report output depending on client's country. | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 30px 25px;"|[[File: | + | |style="padding: 0px 0px 30px 25px;"|[[File:RG2_44_1.png]] |
|} | |} | ||
+ | --> | ||
− | == | + | ==Schedule Report== |
{| | {| | ||
− | |style="padding: 10px 0px 15px 15px;"|At '' ' | + | |style="padding: 10px 0px 15px 15px;"|At '' 'Schedule Reports' '' section, you can point which reports will be sent directly to administrators.<br/> |
− | + | Press '' 'Schedule Report' '' to begin. | |
− | + | ||
− | + | ||
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_45.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 15px 15px;"| | + | |style="padding: 0px 0px 15px 15px;"|Box with a form to fill in will appear. Start by selecting the report you want to schedule.<br/> On the dropdowm menu you will find all reports available in you module including your custom reports.<br/> ''Please note that the form may slightly differ depending on the selected report type.''<br/> |
− | + | Afterwards, specify the conditions, how often reports should be sent, time period for which the report shall be generated and way of sending, by email or by FTP etc.<br/> | |
+ | Additionally, provide staff email addresses or FTP details.<br/> | ||
+ | Confirm through pressing '' 'Add Rule' '' button. | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_46.png]] |
|} | |} | ||
− | |||
− | |||
{| | {| | ||
− | |style="padding: | + | |style="padding: 0px 0px 15px 15px;"|As you can see on the following screen, all scheduled reports are listed in the table with report name, frequency and assigned admin users.<br/> |
− | + | Each of planned relations can be removed or edited at any time, use action buttons to do so. | |
− | + | ||
|} | |} | ||
{| | {| | ||
− | + | |style="padding: 0px 0px 30px 25px;"|[[File:RG2_47.png]] | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | |style="padding: 0px 0px 30px 25px;"|[[File: | + | |
|} | |} | ||
− | == | + | ==Import/Export== |
{| | {| | ||
− | |style="padding: 10px 0px 15px 15px;"| | + | |style="padding: 10px 0px 15px 15px;"|'' 'Import/Export' '' section allows to quickly import your saved previously reports if you have for example stored them on your external disk for later use.<br/> |
− | + | Just select file and press '' 'Import'. '' Imported report will appear on the list of your custom reports. | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_48.png]] |
|} | |} | ||
− | |||
− | |||
{| | {| | ||
− | |style="padding: | + | |style="padding: 0px 0px 15px 15px;"|Underneath, you can see a list of your custom reports. Press '' 'Export' '' button to save its files on your disk. |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 30px 25px;"|[[File: | + | |style="padding: 0px 0px 30px 25px;"|[[File:RG2_49.png]] |
|} | |} | ||
+ | <!-- | ||
==Migration== | ==Migration== | ||
{| | {| | ||
− | |style="padding: 10px 0px 15px 15px;"|Due to changes in the module and its structure, upgrading it from version 1.0 requires migration tool.<br /> | + | |style="padding: 10px 0px 15px 15px;"|Due to changes in the module and its structure, upgrading it from version 1.0 requires migration tool.<br/> |
− | It can be accessed at '' 'Migration' '' tab of our module and allows you to migrate reports from the previous version of Report Generator For WHMCS.<br /> | + | It can be accessed at '' 'Migration' '' tab of our module and allows you to migrate reports from the previous version of Report Generator For WHMCS.<br/> |
− | As you can see, all reports which existed in version 1.0 are listed here. In order to import report from the previous version of the module press '' 'Migrate' '' button next to it.<br /> | + | As you can see, all reports which existed in version 1.0 are listed here. In order to import report from the previous version of the module press '' 'Migrate' '' button next to it.<br/> |
'''Important: Email settings will be lost during the upgrade.''' | '''Important: Email settings will be lost during the upgrade.''' | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:RG2_52.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 15px;"|Afterwards, press '' 'Update Report' '' button. Your report is now available at '' 'Reports List | + | |style="padding: 0px 0px 20px 15px;"|Afterwards, press '' 'Update Report' '' button. Your report is now available at '' 'Reports List' → 'User Generated Reports'.'' |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 30px 25px;"|[[File: | + | |style="padding: 0px 0px 30px 25px;"|[[File:RG2_53.png]] |
|} | |} | ||
+ | --> | ||
=Tips= | =Tips= | ||
{| | {| | ||
− | |style="padding: 10px 0px | + | |style="padding: 10px 0px 30px 15px;"|1. If you want to edit your custom report and make it more complicated, you may do it with a more advanced creator.<br/> |
+ | When you are editing a report you may choose from the beginning which creator type you are going to use. | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 0px 15px;"| |
|} | |} | ||
=Common Problems= | =Common Problems= | ||
{| | {| | ||
− | |style="padding: 10px 0px | + | |style="padding: 10px 0px 30px 15px;"|'''1. When you have problems with connection, check whether your SELinux or firewall does not block ports.''' |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
|} | |} |
Revision as of 17:46, 14 September 2016
Contents |
About Report Generator For WHMCS
Report Generator For WHMCS allows you to generate and manage any kind of reports using inbuilt drag & drop WYSIWYG editor. The module lets you adjust reports to your needs through using various filters and even your own PHP code. It also permits to display prepared reports in tables, graphs or charts. |
- Admin Area Features:
✔ Generate Your Own Report Using One Of 3 Creators |
✔ View 35 Predefined Reports |
✔ Modify Report Results With Dynamic Filters |
✔ Generate PDF Files From Reports |
✔ Print Reports With A Print Preview |
✔ Schedule Automatic Reports With Specified Options Being Sent: |
✔ To Chosen Staff Members |
✔ To SFTP Server |
✔ Export & Import Reports Structure To File |
✔ Export Reports To CSV & XML File Formats (Coming Soon) |
- Report Creation Features:
✔ Choose One Of 3 Creators: |
✔ Beginner: |
✔ Drag & Drop Editor |
✔ WHMCS Tables Only |
✔ Join Tables With Known Relations Only |
✔ Intermediate: |
✔ Drag & Drop Editor |
✔ All Tables Available |
✔ Modify Output With PHP |
✔ Advanced: |
✔ Write SQL Query |
✔ All Tables Available |
✔ Modify Output With PHP |
✔ Choose Section Display Type: |
✔ Data Table |
✔ Pie Chart |
✔ Area Chart |
✔ Column Chart |
✔ Create Multi-Section Reports |
✔ Clone Sections (Coming Soon) |
✔ Create Section Using Multiple Tables |
✔ Dynamic Filter Types: |
✔ Data Range Filter - Available On Report View |
✔ Dropdown Filter - Specify Available Options During Report Creation |
✔ Number Range Filter |
✔ Text Filter |
✔ Cron Date Filter - Define Date Range For Scheduled Reports |
- Additional Basic & Intermediate Creators Features:
✔ Mark Tables With Known Relations And Automatically Configure Join In Table |
✔ Advanced Conditioning: |
✔ Define Static Condition |
✔ Define Requested Relation Between Two Fields |
✔ Add Dynamic Filter As Condition |
✔ Output Field: |
✔ Field - Display Field As Is |
✔ Concat - Join Multiple Fields Into One |
✔ Substr - Display Only Part Of Chosen Field |
✔ Sum - Summarize All Values With The Same Value Of Group By Field |
✔ Count - Count All Values With The Same Value Of Group By Field |
✔ Max - Display Maximal Value Found Within Fields With The Same Value Of Group By Field |
✔ Min - Display Minimal Value Found Within Fields With The Same Value Of Group By Field |
✔ Avg - Display Average Of Fields With The Same Value Of Group By Field |
✔ Limit Amount Of Data Displayed On Report |
✔ Skip Chosen Amount Of First Records Displayed On Report |
✔ Live Preview Of Data Returned By Report Creator |
✔ Live Preview Of SQL Query Built By Report Creator |
✔ Live Preview Of Section Generated By Report Creator |
✔ Toggle Between Automatic & Manual Refreshing Of Generated Section |
- General Info:
✔ Report Migration Tool (Coming Soon) |
✔ Multi-Language Support |
✔ Supports WHMCS V5 and V6 |
- Predefined Reports:
✔ 'Clients Information' Section: |
✔ Customers Per Country |
✔ Most Valuable Clients |
✔ Paid Orders Report |
✔ Orders Report |
✔ Created Panels Report |
✔ User Accounts Created: |
✔ Number Of Created User Accounts By Date |
✔ List Of User Accounts Created |
✔ Business Health Status: |
✔ Domain Renewals For The Time Period |
✔ Open Tickets For The Period |
✔ New Invoices For The Time Period |
✔ Invoice Reminders For The Time Period |
✔ Hosting Renewals |
✔ Suspended Services For The Time Period |
✔ Complete Cases: |
✔ Closed & Answered Status Tickets By The Staff Member |
✔ Tickets Stats In Time By The Staff Member |
✔ Completed To-Do List Tasks By The Staff Member |
✔ To-Do Tasks Stats Per Status By The Staff Member |
✔ Orders Summary |
✔ Tasks And Tickets In Progress: |
✔ General Tickets Statistics - For Selected Staff Member Or Team In Time |
✔ To-Do List - Tasks Per Status For Selected Staff Member Or Team In Time |
✔ To-Do List - Tasks In Progress For Selected Staff Member Or Team In Time |
✔ Unpaid Invoices |
✔ Client Payment History |
✔ 'Services' Section: |
✔ Product Income In Location |
✔ Income Per Country |
✔ MRR & Churn Metrics |
✔ MRR & Churn Per Product |
✔ Orders Number |
✔ Orders Over The Weekdays |
✔ Registered Services |
✔ Renewals Report |
✔ Tasks And Tickets In Progress: |
✔ Transferred Domains Report |
✔ 'CRM Related' Section: |
✔ WWW Created Panels Report |
✔ Traders Renewals Report |
✔ WWW Renewals Report |
✔ Leads Report |
✔ 'Staff Members' Section: |
✔ Tickets In Hours |
✔ Ticket Replies By Admin |
✔ Comments On Course Of Ticket Solving |
✔ Ratings Of Ticket Solving Course |
✔ Ticket Response Rating |
✔ Flexible Transactions Report |
Installation
This tutorial will show you how to successfully install and configure Report Generator For WHMCS. We will guide you step by step through the whole installation and configuration process. |
1. Log in to your client area and download Report Generator For WHMCS. |
2. Upload and extract the module into the main WHMCS directory. Files in your WHMCS directory should look like these. |
3. When you install Report Generator for the first time you have to rename 'license_RENAME.php' file. File is located in 'modules/addons/reportgenerator/license_RENAME.php'. Rename it from 'license_RENAME.php' to 'license.php'. |
4. In order to configure your license key, you have to edit a previously renamed 'license.php' file.' Enter your license key between quotation marks as presented on the following screen. You can find your license key in your client area → 'My Products'. |
5. Now you have to activate the module in your WHMCS system. Log in to your WHMCS admin area. Go to 'Setup' → 'Addon Modules'. Afterwards, find 'Report Generator' and press 'Activate' button. |
6. In the next step you need to permit access to this module. To do so, click on 'Configure' button, tick 'Full Administrator' and press 'Save Changes'. |
7. You have just successfully installed Report Generator! You can access the module at 'Addons' → 'Report Generator'. |
Configuration and Management
Report Generator For WHMCS allows you to create custom reports using drag & drop WYSIWYG builder. Module also offers additional useful features like predefined reports, import/export of reports, generating reports in PDF, ability to send them to admins and much more. |
Predefined Reports
'Reports' the main section of the module, gives a preview of all available reports, those predefined as well as those you create by yourself. Predefined reports are divided into five categories plus custom reports if you have some. |
Clients Information - eleven predefined reports that will show statistics on data related to your clients, for example statistics on placed orders, tasks, etc. |
Services - nine different reports ready to analyze any services related data like income, renewals or transfers in your system. |
Staff Members - three predefined reports related to staff members and tickets department. |
CRM Related - four ground reports based on your CRM data. Please note that you can see them only if you are using our CRM For WHMCS module. More about CRM For WHMCS can be found here, instructions how to configure your CRM. |
Custom reports - all reports that you have personally created using our inbuilt creators. |
Report View
Press 'Show' button next to a report you are interested in. |
Depending on the type of report you choose, you can choose the time frames in which you want to see the statistics. Provide the beginning and ending dates, then press 'Filter' button. Fresh report will be generated on the run. |
In case of some reports filtering is impossible due to the stable content of the report. |
You can always view a printable version of report or generate a PDF which can be saved on your disk. |
Creating Report
In this section we will show you how to prepare a few exemplary reports. We will now show you how to develop three different reports, each one will slightly more complicated than the previous one. |
Press 'Create Report' |
Now select the type of chart that you wish to achieve in the final result. You may generate a 'Colum', 'Pie', 'Table' or 'Area' chart. For presentation purposes we will start with a Table chart. |
It is time to select the creator type. You can generate your report with:
Let's begin with the easiest one - 'Beginner'. |
Beginner - Unpaid Invoices Per Clients
When you enter the creator, the first things you can see is a wide description table with example. When you are familiar with it, press to hide. |
'Base Table' and 'List of available database tables'. Depending on what your report is going to analyze, you must now find appropriate table. |
Now, let's move to 'Display If' section. From available 'Fields' drag option that you want select. |
We have decided to drag status and provide value: 'Unpaid'. Then only unpaid invoices will be taken into consideration in the final report. |
Let's move to 'Select Fields To Display On Final Report' section. Drag from ' Fields' ' section any fields that you wish to see on your report. |
You can also decide the way the entries will be sorted. On the screen below you can see sorting by invoice due date in descending order. |
Let's check how our report will look like. You can see there a list of clients, due date of their unpaid invoices together with the amount to pay and a selected payment method. |
Take a look at the full creator view. Save the changes when your report is ready. Apart form the options used to generate this report, there are also 'Group By' and ' Limit'. |
Finally, name your report and describe it shortly. |
When everything is ready, you ca see your report. You can always:
1. Edit your report section 2. Delete report section 3. Print the report 4. View PDF version 5. Add ne section to the report 6. Delete the whole report. |
Intermediate Creator
Detailed instructions on how to use our Intermediate creator will be available soon! Please be patient. |
Advanced Creator
This section is not ready yet. We are sorry for the inconvenience. |
Schedule Report
At 'Schedule Reports' section, you can point which reports will be sent directly to administrators. Press 'Schedule Report' to begin. |
Box with a form to fill in will appear. Start by selecting the report you want to schedule. On the dropdowm menu you will find all reports available in you module including your custom reports. Please note that the form may slightly differ depending on the selected report type. Afterwards, specify the conditions, how often reports should be sent, time period for which the report shall be generated and way of sending, by email or by FTP etc. |
As you can see on the following screen, all scheduled reports are listed in the table with report name, frequency and assigned admin users. Each of planned relations can be removed or edited at any time, use action buttons to do so. |
Import/Export
'Import/Export' section allows to quickly import your saved previously reports if you have for example stored them on your external disk for later use. Just select file and press 'Import'. Imported report will appear on the list of your custom reports. |
Underneath, you can see a list of your custom reports. Press 'Export' button to save its files on your disk. |
Tips
1. If you want to edit your custom report and make it more complicated, you may do it with a more advanced creator. When you are editing a report you may choose from the beginning which creator type you are going to use. |
Common Problems
1. When you have problems with connection, check whether your SELinux or firewall does not block ports. |