Ver Mensaje Individual
  #20  
Antiguo 26-01-2015
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.806
Reputación: 22
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
Notas para hacer un poco mas legible tu código:

Cada línea empieza por "Dmodulo."
Esto sugiere que todo este procedimiento debería ser parte del DataModule y no de Form que lo llama.

Código Delphi [-]
begin
   DModulo.InsertarEnMySQL;
end;

proceudre  TDModulo.InsertarEnMySQL;
begin
RegistroMadre2.SQL.Clear ;
RegistroMadre2.SQL.Add('select * from RegistroMadre ');
RegistroMadre2.Open;

RegistroMadre2.First;
       while not RegistroMadre2.Eof do
             begin

                 if RegistroMadre2.FieldByName('NumeroCuenta').AsString>'' then

                 begin
                     Dias_M_I.SQL.Text:=Dias_M_I.InsertSQL.Text;
                     Dias_M_I.ParamByName('CEDULA').AsString:=RegistroMadre2.FieldByName('Cedula').AsString;
                     Dias_M_I.ExecSQL;
                     Dias_M_I.SelectSQL.Text:=('select * from RegistroMadre ');
                     SHOWMESSAGE('A sido Insertado');
                 end;
       RegistroMadre2.Next;
       end;
       ibt.Commit;
end;

Luego además podrías utilizar "with do" para mejorarlo incluso un poco mas:

Código Delphi [-]
proceudre  TDModulo.InsertarEnMySQL;
begin
with RegistroMadre2 do
begin
   SQL.Clear ;
   SQL.Add('select * from RegistroMadre ');
   Open;
   First;
       while not Eof do
             begin
                 if FieldByName('NumeroCuenta').AsString>'' then
                 begin
                     Dias_M_I.SQL.Text:=Dias_M_I.InsertSQL.Text;
                     Dias_M_I.ParamByName('CEDULA').AsString:=FieldByName('Cedula').AsString;
                     Dias_M_I.ExecSQL;
                     Dias_M_I.SelectSQL.Text:=('select * from RegistroMadre ');
                     SHOWMESSAGE('A sido Insertado');
                 end;
       Next;
       end;
       ibt.Commit;
   end;
end;

Supongo además que la sentencia InsertSQL de la tabla DIAS_M_I necesitará más parámetros.
Algo así como "INSERT INTO REGISTRO HIJO (ID, NOMBRE, CEDULA) VALUES (:ID, :NOMBRE, :CEDULA)"
Esos parámetros también deberás asignarlos, o se insertarán como nulos o "vacíos".
Responder Con Cita