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 "Tyyppi | Laskunumero | Nimi | Summa | Valuutta |
";
+ // 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);