### Zuerst wurden neue Daten gefunden, geladen und lokal gespeichert. Dies klappt (sehr schnell)
sub eintragen{ ### Wird bei jeder aktualisierten Datei aufgerufen...
$file = "produktdaten/$PartnerID.dat";
print "FILE: $PartnerID
";
$dbh->do (qq~DELETE FROM `Produktdaten` WHERE `PartnerID` = '$PartnerID'~); ### Alte Einträge dieses Partners löschen
my $sql = qq{insert into Produktdaten(PartnerID, Bezeichnung,Kurzbeschreibung,Beschreibung,Preis,alterPreis,Waehrung,Keywords,Bild_kl,Bild_mittel,Bild_gross,Deeplink,gueltig_von,gueltig_bis,status,lieferzeit,Bedingungen,Hersteller,Brand,Partner_Kategorie, aktualisiert, laufendeNummer) values (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)};
my $stheintragen = $dbh->prepare( $sql );
open(FILE, "$file") or die "Could not open $file: $!\n";
while (defined (my $ZEILE = )) { ### Zeilenweise neue Daten aus der CSV einlesen
......
Nun werden die Einzelnen Zeilen bearbeitet / angepasst. Z.B. Datum in Sekunden wandeln, Komma in Punkt wandeln, etc...
......
(undef, undef, $MerchantProductNumber, $Bezeichnung, $Preis, $alterPreis, $Waehrung, $update, $gueltig_von, $gueltig_bis, $kurzbeschreibung, $Beschreibung, $status, $Partner_Kategorie, undef, $Bild_kl, $Bild_mittel, $Bild_gross, $Hersteller, $Deeplink, undef, undef, $lieferzeit, $Bedingungen, $EAN) = split(//, $ZEILE);
if ($update =~ " "){ ### Zur Sicherheit. Einige Datumsangaben haben ein anderes Format
($datum, undef) = split(/ /, $update);
&sekunden;
$update = $sekunden;
}
if ($gueltig_von =~ " "){ ### Zur Sicherheit. Einige Datumsangaben haben ein anderes Format
($datum, undef) = split(/ /, $gueltig_von);
&sekunden;
$gueltig_von = $sekunden;
}
if ($gueltig_bis =~ " "){ ### Zur Sicherheit. Einige Datumsangaben haben ein anderes Format
($datum, undef) = split(/ /, $gueltig_bis);
&sekunden;
$gueltig_bis = $sekunden;
}
$laufendeNummer++;
$stheintragen->execute($PartnerID, $Bezeichnung,$kurzbeschreibung,$Beschreibung,$Preis,$alterPreis,$Waehrung,$Keywords,$Bild_kl,$Bild_mittel,$Bild_gross,$Deeplink,$gueltig_von,$gueltig_bis,$status,$lieferzeit,$Bedingungen,$Hersteller,$Brand, $Partner_Kategorie, $update, $ID)|| die "Database connection not made: $DBI::errstr";
} ## Ende der ZEILE
$stheintragen->finish();
} ## ENDE sub -> Ende der neuen Datei