<?php
require("includes/check_auth_user.php");
require("includes/dbconnect.php");
include('includes/function.php');

ini_set("display_errors", 1);
error_reporting(E_ERROR);

$zdb = $_SESSION["zdbyear_" . $dbname];
$admin = $_SESSION["admin_" . $dbname];
mysqli_select_db($conn, $zdb);

$zyear = $_SESSION["tit_" . $dbname];
$admin = $_SESSION["admin_" . $dbname];
$maindb = 'accmast';

$trandb = "actran";
$bankrecp = "bankrecp";
$bankpay = "bankpay";
$cashrecp = "cashrecp";
$cashpay = "cashpay";
$contra = "contra";

//$mpara = $_GET["para"];

$bgrp = "001";
$msource1 = "JV";
//    $msource2 = "BP";




$acond = "";

if (!empty($_POST["name"])) {

    $code = trim($_POST["name"]);
    $acond = "AND `accode`='$code'";
}
$mfrmdate = trim($_POST["frmdate"]);
$mtodate = trim($_POST["todate"]);

if ($mfrmdate > $mtodate) {

    browse("To Date Cannot Be Less Than From Date");
    header("refresh: 1; ledger.php");
    exit();
}
$prntype = $_POST["dtype"];
$prnnarr = $_POST["prinarr"];

if ($prntype == 1) {
    $formname = "JV Book";
} elseif ($prntype == 2) {
    $formname = "Bank Book - Only Debits";
} else {
    $formname = "Bank Book - Only Credits";
}
$mfdt = date("d-m-Y", strtotime($mfrmdate));
$mtdt = date("d-m-Y", strtotime($mtodate));
$acc = mysqli_query($conn, "SELECT * FROM `$maindb` WHERE accode!='' $acond") or die(mysqli_error($conn));

if (isset($_POST["view"])) {

    include("includes/linkshead.php");
    ?>

    <body>
        <div class="container">
            <?php include("includes/head_rep.php"); ?>
            <div class="row">
                <div class="col-lg-12 pad">
                    <table class=" table table-condensed table-hover table-striped" summary="Ledger - Detail" width='100%'
                        border="0">
                        <tbody>
                            <?php
                            mysqli_select_db($conn, $zdb);
                            $totbal = 0;

                            while ($getac = mysqli_fetch_array($acc)) {
                                /** Detail Part* */
                                $totbal = 0;
                                $dtot = 0;
                                $ctot = 0;
                                $maccode = $getac["accode"];
                                $mbankinit = $getac["bankinit"];
                                $macname = $getac["name"];
                                $mopbal = $getac["openbal"];
                                $mopdc = $getac["dc"];

                                if ($mopdc == "D") {
                                    $mopbal = $mopbal * -1;
                                }
                                $ctran1 = mysqli_query($conn, "SELECT *, DATE_FORMAT(`date`, '%d-%m-%Y') as mydt FROM `$trandb` WHERE
                                                                  trnno != '001' AND bankinit='$mbankinit' AND
                                                                  source = '$msource1' AND 
                                                                  vouchno+source IN (SELECT vouchno+source FROM $trandb WHERE 
                                                                  accode = '$maccode' AND `date`>='$mfrmdate' AND `date`<='$mtodate'
                                                                  AND source = '$msource1' )
                                                                  ORDER BY date, source, vouchno ") or die(mysqli_error($conn));

                                $getbal = mysqli_query($conn, "SELECT SUM(amount) as amt FROM `$trandb` WHERE accode='$maccode' AND 
                                                           date < '$mfrmdate' and retdate != '' and retdate != '0000-00-00' ") or die(mysqli_error($conn));
                                $getamt = mysqli_fetch_array($getbal);

                                $amt = $getamt["amt"];
                                $mobal = $mopbal + $amt;
                                $mdebit = 0;
                                $mcredit = 0;

                                if ($mobal < 0) {
                                    $mdc = "DR";
                                    $mdebit = abs($mobal);
                                    $dtot = $dtot + $mdebit;
                                } else {
                                    $mdc = "CR";
                                    $mcredit = abs($mobal);
                                    $ctot = $ctot + $mcredit;
                                }
                                $vdate1 = strtotime($mfrmdate);
                                $vdate = date('d-m-Y', $vdate1);
                                $mvouch = "";
                                $mdescrip = "Opening Balance";
                                $totbal = $totbal + $mobal;

                                if ($totbal < 0) {
                                    $mdctot = "DR";
                                } else {
                                    $mdctot = "CR";
                                }
                                echo "<tr style='height:10px;background-color: #78909C'>";
                                echo "<th style=\"text-align:left;\" scope=\"col\" width=\"500\" colspan='9'><b>" . strtoupper($macname) . "</b></th>";
                                echo "</tr>";
                                ?>
                                <tr style="height:10px; background-color: #CCCCCC">
                                    <th style="text-align:left;" scope="col" width="200"><b>Date</b></th>
                                    <th style="text-align:left;" scope="col" width="50"><b>Voucher</b></th>
                                    <th style="text-align:left;" scope="col" width="600"><b>Description</b></th>
                                    <th style="text-align:right;" scope="col" width="130"><b>Debit</b></th>
                                    <th style="text-align:right;" scope="col" width="130"><b>Credit</b></th>
                                    <th style="text-align:right;" scope="col" width="180"><b>Balance</b></th>
                                </tr>

                                <?php
                                echo "<td style=\"text-align:left;\" scope=\"col\" width=\"150\">$vdate</td>";
                                echo "<td style=\"text-align:left;\" scope=\"col\" width=\"80\">$mvouch</td>";
                                echo "<td style=\"text-align:left;\" scope=\"col\" width=\"400\">$mdescrip</td>";
                                
                                if ($prntype == 1) {
                                    echo "<td style=\"text-align:right;\" scope=\"col\" width=\"180\">$mdebit</td>";
                                    echo "<td style=\"text-align:right;\" scope=\"col\" width=\"180\">$mcredit</td>";
                                    echo "<td style=\"text-align:right;\" scope=\"col\" width=\"200\">" . abs($totbal) . " " . $mdctot . "</td>";
                                } elseif ($prntype == 2) {
                                    echo "<td style=\"text-align:right;\" scope=\"col\" width=\"180\">$mdebit</td>";
                                    echo "<td style=\"text-align:right;\" scope=\"col\" width=\"180\"></td>";
                                    echo "<td style=\"text-align:right;\" scope=\"col\" width=\"200\"></td>";
                                } else {
                                    echo "<td style=\"text-align:right;\" scope=\"col\" width=\"180\"></td>";
                                    echo "<td style=\"text-align:right;\" scope=\"col\" width=\"180\">$mcredit</td>";
                                    echo "<td style=\"text-align:right;\" scope=\"col\" width=\"200\"></td>";
                                }

                                while ($row = mysqli_fetch_assoc($ctran1)) {

                                    $vdate = $row["mydt"];
                                    $msource = $row["source"];
                                    $mvouch = $row["vouchno"];
                                    $mamount = $row["amount"];
                                    $daccode = $row["accode"];
                                    $mdebit = 0;
                                    $mcredit = 0;

                                    if ($mamount < 0) {
                                        $mdc = "DR";
                                        $mdebit = abs($mamount);
                                        $dtot = $dtot + $mdebit;
                                    } else {
                                        $mdc = "CR";
                                        $mcredit = abs($mamount);
                                        $ctot = $ctot + $mcredit;
                                    }
                                    $totbal = $totbal + $mamount;

                                    if ($totbal < 0) {
                                        $mdctot = "DR";
                                    } else {
                                        $mdctot = "CR";
                                    }
                                    $mdescrip = "";
                                    $mchqdtl = "";
                                    $mnarr = "";

                                    $nqry1 = mysqli_query($conn, "SELECT name FROM `accmast` WHERE accode = '$daccode'") or die(mysqli_error($conn));
                                    $nqry = mysqli_fetch_array($nqry1);

                                    $head = $nqry["name"];

                                    switch ($msource) {

                                        case "JV";
                                            if ($prnnarr == 1) {
                                                $nqry1 = mysqli_query($conn, "SELECT chqno, DATE_FORMAT(`chqdate`, '%d-%m-%Y') as mbilldate, remark1
                                                                        FROM `$bankrecp`
                                                                       WHERE vouchno='$mvouch'") or die(mysqli_error($conn));
                                                $nqry = mysqli_fetch_array($nqry1);

                                                $mbill = $nqry["chqno"];
                                                $mbilldt = $nqry["mbilldate"];
                                                $mnarr = $nqry["remark1"];
                                                // $mchqdtl = "Cheque No. : " .  trim($mbill) . " &nbsp;&nbsp;Dated : " . $mbilldt;
                                                $mchqdtl = "Cheque No. : " . trim($mbill) . " &nbsp;&nbsp;Dated : " . $mbilldt;
                                            }
                                            break;

                                        case "BP";

                                            if ($prnnarr == 1) {
                                                $nqry1 = mysqli_query($conn, "SELECT chqno, DATE_FORMAT(`chqdate`, '%d-%m-%Y') as mbilldate, remark1 
                                                                         FROM `$bankpay`
                                                                       WHERE vouchno='$mvouch'") or die(mysqli_error($conn));
                                                $nqry = mysqli_fetch_array($nqry1);

                                                $mbill = $nqry["chqno"];
                                                $mbilldt = $nqry["mbilldate"];
                                                $mnarr = $nqry["remark1"];
                                                $mchqdtl = "Cheque No. : " . trim($mbill) . " &nbsp;&nbsp;Dated : " . $mbilldt;
                                            }
                                            break;

                                        case "CR";

                                            if ($prnnarr == 1) {
                                                $nqry1 = mysqli_query($conn, "SELECT `remark1` FROM `$cashrecp`
                                                                       WHERE vouchno='$mvouch'") or die(mysqli_error($conn));
                                                $nqry = mysqli_fetch_array($nqry1);

                                                $mbill = '';
                                                $mbilldt = '';
                                                $mnarr = $nqry["remark1"];
                                                //$mchqdtl = "Cheque No. : ". trim($mbill)." &nbsp;&nbsp;Dated : ".$mbilldt;  
                                            }
                                            break;

                                        case "CP";

                                            if ($prnnarr == 1) {
                                                $nqry1 = mysqli_query($conn, "SELECT `remark1` FROM `$cashpay`
                                                                       WHERE vouchno='$mvouch'") or die(mysqli_error($conn));
                                                $nqry = mysqli_fetch_array($nqry1);

                                                $mbill = $nqry[""];
                                                $mbilldt = $nqry[""];
                                                $mnarr = $nqry["remark1"];
                                                //$mchqdtl = "Cheque No. : ". trim($mbill)." &nbsp;&nbsp;Dated : ".$mbilldt;  
                                            }
                                            break;

                                        case "TR";
                                            $head = "Contra / Transfer";
                                            if ($prnnarr == 1) {
                                                $nqry1 = mysqli_query($conn, "SELECT `narration` FROM `$contra`
                                                                       WHERE vouchno='$mvouch'") or die(mysqli_error($conn));
                                                $nqry = mysqli_fetch_array($nqry1);

                                                $mnarr = $nqry["narration"];
                                            }
                                            break;
                                        default:
                                            $head = "Other";
                                    }
                                    echo "<tr style='height:10px'>";
                                    echo "<td style=\"text-align:left;\" scope=\"col\" width=\"120\" valign='top'>$vdate</td>";
                                    echo "<td style=\"text-align:left;\" scope=\"col\" width=\"80\" valign='top'>" . $msource . " " . $mvouch . "</td>";
                                    echo "<td style=\"text-align:left;\" scope=\"col\" width=\"400\" valign='top'>$head";

                                    if ($prnnarr == 1) {

                                        if (!empty($mchqdtl)) {
                                            echo "<br/>$mchqdtl";
                                            if (!empty($mnarr)) {
                                                echo "<br/>";
                                                echo $mnarr;
                                            }
                                            echo "</td>";
                                        }
                                    }
                                    echo "</td>";
                                    if ($prntype == 1) {
                                        echo "<td style=\"text-align:right;\" scope=\"col\" width=\"180\" valign='top'>$mdebit</td>";
                                        echo "<td style=\"text-align:right;\" scope=\"col\" width=\"180\" valign='top'>$mcredit</td>";
                                        echo "<td style=\"text-align:right;\" scope=\"col\" width=\"200\" valign='top'> " . abs($totbal) . " " . $mdctot . "</td>";
                                    } elseif ($prntype == 2) {
                                        echo "<td style=\"text-align:right;\" scope=\"col\" width=\"180\" valign='top'>$mdebit</td>";

                                        echo "<td style=\"text-align:right;\" scope=\"col\" width=\"180\" valign='top'></td>";
                                        echo "<td style=\"text-align:right;\" scope=\"col\" width=\"200\" valign='top'></td>";
                                    } else {

                                        echo "<td style=\"text-align:right;\" scope=\"col\" width=\"180\" valign='top'></td>";
                                        echo "<td style=\"text-align:right;\" scope=\"col\" width=\"180\" valign='top'>$mcredit</td>";
                                        echo "<td style=\"text-align:right;\" scope=\"col\" width=\"200\" valign='top'></td>";
                                    }
                                    echo "</tr>";
                                }

                                echo "<tr style='height:10px'>";
                                echo "<td style=\"text-align:left;\" scope=\"col\" width=\"200\"></td>";
                                echo "<td style=\"text-align:left;\" scope=\"col\" width=\"200\"></td>";
                                echo "<td style=\"text-align:left;\" scope=\"col\" width=\"200\"><strong>Total</strong></td>";

                                if ($prntype == 1) {

                                    echo "<td style=\"text-align:right;\" scope=\"col\" width=\"200\">$dtot</td>";
                                    echo "<td style=\"text-align:right;\" scope=\"col\" width=\"200\">$ctot</td>";

                                    if ($totbal < 0) {
                                        echo "<td style=\"text-align:right;\" scope=\"col\" width=\"200\"><font color='red'><strong>" . abs($totbal) . " " . $mdctot . "</strong></font></td>";
                                    } else {
                                        echo "<td style=\"text-align:right;\" scope=\"col\" width=\"200\"><font color='green'><strong>" . abs($totbal) . " " . $mdctot . "</strong></font></td>";
                                    }
                                } elseif ($prntype == 2) {

                                    echo "<td style=\"text-align:right;\" scope=\"col\" width=\"200\">$dtot</td>";
                                    echo "<td style=\"text-align:right;\" scope=\"col\" width=\"200\"></td>";
                                } else {

                                    echo "<td style=\"text-align:right;\" scope=\"col\" width=\"200\"></td>";
                                    echo "<td style=\"text-align:right;\" scope=\"col\" width=\"200\">$ctot</td>";
                                }
                                echo "</tr>";
                            }
                            ?>
                        </tbody>
                    </table>
                </div>
            </div>
        </div>
        <?php
        include("includes/linksfoot.php");
}
if (isset($_POST["excel"])) {



    while ($getac = mysqli_fetch_array($acc)) {
        /** Detail Part* */
        $totbal = 0;
        $dtot = 0;
        $ctot = 0;
        $maccode = $getac["accode"];
        $mbankinit = $getac["bankinit"];
        $macname = $getac["name"];
        $mopbal = $getac["openbal"];
        $mopdc = $getac["dc"];

        if ($mopdc == "D") {
            $mopbal = $mopbal * -1;
        }
        $ctran1 = mysqli_query($conn, "SELECT *, DATE_FORMAT(`date`, '%d-%m-%Y') as mydt FROM `$trandb` WHERE
                                                                  trnno != '001' AND bankinit='$mbankinit' AND
                                                                  source = '$msource1' AND 
                                                                  vouchno+source IN (SELECT vouchno+source FROM $trandb WHERE 
                                                                  accode = '$maccode' AND `date`>='$mfrmdate' AND `date`<='$mtodate'
                                                                  AND source = '$msource1' )
                                                                  ORDER BY date, source, vouchno ") or die(mysqli_error($conn));

        $getbal = mysqli_query($conn, "SELECT SUM(amount) as amt FROM `$trandb` WHERE accode='$maccode' AND 
                                                           date < '$mfrmdate' and retdate != '' and retdate != '0000-00-00' ") or die(mysqli_error($conn));
        $getamt = mysqli_fetch_array($getbal);

        $amt = $getamt["amt"];
        $mobal = $mopbal + $amt;
        $mdebit = 0;
        $mcredit = 0;

        if ($mobal < 0) {
            $mdc = "DR";
            $mdebit = abs($mobal);
            $dtot = $dtot + $mdebit;
        } else {
            $mdc = "CR";
            $mcredit = abs($mobal);
            $ctot = $ctot + $mcredit;
        }
        $vdate1 = strtotime($mfrmdate);
        $vdate = date('d-m-Y', $vdate1);
        $mvouch = "";
        $mdescrip = "Opening Balance";
        $totbal = $totbal + $mobal;

        if ($totbal < 0) {
            $mdctot = "DR";
        } else {
            $mdctot = "CR";
        }

        $contents .= "$macname" . "\n";

        $contents .= "Date, Voucher, Description, Debit, Credit, Balance \n";

        $contents .= "$vdate" . ",";
        $contents .= "$mvouch" . ",";
        $contents .= "$mdescrip" . ",";

        if ($prntype == 1) {

            $contents .= "$mdebit" . ",";
            $contents .= "$mcredit" . ",";
            $contents .= abs($totbal) . "$mdctot" . "\n";

        } elseif ($prntype == 2) {
            $contents .= "$mdebit" . ",";
            $contents .= "" . ",";
            $contents .= "" . "\n";

        } else {
            $contents .= "" . ",";
            $contents .= "$mcredit" . ",";
            $contents .= "" . "\n";

        }

        while ($row = mysqli_fetch_assoc($ctran1)) {

            $vdate = $row["mydt"];
            $msource = $row["source"];
            $mvouch = $row["vouchno"];
            $mamount = $row["amount"];
            $daccode = $row["accode"];
            $mdebit = 0;
            $mcredit = 0;

            if ($mamount < 0) {
                $mdc = "DR";
                $mdebit = abs($mamount);
                $dtot = $dtot + $mdebit;
            } else {
                $mdc = "CR";
                $mcredit = abs($mamount);
                $ctot = $ctot + $mcredit;
            }
            $totbal = $totbal + $mamount;

            if ($totbal < 0) {
                $mdctot = "DR";
            } else {
                $mdctot = "CR";
            }
            $mdescrip = "";
            $mchqdtl = "";
            $mnarr = "";

            $nqry1 = mysqli_query($conn, "SELECT name FROM `accmast` WHERE accode = '$daccode'") or die(mysqli_error($conn));
            $nqry = mysqli_fetch_array($nqry1);

            $head = $nqry["name"];

            switch ($msource) {

                case "JV";
                    if ($prnnarr == 1) {
                        $nqry1 = mysqli_query($conn, "SELECT chqno, DATE_FORMAT(`chqdate`, '%d-%m-%Y') as mbilldate, remark1
                                                                        FROM `$bankrecp`
                                                                       WHERE vouchno='$mvouch'") or die(mysqli_error($conn));
                        $nqry = mysqli_fetch_array($nqry1);

                        $mbill = $nqry["chqno"];
                        $mbilldt = $nqry["mbilldate"];
                        $mnarr = $nqry["remark1"];
                        $mchqdtl = "Cheque No. : " . trim($mbill) . " Dated : " . $mbilldt;
                    }

                    break;

                case "BP";

                    if ($prnnarr == 1) {
                        $nqry1 = mysqli_query($conn, "SELECT chqno, DATE_FORMAT(`chqdate`, '%d-%m-%Y') as mbilldate, remark1 
                                                                         FROM `$bankpay`
                                                                       WHERE vouchno='$mvouch'") or die(mysqli_error($conn));
                        $nqry = mysqli_fetch_array($nqry1);

                        $mbill = $nqry["chqno"];
                        $mbilldt = $nqry["mbilldate"];
                        $mnarr = $nqry["remark1"];
                        $mchqdtl = "Cheque No. : " . trim($mbill) . " Dated : " . $mbilldt;
                    }

                    break;

                case "CR";

                    if ($prnnarr == 1) {
                        $nqry1 = mysqli_query($conn, "SELECT `remark1` FROM `$cashrecp`
                                                                       WHERE vouchno='$mvouch'") or die(mysqli_error($conn));
                        $nqry = mysqli_fetch_array($nqry1);

                        $mbill = '';
                        $mbilldt = '';
                        $mnarr = $nqry["remark1"];
                    }

                    break;

                case "CP";

                    if ($prnnarr == 1) {
                        $nqry1 = mysqli_query($conn, "SELECT `remark1` FROM `$cashpay`
                                                                       WHERE vouchno='$mvouch'") or die(mysqli_error($conn));
                        $nqry = mysqli_fetch_array($nqry1);

                        $mbill = $nqry[""];
                        $mbilldt = $nqry[""];
                        $mnarr = $nqry["remark1"];
                    }
                        
                    break;

                case "TR";
                    $head = "Contra / Transfer";
                    if ($prnnarr == 1) {
                        $nqry1 = mysqli_query($conn, "SELECT `narration` FROM `$contra`
                                                                       WHERE vouchno='$mvouch'") or die(mysqli_error($conn));
                        $nqry = mysqli_fetch_array($nqry1);

                        $mnarr = $nqry["narration"];
                    }
                    break;
                default:
                    $head = "Other";
            }

            $contents .= "$vdate" . ",";
            $contents .= "$msource" . "$mvouch" . ",";
            $contents .= "$head" . ",";

            if ($prntype == 1) {
                $contents .= "$mdebit" . ",";
                $contents .= "$mcredit" . ",";
                $contents .= abs($totbal) . "$mdctot" . ",";

            } elseif ($prntype == 2) {
                $contents .= "$mdebit" . ",";
                $contents .= "" . ",";
                $contents .= "" . ",";

            } else {
                $contents .= "" . ",";
                $contents .= "$mcredit" . ",";
                $contents .= "" . ",";

            }
            $contents .= "\n";
            

            if ($prnnarr == 1) {

                if (!empty($mchqdtl)) {

                    $contents .= ",,$mchqdtl" . "\n";

                    if (!empty($mnarr)) {
                        $contents .= ",,$mnarr" . "\n";
                    }

                }
            }

        }

        $contents .= "" . ",";
        $contents .= "" . ",";
        $contents .= "Total" . ",";

        if ($prntype == 1) {

            $contents .= "$dtot" . ",";
            $contents .= "$ctot" . ",";

            if ($totbal < 0) {
                $contents .= abs($totbal) . " " . $mdctot . ",";
            } else {
                $contents .= abs($totbal) . " " . $mdctot . ",";
            }

        } elseif ($prntype == 2) {
            $contents .= "$dtot" . ",";
            $contents .= "" . ",";

        } else {
            $contents .= "" . ",";
            $contents .= "$ctot" . ",";

        }
        $contents .= "\n";

    }

    $contents = strip_tags($contents);

    if ($_POST["dtype"] == 1) {
        header("Content-Disposition: attachment; filename=$formname" . "_Summary" . date('d-m-Y') . ".csv");
        print $contents;
    } else {
        header("Content-Disposition: attachment; filename=$formname" . "_Detail" . date('d-m-Y') . ".csv");
        print $contents;
    }
}
if (isset($_POST["subpdf"])) {

    $acond = "";

    if (!empty($_POST["name"])) {

        $code = trim($_POST["name"]);
        $acond = "AND `accode`='$code'";
    }
    $mfrmdate = trim($_POST["frmdate"]);
    $mtodate = trim($_POST["todate"]);

    if ($mfrmdate > $mtodate) {

        browse("To Date Cannot Be Less Than From Date");
        header("refresh: 1; ledger.php");
        exit();
    }
    $prntype = $_POST["dtype"];
    $prnnarr = $_POST["prinarr"];

    if ($prntype == 1) {
        $formname = "JV Book";
    } elseif ($prntype == 2) {
        $formname = "Bank Book - Only Debits";
    } else {
        $formname = "Bank Book - Only Credits";
    }
    $mfdt = date("d-m-Y", strtotime($mfrmdate));
    $mtdt = date("d-m-Y", strtotime($mtodate));
    $acc = mysqli_query($conn, "SELECT * FROM `$maindb` WHERE accode!='' $acond") or die(mysqli_error($conn));

    mysqli_select_db($conn, $zdb);
    $totbal = 0;
    require("library/fpdf/fpdf.php");

    class pdf extends fpdf
    {

        function Footer()
        {



            //Position at 1.5 cm from bottom

            $this->SetY(-15);

            //Arial italic 8

            $this->SetFont('Arial', 'I', 8);

            //Page number

            $this->Cell(0, 10, 'Page ' . $this->PageNo() . '/{nb}', 0, 0, 'C');
        }

    }

    $pdf = new pdf('L', 'mm', 'A4');

    $pdf->AliasNbPages();

    $pdf->AddPage();
    while ($getac = mysqli_fetch_array($acc)) {
        $totbal = 0;
        $dtot = 0;
        $ctot = 0;
        $maccode = $getac["accode"];
        $mbankinit = $getac["bankinit"];
        $macname = $getac["name"];
        $mopbal = $getac["openbal"];
        $mopdc = $getac["dc"];

        if ($mopdc == "D") {
            $mopbal = $mopbal * -1;
        }
        $ctran1 = mysqli_query($conn, "SELECT *, DATE_FORMAT(`date`, '%d-%m-%Y') as mydt FROM `$trandb` WHERE
                                                                  trnno != '001' AND bankinit='$mbankinit' AND
                                                                  source = '$msource1' AND 
                                                                  vouchno+source IN (SELECT vouchno+source FROM $trandb WHERE 
                                                                  accode = '$maccode' AND `date`>='$mfrmdate' AND `date`<='$mtodate'
                                                                  AND source = '$msource1' )
                                                                  ORDER BY date, source, vouchno ") or die(mysqli_error($conn));

        $getbal = mysqli_query($conn, "SELECT SUM(amount) as amt FROM `$trandb` WHERE accode='$maccode' AND 
                                                           date < '$mfrmdate' and retdate != '' and retdate != '0000-00-00' ") or die(mysqli_error($conn));
        $getamt = mysqli_fetch_array($getbal);

        $amt = $getamt["amt"];
        $mobal = $mopbal + $amt;
        $mdebit = 0;
        $mcredit = 0;

        if ($mobal < 0) {
            $mdc = "DR";
            $mdebit = abs($mobal);
            $dtot = $dtot + $mdebit;
        } else {
            $mdc = "CR";
            $mcredit = abs($mobal);
            $ctot = $ctot + $mcredit;
        }
        $vdate1 = strtotime($mfrmdate);
        $vdate = date('d-m-Y', $vdate1);
        $mvouch = "";
        $mdescrip = "Opening Balance";
        $totbal = $totbal + $mobal;

        if ($totbal < 0) {
            $mdctot = "DR";
        } else {
            $mdctot = "CR";
        }
        $getcomp = mysqli_query($conn, "SELECT * FROM $zroot.`company` where code='$zcomp'") or die(mysqli_error($conn));
        $comp = mysqli_fetch_array($getcomp);
        $pdf->SetFont('Arial', 'I', 10);
        $pdf->SetTextColor(96, 130, 191);
        $pdf->SetFillColor(255, 255, 255);
        $pdf->Cell(278, 7, strtoupper($macname), 1, 0, '', 1);
        $pdf->SetFont('Arial', '', 1, 0);

        $pdf->SetTextColor(0, 0, 0);
        $pdf->Ln();

        $pdf->SetFont('Arial', 'I', 10);
        $pdf->SetTextColor(255, 255, 255);
        $pdf->SetFillColor(96, 130, 191);
        $pdf->Cell(30, 7, "Date", 1, 0, '', 1);
        $pdf->Cell(30, 7, "Voucher", 1, 0, '', 1);
        $pdf->Cell(98, 7, "Description", 1, 0, '', 1);
        $pdf->Cell(40, 7, "Debit", 1, 0, '', 1);
        $pdf->Cell(40, 7, "Credit", 1, 0, '', 1);
        $pdf->Cell(40, 7, "Balance", 1, 0, '', 1);
        $pdf->SetFont('Arial', '', 1, 0);

        $pdf->SetTextColor(0, 0, 0);
        $pdf->Ln();

        $pdf->SetFont('Arial', '', 8);
        $pdf->Cell(30, 7, "$vdate", 1);
        $pdf->Cell(30, 7, "$mvouch", 1);
        $pdf->Cell(98, 7, "$mdescrip", 1);

        if ($prntype == 1) {

            $pdf->Cell(40, 7, "$mdebit", 1);
            $pdf->Cell(40, 7, "$mcredit", 1);
            $pdf->Cell(40, 7, abs($totbal) . " " . $mdctot, 1);
            $pdf->Ln();
        } elseif ($prntype == 2) {
            $pdf->Cell(40, 7, "$mdebit", 1);
            $pdf->Cell(40, 7, " ", 1);
            $pdf->Cell(40, 7, " ", 1);
            $pdf->Ln();
        } else {
            $pdf->Cell(40, 7, " ", 1);
            $pdf->Cell(40, 7, "$mcredit", 1);
            $pdf->Cell(40, 7, " ", 1);
            $pdf->Ln();
        }
        while ($row = mysqli_fetch_assoc($ctran1)) {

            $vdate = $row["mydt"];
            $msource = $row["source"];
            $mvouch = $row["vouchno"];
            $mamount = $row["amount"];
            $daccode = $row["accode"];
            $mdebit = 0;
            $mcredit = 0;

            if ($mamount < 0) {
                $mdc = "DR";
                $mdebit = abs($mamount);
                $dtot = $dtot + $mdebit;
            } else {
                $mdc = "CR";
                $mcredit = abs($mamount);
                $ctot = $ctot + $mcredit;
            }
            $totbal = $totbal + $mamount;

            if ($totbal < 0) {
                $mdctot = "DR";
            } else {
                $mdctot = "CR";
            }
            $mdescrip = "";
            $mchqdtl = "";
            $mnarr = "";

            $nqry1 = mysqli_query($conn, "SELECT name FROM `accmast` WHERE accode = '$daccode'") or die(mysqli_error($conn));
            $nqry = mysqli_fetch_array($nqry1);

            $head = $nqry["name"];

            switch ($msource) {

                case "JV";
                    if ($prnnarr == 1) {
                        $nqry1 = mysqli_query($conn, "SELECT chqno, DATE_FORMAT(`chqdate`, '%d-%m-%Y') as mbilldate, remark1
                                                                        FROM `$bankrecp`
                                                                       WHERE vouchno='$mvouch'") or die(mysqli_error($conn));
                        $nqry = mysqli_fetch_array($nqry1);

                        $mbill = $nqry["chqno"];
                        $mbilldt = $nqry["mbilldate"];
                        $mnarr = $nqry["remark1"];
                        $mchqdtl = "Cheque No. : " . +trim($mbill) . " Dated : " . $mbilldt;
                    }
                    break;

                case "BP";

                    if ($prnnarr == 1) {
                        $nqry1 = mysqli_query($conn, "SELECT chqno, DATE_FORMAT(`chqdate`, '%d-%m-%Y') as mbilldate, remark1 
                                                                         FROM `$bankpay`
                                                                       WHERE vouchno='$mvouch'") or die(mysqli_error($conn));
                        $nqry = mysqli_fetch_array($nqry1);

                        $mbill = $nqry["chqno"];
                        $mbilldt = $nqry["mbilldate"];
                        $mnarr = $nqry["remark1"];
                        $mchqdtl = "Cheque No. : " . +trim($mbill) . " Dated : " . $mbilldt;
                    }
                    break;

                case "CR";

                    if ($prnnarr == 1) {
                        $nqry1 = mysqli_query($conn, "SELECT `remark1` FROM `$cashrecp`
                                                                       WHERE vouchno='$mvouch'") or die(mysqli_error($conn));
                        $nqry = mysqli_fetch_array($nqry1);

                        $mbill = '';
                        $mbilldt = '';
                        $mnarr = $nqry["remark1"];
                    }
                    break;

                case "CP";

                    if ($prnnarr == 1) {
                        $nqry1 = mysqli_query($conn, "SELECT `remark1` FROM `$cashpay`
                                                                       WHERE vouchno='$mvouch'") or die(mysqli_error($conn));
                        $nqry = mysqli_fetch_array($nqry1);

                        $mbill = $nqry[""];
                        $mbilldt = $nqry[""];
                        $mnarr = $nqry["remark1"];
                    }
                    break;

                case "TR";
                    $head = "Contra / Transfer";
                    if ($prnnarr == 1) {
                        $nqry1 = mysqli_query($conn, "SELECT `narration` FROM `$contra`
                                                                       WHERE vouchno='$mvouch'") or die(mysqli_error($conn));
                        $nqry = mysqli_fetch_array($nqry1);

                        $mnarr = $nqry["narration"];
                    }
                    break;
                default:
                    $head = "Other";
            }
            $pdf->SetFont('Arial', '', 8);
            $pdf->Cell(30, 7, "$vdate", 1);
            $pdf->Cell(30, 7, "$msource" . " " . "$mvouch", 1);
            $pdf->Cell(98, 7, "$head", 1);
            if ($prntype == 1) {
                $pdf->Cell(40, 7, "$mdebit", 1);
                $pdf->Cell(40, 7, "$mcredit", 1);
                $pdf->Cell(40, 7, abs($totbal) . " " . $mdctot, 1);
                $pdf->Ln();
            } elseif ($prntype == 2) {
                $pdf->Cell(40, 7, "$mdebit", 1);
                $pdf->Cell(40, 7, " ", 1);
                $pdf->Cell(40, 7, " ", 1);
                $pdf->Ln();
            } else {
                $pdf->Cell(40, 7, " ", 1);
                $pdf->Cell(40, 7, "$mcredit", 1);
                $pdf->Cell(40, 7, " ", 1);
                $pdf->Ln();
            }

            if ($prnnarr == 1) {
                $pdf->Cell(30, 7, " ", 1);
                $pdf->Cell(30, 7, " ", 1);
                if (!empty($mchqdtl)) {
                    $pdf->Cell(98, 7, "$mchqdtl", 1);
                } else {
                    $pdf->Cell(98, 7, " ", 1);
                }
                $pdf->Cell(40, 7, " ", 1);
                $pdf->Cell(40, 7, " ", 1);
                $pdf->Cell(40, 7, " ", 1);
                $pdf->Ln();

                $pdf->Cell(30, 7, " ", 1);
                $pdf->Cell(30, 7, " ", 1);
                if (!empty($mnarr)) {
                    $pdf->Cell(98, 7, "$mnarr", 1);
                } else {
                    $pdf->Cell(98, 7, " ", 1);
                }
                $pdf->Cell(40, 7, " ", 1);
                $pdf->Cell(40, 7, " ", 1);
                $pdf->Cell(40, 7, " ", 1);
                $pdf->Ln();
            }
        }

        $pdf->SetFont('Arial', 'I', 10);
        $pdf->SetTextColor(255, 0, 0);
        $pdf->SetFillColor(255, 255, 255);
        $pdf->Cell(30, 7, " ", 1, 0, '', 1);
        $pdf->Cell(30, 7, " ", 1, 0, '', 1);
        $pdf->Cell(98, 7, "Total", 1, 0, '', 1);

        if ($prntype == 1) {
            $pdf->Cell(40, 7, "$dtot", 1, 0, '', 1);
            $pdf->Cell(40, 7, "$ctot", 1, 0, '', 1);

            if ($totbal < 0) {
                $pdf->Cell(40, 7, abs($totbal) . " " . $mdctot, 1, 0, '', 1);
            } else {
                $pdf->Cell(40, 7, abs($totbal) . " " . $mdctot, 1, 0, '', 1);
            }
            $pdf->Ln();
        } elseif ($prntype == 2) {
            $pdf->Cell(40, 7, "$dtot", 1, 0, '', 1);
            $pdf->Cell(40, 7, " ", 1, 0, '', 1);
        } else {
            $pdf->Cell(40, 7, " ", 1, 0, '', 1);
            $pdf->Cell(40, 7, "$ctot", 1, 0, '', 1);
            $pdf->SetFont('Arial', '', 1, 0);

            $pdf->SetTextColor(0, 0, 0);

            $pdf->Ln();
        }
    }
    $pdf->Output("Journal Book.pdf", "D");
}
?>