diff --git a/inc/yhtion_parametritrivi.inc b/inc/yhtion_parametritrivi.inc index 85a973d39f..ce58c0f65f 100644 --- a/inc/yhtion_parametritrivi.inc +++ b/inc/yhtion_parametritrivi.inc @@ -588,6 +588,17 @@ if ($fieldname == "myyntilaskujen_kurssipaiva") { $jatko = 0; } +if ($fieldname == "laskutus_tulevaisuuteen") { + + $sel = $trow[$i] == "S" ? "selected" : ""; + + $ulos = ""; + + $jatko = 0; +} if ($fieldname == "tyomaaraystyyppi") { diff --git a/tilauskasittely/valitse_laskutettavat_tilaukset.php b/tilauskasittely/valitse_laskutettavat_tilaukset.php index 2498120dd4..7992e0079a 100644 --- a/tilauskasittely/valitse_laskutettavat_tilaukset.php +++ b/tilauskasittely/valitse_laskutettavat_tilaukset.php @@ -1063,7 +1063,7 @@ function verify(){ } // ALERT errorit ennen confirmiä, näin estetään ettei vahingossakaan päästä läpi. - if (ero < 0) { + if (ero < 0 && '{$yhtiorow['laskutus_tulevaisuuteen']}' != 'S') { var msg = msg+'".t("VIRHE: Laskua ei voi päivätä tulevaisuuteen!")." '; } diff --git a/tilauskasittely/verkkolasku.php b/tilauskasittely/verkkolasku.php index e13a20d917..326dd129a0 100644 --- a/tilauskasittely/verkkolasku.php +++ b/tilauskasittely/verkkolasku.php @@ -186,7 +186,7 @@ } else { - if ($syotetty > $tanaan) { + if ($syotetty > $tanaan and $yhtiorow['laskutus_tulevaisuuteen'] != 'S') { //tulevaisuudessa ei voida laskuttaa $tulos_ulos .= "
\n".t("VIRHE: Syötetty päivämäärä on tulevaisuudessa, ei voida laskuttaa!")."
\n
\n"; $tee = ""; @@ -446,7 +446,6 @@ function pp($muuttuja, $round="", $rmax="", $rmin="") { $lasklisa .= " and lasku.ketjutus != '' "; } - if (isset($laskutettavat) and $laskutettavat != "") { // Laskutetaan vain tietyt tilausket $lasklisa .= " and lasku.tunnus in ($laskutettavat) "; @@ -467,7 +466,8 @@ function pp($muuttuja, $round="", $rmax="", $rmin="") { // saldovirhe_esto_laskutus-parametri 'H', jolla voidaan estää tilauksen laskutus, jos tilauksen yhdeltäkin tuotteelta saldo menee miinukselle // kehahinvirhe_esto_laskutus-parametri 'N', Estetaan laskutus mikali keskihankintahinta on 0.00 tai tuotteen kate on negatiivinen // Eutukäteeen lmaksettu verkkokauppatilaus ($editil_cli) laskutetaan vaikka saldo ei ihan riittäisikään - if (empty($editil_cli) and ($yhtiorow['saldovirhe_esto_laskutus'] == 'H' or $yhtiorow['kehahinvirhe_esto_laskutus'] == 'N')) { + // Mikäli halutaan laskuttaa tulevaisuuteen niin kaikki tilauksen tuotteet täytyy olla saldottomia + if (empty($editil_cli) and ($yhtiorow['saldovirhe_esto_laskutus'] == 'H' or $yhtiorow['kehahinvirhe_esto_laskutus'] == 'N' or $yhtiorow['laskutus_tulevaisuuteen'] == 'S')) { $query = "SELECT tilausrivi.tuoteno, @@ -489,6 +489,13 @@ function pp($muuttuja, $round="", $rmax="", $rmin="") { $lasku_chk_res = pupe_query($query); while ($lasku_chk_row = mysql_fetch_assoc($lasku_chk_res)) { + + # Mikäli halutaan laskuttaa tulevaisuuteen niin kaikki tilauksen tuotteet täytyy olla saldottomia + if ($syotetty > $tanaan and $yhtiorow['laskutus_tulevaisuuteen'] == 'S') { + $lasklisa .= " and lasku.tunnus not in ({$lasku_chk_row['tunnukset']}) "; + $tulos_ulos .= "
\n".t("Tuotevirheet").":
\n".t("Tilausta")." {$lasku_chk_row['tunnukset']} ".t("ei voida laskuttaa, koska tilauksien kaikki tuotteet eivät olleet saldottomia")."!
\n"; + } + // Mikäli laskutuksessa tuotteen varastosaldo vähenee negatiiviseksi, hylätään KAIKKI tilaukset, joilla on kyseistä tuotetta if ($yhtiorow['saldovirhe_esto_laskutus'] == 'H') { $query = "SELECT sum(saldo) saldo @@ -3297,7 +3304,7 @@ function verify(){ return false; } } - if (ero < 0) { + if (ero < 0 && '{$yhtiorow['laskutus_tulevaisuuteen']}' != 'S') { var msg = '".t("VIRHE: Laskua ei voi päivätä tulevaisuuteen!")."'; alert(msg);