Exemple #1
0
function LoanReport()
{
    $BranchID = $_POST["BranchID"];
    $blockID = $_POST["BlockID"];
    $StartDate = $_POST["StartDate"];
    $EndDate = $_POST["EndDate"];
    $TafsiliID = $_POST["TafsiliID"];
    $where = "";
    $param = array($_SESSION["accounting"]["CycleID"], $blockID);
    if ($BranchID != "") {
        $where .= " AND BranchID =?";
        $param[] = $BranchID;
    }
    if ($TafsiliID != "") {
        $where .= " AND (TafsiliID=? or TafsiliID2=?)";
        $param[] = $TafsiliID;
        $param[] = $TafsiliID;
    }
    if ($StartDate != "") {
        $where .= " AND DocDate >=?";
        $param[] = DateModules::shamsi_to_miladi($StartDate, "-");
    }
    if ($EndDate != "") {
        $where .= " AND DocDate <=?";
        $param[] = DateModules::shamsi_to_miladi($EndDate, "-");
    }
    $dt = PdoDataAccess::runquery("\r\n\t\tselect cc.*,concat_ws(' - ',b1.BlockDesc,b2.BlockDesc,b3.BlockDesc) CostDesc,\r\n\t\t\t\tsum(CreditorAmount - DebtorAmount ) remain\r\n\t\tfrom ACC_DocItems di\r\n\t\t\tjoin ACC_docs using(DociD)\r\n\t\t\tjoin ACC_CostCodes cc using(CostID)\r\n\t\t\tjoin ACC_blocks b1 on(cc.level1=b1.BlockID)\r\n\t\t\tjoin ACC_blocks b2 on(cc.level2=b2.BlockID)\r\n\t\t\tleft join ACC_blocks b3 on(cc.level3=b3.BlockID)\r\n\t\t\t\r\n\t\twhere CycleID=? AND cc.level2 = ? " . $where . "\r\n\t\t\r\n\t\tgroup by di.CostID", $param);
    //print_r(ExceptionHandler::PopAllExceptions());
    function moneyRender($row, $val)
    {
        $BranchID = $_POST["BranchID"];
        $StartDate = $_POST["StartDate"];
        $EndDate = $_POST["EndDate"];
        $TafsiliID = $_POST["TafsiliID"];
        $params = "IncludeRaw=true&show=true";
        $params .= $BranchID != "" ? "&BranchID=" . $BranchID : "";
        $params .= $TafsiliID != "" ? "&TafsiliID=" . $TafsiliID : "";
        $params .= $row["level1"] != "" ? "&level1=" . $row["level1"] : "";
        $params .= $row["level2"] != "" ? "&level2=" . $row["level2"] : "";
        $params .= $row["level3"] != "" ? "&level3=" . $row["level3"] : "";
        $params .= $StartDate != "" ? "&fromDate=" . $StartDate : "";
        $params .= $EndDate != "" ? "&toDate=" . $EndDate : "";
        return "<a target=_blank href='../accounting/report/flow.php?" . $params . "'>" . number_format($val) . "</a>";
    }
    $rpg = new ReportGenerator();
    $rpg->mysql_resource = $dt;
    $col = $rpg->addColumn("کد حساب", "CostDesc");
    $col = $rpg->addColumn("مانده حساب", "remain", "moneyRender");
    $rpg->generateReport();
    die;
}
Exemple #2
0
function GetWorkTimeExcel(){
	
	$param = array();
		
	MakeWhere($where, $param);
			
	$rpt = new ReportGenerator();	
	$rpt->mysql_resource = PrepareData();
		
	$rpt->addColumn("شماره شناسایی", "staff_id");
	$rpt->addColumn("نام خانوادگي", "plname");
	$rpt->addColumn("نام", "pfname");
        $rpt->addColumn("واحد اصلی محل خدمت", "unit_title");
        $rpt->addColumn("واحد فرعی محل خدمت", "sub_unit_title");
	$rpt->addColumn("کارکرد", "work_time");
	
	$rpt->excel = true;
	$rpt->generateReport();
	die(); 
}
Exemple #3
0
$col->align = "center";
$col->EnableSummary();
$rpg->mysql_resource = $dataTable;
$percentGovermental = array(0, 0);
foreach ($dataTable as $row) {
    if ($row["IsGovermental"] == "YES") {
        $percentGovermental[0] += round($row["shareCount"] * 100 / $TotalShare, 2);
    } else {
        $percentGovermental[1] += round($row["shareCount"] * 100 / $TotalShare, 2);
    }
}
$percentGovermental = "<table width=100% style=font-weight:bold;font-family:tahoma;font-size:13px><tr>\r\n\t<td align=center>جمع درصد سهم بخش دولتی : " . $percentGovermental[0] . " %</td>\r\n\t<td align=center>جمع درصد سهم بخش خصوصی : " . $percentGovermental[1] . " %</td></tr></table>";
if (isset($_REQUEST["print"])) {
    echo '<meta content="text/html; charset=utf-8" http-equiv="Content-Type"/>';
    echo "<body dir=rtl>";
    $rpg->generateReport();
    echo "<br>" . $percentGovermental . "<br>";
    echo "</body>";
    die;
}
?>
<script>
ShareReport.prototype = {
	TabID : '<?php 
echo $_REQUEST["ExtTabID"];
?>
',
	address_prefix : "<?php 
echo $js_prefix_address;
?>
",
Exemple #4
0
    $rpg->mysql_resource = $dataTable;
    $rpg->page_size = 12;
    $rpg->paging = true;
    if (!$rpg->excel) {
        BeginReport();
        //if($_SESSION["USER"]["UserName"] == "admin")
        //	echo PdoDataAccess::GetLatestQueryString ();
        echo "<div style=display:none>" . PdoDataAccess::GetLatestQueryString() . "</div>";
        echo "<table style='border:2px groove #9BB1CD;border-collapse:collapse;width:100%'><tr>\r\n\t\t\t\t<td width=60px><img src='/framework/icons/logo.jpg' style='width:120px'></td>\r\n\t\t\t\t<td align='center' style='height:100px;vertical-align:middle;font-family:b titr;font-size:15px'>\r\n\t\t\t\t\tگزارش گردش حساب ها \r\n\t\t\t\t\t <br> " . $_SESSION["accounting"]["BranchName"] . "<br>" . "دوره سال " . $_SESSION["accounting"]["CycleID"] . "</td>\r\n\t\t\t\t<td width='200px' align='center' style='font-family:tahoma;font-size:11px'>تاریخ تهیه گزارش : " . DateModules::shNow() . "<br>";
        if (!empty($_POST["fromDate"])) {
            echo "<br>گزارش از تاریخ : " . $_POST["fromDate"] . ($_POST["toDate"] != "" ? " - " . $_POST["toDate"] : "");
        }
        echo "</td></tr></table>";
    }
    echo $BeforeRemaindar;
    $rpg->generateReport();
    die;
}
?>
<script>
AccReport_flow.prototype = {
	TabID : '<?php 
echo $_REQUEST["ExtTabID"];
?>
',
	address_prefix : "<?php 
echo $js_prefix_address;
?>
",

	get : function(elementID){
Exemple #5
0
function GetChangesExcel(){
	
	$param = array();
	$where = "";
	$param[":year"] = $_POST["pay_year"];
	$param[":month"] = $_POST["pay_month"];
	$param[":pt"] = $_POST["PayType"];
	
	$pre_year = $_POST["pay_year"] ;
	$pre_month = $_POST["pay_month"] - 1 ;
	if($pre_month == 0){
		$pre_year--;
		$pre_month = 12 ;
	}
	$param[":preyear"] = $pre_year;
	$param[":premonth"] = $pre_month;
	
	
	MakeWhere($where, $param);
	
	$dataTable = PdoDataAccess::runquery_fetchMode("
		select     
			'' date,
			concat(plname,' ',pfname) name,
			s.staff_id ,
			bi.Title emp_mode_desc,
			pit1.get_value val1,
			if( pit2.param1 - pit1.param1>0 , pit2.param1 - pit1.param1 , 0 ) normal_insure_inc, 
			if( pit2.param8 - pit1.param8>0 , pit2.param8 - pit1.param8 , 0 ) normal2_insure_inc, 
			if( pit2.param2 - pit1.param2>0 , pit2.param2 - pit1.param2 , 0 ) first_surplus_insure_inc,
			if( pit2.param3 - pit1.param3>0 , pit2.param3 - pit1.param3 , 0 ) second_surplus_insure_inc,
			if( pit2.param1 - pit1.param1>0 , pit2.param1 - pit1.param1 , 0 ) +
				if(pit2.param2 - pit1.param2>0 , pit2.param2 - pit1.param2 , 0 ) +
				if(pit2.param3 - pit1.param3>0 , pit2.param3 - pit1.param3 , 0 ) insure_inc_count,
			bi2.Title emp_mode_desc2,
			pit2.get_value val2,
			if( pit2.param1 - pit1.param1>0 , 0 , pit1.param1 - pit2.param1 ) normal_insure_dec,
			if( pit2.param8 - pit1.param8>0 , 0 , pit1.param8 - pit2.param8 ) normal2_insure_dec,
			if( pit2.param2 - pit1.param2>0 , 0 , pit1.param2 - pit2.param2 ) first_surplus_insure_dec,
			if( pit2.param3 - pit1.param3>0 , 0 , pit1.param3 - pit2.param3 ) second_surplus_insure_dec,
			if( pit2.param1 - pit1.param1>0 , 0 , pit1.param1 - pit2.param1 ) +
				if(	pit2.param2 - pit1.param2>0 , 0 , pit1.param2 - pit2.param2 ) +
				if( pit2.param3 - pit1.param3>0 , 0 , pit1.param3 - pit2.param3 ) insure_dec_count

		from staff s
			INNER JOIN persons per ON (per.personID = s.personID)
			LEFT OUTER JOIN payments p1
				ON p1.pay_year = :preyear AND p1.pay_month = :premonth AND p1.payment_type = :pt AND s.staff_id = p1.staff_id 
			LEFT OUTER JOIN payments p2
				ON p2.pay_year = :year AND p2.pay_month = :month AND p2.payment_type = :pt AND s.staff_id = p2.staff_id
			LEFT OUTER JOIN writs w1
				ON (w1.writ_id = p1.writ_id AND w1.writ_ver = p1.writ_ver AND w1.staff_id = p1.staff_id )
			LEFT OUTER JOIN writs w2
				ON (w2.writ_id = p2.writ_id AND w2.writ_ver = p2.writ_ver AND w2.staff_id = p2.staff_id )
			LEFT OUTER JOIN payment_items pit1
				ON ((p1.staff_id = pit1.staff_id) AND (p1.pay_year = pit1.pay_year) AND
					(p1.pay_month = pit1.pay_month) AND (p1.payment_type = pit1.payment_type))
					AND (pit1.salary_item_type_id IN (143,38) )
			LEFT OUTER JOIN payment_items pit2
				ON ((p2.staff_id = pit2.staff_id) AND (p2.pay_year = pit2.pay_year) AND
					(p2.pay_month = pit2.pay_month) AND (p2.payment_type = pit2.payment_type))
					AND (pit2.salary_item_type_id IN (143,38) )
			left join Basic_Info bi on(bi.TypeID=4 AND bi.InfoID=w1.emp_mode)
			left join Basic_Info bi2 on(bi2.TypeID=4 AND bi2.InfoID=w2.emp_mode)
		
		where (pit1.get_value > 0 OR pit2.get_value >0 ) AND
			(pit1.param1 != pit2.param1 OR
			 pit1.param8 != pit2.param8 OR
			 pit1.param2 != pit2.param2 OR
			 pit1.param3 != pit2.param3 OR
			 w1.emp_mode != w2.emp_mode ) $where ", $param);
	
	//echo PdoDataAccess::GetLatestQueryString();die();
	
	$rpt = new ReportGenerator();
	$rpt->mysql_resource = $dataTable;
	
	$rpt->addColumn("تاريخ", "date");
	$rpt->addColumn('نام و نام خانوادگي', "name");
	$rpt->addColumn("كد اصلي بيمه شده", "staff_id");
	$rpt->addColumn("وضعيت استخدامي قبل", "emp_mode_desc");
	$rpt->addColumn("مبلغ قبلي", "val1");
	$rpt->addColumn("افزايش تبعي1", "normal_insure_inc");
	$rpt->addColumn("افزايش تبعي 1 جديد", "normal2_insure_inc");	
	$rpt->addColumn("افزايش تبعي2", "first_surplus_insure_inc");
	$rpt->addColumn("افزايش تبعي3", "second_surplus_insure_inc");
	$rpt->addColumn("جمع افزايش", "insure_inc_count");
	$rpt->addColumn("وضعيت استخدامي جديد", "emp_mode_desc2");
	$rpt->addColumn("'مبلغ جديد", "val2");
	$rpt->addColumn("كاهش تبعي1", "normal_insure_dec");
	$rpt->addColumn("كاهش تبعي 1 جدید", "normal2_insure_dec");
	$rpt->addColumn("كاهش تبعي2", "first_surplus_insure_dec");
	$rpt->addColumn("كاهش تبعي3", "second_surplus_insure_dec");
	$rpt->addColumn("جمع كاهش", "insure_dec_count");
	
	$rpt->excel = true;
	$rpt->generateReport();
	
	die();
}
    die;
}
if (!empty($_REQUEST["NTC_EXCEL"])) {
    $data = GetDelayedInstallments(true);
    $rpt = new ReportGenerator();
    $rpt->rowNumber = false;
    $rpt->excel = true;
    $rpt->mysql_resource = $data;
    $rpt->addColumn("PID", "LoanPersonID");
    $rpt->addColumn("کد وام", "RequestID");
    $rpt->addColumn("وام گیرنده", "LoanPersonName");
    $rpt->addColumn("سررسید", "InstallmentDate");
    $rpt->addColumn("تاخیر", "ForfeitDays");
    $rpt->addColumn("مبلغ قسط", "InstallmentAmount");
    $rpt->addColumn("قابل پرداخت", "remainder");
    $rpt->generateReport();
    die;
}
$dg = new sadaf_datagrid("dg", $js_prefix_address . "../request/request.data.php?task=GetDelayedInstallments", "grid_div");
$dg->addColumn("", "PartID", "", true);
$col = $dg->addColumn("کد وام", "RequestID", "");
$col->width = 50;
$col = $dg->addColumn("وام گیرنده", "LoanPersonName");
$col = $dg->addColumn("سررسید", "InstallmentDate", GridColumn::ColumnType_date);
$col->width = 80;
$col = $dg->addColumn("تاخیر", "ForfeitDays", GridColumn::ColumnType_date);
$col->width = 80;
$col = $dg->addColumn("مبلغ قسط", "InstallmentAmount", GridColumn::ColumnType_money);
$col->width = 150;
$col = $dg->addColumn("قابل پرداخت", "remainder", GridColumn::ColumnType_money);
$col->width = 100;
Exemple #7
0
function ShowReport()
{
    $query = "SELECT c.*,concat_ws(' ',p1.fname,p1.lname,p1.CompanyName) fullname,\r\n\t\t\tconcat_ws(' ',p2.fname,p2.lname,p2.CompanyName)fullname2,bf.InfoDesc ContractTypeDesc \r\n\t\tFROM CNT_contracts c \r\n\t\t\tjoin BaseInfo bf on(bf.TypeID=18 AND bf.InfoID=ContractType)\r\n\t\t\tleft join CNT_ContractItems ci using(ContractID)\r\n\t\t\tleft join BSC_persons p1 on(c.PersonID=p1.PersonID)\r\n\t\t\tleft join BSC_persons p2 on(c.PersonID2=p2.PersonID)\r\n\t\twhere 1=1\r\n\t";
    $params = array();
    $index = 0;
    $itemsWhere = "1=0 ";
    $keys = array_keys($_POST);
    foreach ($keys as $key) {
        if (empty($_POST[$key])) {
            continue;
        }
        switch ($key) {
            case "TemplateID":
            case "ContractType":
            case "PersonID":
            case "PersonID2":
                $query .= " AND c." . $key . "=:p" . $index;
                $params[":p" . $index++] = $_POST[$key];
                break;
            case "FromContractAmount":
            case "FromStartDate":
            case "FromEndDate":
                $query .= " AND c." . $key . " <= :p" . $index;
                $params[":p" . $index++] = $_POST[$key];
                break;
            case "ToContractAmount":
            case "ToStartDate":
            case "ToEndDate":
                $query .= " AND c." . $key . " >= :p" . $index;
                $params[":p" . $index++] = $_POST[$key];
                break;
            case "description":
                $query .= " AND c." . $key . " like :p" . $index;
                $params[":p" . $index++] = "%" . $_POST[$key] . "%";
                break;
            default:
                if (strpos($key, "TplItem_") !== false) {
                    $key = substr($key, 8);
                    $itemsWhere .= " OR if(ci.TemplateItemID=" . $key . ",ItemValue like :p" . $index . ",1=0)";
                    $params[":p" . $index++] = "%" . $_POST["TplItem_" . $key] . "%";
                }
        }
    }
    $data = PdoDataAccess::runquery($query . " AND ({$itemsWhere})" . " group by c.ContractID", $params);
    //echo PdoDataAccess::GetLatestQueryString();
    $rpg = new ReportGenerator();
    $rpg->excel = !empty($_POST["excel"]);
    $rpg->mysql_resource = $data;
    function dateRender($row, $val)
    {
        return DateModules::miladi_to_shamsi($val);
    }
    function moneyRender($row, $value)
    {
        return number_format($value);
    }
    function ContractRender($row, $value)
    {
        return "<a target=blank href=../contract/PrintContract.php?ContractID=" . $value . ">" . $value . "</a>";
    }
    $rpg->addColumn("شماره قرارداد", "ContractID", "ContractRender");
    $rpg->addColumn("تاریخ شروع", "StartDate", "dateRender");
    $rpg->addColumn("تاریخ پایان", "EndDate", "dateRender");
    $rpg->addColumn("نوع قرارداد", "ContractTypeDesc");
    $rpg->addColumn("طرف اول قرارداد", "fullname");
    $rpg->addColumn("طرف دوم قرارداد", "fullname2");
    $rpg->addColumn("مبلغ قرارداد", "ContractAmount", "moneyRender");
    if (!$rpg->excel) {
        echo '<META http-equiv=Content-Type content="text/html; charset=UTF-8" ><body dir="rtl">';
        echo "<table style='border:2px groove #9BB1CD;border-collapse:collapse;width:100%'><tr>\r\n\t\t\t\t<td width=60px><img src='/framework/icons/logo.jpg' style='width:120px'></td>\r\n\t\t\t\t<td align='center' style='height:100px;vertical-align:middle;font-family:b titr;font-size:15px'>\r\n\t\t\t\t\tگزارش قرارداد ها\r\n\t\t\t\t</td>\r\n\t\t\t\t<td width='200px' align='center' style='font-family:tahoma;font-size:11px'>تاریخ تهیه گزارش : " . DateModules::shNow() . "<br>";
        echo "</td></tr></table>";
    }
    $rpg->generateReport();
    die;
    die;
}
Exemple #8
0
?>
</b></td>
			<td></td>
		</tr>
	</table>
	
	<? if(count($temp) >0) {
		$rpt->generateReport(); ?>
	<div style="width: 100%; padding-top: 20px; padding-bottom: 20px; height: 120px;">
		<div class="footer"> <br>جمع کل : <?php 
echo number_format($SumAmount);
?>
 ریال 
			<div style="float:left;width: 250px">نام و نام خانوادگی :<br>امضاء</div><br><br><br>	
		</div>
	</div>
	<?} if(count($dt) > 0){
		$rpt2->generateReport(); ?>
	<div style="width: 100%; padding-top: 20px; padding-bottom: 20px; height: 120px;">
		<div class="footer">
			<br>خواهشمند است وجه چک های فوق را پس از وصول به حساب <?php 
echo SoftwareName;
?>
 منظور دارید.
			<br><div style="float:left;width: 250px">نام و نام خانوادگی :<br>امضاء</div><br><br><br>	
		</div>
	</div>
	<?} if(count($temp) == 0 && count($dt) == 0){?>
	<center>فاقد مدارک</center>
	<?}?>
</body>
Exemple #9
0
function showReport(){
	
	$levelsDescArr = array(
		"l1" => "کل",
		"l2" => "معین",
		"l3" => "جزء معین",
		"l4" => "گروه تفصیلی",
		"l5" => "گروه تفصیلی2",
		"l6" => "تفصیلی",
		"l7" => "تفصیلی2"
		);
	global $level;
	$level = empty($_REQUEST["level"]) ? "l1" : $_REQUEST["level"];
	
	$rpg = new ReportGenerator();
	$whereParam = array();
	$where = "";
	$group = "cc.level1";
	
	$select = "select 
		sum(di.DebtorAmount) bdAmount,
		sum(di.CreditorAmount) bsAmount,
		b1.BlockDesc level1Desc,
		b2.BlockDesc level2Desc,
		b3.BlockDesc level3Desc,
		b.InfoDesc TafsiliTypeDesc,
		t.TafsiliDesc TafsiliDesc,
		bi2.InfoDesc TafsiliTypeDesc2,
		t2.TafsiliDesc TafsiliDesc2,
		cc.level1,cc.level2,cc.level3,di.TafsiliType,di.TafsiliType2,di.TafsiliID,di.TafsiliID2,
		t.StartCycleDebtor,
		t.StartCycleCreditor
		";
	$from = " from ACC_DocItems di 
				join ACC_docs d using(DocID)
				join ACC_CostCodes cc using(CostID)
				join ACC_blocks b1 on(level1=b1.BlockID)
				left join ACC_blocks b2 on(level2=b2.BlockID)
				left join ACC_blocks b3 on(level3=b3.BlockID)
				left join BaseInfo b on(TypeID=2 AND di.TafsiliType=InfoID)
				left join ACC_tafsilis t using(TafsiliID)
				left join BaseInfo bi2 on(bi2.TypeID=2 AND di.TafsiliType2=bi2.InfoID)
				left join ACC_tafsilis t2 on(t2.TafsiliID=di.TafsiliID2)
				
				left join (
					select CycleID,CostID,sum(DebtorAmount) StartCycleDebtor, sum(CreditorAmount) StartCycleCreditor
					from ACC_DocItems join ACC_docs using(DocID)
					where DocType=1
					group by CostID
				)t on(d.CycleID=t.CycleID AND di.CostID=t.CostID)
	";
			
	if($level >= "l1")
		$rpg->addColumn("کل", "level1Desc",$level =="l1" ? "levelRender" : "");
	if($level >= "l2")
		$rpg->addColumn("معین", "level2Desc", $level =="l2" ? "levelRender" : "");
	if($level >= "l3")
		$rpg->addColumn("جزء معین", "level3Desc", $level =="l3" ? "levelRender" : "");
	if($level == "l4" || $level == "l6")
		$rpg->addColumn("گروه تفصیلی", "TafsiliTypeDesc", $level =="l4" ? "levelRender" : "");
	if($level == "l4" || $level == "l7")
		$rpg->addColumn("گروه تفصیلی2", "TafsiliTypeDesc2", $level == "l4" ? "levelRender2" : "");
	if($level == "l6")
		$rpg->addColumn("تفصیلی", "TafsiliDesc", "showDocs");
	if($level == "l7")
		$rpg->addColumn("تفصیلی2", "TafsiliDesc2", "showDocs2");
	
	switch($level)
	{
		case "l2" : $group .= ",cc.level2"; break;
		case "l3" : $group .= ",cc.level3";	break;
		case "l4" : $group .= ",di.TafsiliType"; break;
		case "l5" : $group .= ",di.TafsiliType2"; break;
		case "l6" : $group .= ",di.TafsiliID"; break;
		case "l7" : $group .= ",di.TafsiliID2"; break;
	}
	
	function levelRender($row, $value){
		
		global $level;
		
		if($value == "")
			$value = "-----";
		
		return "<a onclick=changeLevel('" . $level . "','".
				($level >= "l1" ? $row["level1"] : "") . "','" . 
				($level >= "l2" ? $row["level2"] : "") . "','" . 
				($level >= "l3" ? $row["level3"] : ""). "','" . 
				($level == "l4" ? $row["TafsiliType"] : ""). "','" . 
				($level == "l5" ? $row["TafsiliType2"] : ""). "') "." 
				href='javascript:void(0);'>" . $value . "</a>";
	}
	function levelRender2($row, $value){
		global $level;
		return "<a onclick=changeLevel('l5','".
				($level >= "l1" ? $row["level1"] : "") . "','" . 
				($level >= "l2" ? $row["level2"] : "") . "','" . 
				($level >= "l3" ? $row["level3"] : ""). "','" . 
				($level == "l4" ? $row["TafsiliType"] : ""). "','" . 
				($level == "l5" ? $row["TafsiliType2"] : ""). "') "." 
				href='javascript:void(0);'>" . $value . "</a>";
	}
	
	function showDocs($row, $value){
		if($value == "")
			$value = "-----";
		
		return "<a onclick=\"window.open('flow.php?show=true&taraz=true".
				"&level1=" . $row["level1"] . 
				"&level2=" . $row["level2"] . 
				"&level3=" . $row["level3"] . 
				"&TafsiliType=" . $row["TafsiliType"] . 
				"&TafsiliID=" . $row["TafsiliID"] .
				(!empty($_REQUEST["fromDate"]) ? "&fromDate=" . $_REQUEST["fromDate"] : "") . 
				(!empty($_REQUEST["toDate"]) ? "&toDate=" . $_REQUEST["toDate"] : "") .
				(!empty($_REQUEST["fromLocalNo"]) ? "&fromLocalNo=" . $_REQUEST["fromLocalNo"] : "") . 
				(!empty($_REQUEST["toLocalNo"]) ? "&toLocalNo=" . $_REQUEST["toLocalNo"] : "") .
				(!empty($_REQUEST["BranchID"]) ? "&BranchID=" . $_REQUEST["BranchID"] : "") .
				(!empty($_REQUEST["IncludeRaw"]) ? "&IncludeRaw=1" : "") .
				"');\" href=javascript:void(0)>" . $value . "</a>";
	}
	function showDocs2($row, $value){
		if($value == "")
			$value = "-----";
		
		return "<a onclick=\"window.open('flow.php?taraz=true&show=true&taraz=true".
				"&level1=" . $row["level1"] . 
				"&level2=" . $row["level2"] . 
				"&level3=" . $row["level3"] . 
				"&TafsiliID2=" . $row["TafsiliID2"] .
				(!empty($_POST["fromDate"]) ? "&fromDate=" . $_POST["fromDate"] : "") . 
				(!empty($_POST["toDate"]) ? "&toDate=" . $_POST["toDate"] : "") .
				(!empty($_REQUEST["BranchID"]) ? "&BranchID=" . $_REQUEST["BranchID"] : "") .
				(!empty($_REQUEST["IncludeRaw"]) ? "&IncludeRaw=1" : "") .
				"');\" href=javascript:void(0)>" . $value . "</a>";
	}
	
	function MakeWhere(&$where, &$whereParam){

		if(!isset($_REQUEST["IncludeRaw"]))
		{
			$where .= " AND d.DocStatus != 'RAW'";
		}
		if(isset($_REQUEST["level1"]))
		{
			if($_REQUEST["level1"] == "")
				$where .= " AND cc.level1 is null";
			else
			{
				$where .= " AND cc.level1=:l1";
				$whereParam[":l1"] = $_REQUEST["level1"];
			}
		}
		if(isset($_REQUEST["level2"]))
		{
			if($_REQUEST["level2"] == "")
				$where .= " AND cc.level2 is null";
			else
			{
				$where .= " AND cc.level2=:l2";
				$whereParam[":l2"] = $_REQUEST["level2"];
			}
		}
		if(isset($_REQUEST["level3"]))
		{
			if($_REQUEST["level3"] == "")
				$where .= " AND cc.level3 is null";
			else
			{
				$where .= " AND cc.level3=:l3";
				$whereParam[":l3"] = $_REQUEST["level3"];
			}
		}
		if(isset($_REQUEST["tafsiligroup"]))
		{
			if($_REQUEST["tafsiligroup"] == "")
				$where .= " AND di.TafsiliType is null";
			else
			{
				$where .= " AND di.TafsiliType=:tt";
				$whereParam[":tt"] = $_REQUEST["tafsiligroup"];
			}
		}
		//..............................................
		if(!empty($_POST["level1s"]))
		{
			$level1s = preg_replace("/[^0-9,]+/", "", $_POST["level1s"]);
            $where .= " AND cc.level1 in( " . $level1s . ")";
		}
		//----------------------------------------------
		if(!empty($_POST["level2s"]))
		{
			$level2s = preg_replace("/[^0-9,]+/", "", $_POST["level2s"]);
			$level2s = substr($level2s, 0, strlen($level2s)-1);
            $where .= " AND cc.level2 in( " . $level2s . ")";
		}
		//----------------------------------------------
		if(!empty($_POST["level3s"]))
		{
			$level3s = preg_replace("/[^0-9,]+/", "", $_POST["level3s"]);
			$level3s = substr($level3s, 0, strlen($level3s)-1);
            $where .= " AND cc.level3 in( " . $level3s . ")";
		}
		//----------------------------------------------
		if(!empty($_POST["TafsiliGroup"]))
		{
			$where .= " AND (di.TafsiliType=:tt or di.TafsiliType2=:tt)";
			$whereParam[":tt"] = $_POST["TafsiliGroup"];
		}
		/*if(!empty($_POST["TafsiliGroup2"]))
		{
			$where .= " AND di.TafsiliType2=:tt2";
			$whereParam[":tt2"] = $_POST["TafsiliGroup2"];
		}*/
		if(!empty($_POST["TafsiliID"]))
		{
			$where .= " AND (di.TafsiliID=:tid or di.TafsiliID2=:tid)";
			$whereParam[":tid"] = $_POST["TafsiliID"];
		}
		/*if(!empty($_POST["TafsiliID2"]))
		{
			$where .= " AND di.TafsiliID2=:tid2";
			$whereParam[":tid2"] = $_POST["TafsiliID2"];
		}*/
		if(!empty($_REQUEST["fromLocalNo"]))
		{
			$where .= " AND d.LocalNo >= :lo1 ";
			$whereParam[":lo1"] = $_REQUEST["fromLocalNo"];
		}
		if(!empty($_REQUEST["toLocalNo"]))
		{
			$where .= " AND d.LocalNo <= :lo2 ";
			$whereParam[":lo2"] = $_REQUEST["toLocalNo"];
		}
		if(!empty($_POST["fromDate"]))
		{
			$where .= " AND d.DocDate >= :q1 ";
			$whereParam[":q1"] = DateModules::shamsi_to_miladi($_POST["fromDate"], "-");
		}
		if(!empty($_POST["toDate"]))
		{
			$where .= " AND d.DocDate <= :q2 ";
			$whereParam[":q2"] = DateModules::shamsi_to_miladi($_POST["toDate"], "-");
		}
	}
		
	$where = "";
	$whereParam = array();
	
	if(!empty($_POST["BranchID"]))
	{
		$where .= " AND d.BranchID=:b";
		$whereParam[":b"] = $_POST["BranchID"];
	}	
	
	MakeWhere($where, $whereParam);
	
	$query = $select . $from . " where 
		d.CycleID=" . $_SESSION["accounting"]["CycleID"] . $where;
	$query .= $group != "" ? " group by " . $group : "";
		
	$query .= " order by b1.BlockCode,b2.BlockCode,b3.BlockCode";

	$dataTable = PdoDataAccess::runquery($query, $whereParam);
	
	//..........................................................................
		
	function dateRender($row, $val){
		return DateModules::miladi_to_shamsi($val);
	}	
	
	function moneyRender($row, $val) {
		return number_format($val, 0, '.', ',');
	}

	function bdremainRender($row){
		$v = $row["bdAmount"] - $row["bsAmount"];
		return $v < 0 ? 0 : number_format($v);
	}
	
	function bsremainRender($row){
		$v = $row["bsAmount"] - $row["bdAmount"];
		return $v < 0 ? 0 : number_format($v);
	}
	
	$col = $rpg->addColumn("بدهکار", "StartCycleDebtor", "moneyRender");
	$col->GroupHeader = "حساب ابتدای دوره";
	$col->EnableSummary(true);
	$col = $rpg->addColumn("بستانکار", "StartCycleCreditor", "moneyRender");
	$col->GroupHeader = "حساب ابتدای دوره";
	$col->EnableSummary(true);
	
	$col = $rpg->addColumn("بدهکار", "bdAmount" , "moneyRender");
	$col->GroupHeader = "گردش طی دوره";
	$col->EnableSummary();
	$col = $rpg->addColumn("بستانکار", "bsAmount", "moneyRender");
	$col->GroupHeader = "گردش طی دوره";
	$col->EnableSummary();

	$col = $rpg->addColumn("مانده بدهکار", "bdAmount", "bdremainRender");
	$col->GroupHeader = "مانده پایان دوره";
	$col->EnableSummary(true);
	$col = $rpg->addColumn("مانده بستانکار", "bsAmount", "bsremainRender");
	$col->GroupHeader = "مانده پایان دوره";
	$col->EnableSummary(true);

	if(!$rpg->excel)
	{
		BeginReport();
		echo "<div style=display:none>" . PdoDataAccess::GetLatestQueryString() . "</div>";
		echo "<table style='border:2px groove #9BB1CD;border-collapse:collapse;width:100%'><tr>
				<td width=60px><img src='/framework/icons/logo.jpg' style='width:120px'></td>
				<td align='center' style='height:100px;vertical-align:middle;font-family:b titr;font-size:15px'>
					تراز دفتر 
				".$levelsDescArr[$level]." <br> ".
				 $_SESSION["accounting"]["BranchName"]. "<br>" . "دوره سال " .
				$_SESSION["accounting"]["CycleID"] .
				"</td>
				<td width='200px' align='center' style='font-family:tahoma;font-size:11px'>تاریخ تهیه گزارش : " 
			. DateModules::shNow() . "<br>";
		if(!empty($_POST["fromDate"]))
		{
			echo "<br>گزارش از تاریخ : " . $_POST["fromDate"] . ($_POST["toDate"] != "" ? " - " . $_POST["toDate"] : "");
		}
		echo "</td></tr></table>";
	}
	
	$rpg->mysql_resource = $dataTable;
	$rpg->generateReport();
	
	?>
	<script>
		function changeLevel(curlevel,level1,level2,level3,TafsiliGroup,TafsiliID)
		{
			nextLevel = (curlevel.substring(1)*1);
			nextLevel = (nextLevel == 4 || nextLevel == 5) ? nextLevel+2 : nextLevel+1
				
			var form = document.getElementById("subForm");
			form.action = "taraz.php?show=true&level=" + "l" + nextLevel;
			
			if(curlevel >= "l1")
				form.action += "&level1=" + level1;
			if(curlevel >= "l2")
				form.action += "&level2=" + level2;
			if(curlevel >= "l3")
				form.action += "&level3=" + level3;
			if(curlevel >= "l4")
				form.action += "&tafsiligroup=" + TafsiliGroup;
			if(curlevel >= "l5")
				form.action += "&TafsiliID=" + TafsiliID;
			
			form.submit();
			return;
		}
	</script>
<form id="subForm" method="POST" target="_blank">
	
	<input type="hidden" name="fromDate" value="<?= !empty($_REQUEST["fromDate"]) ? $_REQUEST["fromDate"] : "" ?>">
	<input type="hidden" name="toDate" value="<?= !empty($_REQUEST["toDate"]) ? $_REQUEST["toDate"] : "" ?>">
	<input type="hidden" name="fromLocalNo" value="<?= !empty($_REQUEST["fromLocalNo"]) ? $_REQUEST["fromLocalNo"] : "" ?>">
	<input type="hidden" name="toLocalNo" value="<?= !empty($_REQUEST["toLocalNo"]) ? $_REQUEST["toLocalNo"] : "" ?>">
	<input type="hidden" name="IncludeRaw" value="<?= !empty($_REQUEST["IncludeRaw"]) ? $_REQUEST["IncludeRaw"] : "" ?>">
	<input type="hidden" name="BranchID" value="<?= !empty($_REQUEST["BranchID"]) ? $_REQUEST["BranchID"] : "" ?>">
	
	<input type="hidden" name="level1s" id="level1s" value="<?= $_POST["level1s"] ?>">
	<input type="hidden" name="level2s" id="level2s" value="<?= $_POST["level2s"] ?>">
	<input type="hidden" name="level3s" id="level3s" value="<?= $_POST["level3s"] ?>">
</form>
	<?
	die();
}
Exemple #10
0
	$col = $rpg2->addColumn("اصل قسط", "InstallmentID","pureRender", $PartObj);
	
	function pureRemainRender(&$row, $value, $param, $prevRow){
		if(!$prevRow)
			$row["pureAmount"] = $param;
		else
			$row["pureAmount"] = $prevRow["EndingBalance"];	
		
		$row["EndingBalance"] = $row["pureAmount"] - ($row["InstallmentAmount"] - $row["profit"]);
		
		return number_format($row["pureAmount"]);
	}
	$col = $rpg2->addColumn("مانده اصل وام", "InstallmentID","pureRemainRender",$PartObj->PartAmount);
	
	ob_start();
	$rpg2->generateReport();
	$report2 = ob_get_clean();
	
	//..........................................................
	$LastPayedInstallment = 0;
	foreach($rpg->mysql_resource as $row)
	{
		if($row["remainder"]*1 == 0 && isset($row["InstallmentID"]))
			$LastPayedInstallment = $row["InstallmentID"];
	}
	if($LastPayedInstallment == 0)
		$EndingAmount = $rpg2->mysql_resource[0]["pureAmount"];
	else
	{
		for($i=0; $i < count($rpg2->mysql_resource);$i++)
		{