From 8468c353d00846c241dd17f9bd3aa9052f7b1cd2 Mon Sep 17 00:00:00 2001 From: Holger Lindemann Date: Wed, 26 Nov 2008 13:48:59 +0000 Subject: [PATCH] Import von Bankdaten, MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Tabelle wie in CRM/update/BLZ.sql beschrieben anlegen, Menü erweitern: [System--Import CSV--BLZ] module=lxo-import/blz.php --- lxo-import/blz.php | 113 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 113 insertions(+) create mode 100644 lxo-import/blz.php diff --git a/lxo-import/blz.php b/lxo-import/blz.php new file mode 100644 index 000000000..86639be23 --- /dev/null +++ b/lxo-import/blz.php @@ -0,0 +1,113 @@ + + + + +*/ + + +function ende($nr) { + echo "Abbruch: $nr
"; + echo "Fehlende oder falsche Daten."; + exit(1); +} + +if (!$_SESSION["db"]) { + $conffile="../config/authentication.pl"; + if (!is_file($conffile)) { + ende(4); + } +} +require ("import_lib.php"); + +if (!anmelden()) ende(5); +/* get DB instance */ +$db=$_SESSION["db"]; //new myDB($login); + + +/* display help */ +if ($_POST["ok"]=="Hilfe") { + echo "Importfelder:
"; + echo "Feldname => Bedeutung
"; + foreach($parts as $key=>$val) { + echo "$key => $val
"; + } + echo "
Die erste Zeile enthält keine Feldnamen der Daten.
"; + echo "Die Datenfelder haben eine feste Breite.

"; + echo "Die Daten können hier bezogen werden:
"; + echo ""; + echo "http://www.bundesbank.de/zahlungsverkehr/zahlungsverkehr_bankleitzahlen_download.php"; + exit(0); +} else if ($_POST) { + $test=$_POST["test"]; + + clearstatcache (); + + /* no data? */ + if (empty($_FILES["Datei"]["name"])) + ende (2); + + /* copy file */ + if (!move_uploaded_file($_FILES["Datei"]["tmp_name"],"blz.txt")) { + echo "Upload von Datei fehlerhaft."; + echo $_FILES["Datei"]["error"], "
"; + ende (2); + } + + /* check if file is really there */ + if (!file_exists("blz.txt")) + ende(3); + + $sqlins="INSERT INTO blz_data (blz,fuehrend,bezeichnung,plz,ort,kurzbez,pan,bic,pzbm,nummer,aekz,bl,folgeblz) "; + $sqlins.="VALUES ('%s','%s','%s','%s','%s','%s','%s','%s','%s',%d,'%s','%s','%s')"; + $sqldel="delete from blz"; + $ok="true"; + $f=fopen("blz.txt","r"); + if ($test) echo "Testdurchlauf
"; + $i=0; + if ($f) { + if (!$test) $rc=$db->query("BEGIN"); + if (!$test) $rc=$db->query($sqldel); + while (($zeile=fgets($f,256)) != FALSE) { + $sql=sprintf($sqlins,substr($zeile,0,8),substr($zeile,8,1),substr($zeile,9,58),substr($zeile,67,5), + substr($zeile,72,35),substr($zeile,107,27),substr($zeile,134,5),substr($zeile,139,11), + substr($zeile,150,2),substr($zeile,152,6),substr($zeile,158,1),substr($zeile,159,1), + substr($zeile,160,8)); + if (!$test) $rc=$db->query($sql); + if ($test) $rc=true; + echo $rc; + if (!$rc) { + $ok=false; + break; + } + $i++; + } + if ($ok) { + $rc=$db->query("COMMIT"); + echo "$i Daten erfolgreich importiert"; + } else { + $rc=$db->query("ROLLBACK"); + ende(6); + } + } else { + ende(4); + } +} else { +?> + +

BLZ-Import für die ERP

+Achtung!! Die bestehenden BLZ-Daten werden zunächst gelöscht. +
+

+ + + + + + + +
Testja
Daten
+
+ -- 2.20.1