Zitat von
marabu:
Hallo Manfred,
Ich denke, für so eine einmalige Aufgabe muss nicht unbedingt ein Programm erstellt werden. Ein paar ALTER TABLE und UPDATE Statements tun da auch ihren Zweck.
Grüße vom marabu
Hallo marabu
bei einer einzelnen
DB hast Du natürlich recht. Da ich aber vor ca. 1/2 Jahr schon eine
DB
frtiggestellt habe die nun von einigen Leutet ( weiss nicht wie viel, da das Programm "frei" ist ) eingesetzt
wird. Muss ich eine Importfunktion in meiner neuen
DB haben.
Wie Du dem Code sichrlich entnehmen kannst binn ich mir nicht ganz sicher auf welchem Wege ich das bewerkstelligen kann / soll.
Die Theorie ist mir eigentlich klar, nur die umsetzung hapert noch.
Womöglich kannst Du mir einen Tippp geben ob ich was vergesse oder falsch mache?
1. mit dem stelle ich die Verbindung zur Datenbank her:
Delphi-Quellcode:
DM.pFIBDB_Gideons.Connected := True;
DM.pFIBDS_NursingH.Open;
// DM.pFIBDS_NursingH_D.Open;
// DM.pFIBDS_NursingH_DD.Open;
if not DM.pFIBDS_Camps.Active then DM.pFIBDS_Camps.Open;
2. hier soll eine "schleife" gestartet werden und die Variablen old_id / new_id
Delphi-Quellcode:
try
DM.ADOT_nursh_imp.First;
for i := 0 to DM.ADOT_nursh_imp.RecordCount -1 do begin
old_id:= Dm.pFIBDS_NursingH.FieldByName('ID').AsInteger;
new_id:= CreateClassID;
//new_id:= StringReplace(old_id,(''+(CreateClassID)) [rfReplaceAll, rfIgnoreCase]);
// SELECT NURSING_H_D.ID_AREA FROM NURSING_H_D WHERE ID_AREA = 25
3. hier soll dem Feld ID in NursingH eine
GUID zugeteilt werden und die gleiche in ( das momentan auskommentierte Feld ) NursingH_D ID_AREA:
Delphi-Quellcode:
DM.pFIBDS_NursingH.Edit;
DM.pFIBDS_NursingH.FieldByName('ID').AsString := new_id;
DM.pFIBDS_NursingH.Post;
//DM.pFIBDS_NursingH_D.FieldByFieldNo(old_id);
//DM.pFIBDS_NursingH_D.Insert;
//DM.pFIBDS_NursingH_D.FieldByName('ID_AREA').AsString:= new_id;
//DM.pFIBDS_NursingH_D.Post;
DM.ADOT_nursh_imp.Next;
Nach meiner Meinung liegt im 3. das Problem.
Kanst Du mir sagen ob meine Überlegung richtig ist?
Wenn ich mit
new_id:= CreateClassID;
eine Variable erstelle und diese dann 2x Verwende nimmt er dann die
gleiche
GUID?
Bei der ausführung des obigen Codes erhalte ich immer die Meldung:
" is not a Valid integer value
Kannst Du mir hier weiterhelfen?
Manfred