diff --git a/nordeafactoring.php b/nordeafactoring.php index b7a4c99957..693d132332 100755 --- a/nordeafactoring.php +++ b/nordeafactoring.php @@ -183,50 +183,50 @@ //Luodaan erätietue if ($toim == "OKO") { - $ulos = sprintf('%-4.4s', "LA01"); //sovellustunnus + $ulos = sprintf('%-4.4s', "LA01"); //sovellustunnus } elseif ($toim == "SAMPO") { - $ulos = sprintf('%-4.4s', "SAFA"); //sovellustunnus, SAMPO factoring + $ulos = sprintf('%-4.4s', "SAFA"); //sovellustunnus, SAMPO factoring } else { - $ulos = sprintf('%-4.4s', "KRFL"); //sovellustunnus + $ulos = sprintf('%-4.4s', "KRFL"); //sovellustunnus } - $ulos .= sprintf('%01.1s', 0); //tietuetunnus + $ulos .= sprintf('%01.1s', 0); //tietuetunnus if ($toim == 'SAMPO') { - $ulos .= sprintf('%017.17s', str_replace('-', '', $yhtiorow["ytunnus"])); //myyjän ytunnus etunollilla SAMPO! + $ulos .= sprintf('%017.17s', str_replace('-', '', $yhtiorow["ytunnus"])); //myyjän ytunnus etunollilla SAMPO! } else { - $ulos .= sprintf('%-17.17s', str_replace('-', '', $yhtiorow["ytunnus"])); //myyjän ytunnus ilman väliviivaa OKO & NORDEA + $ulos .= sprintf('%-17.17s', str_replace('-', '', $yhtiorow["ytunnus"])); //myyjän ytunnus ilman väliviivaa OKO & NORDEA } - $ulos .= sprintf('%06.6s', $luontipvm); //aineiston luontipvm - $ulos .= sprintf('%04.4s', $luontiaika); //luontikaika - $ulos .= sprintf('%06.6s', $frow["sopimusnumero"]); //sopimusnumero - $ulos .= sprintf('%-3.3s', $valkoodi); //valuutta + $ulos .= sprintf('%06.6s', $luontipvm); //aineiston luontipvm + $ulos .= sprintf('%04.4s', $luontiaika); //luontikaika + $ulos .= sprintf('%06.6s', $frow["sopimusnumero"]); //sopimusnumero + $ulos .= sprintf('%-3.3s', $valkoodi); //valuutta if ($toim == "OKO") { - $ulos .= sprintf('%-2.2s', "OP"); //rahoitusyhtiön tunnus + $ulos .= sprintf('%-2.2s', "OP"); //rahoitusyhtiön tunnus } elseif ($toim == "SAMPO") { - $ulos .= sprintf('%-2.2s', "PR"); //rahoitusyhtiön tunnus SAMPO + $ulos .= sprintf('%-2.2s', "PR"); //rahoitusyhtiön tunnus SAMPO } else { - $ulos .= sprintf('%-2.2s', "MR"); //rahoitusyhtiön tunnus + $ulos .= sprintf('%-2.2s', "MR"); //rahoitusyhtiön tunnus } if ($toim == "OKO") { - $ulos .= sprintf('%-30.30s', $yhtiorow["nimi"]); //siirtäjän nimi + $ulos .= sprintf('%-30.30s', $yhtiorow["nimi"]); //siirtäjän nimi } else { - $ulos .= sprintf('%-30.30s', $kukarow["nimi"]); //siirtäjän nimi + $ulos .= sprintf('%-30.30s', $kukarow["nimi"]); //siirtäjän nimi } - $ulos .= sprintf('%06.6s', $factoringsiirtonumero); //siirtoluettelon numero - $ulos .= sprintf('%-37.37s', ""); // - $ulos .= sprintf('%-63.63s', ""); // - $ulos .= sprintf('%-221.221s', ""); // + $ulos .= sprintf('%06.6s', $factoringsiirtonumero); //siirtoluettelon numero + $ulos .= sprintf('%-37.37s', ""); // + $ulos .= sprintf('%-63.63s', ""); // + $ulos .= sprintf('%-221.221s', ""); // $ulos .= "\r\n"; @@ -320,6 +320,20 @@ echo ""; echo ""; + // Käännetään pois UTF-8 muodosta, jos Pupe on UTF-8:ssa + function nordea_decode(&$item1, $key) { + // Tässä on "//NO_MB_OVERLOAD"-kommentti + // jotta UTF8-konversio ei osu tähän riviin + $item1 = utf8_decode($item1); //NO_MB_OVERLOAD + } + + // Käännetään UTF-8 muoton, jos Pupe on UTF-8:ssa + function nordea_encode(&$item1, $key) { + // Tässä on "//NO_MB_OVERLOAD"-kommentti + // jotta UTF8-konversio ei osu tähän riviin + $item1 = utf8_encode($item1); //NO_MB_OVERLOAD + } + while ($laskurow = mysql_fetch_assoc($laskures)) { // Haetaan asiakkaan tiedot @@ -342,88 +356,85 @@ // Käännetään pois UTF-8 muodosta, jos Pupe on UTF-8:ssa if (PUPE_UNICODE) { - // Tässä on "//NO_MB_OVERLOAD"-kommentti - // jotta UTF8-konversio ei osu tähän riviin - array_walk($laskurow, "utf8_decode"); //NO_MB_OVERLOAD - array_walk($asirow, "utf8_decode"); //NO_MB_OVERLOAD - array_walk($frow, "utf8_decode"); //NO_MB_OVERLOAD + array_walk($laskurow, "nordea_decode"); + array_walk($asirow, "nordea_decode"); } //luodaan ostajatietue if ($toim == "OKO") { - $ulos .= sprintf('%-4.4s', "LA01"); //sovellustunnus + $ulos .= sprintf('%-4.4s', "LA01"); //sovellustunnus } elseif ($toim == 'SAMPO') { - $ulos .= sprintf('%-4.4s', "SAFA"); //sovellustunnus SAMPO + $ulos .= sprintf('%-4.4s', "SAFA"); //sovellustunnus SAMPO } else { - $ulos .= sprintf('%-4.4s', "KRFL"); //sovellustunnus + $ulos .= sprintf('%-4.4s', "KRFL"); //sovellustunnus } - $ulos .= sprintf('%01.1s', 1); //tietuetunnus - $ulos .= sprintf('%06.6s', $frow["sopimusnumero"]); //sopimusnumero + $ulos .= sprintf('%01.1s', 1); //tietuetunnus + $ulos .= sprintf('%06.6s', $frow["sopimusnumero"]); //sopimusnumero if ($toim == "OKO") { - $ulos .= sprintf('%-10.10s', $asirow["asiakasnro"]); //ostajan numero aka asiakasnumero + $ulos .= sprintf('%-10.10s', $asirow["asiakasnro"]); //ostajan numero aka asiakasnumero } else { - $ulos .= sprintf('%06.6s', $asirow["asiakasnro"]); //ostajan numero aka asiakasnumero + $ulos .= sprintf('%06.6s', $asirow["asiakasnro"]); //ostajan numero aka asiakasnumero $ulos .= sprintf('%-4.4s', ""); } - $ulos .= sprintf('%-10.10s', str_replace('-', '', $laskurow["ytunnus"])); //ostajan ytunnus + $ulos .= sprintf('%-10.10s', str_replace('-', '', $laskurow["ytunnus"])); //ostajan ytunnus if ($toim == "OKO") { - $ulos .= sprintf('%-30.30s', strtoupper($laskurow["nimi"])); //ostajan nimi + $ulos .= sprintf('%-30.30s', strtoupper($laskurow["nimi"])); //ostajan nimi } else { - $ulos .= sprintf('%-30.30s', $laskurow["nimi"]); //ostajan nimi + $ulos .= sprintf('%-30.30s', $laskurow["nimi"]); //ostajan nimi } if ($toim == "OKO") { - $ulos .= sprintf('%-30.30s', ""); //ostajan nimitark (Ei käytössä) + $ulos .= sprintf('%-30.30s', ""); //ostajan nimitark (Ei käytössä) } else { - $ulos .= sprintf('%-30.30s', $laskurow["nimitark"]); //ostajan nimitark + $ulos .= sprintf('%-30.30s', $laskurow["nimitark"]); //ostajan nimitark } if ($toim == "OKO") { - $ulos .= sprintf('%-20.20s', strtoupper($laskurow["osoite"])); //ostajan osoite + $ulos .= sprintf('%-20.20s', strtoupper($laskurow["osoite"])); //ostajan osoite } else { - $ulos .= sprintf('%-20.20s', $laskurow["osoite"]); //ostajan osoite + $ulos .= sprintf('%-20.20s', $laskurow["osoite"]); //ostajan osoite } if ($toim == "OKO") { - $ulos .= sprintf('%-20.20s', $laskurow["postino"]." ".strtoupper($laskurow["postitp"])); //ostajan postino ja postitp + $ulos .= sprintf('%-20.20s', $laskurow["postino"]." ".strtoupper($laskurow["postitp"])); //ostajan postino ja postitp } else { - $ulos .= sprintf('%-20.20s', $laskurow["postino"]." ".$laskurow["postitp"]); //ostajan postino ja postitp + $ulos .= sprintf('%-20.20s', $laskurow["postino"]." ".$laskurow["postitp"]); //ostajan postino ja postitp } $ulos .= sprintf('%-13.13s', ""); $ulos .= sprintf('%-30.30s', ""); $ulos .= sprintf('%-13.13s', ""); $ulos .= sprintf('%-13.13s', ""); - $ulos .= sprintf('%-2.2s', "FI"); //kieli - $ulos .= sprintf('%-3.3s', $laskurow["valkoodi"]); //valuutta + $ulos .= sprintf('%-2.2s', "FI"); //kieli + $ulos .= sprintf('%-3.3s', $laskurow["valkoodi"]); //valuutta if ($toim == "OKO") { - $ulos .= sprintf('%04.4s', ""); //viivastyskorko (Ei käytössä) + $ulos .= sprintf('%04.4s', ""); //viivastyskorko (Ei käytössä) } else { - $ulos .= sprintf('%04.4s', $laskurow["viikorkopros"]); //viivastyskorko + $ulos .= sprintf('%04.4s', $laskurow["viikorkopros"]); //viivastyskorko } $ulos .= sprintf('%03.3s', 0); $ulos .= sprintf('%06.6s', 0); if ($toim == "OKO") { - $ulos .= sprintf('%03.3s', 1); //myyjän sopimustunnus + $ulos .= sprintf('%03.3s', 1); //myyjän sopimustunnus $ulos .= sprintf('%-179.179s', 0); } elseif ($toim == 'SAMPO') { - $ulos .= sprintf('%-182.182s', 0); // Sampo, tyhjää, Varalla.. + $ulos .= sprintf('%-182.182s', 0); // Sampo, tyhjää, Varalla.. } else { if ($laskurow["maa"] != $yhtiorow["maa"] and $laskurow["maa"] != '') { @@ -440,42 +451,42 @@ //luodaan laskutietue if ($toim == "OKO") { - $ulos .= sprintf('%-4.4s', "LA01"); //sovellustunnus + $ulos .= sprintf('%-4.4s', "LA01"); //sovellustunnus } elseif ($toim == 'SAMPO') { - $ulos .= sprintf('%-4.4s', "SAFA"); //sovellustunnus SAMPO + $ulos .= sprintf('%-4.4s', "SAFA"); //sovellustunnus SAMPO } else { - $ulos .= sprintf('%-4.4s', "KRFL"); //sovellustunnus + $ulos .= sprintf('%-4.4s', "KRFL"); //sovellustunnus } - $ulos .= sprintf('%01.1s', 3); //tietuetunnus - $ulos .= sprintf('%06.6s', $frow["sopimusnumero"]); //sopimusnumero + $ulos .= sprintf('%01.1s', 3); //tietuetunnus + $ulos .= sprintf('%06.6s', $frow["sopimusnumero"]); //sopimusnumero if ($toim == "OKO") { - $ulos .= sprintf('%-10.10s', $asirow["asiakasnro"]); //ostajan numero aka asiakasnumero + $ulos .= sprintf('%-10.10s', $asirow["asiakasnro"]); //ostajan numero aka asiakasnumero } else { - $ulos .= sprintf('%06.6s', $asirow["asiakasnro"]); //ostajan numero aka asiakasnumero + $ulos .= sprintf('%06.6s', $asirow["asiakasnro"]); //ostajan numero aka asiakasnumero $ulos .= sprintf('%-4.4s', ""); } if ($toim == 'SAMPO') { - $ulos .= sprintf('%09.9s', $laskurow["laskunro"]); // Sampo + $ulos .= sprintf('%09.9s', $laskurow["laskunro"]); // Sampo $ulos .= sprintf('%-1.1s', ""); } else { - $ulos .= sprintf('%010.10s', $laskurow["laskunro"]); //laskunro + $ulos .= sprintf('%010.10s', $laskurow["laskunro"]); //laskunro } - $ulos .= sprintf('%06.6s', $laskurow["tapvm"]); //laskun päiväys - $ulos .= sprintf('%-3.3s', $laskurow["valkoodi"]); //valuutta - $ulos .= sprintf('%06.6s', $laskurow["tapvm"]); //laskun arvopäivä - $ulos .= sprintf('%02.2s', $laskurow["tyyppi"]); //laskun tyyppi 01-veloitus 02-hyvitys 03-viivästyskorkolasku jne... - $ulos .= sprintf('%012.12s', $laskurow["summa"]); //summa etumerkitön, sentteinä - $ulos .= sprintf('%06.6s', $laskurow["erpcm"]); //eräpäivä + $ulos .= sprintf('%06.6s', $laskurow["tapvm"]); //laskun päiväys + $ulos .= sprintf('%-3.3s', $laskurow["valkoodi"]); //valuutta + $ulos .= sprintf('%06.6s', $laskurow["tapvm"]); //laskun arvopäivä + $ulos .= sprintf('%02.2s', $laskurow["tyyppi"]); //laskun tyyppi 01-veloitus 02-hyvitys 03-viivästyskorkolasku jne... + $ulos .= sprintf('%012.12s', $laskurow["summa"]); //summa etumerkitön, sentteinä + $ulos .= sprintf('%06.6s', $laskurow["erpcm"]); //eräpäivä if ($laskurow["kasumma"] > 0) { - $ulos .= sprintf('%06.6s', $laskurow["kapvm"]); //kassa-ale1 pvm + $ulos .= sprintf('%06.6s', $laskurow["kapvm"]); //kassa-ale1 pvm } else { $ulos .= sprintf('%06.6s', 0); @@ -487,14 +498,14 @@ if ($toim == 'SAMPO') { $ulos .= sprintf('%06.6s', 0); - $ulos .= sprintf('%06.6s', 0); // Kassa-ale 6 + $ulos .= sprintf('%06.6s', 0); // Kassa-ale 6 } else { $ulos .= sprintf('%012.12s', 0); } if ($laskurow["kasumma"] > 0) { - $ulos .= sprintf('%012.12s', $laskurow["kasumma"]); //kassa-ale1 valuutassa + $ulos .= sprintf('%012.12s', $laskurow["kasumma"]); //kassa-ale1 valuutassa } else { $ulos .= sprintf('%012.12s', 0); @@ -506,14 +517,14 @@ if ($toim == 'SAMPO') { $ulos .= sprintf('%012.12s', 0); - $ulos .= sprintf('%012.12s', 0); // Ale6 valuutta + $ulos .= sprintf('%012.12s', 0); // Ale6 valuutta } else { $ulos .= sprintf('%024.24s', 0); } if ($laskurow["kasumma"] > 0 and $toim != "OKO") { - $ulos .= sprintf('%01.1s', 1); //kassa-ale1 koodi 0-ei alennusta, 1-alennus + $ulos .= sprintf('%01.1s', 1); //kassa-ale1 koodi 0-ei alennusta, 1-alennus } else { $ulos .= sprintf('%01.1s', 0); @@ -525,42 +536,42 @@ if ($toim == 'SAMPO') { $ulos .= sprintf('%01.1s', 0); - $ulos .= sprintf('%01.1s', 0); // Koodi 6 ... + $ulos .= sprintf('%01.1s', 0); // Koodi 6 ... } else { $ulos .= sprintf('%02.2s', 0); } $ulos .= sprintf('%010.10s', 0); - $ulos .= sprintf('%04.4s', 0); //alv (ei välitetä) + $ulos .= sprintf('%04.4s', 0); //alv (ei välitetä) if ($toim == "OKO") { - $ulos .= sprintf('%-30.30s', ""); //toimituspaikan nimi - $ulos .= sprintf('%06.6s', 0); //asiakasnro - $ulos .= sprintf('%010.10s', 0); //toim ytunnus - $ulos .= sprintf('%-20.20s', ""); //toim osoite - $ulos .= sprintf('%-20.20s', ""); //toim postitp ja postino + $ulos .= sprintf('%-30.30s', ""); //toimituspaikan nimi + $ulos .= sprintf('%06.6s', 0); //asiakasnro + $ulos .= sprintf('%010.10s', 0); //toim ytunnus + $ulos .= sprintf('%-20.20s', ""); //toim osoite + $ulos .= sprintf('%-20.20s', ""); //toim postitp ja postino $ulos .= sprintf('%-30.30s', ""); $ulos .= sprintf('%-13.13s', ""); $ulos .= sprintf('%-30.30s', ""); $ulos .= sprintf('%06.6s', 0); - $ulos .= sprintf('%03.3s', 1); //myyjän sopimustunnus + $ulos .= sprintf('%03.3s', 1); //myyjän sopimustunnus $ulos .= sprintf('%-38.38s', ""); } else { - $ulos .= sprintf('%-30.30s', $laskurow["toim_nimi"]); //toimituspaikan nimi - $ulos .= sprintf('%06.6s', $asirow["asiakasnro"]); //asiakasnro - $ulos .= sprintf('%010.10s', str_replace('-', '', $laskurow["ytunnus"])); //toim ytunnus - $ulos .= sprintf('%-20.20s', $laskurow["toim_osoite"]); //toim osoite - $ulos .= sprintf('%-20.20s', $laskurow["toim_postino"]." ".$laskurow["toim_postitp"]); //toim postitp ja postino + $ulos .= sprintf('%-30.30s', $laskurow["toim_nimi"]); //toimituspaikan nimi + $ulos .= sprintf('%06.6s', $asirow["asiakasnro"]); //asiakasnro + $ulos .= sprintf('%010.10s', str_replace('-', '', $laskurow["ytunnus"])); //toim ytunnus + $ulos .= sprintf('%-20.20s', $laskurow["toim_osoite"]); //toim osoite + $ulos .= sprintf('%-20.20s', $laskurow["toim_postino"]." ".$laskurow["toim_postitp"]); //toim postitp ja postino $ulos .= sprintf('%-30.30s', ""); $ulos .= sprintf('%013.13s', 0); $ulos .= sprintf('%-30.30s', ""); $ulos .= sprintf('%06.6s', 0); if ($toim == 'SAMPO') { - $ulos .= sprintf('%-41.41s', ""); // Sampo, varalla + $ulos .= sprintf('%-41.41s', ""); // Sampo, varalla } else { if ($laskurow["toim_maa"] != $yhtiorow["maa"] and $laskurow["toim_maa"] != '') { @@ -578,9 +589,15 @@ $ulos .= "\r\n"; + // Käännetään takaisin UTF-8 muotoon + if (PUPE_UNICODE) { + array_walk($laskurow, "nordea_encode"); + } + echo ""; $laskukpl++; + if ($laskurow["tyyppi"] == "01") { $vlaskukpl++; $vlaskusum += $laskurow["summa"]; @@ -624,13 +641,13 @@ //luodaan summatietue //luodaan laskutietue if ($toim == "OKO") { - $ulos .= sprintf('%-4.4s', "LA01"); //sovellustunnus + $ulos .= sprintf('%-4.4s', "LA01"); //sovellustunnus } elseif ($toim == 'SAMPO') { - $ulos .= sprintf('%-4.4s', "SAFA"); //sovellustunnus + $ulos .= sprintf('%-4.4s', "SAFA"); //sovellustunnus } else { - $ulos .= sprintf('%-4.4s', "KRFL"); //sovellustunnus + $ulos .= sprintf('%-4.4s', "KRFL"); //sovellustunnus } $ulos .= sprintf('%01.1s', 9);
TyyppiLaskunumeroNimiSummaValuutta