Entwickler-Ecke

Datenbanken - Mit "BatchMove" Befehl / Nur Felder mit Inhalt upd


CompData - Di 23.07.02 16:13
Titel: Mit "BatchMove" Befehl / Nur Felder mit Inhalt upd
Hallo Leute!

Habe folgendes Problem: Möchte mit dem "BatchMove" Befehl 2 Tabellen abgeleichen. Habe in der Ausgangstabelle die gleichen Felder wie in der Zieltabelle. Ich möchte allerdings nur die Felder abgleichen in denen in der Ausgangstabelle etwas eingetragen ist. Gibts da irgendwelche fetigen Lösungen. Bin für Jede Hilfe dankbar!


Steffer - Di 23.07.02 17:43

Nö, geht nicht .. BatchMove haut dir imho entweder alles oder nix rüber. Ev. kannst du noch mal nach dem UpdateMode schauen.

Aber so sollte es gehen.

Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
var Z : Integer;
FC : Integer;
begin
FC:= Table1.FieldCount;      
while not Table1.EOF do
begin
Table2.Edit;
for Z:= 0 to FC do
if not Table1.Fields[Z].IsNull
then Table2.Fields[Z]:= Table1.Fields[Z];
Table2.Post;
Table1.Next;
///Hier muss eine Regelung für Table2 her ..
end;


Du must halt jetzt mal schauen ob du dich im Table2 genauso wie in Table bewegen kannst. Ev. ist ein anderer Index, andere Anzahl von Datensätzen ....