{
===============================================================================
  Copyright (©) 2002. 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: 16-04-2003
  Versión actual: 1.0.0
  Fecha versión actual: 16-04-2003
===============================================================================
  Modificaciones:

    Fecha         Comentarios
    ---------------------------------------------------------------------------
===============================================================================
}

unit TablaRepresentantesProveedor;

interface

uses
  //Generales
  SysUtils, Classes, Controls, IBSQL, cxGridDBTableView, cxCustomData, DB,
  //Particulares
  cxGridDBCardView,

  //Aplicacion
  Framework, StrFunc, Entidades, Constantes, BaseDatos;

type
  TdmTablaRepresentantesProveedor = class(TDataModule)
  private
    procedure IniciarSQL;
  public
    sqlInsertar : TStrings;
    sqlModificar : TStrings;
    sqlConsultar : TStrings;
    sqlEliminar : TStrings;
    sqlGrid : TStrings;
    function FormatearCodigo(Codigo : String) : String;
    constructor Create (AOwner : TComponent); override;
    destructor Destroy; override;
    procedure InicializarGridRepresentantes (var vGrid: TcxGridDBCardView);
  end;

var
  dmTablaRepresentantesProveedor : TdmTablaRepresentantesProveedor;

implementation

{$R *.DFM}

constructor TdmTablaRepresentantesProveedor.Create (AOwner : TComponent);
begin
  inherited;
  sqlInsertar := TStringList.Create;
  sqlModificar := TStringList.Create;
  sqlConsultar := TStringList.Create;
  sqlEliminar := TStringList.Create;
  sqlGrid := TStringList.Create;
  IniciarSQL;
end;

destructor TdmTablaRepresentantesProveedor.Destroy;
begin
  sqlInsertar.Free;
  sqlModificar.Free;
  sqlConsultar.Free;
  sqlEliminar.Free;
  sqlGrid.Free;
  inherited;
end;

procedure TdmTablaRepresentantesProveedor.IniciarSQL;
begin
  with sqlInsertar do
  begin
    Add('INSERT INTO REPRESENTANTESPROVEEDOR (');
    Add('CODIGOPROVEEDOR, CODIGO, FECHAALTA, USUARIO, ');
    Add('NOMBRE, TELEFONO1, TELEFONO2, MOVIL1, MOVIL2, ');
    Add('FAX, CORREO, OBSERVACIONES) ');
    Add('VALUES (:CODIGOPROVEEDOR, :CODIGO, ');
    Add(':FECHAALTA, :USUARIO, :NOMBRE, ');
    Add(':TELEFONO1, :TELEFONO2, :MOVIL1, :MOVIL2, ');
    Add(':FAX, :CORREO, :OBSERVACIONES)');
  end;

  with sqlModificar do
  begin
    Add('UPDATE REPRESENTANTESPROVEEDOR SET ');
    Add('NOMBRE = :NOMBRE, ');
    Add('TELEFONO1 = :TELEFONO1, ');
    Add('TELEFONO2 = :TELEFONO2, ');
    Add('MOVIL1 = :MOVIL1, ');
    Add('MOVIL2 = :MOVIL2, ');
    Add('FAX = :FAX, ');
    Add('CORREO = :CORREO, ');
    Add('OBSERVACIONES = :OBSERVACIONES ');
    Add('WHERE (CODIGOPROVEEDOR = :CODIGOPROVEEDOR) AND ');
    Add('(CODIGO = :CODIGO)');
  end;

  with sqlEliminar do
  begin
    Add('delete from REPRESENTANTESPROVEEDOR ');
    Add('where CODIGO = :CODIGO and ');
    Add('CODIGOPROVEEDOR = :CODIGOPROVEEDOR');
  end;

  with sqlConsultar do
  begin
    Add('select *');
    Add('from REPRESENTANTESPROVEEDOR ');
    Add('where CODIGO = :CODIGO and ');
    Add('CODIGOPROVEEDOR = :CODIGOPROVEEDOR');
  end;

  with sqlGrid do
  begin
    Add('select * ');
    Add('from REPRESENTANTESPROVEEDOR ');
    Add('where CODIGOPROVEEDOR = :CODIGOPROVEEDOR ');
    Add('order by CODIGO');
  end;
end;

function TdmTablaRepresentantesProveedor.FormatearCodigo(Codigo : String) : String;
begin
  Result := StrPadLeft(Codigo, 10, '0');
end;

procedure TdmTablaRepresentantesProveedor.InicializarGridRepresentantes (var vGrid: TcxGridDBCardView);
var
  Columna : TcxGridDBCardViewRow;
begin
  with vGrid do begin
    {Columna CODIGO}
    Columna := CreateRow;
    Columna.DataBinding.FieldName := 'CODIGO';
    Columna.Caption := 'Código';
    Columna.CaptionAlignmentHorz := taRightJustify;
    Columna.Visible := False;
    {Columna CODIGOPROVEEDOR}
    Columna := CreateRow;
    Columna.DataBinding.FieldName := 'CODIGOPROVEEDOR';
    Columna.Caption := 'Cód.proveedor';
    Columna.CaptionAlignmentHorz := taRightJustify;
    Columna.Visible := False;
    {Columna NOMBRE}
    Columna := CreateRow;
    Columna.DataBinding.FieldName := 'NOMBRE';
    Columna.Caption := 'Nombre';
    Columna.CaptionAlignmentHorz := taRightJustify;
    {Columna TELEFONO1}
    Columna := CreateRow;
    Columna.DataBinding.FieldName := 'TELEFONO1';
    Columna.Caption := 'Tlf. 1';
    Columna.CaptionAlignmentHorz := taRightJustify;
    {Columna TELEFONO2}
    Columna := CreateRow;
    Columna.DataBinding.FieldName := 'TELEFONO2';
    Columna.Caption := 'Tlf. 2';
    Columna.CaptionAlignmentHorz := taRightJustify;
    {Columna MOVIL1}
    Columna := CreateRow;
    Columna.DataBinding.FieldName := 'MOVIL1';
    Columna.Caption := 'Móvil 1';
    Columna.CaptionAlignmentHorz := taRightJustify;
    {Columna MOVIL2}
    Columna := CreateRow;
    Columna.DataBinding.FieldName := 'MOVIL2';
    Columna.Caption := 'Móvil 2';
    Columna.CaptionAlignmentHorz := taRightJustify;
    {Columna FAX}
    Columna := CreateRow;
    Columna.DataBinding.FieldName := 'FAX';
    Columna.Caption := 'Fax';
    Columna.CaptionAlignmentHorz := taRightJustify;
    {Columna CORREO}
    Columna := CreateRow;
    Columna.DataBinding.FieldName := 'CORREO';
    Columna.Caption := 'Correo electrónico';
    Columna.CaptionAlignmentHorz := taRightJustify;
    {Columna OBSERVACIONES}
    Columna := CreateRow;
    Columna.DataBinding.FieldName := 'OBSERVACIONES';
    Columna.Caption := 'Observaciones';
    Columna.CaptionAlignmentHorz := taRightJustify;
  end;
end;

end.
