Michimu: Wer kennst Datanorm? ...konvertieren in eine MySQL-DB

Hallo,

beschäftige mich nun schon einige Zeit mit dem Gedanken Datanorm-Daten in meine MySQL-DB einzulesen, jedoch hab ich wircklich keine Ahnugn wo, wie und mit was ich das machen soll.
SChreibe fast alles mit PHP...

Wer von euch kennt Datanorm und kann mir sagen, wie ich diese Daten so bearbeiten kann bzw. ein PHP schreiben kann, womit ich diese Datanormdaten in meine MySQL DB bekomme.

Habe schon viel versucht zu informieren, aber bisher alles nur müll gewesen oder Demoprogramme womit mann Datanormdaten in eine z.B. Access-DB bekommt. Aber a sind diese meistens Zeitlich begrenzt und Access kann mit Sicherheit keine 40.000 Artikel aufnehmen bzw. damit vernünftig noch arbeiten über eine ODBC Schnittstelle.
Problem dabei ist, es werden nicht nur 40.000 Artikel bleiben, schätzungsweise werden es an die 200.000 Artikel werden die dann hinterlegt werden sollen.

Wenn du Datanorm noch nicht kennst, aber die das Problem interessiert, kannst du Dir z.B. eine Datanormdatei unter dieser Adresse (zufällig gefunden :-) ) mal runterladen und Dir den Aufbau mal ansehen:

http://www.jung-pumpen.de/down/datanorm04.001

Ich wäre echt super dankbar, wenn einer von euch dazu mir was sagen könnte.

Vielen vielen dank...

Gruß
Michimu

  1. Hi,

    ist doch ganz einfach!
    Das sind CSV-Daten, d.h. Du kannst sie sogar direkt importieren!
    Guck Dir mal phpmyadmin an, damit kannst Du das ohne jegliche großartige Vorkenntnisse!

    Gruß
    Reiner

    1. Das sind CSV-Daten, d.h. Du kannst sie sogar direkt importieren!
      Guck Dir mal phpmyadmin an, damit kannst Du das ohne jegliche großartige Vorkenntnisse!

      Hallo Rainer,

      naja, vom prinzip her hast du Rest, aber Datanormdaten sind etwas anderes aufgebaut als nrumale DB-Datensätze.
      Ein Beispiel:

      lfd   ANR   Art  Inhalt                          Euro
      001   1000   T   Blauer Hacken
      002   1001   T   Grüner Hacken
      003   1000   A   Baluer Hacken m. Langtext       1000,00
      004   1001   A   Grüner Hacken m. Langtext       2000,00

      Fällt Dir da was auf ?
      Also nach meinem Verständnis ist dann in dieser Datei für jede z.B. MySQL-Datenreihe sprich eine Zeile in der Daternormdatei mehere Zeilen vorhanden. Diese "meherer" Zeilen muß ich irgendwie konvertieren , so daß aus mehrere Zeilchen eine wird. Die ist leider nur über z.B. "ANR" möglich zu selektieren...

      Immer noch einfach ?  :-))

      Michimu

      1. Hello,

        Datanorm wurde für den SHK-Handel (Scheiße, heiße Luft, Kohlen) entwickelt und hat seine Ursprünge in der COBOL-Programmierung. Folglich wird nicht mit vollständig normalisierten Daten, sondern ganz im Gegensatz, mit kumulierten Daten in verschiedenen Satzarten gearbeitet.

        Ein Beispiel:

        lfd   ANR   Art  Inhalt                          Euro
        001   1000   T   Blauer Hacken
        002   1001   T   Grüner Hacken
        003   1000   A   Baluer Hacken m. Langtext       1000,00
        004   1001   A   Grüner Hacken m. Langtext       2000,00

        Ich habe hier noch ne uralte Datanom 3.0 rumfliegen. Habe fürher Datenübernahmeprogramme für dBase und SQL-Datenbaneken geschrieben.

        Satzarten sind:

        V  Vorlaufsatz
        K  Kundennummern-Kontrollsatz
        S  Haupt-Warengruppensatz
        R  Rabattsatz
        A  Hauptsatz 1
        B  Hauptsatz 2
        C  Lesitungs-Satz
        D  Dimensionssatz
        T  Langtextsatz
        E  Langtextsatz
        J  Artikelsatz
        P  Preisänderungssatz

        Im wesentlichen werden diese Satzarten auch heute noch existieren. Ich befürchte nur, dass eingige Dazugekommen sind (Grafiken, Bilder)

        Du müsstest also mal googlen, was die neueste (bzw. für Dich gültige) Version ist (wahrscheinlich 73 oder so *g*) und Dir die Satzbeschreibung ziehen. Sonst siehst Du keine Sonne.

        Die Vorgehensweise ist später ganz einfach. Der Vorlaufsatz gibt den Anfang an. dann wird angereiht. Du musst also immer den nächsten Vorlaufsatz suchen und dem eine Prim_ID geben. Von da ab kann man nur dissoziieren bis zum nächsten Vorlaufsatz. Datanorm ist in der logischen Datenanordnung Satzgruppen-sequentiell aufgebaut. Was zusammengehört, steht auch hintereinander.

        Bei Bedarf kannst Du gegen Honorar auf mich zurückkommen. Das sprengt sonst bei weitem dieses Forum.

        Liebe Grüße aus http://www.braunschweig.de

        Tom

        --
        [ Computer-Camp für PHP-Anwender in den Sommerferien. Programmieren,
          Sport, Fun, Fete. Teilnehmermindestalter Gruppe 1: 14 Jahre
          Mindestalter Gruppe 2+3 18 Jahre, Info bei mir ]
        Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
        1. Hello,

          Im wesentlichen werden diese Satzarten auch heute noch existieren. Ich befürchte nur, dass eingige Dazugekommen sind (Grafiken, Bilder)

          Du müsstest also mal googlen, was die neueste (bzw. für Dich gültige) Version ist (wahrscheinlich 73 oder so *g*) und Dir die Satzbeschreibung ziehen. Sonst siehst Du keine Sonne.

          Erstaunen: Die Version 5.0 ist per 1. Mai 1999 erschienen, Übergangsfrist bis Ende 2001. http://www.eds.co.at/2f/#link_3

          Ich denke aber, dass Du auch die Branche wissen musst.

          Liebe Grüße aus http://www.braunschweig.de

          Tom

          --
          [ Computer-Camp für PHP-Anwender in den Sommerferien. Programmieren,
            Sport, Fun, Fete. Teilnehmermindestalter Gruppe 1: 14 Jahre
            Mindestalter Gruppe 2+3 18 Jahre, Info bei mir ]
          Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
      2. yo,

        Diese "meherer" Zeilen muß ich irgendwie konvertieren , so daß aus mehrere Zeilchen eine wird.

        ich arbeite zur zeit an einem oracle projekt, dass ein ähnliches problem hat wie du, mehrere physische datensätze zu einem logischen zusammenzufügen, wobe aus einem physischen auch mehrere logische enstehen können. selbst mit den sqlloader ging das nicht so einfach. letztlich habe ich vieles erst einmal in hifstabellen eingelesen und dann mit PL/SQL in die ensprechenden tabellen geladen.

        ich denke mal, du wirst ähnlich vorgehen müssen, dir hilftstabellen bauen, in der du erst einmal alle daten sinnvoll einliesst (nach entitäten aufgeteilt) und es dann durch ein script laufen läßt, um sie in die richtigen tabellen zu bekommen.

        Ilja