Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 3c2ec7dc

Von Holger Lindemann vor fast 14 Jahren hinzugefügt

  • ID 3c2ec7dc1ba31b9fffbe7e777c60af6a85f3ba2e
  • Vorgänger ca3ed37d
  • Nachfolger 0a1bea67

Automatisierter Import per Cronjob möglich.

z.B. mit:

wget http://localhost/lxo-fcgi/lxo-import/partsB.php?cron=1&login=demo&passwd=ded5ht0W28M8U
oder
w3m -dump http://localhost/lxo-fcgi/lxo-import/partsB.php?cron=1&login=demo&passwd=ded5ht0W28M8U

Passwort ist das Perl UU-endodet Passwort wie in der auth.user

Unterschiede anzeigen:

lxo-import/partsB.php
1
<?php session_start(); ?>
1 2
<html>
2 3
<LINK REL="stylesheet" HREF="../css/lx-office-erp.css" TYPE="text/css" TITLE="Lx-Office stylesheet">
3 4
<body>
......
25 26
}
26 27
require ("import_lib.php");
27 28

  
28
if (!anmelden()) ende("Anmeldung fehlgeschlagen.");
29
if ($_GET["login"]) {
30
    $db = anmelden($_GET["login"],$_GET["passwd"]);
31
} else {
32
    $db = anmelden();
33
}
34
//if (!$_SESSION["db"]) ende("Anmeldung fehlgeschlagen.");
35
if (!$db) ende("Anmeldung fehlgeschlagen.");
29 36

  
30 37
/* get DB instance */
31 38
$db=$_SESSION["db"]; //new myDB($login);
32

  
33 39
/* just display page or do real import? */
34
if ($_POST["ok"]) {
40
if ($_POST["ok"] || $_GET["cron"]=="1") {
35 41

  
36 42
    require ("parts_import.php");
37 43
    //Zeichencodierung des Servers
......
92 98

  
93 99
    clearstatcache ();
94 100

  
95
    $test    = $_POST["test"];
96
    $lager    = $_POST["lager"];
97
    $TextUpd = $_POST["TextUpd"];
98
    $trenner = ($_POST["trenner"])?$_POST["trenner"]:",";
99
    $trennzeichen = ($_POST["trennzeichen"])?$_POST["trennzeichen"]:"";
100
    $precision = $_POST["precision"];
101
    $quotation = $_POST["quotation"];
102
    $quottype = $_POST["quottype"];
103 101
    $file    = "parts";
104 102

  
105
    /* no data? */
106
    if (empty($_FILES["Datei"]["name"]))
107
        ende ("Kein Datenfile angegeben");
108

  
109
    /* copy file */
110
    if (substr($_FILES["Datei"]["name"],-2)=="gz") {
111
        if (move_uploaded_file($_FILES["Datei"]["tmp_name"],$dir.$file.".csv.gz")) {
112
            echo $gz_bin.$dir.$file.".csv.gz";
103
    if ($_GET["cron"]==1) {
104
        $Cron = True;
105
        if (file_exists($dir.$file.".zip")) {
106
             exec ($zip_bin.$dir.$file.".zip");
107
        } else if (file_exists($dir.$file.".gz")) {
113 108
            exec ($gz_bin.$dir.$file.".csv.gz");
114
        } else {
115
            ende ("Upload von Datei fehlerhaft.".$_FILES["Datei"]["error"]);
116
        };
117
    } else if (substr($_FILES["Datei"]["name"],-3)=="zip") {
118
        if (move_uploaded_file($_FILES["Datei"]["tmp_name"],$dir.$file.".zip")) {
119
            exec ($zip_bin.$dir.$file.".zip");
120
        } else {
109
        } else if (!file_exists($dir.$file.".csv")) {
110
            ende($dir.$file.".csv nicht gefunden");
111
        }
112
        $_POST["trenner"] = "#9";         // Tabulator
113
        $_POST["trennzeichen"] = ";";     // Anderes Trennzeichen
114
        $_POST["dimensionunit"] = "Stck"; // Artikeleinheit
115
        $_POST["serviceunit"] = "Std";    // Dienstleistungseinheit
116
        $_POST["bugru"] = "1600";         // Std-Bugru
117
        $_POST["bugrufix"] = "2";         // Nur wenn keine Passende angegeben
118
        $_POST["shop"] = "f";             // Shopartikel
119
        $_POST["show"] = "";              // Kontrollausgabe
120
        $_POST["test"] = "";              // Testlauf == 1
121
        $_POST["lager"] = "";             // Nicht  gebraucht
122
        $_POST["lagerplatz"] = "";
123
        $_POST["precision"] = "2";        // Runden auf nn Stellen
124
        $_POST["quotation"] = "";         // Preisaufschlag
125
        $_POST["quottype"] = "P";         // Prozent?
126
        $_POST["wgtrenner"] = "!";        // Trennzeichen der Warengruppen
127
        $_POST["TextUpd"] = "1";          // Textupdate durchführen
128
        $_POST["update"] = "U";           // Bei vorhandenen Nummer updaten
129
        $_POST["ware"] = "W";             // Ist ein Artikel
130
        $_POST["encoding"] = "";
131
    } else {
132
            
133
        /* no data? */
134
        if (empty($_FILES["Datei"]["name"]))
135
            ende ("Kein Datenfile angegeben");
136

  
137
        /* copy file */
138
        if (substr($_FILES["Datei"]["name"],-2)=="gz") {
139
            if (move_uploaded_file($_FILES["Datei"]["tmp_name"],$dir.$file.".csv.gz")) {
140
                echo $gz_bin.$dir.$file.".csv.gz";
141
                exec ($gz_bin.$dir.$file.".csv.gz");
142
            } else {
143
                ende ("Upload von Datei fehlerhaft.".$_FILES["Datei"]["error"]);
144
            };
145
        } else if (substr($_FILES["Datei"]["name"],-3)=="zip") {
146
            if (move_uploaded_file($_FILES["Datei"]["tmp_name"],$dir.$file.".zip")) {
147
                exec ($zip_bin.$dir.$file.".zip");
148
            } else {
149
                ende ("Upload von Datei fehlerhaft.".$_FILES["Datei"]["error"]);
150
            };
151
        } else if (!move_uploaded_file($_FILES["Datei"]["tmp_name"],$dir.$file.".csv")) {
121 152
            ende ("Upload von Datei fehlerhaft.".$_FILES["Datei"]["error"]);
122
        };
123
    } else if (!move_uploaded_file($_FILES["Datei"]["tmp_name"],$dir.$file.".csv")) {
124
        ende ("Upload von Datei fehlerhaft.".$_FILES["Datei"]["error"]);
125
    }; 
153
        }; 
154
    }
126 155

  
127 156
    /* check if file is really there */
128 157
    if (!file_exists($dir.$file.'.csv') or filesize($dir.$file.'.csv')==0) 
......
132 161
    if (!$db->chkcol($file)) 
133 162
        ende("Importspalte konnte nicht angelegt werden");
134 163

  
135
    /* first check all elements */
136
    $_test=$_POST;
137
    $_test["precision"]=-1;
138
    $_test["quotation"]=0;
139
    $_test["lager"]=$_POST["lager"];
140
    $_test["lagerplatz"]=$_POST["lagerplatz"];
141

  
142 164
    /* just print data or insert it, if test is false */
143
    import_parts($db, $dir.$file, $trenner, $trennzeichen, $parts, FALSE, !$test, $_POST["show"],$_POST);
165
    import_parts($_SESSION["db"], $dir.$file, $parts, FALSE, $_POST);
144 166

  
145 167
} else {
146 168
    $bugrus=getAllBG($db);

Auch abrufbar als: Unified diff