Delphi - guardar datos y continuar en el mismo form en delphi

   
Vista:

guardar datos y continuar en el mismo form en delphi

Publicado por Francisco Aparicio faparicio60@hotmail.com (2 intervenciones) el 17/04/2015 21:39:59
Por favor si pudieran ayudarme, tengo un problema, estoy desarrollando un sistema en el cual deseo que los el usuario capture los datos de un articulo determinado y al grabar los datos que no se salga del form, si no que pueda elegir otro articulo para su captura. Gracias

este es mi codigo

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
procedure TForm7.BitBtn1Click(Sender: TObject);
var
   Exant,Entra,Salida,Dev,Existe,temp1,temp2,temp3:Real;
   dd,mm,aaaa:Word;
   ffecha,fpedido,fproveedor : string;
   buttonSelected : Integer;
begin
   DecodeDate(DateTimePicker1.Date,aaaa,mm,dd);
 
   Query1.Active;
   Query1.Insert;
   Query1.FieldByName('Fec_ent').AsDateTime := DateTimePicker1.Date;
   Query1.FieldByName('Pedido').AsString := Edit4.Text;
   Query1.FieldByName('Proveedor').AsString := Edit5.Text;
   Query1.FieldByName('Cveart').AsString := Edit6.Text;
   Query1.FieldByName('Descripc').AsString := ComboBox1.Text;
   Query1.FieldByName('Marca').AsString := Edit8.Text;
   Query1.FieldByName('Presen').AsString := Edit9.Text;
   Query1.FieldByName('Precuni').AsString := Edit2.Text;
   Query1.FieldByName('Cantreq').AsString := Edit1.Text;
   Query1.FieldByName('Importe').AsString := Edit3.Text;
   Query1.Post;
 
   Query3.Active;
   Query3.Locate('Clave',Edit6.Text,[]);
   Query3.Edit;
   Exant := Query3['Existencia'];
   Entra := StrToFloat(Query3['Entradas']) + StrToFloat(Edit1.Text);
   Existe:= StrToFloat(Query3['Existencia']) + StrToFloat(Edit1.Text);
 
   Query3.FieldByName('Exanterior').AsString := FloatToStr(Exant);
   Query3.FieldByName('Entradas').AsString := FloatToStr(Entra);
   Query3.FieldByName('Existencia').AsString := FloatToStr(Existe);
   Query3.Post;
 
   Query2.Active := True;
   Query2.Insert;
   Query2.FieldByName('Fecha').AsDateTime := DateTimePicker1.Date;
   Query2.FieldByName('Clave').AsString := Edit6.Text;
   Query2.FieldByName('Producto').AsString := ComboBox1.Text;
   Query2.FieldByName('Unidad').AsString := Edit9.Text;
   Query2.FieldByName('Precio').AsString := Edit2.Text;
   Query2.FieldByName('Tipo_mov').AsString := 'EA';
   Query2.FieldByName('Entrada').AsString  := Edit1.Text;
   Query2.FieldByName('Salida').Value  := 0;
   Query2.FieldByName('Existencia').AsString  := FloatToStr(Existe);
   Query2.FieldByName('Importe').AsString  := Edit3.Text;
   Query2.FieldByName('Concepto').AsString := 'ENTRADA DE ALMACEN';
   Query2.Post;
 
   Query2.Close;
   Query1.Refresh;
 
   buttonSelected := MessageDlg('Desea Continuar con la Misma Factura',mtCustom,[mbOK,mbCancel], 0);
   if buttonSelected = mrOK    then
      begin
         temp1:=0;
         Edit6.Text := ' ';
         Edit8.Text := ' ';
         Edit9.Text := ' ';
         Edit1.Text:=FormatFloat('##0.000',temp1);
         Edit2.Text := ' ';
         Form7.ComboBox1.SetFocus;
      end;
   if buttonSelected = mrCancel then
      begin
         ShowMessage('Factura Terminada');
         Query3.Close;
         Query2.Close;
         Query1.Close;
         Form7.Close;
      end;
 
end;
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

guardar datos y continuar en el mismo form en delphi

Publicado por E.T. (1107 intervenciones) el 20/04/2015 18:23:14
Solo quita la linea Form7.Close;
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
Imágen de perfil de Francisco Diaz Gomez

guardar datos y continuar en el mismo form en delphi

Publicado por Francisco Diaz Gomez (10 intervenciones) el 21/04/2015 23:29:27
Si utilizas componentes DataAware mucho mejor te evitas tener que hace la asignacion manual y te ocupará menos código.
Un saludo.
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