コード例 #1
0
$details = array();
if ($_g->sys_admin == 1 || $uid) {
    echo '<strong>' . $startdate . '</strong>';
    if ($details_type == 'q') {
        // qb
        echo '<br>Quickbooks<br><table border="1" class="fixed_table">';
        $srch_cat = " cat IN ( 'Fee for Service Income', 'Returned Checks', 'Refunds', 'Misc Income') ";
        $metric = 0.0;
        $plusminus_flag = -1;
        // simliar to globals, public function qb_details_ary($qb_class, $srch_cat, $startdate, $enddate, $plusminus_flag, $details = 0) {, but not grouped - need details
        $qb_tables_minus = 'alexqb_bill';
        $qb_deposit_minus = 'alexqb_deposit';
        $result = array();
        $sql = "\n            SELECT\n                amt,\n                cat,\n                memo,\n                name,\n                view\n            FROM\n                acct_transactions\n            WHERE\n                view IN (':QBTABLES')\n                AND\n                dayt BETWEEN ':STARTDATE' AND ':ENDDATE'\n                AND\n                class = ':QB_CLASS'\n                AND\n                {$srch_cat}\n            ORDER BY amt\n        ";
        $binds = array('QBTABLES' => $qb_tables_minus, 'STARTDATE' => $startdate, 'ENDDATE' => $startdate, 'QB_CLASS' => $qb_class);
        $result_minus = $_g->select($sql, $binds, 'alex');
        foreach ($result_minus as $k => $v) {
            $result_minus[$k]['amt'] = -$plusminus_flag * $v['amt'];
        }
        $sql = "\n            SELECT\n                abs_amt AS amt,\n                cat,\n                memo,\n                name,\n                view\n            FROM\n                (SELECT\n                    id,\n                    cat,\n                    ABS(amt) as abs_amt,\n                    memo,\n                    name,\n                    dayt,\n                    view\n                FROM\n                    acct_transactions\n                WHERE\n                    view IN (':QBTABLES')\n                    AND\n                    dayt BETWEEN ':STARTDATE' AND ':ENDDATE'\n                    AND\n                    class = ':QB_CLASS'\n                    AND\n                    {$srch_cat} ) d\n            ORDER BY amt\n        ";
        $binds['QBTABLES'] = $qb_deposit_minus;
        $result_deposit = $_g->select($sql, $binds, 'alex');
        foreach ($result_deposit as $k => $v) {
            $result_deposit[$k]['amt'] = -$plusminus_flag * $v['amt'];
        }
        $result = $result_minus;
        $result = array_merge($result, $result_deposit);
        foreach ($result as $valid_row) {
            echo '<tr><td>' . substr($valid_row['view'], 7, 4) . '</td><td>' . substr($valid_row['cat'], 0, 4) . '</td><td>' . substr($valid_row['memo'], 0, 12) . '</td><td>$' . number_format($valid_row['amt'], 2) . '</td><td>' . substr($valid_row['name'], 0, 12) . '</td></tr>';
        }
        echo '</table>';