[gelöst]Dataport - "Feld darf nicht leer sein"

31. Januar 2012 14:49

Hallo Zusammen,

ich steh vor nem kleinen Problem.
Ich schreib grad für ne Datenübernahme nen Dataport.
Ich exportiere mir aus ner 370 DB die Daten aus einer Tabelle und möchte die in 2009 R2 in eine andere Übernahmetabelle einlesen.
Beim Import sagt er mir "Das Feld darf nicht leer sein. Geben Sie bitten einen Wert ein."

Ich hab die Seperatoren umgestellt und weiterprobiert....Immer wieder diese Meldung...Der Debugger springt noch nicht mal an. Hat jemand von euch schon mal das Problem gehabt und kann mir eine auf'n Hinterkopf geben, damit ich auch auf die Lösung komme?
Zuletzt geändert von sweikelt am 31. Januar 2012 15:22, insgesamt 1-mal geändert.

Re: Dataport - "Feld darf nicht leer sein"

31. Januar 2012 14:52

Die Meldung scheint von der Tabelle (Feldeigenschaft NotBlank) zu kommen, in die du importieren möchtest. Kann es sein, dass die Felder hierfür nicht in der Reihenfolge Primärschlüsselfelder, weitere Felder importiert werden?
Sonst programmiere das INSERT manuell aus (hierfür u.a. die DataItem-Eigenschaften AutoSave, AutoUpdate und AutoReplace auf No setzen).

Re: Dataport - "Feld darf nicht leer sein"

31. Januar 2012 14:59

hmm, danke für die schnelle Antwort,

hab die Properties alle auf no gesetzt, alle keys aus der ursprungstable eingefügt und trotzdem will er's nicht importieren.

inwiefern soll ich das insert mauell ausprogrammieren?+

ich werd mir die zieltable nochmals als txt ausgeben und die fieldeigenschaften ändern...mal sehen, ob's dann klappt...soll ja nur stupide die daten reinschreiben, damit ich damit weiterarbeiten kann

Re: Dataport - "Feld darf nicht leer sein"

31. Januar 2012 15:03

sweikelt hat geschrieben:inwiefern soll ich das insert mauell ausprogrammieren?

Sobald du die Eigenschaften alle auf No gesetzt hast, importiert der Dataport nicht mehr.
Die Felder werden im OnAfterImport-Trigger aber sehr wohl gefüllt. Hier hast du die Möglichkeit, alles nochmal inhaltlich zu prüfen und dann ein INSERT/MODIFY abzusetzen.
Versuche dich daran bitte nicht, wenn du dich nicht mit C/AL und Records auskennst.


Was meinst du mit
sweikelt hat geschrieben:alle keys aus der ursprungstable eingefügt
bzw. wie kommst du darauf?
Und was ist mit meine Frage
Natalie hat geschrieben:Kann es sein, dass die Felder hierfür nicht in der Reihenfolge Primärschlüsselfelder, weitere Felder importiert werden?

Mir ging es nicht um falsche Schlüssel, sondern um die Reihenfolge deiner Dataport-Fields. Diese solltest du ggf. anpassen (falls ich den Grund richtig vermute).
All dies spielt aber eh keine Rolle mehr, sofern du den Import ausprogrammierst.

Re: Dataport - "Feld darf nicht leer sein"

31. Januar 2012 15:22

nunja,

ich habe eine table aus einer 370-datenbank....ich möchte in eine neue 2009 R2 db die daten aus dieser table importieren.
dazu habe ich mir die table aus 370 "kopiert" (nur die felder(incl. properties), kein code)

nun habe ich in 370 nen dataport mit dem ich daten ausgebe und in 2009 einen, der daten einliest.

beim einlesevorgang hakt es dann.

Kann es sein, dass die Felder hierfür nicht in der Reihenfolge Primärschlüsselfelder, weitere Felder importiert werden?

deine vermutung, dass die daten aus 370 in einer falschen reihenfolge ausgegeben wurden, verstehe ich....warum ich die keys aus der 370 table in die 2009 table geholt habe, kann ich nicht sagen...hab's einfach gemacht.

jetzt meine frage: wie kann es sein, dass die reihenfolge nicht stimmt, wenn alles gleich aufgebaut ist(das wusstest du ja nicht)?

ps: ich hab den übeltäter gefunden....ich hätte mir die datensätze aus der ursprungstable mal anschauen können....schon der erste ist inkonsistent....bitte frag mich nicht wie es dazu kommen kann ....es ist anscheinend einfach so....

also problem gelöst ;) ...aber ohne deinen schlag auf den hinterkopf wäre ich auf die fieldproperty (notblank) nie gekommen....betriebsblindheit ist blöd :/

pps: jetzt verstehe ich deinen satz, des "ausprogrammieren" des inserts
...wenn du dich nicht mit C/AL und Records auskennst
=> bin kein profi, aber man wächst an seinen aufgaben ... als anwendungsentwickler