while ($sarjarow = mysql_fetch_assoc($sarjares)) { // Haetaan hyvitettävien myyntirivien kautta alkuperäiset ostorivit $query = "SELECT tilausrivi.rivihinta/tilausrivi.kpl ostohinta\n FROM sarjanumeroseuranta\n JOIN tilausrivi use index (PRIMARY) ON tilausrivi.yhtio=sarjanumeroseuranta.yhtio and tilausrivi.tunnus=sarjanumeroseuranta.ostorivitunnus\n WHERE sarjanumeroseuranta.yhtio = '{$kukarow['yhtio']}'\n and sarjanumeroseuranta.tuoteno = '{$arow['tuoteno']}'\n and sarjanumeroseuranta.sarjanumero = '{$sarjarow['sarjanumero']}'\n and sarjanumeroseuranta.kaytetty = '{$sarjarow['kaytetty']}'\n and sarjanumeroseuranta.myyntirivitunnus > 0\n and sarjanumeroseuranta.ostorivitunnus > 0\n ORDER BY sarjanumeroseuranta.tunnus\n LIMIT 1"; $sarjares1 = pupe_query($query); $sarjarow1 = mysql_fetch_assoc($sarjares1); $oh = hinta_kuluineen($arow['tuoteno'], $sarjarow1['ostohinta']); $ostohinta += $oh; } $rivikate = $arow["kotirivihinta"] - $ostohinta; $rivikate_eieri = $arow["kotirivihinta_ei_erikoisaletta"] - $ostohinta; } else { $rivikate = 0; $rivikate_eieri = 0; } } else { $khh = hinta_kuluineen($arow['tuoteno'], $arow["kehahin"]); $rivikate = $arow["kotirivihinta"] - $khh * $arow["varattu"]; $rivikate_eieri = $arow["kotirivihinta_ei_erikoisaletta"] - $khh * $arow["varattu"]; } if ($arow['varattu'] > 0) { if (trim(strtoupper($alvrow["maa"])) == trim(strtoupper($laskurow["toim_maa"]))) { $summa_kotimaa += $arow["rivihinta"] + $arow["alv"]; $summa_kotimaa_eieri += $arow["rivihinta_ei_erikoisaletta"] + $arow["alv_ei_erikoisaletta"]; $arvo_kotimaa += $arow["rivihinta"]; $arvo_kotimaa_eieri += $arow["rivihinta_ei_erikoisaletta"]; $kotiarvo_kotimaa += $arow["kotirivihinta"]; $kotiarvo_kotimaa_eieri += $arow["kotirivihinta_ei_erikoisaletta"]; $kate_kotimaa += $rivikate; $kate_kotimaa_eieri += $rivikate_eieri; } else { $summa_ulkomaa += $arow["rivihinta"] + $arow["alv"];
} else { // jos summaustaso on per paikka, otetaan varastonarvo vain siltä paikalta if ($summaustaso == "P") { $summaus_lisa = " and tuotepaikat.hyllyalue = '{$row['hyllyalue']}'\n and tuotepaikat.hyllynro = '{$row['hyllynro']}'\n and tuotepaikat.hyllyvali = '{$row['hyllyvali']}'\n and tuotepaikat.hyllytaso = '{$row['hyllytaso']}'"; } else { $summaus_lisa = ""; } $query = "SELECT sum(tuotepaikat.saldo) saldo,\n sum(tuotepaikat.saldo*if(tuote.epakurantti100pvm = '0000-00-00', if(tuote.epakurantti75pvm = '0000-00-00', if(tuote.epakurantti50pvm = '0000-00-00', if(tuote.epakurantti25pvm = '0000-00-00', tuote.kehahin, tuote.kehahin * 0.75), tuote.kehahin * 0.5), tuote.kehahin * 0.25), 0)) varasto,\n sum(tuotepaikat.saldo*tuote.kehahin) bruttovarasto\n FROM tuotepaikat\n JOIN tuote ON (tuote.tuoteno = tuotepaikat.tuoteno and tuote.yhtio = tuotepaikat.yhtio and tuote.ei_saldoa = '')\n WHERE tuotepaikat.yhtio = '{$kukarow['yhtio']}'\n and tuotepaikat.tuoteno = '{$row['tuoteno']}'\n {$varasto_tuotepaikat}\n {$summaus_lisa}"; $vararvores = pupe_query($query); $vararvorow = mysql_fetch_assoc($vararvores); $kpl = (double) $vararvorow["saldo"]; $varattu_saldo = isset($tuotevaraukset[$row["tuoteno"]]) ? $tuotevaraukset[$row["tuoteno"]] : 0; $varaston_arvo = hinta_kuluineen($row["tuoteno"], (double) $vararvorow["varasto"]); $varattu_varastonarvo = $varattu_saldo * $row["kehahin_nyt"]; $varattu_varastonarvo = hinta_kuluineen($row["tuoteno"], (double) $varattu_varastonarvo); $bruttovaraston_arvo = hinta_kuluineen($row["tuoteno"], (double) $vararvorow["bruttovarasto"]); } // jos summaustaso on per paikka, otetaan varastonmuutos vain siltä paikalta if ($summaustaso == "P") { $summaus_lisa = " and tapahtuma.hyllyalue = '{$row['hyllyalue']}'\n and tapahtuma.hyllynro = '{$row['hyllynro']}'\n and tapahtuma.hyllyvali = '{$row['hyllyvali']}'\n and tapahtuma.hyllytaso = '{$row['hyllytaso']}'"; } else { $summaus_lisa = ""; } $muutoskpl = $kpl; $muutoshinta = $varaston_arvo; $bmuutoshinta = $bruttovaraston_arvo; $edlaadittu = ''; // tuotteen muutos varastossa annetun päivän jälkeen // jos samalle päivälle on epäkuranttitapahtumia ja muita tapahtumia (esim. inventointi), niin bruttovarastonarvo heittää, koska epäkuranttitapahtuma on tällöin päivän eka tapahtuma (huom. 00:00:00) if (date("Y-m-d") != $vv . "-" . $kk . "-" . $pp) { $query = "SELECT\n sum(kpl * if(laji in ('tulo', 'valmistus'), kplhinta, hinta)) muutoshinta,\n sum(kpl * if(laji in ('tulo', 'valmistus'), kplhinta,\n if(tapahtuma.laadittu <= '{$row['epakurantti100pvm']} 00:00:00' or '{$row['epakurantti100pvm']}' = '0000-00-00',\n if(tapahtuma.laadittu <= '{$row['epakurantti75pvm']} 00:00:00' or '{$row['epakurantti75pvm']}' = '0000-00-00',\n if(tapahtuma.laadittu <= '{$row['epakurantti50pvm']} 00:00:00' or '{$row['epakurantti50pvm']}' = '0000-00-00',\n if(tapahtuma.laadittu <= '{$row['epakurantti25pvm']} 00:00:00' or '{$row['epakurantti25pvm']}' = '0000-00-00', hinta, hinta / 0.75), hinta / 0.5), hinta / 0.25), 0))) bmuutoshinta,\n sum(kpl) muutoskpl,\n tapahtuma.laadittu\n FROM tapahtuma use index (yhtio_tuote_laadittu)\n WHERE tapahtuma.yhtio = '{$kukarow['yhtio']}'\n and tapahtuma.tuoteno = '{$row['tuoteno']}'\n and tapahtuma.laadittu > '{$vv}-{$kk}-{$pp} 23:59:59'\n and tapahtuma.hyllyalue != ''\n and tapahtuma.hyllynro != ''\n and tapahtuma.laji != 'Epäkurantti'\n {$varasto_tapahtuma}\n {$summaus_lisa}\n GROUP BY tapahtuma.laadittu\n ORDER BY tapahtuma.laadittu DESC, tapahtuma.tunnus desc";
echo "<th>", t("Varasto"), "</th>"; } echo "<th>", t("Pvm"), "</th>"; echo "<th>", t("Varastonarvo"), "</th>"; echo "<th>", t("Bruttovarastonarvo"), "</th>"; if ($merkki != '' or $tryittain != '') { echo "<th>", t("Varastonkierto"), "</th>"; } echo "</tr>"; $varvo = 0; while ($row = mysql_fetch_assoc($result)) { // netto- ja bruttovarastoarvo $varvo = hinta_kuluineen($row["tuoteno"], $row["varasto"]); $bvarvo = hinta_kuluineen($row["tuoteno"], $row["bruttovarasto"]); $varastosumma += hinta_kuluineen($row["tuoteno"], $row["varasto"]); $bruttovarastosumma += hinta_kuluineen($row["tuoteno"], $row["bruttovarasto"]); echo "<tr>"; if ($merkki != '') { echo "<td>{$row["tuotemerkki"]}</td>"; } if ($tryittain != '') { echo "<td>{$row["try"]}</td>"; } if (isset($varastot) and count($varastot) > 0) { echo "<td>{$row["nimitys"]}</td>"; } echo "<td>", date("d.m.Y"), "</td>"; echo "<td align='right'>", sprintf("%.2f", $varvo), "</td>"; echo "<td align='right'>", sprintf("%.2f", $bvarvo), "</td>"; if ($merkki != '' or $tryittain != '') { // tuotteen määrä varastossa nyt
if ($toim == "RESEPTI") { echo "<td align='left'>{$tuoterow['yksikko']}</td>"; $worksheet->writeString($excelrivi, $excelsarake++, $tuoterow["yksikko"], $style); foreach ($resepti_kentat as $resepti_kentta) { echo "<td>{$prow[$resepti_kentta["selite"]]}</td>"; $worksheet->writeString($excelrivi, $excelsarake++, $prow[$resepti_kentta["selite"]], $style); } $query = "SELECT\n tuotteen_toimittajat.liitostunnus,\n toimi.oletus_valkoodi,\n toimi.ytunnus,\n if(jarjestys = 0, 9999, jarjestys) sorttaus\n FROM tuotteen_toimittajat\n LEFT JOIN toimi\n ON (toimi.yhtio = tuotteen_toimittajat.yhtio\n AND toimi.tunnus = tuotteen_toimittajat.liitostunnus)\n WHERE tuotteen_toimittajat.yhtio = '{$kukarow["yhtio"]}'\n AND tuotteen_toimittajat.tuoteno = '{$tuoterow["tuoteno"]}'\n ORDER BY sorttaus\n LIMIT 1"; $ttrow = pupe_query($query); $ttrow = mysql_fetch_assoc($ttrow); $query = "SELECT kurssi\n FROM valuu\n WHERE yhtio = '{$kukarow['yhtio']}'\n AND nimi = '{$ttrow['oletus_valkoodi']}'\n ORDER BY tunnus DESC\n LIMIT 1"; $valuurow = pupe_query($query); $valuurow = mysql_fetch_assoc($valuurow); $params = array('liitostunnus' => $ttrow['liitostunnus'], 'valkoodi' => $ttrow['oletus_valkoodi'], 'ytunnus' => $ttrow['ytunnus'], 'vienti_kurssi' => $valuurow['kurssi']); $ostohintatiedot = alehinta_osto($params, $tuoterow, 1, '', '', array()); $ostohinta = hintapyoristys(hinta_kuluineen($tuoterow['tuoteno'], $ostohintatiedot[0])); $valuutta = $ostohintatiedot[3]; echo "<td align='right'>{$ostohinta} {$valuutta}</td>"; $worksheet->writeString($excelrivi, $excelsarake++, "{$ostohinta} {$valuutta}", $style); } if ($toim != "VSUUNNITTELU") { echo "<td align='right'>" . (double) $tuoterow["kehahin"] . "</td>"; echo "<td align='right'>" . round($lapsiyht, 6) . "</td>"; $worksheet->writeNumber($excelrivi, $excelsarake++, $tuoterow["kehahin"], $style); $worksheet->writeNumber($excelrivi, $excelsarake++, round($lapsiyht, 6), $style); } if ($toim == "PERHE") { if (isset($prow['ohita_kerays']) and trim($prow['ohita_kerays']) != '') { $chk_ohita_kerays = t("Kyllä"); } else { $chk_ohita_kerays = t("Ei");
$query = "SELECT tilausrivi.tunnus, tilausrivi.tuoteno, sarjanumeroseuranta.sarjanumero, tyyppi, otunnus\n FROM tilausrivi\n LEFT JOIN sarjanumeroseuranta ON (tilausrivi.yhtio=sarjanumeroseuranta.yhtio and tilausrivi.tunnus=sarjanumeroseuranta.ostorivitunnus)\n WHERE tilausrivi.yhtio='{$kukarow['yhtio']}' and tilausrivi.tunnus='{$ztun}'"; $siires = pupe_query($query); $siirow = mysql_fetch_assoc($siires); if ($siirow["tyyppi"] == "O") { // pultattu kiinni johonkin $fnlina1 = " <font class='message'>(" . t("Varattu lisävarusteena") . ": {$siirow['tuoteno']} <a href='tilauskasittely/sarjanumeroseuranta.php?tuoteno_haku=" . urlencode($siirow["tuoteno"]) . "&sarjanumero_haku=" . urlencode($siirow["sarjanumero"]) . "'>{$siirow['sarjanumero']}</a>)</font>"; } elseif ($siirow["tyyppi"] == "G") { // jos tämä on jollain siirtolistalla $fnlina1 = " <font class='message'>(" . t("Kesken siirtolistalla") . ": {$siirow['otunnus']})</font>"; } } echo "<tr>\n <td>{$sarjarow['nimitys']}</td>\n <td><a href='tilauskasittely/sarjanumeroseuranta.php?tuoteno_haku=" . urlencode($tuoterow["tuoteno"]) . "&sarjanumero_haku=" . urlencode($sarjarow["sarjanumero"]) . "'>{$sarjarow['sarjanumero']}</a></td>\n <td>{$sarjarow['hyllyalue']} {$sarjarow['hyllynro']} {$sarjarow['hyllyvali']} {$sarjarow['hyllytaso']}</td>\n <td align='right'>"; if ($tuoterow['sarjanumeroseuranta'] == 'V' or $tuoterow['sarjanumeroseuranta'] == 'T') { echo sprintf('%.2f', $tuoterow['kehahin']); } else { echo sprintf('%.2f', hinta_kuluineen($tuoterow['tuoteno'], sarjanumeron_ostohinta("tunnus", $sarjarow["sarjatunnus"]))); } echo "</td>\n <td>{$sarjarow['myynimi']} {$fnlina1}</td></tr>"; } echo "</table><br>"; } } elseif ($tuoterow["sarjanumeroseuranta"] == "E" or $tuoterow["sarjanumeroseuranta"] == "F" or $tuoterow["sarjanumeroseuranta"] == "G") { $query = "SELECT sarjanumeroseuranta.sarjanumero, sarjanumeroseuranta.parasta_ennen, sarjanumeroseuranta.lisatieto,\n sarjanumeroseuranta.hyllyalue, sarjanumeroseuranta.hyllynro, sarjanumeroseuranta.hyllyvali, sarjanumeroseuranta.hyllytaso,\n sarjanumeroseuranta.era_kpl kpl,\n sarjanumeroseuranta.tunnus sarjatunnus\n FROM sarjanumeroseuranta\n LEFT JOIN tilausrivi tilausrivi_osto use index (PRIMARY) ON tilausrivi_osto.yhtio=sarjanumeroseuranta.yhtio and tilausrivi_osto.tunnus=sarjanumeroseuranta.ostorivitunnus\n WHERE sarjanumeroseuranta.yhtio = '{$kukarow['yhtio']}'\n and sarjanumeroseuranta.tuoteno = '{$tuoterow['tuoteno']}'\n and sarjanumeroseuranta.myyntirivitunnus = 0\n and sarjanumeroseuranta.era_kpl != 0\n and tilausrivi_osto.laskutettuaika != '0000-00-00'"; $sarjares = pupe_query($query); if (mysql_num_rows($sarjares) > 0) { echo "<font class='message'>" . t("Eränumerot") . "</font><hr>"; echo "<table>"; if ($tuoterow["sarjanumeroseuranta"] == "F") { echo "<tr><th colspan='4'>" . t("Varasto") . ":</th></tr>"; } elseif ($tuoterow["sarjanumeroseuranta"] == "G") { echo "<tr><th colspan='5'>" . t("Varasto") . ":</th></tr>";