![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|
|
#1
|
||||
|
||||
|
una cosa estas iroduciendo la informacion en un DBEdit???
si lo tienes ligado elproblema es que estas modificando la informacion del registro actual de todas maneras porque no pones el trozo de codigo especifico o enviamelo al correo porque ya estoy un poco a ciegas
__________________
Gami ------------------------------------------------------------------ La necesidad no tolera tardanzas pero mas vale tarde que nunca |
|
#2
|
|||
|
|||
|
Busque con Locate
Ok, voy a poner el código que escribí...
Gracias. |
|
#3
|
|||
|
|||
|
Busque con Locate
En el evento OnKeyPress del DBEdit (donde cargo el Nºde Factura), escribí:
[code] procedure TForm14.DBEdit2KeyPress(Sender: TObject; var Key: Char); Var n,m,o,p:Variant; begin If Key=#13 Then begin ModuloDatos.TblPagos.Active:=True; ModuloDatos.TblFacturas.Active:=True; ModuloDatos.TblFacturas.Locate('NFactura',DBEDit2.Text,[]); n:=ModuloDatos.TblFacturas.FieldValues['NFactura']; m:=ModuloDatos.TblFacturas.FieldValues['Usuario']; o:=ModuloDatos.TblFacturas.FieldValues['Periodo']; p:=ModuloDatos.TblFacturas.FieldValues['Precio']; ModuloDatos.TblPagos.FieldValues['NFact']:=n; ModuloDatos.TblPagos.FieldValues['Usuario']:=m; ModuloDatos.TblPagos.FieldValues['Periodo']:=o; ModuloDatos.TblPagos.FieldValues['Importe']:=p; Confirmar.SetFocus; end; /[code] Bueno ese es el código, donde tengo problema... Gracias, saludos.- |
|
#4
|
|||
|
|||
|
Busque con Locate
Perdón me equivoqué con las etiquetas:
Código:
procedure TForm14.DBEdit2KeyPress(Sender: TObject; var Key: Char);
Var
n,m,o,p:Variant;
begin
If Key=#13 Then
begin
ModuloDatos.TblPagos.Active:=True;
ModuloDatos.TblFacturas.Active:=True;
ModuloDatos.TblFacturas.Locate('NFactura',DBEDit2.Text,[]);
n:=ModuloDatos.TblFacturas.FieldValues['NFactura'];
m:=ModuloDatos.TblFacturas.FieldValues['Usuario'];
o:=ModuloDatos.TblFacturas.FieldValues['Periodo'];
p:=ModuloDatos.TblFacturas.FieldValues['Precio'];
ModuloDatos.TblPagos.FieldValues['NFact']:=n;
ModuloDatos.TblPagos.FieldValues['Usuario']:=m;
ModuloDatos.TblPagos.FieldValues['Periodo']:=o;
ModuloDatos.TblPagos.FieldValues['Importe']:=p;
Confirmar.SetFocus;
end;
|
|
#5
|
||||
|
||||
|
la verdad no entiendo muy bien lo que quieres lograr pero lo que si veo es que no validas la respuesta del locate y una vez que sales de el modificas los valores de la tabla te aconsejaria probar una cosa como
Código:
procedure TForm14.DBEdit2KeyPress(Sender: TObject; var Key: Char);
Var
n,m,o,p:Variant;
begin
If Key=#13 Then
begin
ModuloDatos.TblPagos.Active:=True;
ModuloDatos.TblFacturas.Active:=True; //esto te colocara en la primera pos
//aqui validas si realmente ha sido encontrado
if ModuloDatos.TblFacturas.Locate('NFactura',DBEDit2.Text,[]) then
begin
n:=ModuloDatos.TblFacturas.FieldValues['NFactura'];
m:=ModuloDatos.TblFacturas.FieldValues['Usuario'];
o:=ModuloDatos.TblFacturas.FieldValues['Periodo'];
p:=ModuloDatos.TblFacturas.FieldValues['Precio'];
ModuloDatos.TblPagos.FieldValues['NFact']:=n;
ModuloDatos.TblPagos.FieldValues['Usuario']:=m;
ModuloDatos.TblPagos.FieldValues['Periodo']:=o;
ModuloDatos.TblPagos.FieldValues['Importe']:=p;
Confirmar.SetFocus;
end else begin
ShowMessage('Factura no encontrada');
(Sender as TDBEdit).SelectAll;
end;
end;
esto lo digo por que en un post anterior me he dado cuenta de que introduces dentro de la factura un "-" solo me queda que si esto no te ayuda pasame el codigo al correo para que lo pueda ver en su globalidad ¿vale?
__________________
Gami ------------------------------------------------------------------ La necesidad no tolera tardanzas pero mas vale tarde que nunca |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
|