470 likes | 567 Views
Simplified way to program custom reports. What is ToolZ?. Custom Reports: The Hard Way. What is ToolZ?. <? php checkUserPerms ();
E N D
Simplified way to program custom reports What is ToolZ?
Custom Reports: The Hard Way What is ToolZ? <?php checkUserPerms(); $query = ‘SELECT SubdivName, AVG(Score) AS AVG_SCORE FROM Shops INNER JOIN Locs USING(LocID) INNER JOIN Subdivs ON Subdiv3id = SubdivID GROUP BY SubdivID, SubdivName’; $results = execute($query); foreach($results as $row) $output .= ‘<tr><td>’.$row[‘SUBDIVNAME’].’</td><td>’.$row[‘AVG_SCORE ’].’</td></tr>’; print ‘<table>’.$output.’</table>’; ?>
Custom Reports: The Hard Way Know our database schema Access to our dev servers What is ToolZ? <?php checkUserPerms(); $query = ‘SELECT SubdivName, AVG(Score) AS AVG_SCORE FROM Shops INNER JOIN Locs USING(LocID) INNER JOIN Subdivs ON Subdiv3id = SubdivID GROUP BY SubdivID, SubdivName’; $results = execute($query); foreach($results as $row) $output .= ‘<tr><td>’.$row[‘SUBDIVNAME’].’</td><td>’.$row[‘AVG_SCORE ’].’</td></tr>’; print ‘<table>’.$output.’</table>’; ?> Know how to program Mistakes more likely Handle data access Access to our data
Custom Reports: The ToolZ Way What is ToolZ? {|CROSSTAB|} <table> {|LOOP|REGIONS} <tr> <td>{REGIONS.NAME}</td> {|LOOP|REGIONS.MONTHS} <td>{AVG(MONTHS.SCORE)}</td> {/|LOOP|} </tr> {/|LOOP|} </table> {/|CROSSTAB|}
Custom Reports: The ToolZ Way What is ToolZ? {|CROSSTAB|} <table> {|LOOP|REGIONS} <tr> <td>{REGIONS.NAME}</td> {|LOOP|REGIONS.MONTHS} <td>{AVG(MONTHS.SCORE)}</td> {/|LOOP|} </tr> {/|LOOP|} </table> {/|CROSSTAB|} <?php checkUserPerms(); $query = ‘SELECT AVG(SCORE) FROM…’; $results = execute($query); foreach($results as $row) $output .= ‘<tr><td>’.$row[‘SCORE’].’</td></tr>’; print ‘<table>’.$output.’</table>’; ?>
No schema knowledge Done on prod servers Custom Reports: The ToolZ Way What is ToolZ? {|CROSSTAB|} <table> {|LOOP|REGIONS} <tr> <td>{REGIONS.NAME}</td> {|LOOP|REGIONS.MONTHS} <td>{AVG(MONTHS.SCORE)}</td> {/|LOOP|} </tr> {/|LOOP|} </table> {/|CROSSTAB|} Smaller chance of mistakes Know how to write HTML/ToolZ Data access automatic Limited and safe data access
Allows non-SurfMerchants to “program” custom SASSIE reports What is ToolZ?
More flexible than Reporterator or Dragon Why is ToolZ?
Faster, simpler, and cheaper than SASSIE custom development Why is ToolZ? Easier to maintain and modify Decreases reliance on SurfMerchants for development
Data for presentations, offline reports Data for Other Reports Note improved scores over time
Quick answer to a client’s question Quick Queries
Mockups and prototypes Rapid Prototyping It’s only a model
ToolZ is missing a lot of important SASSIE data Data • ToolZ feeds now include: • Report and Job Dates • All sectional scores • All response scores • All question types (except VZ, link, normative) • All location data • Managers • Custom Date Ranges • Waves • Job Status
ToolZ reports don’t look nice Appearance
ToolZ reports don’t look nice Appearance
ToolZ can’t report on complex conditions Complexity
ToolZ can’t report on complex conditions Complexity RuleZ can be used for simplifying
ToolZ can’t report on complex conditions Complexity We have the ability to program custom groups and properties
ToolZ reports can only be developed by a third-party developer Developers
ToolZ reports can only be developed by a third-party developer Developers XTreamIT does still do ToolZ development Technical people at MSPs can be trained (11 people have been trained so far) SurfMerchants has several ToolZ developers
http://toolzdocs.wordpress.com/ • See what’s new and what’s next: • http://toolzdocs.wordpress.com/change-log/ • http://toolzdocs.wordpress.com/annual-summary/2014-plans/ • Share your opinion: https://toolz.uservoice.com/ Learn More