Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Copiar registro (https://www.clubdelphi.com/foros/showthread.php?t=10142)

JLedian 11-05-2004 18:07:19

Copiar registro
 
Hola
Ante mano darles las grasias por disponer de su tiempo para tratar de aclararme la duda. De veras que les estaré muy agradecido.
Les explico ... tengo una tabla en acces con los sgtes campos( Usuario, Clave, a, b, c) todos de tipo cadena; donde a, b, c son accesos que le doy al usuario y lo que necesito es a la hora de registrar un nuevo usuario tener la opcion de duplicar los accesos de otro usuario, digamos por ejemplo que estoy registrando al Usuario jose y quiero darle los mismos accesos que tiene uno ya registrado llamado josé.

procedure TDuplicarForm.FormShow(Sender: TObject);
var
i : integer;
begin
TRY
DM.ADOTblAcc.Open;
for i :=1 to (DM.ADOTblAcc.RecordCount) do
begin
ComboBox1.Items.Add(DM.ADOTblAccUsuario.AsString);
DM.ADOTblAcc.Next;
end;
FINALLY
DM.ADOTblAcc.Close;
END;
end;

procedure TDuplicarForm.Button1Click(Sender: TObject);
begin
{a qui es donde trato de hacer lo que antes les explique per no lo llego a conseguir}
DM.ADOTblAcc.Open;
If DM.ADOTblAcc.Locate('Usuario',ComboBox1.Text,[loCaseInsensitive]) then
begin
DM.ADOTblAcc.Append;
DM.ADOTblAccUsuario.AsString := UsuariosForm.Edit1.Text;
DM.ADOTblAccClave.AsString := UsuariosForm.Edit2.Text;
DM.ADOTblAcca.AsString := DM.ADOTblAcca.AsString;
DM.ADOTblAccb.AsString := DM.ADOTblAccb.AsString;
DM.ADOTblAccc.AsString := DM.ADOTblAccc.AsString;
DM.ADOTblAcc.Post;
end;
end;

Pero a desir verdad no es lo que consivo. me da un error ..
Bueno miles de grasias ...
Ledian

santana 11-05-2004 18:18:48

Hola, JLedian.

¿Cual es el error que te da?

Y por otra parte....

Te estaría particularmente agredecida si dispusieras de unos minutos para leer la guía de estilo de los foros. Y tampoco estaría de más que utilizaras las etiquetas
Código Delphi [-]
...
para mostrar correctamente el código y hacerlo más legible.

Gracias y un saludo.

roman 11-05-2004 18:20:02

JLedian

Te doy la bienvenida a los foros y te recomiendo algunas cosas para que saques el mayor provecho posible de ellos:

1. Lee la guía de estilo (enlace en la pate superior derecha)
2. Utiliza la etiqueta [ delphi ] para presentar tu código correctamente indentado y coloreado. (Ver aviso que aparece al principio de cada foro)
3. Coloca tus mensajes en los foros apropiados (éste corresponde más al de "Conexión con bases de datos")
4. Sé claro en la exposición de tu problema. Decir simplemente "me da un error" no ayudará a quienes puedan ayudarte. Describe el error con precisión así como lo que esperas. Algo como "a desir verdad no es lo que consivo" no nos ayuda a saber en qué puede consistir e problema.

// Saludos

jachguate 11-05-2004 18:22:51

Hola JLedian.

en primer lugar bienvenido a los foros. Te recomiendo la lectura de la guia de estilo (vínculo en mi firma) y que aprendas el uso de las etiquetas [ code ] [ delphi ] y [ sql ] para publicar trozos de código correctamente indentados y hasta con la sintaxis resaltada.

Podes editar tu post para conseguir este efecto con los trozos ya publicados, con lo que es mas probable que obtengas respuesta a tus preguntas, pues regularmente los trozos de código publicados como el tuyo se hacen poco legibles y son pocos los que se dan a la tarea de interpretarlos.

Con respectua tu problema, parece que estas tratando de "duplicar" los valores desde la tabla usando el mismo Dataset. Esto es imposible, pues al llamar a Append, se crea un nuevo registro y el DM.ADOTblAcca.AsString simplemente devolverá una cadena vacia, pues está apuntando a un registro nuevo.

Antes de hacer el append podes almacenar los valores en variables y asignarlos desde alli, o bien usar otro DataSet para la misma tabla, y que apunte al registro que queres duplicar.

Hasta luego.

;)

Hasta luego.

;)

jachguate 11-05-2004 18:25:28

:D :D

Al menos has llamado la atención a varios moderadores al mismo tiempo... :D :D


La franja horaria es GMT +2. Ahora son las 13:43:08.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi