159 lines
4.1 KiB
ObjectPascal
159 lines
4.1 KiB
ObjectPascal
|
|
{
|
|||
|
|
===============================================================================
|
|||
|
|
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: 12-05-2002
|
|||
|
|
===============================================================================
|
|||
|
|
Modificaciones:
|
|||
|
|
|
|||
|
|
Fecha Comentarios
|
|||
|
|
---------------------------------------------------------------------------
|
|||
|
|
07-04-2002 Cambio de todos los procedimientos en los que se utiliza
|
|||
|
|
una transaccion nueva, por una unica transacci<EFBFBD>n.
|
|||
|
|
|
|||
|
|
12-05-2002 Adaptaci<EFBFBD>n al grid 'TdxDBGrid'.
|
|||
|
|
===============================================================================
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
unit TablaProvincias;
|
|||
|
|
|
|||
|
|
interface
|
|||
|
|
|
|||
|
|
uses
|
|||
|
|
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
|
|||
|
|
DBTables, DB, IBCustomDataSet, IBSQL, BaseDatos, IBDatabase, dxDBGrid,
|
|||
|
|
dbgrids;
|
|||
|
|
|
|||
|
|
|
|||
|
|
type
|
|||
|
|
TdmTablaProvincias = class(TDataModule)
|
|||
|
|
private
|
|||
|
|
procedure IniciarSQL;
|
|||
|
|
public
|
|||
|
|
TablaProvincias : TIBDataSet;
|
|||
|
|
sqlGrid : TStrings;
|
|||
|
|
function darCodigoProvincia(Descripcion : String) : Variant;
|
|||
|
|
function darNombreProvincia (Codigo : Variant) : string;
|
|||
|
|
constructor Create (AOwner : TComponent); override;
|
|||
|
|
destructor Destroy; override;
|
|||
|
|
procedure InicializarGridProvincias(var Grid: TdxDBGrid);
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
var
|
|||
|
|
dmTablaProvincias : TdmTablaProvincias;
|
|||
|
|
|
|||
|
|
implementation
|
|||
|
|
|
|||
|
|
{$R *.DFM}
|
|||
|
|
uses
|
|||
|
|
IBStoredProc, Mensajes, IB, Excepciones, dxDBCtrl;
|
|||
|
|
|
|||
|
|
constructor TdmTablaProvincias.Create (AOwner : TComponent);
|
|||
|
|
begin
|
|||
|
|
inherited;
|
|||
|
|
sqlGrid := TStringList.Create;
|
|||
|
|
IniciarSQL;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
destructor TdmTablaProvincias.Destroy;
|
|||
|
|
begin
|
|||
|
|
sqlGrid.Free;
|
|||
|
|
inherited;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TdmTablaProvincias.IniciarSQL;
|
|||
|
|
begin
|
|||
|
|
with sqlGrid do
|
|||
|
|
begin
|
|||
|
|
Add('select DESCRIPCION, CODIGO');
|
|||
|
|
Add('from PROVINCIAS');
|
|||
|
|
Add('order by DESCRIPCION');
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
function TdmTablaProvincias.darCodigoProvincia(Descripcion: String): Variant;
|
|||
|
|
var
|
|||
|
|
oSQL : TIBSQL;
|
|||
|
|
Codigo : String;
|
|||
|
|
begin
|
|||
|
|
oSQL := TIBSQL.Create(Self);
|
|||
|
|
Codigo := '';
|
|||
|
|
|
|||
|
|
with oSQL do
|
|||
|
|
begin
|
|||
|
|
Database := dmBaseDatos.BD;
|
|||
|
|
Transaction := dmBaseDatos.Transaccion;
|
|||
|
|
SQL.Add('select CODIGO from PROVINCIAS ');
|
|||
|
|
SQL.Add('where DESCRIPCION = :DESCRIPCION');
|
|||
|
|
|
|||
|
|
try
|
|||
|
|
ParamByName('DESCRIPCION').AsString := AnsiUpperCase(Descripcion);
|
|||
|
|
Prepare;
|
|||
|
|
ExecQuery;
|
|||
|
|
Codigo := Fields[0].AsString;
|
|||
|
|
if (Codigo = '')
|
|||
|
|
then Result := NULL
|
|||
|
|
else Result := Codigo;
|
|||
|
|
finally
|
|||
|
|
Close;
|
|||
|
|
Transaction := NIL;
|
|||
|
|
Free;
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TdmTablaProvincias.InicializarGridProvincias(var Grid: TdxDBGrid);
|
|||
|
|
var
|
|||
|
|
Columna : TdxDBTreeListColumn;
|
|||
|
|
begin
|
|||
|
|
with Grid do begin
|
|||
|
|
DestroyColumns;
|
|||
|
|
{Columna DESCRIPCION}
|
|||
|
|
Columna := CreateColumn(TdxDBTreeListColumn);
|
|||
|
|
Columna.FieldName := 'DESCRIPCION';
|
|||
|
|
Columna.Caption := 'Nombre de la provincia';
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
function TdmTablaProvincias.darNombreProvincia(Codigo: Variant): string;
|
|||
|
|
var
|
|||
|
|
oSQL : TIBSQL;
|
|||
|
|
Descripcion : String;
|
|||
|
|
begin
|
|||
|
|
Descripcion := '';
|
|||
|
|
oSQL := TIBSQL.Create(Self);
|
|||
|
|
|
|||
|
|
with oSQL do
|
|||
|
|
begin
|
|||
|
|
Database := dmBaseDatos.BD;
|
|||
|
|
Transaction := dmBaseDatos.Transaccion;
|
|||
|
|
SQL.Add('select DESCRIPCION');
|
|||
|
|
SQL.Add('from PROVINCIAS');
|
|||
|
|
SQL.Add('where CODIGO = :CODIGO');
|
|||
|
|
|
|||
|
|
try
|
|||
|
|
ParamByName('CODIGO').AsString := Codigo;
|
|||
|
|
Prepare;
|
|||
|
|
ExecQuery;
|
|||
|
|
Descripcion := Fields[0].AsString;
|
|||
|
|
Result := Descripcion;
|
|||
|
|
except
|
|||
|
|
Close;
|
|||
|
|
Transaction := NIL;
|
|||
|
|
Free;
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
end.
|