Código de Delphi - Delphi Combobox con Bd

<<>>
Imágen de perfil
Val: 20
Ha disminuido su posición en 2 puestos en Delphi (en relación al último mes)
Gráfica de Delphi

Delphi Combobox con Bdgráfica de visualizaciones


Delphi

Publicado el 30 de Enero del 2020 por Ana Zelideth
400 visualizaciones desde el 30 de Enero del 2020
Les comparto un código de como utilizar combobox en Delphi llenando los datos desde una base de datos en ACCESS, les comparto el programa y como crear las tablas les comparto la liga

Requerimientos

Delphi, Microsoft acces

1.0

Publicado el 30 de Enero del 2020gráfica de visualizaciones de la versión: 1.0
405 visualizaciones desde el 30 de Enero del 2020
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

http://www.programacionparatodos.com/2020/01/catalogos-cascada-en-delphi.html

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
CREATE TABLE "Area" (
 "Area_id" INTEGER,
 "Area_name" TEXT,
 PRIMARY KEY("Area_id")
);
 
CREATE TABLE "Subarea" (
 "Subarea_id" INTEGER,
 "Area_id" INTEGER,
 "Subarea_name" TEXT,
 PRIMARY KEY("Subarea_id")
);
CREATE TABLE "Puesto" (
 "Puesto_id" INTEGER,
 "Subarea_id" INTEGER,
 "Puestoname" LONGTEXT,
 "Puestodesc" TEXT
 
);
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
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
unit Unit1;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DBCtrls, DB, ADODB, StdCtrls;
 
type
  TForm1 = class(TForm)
    ADOConnection1: TADOConnection;
    ComboBox1: TComboBox;
    Label1: TLabel;
    Label2: TLabel;
    ADOQuery1: TADOQuery;
    DataSource2: TDataSource;
    DataSource1: TDataSource;
    ADOQuery2: TADOQuery;
    ComboBox2: TComboBox;
    Label3: TLabel;
    Label4: TLabel;
    ComboBox3: TComboBox;
    ADOQuery3: TADOQuery;
    DataSource3: TDataSource;
    Label5: TLabel;
    Label6: TLabel;
    ADOQuery4: TADOQuery;
    DataSource4: TDataSource;
    Label7: TLabel;
    Label8: TLabel;
    Memo1: TMemo;
    procedure FormCreate(Sender: TObject);
    procedure ComboBox1Change(Sender: TObject);
    procedure ComboBox2Change(Sender: TObject);
    procedure ComboBox3Change(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
 
var
  Form1: TForm1;
  id_area:String;
  id_subarea:String;
  id_puesto: String;
 
implementation
 
{$R *.dfm}
 
 
procedure TForm1.FormCreate(Sender: TObject);
begin
   ADOQuery1.Active := False;
   ADOQuery1.Active := True;
   While not ADOQuery1.Eof do
   begin
      Combobox1.Items.Add(ADOQuery1.Fields[1].Text);
      ADOQuery1.Next;
   end;
      ADOQuery1.Active := False;
end;
 
procedure TForm1.ComboBox1Change(Sender: TObject);
begin
   id_area :=Combobox1.Text;
  // showmessage('Hola ' + id_area);
   ADOQuery2.Active := False;
   ADOQuery2.SQL.Text := 'Select subarea_name FROM subarea INNER JOIN area ON area.id = subarea.area_id WHERE area_name ='+ Char(39) + id_area + Char(39);
   ADOQuery2.Active := True;
   Combobox2.Items.Clear;
   While not ADOQuery2.Eof do
   begin
      Combobox2.Items.Add(ADOQuery2.Fields[0].Text);
      ADOQuery2.Next;
   end;
      ADOQuery2.Active := False;
end;
 
procedure TForm1.ComboBox2Change(Sender: TObject);
begin
   id_subarea :=Combobox2.Text;
 //  showmessage('Holasub ' + id_subarea);
   ADOQuery3.Active := False;
   ADOQuery3.SQL.Text := 'Select puesto_name FROM puesto INNER JOIN subarea ON subarea.id = puesto.subarea_id WHERE subarea_name ='+ Char(39) + id_subarea + Char(39);
   ADOQuery3.Active := True;
   Combobox3.Items.Clear;
   While not ADOQuery3.Eof do
   begin
      Combobox3.Items.Add(ADOQuery3.Fields[0].Text);
      ADOQuery3.Next;
   end;
      ADOQuery3.Active := False;
end;
 
 
procedure TForm1.ComboBox3Change(Sender: TObject);
begin
   id_puesto :=Combobox3.Text;
//   showmessage('Hola puesto ' + id_puesto);
   ADOQuery4.Active := False;
   ADOQuery4.SQL.Text := 'Select Puesto_descripcion FROM puesto INNER JOIN subarea ON subarea.id = puesto.subarea_id WHERE subarea_name ='+ Char(39) + id_subarea + Char(39) + ' AND puesto_name =' + Char(39) + id_puesto + Char(39);
   ADOQuery4.Active := True;
 //  showmessage(ADOQuery4.SQL.Text);
   Memo1.Clear;
   Memo1.Lines.add(ADOQuery4.Fields[0].Value);
 
end;
 
end.



Comentarios sobre la versión: 1.0 (0)


No hay comentarios
 

Comentar la versión: 1.0

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad

http://lwp-l.com/s5875