This repository has been archived on 2024-11-29. You can view files and clone it, but cannot push or open issues or pull requests.
Tecsitel_FactuGES/BaseDatos/TablaFamilias.pas

157 lines
4.1 KiB
ObjectPascal
Raw Normal View History

{
===============================================================================
Copyright (<EFBFBD>) 2001. Rodax Software.
===============================================================================
Los contenidos de este fichero son propiedad de Rodax Software titular del
copyright. Este fichero s<EFBFBD>lo podr<EFBFBD> ser copiado, distribuido y utilizado,
en su totalidad o en parte, con el permiso escrito de Rodax Software, o de
acuerdo con los t<EFBFBD>rminos y condiciones establecidas en el acuerdo/contrato
bajo el que se suministra.
-----------------------------------------------------------------------------
Web: www.rodax-software.com
===============================================================================
Fecha primera versi<EFBFBD>n: 01-10-2001
Versi<EFBFBD>n actual: 1.0.2
Fecha versi<EFBFBD>n actual: 07-04-2002
===============================================================================
Modificaciones:
Fecha Comentarios
---------------------------------------------------------------------------
27-11-2001 En 'DarUnidadesFamilias' se ha a<EFBFBD>adido una fila vacia al
principio de la lista.
07-04-2002 Cambio de todos los procedimientos en los que se utiliza
una transaccion nueva, por una unica transacci<EFBFBD>n.
09-05-2002 Cambio de grid en lugar de utilizar UltimDBGrid, utilizaremos dxDBGrid.
===============================================================================
}
unit TablaFamilias;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
dxDBGrid, dxDBCtrl, dbgrids;
type
TdmTablaFamilias = class(TDataModule)
private
procedure IniciarSQL;
public
sqlInsertar : TStrings;
sqlModificar : TStrings;
sqlConsultar : TStrings;
sqlEliminar : TStrings;
constructor Create (AOwner : TComponent); override;
destructor Destroy; override;
procedure InicializarGridFamilias(var Grid: TdxDBGrid);
function darFamilias : TStrings;
end;
var
dmTablaFamilias: TdmTablaFamilias;
implementation
{$R *.DFM}
uses IBSQL, BaseDatos, IB, Excepciones;
{ TdmTablaFamilias }
constructor TdmTablaFamilias.Create(AOwner: TComponent);
begin
inherited;
sqlInsertar := TStringList.Create;
sqlModificar := TStringList.Create;
sqlConsultar := TStringList.Create;
sqlEliminar := TStringList.Create;
IniciarSQL;
end;
function TdmTablaFamilias.darFamilias: TStrings;
var
oSQL : TIBSQL;
Lista : TStringList;
begin
oSQL := TIBSQL.Create(Self);
Lista := TStringList.Create;
with oSQL do
begin
Database := dmBaseDatos.BD;
Transaction := dmBaseDatos.Transaccion;
SQL.Add('select DESCRIPCION from FAMILIAS order by DESCRIPCION');
try
Prepare;
ExecQuery;
Lista.Append('');
while not EOF do begin
Lista.Append(Fields[0].AsString);
Next;
end;
result := Lista;
finally
Close;
Transaction := NIL;
Free;
end;
end;
end;
destructor TdmTablaFamilias.Destroy;
begin
sqlInsertar.Free;
sqlModificar.Free;
sqlConsultar.Free;
sqlEliminar.Free;
inherited;
end;
procedure TdmTablaFamilias.InicializarGridFamilias(var Grid: TdxDBGrid);
var
Columna : TdxDBTreeListColumn;
begin
with Grid do begin
DestroyColumns;
{Columna DESCRIPCION}
Columna := CreateColumn(TdxDBTreeListColumn);
Columna.FieldName := 'DESCRIPCION';
Columna.Caption := 'Familia';
end;
end;
procedure TdmTablaFamilias.IniciarSQL;
begin
with sqlInsertar do
begin
Add('insert into FAMILIAS (DESCRIPCION) ');
Add('values (UPPER(:DESCRIPCION))');
end;
with sqlModificar do
begin
Add('update FAMILIAS set ');
Add('DESCRIPCION = UPPER(:DESCRIPCION) ');
Add('where RDB$DB_KEY = :DB_KEY');
end;
with sqlEliminar do
begin
Add('delete from FAMILIAS ');
Add('where DESCRIPCION = :DESCRIPCION');
end;
with sqlConsultar do
begin
Add('select RDB$DB_KEY, DESCRIPCION ');
Add('from FAMILIAS ');
Add('order by DESCRIPCION');
end;
end;
end.