Sage2Mysql

Daten aus SAGE (khk) in MYSQL übertragen mittels ODBC.

 

 

<?php

set_time_limit(0);

$conn2 = mysql_connect('localhost','ID','PW');
$db=mysql_select_db('data');


 function querykhk($query)
 {
 global $conn;
 if (!$conn) $conn = odbc_connect('KHK','ID','PW');
 $result=odbc_exec($conn, $query);
 if (!$result) echo "KHK Query Error $query (".odbc_errormsg().")";
 return $result;
 }


 function query($query) 
 {
 global $conn2;
 $result=mysql_query($query);
 if (!$result) {
 echo "Mysql Error $query (".mysql_error().")";
 sleep(10);
 }
 echo mysql_error();
 return $result;

 }



 function read_table($sql,$table)
 {
 global $conn;
 $first=1;
 $reskhk=querykhk($sql);
 
 echo "Open: ".$table." (".$rows.")n";
 while ($ergkhk=odbc_fetch_array($reskhk)) {
 $sc++;
 $cache[]=$ergkhk;
 echo $sc."r";
 }
 echo "Cache Read done ".count($cache)."n";
 echo "Close ODCBC: ".$table."n";
 echo "INSERT Mysql Start: ".$table."n";
 odbc_close($conn);
 
 
 foreach($cache as $ergkhk)
 {
 
 

 $i++;

 $vars='';
 $names='';
 $namesshort='';
 foreach($ergkhk as $name => $value)
 {
 $name=trim(str_replace("'","",$name));
 $value=trim(str_replace("'","",$value)); 
 if (strlen($name)>0) {
 $vars.="'".$value."',";
 $namesshort.="`$name`,";
 if (strpos(" ".$name,'text')>0) $names.="`$name` text NOT NULL,";
 else $names.="`$name` VARCHAR( 255 ) NOT NULL,";
 }
 }

 if ($first==1) {
 query("DROP TABLE `$table`;");
 query("
 CREATE TABLE `shopdata`.`$table` (
 $names
 `last` DATETIME NOT NULL 
 ) ENGINE = MYISAM ;

 ");
 unset($first);
 }
 query("INSERT IGNORE INTO `shopdata`.`$table` ($namesshort `last`) VALUES ($vars now());"); 
 
 }
 echo "Done: ".$table." (".$i.")n";
 }
 

//print_r($_SERVER);
 
if ($_SERVER[argv][1]==1) read_table("SELECT * FROM Auftraege where Vorgang='L'","auftraege");
if ($_SERVER[argv][1]==2) read_table("select * from Kundenkontakt_Ansprechpartner","kundenkontakt_ansprechpartner");
 //Kundennummer,Postleitzahl,Timestamp_Datum,Timestamp_Zeit,E_Mail,Rabattgruppe,Name1,Name2,Strasse,Ort
if ($_SERVER[argv][1]==3) read_table("select Kundennummer,Name1, Name2, Strasse, Ort, Vertreter1, Preisgruppe, Auswertungskennzeichen, Briefcode, Briefanrede, Kurzbezeichnung, Ansprechpartner_Kundennummer, Ansprechpartner_Nummer, Telefon, Telefax, Kundengruppe, Rabattgruppe, Postfach, Zahlungsart, Postleitzahl, Laendercode, E_Mail from Kunden order by Timestamp_Datum DES","kunden");
//, 
if ($_SERVER[argv][1]==4) read_table("Select * FROM Artikel","artikel");
if ($_SERVER[argv][1]==5) read_table('SELECT * FROM "Lieferanten"',"lieferanten");
if ($_SERVER[argv][1]==6) read_table('SELECT * FROM "KundenArtikelSonderpreise"',"kundenartikelsonderpreise");

 
 
?>

Bloggen auf WordPress.com.

Nach oben ↑