Ir al contenido



Foto

PASAR UN REGISTRO DE LA BASE DE DATOS A UN DBEDIT

DELPHI

  • Por favor identifícate para responder
2 respuestas en este tema

#1 Josue Tejeda

Josue Tejeda

    Newbie

  • Miembros
  • Pip
  • 3 mensajes

Escrito 06 abril 2019 - 04:47

Buenas Tardes Colegas, Tengo una simple consulta:

 

Componentes que estoy usando en Embarcadero es Unidac para la version de rio.

Gestor de Base de Datos uso SQL Server

 

Formularios que Tengo creados.

 

Form Encargado                    (SQL Server) La Tabla se Llama Representante.

dbeditnombre                          id_representante es un campo int autoincrementado.(Llave Primaria)

dbeditapellido                          nombre                                

dbeditprofesion                       apellido

ect..                                         profesion.

 

 

Form Alumno                 (SQL Server) La Tabla se Llama Alumno

dbeditnombre                         id_alumno Llave primaria

dbeditapellido                         nombre

dbeditId_representante          apellido

                                               id_representante como llave foranea

 

Mi duda es cuando yo creo un registro de un encargado automaticamente se crea el id_representante en la base de datos,

cuando yo quiero crear un registro de un alumno yo necesito colocarle el id del ultimo encargado registrado en la base de datos.

 

con esta simple sentencia yo puedo traer el ultimo registro.

conex.unqryrepre.SQL.Add('SELECT MAX(id_representante) as max from representantes');

 

Pero mi problema es que no tengo muy claro si se pueda pasar ese valor a un dbedit o  se debe usar un edit normal.

he probado de esta manera y no me funciona nada.

conex.unqryrepre.ParamByName('id_representante').AsString:=edtCrepre.Text;
edtCrepre:=conex.unqryrepre.FieldByName('id_representante').AsString;

 

estoy estancado por esta parte y necesito de su apoyo.

de antemano muchas gracias, he rebuscado por todo internet y en portuges, ingles haber si encontraba algo que me sirviera pero he fracasado.

 

 


  • 0

#2 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 13.948 mensajes
  • LocationMéxico

Escrito 08 abril 2019 - 11:28

Hola Josue
 
No tengo el contexto completo, pero si ya estas obteniendo el ID del representante lo puedes asignar al estudiante directamente al campo ID_REPRESENTANTE del alumno, pero..... debes de tener el registro del alumno en estado Edit o Insert para que lo puedas asignar, 
 
 

delphi
  1. conex.unqryAlumno.Insert;  
  2. conex.unqryAlumno.FieldByName('id_representante').AsString; :=
  3. conex.unqryrepre.FieldByName('id_representante').AsString;

 
 
Con ésto el ID ya estará asignado al DBEdit correspondiente sin que hagas nada, por supuesto que el DBEdit tendrás que asignar las propiedades DataSource y DataField correspondientes.
 
Saludos
  • 0

#3 Josue Tejeda

Josue Tejeda

    Newbie

  • Miembros
  • Pip
  • 3 mensajes

Escrito 08 abril 2019 - 07:10

Hola Josue
 
No tengo el contexto completo, pero si ya estas obteniendo el ID del representante lo puedes asignar al estudiante directamente al campo ID_REPRESENTANTE del alumno, pero..... debes de tener el registro del alumno en estado Edit o Insert para que lo puedas asignar, 
 
 


delphi
  1. conex.unqryAlumno.Insert;  
  2. conex.unqryAlumno.FieldByName('id_representante').AsString; :=
  3. conex.unqryrepre.FieldByName('id_representante').AsString;

 
 
Con ésto el ID ya estará asignado al DBEdit correspondiente sin que hagas nada, por supuesto que el DBEdit tendrás que asignar las propiedades DataSource y DataField correspondientes.
 
Saludos

 
 
Muchas Gracias por tomarte el tiempo en contestar mi duda, ahorita me encuentro en clase en la universidad, cuando llegue a casa voy a probar. mil gracias de antemano.
  • 0





Etiquetado también con una o más de estas palabras: DELPHI