git-svn-id: https://192.168.0.254/svn/Proyectos.Acana_FactuGES/trunk@4 3f40d355-893c-4141-8e64-b1d9be72e7e7
601 lines
18 KiB
ObjectPascal
601 lines
18 KiB
ObjectPascal
{
|
|
===============================================================================
|
|
Copyright (©) 2005. Rodax Software.
|
|
===============================================================================
|
|
Los contenidos de este fichero son propiedad de Rodax Software titular del
|
|
copyright. Este fichero sólo podrá ser copiado, distribuido y utilizado,
|
|
en su totalidad o en parte, con el permiso escrito de Rodax Software, o de
|
|
acuerdo con los términos y condiciones establecidas en el acuerdo/contrato
|
|
bajo el que se suministra.
|
|
-----------------------------------------------------------------------------
|
|
Web: www.rodax-software.com
|
|
===============================================================================
|
|
Fecha primera versión: 08-06-2005
|
|
Versión actual: 1.0.0
|
|
Fecha versión actual: 08-06-2005
|
|
===============================================================================
|
|
Modificaciones:
|
|
|
|
Fecha Comentarios
|
|
---------------------------------------------------------------------------
|
|
===============================================================================
|
|
}
|
|
|
|
unit TablaTareas;
|
|
|
|
interface
|
|
|
|
uses
|
|
//Generales
|
|
SysUtils, Classes, Controls, IBSQL, cxGridDBTableView, cxCustomData, DB,
|
|
//Particulares
|
|
Contnrs, RxMemDS,
|
|
|
|
//Aplicacion
|
|
Framework, StrFunc, Entidades, Constantes, BaseDatos,
|
|
|
|
//Contador
|
|
Contadores, RdxGestorContadores;
|
|
|
|
type
|
|
TDatosTarea = class(TObjeto)
|
|
public
|
|
Codigo : String;
|
|
FechaAlta : String;
|
|
UsuarioAlta : String;
|
|
Usuario : String;
|
|
Tipo : String;
|
|
FechaIni : String;
|
|
HoraIni : String;
|
|
FechaFin : String;
|
|
HoraFin : String;
|
|
Descripcion : String;
|
|
Observaciones : String;
|
|
FechaAviso : String;
|
|
Completada : String;
|
|
EntryId : String;
|
|
Borrado : String;
|
|
UltimoCambio : String;
|
|
|
|
constructor Create; overload;
|
|
constructor Create(CodigoObra, Codigo : String); overload;
|
|
procedure ObtenerDatos; override;
|
|
destructor Destroy; override;
|
|
end;
|
|
|
|
type
|
|
TdmTablaTareas = class(TDataModule)
|
|
private
|
|
procedure IniciarSQL;
|
|
public
|
|
sqlInsertar : TStrings;
|
|
sqlModificar : TStrings;
|
|
sqlConsultar : TStrings;
|
|
sqlEliminar : TStrings;
|
|
sqlGrid : TStrings;
|
|
sqlTareasObrasGrid : TStrings;
|
|
|
|
//Metodos que llamaran a contador
|
|
function DarNuevoCodigo : String;
|
|
function IncrementarCodigo: boolean;
|
|
function InsertarContador : boolean;
|
|
function ValidarCodigo(Codigo : String) : Boolean;
|
|
function FormatearCodigo(Codigo : String) : String;
|
|
|
|
constructor Create (AOwner : TComponent); override;
|
|
destructor Destroy; override;
|
|
function insertarTareaPedidoObra(CodigoContrato, CodigoPedido, CodigoTarea: Variant): Boolean;
|
|
function eliminarTareasPedidoObra(CodigoContrato: Variant): Boolean;
|
|
procedure rellenarTareasFase(TablaMem : TRxMemoryData; Codigo: Variant);
|
|
|
|
function insertarTareaInstaladorObra(CodigoContrato, Codigoinstalador, CodigoTarea: Variant): Boolean;
|
|
function eliminarTareasInstaladorObra(CodigoContrato: Variant): Boolean;
|
|
procedure InicializarGridTareasObras(var vGrid: TcxGridDBTableView);
|
|
|
|
//Temporal
|
|
procedure InicializarGrid(var vGrid: TcxGridDBTableView);
|
|
|
|
end;
|
|
|
|
var
|
|
dmTablaTareas: TdmTablaTareas;
|
|
|
|
implementation
|
|
|
|
{$R *.DFM}
|
|
|
|
uses
|
|
IBErrorCodes, IB, Literales, Mensajes, Excepciones, cxCheckBox, cxDBLookupComboBox;
|
|
|
|
constructor TdmTablaTareas.Create (AOwner : TComponent);
|
|
begin
|
|
inherited;
|
|
sqlInsertar := TStringList.Create;
|
|
sqlModificar := TStringList.Create;
|
|
sqlConsultar := TStringList.Create;
|
|
sqlEliminar := TStringList.Create;
|
|
sqlGrid := TStringList.Create;
|
|
sqlTareasObrasGrid := TStringList.Create;
|
|
|
|
IniciarSQL;
|
|
end;
|
|
|
|
destructor TdmTablaTareas.Destroy;
|
|
begin
|
|
sqlInsertar.Free;
|
|
sqlModificar.Free;
|
|
sqlConsultar.Free;
|
|
sqlEliminar.Free;
|
|
sqlGrid.Free;
|
|
sqlTareasObrasGrid.Free;
|
|
|
|
inherited;
|
|
end;
|
|
|
|
procedure TdmTablaTareas.IniciarSQL;
|
|
begin
|
|
with sqlInsertar do
|
|
begin
|
|
Add('INSERT INTO TAREAS (');
|
|
Add('CODIGO, FECHAALTA, USUARIOALTA, USUARIO, TIPO, FECHAINI, HORAINI, ');
|
|
Add('FECHAFIN, HORAFIN, DESCRIPCION, OBSERVACIONES, FECHAAVISO, COMPLETADA,');
|
|
Add('ENTRYID, BORRADO, ULTIMOCAMBIO)');
|
|
Add('VALUES (:CODIGO, :FECHAALTA, :USUARIOALTA, :USUARIO, :TIPO, :FECHAINI, :HORAINI, ');
|
|
Add(':FECHAFIN, :HORAFIN, :DESCRIPCION, :OBSERVACIONES, :FECHAAVISO, :COMPLETADA,');
|
|
Add(':ENTRYID, :BORRADO, :ULTIMOCAMBIO)');
|
|
end;
|
|
|
|
with sqlModificar do
|
|
begin
|
|
Add('UPDATE TAREAS SET');
|
|
Add('FECHAINI = :FECHAINI,');
|
|
Add('HORAINI = :HORAINI,');
|
|
Add('FECHAFIN = :FECHAFIN,');
|
|
Add('HORAFIN = :HORAFIN,');
|
|
Add('DESCRIPCION = :DESCRIPCION,');
|
|
Add('OBSERVACIONES = :OBSERVACIONES,');
|
|
Add('FECHAAVISO = :FECHAAVISO,');
|
|
Add('COMPLETADA = :COMPLETADA,');
|
|
Add('ENTRYID = :ENTRYID,');
|
|
Add('BORRADO = :BORRADO,');
|
|
Add('ULTIMOCAMBIO = :ULTIMOCAMBIO');
|
|
Add('WHERE (CODIGO = :CODIGO)');
|
|
end;
|
|
|
|
with sqlEliminar do
|
|
begin
|
|
Add('delete from TAREAS ');
|
|
Add('WHERE (CODIGO = :CODIGO)');
|
|
end;
|
|
|
|
with sqlConsultar do
|
|
begin
|
|
Add('select CODIGO, FECHAALTA, USUARIOALTA, USUARIO, TIPO, FECHAINI, HORAINI, ');
|
|
Add('FECHAFIN, HORAFIN, DESCRIPCION, OBSERVACIONES, FECHAAVISO, COMPLETADA,');
|
|
Add('ENTRYID, BORRADO, ULTIMOCAMBIO');
|
|
Add('from TAREAS, OBRASTAREAS');
|
|
Add('WHERE (OBRASTAREAS.CODIGOTAREA = TAREAS.CODIGO)');
|
|
Add('AND (CODIGOCONTRATO = :CODIGOCONTRATO)');
|
|
Add('AND (CODIGOPEDIDO = :CODIGOPEDIDO)');
|
|
end;
|
|
|
|
with sqlGrid do
|
|
begin
|
|
Add('select CODIGOPEDIDO, CODIGO, FECHAALTA, USUARIOALTA, USUARIO, TIPO, FECHAINI, HORAINI, ');
|
|
Add('FECHAFIN, HORAFIN, DESCRIPCION, OBSERVACIONES, FECHAAVISO, COMPLETADA,');
|
|
Add('ENTRYID, BORRADO, ULTIMOCAMBIO');
|
|
Add('from TAREAS, OBRASTAREAS');
|
|
Add('WHERE (OBRASTAREAS.CODIGOTAREA = TAREAS.CODIGO)');
|
|
Add('AND (CODIGOCONTRATO = :CODIGOCONTRATO)');
|
|
Add('AND (CODIGOINSTALADOR is null)');
|
|
Add('order by CODIGOPEDIDO, CODIGO');
|
|
end;
|
|
|
|
with sqlTareasObrasGrid do
|
|
begin
|
|
Add('select CODIGO, CODIGOINSTALADOR, FECHAALTA, USUARIOALTA, USUARIO, TIPO, FECHAINI, HORAINI, ');
|
|
Add('FECHAFIN, HORAFIN, DESCRIPCION, OBSERVACIONES, FECHAAVISO, COMPLETADA,');
|
|
Add('ENTRYID, BORRADO, ULTIMOCAMBIO');
|
|
Add('from TAREAS, OBRASTAREAS');
|
|
Add('WHERE (OBRASTAREAS.CODIGOTAREA = TAREAS.CODIGO)');
|
|
Add('AND (CODIGOCONTRATO = :CODIGOCONTRATO)');
|
|
Add('AND (CODIGOPEDIDO is null)');
|
|
Add('order by CODIGOINSTALADOR, CODIGO');
|
|
end;
|
|
end;
|
|
|
|
|
|
{ TDatosTarea }
|
|
|
|
constructor TDatosTarea.Create(CodigoObra, Codigo: String);
|
|
begin
|
|
inherited Create;
|
|
Codigo := CodigoObra;
|
|
// Recuperar los datos
|
|
ObtenerDatos;
|
|
end;
|
|
|
|
constructor TDatosTarea.Create;
|
|
begin
|
|
inherited Create;
|
|
end;
|
|
|
|
destructor TDatosTarea.Destroy;
|
|
begin
|
|
inherited;
|
|
end;
|
|
|
|
procedure TDatosTarea.ObtenerDatos;
|
|
var
|
|
oSQL : TIBSQL;
|
|
begin
|
|
if EsCadenaVacia(Codigo) then
|
|
raise Exception.Create(msgObrFaltaObr);
|
|
|
|
oSQL := TIBSQL.Create(NIL);
|
|
with oSQL do
|
|
begin
|
|
Database := dmBaseDatos.BD;
|
|
Transaction := dmBaseDatos.Transaccion;
|
|
SQL.Add('select CODIGO, FECHAALTA, USUARIOALTA, USUARIO, TIPO, FECHAINI,');
|
|
SQL.Add('HORAINI, FECHAFIN, HORAFIN, DESCRIPCION, OBSERVACIONES, FECHAAVISO,');
|
|
SQL.Add('COMPLETADA, ENTRYID, BORRADO, ULTIMOCAMBIO');
|
|
SQL.Add('from TAREAS');
|
|
SQL.Add('where CODIGO = :CODIGO');
|
|
ParamByName('CODIGO').AsString := Codigo;
|
|
|
|
try
|
|
Prepare;
|
|
ExecQuery;
|
|
|
|
// Compruebo si se han recuperado datos
|
|
if (RecordCount > 0) then
|
|
begin
|
|
Codigo := FieldByName('CODIGO').AsString;
|
|
FechaAlta := FieldByName('FECHAALTA').AsString;
|
|
UsuarioAlta := FieldByName('USUARIOALTA').AsString;
|
|
Usuario := FieldByName('USUARIO').AsString;
|
|
Tipo := FieldByName('TIPO').AsString;
|
|
FechaIni := FieldByName('FECHAINI').AsString;
|
|
HoraIni := FieldByName('HORAINI').AsString;
|
|
FechaFin := FieldByName('FECHAFIN').AsString;
|
|
HoraFin := FieldByName('HORAFIN').AsString;
|
|
Descripcion := FieldByName('DESCRIPCION').AsString;
|
|
Observaciones := FieldByName('OBSERVACIONES').AsString;
|
|
FechaAviso := FieldByName('FECHAAVISO').AsString;
|
|
Completada := FieldByName('COMPLETADA').AsString;
|
|
EntryId := FieldByName('ENTRYID').AsString;
|
|
Borrado := FieldByName('BORRADO').AsString;
|
|
UltimoCambio := FieldByName('ULTIMOCAMBIO').AsString;
|
|
end;
|
|
finally
|
|
Close;
|
|
Transaction := NIL;
|
|
Free;
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
function TdmTablaTareas.DarNuevoCodigo: String;
|
|
begin
|
|
Result := GestorContadores.darNuevoCodigo(contTareas);
|
|
end;
|
|
|
|
function TdmTablaTareas.FormatearCodigo(Codigo: String): String;
|
|
begin
|
|
Result := GestorContadores.formatearCodigo(contTareas, Codigo);
|
|
end;
|
|
|
|
function TdmTablaTareas.IncrementarCodigo: boolean;
|
|
begin
|
|
Result := GestorContadores.IncrementarValor(contTareas);
|
|
end;
|
|
|
|
function TdmTablaTareas.InsertarContador: boolean;
|
|
begin
|
|
Result := GestorContadores.InsertarContador(contTareas);
|
|
end;
|
|
|
|
function TdmTablaTareas.ValidarCodigo(Codigo: String): Boolean;
|
|
begin
|
|
Result := GestorContadores.validarCodigo(contTareas, Codigo);
|
|
end;
|
|
|
|
procedure TdmTablaTareas.InicializarGrid(var vGrid: TcxGridDBTableView);
|
|
var
|
|
Columna : TcxGridDBColumn;
|
|
begin
|
|
with vGrid do begin
|
|
OptionsView.Footer := True;
|
|
|
|
{Columna CODIGOPEDIDO}
|
|
Columna := CreateColumn;
|
|
Columna.DataBinding.FieldName := 'CODIGOPEDIDO';
|
|
Columna.Caption := 'Código ped.';
|
|
Columna.Width := tamColCodigo;
|
|
Columna.Options.Filtering := False;
|
|
{Columna CODIGO}
|
|
Columna := CreateColumn;
|
|
Columna.DataBinding.FieldName := 'CODIGO';
|
|
Columna.Caption := 'CODIGO';
|
|
Columna.Width := tamColNombre;
|
|
Columna.Options.Filtering := False;
|
|
{Columna TIPO}
|
|
Columna := CreateColumn;
|
|
Columna.DataBinding.FieldName := 'TIPO';
|
|
Columna.Caption := 'Tipo';
|
|
Columna.Width := tamColTelefono;
|
|
Columna.Options.Filtering := False;
|
|
{Columna FECHAINI}
|
|
Columna := CreateColumn;
|
|
Columna.DataBinding.FieldName := 'FECHAINI';
|
|
Columna.Caption := 'FechaIni';
|
|
Columna.Width := tamColTelefono;
|
|
Columna.Options.Filtering := False;
|
|
{Columna FECHAFIN}
|
|
Columna := CreateColumn;
|
|
Columna.DataBinding.FieldName := 'FECHAFIN';
|
|
Columna.Caption := 'FechaFin';
|
|
Columna.Width := tamColTelefono;
|
|
Columna.Options.Filtering := False;
|
|
{Columna DESCRIPCION}
|
|
Columna := CreateColumn;
|
|
Columna.DataBinding.FieldName := 'DESCRIPCION';
|
|
Columna.Caption := 'Descripcion';
|
|
Columna.Width := tamColTelefono;
|
|
Columna.Options.Filtering := False;
|
|
{Columna COMPLETADA}
|
|
Columna := CreateColumn;
|
|
Columna.DataBinding.FieldName := 'COMPLETADA';
|
|
Columna.Caption := 'Completada';
|
|
Columna.Width := tamColTelefono;
|
|
Columna.Options.Filtering := False;
|
|
end;
|
|
end;
|
|
|
|
function TdmTablaTareas.insertarTareaPedidoObra(CodigoContrato, CodigoPedido, CodigoTarea: Variant): Boolean;
|
|
var
|
|
oSQL : TIBSQL;
|
|
begin
|
|
Result := False;
|
|
|
|
if EsCadenaVacia(CodigoContrato) or EsCadenaVacia(CodigoPedido)
|
|
or EsCadenaVacia(CodigoTarea) then
|
|
Exit;
|
|
|
|
oSQL := TIBSQL.Create(Self);
|
|
with oSQL do
|
|
begin
|
|
Database := dmBaseDatos.BD;
|
|
Transaction := dmBaseDatos.Transaccion;
|
|
SQL.Add('insert into OBRASTAREAS ');
|
|
SQL.Add('(CODIGOCONTRATO, CODIGOPEDIDO, CODIGOTAREA)');
|
|
SQL.Add('values(:CODIGOCONTRATO, :CODIGOPEDIDO, :CODIGOTAREA)');
|
|
ParamByName('CODIGOCONTRATO').AsString := CodigoContrato;
|
|
ParamByName('CODIGOPEDIDO').AsString := CodigoPedido;
|
|
ParamByName('CODIGOTAREA').AsString := CodigoTarea;
|
|
try
|
|
Prepare;
|
|
ExecQuery;
|
|
Result := True;
|
|
finally
|
|
Close;
|
|
Transaction := NIL;
|
|
Free;
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
function TdmTablaTareas.eliminarTareasPedidoObra(CodigoContrato: Variant): Boolean;
|
|
var
|
|
oSQL : TIBSQL;
|
|
begin
|
|
Result := False;
|
|
|
|
if EsCadenaVacia(CodigoContrato) then
|
|
Exit;
|
|
|
|
oSQL := TIBSQL.Create(Self);
|
|
with oSQL do
|
|
begin
|
|
Database := dmBaseDatos.BD;
|
|
Transaction := dmBaseDatos.Transaccion;
|
|
SQL.Add('delete from OBRASTAREAS ');
|
|
SQL.Add('where CODIGOCONTRATO = :CODIGOCONTRATO');
|
|
SQL.Add('and CODIGOPEDIDO is not null');
|
|
ParamByName('CODIGOCONTRATO').AsString := CodigoContrato;
|
|
try
|
|
Prepare;
|
|
ExecQuery;
|
|
Result := True;
|
|
finally
|
|
Close;
|
|
Transaction := NIL;
|
|
Free;
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
|
|
procedure TdmTablaTareas.rellenarTareasFase(TablaMem: TRxMemoryData; Codigo: Variant);
|
|
var
|
|
oSQL : TIBSQL;
|
|
begin
|
|
if (EsCadenaVacia(Codigo)) or (TablaMem = Nil) then
|
|
Exit;
|
|
|
|
oSQL := TIBSQL.Create(Self);
|
|
with oSQL do
|
|
begin
|
|
Database := dmBaseDatos.BD;
|
|
Transaction := dmBaseDatos.Transaccion;
|
|
SQL.Add('select CODIGO, NOMBRE, TIPO');
|
|
SQL.Add('from TAREASFASES');
|
|
try
|
|
Prepare;
|
|
ExecQuery;
|
|
while not EOF do begin
|
|
TablaMem.Append;
|
|
TablaMem.FieldByName('CODIGOPEDIDO').AsInteger := Codigo;
|
|
TablaMem.FieldByName('CODIGO').AsInteger := FieldByName('CODIGO').AsInteger;
|
|
TablaMem.FieldByName('TIPO').AsString := FieldByName('TIPO').AsString;
|
|
TablaMem.FieldByName('DESCRIPCION').AsString := FieldByName('NOMBRE').AsString;
|
|
TablaMem.FieldByName('COMPLETADA').AsInteger := 0;
|
|
Next;
|
|
end;
|
|
finally
|
|
Close;
|
|
Transaction := NIL;
|
|
Free;
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
procedure TdmTablaTareas.InicializarGridTareasObras(var vGrid: TcxGridDBTableView);
|
|
var
|
|
Columna : TcxGridDBColumn;
|
|
begin
|
|
with vGrid do begin
|
|
OptionsView.Footer := False;
|
|
|
|
{Columna ID}
|
|
Columna := CreateColumn;
|
|
Columna.DataBinding.FieldName := 'ID';
|
|
Columna.Caption := 'CODIGO';
|
|
Columna.Width := tamColCodigo;
|
|
Columna.Options.Filtering := False;
|
|
Columna.Visible := False;
|
|
|
|
{Columna CODIGOCONTRATO}
|
|
Columna := CreateColumn;
|
|
Columna.DataBinding.FieldName := 'CODIGOCONTRATO';
|
|
Columna.Caption := 'CODIGOCONTRATO';
|
|
Columna.Width := tamColCodigo;
|
|
Columna.Options.Filtering := False;
|
|
Columna.Visible := False;
|
|
|
|
{Columna TIPOTAREA}
|
|
Columna := CreateColumn;
|
|
Columna.DataBinding.FieldName := 'TIPOTAREA';
|
|
Columna.Caption := 'Tipo';
|
|
Columna.Width := tamColCodigo;
|
|
Columna.Options.Filtering := False;
|
|
Columna.Visible := False;
|
|
|
|
{Columna COMPLETADA}
|
|
{ Columna := CreateColumn;
|
|
Columna.DataBinding.FieldName := 'COMPLETADA';
|
|
Columna.Caption := ' ';
|
|
Columna.Width := 20;
|
|
Columna.PropertiesClassName := 'TcxCheckBoxProperties';
|
|
Columna.Options.Filtering := False;
|
|
with TcxCheckBoxProperties(Columna.Properties) do begin
|
|
DisplayUnchecked := 'False';
|
|
ImmediatePost := True;
|
|
ValueChecked := 1;
|
|
ValueUnchecked := 0;
|
|
end;}
|
|
|
|
{Columna FECHAINI}
|
|
Columna := CreateColumn;
|
|
Columna.DataBinding.FieldName := 'START';
|
|
Columna.Caption := 'Fecha';
|
|
Columna.Width := tamColFecha;
|
|
Columna.Options.Filtering := False;
|
|
Columna.SortOrder := soAscending;
|
|
|
|
{Columna CODIGOINSTALADOR}
|
|
Columna := CreateColumn;
|
|
Columna.DataBinding.FieldName := 'RESOURCEID';
|
|
Columna.Caption := 'Instalador';
|
|
Columna.Width := tamColNombre;
|
|
Columna.PropertiesClassName := 'TcxLookupComboBoxProperties';
|
|
Columna.Options.Filtering := False;
|
|
with TcxLookupComboBoxProperties(Columna.Properties) do
|
|
begin
|
|
KeyFieldNames := 'CODIGO';
|
|
ListColumns.Add.FieldName := 'NOMBRE';
|
|
ListOptions.AnsiSort := True;
|
|
ListOptions.ShowHeader := False;
|
|
end;
|
|
{Columna DESCRIPCION}
|
|
Columna := CreateColumn;
|
|
Columna.DataBinding.FieldName := 'CAPTION';
|
|
Columna.Caption := 'Material entregado';
|
|
Columna.Width := tamColNombre;
|
|
Columna.Options.Filtering := False;
|
|
|
|
{Columna OBSERVACIONES}
|
|
{ Columna := CreateColumn;
|
|
Columna.DataBinding.FieldName := 'OBSERVACIONES';
|
|
Columna.Caption := 'Observaciones';
|
|
Columna.Width := tamColNombre;
|
|
Columna.Options.Filtering := False;}
|
|
end;
|
|
end;
|
|
|
|
function TdmTablaTareas.eliminarTareasInstaladorObra(CodigoContrato: Variant): Boolean;
|
|
var
|
|
oSQL : TIBSQL;
|
|
begin
|
|
Result := False;
|
|
|
|
if EsCadenaVacia(CodigoContrato) then
|
|
Exit;
|
|
|
|
oSQL := TIBSQL.Create(Self);
|
|
with oSQL do
|
|
begin
|
|
Database := dmBaseDatos.BD;
|
|
Transaction := dmBaseDatos.Transaccion;
|
|
SQL.Add('delete from OBRASTAREAS ');
|
|
SQL.Add('where CODIGOCONTRATO = :CODIGOCONTRATO');
|
|
SQL.Add('and CODIGOINSTALADOR is not null');
|
|
ParamByName('CODIGOCONTRATO').AsString := CodigoContrato;
|
|
try
|
|
Prepare;
|
|
ExecQuery;
|
|
Result := True;
|
|
finally
|
|
Close;
|
|
Transaction := NIL;
|
|
Free;
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
function TdmTablaTareas.insertarTareaInstaladorObra(CodigoContrato, Codigoinstalador, CodigoTarea: Variant): Boolean;
|
|
var
|
|
oSQL : TIBSQL;
|
|
begin
|
|
Result := False;
|
|
|
|
if EsCadenaVacia(CodigoContrato) or EsCadenaVacia(CodigoInstalador)
|
|
or EsCadenaVacia(CodigoTarea) then
|
|
Exit;
|
|
|
|
oSQL := TIBSQL.Create(Self);
|
|
with oSQL do
|
|
begin
|
|
Database := dmBaseDatos.BD;
|
|
Transaction := dmBaseDatos.Transaccion;
|
|
SQL.Add('insert into OBRASTAREAS ');
|
|
SQL.Add('(CODIGOCONTRATO, CODIGOINSTALADOR, CODIGOTAREA)');
|
|
SQL.Add('values(:CODIGOCONTRATO, :CODIGOINSTALADOR, :CODIGOTAREA)');
|
|
ParamByName('CODIGOCONTRATO').AsString := CodigoContrato;
|
|
ParamByName('CODIGOINSTALADOR').AsString := CodigoInstalador;
|
|
ParamByName('CODIGOTAREA').AsString := CodigoTarea;
|
|
try
|
|
Prepare;
|
|
ExecQuery;
|
|
Result := True;
|
|
finally
|
|
Close;
|
|
Transaction := NIL;
|
|
Free;
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
end.
|