Skip to content

Commit

Permalink
Merkistökikkailua
Browse files Browse the repository at this point in the history
  • Loading branch information
juppe committed Dec 30, 2015
1 parent 17cba36 commit 9752f67
Showing 1 changed file with 100 additions and 83 deletions.
183 changes: 100 additions & 83 deletions nordeafactoring.php
Expand Up @@ -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";


Expand Down Expand Up @@ -320,6 +320,20 @@
echo "<table>";
echo "<tr><th>Tyyppi</th><th>Laskunumero</th><th>Nimi</th><th>Summa</th><th>Valuutta</th></tr>";

// 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
Expand All @@ -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"] != '') {
Expand All @@ -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);
Expand All @@ -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);
Expand All @@ -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);
Expand All @@ -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"] != '') {
Expand All @@ -578,9 +589,15 @@

$ulos .= "\r\n";

// Käännetään takaisin UTF-8 muotoon
if (PUPE_UNICODE) {
array_walk($laskurow, "nordea_encode");
}

echo "<tr>";

$laskukpl++;

if ($laskurow["tyyppi"] == "01") {
$vlaskukpl++;
$vlaskusum += $laskurow["summa"];
Expand Down Expand Up @@ -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);
Expand Down

0 comments on commit 9752f67

Please sign in to comment.