if (mysql_num_rows($viety) == 0) { // Tarkastetaan syötetyt määrät, eli tarviiko tilausrivia splittailla tai kopioida if ($maara < $row['varattu']) { // Syötetty määrä on pienempi kuin tilausrivilla oleva määrä. // Splitataan rivi ja siirretään ylijääneet uudellele tilausriville. splittaa_tilausrivi($tilausrivi, $row['varattu'] - $maara, TRUE, FALSE); // Alkuperäinen viedään varastoon, splitattu jää jâljelle $ok = paivita_tilausrivin_kpl($tilausrivi, $maara); $tilausrivit[] = $tilausrivi; // Ei voi olla viimeinen rivi jos rivi on splitattu $viimeinen = false; } elseif ($maara == $row['varattu']) { $tilausrivit[] = $tilausrivi; } else { // Tehdään insertti erotukselle $kopioitu_tilausrivi = kopioi_tilausrivi($tilausrivi); // Päivitä kopioidun kpl (maara - varattu) paivita_tilausrivin_kpl($kopioitu_tilausrivi, $maara - $row['varattu']); $tilausrivit = array($tilausrivi, $kopioitu_tilausrivi); } } else { echo t("Tuote oli jo viety varastoon! Ei viedä tuotetta uudestaan varastoon!"); } $temppi_lava = false; // Viedään varastoon temppi lavalla if ($yhtiorow['suuntalavat'] != "" and $alusta_tunnus == 0 && $saapuminen != 0 || $alusta_tunnus != 0 && $row['uusiotunnus'] == 0) { $temppi_lava = true; // Tarkottaa että on tultu ostotilauksen tuloutuksesta ilman että kyseisellä // tilauksella on suuntalavaa. Ratkaisuna tehdään väliaikainen lava. $tee = "eihalutamitankayttoliittymaapliis"; $suuntalavat_ei_kayttoliittymaa = "KYLLA";
if (($submit == 'ok' or $submit == 'siirtovalmis' or $submit == 'suoraan_hyllyyn') and count($errors) == 0) { // Kohdista rivi(t) $query = "SELECT * FROM lasku WHERE tunnus = '{$saapuminen}' AND yhtio = '{$kukarow['yhtio']}'"; $result = pupe_query($query); $laskurow = mysql_fetch_array($result); require "../inc/keikan_toiminnot.inc"; // Tää koittaa heti hakea uudelleen $laskurown ja nollaa siis edellisen haun??!? // Tarkistetaan määrä ja splittaillaan jos tarvetta if ($hyllytetty < $tilausrivi['varattu']) { // Päivitetään alkuperäisen rivin kpl $ok = paivita_tilausrivin_kpl($tilausrivi['tunnus'], $tilausrivi['varattu'] - $hyllytetty); $uusi_tilausrivi = splittaa_tilausrivi($tilausrivi['tunnus'], $hyllytetty, TRUE, FALSE); kohdista_rivi($laskurow, $uusi_tilausrivi, $tilausrivi['otunnus'], $saapuminen, $suuntalava); } elseif ($hyllytetty > $tilausrivi['varattu']) { $poikkeukset = array("tilausrivi.varattu" => $hyllytetty - $tilausrivi['varattu']); $uusi_tilausrivi = kopioi_tilausrivi($tilausrivi['tunnus'], $poikkeukset); // Kohdistetaan molemmat rivit kohdista_rivi($laskurow, $tilausrivi['tunnus'], $tilausrivi['otunnus'], $saapuminen, $suuntalava); kohdista_rivi($laskurow, $uusi_tilausrivi, $tilausrivi['otunnus'], $saapuminen, $suuntalava); } else { kohdista_rivi($laskurow, $tilausrivi['tunnus'], $tilausrivi['otunnus'], $saapuminen, $suuntalava); } // Laitetaanko lava siirtovalmiiksi if ($submit == 'siirtovalmis' or $submit == 'suoraan_hyllyyn') { echo "Suuntalava {$suuntalava} siirtovalmiiksi<br>"; // Suuntalavan käsittelytapa (Suoraan (H)yllyyn) if ($submit == 'suoraan_hyllyyn') { echo "Käsittelytapa suoraan hyllyyn"; $query = "UPDATE suuntalavat SET kasittelytapa='H' WHERE tunnus='{$suuntalava}'"; $result = pupe_query($query); }
// Jos hyllypaikka ok, laitetaan koko suuntalava varastoon if ($kaikki_ok and $error['varalle'] == '' and $error['tuotteet'] == '') { // Poistetaan käyttäjän kesken, että osataan viedä varastoon $query = "UPDATE kuka SET kesken = 0 where yhtio = '{$kukarow['yhtio']}' and kuka = '{$kukarow['kuka']}'"; $res = pupe_query($query); // Haetaan saapumiset? $saapumiset = hae_saapumiset($alusta_tunnus); if (isset($suuntalavan_tuotteet) and count($suuntalavan_tuotteet) > 0) { foreach ($suuntalavan_tuotteet as $_tunnus => $_syotetty_maara) { if (trim($_syotetty_maara) != '') { $_syotetty_maara = (double) $_syotetty_maara; $query = "SELECT varattu\n FROM tilausrivi\n WHERE yhtio = '{$kukarow['yhtio']}'\n AND tunnus = '{$_tunnus}'"; $chk_varattu_res = pupe_query($query); $chk_varattu_row = mysql_fetch_assoc($chk_varattu_res); // Tehdään insertti erotukselle $kopioitu_tilausrivi = kopioi_tilausrivi($_tunnus); // Päivitä kopioidun kpl (maara - varattu) paivita_tilausrivin_kpl($kopioitu_tilausrivi, $_syotetty_maara - $chk_varattu_row['varattu']); } } } // Päivitetään hyllypaikat $paivitetyt_rivit = paivita_hyllypaikat($alusta_tunnus, $hyllyalue, $hyllynro, $hyllyvali, $hyllytaso); if ($paivitetyt_rivit > 0) { // Hylly arrayksi... $hylly = array("hyllyalue" => $hyllyalue, "hyllynro" => $hyllynro, "hyllyvali" => $hyllyvali, "hyllytaso" => $hyllytaso); // Viedään varastoon keikka kerrallaan. foreach ($saapumiset as $saapuminen) { // Saako keikan viedä varastoon if (saako_vieda_varastoon($saapuminen, 'kalkyyli', 1) == 1) { // Ei saa viedä varastoon, skipataan?