if (mysql_num_rows($tresult) == 0) { die(t("VIRHE: Yhtiöllä EI OLE ennakkolaskutustuotetta, sopimuslaskutusta ei voida toteuttaa!")); } echo "<font class='head'>" . t("Sopimuslaskutus") . ":</font><hr><br>"; if ($tee == "ennakkolaskuta") { ennakkolaskuta($tunnus); $tee = ""; } if ($tee == "ennakkolaskuta_kaikki") { // seuraava positio on tämä siis $query = "SELECT count(*)-1 as ennakko_kpl\n FROM maksupositio\n JOIN maksuehto on maksupositio.yhtio = maksupositio.yhtio and maksupositio.maksuehto = maksuehto.tunnus\n WHERE maksupositio.yhtio = '{$kukarow['yhtio']}'\n and maksupositio.otunnus = '{$tunnus}'\n and maksupositio.uusiotunnus = 0\n ORDER BY maksupositio.tunnus"; $rahres = pupe_query($query); $posrow = mysql_fetch_assoc($rahres); for ($ie = 0; $ie < $posrow["ennakko_kpl"]; $ie++) { //tehdään ennakklasku ennakkolaskuta($tunnus); } $tee = ""; } if ($tee == "loppulaskuta") { loppulaskuta($tunnus); $tee = ""; } if ($tee == "vapauta_tilaus_keraykseen") { $vapauta_tilaus_keraykseen = true; $query = "UPDATE lasku SET\n alatila = ''\n WHERE yhtio = '{$kukarow['yhtio']}'\n AND tunnus = '{$tunnus}'\n AND tila = 'N'\n AND alatila = 'B'"; $upd_res = pupe_query($query); $kukarow['kesken'] = $tunnus; $query = "SELECT *\n FROM lasku\n WHERE yhtio = '{$kukarow['yhtio']}'\n AND tunnus = '{$tunnus}'"; $laskures = pupe_query($query); $laskurow = mysql_fetch_assoc($laskures);
$tee = "TARKISTA"; $laskutakaikki = "KYLLA"; $silent = "VIENTI"; require "verkkolasku.php"; // Käydään kaikki ruksatut maksusopimukset läpi if (isset($positiotunnus) and count($positiotunnus) > 0) { require "../maksusopimus_laskutukseen.php"; foreach ($positiotunnus as $postun) { $query = "SELECT count(*)-1 as ennakko_kpl\n FROM maksupositio\n JOIN maksuehto on maksupositio.yhtio = maksupositio.yhtio and maksupositio.maksuehto = maksuehto.tunnus\n WHERE maksupositio.yhtio = '{$kukarow['yhtio']}'\n and maksupositio.otunnus = '{$postun}'\n and maksupositio.uusiotunnus = 0\n ORDER BY maksupositio.tunnus"; $rahres = pupe_query($query); $posrow = mysql_fetch_array($rahres); for ($ie = 0; $ie < $posrow["ennakko_kpl"]; $ie++) { $laskutettavat = 0; echo "<br>"; // Tehdään ennakkolasku $laskutettavat = ennakkolaskuta($postun); if ($laskutettavat > 0) { $tee = "TARKISTA"; $laskutakaikki = "KYLLA"; $silent = "VIENTI"; require "verkkolasku.php"; } } // Katsotaan ennakkolaskujen tiloja ja tutkitaan voidaanko tehdä loppulaskutus $query = "SELECT\n sum(if(maksupositio.uusiotunnus > 0 and uusiolasku.tila='L' and uusiolasku.alatila='X', 1, 0)) laskutettu_kpl,\n count(*) yhteensa_kpl,\n sum(if(maksupositio.uusiotunnus = 0 or (maksupositio.uusiotunnus > 0 and uusiolasku.alatila!='X'), 1, 0)) laskuttamatta\n FROM lasku\n JOIN maksupositio ON maksupositio.yhtio = lasku.yhtio and maksupositio.otunnus = lasku.tunnus\n JOIN maksuehto ON maksuehto.yhtio = lasku.yhtio and maksuehto.tunnus = lasku.maksuehto and maksuehto.jaksotettu != ''\n LEFT JOIN lasku uusiolasku ON maksupositio.yhtio = uusiolasku.yhtio and maksupositio.uusiotunnus=uusiolasku.tunnus\n WHERE lasku.yhtio = '{$kukarow['yhtio']}'\n and lasku.jaksotettu = '{$postun}'"; $postarkresult = pupe_query($query); $postarkrow = mysql_fetch_array($postarkresult); if ($postarkrow["yhteensa_kpl"] - $postarkrow["laskutettu_kpl"] == 1) { $laskutettavat = 0; echo "<br>"; // Ja loppulaskutus samaan syssyyn