Initial Commit of AgileBill Open Source

This commit is contained in:
unknown
2008-11-26 14:50:40 -08:00
parent ae5a0fc25e
commit 02306ccc47
2954 changed files with 410976 additions and 0 deletions

View File

@@ -0,0 +1,48 @@
<report>
<title>Customers</title>
<level>
<title>Company Name Specified</title>
<sql>SELECT A.email, A.company, CONCAT(A.first_name,' ', A.last_name) as name, CONCAT(address1,' ', address1,', ', city, ' ', state, ', ', zip ) as address from %%AGILE_DB_PREFIX%%account A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% AND A.company IS NOT NULL and A.company!='' AND A.id in (select distinct account_id from %%AGILE_DB_PREFIX%%account_group where group_id!=4 and group_id!=1001)</criteria>
<orderby>ORDER BY company DESC</orderby>
<indent>0</indent>
<column>
<display>Company</display>
<field>company</field>
</column>
<column>
<display>Contact</display>
<field>name</field>
</column>
<column>
<display>Address</display>
<field>address</field>
</column>
<column>
<display>E-mail</display>
<field>email</field>
</column>
</level>
<break />
<level>
<title>Company Name Not Specified</title>
<sql>SELECT A.email, CONCAT(A.first_name,' ', A.last_name) as name, CONCAT(address1,' ', address1,', ', city, ' ', state, ', ', zip ) as address from %%AGILE_DB_PREFIX%%account A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% AND (A.company IS NULL OR A.company='') AND A.id in (select distinct account_id from %%AGILE_DB_PREFIX%%account_group where group_id!=4 and group_id!=1001)</criteria> <orderby>ORDER BY company DESC</orderby>
<indent>0</indent>
<column>
<display>Contact</display>
<field>name</field>
</column>
<column>
<display>Address</display>
<field>address</field>
</column>
<column>
<display>E-mail</display>
<field>email</field>
</column>
</level>
</report>

View File

@@ -0,0 +1,37 @@
<report>
<title>Customers by Network/Domain</title>
<level>
<htmlstyle>heading</htmlstyle>
<sql>SELECT DISTINCT UCASE(substring_index(A.email,'@', -1)) as domain, count(A.id) as total, sum(B.billed_amt) as sales from %%AGILE_DB_PREFIX%%account A
join %%AGILE_DB_PREFIX%%invoice B on (A.id=B.account_id AND B.billing_status=1 )
</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% AND A.email!='' AND A.email IS NOT NULL</criteria>
<orderby>GROUP BY domain ORDER BY total DESC</orderby>
<indent>0</indent>
<column>
<display>Domain</display>
<field>domain</field>
<aggregate>true</aggregate>
<width></width>
<format></format>
<group_children_by>true</group_children_by>
<visible>true</visible>
<hide_dups>false</hide_dups>
<sql></sql>
<sql_criteria></sql_criteria>
<condition></condition>
<total>false</total>
<total_format></total_format>
<link></link>
</column>
<column>
<display>Total Customers: </display>
<field>total</field>
</column>
<column>
<display>Total Sales: </display>
<field>sales</field>
<format>dol,2</format>
</column>
</level>
</report>

View File

@@ -0,0 +1,54 @@
<report>
<title>Companies Listed Alphabetically</title>
<level>
<htmlstyle>heading</htmlstyle>
<sql>SELECT UCASE(LEFT(A.company, 1)) as fnum, count(A.id) as total from %%AGILE_DB_PREFIX%%account A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% AND A.company IS NOT NULL and A.company!='' AND A.id in (select distinct account_id from %%AGILE_DB_PREFIX%%account_group where group_id!=4 and group_id!=1001)</criteria>
<orderby>GROUP BY fnum ORDER BY fnum ASC</orderby>
<indent>0</indent>
<column>
<display></display>
<field>fnum</field>
<aggregate>true</aggregate>
<width></width>
<format></format>
<group_children_by>true</group_children_by>
<visible>true</visible>
<hide_dups>false</hide_dups>
<sql></sql>
<sql_criteria></sql_criteria>
<condition></condition>
<total>false</total>
<total_format></total_format>
<link></link>
</column>
<column>
<display>Total Customers: </display>
<field>total</field>
</column>
<level>
<sql>SELECT UCASE(LEFT(A.company, 1)) as fnum, A.email, A.company, CONCAT(A.first_name,' ', A.last_name) as name, CONCAT(address1,' ', address1,', ', city, ' ', state, ', ', zip ) as address from %%AGILE_DB_PREFIX%%account A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% AND A.company IS NOT NULL AND A.company!='' AND A.id in (select distinct account_id from %%AGILE_DB_PREFIX%%account_group where group_id!=4 and group_id!=1001)</criteria>
<orderby>ORDER BY company ASC</orderby>
<indent>30</indent>
<column>
<display>Company</display>
<field>company</field>
</column>
<column>
<display>Contact</display>
<field>name</field>
</column>
<column>
<display>Address</display>
<field>address</field>
</column>
<column>
<display>E-mail</display>
<field>email</field>
</column>
</level>
</level>
</report>

View File

@@ -0,0 +1,58 @@
<report>
<title>Industry</title>
<level>
<htmlstyle>heading</htmlstyle>
<sql>SELECT DISTINCT from_unixtime(date_orig,"%Y") as yearmonth from %%AGILE_DB_PREFIX%%account A </sql>
<criteria>A.site_id=%%DEFAULT_SITE%%</criteria>
<orderby>ORDER BY yearmonth ASC</orderby>
<indent>0</indent>
<column>
<display>Year:</display>
<field>yearmonth</field>
<aggregate>true</aggregate>
<width></width>
<format></format>
<group_children_by>true</group_children_by>
<visible>true</visible>
<hide_dups>false</hide_dups>
<sql></sql>
<sql_criteria></sql_criteria>
<condition></condition>
<total>false</total>
<total_format></total_format>
<link></link>
</column>
<level>
<sql>SELECT DISTINCT UCASE(A.value) as value, count(A.id) as quan, sum(C.total_amt) as amt, from_unixtime(B.date_orig,'%Y') as yearmonth from %%AGILE_DB_PREFIX%%static_var_record A
INNER JOIN %%AGILE_DB_PREFIX%%account B ON ( B.site_id = %%DEFAULT_SITE%% AND A.record_id=B.id AND A.static_var_relation_id=5 )
LEFT JOIN %%AGILE_DB_PREFIX%%invoice C ON ( C.site_id = %%DEFAULT_SITE%% AND C.account_id=A.record_id AND C.billing_status=1 AND C.process_status=1 )
</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY A.value ORDER BY quan ASC</orderby>
<indent>30</indent>
<column>
<display>Date</display>
<field>yearmonth</field>
<aggregate>false</aggregate>
<visible>false</visible>
</column>
<column>
<display>Industry</display>
<field>value</field>
</column>
<column>
<display>Accounts</display>
<field>quan</field>
<total>true</total>
</column>
<column>
<display>Sales Volume</display>
<field>amt</field>
<format>dol,2</format>
<total>true</total>
<total_format>dol,2</total_format>
</column>
</level>
</level>
</report>

View File

@@ -0,0 +1,38 @@
<report>
<title>New Customers</title>
<level>
<sql>SELECT DISTINCT from_unixtime(A.date_orig,"%Y-%m-%d") as ymd from %%AGILE_DB_PREFIX%%account A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>ORDER BY ymd DESC</orderby>
<indent>0</indent>
<column>
<field>ymd</field>
<display>Date</display>
<aggregate>true</aggregate>
<width></width>
<format></format>
<group_children_by>true</group_children_by>
<visible>true</visible>
<hide_dups>false</hide_dups>
<sql></sql>
<sql_criteria></sql_criteria>
<condition></condition>
<total>false</total>
</column>
<level>
<sql>SELECT from_unixtime(A.date_orig,"%Y-%m-%d") as ymd, A.email, CONCAT(A.first_name,' ', A.last_name) as name from %%AGILE_DB_PREFIX%%account A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% </criteria>
<orderby>ORDER BY name DESC</orderby>
<indent>0</indent>
<column>
<display>Name</display>
<field>name</field>
</column>
<column>
<display>E-mail</display>
<field>email</field>
</column>
</level>
<break />
</level>
</report>

View File

@@ -0,0 +1,125 @@
<report>
<title>User Preferences</title>
<level>
<title>By Language</title>
<sql>SELECT UCASE(language_id) as name, count(A.id) as total from %%AGILE_DB_PREFIX%%account A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY name ORDER BY total DESC</orderby>
<indent>0</indent>
<column>
<display>Language</display>
<field>name</field>
</column>
<column>
<display>Accounts</display>
<field>total</field>
</column>
</level>
<break />
<graph type="bar" title="" width="500" height="200" direction="vertical">
<dataset>
<sql>SELECT UCASE(language_id) as name, count(A.id) as total from %%AGILE_DB_PREFIX%%account A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY name ORDER BY total DESC</orderby>
</dataset>
</graph>
<break />
<level>
<title>By Currency</title>
<sql>SELECT UCASE(B.name) as name, count(A.id) as total from %%AGILE_DB_PREFIX%%account A join %%AGILE_DB_PREFIX%%currency B on (A.currency_id=B.id)</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY name ORDER BY total DESC</orderby>
<indent>0</indent>
<column>
<display>Currency</display>
<field>name</field>
</column>
<column>
<display>Accounts</display>
<field>total</field>
</column>
</level>
<break />
<graph type="bar" title="" width="500" height="300" direction="vertical">
<dataset>
<sql>SELECT UCASE(B.name) as name, count(A.id) as total from %%AGILE_DB_PREFIX%%account A join %%AGILE_DB_PREFIX%%currency B on (A.currency_id=B.id)</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY name ORDER BY total DESC</orderby>
</dataset>
</graph>
<break />
<level>
<title>By Site Theme</title>
<sql>SELECT UCASE(theme_id) as name, count(A.id) as total from %%AGILE_DB_PREFIX%%account A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY name ORDER BY total DESC</orderby>
<indent>0</indent>
<column>
<display>Theme</display>
<field>name</field>
</column>
<column>
<display>Accounts</display>
<field>total</field>
</column>
</level>
<break />
<graph type="bar" title="" width="500" height="200" direction="vertical">
<dataset>
<sql>SELECT UCASE(theme_id) as name, count(A.id) as total from %%AGILE_DB_PREFIX%%account A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY name ORDER BY total DESC</orderby>
</dataset>
</graph>
<break />
<level>
<title>By Account Title</title>
<sql>SELECT UCASE(title) as name, count(A.id) as total from %%AGILE_DB_PREFIX%%account A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY name ORDER BY total DESC</orderby>
<indent>0</indent>
<column>
<display>Title</display>
<field>name</field>
</column>
<column>
<display>Accounts</display>
<field>total</field>
</column>
</level>
<break />
<graph type="bar" title="" width="500" height="250" direction="vertical">
<dataset>
<sql>SELECT UCASE(title) as name, count(A.id) as total from %%AGILE_DB_PREFIX%%account A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY name ORDER BY total DESC</orderby>
</dataset>
</graph>
<break />
<level>
<title>By E-mail Formatting Preference</title>
<sql>SELECT UCASE(email_type) as name, count(A.id) as total from %%AGILE_DB_PREFIX%%account A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY name ORDER BY total DESC</orderby>
<indent>0</indent>
<column>
<display>0=Plain, 1=HTML Formatted</display>
<field>name</field>
</column>
<column>
<display>Accounts</display>
<field>total</field>
</column>
</level>
</report>

View File

@@ -0,0 +1,114 @@
<report>
<title>Breakdown By Region</title>
<level>
<title>By Country</title>
<sql>SELECT UCASE(B.name) as name, count(A.id) as total from %%AGILE_DB_PREFIX%%account A join %%AGILE_DB_PREFIX%%country B on (A.country_id=B.id)</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY name ORDER BY total DESC</orderby>
<indent>0</indent>
<column>
<display>Country</display>
<field>name</field>
</column>
<column>
<display>Accounts</display>
<field>total</field>
<total>true</total>
</column>
</level>
<break />
<graph type="bar" title="" width="900" height="300" direction="vertical">
<dataset>
<sql>SELECT B.name, count(A.id) as total from %%AGILE_DB_PREFIX%%account A join %%AGILE_DB_PREFIX%%country B on (A.country_id=B.id)</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY name ORDER BY total DESC</orderby>
</dataset>
</graph>
<break />
<level>
<title>By Region</title>
<sql>SELECT UCASE(A.state) as state, UCASE(B.name) as country, count(A.id) as total from %%AGILE_DB_PREFIX%%account A join %%AGILE_DB_PREFIX%%country B on (A.country_id=B.id)</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% and A.state!='' and A.state IS NOT NULL</criteria>
<orderby>GROUP BY state ORDER BY total DESC</orderby>
<indent>0</indent>
<column>
<display>State/Province</display>
<field>state</field>
</column>
<column>
<display>Country</display>
<field>country</field>
</column>
<column>
<display>Accounts</display>
<field>total</field>
<total>true</total>
</column>
</level>
<break />
<level>
<title>By Region/City</title>
<sql>SELECT UCASE(CONCAT(A.city, ", ", A.state)) as region, UCASE(A.city) as city, UCASE(A.state) as state, UCASE(B.name) as country, count(A.id) as total from %%AGILE_DB_PREFIX%%account A join %%AGILE_DB_PREFIX%%country B on (A.country_id=B.id)</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% and A.state!='' and A.state IS NOT NULL and A.city!='' and A.city IS NOT NULL</criteria>
<orderby>GROUP BY region ORDER BY total DESC</orderby>
<indent>0</indent>
<column>
<display>City</display>
<field>city</field>
</column>
<column>
<display>State/Province</display>
<field>state</field>
</column>
<column>
<display>Country</display>
<field>country</field>
</column>
<column>
<display>Accounts</display>
<field>total</field>
<total>true</total>
</column>
</level>
<break />
<level>
<title>By Postcode</title>
<sql>SELECT UCASE(A.zip) as region, UCASE(A.city) as city, UCASE(A.state) as state, UCASE(B.name) as country, count(A.id) as total from %%AGILE_DB_PREFIX%%account A join %%AGILE_DB_PREFIX%%country B on (A.country_id=B.id)</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% and A.zip!='' and A.zip IS NOT NULL</criteria>
<orderby>GROUP BY region ORDER BY total DESC</orderby>
<indent>0</indent>
<column>
<display>Postal Code/ZIP Code</display>
<field>region</field>
</column>
<column>
<display>City</display>
<field>city</field>
</column>
<column>
<display>State/Province</display>
<field>state</field>
</column>
<column>
<display>Country</display>
<field>country</field>
</column>
<column>
<display>Accounts</display>
<field>total</field>
<total>true</total>
</column>
</level>
<break />
</report>

View File

@@ -0,0 +1,89 @@
<report>
<title>Customers by Country and State/Province (All)</title>
<!-- country -->
<level>
<htmlstyle>heading</htmlstyle>
<sql>SELECT DISTINCT count(A.id) as total1, C.name as country from %%AGILE_DB_PREFIX%%account A
left join %%AGILE_DB_PREFIX%%country C on (A.country_id=C.id)
</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% AND A.country_id IS NOT NULL AND A.country_id!=0</criteria>
<orderby>GROUP BY country ORDER BY total1 ASC</orderby>
<indent>0</indent>
<column>
<display>Country:</display>
<field>country</field>
<aggregate>true</aggregate>
<width></width>
<format></format>
<group_children_by>true</group_children_by>
<visible>true</visible>
<hide_dups>false</hide_dups>
<sql></sql>
<sql_criteria></sql_criteria>
<condition></condition>
<total>false</total>
<total_format></total_format>
<link></link>
</column>
<column>
<display>Total Customers: </display>
<field>total1</field>
</column>
<!-- city -->
<level>
<sql>SELECT DISTINCT C.name as country, count(A.id) as total2, A.state as region from %%AGILE_DB_PREFIX%%account A
left join %%AGILE_DB_PREFIX%%country C on (A.country_id=C.id)
</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% and C.site_id = %%DEFAULT_SITE%% AND A.country_id IS NOT NULL AND A.country_id!=0</criteria>
<orderby>GROUP BY region ORDER BY region ASC</orderby>
<indent>30</indent>
<column>
<display>State/Province: </display>
<field>region</field>
<aggregate>true</aggregate>
<width></width>
<format></format>
<group_children_by>true</group_children_by>
<visible>true</visible>
<hide_dups>false</hide_dups>
<sql></sql>
<sql_criteria></sql_criteria>
<condition></condition>
<total>false</total>
<total_format></total_format>
<link></link>
</column>
<column>
<display>Total Customers: </display>
<field>total2</field>
</column>
<level>
<sql>SELECT DISTINCT A.state as region, C.name as country, A.company, A.email, CONCAT(A.first_name,' ', A.last_name) as name, CONCAT(address1,' ', address1,', ', city, ' ', state, ', ', zip ) as address from %%AGILE_DB_PREFIX%%account A
left join %%AGILE_DB_PREFIX%%country C on (A.country_id=C.id)
</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% and C.site_id = %%DEFAULT_SITE%% AND A.country_id IS NOT NULL AND A.country_id!=0</criteria>
<orderby>ORDER BY company ASC</orderby>
<indent>30</indent> >
<column>
<display>Contact</display>
<field>name</field>
</column>
<column>
<display>Company</display>
<field>company</field>
</column>
<column>
<display>Address</display>
<field>address</field>
</column>
<column>
<display>E-mail</display>
<field>email</field>
</column>
</level>
</level>
</level>
</report>

View File

@@ -0,0 +1,175 @@
<report>
<title>New Registrations</title>
<level>
<title>Yearly Registration</title>
<sql>SELECT from_unixtime(A.date_orig,"%Y") as yearmonth, count(A.id) as total from %%AGILE_DB_PREFIX%%account A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth ASC</orderby>
<indent>0</indent>
<column>
<display>Year</display>
<field>yearmonth</field>
<aggregate>true</aggregate>
<visible>true</visible>
</column>
<column>
<display>Registrations</display>
<field>total</field>
<total>true</total>
</column>
</level>
<break />
<graph type="bar" title="" width="500" height="300">
<dataset>
<sql>SELECT from_unixtime(A.date_orig,"%Y") as yearmonth, count(A.id) as total from %%AGILE_DB_PREFIX%%account A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth ASC</orderby>
</dataset>
</graph>
<break />
<level>
<title>Monthly Registration</title>
<sql>SELECT from_unixtime(A.date_orig,"%M, %Y") as yearmonth, count(A.id) as total, from_unixtime(A.date_orig, "%Y-%m") as orderby from %%AGILE_DB_PREFIX%%account A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY yearmonth ORDER BY orderby ASC</orderby>
<indent>0</indent>
<column>
<display>Month, Year</display>
<field>yearmonth</field>
<aggregate>true</aggregate>
<visible>true</visible>
</column>
<column>
<display>Registrations</display>
<field>total</field>
<total>true</total>
</column>
</level>
<break />
<graph type="line" title="" width="600" height="300">
<dataset>
<sql>SELECT from_unixtime(A.date_orig,"%M, %Y") as yearmonth, count(A.id) as total, from_unixtime(A.date_orig, "%Y-%m") as orderby from %%AGILE_DB_PREFIX%%account A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY yearmonth ORDER BY orderby ASC</orderby>
</dataset>
</graph>
<break />
<level>
<title>Weekly Registration</title>
<sql>SELECT from_unixtime(A.date_orig,"%Y-%u") as yearmonth, count(A.id) as total from %%AGILE_DB_PREFIX%%account A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth ASC</orderby>
<indent>0</indent>
<column>
<display>Year-Week</display>
<field>yearmonth</field>
<aggregate>true</aggregate>
<visible>true</visible>
</column>
<column>
<display>Registrations</display>
<field>total</field>
<total>true</total>
</column>
</level>
<break />
<graph type="line" title="" width="800" height="300">
<dataset>
<sql>SELECT from_unixtime(A.date_orig,"%Y-%u") as yearmonth, count(A.id) as total from %%AGILE_DB_PREFIX%%account A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth ASC</orderby>
</dataset>
</graph>
<break />
<!--
<level>
<title>Daily Registration</title>
<sql>SELECT from_unixtime(A.date_orig,"%Y-%m-%d") as yearmonth, count(A.id) as total from %%AGILE_DB_PREFIX%%account A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth ASC</orderby>
<indent>0</indent>
<column>
<display>Year-Month-Day</display>
<field>yearmonth</field>
<aggregate>true</aggregate>
<visible>true</visible>
</column>
<column>
<display>Registrations</display>
<field>total</field>
<total>true</total>
</column>
</level>
<break />
<graph type="line" title="" width="800" height="300">
<dataset>
<sql>SELECT from_unixtime(A.date_orig,"%Y-%m-%d") as yearmonth, count(A.id) as total from %%AGILE_DB_PREFIX%%account A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth ASC</orderby>
</dataset>
</graph>
<break />
-->
<level>
<title>Day of Week Registration</title>
<sql>SELECT from_unixtime(A.date_orig,"%W") as yearmonth, count(A.id) as total, from_unixtime(A.date_orig,"%w") as orderby from %%AGILE_DB_PREFIX%%account A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY yearmonth ORDER BY orderby ASC</orderby>
<indent>0</indent>
<column>
<display>Day of Week</display>
<field>yearmonth</field>
<aggregate>true</aggregate>
<visible>true</visible>
</column>
<column>
<display>Registrations</display>
<field>total</field>
<total>true</total>
</column>
</level>
<break />
<graph type="bar" title="" width="600" height="300">
<dataset>
<sql>SELECT from_unixtime(A.date_orig,"%W") as yearmonth, count(A.id) as total, from_unixtime(A.date_orig,"%w") as orderby from %%AGILE_DB_PREFIX%%account A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY yearmonth ORDER BY orderby ASC</orderby>
</dataset>
</graph>
<break />
<level>
<title>Hourly Registration</title>
<sql>SELECT from_unixtime(A.date_orig,"%k") as yearmonth, count(A.id) as total from %%AGILE_DB_PREFIX%%account A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth ASC</orderby>
<indent>0</indent>
<column>
<display>Hour of Day</display>
<field>yearmonth</field>
<aggregate>true</aggregate>
<visible>true</visible>
</column>
<column>
<display>Registrations</display>
<field>total</field>
<total>true</total>
</column>
</level>
<break />
<graph type="line" title="" width="800" height="300">
<dataset>
<sql>SELECT from_unixtime(A.date_orig,"%k") as yearmonth, count(A.id) as total from %%AGILE_DB_PREFIX%%account A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth ASC</orderby>
</dataset>
</graph>
<break />
</report>

View File

@@ -0,0 +1,130 @@
<report>
<title>Revenue by Card Type</title>
<level>
<htmlstyle>heading</htmlstyle>
<sql>SELECT DISTINCT from_unixtime(date_orig,"%Y") as yearmonth from %%AGILE_DB_PREFIX%%invoice A
inner join %%AGILE_DB_PREFIX%%account_billing B on (A.account_billing_id=B.id) </sql>
<criteria>A.site_id=%%DEFAULT_SITE%% and A.billing_status=1 and (A.refund_status='' OR A.refund_status is null)</criteria>
<orderby>ORDER BY yearmonth ASC</orderby>
<indent>0</indent>
<column>
<display>Year:</display>
<field>yearmonth</field>
<aggregate>true</aggregate>
<width></width>
<format></format>
<group_children_by>true</group_children_by>
<visible>true</visible>
<hide_dups>false</hide_dups>
<sql></sql>
<sql_criteria></sql_criteria>
<condition></condition>
<total>false</total>
<total_format></total_format>
<link></link>
</column>
<level>
<sql>select DISTINCT UCASE(B.card_type) as card_type, count(A.id) as quan, sum(A.total_amt) as amt, from_unixtime(A.date_orig,'%Y') as yearmonth from %%AGILE_DB_PREFIX%%invoice A
inner join %%AGILE_DB_PREFIX%%account_billing B on (A.account_billing_id=B.id) </sql>
<criteria>A.site_id = %%DEFAULT_SITE%% and B.site_id = %%DEFAULT_SITE%% and (A.refund_status='' OR A.refund_status is null)</criteria>
<orderby>GROUP BY B.card_type ORDER BY amt ASC</orderby>
<indent>30</indent>
<column>
<display>Date</display>
<field>yearmonth</field>
<aggregate>false</aggregate>
<visible>false</visible>
</column>
<column>
<display>Card Type</display>
<field>card_type</field>
</column>
<column>
<display>Invoices</display>
<field>quan</field>
<total>true</total>
</column>
<column>
<display>Amount</display>
<field>amt</field>
<format>dol,2</format>
<total>true</total>
<total_format>dol,2</total_format>
</column>
</level>
<break />
<graph type="bar" title="" width="500" height="300">
<dataset>
<sql>select UCASE(B.card_type) as card_type, sum(A.total_amt) as amt, from_unixtime(A.date_orig,'%Y') as yearmonth from %%AGILE_DB_PREFIX%%invoice A
inner join %%AGILE_DB_PREFIX%%account_billing B on (A.account_billing_id=B.id) </sql>
<criteria>A.site_id = %%DEFAULT_SITE%% and B.site_id = %%DEFAULT_SITE%% and (A.refund_status='' OR A.refund_status is null)</criteria>
<orderby>GROUP BY B.card_type ORDER BY amt ASC</orderby>
</dataset>
</graph>
</level>
<break />
<level>
<htmlstyle>heading</htmlstyle>
<sql>SELECT DISTINCT from_unixtime(date_orig,"%M, %Y") as yearmonth, from_unixtime(date_orig,"%Y-%m") as ordby from %%AGILE_DB_PREFIX%%invoice A
inner join %%AGILE_DB_PREFIX%%account_billing B on (A.account_billing_id=B.id) </sql>
<criteria>A.site_id=%%DEFAULT_SITE%% and A.billing_status=1 and (A.refund_status='' OR A.refund_status is null)</criteria>
<orderby>ORDER BY ordby ASC</orderby>
<indent>0</indent>
<column>
<display>Month: </display>
<field>yearmonth</field>
<aggregate>true</aggregate>
<width></width>
<format></format>
<group_children_by>true</group_children_by>
<visible>true</visible>
<hide_dups>false</hide_dups>
<sql></sql>
<sql_criteria></sql_criteria>
<condition></condition>
<total>false</total>
<total_format></total_format>
<link></link>
</column>
<level>
<sql>select DISTINCT UCASE(B.card_type) as card_type, count(A.id) as quan, sum(A.total_amt) as amt, from_unixtime(A.date_orig,'%M, %Y') as yearmonth, from_unixtime(date_orig,"%Y-%m") as ordby from %%AGILE_DB_PREFIX%%invoice A
inner join %%AGILE_DB_PREFIX%%account_billing B on (A.account_billing_id=B.id) </sql>
<criteria>A.site_id = %%DEFAULT_SITE%% and B.site_id = %%DEFAULT_SITE%% and (A.refund_status='' OR A.refund_status is null)</criteria>
<orderby>GROUP BY B.card_type ORDER BY ordby</orderby>
<indent>30</indent>
<column>
<display>Date</display>
<field>yearmonth</field>
<aggregate>false</aggregate>
<visible>false</visible>
</column>
<column>
<display>Card Type</display>
<field>card_type</field>
</column>
<column>
<display>Invoices</display>
<field>quan</field>
<total>true</total>
</column>
<column>
<display>Amount</display>
<field>amt</field>
<format>dol,2</format>
<total>true</total>
<total_format>dol,2</total_format>
</column>
</level>
<break />
<graph type="bar" title="" width="500" height="300">
<dataset>
<sql>select UCASE(B.card_type) as card_type, sum(A.total_amt) as amt, from_unixtime(A.date_orig,'%M, %Y') as yearmonth from %%AGILE_DB_PREFIX%%invoice A
inner join %%AGILE_DB_PREFIX%%account_billing B on (A.account_billing_id=B.id) </sql>
<criteria>A.site_id = %%DEFAULT_SITE%% and B.site_id = %%DEFAULT_SITE%% and (A.refund_status='' OR A.refund_status is null)</criteria>
<orderby>GROUP BY B.card_type ORDER BY amt</orderby>
</dataset>
</graph>
</level>
</report>

View File

@@ -0,0 +1,19 @@
<report>
<title>Card Expiration Dates</title>
<level>
<title>Summary by Month and Year</title>
<sql>SELECT count(id) as total, CONCAT( "20", card_exp_year, "-", card_exp_month) as expire from %%AGILE_DB_PREFIX%%account_billing A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY expire ORDER BY expire ASC</orderby>
<indent>0</indent>
<column>
<display>Expire Year-Month</display>
<field>expire</field>
</column>
<column>
<display>Total</display>
<field>total</field>
<total>true</total>
</column>
</level>
</report>

View File

@@ -0,0 +1,70 @@
<report>
<title>Monthly Revenue by Affiliate</title>
<level>
<htmlstyle>heading</htmlstyle>
<sql>select from_unixtime(A.date_orig,'%Y%m') as yearmonth, from_unixtime(A.date_orig,'%M, %Y') as dates, A.sku, B.account_id from %%AGILE_DB_PREFIX%%invoice_item A inner JOIN %%AGILE_DB_PREFIX%%invoice B ON (A.invoice_id=B.id and billing_status=1 and (refund_status=0 or refund_status is null) and B.site_id=%%DEFAULT_SITE%%)</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% AND (B.affiliate_id > 0 OR B.affiliate_id IS NOT NULL)</criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth DESC</orderby>
<indent>0</indent>
<column>
<field>yearmonth</field>
<aggregate>true</aggregate>
<width></width>
<format></format>
<group_children_by>true</group_children_by>
<visible>false</visible>
<hide_dups>false</hide_dups>
<sql></sql>
<sql_criteria></sql_criteria>
<condition></condition>
<total>false</total>
<total_format></total_format>
<link></link>
</column>
<column>
<display>Breakdown for Month: </display>
<field>dates</field>
<visible>true</visible>
</column>
<level>
<sql>select CONCAT(C.first_name,' ', C.last_name,' ', C.company) as affiliate_name, B.id as aid, count(A.id) as quan, sum(A.total_amt) as amt,
from_unixtime(A.date_orig,'%Y%m') as yearmonth, B.account_id from %%AGILE_DB_PREFIX%%invoice A
JOIN %%AGILE_DB_PREFIX%%affiliate B ON (A.affiliate_id=B.id and B.site_id=%%DEFAULT_SITE%%)
JOIN %%AGILE_DB_PREFIX%%account C ON (B.account_id=C.id and C.site_id=%%DEFAULT_SITE%%)</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% AND (A.affiliate_id > 0 OR A.affiliate_id IS NOT NULL)
and A.billing_status=1 and (A.refund_status=0 or A.refund_status is null)</criteria>
<orderby>GROUP BY aid ORDER BY amt DESC</orderby>
<indent>30</indent>
<column>
<display />
<field>yearmonth</field>
<aggregate>false</aggregate>
<visible>false</visible>
</column>
<column>
<display>Affiliate ID</display>
<field>aid</field>
</column>
<column>
<display>Affiliate Name</display>
<field>affiliate_name</field>
</column>
<column>
<display>Invoice Quantity</display>
<field>quan</field>
<total>true</total>
<format>num,0</format>
<total_format>num,0</total_format>
</column>
<column>
<display>Invoice Amount</display>
<field>amt</field>
<format>dol,2</format>
<total>true</total>
<total_format>dol,2</total_format>
</column>
</level>
<break />
</level>
</report>

View File

@@ -0,0 +1,122 @@
<report>
<title>Service Cancelations</title>
<level>
<title>Service Cancelations (With Outstanding Balance)</title>
<sql><![CDATA[SELECT DISTINCT from_unixtime(A.date_last,"%Y-%m-%d") as ymd
FROM %%AGILE_DB_PREFIX%%service A
JOIN %%AGILE_DB_PREFIX%%account B ON (A.account_id=B.id)
RIGHT JOIN %%AGILE_DB_PREFIX%%invoice_item C ON (C.service_id=A.id)
RIGHT JOIN %%AGILE_DB_PREFIX%%invoice D ON (D.billing_status <> 1 AND D.id=C.invoice_id )
]]></sql>
<criteria>A.site_id = %%DEFAULT_SITE%% AND A.suspend_billing = 1</criteria>
<orderby>ORDER BY ymd DESC</orderby>
<indent>0</indent>
<column>
<field>ymd</field>
<display>Date</display>
<aggregate>true</aggregate>
<width></width>
<format></format>
<group_children_by>true</group_children_by>
<visible>true</visible>
<hide_dups>false</hide_dups>
<sql></sql>
<sql_criteria></sql_criteria>
<condition></condition>
<total>false</total>
</column>
<level>
<sql><![CDATA[SELECT DISTINCT from_unixtime(A.date_last,"%Y-%m-%d") as ymd, A.id as serviceId,
B.email, CONCAT(B.first_name,' ', B.last_name) as name,
D.total_amt as due
FROM %%AGILE_DB_PREFIX%%service A
JOIN %%AGILE_DB_PREFIX%%account B ON (A.account_id=B.id)
RIGHT JOIN %%AGILE_DB_PREFIX%%invoice_item C ON (C.service_id=A.id)
RIGHT JOIN %%AGILE_DB_PREFIX%%invoice D ON (D.billing_status <> 1 AND D.id=C.invoice_id )
]]></sql>
<criteria>A.site_id = %%DEFAULT_SITE%% AND A.suspend_billing = 1</criteria>
<orderby>ORDER BY name DESC</orderby>
<indent>0</indent>
<column>
<display>Name</display>
<field>name</field>
</column>
<column>
<display>E-mail</display>
<field>email</field>
</column>
<column>
<display>Service Id</display>
<field>serviceId</field>
</column>
<column>
<display>Outstanding Amt Due</display>
<field>due</field>
</column>
</level>
<break />
</level>
<level>
<title>Service Cancelations (With No Outstanding Balance)</title>
<sql>SELECT DISTINCT from_unixtime(A.date_last,"%Y-%m-%d") as ymd FROM %%AGILE_DB_PREFIX%%service A </sql>
<criteria><![CDATA[
WHERE A.suspend_billing = 1 AND
NOT EXISTS
(
SELECT t1.id FROM %%AGILE_DB_PREFIX%%invoice_item AS t1
RIGHT JOIN %%AGILE_DB_PREFIX%%invoice AS t2 ON ( t2.id = t1.invoice_id and t2.billing_status <> 1 )
WHERE t1.service_id = A.id
)
]]></criteria>
<orderby>ORDER BY ymd DESC</orderby>
<indent>0</indent>
<column>
<field>ymd</field>
<display>Date</display>
<aggregate>true</aggregate>
<width></width>
<format></format>
<group_children_by>true</group_children_by>
<visible>true</visible>
<hide_dups>false</hide_dups>
<sql></sql>
<sql_criteria></sql_criteria>
<condition></condition>
<total>false</total>
</column>
<level>
<sql>SELECT DISTINCT from_unixtime(A.date_last,"%Y-%m-%d") as ymd, A.id as serviceId,
B.email, CONCAT(B.first_name,' ', B.last_name) as name
FROM %%AGILE_DB_PREFIX%%service A
JOIN %%AGILE_DB_PREFIX%%account B ON (A.account_id=B.id)
</sql>
<criteria><![CDATA[
WHERE A.suspend_billing = 1 AND
NOT EXISTS
(
SELECT t1.id FROM %%AGILE_DB_PREFIX%%invoice_item AS t1
RIGHT JOIN %%AGILE_DB_PREFIX%%invoice AS t2 ON ( t2.id = t1.invoice_id and t2.billing_status <> 1 )
WHERE t1.service_id = A.id
)
]]></criteria>
<orderby>ORDER BY name DESC</orderby>
<indent>0</indent>
<column>
<display>Name</display>
<field>name</field>
</column>
<column>
<display>E-mail</display>
<field>email</field>
</column>
<column>
<display>Service Id</display>
<field>serviceId</field>
</column>
</level>
<break />
</level>
</report>

View File

@@ -0,0 +1,85 @@
<report>
<title>Revenue Report by Checkout Plugin</title>
<level>
<title>Overview</title>
<sql>SELECT A.name, sum(B.billed_amt) as amt, count(B.id) as quan from %%AGILE_DB_PREFIX%%checkout A join %%AGILE_DB_PREFIX%%invoice B on(A.id=B.checkout_plugin_id and B.billing_status=1 and (B.refund_status='' OR B.refund_status is null))</sql>
<criteria>A.site_id=%%DEFAULT_SITE%% and B.site_id=%%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY name ORDER BY amt DESC</orderby>
<indent>30</indent>
<column>
<display>Checkout Option</display>
<field>name</field>
</column>
<column>
<display>Invoices</display>
<field>quan</field>
<total>true</total>
</column>
<column>
<display>Amount</display>
<field>amt</field>
<format>dol,2</format>
<total>true</total>
<total_format>dol,2</total_format>
</column>
</level>
<break />
<graph type="bar" title="" width="500" height="300">
<dataset>
<sql>SELECT A.name, sum(B.billed_amt) as amt from %%AGILE_DB_PREFIX%%checkout A join %%AGILE_DB_PREFIX%%invoice B on(A.id=B.checkout_plugin_id and B.billing_status=1 and (B.refund_status='' OR B.refund_status is null))</sql>
<criteria>A.site_id=%%DEFAULT_SITE%% and B.site_id=%%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY name ORDER BY amt DESC</orderby>
</dataset>
</graph>
<break />
<level>
<sql>SELECT B.name, sum(A.billed_amt) as amt, count(B.id) as quan from %%AGILE_DB_PREFIX%%invoice A join %%AGILE_DB_PREFIX%%checkout B on (A.checkout_plugin_id=B.id)</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% and A.billing_status=1 and (A.refund_status IS NULL or A.refund_status!='')</criteria>
<orderby>GROUP BY name ORDER BY amt DESC</orderby>
<indent>0</indent>
<column>
<display>Checkout Option: </display>
<field>name</field>
<aggregate>true</aggregate>
<width></width>
<format></format>
<group_children_by>true</group_children_by>
<visible>true</visible>
<hide_dups>false</hide_dups>
<sql></sql>
<sql_criteria></sql_criteria>
<condition></condition>
<total>false</total>
<total_format></total_format>
<link></link>
</column>
<column>
<display>Invoices</display>
<field>quan</field>
<total>true</total>
</column>
<column>
<display>Amount</display>
<field>amt</field>
<format>dol,2</format>
</column>
<graph type="line" title="" width="800" height="300">
<dataset>
<sql>SELECT from_unixtime(A.date_orig,"%Y-%U") as yearmonth, sum(A.billed_amt) as amt, B.name from %%AGILE_DB_PREFIX%%invoice A
join %%AGILE_DB_PREFIX%%checkout B on (A.checkout_plugin_id=B.id)</sql>
<criteria>A.site_id=%%DEFAULT_SITE%% and B.site_id=%%DEFAULT_SITE%% and (A.refund_status IS NULL or A.refund_status!='')</criteria>
<orderby>GROUP BY yearmonth, name ORDER BY yearmonth ASC</orderby>
</dataset>
</graph>
<break />
</level>
</report>

View File

@@ -0,0 +1,60 @@
<report>
<title>Discount Report</title>
<graph type="bar" title="" width="800" height="300" x_angle="0" direction="vertical">
<dataset>
<sql>SELECT discount, sum(amount) as amount from %%AGILE_DB_PREFIX%%invoice_item_discount A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY discount ORDER BY amount DESC</orderby>
</dataset>
</graph>
<break />
<level>
<sql>SELECT discount,invoice_id, count(invoice_id) as sales, sum(amount) as amount from %%AGILE_DB_PREFIX%%invoice_item_discount A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY discount ORDER BY amount DESC</orderby>
<indent>0</indent>
<column>
<display>Discount Code</display>
<field>discount</field>
<aggregate>true</aggregate>
<visible>true</visible>
</column>
<column>
<display>Items Discounted</display>
<field>sales</field>
<total>true</total>
</column>
<column>
<display>Discount Amount</display>
<field>amount</field>
<total>true</total>
<format>dol,2</format>
<total_format>dol,2</total_format>
</column>
</level>
<break />
<graph type="bar" title="" width="800" height="300" x_angle="0" direction="vertical">
<dataset>
<sql>SELECT from_unixtime(date_orig,"%Y") as yearmonth, sum(amount) as amount from %%AGILE_DB_PREFIX%%invoice_item_discount A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth DESC</orderby>
</dataset>
</graph>
<break />
<graph type="line" title="" width="800" height="300" x_angle="0" direction="vertical">
<dataset>
<sql>SELECT from_unixtime(date_orig,"%Y-%u") as yearmonth, sum(amount) as amount from %%AGILE_DB_PREFIX%%invoice_item_discount A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth ASC</orderby>
</dataset>
</graph>
</report>

View File

@@ -0,0 +1,29 @@
<report>
<title>Account Group Membership</title>
<level>
<sql>SELECT B.name as group_name, count(A.id) as total from %%AGILE_DB_PREFIX%%account_group A join %%AGILE_DB_PREFIX%%group B on A.group_id=B.id</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% and A.active=1 </criteria>
<orderby>GROUP BY group_name ORDER BY total DESC</orderby>
<indent>0</indent>
<column>
<display>Group Name</display>
<field>group_name</field>
<visible>true</visible>
</column>
<column>
<display>Account Members</display>
<field>total</field>
<total>true</total>
<total_format>num</total_format>
</column>
</level>
<graph type="bar" title="Group Membership Graph" width="800" height="350" x_angle="0" direction="vertical">
<dataset>
<sql>SELECT B.name as group_name, count(A.id) as total from %%AGILE_DB_PREFIX%%account_group A join %%AGILE_DB_PREFIX%%group B on A.group_id=B.id</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% and A.active=1 </criteria>
<orderby>GROUP BY group_name ORDER BY total DESC</orderby>
</dataset>
</graph>
</report>

View File

@@ -0,0 +1,29 @@
<report>
<title>Service Group Membership</title>
<level>
<sql>SELECT B.sku as group_name, count(A.id) as total from %%AGILE_DB_PREFIX%%account_group A inner join %%AGILE_DB_PREFIX%%service B on A.service_id=B.id</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% and A.active=1 AND A.service_id IS NOT NULL and A.service_id!=0</criteria>
<orderby>GROUP BY group_name ORDER BY total DESC</orderby>
<indent>0</indent>
<column>
<display>Group Name</display>
<field>group_name</field>
<visible>true</visible>
</column>
<column>
<display>Account Members</display>
<field>total</field>
<total>true</total>
<total_format>num</total_format>
</column>
</level>
<graph type="bar" title="Group Membership Graph" width="600" height="250" x_angle="0" direction="vertical">
<dataset>
<sql>SELECT B.sku as group_name, count(A.id) as total from %%AGILE_DB_PREFIX%%account_group A inner join %%AGILE_DB_PREFIX%%service B on A.service_id=B.id</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% and A.active=1 AND A.service_id IS NOT NULL and A.service_id!=0</criteria>
<orderby>GROUP BY group_name ORDER BY total DESC</orderby>
</dataset>
</graph>
</report>

View File

@@ -0,0 +1,41 @@
<report>
<title>Server Statistics</title>
<level>
<htmlstyle>heading</htmlstyle>
<sql>SELECT B.name, count(A.id) as total, sum(A.price) as total_amt from %%AGILE_DB_PREFIX%%service A inner join %%AGILE_DB_PREFIX%%host_server B on B.id=A.host_server_id</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% and A.active=1 and A.type LIKE '%host%' </criteria>
<orderby>GROUP BY name ORDER BY total_amt DESC</orderby>
<indent>0</indent>
<column>
<display>Server</display>
<field>name</field>
<aggregate>true</aggregate>
<width></width>
<format></format>
<group_children_by>true</group_children_by>
<visible>true</visible>
<hide_dups>false</hide_dups>
<sql></sql>
<sql_criteria></sql_criteria>
<condition></condition>
<total>false</total>
</column>
<level>
<sql>SELECT B.name, A.sku, count(A.id) as total, sum(A.price) as total_amt from %%AGILE_DB_PREFIX%%service A inner join %%AGILE_DB_PREFIX%%host_server B on B.id=A.host_server_id</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% and A.active=1 AND A.type LIKE '%host%'</criteria>
<orderby>GROUP BY sku ORDER BY sku DESC</orderby>
<indent>30</indent>
<column>
<display>SKU</display>
<field>sku</field>
<visible>true</visible>
</column>
<column>
<display>Total Services</display>
<field>total</field>
<total>true</total>
<format>num</format>
</column>
</level>
</level>
</report>

View File

@@ -0,0 +1,121 @@
<report>
<title>TLD Statistics</title>
<level>
<sql>SELECT A.domain_tld, count(A.id) as total, sum(B.total_amt) as total_amt from %%AGILE_DB_PREFIX%%service A join %%AGILE_DB_PREFIX%%invoice_item B on A.invoice_item_id=B.id</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% and A.active=1 and A.type LIKE '%domain%' </criteria>
<orderby>GROUP BY domain_tld ORDER BY total_amt DESC</orderby>
<indent>0</indent>
<column>
<display>TLD</display>
<field>domain_tld</field>
<visible>true</visible>
</column>
<column>
<display>Total Registrations</display>
<field>total</field>
<total>true</total>
</column>
<column>
<display>Total Sales</display>
<field>total_amt</field>
<total>true</total>
<total_format>dol,2</total_format>
</column>
</level>
<break />
<level>
<htmlstyle>heading</htmlstyle>
<sql>SELECT DISTINCT from_unixtime(A.date_orig,"%Y") as yearmonth, A.domain_tld, count(A.id) as total, sum(B.total_amt) as total_amt from %%AGILE_DB_PREFIX%%service A join %%AGILE_DB_PREFIX%%invoice_item B on A.invoice_item_id=B.id</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% and A.active=1 and A.type LIKE '%domain%' </criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth</orderby>
<indent>0</indent>
<column>
<display>Year:</display>
<field>yearmonth</field>
<aggregate>true</aggregate>
<width></width>
<format></format>
<group_children_by>true</group_children_by>
<visible>true</visible>
<hide_dups>false</hide_dups>
<sql></sql>
<sql_criteria></sql_criteria>
<condition></condition>
<total>false</total>
<total_format></total_format>
<link></link>
</column>
<level>
<sql>SELECT from_unixtime(A.date_orig,"%Y") as yearmonth, A.domain_tld, count(A.id) as total, sum(B.total_amt) as total_amt from %%AGILE_DB_PREFIX%%service A join %%AGILE_DB_PREFIX%%invoice_item B on A.invoice_item_id=B.id</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% and A.active=1 and A.type LIKE '%domain%' </criteria>
<orderby>GROUP BY domain_tld ORDER BY total_amt DESC</orderby>
<indent>30</indent>
<column>
<display>TLD</display>
<field>domain_tld</field>
<visible>true</visible>
</column>
<column>
<display>Total Registrations</display>
<field>total</field>
<total>true</total>
</column>
<column>
<display>Total Sales</display>
<field>total_amt</field>
<total>true</total>
<total_format>dol,2</total_format>
</column>
</level>
</level>
<break />
<level>
<htmlstyle>heading</htmlstyle>
<sql>SELECT DISTINCT from_unixtime(A.date_orig,"%M, %Y") as yearmonth, A.domain_tld, count(A.id) as total, sum(B.total_amt) as total_amt from %%AGILE_DB_PREFIX%%service A join %%AGILE_DB_PREFIX%%invoice_item B on A.invoice_item_id=B.id</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% and A.active=1 and A.type LIKE '%domain%' </criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth</orderby>
<indent>0</indent>
<column>
<display>Month, Year:</display>
<field>yearmonth</field>
<aggregate>true</aggregate>
<width></width>
<format></format>
<group_children_by>true</group_children_by>
<visible>true</visible>
<hide_dups>false</hide_dups>
<sql></sql>
<sql_criteria></sql_criteria>
<condition></condition>
<total>false</total>
<total_format></total_format>
<link></link>
</column>
<level>
<sql>SELECT from_unixtime(A.date_orig,"%M, %Y") as yearmonth, A.domain_tld, count(A.id) as total, sum(B.total_amt) as total_amt from %%AGILE_DB_PREFIX%%service A join %%AGILE_DB_PREFIX%%invoice_item B on A.invoice_item_id=B.id</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% and A.active=1 and A.type LIKE '%domain%' </criteria>
<orderby>GROUP BY domain_tld ORDER BY total_amt DESC</orderby>
<indent>30</indent>
<column>
<display>TLD</display>
<field>domain_tld</field>
<visible>true</visible>
</column>
<column>
<display>Total Registrations</display>
<field>total</field>
<total>true</total>
</column>
<column>
<display>Total Sales</display>
<field>total_amt</field>
<total>true</total>
<total_format>dol,2</total_format>
</column>
</level>
</level>
</report>

View File

@@ -0,0 +1,187 @@
<report>
<title>General Sales Report</title>
<level>
<title>Yearly Overview</title>
<sql>SELECT A.account_id as account, from_unixtime(date_orig,"%Y") as yearmonth, count(id) as sales, sum(total_amt) as amount from %%AGILE_DB_PREFIX%%invoice A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% AND billing_status=1</criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth ASC</orderby>
<indent>0</indent>
<column>
<display>Year:</display>
<field>yearmonth</field>
<aggregate>true</aggregate>
<visible>true</visible>
</column>
<column>
<display>Sales</display>
<field>sales</field>
<total>true</total>
</column>
<column>
<display>Revenue</display>
<field>amount</field>
<total>true</total>
<format>dol,2</format>
<total_format>dol,2</total_format>
</column>
</level>
<break />
<graph type="bar" title="" width="600" height="300" x_angle="0" direction="horizontal">
<dataset>
<sql>SELECT from_unixtime(date_orig,"%Y") as yearmonth, sum(total_amt) as amount from %%AGILE_DB_PREFIX%%invoice A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth ASC</orderby>
</dataset>
</graph>
<break />
<level>
<title>Monthly Overview</title>
<sql>SELECT A.account_id as account, from_unixtime(date_orig,"%M, %Y") as yearmonth, count(id) as sales, sum(total_amt) as amount from %%AGILE_DB_PREFIX%%invoice A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% AND billing_status=1</criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth ASC</orderby>
<indent>0</indent>
<column>
<display>Month and Year:</display>
<field>yearmonth</field>
<aggregate>true</aggregate>
<visible>true</visible>
</column>
<column>
<display>Sales</display>
<field>sales</field>
<total>true</total>
</column>
<column>
<display>Revenue</display>
<field>amount</field>
<total>true</total>
<format>dol,2</format>
<total_format>dol,2</total_format>
</column>
</level>
<break />
<graph type="bar" title="" width="600" height="300" x_angle="0" direction="vertical">
<dataset>
<sql>SELECT from_unixtime(date_orig,"%M, %Y") as yearmonth, sum(total_amt) as amount from %%AGILE_DB_PREFIX%%invoice A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth ASC</orderby>
</dataset>
</graph>
<break />
<level>
<title>Weekly Overview</title>
<sql>SELECT A.account_id as account, from_unixtime(date_orig,"%Y-%u") as yearmonth, count(id) as sales, sum(total_amt) as amount from %%AGILE_DB_PREFIX%%invoice A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% AND billing_status=1</criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth ASC</orderby>
<indent>0</indent>
<column>
<display>Year and Week Number:</display>
<field>yearmonth</field>
<aggregate>true</aggregate>
<visible>true</visible>
</column>
<column>
<display>Sales</display>
<field>sales</field>
<total>true</total>
</column>
<column>
<display>Revenue</display>
<field>amount</field>
<total>true</total>
<format>dol,2</format>
<total_format>dol,2</total_format>
</column>
</level>
<break />
<graph type="line" title="" width="800" height="300" x_angle="0" direction="vertical">
<dataset>
<sql>SELECT from_unixtime(date_orig,"%Y-%u") as yearmonth, sum(total_amt) as amount from %%AGILE_DB_PREFIX%%invoice A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth ASC</orderby>
</dataset>
</graph>
<break />
<level>
<title>Daily Overview</title>
<sql>SELECT A.account_id as account, from_unixtime(date_orig,"%m-%d-%Y") as yearmonth, count(id) as sales, sum(total_amt) as amount from %%AGILE_DB_PREFIX%%invoice A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% AND billing_status=1</criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth ASC</orderby>
<indent>0</indent>
<column>
<display>Month, Day, and Year:</display>
<field>yearmonth</field>
<aggregate>true</aggregate>
<visible>true</visible>
</column>
<column>
<display>Sales</display>
<field>sales</field>
<total>true</total>
</column>
<column>
<display>Revenue</display>
<field>amount</field>
<total>true</total>
<format>dol,2</format>
<total_format>dol,2</total_format>
</column>
</level>
<break />
<graph type="line" title="" width="800" height="300" x_angle="0" direction="vertical">
<dataset>
<sql>SELECT from_unixtime(date_orig,"%m-%d-%Y") as yearmonth, sum(total_amt) as amount from %%AGILE_DB_PREFIX%%invoice A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth ASC</orderby>
</dataset>
</graph>
<break />
<level>
<title>Hourly Overview</title>
<sql>SELECT A.account_id as account, from_unixtime(date_orig,"%k") as yearmonth, count(id) as sales, sum(total_amt) as amount from %%AGILE_DB_PREFIX%%invoice A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% AND billing_status=1</criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth ASC</orderby>
<indent>0</indent>
<column>
<display>Hour of Day:</display>
<field>yearmonth</field>
<aggregate>true</aggregate>
<visible>true</visible>
</column>
<column>
<display>Sales</display>
<field>sales</field>
<total>true</total>
</column>
<column>
<display>Revenue</display>
<field>amount</field>
<total>true</total>
<format>dol,2</format>
<total_format>dol,2</total_format>
</column>
</level>
<break />
<graph type="line" title="" width="800" height="300" x_angle="0" direction="vertical">
<dataset>
<sql>SELECT from_unixtime(date_orig,"%k") as yearmonth, sum(total_amt) as amount from %%AGILE_DB_PREFIX%%invoice A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth ASC</orderby>
</dataset>
</graph>
</report>

View File

@@ -0,0 +1,88 @@
<report>
<title>Monthly Sales by SKU</title>
<level>
<htmlstyle>heading</htmlstyle>
<sql>select from_unixtime(A.date_orig,'%Y%m') as yearmonth, from_unixtime(A.date_orig,'%M, %Y') as dates, A.sku, B.account_id from %%AGILE_DB_PREFIX%%invoice_item A inner JOIN %%AGILE_DB_PREFIX%%invoice B ON (A.invoice_id=B.id and billing_status=1 and (refund_status=0 or refund_status is null) and B.site_id=%%DEFAULT_SITE%%)</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth DESC</orderby>
<indent>0</indent>
<column>
<field>yearmonth</field>
<aggregate>true</aggregate>
<width></width>
<format></format>
<group_children_by>true</group_children_by>
<visible>false</visible>
<hide_dups>false</hide_dups>
<sql></sql>
<sql_criteria></sql_criteria>
<condition></condition>
<total>false</total>
<total_format></total_format>
<link></link>
<user_criteria type="date_year_month" />
</column>
<column>
<display>Breakdown for Month: </display>
<field>dates</field>
<visible>true</visible>
</column>
<column>
<display>Account</display>
<field>B.account_id</field>
<visible>false</visible>
<user_criteria type="auto_account"/>
</column>
<column>
<display>SKU</display>
<field>sku</field>
<visible>false</visible>
<user_criteria type="text"/>
</column>
<level>
<sql>select A.sku, sum(A.quantity) as quan, sum(A.total_amt) as amt, from_unixtime(A.date_orig,'%Y%m') as yearmonth, B.account_id from %%AGILE_DB_PREFIX%%invoice_item A inner JOIN %%AGILE_DB_PREFIX%%invoice B ON (A.invoice_id=B.id and billing_status=1 and (refund_status=0 or refund_status is null) and B.site_id=%%DEFAULT_SITE%%)</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY yearmonth, sku ORDER BY amt DESC</orderby>
<indent>30</indent>
<column>
<display />
<field>yearmonth</field>
<aggregate>false</aggregate>
<visible>false</visible>
</column>
<column>
<display>SKU</display>
<field>sku</field>
</column>
<column>
<display>Quantity</display>
<field>quan</field>
<total>true</total>
<format>num,0</format>
<total_format>num,0</total_format>
</column>
<column>
<display>Amount</display>
<field>amt</field>
<format>dol,2</format>
<total>true</total>
<total_format>dol,2</total_format>
</column>
<column>
<display>Account</display>
<field>B.account_id</field>
<visible>false</visible>
<user_criteria type="auto_account"/>
</column>
</level>
<break />
<graph type="bar" title="" width="800" height="350">
<dataset>
<sql>select A.sku, sum(A.total_amt) as amt, from_unixtime(A.date_orig,'%Y%m') as yearmonth, B.account_id from %%AGILE_DB_PREFIX%%invoice_item A inner JOIN %%AGILE_DB_PREFIX%%invoice B ON (A.invoice_id=B.id and billing_status=1 and (refund_status=0 or refund_status is null) and B.site_id=%%DEFAULT_SITE%%)</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY yearmonth, sku ORDER BY amt DESC</orderby>
</dataset>
</graph>
<break />
</level>
</report>

View File

@@ -0,0 +1,78 @@
<report>
<title>Yearly Sales by SKU</title>
<level>
<htmlstyle>heading</htmlstyle>
<sql>select from_unixtime(A.date_orig,'%Y') as year, A.sku, B.account_id from %%AGILE_DB_PREFIX%%invoice_item A inner JOIN %%AGILE_DB_PREFIX%%invoice B ON (A.invoice_id=B.id and billing_status=1 and (refund_status=0 or refund_status is null) and B.site_id=%%DEFAULT_SITE%%)</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY year ORDER BY year DESC</orderby>
<indent>0</indent>
<column>
<display>Breakdown for Year:</display>
<field>year</field>
<aggregate>true</aggregate>
<width></width>
<format></format>
<group_children_by>true</group_children_by>
<visible>true</visible>
<hide_dups>false</hide_dups>
<sql></sql>
<sql_criteria></sql_criteria>
<condition></condition>
<total>false</total>
<total_format></total_format>
<link></link>
<user_criteria type="date_year" aggregate="true" />
</column>
<column>
<display>Account</display>
<field>B.account_id</field>
<visible>false</visible>
<user_criteria type="auto_account"/>
</column>
<column>
<display>SKU</display>
<field>sku</field>
<visible>false</visible>
<user_criteria type="text"/>
</column>
<level>
<sql>select A.sku, sum(A.quantity) as quan, sum(A.total_amt) as amt, from_unixtime(A.date_orig,'%Y') as year, B.account_id from %%AGILE_DB_PREFIX%%invoice_item A inner JOIN %%AGILE_DB_PREFIX%%invoice B ON (A.invoice_id=B.id and billing_status=1 and (refund_status=0 or refund_status is null) and B.site_id=%%DEFAULT_SITE%%)</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY year, sku ORDER BY amt DESC</orderby>
<indent>30</indent>
<column>
<display />
<field>year</field>
<aggregate>false</aggregate>
<visible>false</visible>
</column>
<column>
<display>SKU</display>
<field>sku</field>
</column>
<column>
<display>Quantity</display>
<field>quan</field>
<total>true</total>
<format>num,0</format>
<total_format>num,0</total_format>
</column>
<column>
<display>Amount</display>
<field>amt</field>
<format>dol,2</format>
<total>true</total>
<total_format>dol,2</total_format>
</column>
</level>
<break />
<graph type="bar" title="" width="800" height="350">
<dataset>
<sql>select A.sku, sum(A.total_amt) as amt, from_unixtime(A.date_orig,'%Y') as year, B.account_id from %%AGILE_DB_PREFIX%%invoice_item A inner JOIN %%AGILE_DB_PREFIX%%invoice B ON (A.invoice_id=B.id and billing_status=1 and (refund_status=0 or refund_status is null) and B.site_id=%%DEFAULT_SITE%%)</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY year, sku ORDER BY amt DESC</orderby>
</dataset>
</graph>
<break />
</level>
</report>

View File

@@ -0,0 +1,64 @@
<report>
<title>Services By Customer and SKU</title>
<level>
<sql>SELECT DISTINCT A.id as account_id,company,CONCAT(first_name,' ', last_name) as name,email,username from %%AGILE_DB_PREFIX%%account A
JOIN %%AGILE_DB_PREFIX%%service as B ON(B.account_id=A.id and B.active=1 AND B.price_type=1) </sql>
<criteria>A.site_id = %%DEFAULT_SITE%% </criteria>
<orderby>GROUP BY account_id ORDER BY company DESC</orderby>
<indent>0</indent>
<column>
<display>account_id</display>
<field>account_id</field>
<visible>false</visible>
<aggregate>true</aggregate>
<group_children_by>true</group_children_by>
<total>false</total>
</column>
<column>
<display>Company:</display>
<field>company</field>
<visible>true</visible>
</column>
<column>
<display>Name:</display>
<field>name</field>
<visible>true</visible>
</column>
<column>
<display>E-mail:</display>
<field>email</field>
<visible>true</visible>
</column>
<level>
<sql>SELECT DISTINCT B.sku, B.account_id as account_id, count(B.id) as total, sum(B.price) as price
FROM %%AGILE_DB_PREFIX%%account A
JOIN %%AGILE_DB_PREFIX%%service as B ON(B.account_id=A.id and B.active=1 AND B.price_type=1) </sql>
<criteria>A.site_id = %%DEFAULT_SITE%% </criteria>
<orderby>GROUP BY sku ORDER BY sku DESC</orderby>
<indent>30</indent>
<column>
<display>SKU</display>
<field>sku</field>
<visible>true</visible>
</column>
<column>
<display>Total Services for SKU</display>
<field>total</field>
<total>true</total>
<format>num</format>
</column>
<column>
<display>Forcasted Revenue</display>
<field>price</field>
<total>true</total>
<format>dol,2</format>
<total_format>dol,2</total_format>
</column>
</level>
</level>
</report>

View File

@@ -0,0 +1,80 @@
<report>
<title>Recurring Service Billing Forcast</title>
<level>
<title>All Recurring Services</title>
<sql>SELECT A.sku, A.account_id as account, count(id) as total, sum(price) as price from %%AGILE_DB_PREFIX%%service A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% AND active=1 AND price_type=1</criteria>
<orderby>GROUP BY sku ORDER BY sku DESC</orderby>
<indent>0</indent>
<column>
<display>SKU</display>
<field>sku</field>
<visible>true</visible>
<user_criteria type="text" />
</column>
<column>
<display>Total Services for SKU</display>
<field>total</field>
<total>true</total>
<format>num</format>
</column>
<column>
<display>Forcasted Revenue</display>
<field>price</field>
<format>dol,2</format>
<total>true</total>
<total_format>dol,2</total_format>
</column>
</level>
<break />
<level>
<htmlstyle>heading</htmlstyle>
<sql>SELECT A.sku, from_unixtime(date_next_invoice,"%M, %Y") as yearmonth, from_unixtime(date_next_invoice,"%Y-%m") as ord from %%AGILE_DB_PREFIX%%service A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% AND active=1 AND price_type=1</criteria>
<orderby>GROUP BY yearmonth ORDER BY ord ASC</orderby>
<indent>0</indent>
<column>
<display>Month, Year:</display>
<field>yearmonth</field>
<aggregate>true</aggregate>
<width></width>
<format></format>
<group_children_by>true</group_children_by>
<visible>true</visible>
<hide_dups>false</hide_dups>
<sql></sql>
<sql_criteria></sql_criteria>
<condition></condition>
<total>false</total>
<total_format></total_format>
<link></link>
</column>
<level>
<sql>SELECT A.sku, A.account_id as account, from_unixtime(date_next_invoice,"%M, %Y") as yearmonth, count(id) as total, sum(price) as price from %%AGILE_DB_PREFIX%%service A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% AND active=1 AND price_type=1</criteria>
<orderby>GROUP BY sku ORDER BY sku DESC</orderby>
<indent>30</indent>
<column>
<display>SKU</display>
<field>sku</field>
<visible>true</visible>
</column>
<column>
<display>Total Services for SKU</display>
<field>total</field>
<total>true</total>
<format>num</format>
</column>
<column>
<display>Forcasted Revenue</display>
<field>price</field>
<total>true</total>
<format>dol,2</format>
<total_format>dol,2</total_format>
</column>
</level>
</level>
</report>

View File

@@ -0,0 +1,41 @@
<report>
<title>Services By SKU</title>
<graph type="bar" title="" width="800" height="400" x_angle="0" direction="vertical">
<dataset>
<sql>SELECT sku, sum(price) as total_amt from %%AGILE_DB_PREFIX%%service A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% and A.active=1 </criteria>
<orderby>GROUP BY sku ORDER BY total_amt DESC</orderby>
</dataset>
</graph>
<break />
<level>
<title>All SKU's</title>
<sql>SELECT sku, count(id) as total, sum(price) as total_amt from %%AGILE_DB_PREFIX%%service A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%% and A.active=1 </criteria>
<orderby>GROUP BY sku ORDER BY total_amt DESC</orderby>
<indent>0</indent>
<column>
<display>SKU</display>
<field>sku</field>
<visible>true</visible>
<user_criteria type="text" />
</column>
<column>
<display>Total</display>
<field>total</field>
<total>true</total>
<format>num</format>
</column>
<column>
<display>Sales Amount</display>
<field>total_amt</field>
<total>true</total>
<format>dol,2</format>
<total_format>dol,2</total_format>
</column>
</level>
</report>

154
reports/tax/tax_report.xml Normal file
View File

@@ -0,0 +1,154 @@
<report>
<title>Tax Report by Year and Month</title>
<level>
<title>Yearly Totals</title>
<sql>SELECT from_unixtime(A.date_orig,"%Y") as yearmonth, count(A.id) as sales, sum(A.amount) as amount from %%AGILE_DB_PREFIX%%invoice_item_tax A </sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth DESC</orderby>
<indent>0</indent>
<column>
<display>Year:</display>
<field>yearmonth</field>
<aggregate>true</aggregate>
<visible>true</visible>
</column>
<column>
<display>Taxable Items</display>
<field>sales</field>
<total>true</total>
</column>
<column>
<display>Tax Charged</display>
<field>amount</field>
<total>true</total>
<total_format>dol,2</total_format>
</column>
</level>
<break />
<level>
<title>Monthly Totals</title>
<sql>SELECT from_unixtime(A.date_orig,"%M, %Y") as yearmonth, count(A.id) as sales, sum(A.amount) as amount from %%AGILE_DB_PREFIX%%invoice_item_tax A </sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth DESC</orderby>
<indent>0</indent>
<column>
<display>Month and Year:</display>
<field>yearmonth</field>
<aggregate>true</aggregate>
<visible>true</visible>
</column>
<column>
<display>Taxable Items</display>
<field>sales</field>
<total>true</total>
</column>
<column>
<display>Tax Charged</display>
<field>amount</field>
<total>true</total>
<total_format>dol,2</total_format>
</column>
</level>
<break />
<level>
<htmlstyle>heading</htmlstyle>
<sql>SELECT from_unixtime(A.date_orig,"%Y") as yearmonth from %%AGILE_DB_PREFIX%%invoice_item_tax A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth DESC</orderby>
<indent>0</indent>
<column>
<display>Breakdown for Year:</display>
<field>yearmonth</field>
<aggregate>true</aggregate>
<width></width>
<format></format>
<group_children_by>true</group_children_by>
<visible>true</visible>
<hide_dups>false</hide_dups>
<sql></sql>
<sql_criteria></sql_criteria>
<condition></condition>
<total>false</total>
<total_format></total_format>
<link></link>
</column>
<level>
<sql>SELECT B.description as tax, from_unixtime(A.date_orig,"%Y") as yearmonth, count(A.id) as sales, sum(A.amount) as amount from %%AGILE_DB_PREFIX%%invoice_item_tax A inner join %%AGILE_DB_PREFIX%%tax B on A.tax_id = B.id
</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY tax ORDER BY tax DESC</orderby>
<indent>30</indent>
<column>
<display>Tax</display>
<field>tax</field>
<aggregate>true</aggregate>
<visible>true</visible>
</column>
<column>
<display>Taxable Items</display>
<field>sales</field>
<total>true</total>
</column>
<column>
<display>Tax Charged</display>
<field>amount</field>
<total>true</total>
<total_format>dol,2</total_format>
</column>
</level>
</level>
<break />
<level>
<htmlstyle>heading</htmlstyle>
<sql>SELECT from_unixtime(A.date_orig,"%M, %Y") as yearmonth from %%AGILE_DB_PREFIX%%invoice_item_tax A</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth DESC</orderby>
<indent>0</indent>
<column>
<display>Breakdown for Month:</display>
<field>yearmonth</field>
<aggregate>true</aggregate>
<width></width>
<format></format>
<group_children_by>true</group_children_by>
<visible>true</visible>
<hide_dups>false</hide_dups>
<sql></sql>
<sql_criteria></sql_criteria>
<condition></condition>
<total>false</total>
<total_format></total_format>
<link></link>
</column>
<level>
<sql>SELECT B.description as tax, from_unixtime(A.date_orig,"%M, %Y") as yearmonth, count(A.id) as sales, sum(A.amount) as amount from %%AGILE_DB_PREFIX%%invoice_item_tax A inner join %%AGILE_DB_PREFIX%%tax B on A.tax_id = B.id
</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY tax ORDER BY tax DESC</orderby>
<indent>30</indent>
<column>
<display>Tax</display>
<field>tax</field>
<aggregate>true</aggregate>
<visible>true</visible>
</column>
<column>
<display>Taxable Items</display>
<field>sales</field>
<total>true</total>
</column>
<column>
<display>Tax Charged</display>
<field>amount</field>
<total>true</total>
<total_format>dol,2</total_format>
</column>
</level>
</level>
</report>

View File

@@ -0,0 +1,37 @@
<report>
<title>Department Ticket Statistics</title>
<graph type="bar" title="" width="500" height="300">
<dataset>
<sql>SELECT B.name, count(A.id) as total from %%AGILE_DB_PREFIX%%ticket A join %%AGILE_DB_PREFIX%%ticket_department B on A.department_id=B.id</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY name ORDER BY total DESC</orderby>
</dataset>
</graph>
<break />
<level>
<sql>SELECT B.name, count(A.id) as total from %%AGILE_DB_PREFIX%%ticket A join %%AGILE_DB_PREFIX%%ticket_department B on A.department_id=B.id</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY name ORDER BY total DESC</orderby>
<indent>0</indent>
<column>
<display>Department</display>
<field>name</field>
<visible>true</visible>
<group_children_by>true</group_children_by>
<aggregate>true</aggregate>
</column>
<column>
<display>Tickets</display>
<field>total</field>
<total>true</total>
</column>
<graph type="line" title="" width="600" height="180">
<dataset>
<sql>SELECT from_unixtime(A.date_orig,"%Y-%u") as yearmonth, count(A.id) as total, B.name from %%AGILE_DB_PREFIX%%ticket A left join %%AGILE_DB_PREFIX%%ticket_department B on A.department_id=B.id</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth ASC</orderby>
</dataset>
</graph>
<break />
</level>
</report>

37
reports/ticket/staff.xml Normal file
View File

@@ -0,0 +1,37 @@
<report>
<title>Staff Ticket Statistics</title>
<graph type="bar" title="" width="500" height="300">
<dataset>
<sql>SELECT B.nickname, count(A.id) as total from %%AGILE_DB_PREFIX%%ticket A join %%AGILE_DB_PREFIX%%staff B on A.staff_id=B.id</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY nickname ORDER BY total DESC</orderby>
</dataset>
</graph>
<break />
<level>
<sql>SELECT B.nickname, count(A.id) as total from %%AGILE_DB_PREFIX%%ticket A join %%AGILE_DB_PREFIX%%staff B on A.staff_id=B.id</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY nickname ORDER BY total DESC</orderby>
<indent>0</indent>
<column>
<display>Staff</display>
<field>nickname</field>
<visible>true</visible>
<group_children_by>true</group_children_by>
<aggregate>true</aggregate>
</column>
<column>
<display>Tickets</display>
<field>total</field>
<total>true</total>
</column>
<graph type="line" title="" width="600" height="180">
<dataset>
<sql>SELECT from_unixtime(A.date_orig,"%Y-%u") as yearmonth, count(A.id) as total, B.nickname from %%AGILE_DB_PREFIX%%ticket A left join %%AGILE_DB_PREFIX%%staff B on A.staff_id=B.id</sql>
<criteria>A.site_id = %%DEFAULT_SITE%%</criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth ASC</orderby>
</dataset>
</graph>
<break />
</level>
</report>

View File

@@ -0,0 +1,158 @@
<report>
<title>New Ticket Statistics</title>
<level>
<title>By Year</title>
<sql>SELECT from_unixtime(A.date_orig,"%Y") as yearmonth, count(A.id) as total from %%AGILE_DB_PREFIX%%ticket A </sql>
<criteria>A.site_id = %%DEFAULT_SITE%% </criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth</orderby>
<indent>0</indent>
<column>
<display>Year:</display>
<field>yearmonth</field>
<aggregate>true</aggregate>
<width></width>
<format></format>
<group_children_by>true</group_children_by>
<visible>true</visible>
<hide_dups>false</hide_dups>
<sql></sql>
<sql_criteria></sql_criteria>
<condition></condition>
<total>false</total>
<total_format></total_format>
<link></link>
</column>
<column>
<display>Total Tickets</display>
<field>total</field>
<total>true</total>
</column>
</level>
<break />
<graph type="bar" title="" width="500" height="300">
<dataset>
<sql>SELECT from_unixtime(A.date_orig,"%Y") as yearmonth, count(A.id) as total from %%AGILE_DB_PREFIX%%ticket A </sql>
<criteria>A.site_id = %%DEFAULT_SITE%% </criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth</orderby>
</dataset>
</graph>
<break />
<level>
<title>By Month</title>
<sql>SELECT from_unixtime(A.date_orig,"%Y-%m") as yearmonth, count(A.id) as total from %%AGILE_DB_PREFIX%%ticket A </sql>
<criteria>A.site_id = %%DEFAULT_SITE%% </criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth</orderby>
<indent>0</indent>
<column>
<display>Year and Month:</display>
<field>yearmonth</field>
<aggregate>true</aggregate>
<width></width>
<format></format>
<group_children_by>true</group_children_by>
<visible>true</visible>
<hide_dups>false</hide_dups>
<sql></sql>
<sql_criteria></sql_criteria>
<condition></condition>
<total>false</total>
<total_format></total_format>
<link></link>
</column>
<column>
<display>Total Tickets</display>
<field>total</field>
<total>true</total>
</column>
</level>
<break />
<graph type="line" title="" width="700" height="300">
<dataset>
<sql>SELECT from_unixtime(A.date_orig,"%Y-%m") as yearmonth, count(A.id) as total from %%AGILE_DB_PREFIX%%ticket A </sql>
<criteria>A.site_id = %%DEFAULT_SITE%% </criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth</orderby>
</dataset>
</graph>
<break />
<level>
<title>By Week</title>
<sql>SELECT from_unixtime(A.date_orig,"%Y-%u") as yearmonth, count(A.id) as total from %%AGILE_DB_PREFIX%%ticket A </sql>
<criteria>A.site_id = %%DEFAULT_SITE%% </criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth</orderby>
<indent>0</indent>
<column>
<display>Year and Week:</display>
<field>yearmonth</field>
<aggregate>true</aggregate>
<width></width>
<format></format>
<group_children_by>true</group_children_by>
<visible>true</visible>
<hide_dups>false</hide_dups>
<sql></sql>
<sql_criteria></sql_criteria>
<condition></condition>
<total>false</total>
<total_format></total_format>
<link></link>
</column>
<column>
<display>Total Tickets</display>
<field>total</field>
<total>true</total>
</column>
</level>
<break />
<graph type="line" title="" width="800" height="300">
<dataset>
<sql>SELECT from_unixtime(A.date_orig,"%Y-%u") as yearmonth, count(A.id) as total from %%AGILE_DB_PREFIX%%ticket A </sql>
<criteria>A.site_id = %%DEFAULT_SITE%% </criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth</orderby>
</dataset>
</graph>
<break />
<level>
<title>By Day</title>
<sql>SELECT from_unixtime(A.date_orig,"%Y-%m-%d") as yearmonth, count(A.id) as total from %%AGILE_DB_PREFIX%%ticket A </sql>
<criteria>A.site_id = %%DEFAULT_SITE%% </criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth</orderby>
<indent>0</indent>
<column>
<display>Year, Month, and Day:</display>
<field>yearmonth</field>
<aggregate>true</aggregate>
<width></width>
<format></format>
<group_children_by>true</group_children_by>
<visible>true</visible>
<hide_dups>false</hide_dups>
<sql></sql>
<sql_criteria></sql_criteria>
<condition></condition>
<total>false</total>
<total_format></total_format>
<link></link>
</column>
<column>
<display>Total Tickets</display>
<field>total</field>
<total>true</total>
</column>
</level>
<break />
<graph type="line" title="" width="800" height="300">
<dataset>
<sql>SELECT from_unixtime(A.date_orig,"%Y-%m-%d") as yearmonth, count(A.id) as total from %%AGILE_DB_PREFIX%%ticket A </sql>
<criteria>A.site_id = %%DEFAULT_SITE%% </criteria>
<orderby>GROUP BY yearmonth ORDER BY yearmonth</orderby>
</dataset>
</graph>
<break />
</report>