Example #1
0
                $hulp1 = strlen($row['name']) > 2 ? str_replace('_', ' ', $row['name']) : '';
                $hulp1 .= strlen($row['boekstuk']) > 2 ? ' ==> ' . str_replace('_', ' ', $row['boekstuk']) . ' ' : '';
                $hulp2 = strlen($row['project']) > 2 ? $row['project'] : '';
                $col = $pagingArr['m'] % 2 == 0 ? $col = $MOD_GSMOFFM['line_color'][2] : "";
                if ($row['debet_id'] == $regelsArr['recid'][1][0]) {
                    $regelsArr['cum_rek'] += $row['debet_amount'];
                    $regelsArr['descr'] .= sprintf($LINETEMP[2], $col, sprintf($ICONTEMP[26], $row['id'], $row['booking_date']), $hulp1, $hulp2, Gsm_opmaak($row['debet_amount'], 8), '');
                }
                if ($row['tegen1_id'] == $regelsArr['recid'][1][0]) {
                    $hulp_amt = $row['tegen1_amount'] * $MOD_GSMOFFM['rek_type_sign'][$rekeningtypeArr[$row['debet_id']]] * $MOD_GSMOFFM['rek_type_sign'][$rekeningtypeArr[$row['tegen1_id']]] * -1;
                    $regelsArr['cum_rek'] += $hulp_amt;
                    $regelsArr['descr'] .= sprintf($LINETEMP[2], $col, sprintf($ICONTEMP[26], $row['id'], $row['booking_date']), $hulp1, $hulp2, Gsm_opmaak($hulp_amt, 8), '');
                }
                if ($row['tegen2_id'] == $regelsArr['recid'][1][0]) {
                    $hulp_amt = 0;
                    if ($row['tegen2_amount'] != 0) {
                        $hulp_amt = $row['tegen2_amount'] * $MOD_GSMOFFM['rek_type_sign'][$rekeningtypeArr[$row['debet_id']]] * $MOD_GSMOFFM['rek_type_sign'][$rekeningtypeArr[$row['tegen2_id']]] * -1;
                        $regelsArr['cum_rek'] += $hulp_amt;
                        $regelsArr['descr'] .= sprintf($LINETEMP[2], $col, sprintf($ICONTEMP[26], $row['id'], $row['booking_date']), $hulp1, $hulp2, Gsm_opmaak($hulp_amt, 8), '');
                    }
                }
            }
            $parseViewArr = array('header' => $regelsArr['app'], 'message' => message($msg, $debug), 'return' => CH_RETURN, 'module' => $regelsArr['module'], 'page_id' => $page_id, 'section_id' => $section_id, 'bkid' => $regelsArr['select_rek_id'], 'bedragvan' => Gsm_opmaak($regelsArr['bedragvan'], 8), 'bedragtot' => Gsm_opmaak($regelsArr['bedragtot'], 8), 'vanaf' => $regelsArr['vanaf'], 'totenmet' => $regelsArr['totenmet'], 'rek' => '3', 'kopregels' => $regelsArr['head'], 'description' => $regelsArr['descr']);
            $print .= $TEMPLATE[6];
            foreach ($parseViewArr as $key => $value) {
                $print = str_replace("{" . $key . "}", $value, $print);
            }
            $msg['bug'] = "";
        }
    }
}
Example #2
0
        // default list
        $regelsArr['head'] .= $LINETEMP[1];
        $regelsArr['head'] .= sprintf($LINETEMP[2], $MOD_GSMOFF['line_color'][3], strtoupper($MOD_GSMOFF['LAB_DATUM']), strtoupper($MOD_GSMOFF['LAB_REK']), strtoupper($MOD_GSMOFF['LAB_REF']), strtoupper($MOD_GSMOFF['LAB_DEBET']), strtoupper($MOD_GSMOFF['LAB_CREDIT']));
        $regelsArr['descr'] .= $LINETEMP[1];
        $results = $database->query($query);
        $i = 0;
        if ($results && $results->numRows() > 0) {
            while ($row = $results->fetchRow()) {
                if ($row['booking_date'] < $regelsArr['xyear']) {
                    $i++;
                    $col = $i % 2 == 0 ? $MOD_GSMOFF['line_color'][2] : '';
                    $regelsArr['descr'] .= sprintf($LINETEMP[3], $col, $row['id'], $row['booking_date'], $row['project'], $row['name'], '', '');
                    $regelsArr['descr'] .= sprintf($LINETEMP[21], $col, $rekeningArray[$row['debet_id']], Gsm_opmaak($row['debet_amount'], 8));
                    $regelsArr['descr'] .= sprintf($LINETEMP[22], $col, $MOD_GSMOFF['AAN'] . $rekeningArray[$row['tegen1_id']], Gsm_opmaak($row['tegen1_amount'], 8));
                    if ($row['tegen2_amount'] != 0) {
                        $regelsArr['descr'] .= sprintf($LINETEMP[22], $col, $MOD_GSMOFF['AAN'] . $rekeningArray[$row['tegen2_id']], Gsm_opmaak($row['tegen2_amount'], 8));
                    }
                }
            }
            //$row = $results->fetchRow()
        } else {
            $regelsArr['descr'] .= $MOD_GSMOFF['nodata'];
        }
        break;
}
//$regelsArr[ 'mode' ]
/*
 * display select elements
 */
switch ($regelsArr['mode']) {
    case 5:
Example #3
0
function func_rekening($Arr_in)
{
    // processing
    /*
     * creating balans/ resultaat relkening or een detail overzicht
     *
     * $Arr_in['mode'] 1= balans
     * $Arr_in['mode'] 2= resultaat
     * $Arr_in['mode'] 3= details
     * $Arr_in['vanaf']  vanaf
     * $Arr_in['totenmet'] tot en met
     */
    require_once $place_incl . 'pdf.inc';
    global $database;
    global $MOD_GSMOFF;
    global $LINETEMP;
    global $ICONTEMP;
    global $place;
    global $msg;
    $returnvalue = "";
    $pdf_text = '';
    $pdf_data = array();
    $subtotals = array();
    $Arr_local = array('n' => 0, 'm' => 0, 'text_budget' => '', 'rekeningnummer' => '', 'cum_rek' => 0, 'cum_group' => 0, 'cum_srt' => 0, 'cum_activa' => 0, 'cum_resultaat' => 0, 'cum_rek_previous' => 0, 'rekening_type' => '');
    /*
     * initiatie pdf before starting the normal process
     */
    $pdf = new PDF();
    global $title;
    global $owner;
    $owner = $regelsArr['owner'];
    $title = $regelsArr['project'];
    $run = date("Ymd_His");
    $pdf->AliasNbPages();
    $pdf->AddPage();
    $returnvalue .= $LINETEMP[20];
    // kolombreedte instelling
    // end  initiate pdf file
    //***************************
    // Heading
    switch ($Arr_in['mode']) {
        case 1:
            // balans
            $returnvalue .= sprintf($LINETEMP[7], '', 3, 3, '<strong>' . $Arr_in['document'] . '</strong>' . '&nbsp;&nbsp;&nbsp;' . '<strong>' . $Arr_in['company'] . '</strong>', 'Datum : ' . $Arr_in['totenmet']);
            $returnvalue .= sprintf($LINETEMP[11], $MOD_GSMOFF['line_color'][4], '', $MOD_GSMOFF['SUR_REK'], $MOD_GSMOFF['SUR_OMS'], '', '', $MOD_GSMOFF['SUR_BEDRAG']);
            $title .= sprintf("   %s  %s, datum: %s", $Arr_in['document'], $Arr_in['company'], $Arr_in['totenmet']);
            $pdf->ChapterTitle(1, $title);
            $pdf->SetFont('Arial', '', 8);
            $pdf_text .= CH_CR . $title . CH_CR;
            $pdf_header = array($MOD_GSMOFF['SUR_REK'], $MOD_GSMOFF['SUR_OMS'], '', '', '', $MOD_GSMOFF['SUR_BEDRAG']);
            break;
        case 2:
            // resultaat
            $Arr_local['text_budget'] = $Arr_in['budget_exist'] ? "Budget" : "";
            $returnvalue .= sprintf($LINETEMP[7], '', 3, 3, '<strong>' . $Arr_in['document'] . '</strong>' . '&nbsp;&nbsp;&nbsp;' . '<strong>' . $Arr_in['company'] . '</strong>', $MOD_GSMOFF['SUR_PER'] . $Arr_in['vanaf'] . ' - ' . $Arr_in['totenmet']);
            $returnvalue .= sprintf($LINETEMP[11], $MOD_GSMOFF['line_color'][4], '', $MOD_GSMOFF['SUR_REK'], $MOD_GSMOFF['SUR_OMS'], $Arr_local['text_budget'], '', $MOD_GSMOFF['SUR_BEDRAG']);
            $title = sprintf("%s  %s, periode: %s  -  %s", $Arr_in['document'], $Arr_in['company'], $Arr_in['vanaf'], $Arr_in['totenmet']);
            $pdf->ChapterTitle(1, $title);
            $pdf->SetFont('Arial', '', 8);
            $pdf_text .= CH_CR . $title . CH_CR;
            $pdf_header = array($MOD_GSMOFF['SUR_REK'], $MOD_GSMOFF['SUR_OMS'], $Arr_local['text_budget'], '', '', $MOD_GSMOFF['SUR_BEDRAG']);
            break;
        case 3:
            // details
            $returnvalue .= sprintf($LINETEMP[7], '', 3, 3, '<strong>' . $Arr_in['document'] . '</strong>' . '&nbsp;&nbsp;&nbsp;' . '<strong>' . $Arr_in['company'] . '</strong>', $MOD_GSMOFF['SUR_PER'] . $Arr_in['vanaf'] . ' - ' . $Arr_in['totenmet']);
            $returnvalue .= sprintf($LINETEMP[11], $MOD_GSMOFF['line_color'][4], ' ', $MOD_GSMOFF['SUR_REK'], $MOD_GSMOFF['SUR_OMS'], '', '', $MOD_GSMOFF['SUR_BEDRAG']);
            $title = sprintf("%s  %s, periode: %s  -  %s", $Arr_in['document'], $Arr_in['company'], $Arr_in['vanaf'], $Arr_in['totenmet']);
            $pdf->ChapterTitle(1, $title);
            $pdf->SetFont('Arial', '', 8);
            $pdf_text .= CH_CR . $title . CH_CR;
            $pdf_header = array($MOD_GSMOFF['SUR_REK'], $MOD_GSMOFF['SUR_OMS'], '', '', '', $MOD_GSMOFF['SUR_BEDRAG']);
            break;
        default:
            // default list
            break;
    }
    // end of heading
    //***************************
    // preload rekening details
    $rektypeArr = func_table_preload($Arr_in['table_rek'], 4);
    // preload data
    //$row = $results->fetchRow()
    // start processing
    // loop through rekening nummers
    // find associated booking records
    // level1 on balans en resultaten rekening
    // level2 op 1e positie van rekening nummer
    // level3 op rekening nummer
    //***************************
    $Arr_level_L1 = array('vorig' => 0, 'count' => 0);
    // for levelbreak on type
    $Arr_level_L2 = array('vorig' => 0, 'count' => 0);
    // for levelbreak on rekening groep
    $Arr_level_L3 = array('vorig' => 0, 'count' => 0);
    // for levelbreak on rekening nummer
    $query = "SELECT * FROM `" . $Arr_in['table_rek'] . "` ORDER BY `rekening_type`, `rekeningnummer`";
    $r_results = $database->query($query);
    if ($r_results && $r_results->numRows() > 0) {
        // there are records
        while ($r_row = $r_results->fetchRow()) {
            // loop through the records
            // alleen de volgende rekening nummers doen mee
            if (in_array($r_row['rekening_type'], $Arr_in['show_type'])) {
                // rekening nummer is to be processed the type matches
                if ($Arr_level_L2['vorig'] != substr($r_row['rekeningnummer'], 0, 1) || $Arr_level_L1['vorig'] != $r_row['rekening_type']) {
                    // type of group chnage
                    // afsluiten L2 vorige group afsluiten
                    if ($Arr_level_L2['count'] != 0) {
                        // alleen als er records geweest zijn in deze groep
                        $Arr_local['cum_srt'] += $Arr_local['cum_group'];
                        // bij type totaal voegen
                        if ($Arr_in['result']) {
                            // output onder bepaalde conditie
                            $returnvalue .= sprintf($LINETEMP[12], $MOD_GSMOFF['line_color'][3], '', '', '<b>' . $MOD_GSMOFF['grootboek'][$Arr_level_L2['vorig']] . '</b>', '', '', Gsm_opmaak($Arr_local['cum_group'], 1));
                            $pdf_line = sprintf("%s;%s;%s;%s;%s;%s", '', $MOD_GSMOFF['grootboek'][$Arr_level_L2['vorig']], '', '', '', Gsm_opmaak($Arr_local['cum_group'], 2));
                            $pdf_data[] = explode(';', trim($pdf_line));
                            $pdf_line = sprintf("%s;%s;%s;%s;%s;%s", '', '', '', '', '', '');
                            $pdf_data[] = explode(';', trim($pdf_line));
                        }
                        // resetten cumul values
                        $Arr_local['cum_group'] = 0;
                        // groep totaal op nul
                        $Arr_local['cum_rek'] = 0;
                        // een onderliggende rekening nummer totaal op nul zetten
                        if (!$Arr_in['details']) {
                            // blanco regel onder bepaalde conditie
                            // blanco regel volgt
                            $returnvalue .= sprintf($LINETEMP[11], '', '&nbsp;', '', '', '', '', '');
                            $Arr_local['m'] = 0;
                            // reset kleur indicatie
                        }
                    }
                    if ($Arr_level_L1['vorig'] != $r_row['rekening_type']) {
                        // moet er rekening type totaal worden gemaakt
                        // afsluiten L1
                        $subtotals[$Arr_level_L1['vorig']] = $Arr_local['cum_srt'];
                        // totaal van het type vasthouden
                        if ($Arr_level_L1['count'] != 0) {
                            // acties nodig // zijn er records geweest
                            if ($Arr_in['result']) {
                                // output onder bepaalde conditie
                                if ($Arr_level_L1['vorig'] == 2) {
                                    // type 2 processing
                                    $Arr_local['cum_resultaat'] = $subtotals[1] - $subtotals[2];
                                    // bereken resultaat
                                    $returnvalue .= sprintf($LINETEMP[12], $MOD_GSMOFF['line_color'][3], '', '', '<b>' . $MOD_GSMOFF['SUR_RES'] . '</b>', '', '', Gsm_opmaak($Arr_local['cum_resultaat'], 1));
                                    $pdf_line = sprintf("%s;%s;%s;%s;%s;%s", '', $MOD_GSMOFF['SUR_RES'], '', '', '', Gsm_opmaak($Arr_local['cum_resultaat'], 1));
                                    $pdf_data[] = explode(';', trim($pdf_line));
                                    $returnvalue .= sprintf($LINETEMP[12], $MOD_GSMOFF['line_color'][3], '', '<b>' . $MOD_GSMOFF['SUR_TOT'] . '</b>', '<strong>' . $MOD_GSMOFF['rek_type'][$Arr_local['rekening_type']] . '</strong>', '', '', Gsm_opmaak($Arr_local['cum_activa'], 1));
                                    $pdf_line = sprintf("%s;%s;%s;%s;%s;%s", '', $MOD_GSMOFF['SUR_TOT'] . ' ' . $MOD_GSMOFF['rek_type'][$Arr_local['rekening_type']], '', '', '', Gsm_opmaak($subtotals[1], 2));
                                    $pdf_data[] = explode(';', trim($pdf_line));
                                } elseif ($Arr_level_L1['vorig'] == 5) {
                                    // type 5 processing
                                    $Arr_local['cum_resultaat'] = $subtotals[5] - $subtotals[4];
                                    // bereken resultaat
                                    $returnvalue .= sprintf($LINETEMP[12], $MOD_GSMOFF['line_color'][3], '', '<b>' . $MOD_GSMOFF['SUR_TOT'] . '</b>', '<strong>' . $MOD_GSMOFF['rek_type'][$Arr_local['rekening_type']] . '</strong>', '', '', Gsm_opmaak($Arr_local['cum_srt'], 1));
                                    $pdf_line = sprintf("%s;%s;%s;%s;%s;%s", '', $MOD_GSMOFF['SUR_TOT'] . ' ' . $MOD_GSMOFF['rek_type'][$Arr_local['rekening_type']], '', '', '', Gsm_opmaak($subtotals[4], 2));
                                    $pdf_data[] = explode(';', trim($pdf_line));
                                    $returnvalue .= sprintf($LINETEMP[12], $MOD_GSMOFF['line_color'][3], '', '', '<b>' . $MOD_GSMOFF['SUR_RES'] . '</b>', '', '', Gsm_opmaak($Arr_local['cum_resultaat'], 1));
                                    $pdf_line = sprintf("%s;%s;%s;%s;%s;%s", '', $MOD_GSMOFF['SUR_RES'], '', '', '', Gsm_opmaak($Arr_local['cum_resultaat'], 2));
                                    $pdf_data[] = explode(';', trim($pdf_line));
                                } else {
                                    // niet 2 of 5  2 = einde balans 5 = einde resultaat overzicht
                                    $returnvalue .= sprintf($LINETEMP[12], $MOD_GSMOFF['line_color'][3], '', '<b>' . $MOD_GSMOFF['SUR_TOT'] . '</b>', '<strong>' . $MOD_GSMOFF['rek_type'][$Arr_level_L1['vorig']] . '</strong>', '', '', Gsm_opmaak($subtotals[$Arr_level_L1['vorig']], 1));
                                    $pdf_line = sprintf("%s;%s;%s;%s;%s;%s", '', $MOD_GSMOFF['SUR_TOT'] . ' ' . $MOD_GSMOFF['rek_type'][$Arr_level_L1['vorig']], '', '', '', Gsm_opmaak($subtotals[$Arr_level_L1['vorig']], 2));
                                    $pdf_data[] = explode(';', trim($pdf_line));
                                    // blanco regel volgt
                                    $returnvalue .= sprintf($LINETEMP[11], '', '&nbsp;', '', '', '', '', '');
                                    $pdf_line = sprintf("%s;%s;%s;%s;%s;%s", '', '', '', '', '', '');
                                    $pdf_data[] = explode(';', trim($pdf_line));
                                    $Arr_local['m'] = 0;
                                    // reset kleur indicatie
                                }
                            }
                            $Arr_local['cum_srt'] = 0;
                            // soort totaal op nul voor de volgende
                        }
                        //openen L1
                        $Arr_level_L1['vorig'] = $r_row['rekening_type'];
                        // rekening type
                        $Arr_level_L1['count'] = 0;
                        // totaal voor level break uitzetten
                    }
                    //openen L2
                    $Arr_level_L2['vorig'] = substr($r_row['rekeningnummer'], 0, 1);
                    // rekening groep
                    $Arr_level_L2['count'] = 0;
                    // totaal voor level break uitzetten
                }
                // process details L3
                // selection depending on balans rekening
                $Arr_level_L3['vorig'] = isset($row['debet_id']) ? $row['debet_id'] : ' ';
                // waarde key volgende cycle
                $Arr_level_L3['count'] = 0;
                // totaal voor level break uitzetten
                // pick up openings balans van rekening rek
                $Arr_local['cum_rek'] = 0;
                if (abs($r_row['balans']) > 0.001 && $Arr_in['totenmet'] >= $r_row['balans_date']) {
                    $Arr_local['cum_rek'] = $r_row['balans'];
                    $Arr_level_L3['count']++;
                    // om een openings balans te krijgen als er geen verdere boekingen zijn
                    //dit kan er later uit
                    $returnvalue .= sprintf($LINETEMP[12], $MOD_GSMOFF['line_color'][0], '', '', $r_row['balans_date'] . ' >> Openings Balans', '--', Gsm_opmaak($Arr_local['cum_rek'], 1), "");
                    // tot hier
                }
                $msql_search = $r_row['rekening_type'] == 1 || $r_row['rekening_type'] == 2 ? "`booking_date` <= '" . $Arr_in['totenmet'] . "' " : ($msql_search = "`booking_date` >= '" . $Arr_in['vanaf'] . "' AND `booking_date` <= '" . $Arr_in['totenmet'] . "' ");
                $msql_search .= " AND ( `debet_id`= '" . $r_row['id'] . "' OR `tegen1_id`= '" . $r_row['id'] . "' OR  `tegen2_id`= '" . $r_row['id'] . "' )";
                $query = "SELECT * FROM `" . $Arr_in['table'] . "` WHERE " . $msql_search . " ORDER BY `booking_date`, `project`";
                $results = $database->query($query);
                if ($results && $results->numRows() > 0) {
                    while ($row = $results->fetchRow()) {
                        $hulp = sprintf('%s - %s%s', $row['booking_date'], strlen($row['name']) > 2 ? $row['name'] . ' - ' : '', strlen($row['project']) > 2 ? $row['project'] : '');
                        $col = $Arr_local['m'] % 2 == 0 ? $MOD_GSMOFF['line_color'][2] : "";
                        // data for display detail
                        if ($row['debet_id'] == $r_row['id']) {
                            $hulp_amt = $row['debet_amount'];
                            $Arr_local['cum_rek'] += $hulp_amt;
                            // display detailed lines
                            if ($row['booking_date'] < $Arr_in['vanaf']) {
                                $Arr_local['cum_rek_previous'] = $Arr_local['cum_rek'];
                            }
                            // voor een eventuele 0penings balans
                            if ($hulp_amt != 0 && ($Arr_in['details'] || $Arr_in['search'] == $r_row['rekeningnummer'])) {
                                if ($row['booking_date'] >= $Arr_in['vanaf'] && $row['booking_date'] <= $Arr_in['totenmet']) {
                                    if (abs($Arr_local['cum_rek_previous']) > 0.001) {
                                        // er is nog een openings balans af te drukken
                                        $returnvalue .= sprintf($LINETEMP[12], $MOD_GSMOFF['line_color'][0], '', '', ' - Openings Balans', '--', Gsm_opmaak($Arr_local['cum_rek_previous'], 1), "");
                                        $pdf_line = sprintf("%s;%s;%s;%s;%s;%s", '', ' - Openings Balans', '', '--', Gsm_opmaak($Arr_local['cum_rek_previous'], 2), "");
                                        $pdf_data[] = explode(';', trim($pdf_line));
                                        $Arr_local['m'] = 0;
                                        // reset kleur
                                        $col = $Arr_local['m'] % 2 == 0 ? $MOD_GSMOFF['line_color'][2] : "";
                                        $Arr_local['cum_rek_previous'] = 0;
                                        //vergeet openingsbalans
                                    }
                                    // detailed line
                                    $returnvalue .= sprintf($LINETEMP[12], $col, '<small>' . $row['id'] . '</small>', '', $hulp, Gsm_opmaak($hulp_amt, 1), Gsm_opmaak($Arr_local['cum_rek'], 1), '');
                                    $pdf_line = sprintf("%s;%s;%s;%s;%s;%s", '', $hulp, '', Gsm_opmaak($hulp_amt, 2), Gsm_opmaak($Arr_local['cum_rek'], 2), '');
                                    $pdf_data[] = explode(';', trim($pdf_line));
                                }
                                // ($row['booking_date']>= $Arr_in['vanaf'] & $row['booking_date']<= $Arr_in['totenmet'])
                            }
                            //($hulp_amt <> 0 && ($Arr_in['details'] || $Arr_in['search'] == $r_row['rekeningnummer']))
                        }
                        if ($row['tegen1_id'] == $r_row['id']) {
                            $hulp_amt = $row['tegen1_amount'] * $MOD_GSMOFF['rek_type_sign'][$rektypeArr[$row['debet_id']]] * $MOD_GSMOFF['rek_type_sign'][$rektypeArr[$row['tegen1_id']]] * -1;
                            $Arr_local['cum_rek'] += $hulp_amt;
                            // display detailed lines
                            if ($row['booking_date'] < $Arr_in['vanaf']) {
                                $Arr_local['cum_rek_previous'] = $Arr_local['cum_rek'];
                            }
                            // voor een eventuele 0penings balans
                            if ($hulp_amt != 0 && ($Arr_in['details'] || $Arr_in['search'] == $r_row['rekeningnummer'])) {
                                if ($row['booking_date'] >= $Arr_in['vanaf'] && $row['booking_date'] <= $Arr_in['totenmet']) {
                                    if (abs($Arr_local['cum_rek_previous']) > 0.001) {
                                        // er is nog een openings balans af te drukken
                                        $returnvalue .= sprintf($LINETEMP[12], $MOD_GSMOFF['line_color'][0], '', '', $Arr_in['vanaf'] . ' - Openings Balans', '--', Gsm_opmaak($Arr_local['cum_rek_previous'], 1), "");
                                        $pdf_line = sprintf("%s;%s;%s;%s;%s;%s", '', $Arr_in['vanaf'] . ' - Openings Balans', '', '--', Gsm_opmaak($Arr_local['cum_rek_previous'], 2), "");
                                        $pdf_data[] = explode(';', trim($pdf_line));
                                        $Arr_local['m'] = 0;
                                        // reset kleur
                                        $col = $Arr_local['m'] % 2 == 0 ? $MOD_GSMOFF['line_color'][2] : "";
                                        $Arr_local['cum_rek_previous'] = 0;
                                        //vergeet openingsbalans
                                    }
                                    // detailed line
                                    $returnvalue .= sprintf($LINETEMP[12], $col, '<small>' . $row['id'] . '</small>', '', $hulp, Gsm_opmaak($hulp_amt, 1), Gsm_opmaak($Arr_local['cum_rek'], 1), '');
                                    $pdf_line = sprintf("%s;%s;%s;%s;%s;%s", '', $hulp, '', Gsm_opmaak($hulp_amt, 2), Gsm_opmaak($Arr_local['cum_rek'], 2), '');
                                    $pdf_data[] = explode(';', trim($pdf_line));
                                }
                                // ($row['booking_date']>= $Arr_in['vanaf'] & $row['booking_date']<= $Arr_in['totenmet'])
                            }
                            //($hulp_amt <> 0 && ($Arr_in['details'] || $Arr_in['search'] == $r_row['rekeningnummer']))
                        }
                        if ($row['tegen2_id'] == $r_row['id']) {
                            $hulp_amt = $row['tegen2_amount'] * $MOD_GSMOFF['rek_type_sign'][$rektypeArr[$row['debet_id']]] * $MOD_GSMOFF['rek_type_sign'][$rektypeArr[$row['tegen2_id']]] * -1;
                            $Arr_local['cum_rek'] += $hulp_amt;
                            // display detailed lines
                            if ($row['booking_date'] < $Arr_in['vanaf']) {
                                $Arr_local['cum_rek_previous'] = $Arr_local['cum_rek'];
                            }
                            // voor een eventuele 0penings balans
                            if ($hulp_amt != 0 && ($Arr_in['details'] || $Arr_in['search'] == $r_row['rekeningnummer'])) {
                                if ($row['booking_date'] >= $Arr_in['vanaf'] && $row['booking_date'] <= $Arr_in['totenmet']) {
                                    if (abs($Arr_local['cum_rek_previous']) > 0.001) {
                                        // er is nog een openings balans af te drukken
                                        $returnvalue .= sprintf($LINETEMP[12], $MOD_GSMOFF['line_color'][0], '', '', $Arr_in['vanaf'] . ' - Openings Balans', '--', Gsm_opmaak($Arr_local['cum_rek_previous'], 1), "");
                                        $pdf_line = sprintf("%s;%s;%s;%s;%s;%s", '', '', $r_row['balans_date'] . ' - Openings Balans', '--', Gsm_opmaak($Arr_local['cum_rek_previous'], 2), "");
                                        $pdf_data[] = explode(';', trim($pdf_line));
                                        $Arr_local['m'] = 0;
                                        // reset kleur
                                        $col = $Arr_local['m'] % 2 == 0 ? $MOD_GSMOFF['line_color'][2] : "";
                                        $Arr_local['cum_rek_previous'] = 0;
                                        //vergeet openingsbalans
                                    }
                                    // detailed line
                                    $returnvalue .= sprintf($LINETEMP[12], $col, '<small>' . $row['id'] . '</small>', '', $hulp, Gsm_opmaak($hulp_amt, 1), Gsm_opmaak($Arr_local['cum_rek'], 1), '');
                                    $pdf_line = sprintf("%s;%s;%s;%s;%s;%s", '', $hulp, '', Gsm_opmaak($hulp_amt, 2), Gsm_opmaak($Arr_local['cum_rek'], 2), '');
                                    $pdf_data[] = explode(';', trim($pdf_line));
                                }
                                // ($row['booking_date']>= $Arr_in['vanaf'] & $row['booking_date']<= $Arr_in['totenmet'])
                            }
                            //($hulp_amt <> 0 && ($Arr_in['details'] || $Arr_in['search'] == $r_row['rekeningnummer']))
                        }
                        // display line
                        // set details for totals and levelbreak
                        $Arr_local['m']++;
                        if ($row['booking_date'] >= $Arr_in['vanaf'] && $row['booking_date'] <= $Arr_in['totenmet']) {
                            $Arr_level_L3['count']++;
                        }
                    }
                    // $row = $results->fetchRow()
                }
                //($results && $results->numRows() > 0)
                // totaal
                if ($Arr_level_L3['count'] != 0 || abs($Arr_local['cum_rek_previous']) > 0.001) {
                    if (abs($Arr_local['cum_rek_previous']) > 0.001) {
                        // er is nog een openings balans af te drukken
                        $returnvalue .= sprintf($LINETEMP[12], $MOD_GSMOFF['line_color'][0], '', '', 'Openings Balans', '--', Gsm_opmaak($Arr_local['cum_rek_previous'], 1), "");
                        $pdf_line = sprintf("%s;%s;%s;%s;%s;%s", '', 'Openings Balans', '', '--', Gsm_opmaak($Arr_local['cum_rek_previous'], 2), "");
                        $pdf_data[] = explode(';', trim($pdf_line));
                        $Arr_local['m'] = 0;
                        // reset kleur
                        $col = $Arr_local['m'] % 2 == 0 ? $MOD_GSMOFF['line_color'][2] : "";
                        $Arr_local['cum_rek_previous'] = 0;
                        //vergeet openingsbalans
                    }
                    if ($Arr_in['budget_exist'] && $r_row['budget_a'] > 0) {
                        $help_b1 = Gsm_opmaak($r_row['budget_a'], 3);
                        $help_b2 = $Arr_local['cum_rek'] == 0 ? "" : Gsm_opmaak(100 * $Arr_local['cum_rek'] / $r_row['budget_a'], 9);
                    } else {
                        $help_b1 = "";
                        $help_b2 = "";
                    }
                    $returnvalue .= sprintf($LINETEMP[12], $MOD_GSMOFF['line_color'][2], '', '<b>' . $r_row['rekeningnummer'] . '</b>', '<b>' . $r_row['name'] . '</b>', $help_b1, $help_b2, Gsm_opmaak($Arr_local['cum_rek'], 1));
                    $pdf_line = sprintf("%s;%s;%s;%s;%s;%s", $r_row['rekeningnummer'], $r_row['name'], $help_b1, $help_b2, '', Gsm_opmaak($Arr_local['cum_rek'], 2));
                    $pdf_data[] = explode(';', trim($pdf_line));
                    // blanco regel volgt
                    if ($Arr_in['details']) {
                        $returnvalue .= sprintf($LINETEMP[11], '', '&nbsp;', '', '', '', '', '');
                        $pdf_line = sprintf("%s;%s;%s;%s;%s;%s", '', '', '', '', '', '');
                        $pdf_data[] = explode(';', trim($pdf_line));
                        $Arr_local['m'] = 0;
                    }
                    $Arr_local['cum_group'] += $Arr_local['cum_rek'];
                    $Arr_local['cum_rek'] = 0;
                    $Arr_level_L3['count'] = 0;
                    $Arr_level_L2['count']++;
                    $Arr_level_L1['count']++;
                }
                //($Arr_level_L3['count'] != 0)
            }
            // (in_array($r_row['rekening_type'], $Arr_in['show_type'] ))
        }
        //($r_row = $r_results->fetchRow())
        // afsluiten L2
        if ($Arr_level_L2['count'] != 0) {
            // acties nodig
            $Arr_local['cum_group'] += $Arr_local['cum_rek'];
            $Arr_local['cum_srt'] += $Arr_local['cum_group'];
            if ($Arr_in['result']) {
                $returnvalue .= sprintf($LINETEMP[12], $MOD_GSMOFF['line_color'][3], '..', '', '<b>' . $MOD_GSMOFF['grootboek'][$Arr_level_L2['vorig']] . '</b>', '', '', Gsm_opmaak($Arr_local['cum_group'], 1));
                $pdf_line = sprintf("%s;%s;%s;%s;%s;%s", '..', $MOD_GSMOFF['grootboek'][$Arr_level_L2['vorig']], '', '', '', Gsm_opmaak($Arr_local['cum_group'], 2));
                $pdf_data[] = explode(';', trim($pdf_line));
                $pdf_line = sprintf("%s;%s;%s;%s;%s;%s", '', '', '', '', '', '');
                $pdf_data[] = explode(';', trim($pdf_line));
            }
            // resetten cumul values
            $Arr_local['cum_group'] = 0;
            $Arr_local['cum_rek'] = 0;
            if (!$Arr_in['details']) {
                // blanco regel volgt
                $returnvalue .= sprintf($LINETEMP[11], '', '&nbsp;', '', '', '', '', '');
                $Arr_local['m'] = 0;
            }
        }
        // afsluiten L1
        if ($Arr_level_L1['count'] != 0) {
            // acties nodig
            if ($Arr_in['result']) {
                if ($Arr_level_L1['vorig'] == 2) {
                    $subtotals[2] = $Arr_local['cum_srt'];
                    $Arr_local['cum_resultaat'] = $subtotals[1] - $subtotals[2];
                    $returnvalue .= sprintf($LINETEMP[12], $MOD_GSMOFF['line_color'][3], '', '', '<b>' . $MOD_GSMOFF['SUR_RES'] . '</b>', '', '', Gsm_opmaak($Arr_local['cum_resultaat'], 1));
                    $pdf_line = sprintf("%s;%s;%s;%s;%s;%s", '', $MOD_GSMOFF['SUR_RES'], '', '', '', Gsm_opmaak($Arr_local['cum_resultaat'], 2));
                    $pdf_data[] = explode(';', trim($pdf_line));
                    $returnvalue .= sprintf($LINETEMP[12], $MOD_GSMOFF['line_color'][3], '', '<b>' . $MOD_GSMOFF['SUR_TOT'] . '</b>', '<strong>' . $MOD_GSMOFF['rek_type'][1] . '</strong>', '', '', Gsm_opmaak($subtotals[1], 1));
                    $pdf_line = sprintf("%s;%s;%s;%s;%s;%s", '', $MOD_GSMOFF['SUR_TOT'] . ' ' . $MOD_GSMOFF['rek_type'][1], '', '', '', Gsm_opmaak($subtotals[1], 2));
                    $pdf_data[] = explode(';', trim($pdf_line));
                } elseif ($Arr_level_L1['vorig'] == 5) {
                    $subtotals[5] = $Arr_local['cum_srt'];
                    $Arr_local['cum_resultaat'] = $subtotals[5] - $subtotals[4];
                    $returnvalue .= sprintf($LINETEMP[12], $MOD_GSMOFF['line_color'][3], '', '<b>' . $MOD_GSMOFF['SUR_TOT'] . '</b>', '<strong>' . $MOD_GSMOFF['rek_type'][5] . '</strong>', '', '', Gsm_opmaak($Arr_local['cum_srt'], 1));
                    $pdf_line = sprintf("%s;%s;%s;%s;%s;%s", '', $MOD_GSMOFF['SUR_TOT'] . ' ' . $MOD_GSMOFF['rek_type'][4], '', '', '', Gsm_opmaak($subtotals[4], 2));
                    $pdf_data[] = explode(';', trim($pdf_line));
                    $returnvalue .= sprintf($LINETEMP[12], $MOD_GSMOFF['line_color'][3], '', '', '<b>' . $MOD_GSMOFF['SUR_RES'] . '</b>', '', '', Gsm_opmaak($Arr_local['cum_resultaat'], 1));
                    $pdf_line = sprintf("%s;%s;%s;%s;%s;%s", '', $MOD_GSMOFF['SUR_RES'], '', '', '', Gsm_opmaak($Arr_local['cum_resultaat'], 2));
                    $pdf_data[] = explode(';', trim($pdf_line));
                } else {
                    $returnvalue .= sprintf($LINETEMP[12], $MOD_GSMOFF['line_color'][3], '', '<b>' . $MOD_GSMOFF['SUR_TOT'] . '</b>', '<strong>' . $MOD_GSMOFF['rek_type'][$Arr_local['rekening_type']] . '</strong>', '1', '', Gsm_opmaak($subtotals[$Arr_level_L1['vorig']], 1));
                    $pdf_line = sprintf("%s;%s;%s;%s;%s;%s", '', $MOD_GSMOFF['SUR_TOT'] . ' ' . $MOD_GSMOFF['rek_type'][$Arr_local['rekening_type']], '', '', '', Gsm_opmaak($subtotals[$Arr_level_L1['vorig']], 2));
                    $pdf_data[] = explode(';', trim($pdf_line));
                }
            }
            if (!$Arr_in['details']) {
                // blanco regel volgt
                $returnvalue .= sprintf($LINETEMP[11], '', '&nbsp;', '', '', '', '', '');
                $pdf_line = sprintf("%s;%s;%s;%s;%s;%s", '', '', '', '', '', '');
                $pdf_data[] = explode(';', trim($pdf_line));
                $Arr_local['m'] = 0;
            }
        }
    } else {
        $returnvalue .= $MOD_GSMOFF['SUR_NDATA'];
        $pdf_text .= $MOD_GSMOFF['SUR_NDATA'] . CH_CR;
    }
    if (isset($Arr_in['filename_pdf'])) {
        /*
         * the output to the pdf
         */
        $pdf_cols = array(12, 85, 15, 25, 25, 25);
        $pdf_text .= CH_CR . $Arr_in['company'];
        $pdf_text .= CH_CR . CH_CR . $regelsArr['filename_pdf'] . CH_CR;
        $pdf_text .= "Document created on : " . str_replace("_", " ", $run) . CH_CR;
        if ($debug) {
            $pdf_text .= CH_CR . "Version : " . $regelsArr['module'] . $regelsArr['versie'] . CH_CR;
        }
        if (strlen($regelsArr['search']) > 1) {
            $pdf_text .= CH_CR . "Selection : " . $regelsArr['search'];
        }
        $pdf->DataTable($pdf_header, $pdf_data, $pdf_cols);
        $pdf->ChapterBody($pdf_text);
        $pdf->Output($Arr_in['dir_to'] . '/' . $Arr_in['filename_pdf'], 'F');
        $msg['inf'] .= ' report created</br>';
    }
    //isset( $Arr_local[ 'filename_pdf' ] )
    return $returnvalue;
}
Example #4
0
                    $regelsArr['descr'] .= sprintf($LINETEMP[23], $MOD_GSMOFF['line_color'][3], '', '<b>' . $MOD_GSMOFF['SUR_TOT'] . '</b>', '<strong>' . $MOD_GSMOFF['rek_type'][$regelsArr['rekening_type']] . '</strong>', '', '', Gsm_opmaak($regelsArr['cum_srt'], 1));
                    $pdf_line = sprintf("%s;%s;%s;%s;%s;%s", '', $MOD_GSMOFF['SUR_TOT'] . ' ' . $MOD_GSMOFF['rek_type'][$regelsArr['rekening_type']], '', '', '', Gsm_opmaak($regelsArr['cum_srt'], 2));
                    $pdf_data[] = explode(';', trim($pdf_line));
                    $regelsArr['descr'] .= sprintf($LINETEMP[23], $MOD_GSMOFF['line_color'][3], '', '', '<b>' . $MOD_GSMOFF['SUR_RES'] . '</b>', '', '', Gsm_opmaak($regelsArr['cum_resultaat'], 1));
                    $pdf_line = sprintf("%s;%s;%s;%s;%s;%s", '', $MOD_GSMOFF['SUR_RES'], '', '', '', Gsm_opmaak($regelsArr['cum_resultaat'], 2));
                    $pdf_data[] = explode(';', trim($pdf_line));
                }
                //$regelsArr[ 'result' ]
            } else {
                // regel Totaal Tussenrek
                if (!isset($MOD_GSMOFF['rek_type'][$regelsArr['rekening_type']])) {
                    $MOD_GSMOFF['rek_type'][$regelsArr['rekening_type']] = '';
                }
                //!isset( $MOD_GSMOFF[ 'rek_type' ][ $regelsArr[ 'rekening_type' ] ] )
                $regelsArr['descr'] .= sprintf($LINETEMP[23], $MOD_GSMOFF['line_color'][3], '', '<b>' . $MOD_GSMOFF['SUR_TOT'] . '</b>', '<strong>' . $MOD_GSMOFF['rek_type'][$regelsArr['rekening_type']] . '</strong>', '', '', Gsm_opmaak($regelsArr['cum_srt'], 1));
                $pdf_line = sprintf("%s;%s;%s;%s;%s;%s", '', $MOD_GSMOFF['SUR_TOT'] . ' ' . $MOD_GSMOFF['rek_type'][$regelsArr['rekening_type']], '', '', '', Gsm_opmaak($regelsArr['cum_srt'], 2));
                $pdf_data[] = explode(';', trim($pdf_line));
            }
        } else {
            $regelsArr['descr'] .= $MOD_GSMOFF['SUR_NDATA'];
            $pdf_text .= $MOD_GSMOFF['SUR_NDATA'] . "n";
        }
        break;
}
//$regelsArr[ 'mode' ]
if (isset($regelsArr['filename_pdf'])) {
    /*
     * the output to the pdf
     */
    $pdf_cols = array(12, 85, 15, 25, 25, 25);
    $pdf->DataTable($pdf_header, $pdf_data, $pdf_cols);