Ver Mensaje Individual
  #1  
Antiguo 18-01-2007
JoanKa JoanKa is offline
Miembro
 
Registrado: ene 2005
Posts: 92
Reputación: 20
JoanKa Va por buen camino
Algo curioso al salir de un edit... me lo graba

Hola todos una pregunta que ya estoy varios dias en estoy me tiene cabezonazo

Haber tengo 2 formularios :

1. FRM_Busqueda_Clientes
2. FRM_Mantenimiento_Clientes

Les explico como va... es respecto a realizar una factura para que tengan una idea

En Frm_Busqueda_Clientes tengo todos los clientes en un grid y tengo tres botones:
A. Nuevo Cliente
B. Seleccionar Cliente
C. Salir

Estando en el Frm_Busqueda_Clientes presiono el Boton Nuevo Cliente el cual en el evento click tengo :

procedure TFRM_Busqueda_Clientes.BTN_Nuevo_ClienteClick(Sender: TObject);
begin
FRM_Busqueda_Clientes.Close;
// Variable declarada Global
var_alta_factura_cliente:='Nuevo_Cliente_Factura';
FRM_Mantenimiento_Clientes.Show;
end;

Y como ven me muestra el Formulario de Clientes : FRM_Mantenimiento_Clientes

Hasta aca todo bien....
Ahora en este formulario(FRM_Mantenimiento_Clientes) hay varios edit asociados a los campos de la Tabla Clientes.

Codigo |------------|

Fecha Alta |------------|

Nif |------------|

Nombre Empresa |------------|

......Otros Edits
Entoces en el evento onActivate del Formulario de Clientes tengo esto:

procedure TFRM_Mantenimiento_Clientes.FormActivate(Sender: TObject);
var
x:string;
begin
TBL_CLIENTES.Active:=True;
if TBL_CLIENTES.Bof then
begin
PGC_Clientes.ActivePage:=TBS_Lista;
ACC_Primero.Enabled := False;
ACC_Anterior.Enabled :=False;
end;

x:=FRM_Busqueda_Clientes.var_alta_factura_cliente;
if x='Nuevo_Cliente_Factura' then
begin
PGC_Clientes.ActivePage:=TBS_Datos;
PAN_Datos.Enabled:=True;
TBL_CLIENTES.Active:=True;
TBL_CLIENTES.Insert;
EDT_Alta.Text:=FormatDateTime('dd/mm/yyyy',now);
QRY_CLIENTES.Active:=True;
QRY_CLIENTES.SQL.Text:='SELECT MAX(CLI_CODIGO) FROM T_CLIENTES';
QRY_CLIENTES.Open;
TXT_CODIGO.Text:= IntToStr(QRY_CLIENTES.Fields[0].AsInteger+1);
EDT_Codigo.Text:='CLI_'+ IntToStr(QRY_CLIENTES.Fields[0].AsInteger+1);
EDT_Nif.SetFocus;
end;
end;

Entonces veran que me genera el codigo con el query, me asigna la fecha bien, Y EL CURSOR SE PONE EN EL NIF, ENTONCES ESCRIBO CUALQUIER NIF Y CUANDO QUIERO SALIR DEL NIF PARA IR A OTRO EDIT ME LO GRABA Y ME GENERA OTRO CODIGO(SI ANTERIORMENTE ERA POR EJMPLO 15200 AHORA ES 15201), LA MISMA FECHA Y EL CURSOR OTRA VEZ SE PONE EN EL CAMPO DEL NIF Y PONGO CUALUQIER NIF Y AHORA ME VOY A OTRO CAMPO Y SI ME DEJA INGRESAR EL NOMBRE DE LA EMPRESA POR EJEMPLO...... Y AHORA SOLO CUANDO PRESIONE EN UN BOTON GRABAR SI ME REGISTRA TODO LOS DATOS INGRESADOS..

¿pOR QUE CUANDO ME VOY DEL FORMULARIO DE BUSQUEDA DEL CLIENTE AL FORMULARIO DE DATOS DEL CLIENTE ME SUCEDE ESTO?

Como puedo controlar esto ya que llevo varios dias ??

Gracias y saludos
Responder Con Cita