コード例 #1
0
ファイル: alv_laskelma.php プロジェクト: Hermut/pupesoft
function alvlaskelma($kk, $vv)
{
    global $yhtiorow, $kukarow, $startmonth, $endmonth;
    function laskeveroja($taso, $tulos)
    {
        global $kukarow, $startmonth, $endmonth;
        if ($tulos == '22' or $tulos == 'veronmaara' or $tulos == 'summa') {
            if ($taso == 'fi307') {
                $vainsuomi = "JOIN lasku ON lasku.yhtio=tiliointi.yhtio and lasku.tunnus=tiliointi.ltunnus and lasku.maa in ('FI', '')";
            } else {
                $vainsuomi = '';
            }
            if ($taso == 'fi309' or $taso == 'fi310') {
                $_309lisa = " or alv_taso like '%fi300%' ";
                $vainveroton = " and tiliointi.vero = 0 ";
            } else {
                $_309lisa = "";
                $vainveroton = '';
            }
            $query = "SELECT ifnull(group_concat(if(alv_taso like '%fi300%', concat(\"'\",tilino,\"'\"), NULL)), '') tilit300,\n                ifnull(group_concat(if(alv_taso not like '%fi300%', concat(\"'\",tilino,\"'\"), NULL)), '') tilitMUU\n                FROM tili\n                WHERE yhtio = '{$kukarow['yhtio']}'\n                and (alv_taso like '%{$taso}%' {$_309lisa})";
            $tilires = pupe_query($query);
            $tilirow = mysql_fetch_array($tilires);
            $vero = 0.0;
            if ($tilirow['tilit300'] != '' or $tilirow['tilitMUU'] != '') {
                $tiliointilisa = '';
                if ($ryhma == 'fi307') {
                    $tiliointilisa = " and tiliointi.vero > 0 ";
                }
                $query = "SELECT sum(round(tiliointi.summa * if('{$tulos}'='22', 22, vero) / 100, 2)) veronmaara,\n                  sum(tiliointi.summa) summa,\n                   count(*) kpl\n                  FROM tiliointi\n                  {$vainsuomi}\n                  WHERE tiliointi.yhtio = '{$kukarow['yhtio']}'\n                  {$tiliointilisa}\n                  AND korjattu          = ''\n                  AND (";
                if ($tilirow["tilit300"] != "") {
                    $query .= "  (tilino in ({$tilirow['tilit300']}) {$vainveroton})";
                }
                if ($tilirow["tilit300"] != "" and $tilirow["tilitMUU"] != "") {
                    $query .= " or ";
                }
                if ($tilirow["tilitMUU"] != "") {
                    $query .= "   tilino in ({$tilirow['tilitMUU']})";
                }
                $query .= "  )\n              AND tiliointi.tapvm >= '{$startmonth}'\n              AND tiliointi.tapvm <= '{$endmonth}'";
                $verores = pupe_query($query);
                while ($verorow = mysql_fetch_array($verores)) {
                    if ($tulos == '22') {
                        $tulos = 'veronmaara';
                    }
                    $vero += $verorow[$tulos];
                }
            }
        } else {
            $vero = 0;
        }
        return sprintf('%.2f', $vero);
    }
    echo "<font class='head'>" . t("ALV-laskelma") . "</font><hr>";
    if (isset($kk)) {
        $startmonth = date("Y-m-d", mktime(0, 0, 0, $kk, 1, $vv));
        $endmonth = date("Y-m-d", mktime(0, 0, 0, $kk + 1, 0, $vv));
        // 201-203 sääntö fi200
        $query = "SELECT group_concat(concat(\"'\",tilino,\"'\")) tilit\n              FROM tili\n              WHERE yhtio = '{$kukarow['yhtio']}' and alv_taso like '%fi300%'";
        $tilires = pupe_query($query);
        $fi201 = 0.0;
        $fi202 = 0.0;
        $fi203 = 0.0;
        $tilirow = mysql_fetch_array($tilires);
        if ($tilirow['tilit'] != '') {
            $query = "SELECT vero, sum(round(summa * vero / 100 * -1, 2)) veronmaara, count(*) kpl\n                FROM tiliointi\n                WHERE yhtio  = '{$kukarow['yhtio']}'\n                AND korjattu = ''\n                AND tilino   in ({$tilirow['tilit']})\n                AND tapvm    >= '{$startmonth}'\n                AND tapvm    <= '{$endmonth}'\n                AND vero     > 0\n                GROUP BY vero";
            $verores = pupe_query($query);
            while ($verorow = mysql_fetch_array($verores)) {
                //        echo "$verorow[vero] $verorow[kpl] / ";
                switch ($verorow['vero']) {
                    case 22:
                        $fi201 += $verorow['veronmaara'];
                        break;
                    case 17:
                        $fi202 += $verorow['veronmaara'];
                        break;
                    case 8:
                        $fi203 += $verorow['veronmaara'];
                        break;
                }
            }
        }
        /******************************************
         * fi2xx vanharaportti  fi3xx uusiraportti
         *******************************************
         * fi201 = fi301
         * fi202 = fi302
         * fi203 = fi303
         * fi205 = fi305 ja fi306
         * fi206 = fi307
         * fi207 = poistettu uudesta raportista
         * fi209 = fi309 ja fi310
         * fi210 = fi311 ja fi312
         * fi211 = fi313 ja fi314
         ******************************************/
        // 205 sääntö fi205
        $fi205 = laskeveroja('fi305', '22') + laskeveroja('fi306', '22');
        // 206 sääntö fi206
        $fi206 = laskeveroja('fi307', 'veronmaara') + $fi205;
        // 207 sääntö fi207
        $fi207 = laskeveroja('fi207', 'summa');
        // 208 laskennallinen
        $fi208 = $fi201 + $fi202 + $fi203 + $fi205 - $fi206 - $fi207;
        // 209 sääntö fi209
        $fi209 = laskeveroja('fi309', 'summa') * -1;
        // 210 sääntö fi210
        $fi210 = (laskeveroja('fi311', 'summa') + laskeveroja('fi312', 'summa')) * -1;
        // 211 sääntö fi205
        $fi211 = laskeveroja('fi305', 'summa') + laskeveroja('fi306', 'summa');
        if (strtoupper($yhtiorow["maa"]) == 'FI') {
            $uytunnus = tulosta_ytunnus($yhtiorow["ytunnus"]);
        } else {
            $uytunnus = $yhtiorow["ytunnus"];
        }
        echo "<br><table>";
        echo "<tr><th>Ilmoittava yritys</th><th>{$uytunnus}</th></tr>";
        echo "<tr><th>Ilmoitettava kausi</th><th>" . substr($startmonth, 0, 4) . "/" . substr($startmonth, 5, 2) . "</th></tr>";
        echo "<tr><th colspan='2'>Vero kotimaan myynnistä verokannoittain</th></tr>";
        echo "<tr><td><a href = '?tee=VSRALVKK_VANHA_erittele&ryhma=fi301&vv={$vv}&kk={$kk}'>201</a> 22% :n vero</td><td align='right'>" . sprintf('%.2f', $fi201) . "</td></tr>";
        echo "<tr><td><a href = '?tee=VSRALVKK_VANHA_erittele&ryhma=fi302&vv={$vv}&kk={$kk}'>202</a> 17% :n vero</td><td align='right'>" . sprintf('%.2f', $fi202) . "</td></tr>";
        echo "<tr><td><a href = '?tee=VSRALVKK_VANHA_erittele&ryhma=fi303&vv={$vv}&kk={$kk}'>203</a> 8% :n vero</td><td align='right'>" . sprintf('%.2f', $fi203) . "</td></tr>";
        echo "<tr><th colspan='2'></th></tr>";
        echo "<tr><td><a href = '?tee=VSRALVKK_VANHA_erittele&ryhma=fi305&vv={$vv}&kk={$kk}'>205</a> Vero tavaraostoista muista EU-maista</td><td align='right'>" . sprintf('%.2f', $fi205) . "</td></tr>";
        echo "<tr><th colspan='2'></th></tr>";
        echo "<tr><td><a href = '?tee=VSRALVKK_VANHA_erittele&ryhma=fi307&vv={$vv}&kk={$kk}'>206</a> Kohdekuukauden vähennettävä vero</td><td align='right'>" . sprintf('%.2f', $fi206) . "</td></tr>";
        echo "<tr><th colspan='2'></th></tr>";
        echo "<tr><td><a href = '?tee=VSRALVKK_VANHA_erittele&ryhma=fi207&vv={$vv}&kk={$kk}'>207</a> Edellisen kuukauden negatiivinen vero</td><td align='right'>" . sprintf('%.2f', $fi207) . "</td></tr>";
        echo "<tr><th colspan='2'></th></tr>";
        echo "<tr><td>208 Maksettava vero(+)/Seuraavalle kuukaudelle siirrettävä negatiivinen vero (-)</td><td align='right'>" . sprintf('%.2f', $fi208) . "</td></tr>";
        echo "<tr><th colspan='2'></th></tr>";
        echo "<tr><td><a href = '?tee=VSRALVKK_VANHA_erittele&ryhma=fi309&vv={$vv}&kk={$kk}'>209</a> Veroton liikevaihto</td><td align='right'>" . sprintf('%.2f', $fi209) . "</td></tr>";
        echo "<tr><th colspan='2'></th></tr>";
        echo "<tr><td><a href = '?tee=VSRALVKK_VANHA_erittele&ryhma=fi311&vv={$vv}&kk={$kk}'>210</a> Tavaran myynti muihin EU-maihin </td><td align='right'>" . sprintf('%.2f', $fi210) . "</td></tr>";
        echo "<tr><th colspan='2'></th></tr>";
        echo "<tr><td><a href = '?tee=VSRALVKK_VANHA_erittele&ryhma=fi305&vv={$vv}&kk={$kk}'>211</a> Tavaraostot muista EU-maista</td><td align='right'>" . sprintf('%.2f', $fi211) . "</td></tr>";
        echo "</table><br>";
        $query = "SELECT sum(tiliointi.summa) vero\n              FROM tiliointi\n              WHERE tiliointi.yhtio  = '{$kukarow['yhtio']}'\n              AND tiliointi.korjattu = ''\n              AND tiliointi.tilino   = '{$yhtiorow['alv']}'\n              AND tiliointi.tapvm    >= '{$startmonth}'\n              AND tiliointi.tapvm    <= '{$endmonth}'";
        $verores = pupe_query($query);
        $verorow = mysql_fetch_array($verores);
        echo "<table>";
        echo "<tr><td>Tili {$yhtiorow['alv']} yhteensä</td><td align='right'>" . sprintf('%.2f', $verorow['vero']) . "</td></tr>";
        echo "<tr><td>Maksettava alv</td><td align='right'>" . sprintf('%.2f', $fi208) . "</td></tr>";
        echo "<tr><td>Erotus</td><td align='right'>" . sprintf('%.2f', $verorow['vero'] - $fi208) . "</td></tr>";
        echo "</table><br>";
        if (strpos($_SERVER['SCRIPT_NAME'], "viranomaisilmoitukset.php") !== FALSE) {
            $ilmoituskausi = substr($startmonth, 0, 4) . substr($startmonth, 5, 2);
            $file = "000:VSRALVKK\n";
            $file .= "100:" . date("dmY") . "\n";
            $file .= "105:E03\n";
            $file .= "010:{$uytunnus}\n";
            $file .= "052:{$ilmoituskausi}\n";
            $file .= "098:1\n";
            $file .= "201:" . round($fi201 * 100, 0) . "\n";
            $file .= "202:" . round($fi202 * 100, 0) . "\n";
            $file .= "203:" . round($fi203 * 100, 0) . "\n";
            $file .= "205:" . round($fi205 * 100, 0) . "\n";
            $file .= "206:" . round($fi206 * 100, 0) . "\n";
            $file .= "207:" . round($fi207 * 100, 0) . "\n";
            $file .= "208:" . round($fi208 * 100, 0) . "\n";
            $file .= "209:" . round($fi209 * 100, 0) . "\n";
            $file .= "210:" . round($fi210 * 100, 0) . "\n";
            $file .= "211:" . round($fi211 * 100, 0) . "\n";
            $file .= "999:1\n";
            $filenimi = "VSRALVKK-{$kukarow['yhtio']}-" . date("dmy-His") . ".txt";
            file_put_contents("dataout/" . $filenimi, $file);
            echo "  <form method='post' class='multisubmit'>\n            <input type='hidden' name='tee' value='lataa_tiedosto'>\n            <input type='hidden' name='lataa_tiedosto' value='1'>\n            <input type='hidden' name='kaunisnimi' value='" . t("arvonlisaveroilmoitus") . "-{$ilmoituskausi}.txt'>\n            <input type='hidden' name='filenimi' value='{$filenimi}'>\n            <input type='submit' name='tallenna' value='" . t("Tallenna tiedosto") . "'>\n          </form><br><br>";
        }
    }
    // tehdään käyttöliittymä, näytetään aina
    echo "<form method='post'><input type='hidden' name='tee' value ='VSRALVKK_VANHA'>";
    echo "<table>";
    if (!isset($vv)) {
        $vv = date("Y");
    }
    if (!isset($kk)) {
        $kk = date("n");
    }
    echo "<tr>";
    echo "<th>" . t("Valitse kausi") . "</th>";
    echo "<td>";
    $sel = array();
    $sel[$vv] = "SELECTED";
    $vv_select = date("Y") > 2009 ? 2009 : date("Y");
    echo "<select name='vv'>";
    for ($i = $vv_select; $i >= $vv_select - 4; $i--) {
        echo "<option value='{$i}' {$sel[$i]}>{$i}</option>";
    }
    echo "</select>";
    $sel = array();
    $sel[$kk] = "SELECTED";
    echo "<select name='kk'>\n      <option {$sel['1']} value = '1'>01</option>\n      <option {$sel['2']} value = '2'>02</option>\n      <option {$sel['3']} value = '3'>03</option>\n      <option {$sel['4']} value = '4'>04</option>\n      <option {$sel['5']} value = '5'>05</option>\n      <option {$sel['6']} value = '6'>06</option>\n      <option {$sel['7']} value = '7'>07</option>\n      <option {$sel['8']} value = '8'>08</option>\n      <option {$sel['9']} value = '9'>09</option>\n      <option {$sel['10']} value = '10'>10</option>\n      <option {$sel['11']} value = '11'>11</option>\n      <option {$sel['12']} value = '12'>12</option>\n      </select>";
    echo "</td>";
    echo "<td class='back' style='text-align:bottom;'><input type = 'submit' value = '" . t("Näytä") . "'></td>";
    echo "</tr>";
    echo "</table>";
    echo "</form><br>";
}
コード例 #2
0
 }
 echo "<tr><td class='back' colspan='5'></td></tr>";
 echo "<tr class='aktiivi'>";
 echo "<th colspan='2'>50 " . t("Päivärahat ja ateriakorvaukset") . "</th>";
 echo "<td align='right'>" . number_format($kappaleet[50], 2, ',', ' ') . "</td>";
 echo "<td colspan='2' align='right'>" . number_format($summat[50], 2, ',', ' ') . "</td>";
 echo "</tr>";
 echo "<tr class='aktiivi'>";
 echo "<th colspan='2'>56 " . t("Verovapaa kilometrikorvaus") . "</th>";
 echo "<td align='right'>" . number_format($kappaleet[56], 2, ',', ' ') . "</td>";
 echo "<td colspan='2' align='right'>" . number_format($summat[56], 2, ',', ' ') . "</td>";
 echo "</tr>";
 echo "</table>";
 $file = "";
 $lask = 1;
 $ytunnus = tulosta_ytunnus($yhtiorow['ytunnus']);
 foreach ($vspserie as $htunnus => $matkustaja) {
     $matkustaja['paivarahat'] = number_format(round($matkustaja['paivarahat'], 2), 2, "", "");
     $matkustaja['kilsat_raha'] = number_format(round($matkustaja['kilsat_raha'], 2), 2, "", "");
     $matkustaja['kilsat'] = round($matkustaja['kilsat']);
     $file .= "000:VSPSERIE\n";
     $file .= "101:0\n";
     $file .= "110:P\n";
     $file .= "109:{$vv}\n";
     $file .= "102:{$ytunnus}\n";
     $file .= "111:{$htunnus}\n";
     $file .= "114:0\n";
     $file .= "115:0\n";
     $file .= "150:{$matkustaja['paivarahat']}\n";
     $file .= "151:{$matkustaja['kotimaanpaivat']}\n";
     $file .= "152:{$matkustaja['kotimaanpuolipaivat']}\n";
コード例 #3
0
ファイル: alv_laskelma_uusi.php プロジェクト: Hermut/pupesoft
function alvlaskelma($kk, $vv)
{
    global $yhtiorow, $kukarow, $startmonth, $endmonth, $etsivirheita, $oletus_verokanta, $maksettava_alv_tili, $palvelin2, $erotus_tili, $alv_laskelman_sallittu_erotus;
    echo "<font class='head'>" . t("ALV-laskelma") . "</font><hr>";
    if (isset($kk) and $kk != '') {
        if (isset($etsivirheita) and (int) $etsivirheita > 0) {
            echo "<br><a href='{$palvelin2}raportit/alv_laskelma_uusi.php?kk={$kk}&vv={$vv}&etsivirheita=" . ($etsivirheita - 1) . "'>" . t("Edellinen päivä") . "</a> ";
            echo t("ALV-laskelma") . " " . t("päivältä") . " {$etsivirheita}.{$kk}.{$vv} ";
            echo "<a href='{$palvelin2}raportit/alv_laskelma_uusi.php?kk={$kk}&vv={$vv}&etsivirheita=" . ($etsivirheita + 1) . "'>" . t("Seuraava päivä") . "</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
            echo "<a href='{$palvelin2}raportit/tilioinnit_lajeittain.php?tee=raportti&laji=myynti&pp={$etsivirheita}&kk={$kk}&vv={$vv}&lpp={$etsivirheita}&lkk={$kk}&lvv={$vv}&lopetus={$palvelin2}raportit/alv_laskelma_uusi.php////tee=VSRALVKK_UUSI//vv={$vv}//kk={$kk}//etsivirheita={$etsivirheita}'>" . t("Näytä tiliöinnit lajeittain") . "</a><br><br>";
            $startmonth = date("Y-m-d", mktime(0, 0, 0, $kk, $etsivirheita, $vv));
            $endmonth = date("Y-m-d", mktime(0, 0, 0, $kk, $etsivirheita, $vv));
        } else {
            $startmonth = date("Y-m-d", mktime(0, 0, 0, $kk, 1, $vv));
            $endmonth = date("Y-m-d", mktime(0, 0, 0, $kk + 1, 0, $vv));
        }
        // 301-303 sääntö fi300
        $query = "SELECT group_concat(concat(\"'\",tilino,\"'\")) tilit\n              FROM tili\n              WHERE yhtio = '{$kukarow['yhtio']}' and alv_taso like '%fi300%'";
        $tilires = pupe_query($query);
        $fi3xx = array();
        $fi301 = 0.0;
        $fi302 = 0.0;
        $fi303 = 0.0;
        $tilirow = mysql_fetch_assoc($tilires);
        if ($tilirow['tilit'] != '') {
            $query = "SELECT vero, sum(round(tiliointi.summa * vero / 100 * -1, 2)) veronmaara, count(*) kpl\n                FROM tiliointi\n                JOIN lasku on (lasku.yhtio=tiliointi.yhtio and lasku.tunnus=tiliointi.ltunnus and lasku.tilaustyyppi != '9')\n                WHERE tiliointi.yhtio  = '{$kukarow['yhtio']}'\n                AND tiliointi.korjattu = ''\n                AND tiliointi.tilino   in ({$tilirow['tilit']})\n                AND tiliointi.tapvm    >= '{$startmonth}'\n                AND tiliointi.tapvm    <= '{$endmonth}'\n                AND tiliointi.vero     > 0\n                GROUP BY vero\n                ORDER BY vero DESC";
            $verores = pupe_query($query);
            while ($verorow = mysql_fetch_assoc($verores)) {
                switch ($verorow['vero']) {
                    case 24:
                    case 23:
                    case 22:
                        $fi301 += $verorow['veronmaara'];
                        break;
                    case 14:
                    case 13:
                    case 12:
                        $fi302 += $verorow['veronmaara'];
                        break;
                    case 8:
                    case 9:
                    case 10:
                        $fi303 += $verorow['veronmaara'];
                        break;
                    default:
                        $fi3xx[$verorow['vero']] += $verorow['veronmaara'];
                        break;
                }
            }
        }
        // 305 "Vero tavaraostoista muista EU maista"
        $fi305 = laskeveroja('fi305', $oletus_verokanta);
        // 306 "Vero palveluostoista muista EU maista"
        $fi306 = laskeveroja('fi306', $oletus_verokanta);
        // 318 "Vero rakentamispalveluiden ostoista"
        $fi318 = laskeveroja('fi318', $oletus_verokanta);
        // 307 sääntö fi307
        $fi307 = laskeveroja('fi307', 'veronmaara') + $fi305 + $fi306 + $fi318;
        // 308 laskennallinen
        $fi308 = $fi301 + $fi302 + $fi303 + $fi305 + $fi306 + $fi318 - $fi307;
        // 309 sääntö fi309
        $fi309 = laskeveroja('fi309', 'summa') * -1;
        // 311 sääntö fi311
        $fi311 = laskeveroja('fi311', 'summa');
        // 312 sääntö fi312
        $fi312 = laskeveroja('fi312', 'summa');
        // 313 sääntö fi313
        $fi313 = laskeveroja('fi313', 'summa');
        // 314 sääntö fi314
        $fi314 = laskeveroja('fi314', 'summa');
        // 319 "Rakentamispalvelun myynnit"
        $fi319 = laskeveroja('fi319', 'summa') * -1;
        // 320 "Rakentamispalvelun ostot"
        $fi320 = laskeveroja('fi320', 'summa');
        if (strtoupper($yhtiorow["maa"]) == 'FI') {
            $uytunnus = tulosta_ytunnus($yhtiorow["ytunnus"]);
        } else {
            $uytunnus = $yhtiorow["ytunnus"];
        }
        echo "<br><table>";
        echo "<tr><th>", t("Ilmoittava yritys"), "</th><th>{$uytunnus}</th></tr>";
        echo "<tr><th>", t("Ilmoitettava kausi"), "</th><th>" . substr($startmonth, 0, 4) . "/" . substr($startmonth, 5, 2) . "</th></tr>";
        echo "<tr><th colspan='2'>", t("Vero kotimaan myynnistä verokannoittain"), "</th></tr>";
        if ($oletus_verokanta == 22) {
            echo "<tr class='aktiivi'><td><a href = '?tee=VSRALVKK_UUSI_erittele&ryhma=fi301&vv={$vv}&kk={$kk}&etsivirheita={$etsivirheita}'>301</a> ", t("22% :n vero"), "</td><td align='right'>" . sprintf('%.2f', $fi301) . "</td></tr>";
            echo "<tr class='aktiivi'><td><a href = '?tee=VSRALVKK_UUSI_erittele&ryhma=fi302&vv={$vv}&kk={$kk}&etsivirheita={$etsivirheita}'>302</a> ", t("12% :n vero"), "</td><td align='right'>" . sprintf('%.2f', $fi302) . "</td></tr>";
            echo "<tr class='aktiivi'><td><a href = '?tee=VSRALVKK_UUSI_erittele&ryhma=fi303&vv={$vv}&kk={$kk}&etsivirheita={$etsivirheita}'>303</a> ", t("8% :n vero"), "</td><td align='right'>" . sprintf('%.2f', $fi303) . "</td></tr>";
        } elseif ($oletus_verokanta == 23) {
            echo "<tr class='aktiivi'><td><a href = '?tee=VSRALVKK_UUSI_erittele&ryhma=fi301&vv={$vv}&kk={$kk}&etsivirheita={$etsivirheita}'>301</a> ", t("23% :n vero"), "</td><td align='right'>" . sprintf('%.2f', $fi301) . "</td></tr>";
            echo "<tr class='aktiivi'><td><a href = '?tee=VSRALVKK_UUSI_erittele&ryhma=fi302&vv={$vv}&kk={$kk}&etsivirheita={$etsivirheita}'>302</a> ", t("13% :n vero"), "</td><td align='right'>" . sprintf('%.2f', $fi302) . "</td></tr>";
            echo "<tr class='aktiivi'><td><a href = '?tee=VSRALVKK_UUSI_erittele&ryhma=fi303&vv={$vv}&kk={$kk}&etsivirheita={$etsivirheita}'>303</a> ", t("9% :n vero"), "</td><td align='right'>" . sprintf('%.2f', $fi303) . "</td></tr>";
        } else {
            echo "<tr class='aktiivi'><td><a href = '?tee=VSRALVKK_UUSI_erittele&ryhma=fi301&vv={$vv}&kk={$kk}&etsivirheita={$etsivirheita}'>301</a> ", t("24% :n vero"), "</td><td align='right'>" . sprintf('%.2f', $fi301) . "</td></tr>";
            echo "<tr class='aktiivi'><td><a href = '?tee=VSRALVKK_UUSI_erittele&ryhma=fi302&vv={$vv}&kk={$kk}&etsivirheita={$etsivirheita}'>302</a> ", t("14% :n vero"), "</td><td align='right'>" . sprintf('%.2f', $fi302) . "</td></tr>";
            echo "<tr class='aktiivi'><td><a href = '?tee=VSRALVKK_UUSI_erittele&ryhma=fi303&vv={$vv}&kk={$kk}&etsivirheita={$etsivirheita}'>303</a> ", t("10% :n vero"), "</td><td align='right'>" . sprintf('%.2f', $fi303) . "</td></tr>";
        }
        foreach ($fi3xx as $fikey => $fival) {
            echo "<tr><td>xxx " . $fikey * 1 . t("% :n vero"), "</td><td align='right'>" . sprintf('%.2f', $fival) . "</td></tr>";
        }
        echo "<tr><th colspan='2'></th></tr>";
        echo "<tr class='aktiivi'><td><a href = '?tee=VSRALVKK_UUSI_erittele&ryhma=fi305&vv={$vv}&kk={$kk}&etsivirheita={$etsivirheita}'>305</a> ", t("Vero tavaraostoista muista EU-maista"), "</td><td align='right'>" . sprintf('%.2f', $fi305) . "</td></tr>";
        echo "<tr class='aktiivi'><td><a href = '?tee=VSRALVKK_UUSI_erittele&ryhma=fi306&vv={$vv}&kk={$kk}&etsivirheita={$etsivirheita}'>306</a> ", t("Vero palveluostoista muista EU-maista"), "</td><td align='right'>" . sprintf('%.2f', $fi306) . "</td></tr>";
        echo "<tr class='aktiivi'><td><a href = '?tee=VSRALVKK_UUSI_erittele&ryhma=fi318&vv={$vv}&kk={$kk}&etsivirheita={$etsivirheita}'>318</a> ", t("Vero rakentamispalveluiden ostoista"), "</td><td align='right'>" . sprintf('%.2f', $fi318) . "</td></tr>";
        echo "<tr><th colspan='2'></th></tr>";
        echo "<tr class='aktiivi'><td><a href = '?tee=VSRALVKK_UUSI_erittele&ryhma=fi307&vv={$vv}&kk={$kk}&etsivirheita={$etsivirheita}'>307</a> ", t("Kohdekuukauden vähennettävä vero"), "</td><td align='right'>" . sprintf('%.2f', $fi307) . "</td></tr>";
        echo "<tr><th colspan='2'></th></tr>";
        echo "<tr class='aktiivi'><td>308 ", t("Maksettava vero"), " / ", t("Palautukseen oikeuttava vero"), " (-)</td><td align='right'>" . sprintf('%.2f', $fi308) . "</td></tr>";
        echo "<tr><th colspan='2'></th></tr>";
        echo "<tr class='aktiivi'><td><a href = '?tee=VSRALVKK_UUSI_erittele&ryhma=fi309&vv={$vv}&kk={$kk}&etsivirheita={$etsivirheita}'>309</a> ", t("0-verokannan alainen liikevaihto"), "</td><td align='right'>" . sprintf('%.2f', $fi309) . "</td></tr>";
        echo "<tr><th colspan='2'></th></tr>";
        echo "<tr class='aktiivi'><td><a href = '?tee=VSRALVKK_UUSI_erittele&ryhma=fi311&vv={$vv}&kk={$kk}&etsivirheita={$etsivirheita}'>311</a> ", t("Tavaran myynti muihin EU-maihin"), "</td><td align='right'>" . sprintf('%.2f', $fi311) . "</td></tr>";
        echo "<tr class='aktiivi'><td><a href = '?tee=VSRALVKK_UUSI_erittele&ryhma=fi312&vv={$vv}&kk={$kk}&etsivirheita={$etsivirheita}'>312</a> ", t("Palveluiden myynti muihin EU-maihin"), "</td><td align='right'>" . sprintf('%.2f', $fi312) . "</td></tr>";
        echo "<tr><th colspan='2'></th></tr>";
        echo "<tr class='aktiivi'><td><a href = '?tee=VSRALVKK_UUSI_erittele&ryhma=fi313&vv={$vv}&kk={$kk}&etsivirheita={$etsivirheita}'>313</a> ", t("Tavaraostot muista EU-maista"), "</td><td align='right'>" . sprintf('%.2f', $fi313) . "</td></tr>";
        echo "<tr class='aktiivi'><td><a href = '?tee=VSRALVKK_UUSI_erittele&ryhma=fi314&vv={$vv}&kk={$kk}&etsivirheita={$etsivirheita}'>314</a> ", t("Palveluostot muista EU-maista"), "</td><td align='right'>" . sprintf('%.2f', $fi314) . "</td></tr>";
        echo "<tr><th colspan='2'></th></tr>";
        echo "<tr class='aktiivi'><td><a href = '?tee=VSRALVKK_UUSI_erittele&ryhma=fi319&vv={$vv}&kk={$kk}&etsivirheita={$etsivirheita}'>319</a> ", t("Rakentamispalvelun myynti"), "</td><td align='right'>" . sprintf('%.2f', $fi319) . "</td></tr>";
        echo "<tr class='aktiivi'><td><a href = '?tee=VSRALVKK_UUSI_erittele&ryhma=fi320&vv={$vv}&kk={$kk}&etsivirheita={$etsivirheita}'>320</a> ", t("Rakentamispalvelun ostot"), "</td><td align='right'>" . sprintf('%.2f', $fi320) . "</td></tr>";
        echo "</table><br>";
        //HUOM: AND tiliointi.selite not like 'Avaavat saldot%'. Pitäisi mieluummin ratkaista niin, että "Avaavat saldot"-tositteen alatila ois esim "A"
        $query = "SELECT sum(tiliointi.summa) vero\n              FROM tiliointi\n              WHERE tiliointi.yhtio  = '{$kukarow['yhtio']}'\n              AND tiliointi.korjattu = ''\n              AND tiliointi.selite   not like 'Avaavat saldot%'\n              AND tiliointi.tilino   = '{$yhtiorow['alv']}'\n              AND tiliointi.tapvm    >= '{$startmonth}'\n              AND tiliointi.tapvm    <= '{$endmonth}'";
        $verores = pupe_query($query);
        $verorow = mysql_fetch_assoc($verores);
        // ei näytetä yhteensä-laatikkoa turhaan
        if ($verorow["vero"] != 0 or ($verorow['vero'] - $fi308) * -1 != $fi308 or $fi308 == 0) {
            echo "<table>";
            echo "<tr class='aktiivi'><th>", t("Tili"), " {$yhtiorow['alv']} ", t("yhteensä"), "</th><td align='right'>" . sprintf('%.2f', $verorow['vero'] * -1) . "</td></tr>";
            echo "<tr class='aktiivi'><th>", t("Maksettava alv"), "</th><td align='right'>" . sprintf('%.2f', $fi308) . "</td></tr>";
            echo "<tr class='aktiivi'><th>", t("Erotus"), "</th><td align='right'>" . sprintf('%.2f', -1 * $verorow['vero'] - $fi308) . "</td></tr>";
            echo "</table><br>";
        }
        if (tarkista_oikeus("muutosite.php") and (!isset($etsivirheita) or $etsivirheita == 0)) {
            $query = "SELECT lasku.tunnus\n                FROM lasku\n                JOIN tiliointi ON (tiliointi.yhtio = lasku.yhtio AND tiliointi.ltunnus = lasku.tunnus)\n                WHERE lasku.yhtio = '{$kukarow['yhtio']}'\n                AND lasku.tapvm   = '{$endmonth}'\n                AND lasku.tila    = 'X'\n                AND lasku.nimi    = 'ALVTOSITEMAKSUUN{$endmonth}'";
            $tositelinkki_result = pupe_query($query);
            if (mysql_num_rows($tositelinkki_result) > 0) {
                $tositelinkki_row = mysql_fetch_assoc($tositelinkki_result);
                echo "<a href='../muutosite.php?tee=E&tunnus={$tositelinkki_row['tunnus']}&lopetus={$palvelin2}raportit/alv_laskelma_uusi.php////kk={$kk}//vv={$vv}'>", t("Katso tositetta"), "</a><br /><br />";
            } elseif (abs($verorow['vero']) != 0 and abs(round(-1 * $verorow['vero'] - $fi308, 2)) <= $alv_laskelman_sallittu_erotus and (int) date("Ym") > (int) $vv . $kk) {
                echo "<form method='post' name='alv_ilmoituksen_kuittaus'>";
                echo "<table>";
                echo "<input type='hidden' name='alkukk' value='{$startmonth}' />";
                echo "<input type='hidden' name='loppukk' value='{$endmonth}' />";
                echo "<input type='hidden' name='vv' value='{$vv}' />";
                echo "<input type='hidden' name='kk' value='{$kk}' />";
                echo "<input type='hidden' name='tee' value='kuittaa_alv_ilmoitus' />";
                echo "<input type='hidden' name='alvmaks_yht' value='" . round($fi308, 2) . "' />";
                echo "<input type='hidden' name='alvtili_yht' value='" . round($verorow['vero'] * -1, 2) . "' />";
                echo "<tr><th>", t("Anna maksettava ALV-tili"), "</th><td>";
                echo livesearch_kentta("alv_ilmoituksen_kuittaus", "TILIHAKU", "maksettava_alv_tili", 200, $maksettava_alv_tili, 'EISUBMIT');
                echo "</td></tr>";
                if (!isset($erotus_tili) or $erotus_tili == "") {
                    $erotus_tili = $yhtiorow["pyoristys"];
                }
                echo "<tr><th>", t("Anna erotuksen tili"), "</th><td>";
                echo livesearch_kentta("erotuksen_kuittaus", "TILIHAKU", "erotus_tili", 200, $erotus_tili, 'EISUBMIT');
                echo "</td><td class='back'><input type='submit' value='", t("Kuittaa ALV-ilmoitus"), "' /></td></tr>";
                echo "</table></form><br />";
            } elseif (abs($verorow['vero']) != 0 and abs(round(-1 * $verorow['vero'] - $fi308, 2)) != 0 and (int) date("Ym") > (int) $vv . $kk) {
                echo "<font class='error'>", t("Tilin"), " {$yhtiorow['alv']} ", t("ja maksettavan arvonlisäveron luvut eivät täsmää"), "!</font><br /><br />";
            }
        }
        if (strpos($_SERVER['SCRIPT_NAME'], "viranomaisilmoitukset.php") !== FALSE) {
            $ilmoituskausi = str_replace("0", "", substr($startmonth, 5, 2));
            $ilmoitusvuosi = substr($startmonth, 0, 4);
            $file = "000:VSRALVKK\n";
            $file .= "100:\n";
            $file .= "051:\n";
            $file .= "105:\n";
            $file .= "107:\n";
            $file .= "010:{$uytunnus}\n";
            $file .= "050:K\n";
            $file .= "052:{$ilmoituskausi}\n";
            $file .= "053:{$ilmoitusvuosi}\n";
            $file .= "301:" . round($fi301 * 100, 0) . "\n";
            $file .= "302:" . round($fi302 * 100, 0) . "\n";
            $file .= "303:" . round($fi303 * 100, 0) . "\n";
            $file .= "305:" . round($fi305 * 100, 0) . "\n";
            $file .= "306:" . round($fi306 * 100, 0) . "\n";
            $file .= "318:" . round($fi318 * 100, 0) . "\n";
            $file .= "307:" . round($fi307 * 100, 0) . "\n";
            $file .= "308:" . round($fi308 * 100, 0) . "\n";
            $file .= "309:" . round($fi309 * 100, 0) . "\n";
            $file .= "311:" . round($fi311 * 100, 0) . "\n";
            $file .= "312:" . round($fi312 * 100, 0) . "\n";
            $file .= "313:" . round($fi313 * 100, 0) . "\n";
            $file .= "314:" . round($fi314 * 100, 0) . "\n";
            $file .= "319:" . round($fi319 * 100, 0) . "\n";
            $file .= "320:" . round($fi320 * 100, 0) . "\n";
            $file .= "999:1\n";
            $filenimi = "VSRALVKK-{$kukarow['yhtio']}-" . date("dmy-His") . ".txt";
            file_put_contents("dataout/" . $filenimi, $file);
            echo "  <form method='post' class='multisubmit'>\n            <input type='hidden' name='tee' value='lataa_tiedosto'>\n            <input type='hidden' name='lataa_tiedosto' value='1'>\n            <input type='hidden' name='kaunisnimi' value='" . t("arvonlisaveroilmoitus") . "-{$ilmoituskausi}.txt'>\n            <input type='hidden' name='filenimi' value='{$filenimi}'>\n            <input type='submit' name='tallenna' value='" . t("Tallenna tiedosto") . "'>\n          </form><br><br>";
        }
    }
    // tehdään käyttöliittymä, näytetään aina
    echo "<form method='post' action='{$palvelin2}raportit/alv_laskelma_uusi.php'><input type='hidden' name='tee' value ='VSRALVKK_UUSI'>";
    echo "<table>";
    if (!isset($vv)) {
        $vv = date("Y");
    }
    if (!isset($kk)) {
        $kk = date("m");
    }
    echo "<tr>";
    echo "<th>" . t("Valitse kausi") . "</th>";
    echo "<td>";
    $sel = array();
    $sel[$vv] = "SELECTED";
    $vv_select = date("Y") < 2010 ? 2010 : date("Y");
    echo "<select name='vv'>";
    for ($i = $vv_select; $i >= $vv_select - 4; $i--) {
        if ($i < 2010) {
            continue;
        }
        echo "<option value='{$i}' {$sel[$i]}>{$i}</option>";
    }
    echo "</select>";
    $sel = array(1 => '', 2 => '', 3 => '', 4 => '', 5 => '', 6 => '', 7 => '', 8 => '', 9 => '', 10 => '', 11 => '', 12 => '');
    $sel[$kk] = "SELECTED";
    echo "<select name='kk'>\n      <option {$sel['01']} value = '01'>01</option>\n      <option {$sel['02']} value = '02'>02</option>\n      <option {$sel['03']} value = '03'>03</option>\n      <option {$sel['04']} value = '04'>04</option>\n      <option {$sel['05']} value = '05'>05</option>\n      <option {$sel['06']} value = '06'>06</option>\n      <option {$sel['07']} value = '07'>07</option>\n      <option {$sel['08']} value = '08'>08</option>\n      <option {$sel['09']} value = '09'>09</option>\n      <option {$sel['10']} value = '10'>10</option>\n      <option {$sel['11']} value = '11'>11</option>\n      <option {$sel['12']} value = '12'>12</option>\n      </select>";
    echo "</td>";
    echo "<td class='back' style='text-align:bottom;'><input type = 'submit' value = '" . t("Näytä") . "'></td>";
    echo "</tr>";
    echo "<tr>";
    echo "<th>" . t("Aja laskelma per päivä") . "</th>";
    echo "<td><input type = 'checkbox' name='etsivirheita' value = '1'></td></tr>";
    echo "</table>";
    echo "</form><br>";
}
コード例 #4
0
         // Myynnin arvo EU-maihin
         $tietue_rivitiedot .= "104:{$koodi}\n";
         // Kauppatapakoodi. Tavaramyynnin koodi on tyhjä. Kolmikantakaupassa koodi on 3. Palvelumyynnin koodi on 4.
         $tietue_rivitiedot .= "009:{$tietue_rivi}\n";
         // Toistuvien osatietoryhmien välimerkki: juokseva numero.
     }
 }
 echo "<tr>";
 echo "<th colspan = '4'>" . t("Yhteensä") . "</th>";
 echo "<td class = 'tumma' align = 'right'>" . sprintf("%.2f", $summa_yhteensa) . "</th>";
 echo "<th></th>";
 echo "</tr>";
 echo "</table>";
 echo "<br>";
 // Tehdään tietue
 $uytunnus = tulosta_ytunnus($yhtiorow["ytunnus"]);
 $arvo = round($summa_yhteensa * 100);
 $tunniste = substr(md5(date("YmdHis")), 0, 9);
 $tietue = "000:VSRALVYV\n";
 // Tietovirran nimi
 $tietue .= "100:" . date("dmY") . "\n";
 // Saapumispäivä ppkkvvvv. Ilmoituksen arvopäivä eli päivä, jona tiedonkeruupalvelu vastaanotti tiedot.
 $tietue .= "051:" . date("H:i:s") . ":00\n";
 // Saapumispäivän kellonaika hh:mm:ss:dd. Ilmoituksen arvopäivän kellonaika, jona tiedonkeruupalvelu vastaanotti tiedot.
 $tietue .= "105:VW\n";
 // Vastaanottavan palvelun tunnus, joka sovitaan palvelukohtaisesti.
 // Positio 1: E=Itella, S=TeliaSonera, U=Aditro, N=Logica, K=Koivuniemi, V=Ilmoitin.fi
 // Positio 2: W=Webin kautta syötetty tietue, O=Ohjelmistointegraation tuottama
 $tietue .= "107:{$tunniste}\n";
 // Tunniste, jonka tiedonkeruupalvelu muodostaa yksilöimään ilmoituksen
 $tietue .= "010:{$uytunnus}\n";