Initial Commit of AgileBill Open Source
This commit is contained in:
187
reports/invoice/sales_report.xml
Normal file
187
reports/invoice/sales_report.xml
Normal 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>
|
88
reports/invoice/sku_monthly.xml
Normal file
88
reports/invoice/sku_monthly.xml
Normal 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>
|
78
reports/invoice/sku_yearly.xml
Normal file
78
reports/invoice/sku_yearly.xml
Normal 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>
|
Reference in New Issue
Block a user