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; }
// Date : 94.06 //----------------------------- require_once '../header.inc.php'; require_once "ReportGenerator.class.php"; if (isset($_REQUEST["show"])) { $rpg = new ReportGenerator(); $rpg->excel = !empty($_POST["excel"]); function dateRender($row, $val) { return DateModules::miladi_to_shamsi($val); } function PrintDocRender($row, $val) { return "<a target=_blank href='../docs/print_doc.php?DocID=" . $row["DocID"] . "'>" . $val . "</a>"; } $rpg->addColumn("شماره سند", "LocalNo", "PrintDocRender"); //$rpg->addColumn("کد حساب", "CostCode"); $rpg->addColumn("شرح حساب", "CostDesc"); $rpg->addColumn("تفصیلی", "TafsiliDesc"); $rpg->addColumn("تاریخ سند", "DocDate", "dateRender"); $rpg->addColumn("شرح", "detail"); function MakeWhere(&$where, &$whereParam, $ForRemain = false) { if (!isset($_REQUEST["IncludeRaw"])) { $where .= " AND d.DocStatus != 'RAW' "; } if (!empty($_REQUEST["BranchID"])) { $where .= " AND BranchID=:b"; $whereParam[":b"] = $_REQUEST["BranchID"]; } if (!empty($_REQUEST["GroupID"])) {
} function dateRender2($row, $val) { return DateModules::miladi_to_shamsi($val); } function moneyRender($row, $val) { return number_format($val, 0, '.', ','); } function durationRender($row) { return (string) ((int) substr($row["toDate"], 5, 2) - (int) substr($row["fromDate"], 5, 2) + 1); } $rpg = new ReportGenerator(); $rpg->excel = !empty($_POST["excel"]); $rpg->addColumn("وام گیرنده", "fullname"); $rpg->addColumn("تاریخ وام", "PartDate", "dateRender"); $rpg->addColumn("شماره چک", "ChequeNo"); $rpg->addColumn("بانک", "BankDesc"); $rpg->addColumn("شعبه", "ChequeBranch"); $rpg->addColumn("تاریخ چک", "PayDate", "dateRender"); $rpg->addColumn("وضعیت چک", "ChequeStatusDesc"); $col = $rpg->addColumn("مبلغ چک", "PayAmount", "moneyRender"); $col->EnableSummary(); //echo PdoDataAccess::GetLatestQueryString(); $rpg->mysql_resource = $dataTable; 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='font-family:b titr;font-size:15px'>اعتماد شما سرلوحه خدمت ماست<br>\r\n\t\t\t\t\tگزارش چک های دریافتی\r\n\t\t\t\t\t"; if (!empty($_POST["l_fromDate"])) { echo "<br>سررسید چک ها از تاریخ : " . $_POST["l_fromDate"] . ($_POST["l_toDate"] != "" ? " - " . $_POST["l_toDate"] : "");
$dataTable = PdoDataAccess::runquery($query, $whereParam); $rpg = new ReportGenerator(); $rpg->excel = !empty($_POST["excel"]); function dateRender($row, $val) { return DateModules::miladi_to_shamsi($val); } function moneyRender($row, $val) { return number_format($val); } function PrintDocRender($row, $val) { return "<a target=_blank href='../docs/print_doc.php?DocID=" . $row["DocID"] . "'>" . $val . "</a>"; } $rpg->addColumn("شماره سند", "LocalNo", "PrintDocRender"); $rpg->addColumn("تاریخ سند", "DocDate", "dateRender"); //$rpg->addColumn("تاریخ ثبت سند", "RegDate","dateRender"); $rpg->addColumn("ثبت کننده سند", "regPerson"); $rpg->addColumn("شرح سند", "description"); $rpg->addColumn("جمع بدهکار", "bdSum", "moneyRender"); $rpg->addColumn("جمع بسنانکار", "bsSum", "moneyRender"); $rpg->rowColorRender = "RowColorRender"; function RowColorRender($row) { if ($row["DocStatus"] == "CONFIRM") { return "#D0F7E2"; } if ($row["DocStatus"] == "ARCHIVE") { return "#FFFF9E"; }
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(); }
$where .= " AND " . $prefix . $key . " = :{$key}"; } } $whereParam[":{$key}"] = $value; } } //..................................... $where = "1=1"; $whereParam = array(); MakeWhere($where, $whereParam); $query = "select r.* , concat_ws(' ',fname,lname,CompanyName) fullname, sp.StepDesc,\r\n\t\t\t\tbf.InfoDesc TypeDesc,d.DocID, d.DocStatus \r\n\t\t\tfrom WAR_requests r \r\n\t\t\t\tleft join BSC_persons using(PersonID)\r\n\t\t\t\tleft join BaseInfo bf on(bf.TypeID=74 AND InfoID=r.TypeID)\r\n\t\t\t\tjoin WFM_FlowSteps sp on(sp.FlowID=" . FLOWID . " AND sp.StepID=r.StatusID)\r\n\t\t\t\tleft join ACC_DocItems on(SourceType='" . DOCTYPE_WARRENTY . "' \r\n\t\t\t\t\tAND SourceID=r.RequestID AND SourceID2=r.ReqVersion)\t\r\n\t\t\t\tleft join ACC_docs d using(DocID)\r\n\t\t\twhere " . $where . " group by r.RequestID"; $dataTable = PdoDataAccess::runquery($query, $whereParam); $rpg = new ReportGenerator(); $rpg->excel = !empty($_POST["excel"]); $rpg->mysql_resource = $dataTable; $rpg->addColumn("شماره تضمین", "RequestID"); $rpg->addColumn("نوع تضمین", "TypeDesc"); $rpg->addColumn("تاریخ شروع", "StartDate", "dateRender"); $rpg->addColumn("تاریخ پایان", "EndDate", "dateRender"); $rpg->addColumn("مبلغ", "amount", "moneyRender"); $rpg->addColumn("مشتری", "fullname"); $rpg->addColumn("سازمان مربوطه", "organization"); $rpg->addColumn("کارمزد", "wage"); $rpg->addColumn("شماره نامه معرفی", "LetterNo"); $rpg->addColumn("تاریخ نامه معرفی", "LetterDate"); if (!$rpg->excel) { echo '<META http-equiv=Content-Type content="text/html; charset=UTF-8" ><body dir="rtl">'; 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</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["fromReqDate"])) { echo "<br>گزارش از تاریخ : " . $_POST["fromReqDate"] . ($_POST["toReqDate"] != "" ? " - " . $_POST["toReqDate"] : "");
$rpg->rowNumber = true; $rpg->page_size = $MaxCountTable; if (!$rpg->excel) { Manage_Report::BeginReport(); $rpg->headerContent = Manage_Report::MakeHeader($title, $_POST["from_date"], $_POST["to_date"], "", true); } function Remove1Render($row, $val) { $BSID = $row["BSID"]; $extension = $row["PicFileType"]; //$t="<img src='/mystorage/BestStuDocument/PicDoc/".$BSID.".".$extension."'>"; //echo $t; // return "<img src='/mystorage/BestStuDocument/PicDoc/".$BSID.".".$extension."'>"; return "<img height=42 width=42 src='/ServiceManagement/StaffUtility/ui/showImage.php?BSID=" . $BSID . "'>"; } $rpg->addColumn("نام ولی", "PFName"); $rpg->addColumn("نام خانوادگی ولی", "LFName"); $rpg->addColumn("نام فرزند", "CFName"); $rpg->addColumn("نام خانوادگی فرزند", "CLName"); $rpg->addColumn("جنسیت", "sexTitle"); $rpg->addColumn("دوره تحصیلی", "EducLevelTitle"); $rpg->addColumn("پایه", "EducBaseTitle"); $col = $rpg->addColumn("معدل کل", "grade"); $rpg->addColumn("عکس فرزند", 'PicFileType', 'Remove1Render'); $rpg->generateReport(); die; } ?> <script type="text/javascript"> ReportBestStu.prototype = {
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(); }
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; }
<?php //-------------------------- // developer: Jafarkhani // Date: 94.06 //-------------------------- require_once '../header.inc.php'; require_once 'baseinfo.class.php'; require_once '../global/ManageReport.class.php'; require_once inc_reportGenerator; Manage_Report::BeginReport(); echo "<br><br>"; $dataTable = ACC_CostCodes::SelectCost(" 1=1 order by Costcode"); $rpg = new ReportGenerator(); $rpg->addColumn("کد حساب", "CostCode"); $rpg->addColumn("گروه حساب", "LevelTitle0"); $rpg->addColumn("حساب کل", "LevelTitle1"); $rpg->addColumn("معین", "LevelTitle2"); $rpg->addColumn("جزء معین", "LevelTitle3"); $rpg->mysql_resource = $dataTable; $rpg->generateReport(); die;
foreach ($dt as $row) { $SumCheques += $row["PayAmount"] * 1; } if (count($dt) > 0) { $rpt2 = new ReportGenerator(); $rpt2->mysql_resource = $dt; $rpt2->headerContent = "\r\n\t\t<table id=header width=100%>\r\n\t\t\t<tr>\r\n\t\t\t\t<td width=45%></td>\r\n\t\t\t\t<td width=20% style='font-family:titr'>چک های اقساط</td>\r\n\t\t\t\t<td width=45% align=left>تاریخ صدور قبض : <b>" . DateModules::shNow() . "</b></td>\r\n\t\t\t</tr>\r\n\t\t</table>\r\n\t"; function dateRender($row, $value) { return DateModules::miladi_to_shamsi($value); } function amountRender($row, $value) { return number_format($value); } $rpt2->addColumn("تاریخ چک", "PayDate", "dateRender"); $rpt2->addColumn("نام بانک", "BankDesc"); $rpt2->addColumn("شعبه", "ChequeBranch"); $rpt2->addColumn("شماره چک", "ChequeNo"); $rpt2->addColumn("مبلغ چک", "PayAmount", "amountRender"); } ?> <meta content='text/html; charset=utf-8' http-equiv='Content-Type'/> <link rel="stylesheet" type="text/css" href="/generalUI/fonts/fonts.css" /> <style> #header {border : 1px solid black;} td { font-family: nazanin; font-size: 16px !important} font { font-family: nazanin; font-size: 16px !important} .footer { font-family: nazanin; font-weight: bold;
$query = "select r.*,l.*,p.*,\r\n\t\t\t\tconcat_ws(' ',p1.fname,p1.lname,p1.CompanyName) ReqFullname,\r\n\t\t\t\tconcat_ws(' ',p2.fname,p2.lname,p2.CompanyName) LoanFullname,\r\n\t\t\t\tbi.InfoDesc StatusDesc,\r\n\t\t\t\tBranchName,\r\n\t\t\t\tTotalPayAmount,\r\n\t\t\t\tTotalInstallmentAmount\r\n\t\t\t\t\r\n\t\t\tfrom LON_requests r\r\n\t\t\tjoin LON_ReqParts p on(r.RequestID=p.RequestID AND p.IsHistory='NO')\r\n\t\t\tleft join LON_loans l using(LoanID)\r\n\t\t\tjoin BSC_branches using(BranchID)\r\n\t\t\tleft join BaseInfo bi on(bi.TypeID=5 AND bi.InfoID=StatusID)\r\n\t\t\tleft join BSC_persons p1 on(p1.PersonID=r.ReqPersonID)\r\n\t\t\tleft join BSC_persons p2 on(p2.PersonID=r.LoanPersonID)\r\n\t\t\tleft join (\r\n\t\t\t\tselect RequestID,sum(PayAmount) TotalPayAmount from LON_BackPays\r\n\t\t\t\tgroup by RequestID\t\t\t\r\n\t\t\t)t1 on(r.RequestID=t1.RequestID)\r\n\t\t\tleft join (\r\n\t\t\t\tselect RequestID,sum(InstallmentAmount) TotalInstallmentAmount \r\n\t\t\t\tfrom LON_installments\r\n\t\t\t\tgroup by RequestID\t\t\t\r\n\t\t\t)t2 on(r.RequestID=t2.RequestID)\r\n\t\t\twhere 1=1 " . $where . " \r\n\t\t\t\r\n\t\t\tgroup by r.RequestID\r\n\t\t\torder by " . $_POST["OrderBy"] . " " . $_POST["OrderByDirection"]; $dataTable = PdoDataAccess::runquery($query, $whereParam); $query = PdoDataAccess::GetLatestQueryString(); for ($i = 0; $i < count($dataTable); $i++) { $dt = array(); $returnArr = ComputePayments($dataTable[$i]["RequestID"], $dt); $dataTable[$i]["remainder"] = count($returnArr) > 0 ? $returnArr[count($returnArr) - 1]["TotalRemainder"] : 0; } $rpg = new ReportGenerator(); $rpg->excel = !empty($_POST["excel"]); $rpg->mysql_resource = $dataTable; function endedRender($row, $value) { return $value == "YES" ? "خاتمه" : "جاری"; } $rpg->addColumn("شماره وام", "RequestID"); $rpg->addColumn("نوع وام", "LoanDesc"); $rpg->addColumn("معرفی کننده", "ReqFullname"); $rpg->addColumn("تاریخ درخواست", "ReqDate", "dateRender"); $rpg->addColumn("مبلغ درخواست", "ReqAmount", "moneyRender"); $rpg->addColumn("مشتری", "LoanFullname"); $rpg->addColumn("شعبه", "BranchName"); $rpg->addColumn("تاریخ پرداخت", "PartDate", "dateRender"); $rpg->addColumn("مبلغ پرداخت", "PartAmount", "moneyRender"); $rpg->addColumn("تعداد اقساط", "InstallmentCount"); $rpg->addColumn("تنفس(ماه)", "DelayMonths"); $rpg->addColumn("کارمزد مشتری", "CustomerWage"); $rpg->addColumn("کارمزد صندوق", "FundWage"); $rpg->addColumn("درصد دیرکرد", "ForfeitPercent"); $rpg->addColumn("شماره قدیم", "imp_VamCode"); $rpg->addColumn("جاری/خاتمه", "IsEnded", "endedRender");
} function dateRender2($row, $val) { return DateModules::miladi_to_shamsi($val); } function moneyRender($row, $val) { return number_format($val, 0, '.', ','); } function durationRender($row) { return (string) ((int) substr($row["toDate"], 5, 2) - (int) substr($row["fromDate"], 5, 2) + 1); } $rpg = new ReportGenerator(); $rpg->excel = !empty($_POST["excel"]); $rpg->addColumn("شماره سند", "docID"); $rpg->addColumn("تاریخ سند", "docDate", "dateRender"); $rpg->addColumn("شماره چک", "checkNo"); $rpg->addColumn("بانک", "bankTitle"); $rpg->addColumn("شماره حساب", "accountNo"); $rpg->addColumn("تاریخ چک", "checkDate", "dateRender"); $rpg->addColumn("وضعیت چک", "checkTitle"); $col = $rpg->addColumn("مبلغ", "amount"); $col->EnableSummary(); $rpg->addColumn("تفصیلی گیرنده", "tafsiliTitle"); $rpg->mysql_resource = $dataTable; 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='font-family:b titr;font-size:15px'>اعتماد شما سرلوحه خدمت ماست<br>\r\n\t\t\t\t\tگزارش چک ها\r\n\t\t\t\t\t"; if (!empty($_POST["l_fromDate"])) { echo "<br>سررسید چک ها از تاریخ : " . $_POST["l_fromDate"] . ($_POST["l_toDate"] != "" ? " - " . $_POST["l_toDate"] : "");
function moneyRender($row, $val) { return number_format($val, 0, '.', ','); } function IsGovermentalRender($row, $val) { return $val == "YES" ? "دولتی" : "خصوصی"; } function PercentRender($row, $val) { global $TotalShare; return round($val * 100 / $TotalShare, 2) . "%"; } $rpg = new ReportGenerator(); $rpg->excel = !empty($_POST["excel"]); $rpg->addColumn("سهامدار", "TafsiliDesc"); $rpg->addColumn("شماره دفتر", "ShareNo"); $rpg->addColumn("بخش دولتی/خصوصی", "IsGovermental", "IsGovermentalRender"); $col = $rpg->addColumn("تعداد سهام", "shareCount"); $col->align = "center"; $col->EnableSummary(); $col = $rpg->addColumn("درصد سهم", "shareCount", "PercentRender"); $col->align = "center"; $col->EnableSummary(true); $col = $rpg->addColumn("ارزش سهام", "amount", "moneyRender"); $col->align = "center"; $col->EnableSummary(); $rpg->mysql_resource = $dataTable; $percentGovermental = array(0, 0); foreach ($dataTable as $row) { if ($row["IsGovermental"] == "YES") {
$rpg->addColumn("سررسید", "InstallmentDate", "DateRender"); $rpg->addColumn("مبلغ قسط", "InstallmentAmount", "MoneyRender"); $rpg->addColumn("مانده", "remainder", "MoneyRender"); 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<td width=60px><img src='/framework/icons/logo.jpg' style='width:120px'></td>\r\n\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گزارش اقساط معوق\r\n\t\t\t</td>\r\n\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; } 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);
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(); }
<td align='center' style='height:100px;vertical-align:middle;font-family:b titr;font-size:15px'> گزارش پرداخت وام </td> <td width='200px' align='center' style='font-family:tahoma;font-size:11px'>تاریخ تهیه گزارش : " . DateModules::shNow() . "<br>"; echo "</td></tr></table>"; $ReqObj = new LON_requests($RequestID); $partObj = LON_ReqParts::GetValidPartObj($RequestID); //.......................................................... $rpg2 = new ReportGenerator(); $rpg2->mysql_resource = PdoDataAccess::runquery(" select * from LON_installments where RequestID=?", array($RequestID)); $col = $rpg2->addColumn("", "InstallmentID"); $col->hidden = true; $col = $rpg2->addColumn("تاریخ قسط", "InstallmentDate","dateRender"); $col = $rpg2->addColumn("مبلغ قسط", "InstallmentAmount","amountRender"); function profitRender(&$row, $value, $param, $prevRow){ $R = $param->IntervalType == "MONTH" ? 1200/$param->PayInterval : 36500/$param->PayInterval; $V = !$prevRow ? $param->PartAmount : $prevRow["EndingBalance"]; $row["profit"] = round( $V*($param->CustomerWage/$R) ); return number_format($row["profit"]); } $col = $rpg2->addColumn("بهره قسط", "InstallmentID","profitRender", $PartObj);