A criação de relatórios gerenciais via WHMCS não é tão complicado.
Você deve criar o arquivo em “modules/reports”
Confira uma demonstração…
<?php
$reportdata["title"] = “Total de produtos”;
$reportdata["description"] = “Relatório com todos os produtos vendidos”;
$reportdata["tableheadings"] = array(“Nome”,”Mensal”,”Trimestral”,”Semestral”,”Anual Count”,”Bianual”,”Total”);
$reportdata["tablevalues"][] = array(“**Produtos/Serviços”);
$query = “SELECT tblproducts.*,tblproductgroups.name AS groupname FROM tblproducts INNER JOIN tblproductgroups ON tblproductgroups.id = tblproducts.gid ORDER BY name ASC”;
$result=mysql_query($query);
$lastgroup = “”;
$overalltotal = 0;
while ($data = mysql_fetch_array($result))
{
$id = $data["id"];
$groupname = $data["groupname"];
$productname = $data["name"];
$monthly_count = 0;
$quarterly_count = 0;
$semiannually_count = 0;
$annually_count = 0;
$biannually_count = 0;
$total = 0;
$query2 = “SELECT * FROM tblhosting WHERE domainstatus!=’Terminated’ AND billingcycle!=’Free Account’ AND billingcycle!=’One Time’ AND packageid=’$id’”;
$result2 = mysql_query($query2);
while ($data2 = mysql_fetch_array($result2))
{
$billingcycle = $data2["billingcycle"];
if($billingcycle==”Monthly”)
{
$monthly_count=$monthly_count+1;
}
elseif($billingcycle==”Quarterly”)
{
$quarterly_count=$quarterly_count+1;
}
elseif($billingcycle==”Semi-Annually”)
{
$semiannually_count=$semiannually_count+1;
}
elseif($billingcycle==”Annually”)
{
$annually_count=$annually_count+1;
}
elseif($billingcycle==”Biennially”)
{
$biannually_count=$biannually_count+1;
}
}
$total=( $monthly_count+$quarterly_count+$semiannually_count+$annually_count+$biannually_count );
if ($total >= “1″)
{
if ($lastgroup != $groupname)
{
$lastgroup = $groupname ;
$reportdata["tablevalues"][] = array(“**$groupname”);
}
$reportdata["tablevalues"][] = array(“$productname”,”$monthly_count”,
“$quarterly_count”,”$semiannually_count”,”$annually_count”,”$biannually_count”,”$total”);
$overalltotal=$overalltotal+$total;
}
}
$reportdata["tablevalues"][] = array(“**Adicionais”);
$query = “SELECT DISTINCT name FROM tblhostingaddons WHERE status!=’Terminated’ AND billingcycle!=’One Time’ AND billingcycle!=’Free’”;
$result = mysql_query($query);
while($data = mysql_fetch_array($result))
{
$name = $data["name"];
$monthly_count = 0;
$quarterly_count = 0;
$semiannually_count = 0;
$annually_count = 0;
$biannually_count = 0;
$total = 0;
$query2 = “SELECT * FROM tblhostingaddons WHERE name=’”.$name.”‘ AND status!=’Terminated’ AND billingcycle!=’One Time’ AND billingcycle!=’Free’”;
$result2 = mysql_query($query2);
while($data2 = mysql_fetch_array($result2))
{
$billingcycle = $data2["billingcycle"];
if($billingcycle==”Monthly”)
{
$monthly_count=$monthly_count+1;
}
elseif($billingcycle==”Quarterly”)
{
$quarterly_count=$quarterly_count+1;
}
elseif($billingcycle==”Semi-Annually”)
{
$semiannually_count=$semiannually_count+1;
}
elseif($billingcycle==”Annually”)
{
$annually_count=$annually_count+1;
}
elseif($billingcycle==”Biennially”)
{
$biannually_count=$biannually_count+1;
}
}
$total=( $monthly_count+$quarterly_count+$semiannually_count+$annually_count+$biannually_count );
if ($total >= “1″)
{
$reportdata["tablevalues"][] = array(“$name”,”$monthly_count”,”$quarterly_count”,”$semiannually_count”,”$annually_count”,”$biannually_count”,”$total”);
$overalltotal=$overalltotal+$total;
}
}
$reportdata["tablevalues"][] = array(“**Domínios”);
$monthly_count = 0;
$quarterly_count = 0;
$semiannually_count = 0;
$annually_count = 0;
$biannually_count = 0;
$query = “SELECT * FROM tbldomains WHERE status!=’Expired’”;
$result=mysql_query($query);
while($data = mysql_fetch_array($result))
{
$registrationperiod = $data["registrationperiod"];
$annually_count=$annually_count+1;
}
$total=( $monthly_count+$quarterly_count+$semiannually_count+$annually_count+$biannually_count );
$reportdata["tablevalues"][] = array(“Domains”,”-”,”-”,”-”,”$annually_count”,”-”,”$total”);
$overalltotal=$overalltotal+$total;
$data["footertext"]=”Total de Items: “.”$overalltotal”;
?>











Pingback: Relatórios – Parte 1 | WHMCS.Blog.Br - WHMCS