Delphi - Quisiera una Ayudita please

 
Vista:
sin imagen de perfil

Quisiera una Ayudita please

Publicado por Maty (16 intervenciones) el 21/07/2005 07:15:34
Saludos.
Tengo un problema que quiero solucionar con ayuda de ustedes, en mi compañia hay un Sistema de Seguros elaborado en Clipper 5 que es manejado por todos los deptos. de ella, el problema es el siguiente: debo hacer una aplicacion para generar carnets trimestrales, cada 6 meses y anuales, ya tengo la aplicacion hecha en delphi con Interbase, lo que necesito es conectar las tablas que tienen la informacion que necesito para capturarlas en Delphi en tiempo real para imprimer los carnet, ya que en clipper existen las tablas de todos los afiliados y quiero hacer algo que se conecte en linea para poder imprimr esos carnet..

atte. Maty
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Quisiera una Ayudita please

Publicado por BigLuis (713 intervenciones) el 21/07/2005 10:24:21
Lo mejor que puedes hacer es utilizar IBPump. Una utilidad gratuita que puedes descargar de esta pagina (es la ultima de abajo) y te vuelca los datos de varias bases de datos a Interbase. Es realmente buena y potente aunque en un principio te resulte algo liosa. Practica con ella y veras los resultados.
http://www.clevercomponents.com/products/
Suerte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Otra Preguntita

Publicado por MAty (16 intervenciones) el 22/07/2005 05:21:26
Gracias por tu ayuda y lo probare. Disculpa mi insistencia, pero tengo una forma con un campo edit1 y deseo saber en cual evento activo para que cuando entre un dato este busque si existe o no en la base de datos yo queria desde que llenara el campo cuando le de a la tecla <ENTER> buscara si existe o no informacion,aqui esta el codigo para que tengas una idea, tu ayuda es muy agradecida de antemano:

if key = chr(vk_return) then
begin
if not DMdata.Tpersonal.Locate('NUMERO',edit1.text,[]) then
begin
label1.Caption:='Adicionando';
dbedit2.clear;
dbedit3.clear;
DMdata.Tpersonal.Insert;
wwDBDateTimePicker1.SetFocus;
end
else
begin
label1.Caption:='Modificando';
dbedit2.text:=dMdata.TpersonalCEDULA.Text;
dbedit3.text:=dMdata.TpersonalDIRECCION1.Text;
dbnedit2.SetFocus;
end;

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Otra Preguntita

Publicado por BigLuis (713 intervenciones) el 22/07/2005 10:15:38
Hola Maty, te voy a decir mi parecer, pero cuidado que no tiene porque ser el correcto, sinplemente es el mio.
Respecto a tu codigo
if key = chr(vk_return) then
begin
if not DMdata.Tpersonal.Locate('NUMERO',edit1.text,[]) then
begin
label1.Caption:='Adicionando';
dbedit2.clear;
dbedit3.clear;
DMdata.Tpersonal.Insert;
wwDBDateTimePicker1.SetFocus;
end
else
begin
label1.Caption:='Modificando';
dbedit2.text:=dMdata.TpersonalCEDULA.Text;
dbedit3.text:=dMdata.TpersonalDIRECCION1.Text;
dbnedit2.SetFocus;
end;
Los DBEdit si les tienes referenciados a la tabla y al campo no importa invoque el metodo CLEAR ya que al insertar un nuevo registro automaticamente se convierte el contenido en null o ''.En la segunda parte, te falta DMdata.Tpersonal.Edit; y te digo lo mismo con los DBEdit, ellos solos toman automaticamente el contenido del campo que tenene asignado.
Mi consejo es que realices la comprobacion en un metofo o funcion aparte, por ejemplo una funcion que te devuelva verdadero o falso dependiendo si el registro ya existe o no y esta la puedes implementar con una consulta SQL que tras ejecutarla comprueba el RecordCount>0.De esta forma la puedes utilizar las veces que quieras desde donde quieras.Podria quedar asi: Function Duplicado(dato:String):Boolean; begin Query1.Close;Query1.SQL.Clear;Query1.SQL.Add('Select * from tabla where numero=:Num');Query1.Parambyname('Num').asstring:=dato;Query1.Open;If Query1.RecordCount>0 then Result:=True else Result:=False; end;

if key = chr(vk_return) then
begin
if Duplicado(Edit1.Text) then
begin
label1.Caption:='Modificando';
DMdata.Tpersonal.Edit;
dbnedit2.SetFocus;
end
else
begin
label1.Caption:='Adicionando';
DMdata.Tpersonal.Insert;
wwDBDateTimePicker1.SetFocus;
end;
end;
Suerte

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

RE:Otra Preguntita

Publicado por Maty (16 intervenciones) el 22/07/2005 20:21:21
Muchisimas Gracias Big Luis por tu sugerencia: Fue que se me paso lo del DMdata.Tpersonal.Edit, lo que quiero saber es que si puedo hacerlo con el evento onkeypress del Primer campo de Edicion "edit1" , cualquier cosa me haces saber y muchas gracias...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Otra Preguntita

Publicado por BigLuis (713 intervenciones) el 23/07/2005 10:26:04
Yo lo pondría en el evento OnExit del TEdit, piensa que en el OnKeyPress se dispara cada vez que pulsas una tecla.
Suerte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar