function hae_saldovahvistus_pdf($saldovahvistus, $boss = false)
{
    global $kukarow, $yhtiorow, $pdf, $kala, $sivu, $norm, $pieni, $kieli, $bold, $lask, $rectparam, $sivu_numero_obj_ids;
    $sivu_numero_obj_ids = array();
    //PDF parametrit
    $pdf = new pdffile();
    $pdf->set_default('margin-top', 0);
    $pdf->set_default('margin-bottom', 0);
    $pdf->set_default('margin-left', 0);
    $pdf->set_default('margin-right', 0);
    $rectparam = array();
    $rectparam["width"] = 0.3;
    $lask = 1;
    $sivu = 1;
    $norm["height"] = 10;
    $norm["font"] = "Times-Roman";
    $pieni["height"] = 8;
    $pieni["font"] = "Times-Roman";
    $bold["height"] = 10;
    $bold["font"] = "Times-Bold";
    //Otetaan tässä asiakkaan kieli talteen
    $kieli = $saldovahvistus['asiakas']['kieli'];
    $firstpage = alku($saldovahvistus);
    $firstpage = rivit($firstpage, $saldovahvistus['laskut'], $saldovahvistus, $boss);
    $kala -= 20;
    $pdf->draw_text(250, $kala, t('Avoin saldo yhteensä', $kieli), $firstpage, $bold);
    $pdf->draw_text(452.5, $kala, $saldovahvistus['avoin_saldo_summa'], $firstpage, $bold);
    $pdf->draw_text(500, $kala, $saldovahvistus['valkoodi'], $firstpage, $bold);
    loppu($firstpage, $saldovahvistus);
    if (!empty($sivu_numero_obj_ids)) {
        foreach ($sivu_numero_obj_ids as $sivu_numero_obj_id) {
            $pdf->objects[$sivu_numero_obj_id]['text'] .= $pdf->currentPage['number'] + 1;
        }
    }
    //keksitään uudelle failille joku varmasti uniikki nimi:
    list($usec, $sec) = explode(' ', microtime());
    mt_srand((double) $sec + (double) $usec * 100000);
    $pdffilenimi = "/tmp/saldovahvistus-" . md5(uniqid(mt_rand(), true)) . ".pdf";
    //kirjoitetaan pdf faili levylle..
    $fh = fopen($pdffilenimi, "w");
    if (fwrite($fh, $pdf->generate()) === FALSE) {
        die("PDF kirjoitus epäonnistui {$pdffilenimi}");
    }
    fclose($fh);
    return $pdffilenimi;
}
Example #2
0
 $laskurow = mysql_fetch_array($result);
 $query = "SELECT *, concat(rpad(upper(hyllyalue), 5, '0'),lpad(upper(hyllynro), 5, '0'),lpad(upper(hyllyvali), 5, '0'),lpad(upper(hyllytaso), 5, '0')) sorttauskentta\n              FROM tilausrivi\n              WHERE otunnus = '{$laskurow['laskutunnus']}'\n              and yhtio     = '{$kukarow['yhtio']}'\n              ORDER BY tunnus";
 $result = pupe_query($query);
 //kuollaan jos yhtään riviä ei löydy
 if (mysql_num_rows($result) == 0) {
     echo t("Laskurivejä ei löytynyt");
     exit;
 }
 require_once "tulosta_tarjous.inc";
 $sivu = 1;
 // aloitellaan laskun teko
 $firstpage = alku();
 while ($row = mysql_fetch_array($result)) {
     rivi($firstpage);
 }
 loppu($firstpage);
 alvierittely($firstpage);
 //keksitään uudelle failille joku varmasti uniikki nimi:
 list($usec, $sec) = explode(' ', microtime());
 mt_srand((double) $sec + (double) $usec * 100000);
 $pdffilenimi = "/tmp/tarjous-" . md5(uniqid(mt_rand(), true)) . ".pdf";
 //kirjoitetaan pdf faili levylle..
 $fh = fopen($pdffilenimi, "w");
 if (fwrite($fh, $pdf->generate()) === FALSE) {
     die("PDF kirjoitus epäonnistui {$pdffilenimi}");
 }
 fclose($fh);
 //Työnnetään tuo pdf vaan putkeen!
 echo file_get_contents($pdffilenimi);
 //poistetaan tmp file samantien kuleksimasta...
 unlink($pdffilenimi);
function generoi_pdf_tiedostot(&$data_array, $params, $kieli)
{
    global $pdf, $asiakasrow, $yhtiorow, $sivu, $norm, $pieni, $pvm, $alkuvv, $alkukk, $alkupp, $loppuvv, $loppukk, $loppupp, $kala, $sivu, $lask, $sumkpled, $sumkplva, $sumed, $sumva, $asiakas_numero;
    $alkuvv = $params['alkuvv'];
    $alkukk = $params['alkukk'];
    $alkupp = $params['alkupp'];
    $loppuvv = $params['loppuvv'];
    $loppukk = $params['loppukk'];
    $loppupp = $params['loppupp'];
    $pdf_tiedostot = array();
    $i = 0;
    echo '<br/>' . t('Tehdään pdf tiedostot') . '<br/>';
    $bar2 = new ProgressBar();
    $bar2->initialize(count($data_array) - 1);
    foreach ($data_array as &$data) {
        $bar2->increase();
        $pdf = new pdffile();
        $pdf->set_default('margin-top', 0);
        $pdf->set_default('margin-bottom', 0);
        $pdf->set_default('margin-left', 0);
        $pdf->set_default('margin-right', 0);
        // defaultteja layouttiin
        $kala = 575;
        $lask = 1;
        $sivu = 1;
        $asiakasrow = $data['asiakasrow'];
        // kirjotetaan header
        $firstpage = alku("osasto");
        $firstpage = rivi_kaikki($firstpage, 'osasto', $data['tilaukset_ilman_try'], $params);
        $sumkpled = $data['summat_ilman_try']['sumkpled'];
        $sumkplva = $data['summat_ilman_try']['sumkplva'];
        $sumed = $data['summat_ilman_try']['sumed'];
        $sumva = $data['summat_ilman_try']['sumva'];
        // kirjotetaan footer
        loppu($firstpage, "dontsend");
        // defaultteja layouttiin
        $kala = 575;
        $lask = 1;
        $sivu = 1;
        // uus pdf header
        $firstpage = alku();
        $firstpage = rivi_kaikki($firstpage, '', $data['tilaukset_try']);
        $sumkpled = $data['summat_try']['sumkpled'];
        $sumkplva = $data['summat_try']['sumkplva'];
        $sumed = $data['summat_try']['sumed'];
        $sumva = $data['summat_try']['sumva'];
        $asiakas_numero = $data['asiakasrow']['asiakasnro'];
        // kirjotetaan footer ja palautetaan luodun tiedoston polku
        $pdf_tiedostot[] = loppu($firstpage);
        $data['tiedosto'] = $pdf_tiedostot[$i];
        $i++;
    }
    return $pdf_tiedostot;
}
Example #4
0
 function rivi($firstpage, $summa, $korko)
 {
     global $firstpage, $pdf, $yhtiorow, $kukarow, $row, $kala, $sivu, $lask, $rectparam, $norm, $pieni, $lask, $kieli, $karhutunnus, $karhukertanro;
     // siirrytäänkö uudelle sivulle?
     if ($kala < 153) {
         $sivu++;
         loppu($firstpage, '', '');
         $firstpage = alku();
         $lask = 1;
     }
     // ei anneta negatiivisia korkoja
     $row['korko'] = $row['summa'] >= 0 ? $row['korko'] : 0.0;
     $pdf->draw_text(30, $kala, $row["laskunro"] . " / " . $row["viite"], $firstpage, $norm);
     if (!empty($karhutunnus)) {
         $query = "SELECT count(distinct ktunnus) ktun\n                FROM karhu_lasku\n                JOIN karhukierros ON (karhukierros.tunnus = karhu_lasku.ktunnus AND karhukierros.tyyppi = '')\n                WHERE ltunnus = {$row['tunnus']}\n                AND ktunnus   <= {$karhutunnus}";
         $karhukertares = pupe_query($query);
         $karhukertarow = mysql_fetch_assoc($karhukertares);
         $karhukertanro = $karhukertarow["ktun"];
         $query = "SELECT\n                max(karhukierros.pvm) as kpvm\n                FROM karhu_lasku\n                JOIN karhukierros ON (karhukierros.tunnus = karhu_lasku.ktunnus AND karhukierros.tyyppi = '')\n                WHERE ltunnus = {$row['tunnus']}\n                AND ktunnus   < {$karhutunnus}";
         $karhukertares = pupe_query($query);
         $karhukertarow = mysql_fetch_assoc($karhukertares);
         $karhuedpvm = $karhukertarow["kpvm"];
     } else {
         $karhukertanro = $row["karhuttu"] + 1;
         $karhuedpvm = $row["kpvm"];
     }
     if ($yhtiorow['maksukehotus_kentat'] == 'J' or $yhtiorow['maksukehotus_kentat'] == 'L') {
         $pdf->draw_text(130, $kala, tv1dateconv($row["tapvm"]), $firstpage, $norm);
         $pdf->draw_text(190, $kala, tv1dateconv($row["erpcm"]), $firstpage, $norm);
         $oikpos = $pdf->strlen($row["ika"], $norm);
         $pdf->draw_text(270 - $oikpos, $kala, $row["ika"], $firstpage, $norm);
         if ($row["valkoodi"] != $yhtiorow["valkoodi"]) {
             $oikpos = $pdf->strlen($row["summa_valuutassa"], $norm);
             $pdf->draw_text(460 - $oikpos, $kala, $row["summa_valuutassa"], $firstpage, $norm);
         } else {
             $oikpos = $pdf->strlen($row["summa"], $norm);
             $pdf->draw_text(460 - $oikpos, $kala, $row["summa"], $firstpage, $norm);
         }
         if ($yhtiorow["maksukehotus_kentat"] == "" or $yhtiorow["maksukehotus_kentat"] == "J") {
             $pdf->draw_text(295, $kala, tv1dateconv($karhuedpvm), $firstpage, $norm);
             $oikpos = $pdf->strlen($karhukertanro, $norm);
             $pdf->draw_text(385 - $oikpos, $kala, $karhukertanro, $firstpage, $norm);
         }
         $oikpos = $pdf->strlen(sprintf('%.2f', $row["korko"]), $norm);
         $pdf->draw_text(515 - $oikpos, $kala, $row["korko"], $firstpage, $norm);
         $oikpos = $pdf->strlen(sprintf('%.2f', $row["summa"] + $row["korko"]), $norm);
         $pdf->draw_text(565 - $oikpos, $kala, sprintf('%.2f', $row["summa"] + $row["korko"]), $firstpage, $norm);
     } else {
         $pdf->draw_text(180, $kala, tv1dateconv($row["tapvm"]), $firstpage, $norm);
         $pdf->draw_text(240, $kala, tv1dateconv($row["erpcm"]), $firstpage, $norm);
         $oikpos = $pdf->strlen($row["ika"], $norm);
         $pdf->draw_text(338 - $oikpos, $kala, $row["ika"], $firstpage, $norm);
         if ($row["valkoodi"] != $yhtiorow["valkoodi"]) {
             $oikpos = $pdf->strlen($row["summa_valuutassa"], $norm);
             $pdf->draw_text(500 - $oikpos, $kala, $row["summa_valuutassa"] . " " . $row["valkoodi"], $firstpage, $norm);
         } else {
             $oikpos = $pdf->strlen($row["summa"], $norm);
             $pdf->draw_text(500 - $oikpos, $kala, $row["summa"] . " " . $row["valkoodi"], $firstpage, $norm);
         }
         if ($yhtiorow["maksukehotus_kentat"] == "" or $yhtiorow["maksukehotus_kentat"] == "J") {
             $pdf->draw_text(365, $kala, tv1dateconv($karhuedpvm), $firstpage, $norm);
             $oikpos = $pdf->strlen($karhukertanro, $norm);
             $pdf->draw_text(560 - $oikpos, $kala, $karhukertanro, $firstpage, $norm);
         }
     }
     $kala = $kala - 13;
     $lask++;
     if ($row["valkoodi"] != $yhtiorow["valkoodi"]) {
         $summa += $row["summa_valuutassa"];
     } else {
         $summa += $row["summa"];
     }
     $korko += $row["korko"];
     $palautus = array("korko" => $korko, "summa" => $summa);
     return $palautus;
 }
Example #5
0
function loppu($firstpage, $summat)
{
    global $pdf, $yhtiorow, $kukarow, $sivu, $rectparam, $norm, $pieni, $kieli, $lask, $kala;
    if (count($summat) > 1 and $lask > 35) {
        $sivu++;
        loppu($firstpage, array());
        $firstpage = alku();
        $kala = 605;
        $lask = 1;
    }
    //yhteensärivi
    $pdf->draw_rectangle(110, 394, 90, 580, $firstpage, $rectparam);
    $pdf->draw_rectangle(110, 540, 90, 580, $firstpage, $rectparam);
    if (count($summat) > 1) {
        $oikpos = $pdf->strlen("----------------", $norm);
        $pdf->draw_text(480 - $oikpos, $kala, "----------------", $firstpage, $norm);
        $kala = $kala - 13;
    }
    foreach ($summat as $valuutta => $summa) {
        if (count($summat) == 1) {
            $pdf->draw_text(404, 92, t("YHTEENSÄ", $kieli) . ":", $firstpage, $norm);
            $pdf->draw_text(464, 92, sprintf('%.2f', $summa), $firstpage, $norm);
            $pdf->draw_text(550, 92, $valuutta, $firstpage, $norm);
        } else {
            $pdf->draw_text(300, $kala, $valuutta, $firstpage, $norm);
            $summa = sprintf('%.2f', $summa);
            $oikpos = $pdf->strlen($summa, $norm);
            $pdf->draw_text(480 - $oikpos, $kala, $summa, $firstpage, $norm);
            $kala = $kala - 13;
        }
    }
    //Pankkiyhteystiedot
    $pdf->draw_rectangle(90, 20, 20, 580, $firstpage, $rectparam);
    $pdf->draw_text(30, 82, t("Pankkiyhteys", $kieli), $firstpage, $pieni);
    $pdf->draw_text(30, 72, $yhtiorow["pankkiiban1"] . "      " . $yhtiorow["pankkiswift1"], $firstpage, $norm);
    $pdf->draw_text(217, 72, $yhtiorow["pankkiiban2"] . "      " . $yhtiorow["pankkiswift2"], $firstpage, $norm);
    $pdf->draw_text(404, 72, $yhtiorow["pankkiiban3"] . "      " . $yhtiorow["pankkiswift3"], $firstpage, $norm);
    //Alimmat kolme laatikkoa, yhtiötietoja
    $pdf->draw_rectangle(70, 20, 20, 580, $firstpage, $rectparam);
    $pdf->draw_rectangle(70, 207, 20, 580, $firstpage, $rectparam);
    $pdf->draw_rectangle(70, 394, 20, 580, $firstpage, $rectparam);
    $pdf->draw_text(30, 55, $yhtiorow["nimi"], $firstpage, $pieni);
    $pdf->draw_text(30, 45, $yhtiorow["osoite"], $firstpage, $pieni);
    $pdf->draw_text(30, 35, $yhtiorow["postino"] . "  " . $yhtiorow["postitp"], $firstpage, $pieni);
    $pdf->draw_text(30, 25, $yhtiorow["maa"], $firstpage, $pieni);
    $pdf->draw_text(217, 55, t("Puhelin", $kieli) . ":", $firstpage, $pieni);
    $pdf->draw_text(252, 55, $yhtiorow["puhelin"], $firstpage, $pieni);
    $pdf->draw_text(217, 45, t("Fax", $kieli) . ":", $firstpage, $pieni);
    $pdf->draw_text(252, 45, $yhtiorow["fax"], $firstpage, $pieni);
    $pdf->draw_text(217, 35, t("Email", $kieli) . ":", $firstpage, $pieni);
    $pdf->draw_text(252, 35, $yhtiorow["email"], $firstpage, $pieni);
    $pdf->draw_text(404, 55, t("Y-tunnus", $kieli) . ":", $firstpage, $pieni);
    $pdf->draw_text(450, 55, $yhtiorow["ytunnus"], $firstpage, $pieni);
    $pdf->draw_text(404, 45, t("Kotipaikka", $kieli) . ":", $firstpage, $pieni);
    $pdf->draw_text(450, 45, $yhtiorow["kotipaikka"], $firstpage, $pieni);
    $pdf->draw_text(404, 35, t("Enn.per.rek", $kieli), $firstpage, $pieni);
    $pdf->draw_text(404, 25, t("Alv.rek", $kieli), $firstpage, $pieni);
}
Example #6
0
function rivi($firstpage, $summa)
{
    global $firstpage, $pdf, $row, $kala, $sivu, $lask, $rectparam, $norm, $pieni, $lask, $kieli, $karhukertanro, $yhtiorow, $kukarow;
    if ($lask == 29 and $sivu == 1 or $lask == 37 and $sivu > 1) {
        $sivu++;
        loppu($firstpage, '');
        $firstpage = alku();
        $kala = 605;
        $lask = 1;
    }
    $pdf->draw_text(30, $kala, $row["laskunro"] . " / " . $row["viite"], $firstpage, $norm);
    $pdf->draw_text(180, $kala, tv1dateconv($row["tapvm"]), $firstpage, $norm);
    $pdf->draw_text(240, $kala, tv1dateconv($row["erpcm"]), $firstpage, $norm);
    $oikpos = $pdf->strlen($row["ika"], $norm);
    $pdf->draw_text(338 - $oikpos, $kala, $row["ika"], $firstpage, $norm);
    $pdf->draw_text(365, $kala, tv1dateconv($row["kpvm"]), $firstpage, $norm);
    if ($row["valkoodi"] != $yhtiorow["valkoodi"]) {
        $oikpos = $pdf->strlen($row["summa_valuutassa"], $norm);
        $pdf->draw_text(500 - $oikpos, $kala, $row["summa_valuutassa"] . " " . $row["valkoodi"], $firstpage, $norm);
        $summa += $row["summa_valuutassa"];
    } else {
        $oikpos = $pdf->strlen($row["summa"], $norm);
        $pdf->draw_text(500 - $oikpos, $kala, $row["summa"] . " " . $row["valkoodi"], $firstpage, $norm);
        $summa += $row["summa"];
    }
    if ($karhukertanro == "") {
        $karhukertanro = $row["karhuttu"] + 1;
    }
    $oikpos = $pdf->strlen($karhukertanro, $norm);
    $pdf->draw_text(560 - $oikpos, $kala, $karhukertanro, $firstpage, $norm);
    $kala = $kala - 13;
    $lask++;
    return $summa;
}