unit Vendedor;

interface

uses
  SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls,
  StdCtrls, Forms, DBCtrls, DB, DBTables, Mask, ExtCtrls, Buttons,Dialogos,
  Menus, ComCtrls, Tabnotbk,Checa{, Concen};

type
  TFormaVendedor = class(TForm)
    DataSource1: TDataSource;
    TablaVendedor: TTable;
    MainMenu1: TMainMenu;
    Archivo1: TMenuItem;
    Salir1: TMenuItem;
    Registro1: TMenuItem;
    Nuevo1: TMenuItem;
    Modificar1: TMenuItem;
    Guardar1: TMenuItem;
    Buscar1: TMenuItem;
    Imprimir1: TMenuItem;
    Reportes1: TMenuItem;
    Graficas1: TMenuItem;
    Ayuda1: TMenuItem;
    Consultas1: TMenuItem;
    TablaFactura: TTable;
    DataSource2: TDataSource;
    Eliminar1: TMenuItem;
    Panel1: TPanel;
    BotonNuevo: TSpeedButton;
    BotonGuardar: TSpeedButton;
    BotonBuscar: TSpeedButton;
    BotonImprimir: TSpeedButton;
    BotonSalir: TSpeedButton;
    BotonCambios: TSpeedButton;
    Usuario: TLabel;
    Navegador: TDBNavigator;
    Panel2: TPanel;
    Caja: TScrollBox;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    EditCLVEN_V: TDBEdit;
    EditNOMBR_V: TDBEdit;
    EditSTATU_V: TDBEdit;
    EditCOMIS_V: TDBEdit;
    EditCLASV_V: TDBEdit;
    Comisiones1: TMenuItem;
    uno: TLabel;
    dos: TLabel;
    Bevel1: TBevel;
    TablaRepetido: TTable;
    ComisionesConcentrado1: TMenuItem;
    VtasAnuales1: TMenuItem;
    Bevel2: TBevel;
    Bevel3: TBevel;
    Bevel4: TBevel;
    Bevel5: TBevel;
    Formatos1: TMenuItem;
    ElegirFormato1: TMenuItem;
    Disearformato1: TMenuItem;
    Label6: TLabel;
    Listadode1: TMenuItem;
    ImprimePlantilla1: TMenuItem;
    Temas1: TMenuItem;
    Bevel6: TBevel;
    ImprimirRango1: TMenuItem;
    CancelaMovimiento1: TMenuItem;
    BotonPreliminar: TSpeedButton;
    procedure FormCreate(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure BotonNuevoClick(Sender: TObject);
    procedure BotonGuardarClick(Sender: TObject);
    procedure BotonSalirClick(Sender: TObject);
    procedure Consultas1Click(Sender: TObject);
    procedure EditCLVEN_VKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure FormActivate(Sender: TObject);
    procedure BotonBuscarClick(Sender: TObject);
    procedure TablaFacturaFilterRecord(DataSet: TDataSet;
      var Accept: Boolean);
    procedure FolderClick(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure BotonImprimirClick(Sender: TObject);
    procedure BotonCambiosClick(Sender: TObject);
    procedure EditCLVEN_VEnter(Sender: TObject);
    procedure EditNOMBR_VEnter(Sender: TObject);
    procedure EditSTATU_VEnter(Sender: TObject);
    procedure EditCOMIS_VEnter(Sender: TObject);
    procedure EditCLASV_VEnter(Sender: TObject);
    procedure Eliminar1Click(Sender: TObject);
    procedure Comisiones1Click(Sender: TObject);
    procedure EditCLVEN_VMouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    procedure EditNOMBR_VMouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure EditCOMIS_VMouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure EditCLASV_VMouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure ComisionesConcentrado1Click(Sender: TObject);
    procedure ElegirFormato1Click(Sender: TObject);
    procedure Disearformato1Click(Sender: TObject);
    procedure TablaVendedorEditError(DataSet: TDataSet; E: EDatabaseError;
      var Action: TDataAction);
    procedure TablaVendedorPostError(DataSet: TDataSet; E: EDatabaseError;
      var Action: TDataAction);
    procedure EditCLVEN_VExit(Sender: TObject);
    procedure EditNOMBR_VExit(Sender: TObject);
    procedure EditSTATU_VExit(Sender: TObject);
    procedure EditCOMIS_VExit(Sender: TObject);
    procedure EditCLASV_VExit(Sender: TObject);
    procedure Listadode1Click(Sender: TObject);
    procedure BotonCambiosMouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure BotonNuevoMouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure BotonGuardarMouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure BotonBuscarMouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure BotonImprimirMouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure ImprimePlantilla1Click(Sender: TObject);
    procedure Temas1Click(Sender: TObject);
    procedure ImprimirRango1Click(Sender: TObject);
    procedure CancelaMovimiento1Click(Sender: TObject);
    procedure BotonPreliminarClick(Sender: TObject);
  private
    { private declarations }
  public
    { public declarations }
  end;

var
  FormaVendedor: TFormaVendedor;
  indice:integer;
  meses,comision:array [1..12]of Real;
  clave:string;
  Color1:TColor;
  nombreformato:String;

procedure posicionavendedor(clave:string);
implementation

uses consulta, buscar, cerrar,formato, barras, formatos,describe,progreso,
     AyudaMod, imprime, edicion;

{$R *.DFM}



{*****activar botones}
procedure activabotones(cambios,nuevo,guardar,buscar,imprimir,navegar,cancela:boolean);
begin
with FormaVendedor do
begin
BotonCambios.Enabled:=cambios;
Modificar1.Enabled:=cambios;

BotonNuevo.Enabled:=nuevo;
Nuevo1.Enabled:=nuevo;

BotonGuardar.Enabled:=guardar;
Guardar1.Enabled:=guardar;

BotonBuscar.Enabled:=buscar;

BotonImprimir.Enabled:=imprimir;

Navegador.Enabled:=navegar;

CancelaMovimiento1.enabled:=cancela;
end;
end;

{*******************}



procedure ponecolor(indi:integer;col1:TColor);
begin
with FormaVendedor do
begin
color1:=col1;
TDBEdit(Components[indi]).Color:=ClRed;
end;
end;

procedure quitacolor(indi:integer);
begin
with FormaVendedor do
begin
TDBEdit(Components[indi]).Color:=Color1;

end;
end;


procedure asignatipo;
type
datos=record
archivo:String[60];
descrip:String[125];
end;
var
dat:datos;
faltan:Boolean;
arch,arch2:file of datos;
i:integer;
begin
with FormaConsulta do
begin
{MuestraMensaje(leeruta+'\report\proveedo.for');}
AssignFile(arch,leeruta+'\report\vendedor.for');
Reset(arch);
Archivo.Items.Clear;
Descripcion.Clear;
faltan:=True;
for i:=0 to FileSize(arch)-1 do
begin
Read(arch,dat);
if FileExists(Dat.archivo) then
Archivo.Items.Append(Dat.archivo)
else
faltan:=False;
end;
CloseFile(arch);


if faltan=False then
begin
AssignFile(arch,leeruta+'\report\vendedor.for');
Reset(arch);
AssignFile(arch2,leeruta+'\report\Cliente2.for');
Rewrite(arch2);

for i:=0 to FileSize(arch)-1 do
begin
Read(arch,dat);
if FileExists(Dat.archivo) then
write(arch2,dat);
end;
CloseFile(arch);
CloseFile(arch2);
{******************}
AssignFile(arch,leeruta+'\report\vendedor.for');
Rewrite(arch);
AssignFile(arch2,leeruta+'\report\Cliente2.for');
Reset(arch2);

for i:=0 to FileSize(arch2)-1 do
begin
Read(arch2,dat);
if FileExists(Dat.archivo) then
write(arch,dat);
end;
CloseFile(arch);
CloseFile(arch2);
end;


Archivo.Text:=Archivo.Items[0];
Descripcion.lines.Add(Dat.Descrip);

ReporteDe.Caption:='Reporte de Vendedores';
Archi.Caption:='vendedor.for';
end;

end;






function redondea(cantidad:Real):String;
var
numcanti:string;
begin
Str(cantidad:12:2,numcanti);
redondea:=numcanti;
end;

{function ruta(linea:integer):String;
var
arch:TextFile;
aux:string;
i:integer;
directorioactual:string;
begin
AssignFile(arch,leeempresa);
Reset(arch);
for i:=1 to linea do
Readln(arch,aux);
CloseFile(arch);
ruta:=aux;

end;}

procedure rutas;
var
  j: Integer;
begin

with FormaVendedor do
begin
  for j := 0 to ComponentCount -1 do
    begin
     if Components[j] is TTable  then
       begin
       TTable(Components[j]).DatabaseName:=ruta(8);
       try
       TTable(Components[j]).Open;
       except
       MuestraMensaje('Ha Ocurrido un Error al Abrir una de las Bases de Datos.');
       end;
       
       end;
    end;
end;

end;


procedure limpiar;
var
  I: Integer;
begin

{with FormaVendedor do
begin
  for I := 0 to ComponentCount -1 do
    begin
     if Components[I] is TDBEdit  then
       TDBEdit(Components[I]).Text :='';
     if Components[I] is TEdit  then
       TEdit(Components[I]).Text :='';

  end;
end;  }

end;



procedure activa;
var
  I: Integer;
begin
with FormaVendedor do
begin
{  for I := 0 to ComponentCount -1 do
    begin
     if Components[I] is TDBEdit then
       TDBEdit(Components[I]).Enabled :=True;
     if Components[I] is TLabel then
       TLabel(Components[I]).Enabled :=True;

end; }
Caja.Enabled:=True;
end;
end;


procedure desactiva;
var
  I: Integer;
begin
with FormaVendedor do
begin
{  for I := 0 to ComponentCount -1 do
    begin
     if Components[I] is TDBEdit then
       TDBEdit(Components[I]).Enabled :=False;
     if Components[I] is TLabel then
       TLabel(Components[I]).Enabled :=False;
end; }
Caja.Enabled:=False;
end;
end;

procedure cursor1;
begin
With FormaVendedor do
begin
if indice > 5 then indice:=1;
if indice < 1 then indice:=1;
case indice of
1:EditCLVEN_V.SetFocus;
2:EditNOMBR_V.SetFocus;
3:EditSTATU_V.SetFocus;
4:EditCOMIS_V.SetFocus;
5:EditCLASV_V.SetFocus;
end;
end;
end;

procedure posicionavendedor(clave:string);
begin
with FormaVendedor do
begin
if FormaVendedor.Tag=0 then
begin
{if FileExists(leetapiz(2)) then
Fondo.Picture.LoadFromFile(leetapiz(2));}
{Fondo.Visible:=True;}
rutas;
BotonNuevo.Enabled:=True;
BotonGuardar.Enabled:=False;
BotonImprimir.Enabled:=False;
desactiva;
{limpiar;}
end;
FormaVendedor.Tag:=1;
Tablavendedor.FindKey([clave]);
end;
end;


procedure TFormaVendedor.FormCreate(Sender: TObject);
begin
FormatosPais;
  {rutas;
  TablaVendedor.Open;}
nombreformato:=leeruta+'\consulta\'+ruta(13);
end;

procedure TFormaVendedor.BitBtn1Click(Sender: TObject);

type
  Compra = record
    Clave: string[5];
    Veces: integer;
    Monto: Real;
end;

archivocompra= file of Compra;

var
arch:Archivocompra;
dato:Compra;
begin

AssignFile(arch,'c:\graficas\vendedor');
ReWrite(arch);
dato.Clave:='asdf';
dato.veces:=23;
dato.Monto:=1000.6789;
write(arch,dato);


CloseFile(arch);

end;

procedure TFormaVendedor.BitBtn2Click(Sender: TObject);
type
  Compra = record
    Clave: string[5];
    Veces: integer;
    Monto: Real;
end;

archivocompra= file of Compra;

var
arch:Archivocompra;
dato:Compra;
begin

AssignFile(arch,'c:\graficas\vendedor');
Reset(arch);
Read(arch,dato);

MuestraMensaje(dato.Clave+'   '+FloatToStr(dato.Monto));

CloseFile(arch);

end;

procedure TFormaVendedor.BotonNuevoClick(Sender: TObject);
begin
if caso(StrToInt(usuario.Caption),14) then
begin
TablaVendedor.Insert;
TablaVendedor.Post;
TablaVendedor.Edit;
activabotones(False,False,True,False,False,False,True);
activa;
BotonNuevo.Tag:=1;
EditCLVEN_V.SetFocus;
end;
end;

procedure TFormaVendedor.BotonGuardarClick(Sender: TObject);
begin
Tablarepetido.First;
if (Tablarepetido.FindKey([EditCLVEN_V.Text]))and (BotonNuevo.Tag=1) then
begin
MuestraMensaje('La Clave ya Existe Es Necesario Cambiarla');
EditCLVEN_V.SetFocus;

end
else
begin
if EditCLVEN_V.Text<>'' then
begin
TablaVendedor.Post;
activabotones(True,True,False,True,True,True,False);
BotonNuevo.Tag:=0;
BotonCambios.Tag:=0;
desactiva;
end
else
begin
MuestraMensaje('Falta la Clave...');
EditCLVEN_V.SetFocus;
end;
end;
end;

procedure TFormaVendedor.BotonSalirClick(Sender: TObject);
begin
Close;
end;

procedure TFormaVendedor.Consultas1Click(Sender: TObject);
begin
FormaConsulta.TablaConsulta.DataBaseName:=ruta(8);
FormaConsulta.TablaConsulta.IndexName:='ICLAVEN';
FormaConsulta.TablaConsulta.TableName:='vendedor.dbf';

FormaConsulta.TablaConsulta.Open;
FormaConsulta.TablaConsulta.First;

FormaConsulta.De.Text:=FormaConsulta.TablaConsulta.Fields[0].AsString;
FormaConsulta.TablaConsulta.Last;
FormaConsulta.Hasta.Text:=FormaConsulta.TablaConsulta.Fields[0].AsString;
FormaConsulta.TablaConsulta.First;

FormaConsulta.RutaCampos.Text:=leeruta+'\consulta\vendedor.cmp';
FormaConsulta.TipoVista.Text:=leeruta+'\consulta\vendedor.vis';
FormaConsulta.Destino.Text:=leeruta+'\tempo\repven.rep';
FormaConsulta.NumCampo.Caption:='0';
asignatipo;

leearchivocampos(31,34);
formaConsulta.ShowModal;

end;

procedure TFormaVendedor.EditCLVEN_VKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
if (Ord(Char(Key))=13) or (Ord(Char(Key))=40) then
begin
indice:=indice+1;
cursor1;
end;
if Ord(Char(Key))=38 then
begin
indice:=indice-1;
cursor1;
end;
end;

procedure TFormaVendedor.FormActivate(Sender: TObject);
begin
if FormaVendedor.Tag=0 then
begin
{if FileExists(leetapiz(2)) then
Fondo.Picture.LoadFromFile(leetapiz(2));}
{Fondo.Visible:=True;}
rutas;
BotonNuevo.Enabled:=True;
BotonGuardar.Enabled:=False;
{BotonImprimir.Enabled:=False;}
desactiva;
{limpiar;}
end;
FormaVendedor.Tag:=1;

end;

procedure TFormaVendedor.BotonBuscarClick(Sender: TObject);
var siguiente:LongInt;
begin
FormaBusqueda.ShowModal;
if FormaBusqueda.Clave.Checked then
TablaVendedor.IndexName:='ICLAVEN'
else
TablaVendedor.IndexName:='NOMBR_V';

TablaVendedor.FindNearest([FormaBusqueda.CajaBuscar.Text]);
end;



procedure TFormaVendedor.TablaFacturaFilterRecord(DataSet: TDataSet;
  var Accept: Boolean);

begin
{Accept:=DataSet['CLVEN_F']=EditCLVEN_V.Text;}

end;


procedure TFormaVendedor.FolderClick(Sender: TObject);
begin


{TablaFactura.Filtered:=True;}


end;

procedure TFormaVendedor.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
if (TablaVendedor.State=dsEdit)or (TablaVendedor.State=dsInsert) then
begin
FormaCerrar.ShowModal;
if FormaCerrar.Tag=1 then
begin
TablaVendedor.Post;
BotonNuevo.Tag:=0;
BotonCambios.Tag:=0;
activabotones(True,True,False,True,True,True,False);
end;

if FormaCerrar.Tag=2 then
begin
TablaVendedor.Cancel;
BotonNuevo.Tag:=0;
BotonCambios.Tag:=0;
activabotones(True,True,False,True,True,True,False);
end;

if FormaCerrar.Tag=3 then
Action:=caNone;

FormaCerrar.Tag:=0;

end;
BotonSalir.Tag:=1000;
end;

procedure TFormaVendedor.BotonImprimirClick(Sender: TObject);
begin
if ImpresoraLista then
begin
forma(TablaVendedor,TablaVendedor,nombreformato,'i');
end
else
MuestraMensaje('La Impresora No Se Encuentra Lista...');
end;

procedure TFormaVendedor.BotonCambiosClick(Sender: TObject);
begin
if caso(StrToInt(usuario.Caption),16) then
begin
TablaVendedor.Edit;
activabotones(False,False,True,False,False,False,True);
activa;
BotonCambios.Tag:=1;
EditCLVEN_V.SetFocus;

end;
end;

procedure TFormaVendedor.EditCLVEN_VEnter(Sender: TObject);
begin
ponecolor(EditCLVEN_V.ComponentIndex,EditCLVEN_V.Color);

indice:=1;
Uno.Caption:=comenta(1,'vendedor.des');
Dos.Caption:=comenta(2,'vendedor.des');
end;

procedure TFormaVendedor.EditNOMBR_VEnter(Sender: TObject);
begin
ponecolor(EditNOMBR_V.ComponentIndex,EditNOMBR_V.Color);
indice:=2;
Uno.Caption:=comenta(3,'vendedor.des');
Dos.Caption:=comenta(4,'vendedor.des');
end;

procedure TFormaVendedor.EditSTATU_VEnter(Sender: TObject);
begin
ponecolor(EditSTATU_V.ComponentIndex,EditSTATU_V.Color);
indice:=3;
end;

procedure TFormaVendedor.EditCOMIS_VEnter(Sender: TObject);
begin
ponecolor(EditCOMIS_V.ComponentIndex,EditCOMIS_V.Color);
indice:=4;
Uno.Caption:=comenta(5,'vendedor.des');
Dos.Caption:=comenta(6,'vendedor.des');
end;

procedure TFormaVendedor.EditCLASV_VEnter(Sender: TObject);
begin
ponecolor(EditCLASV_V.ComponentIndex,EditCLASV_V.Color);
indice:=5;
Uno.Caption:=comenta(7,'vendedor.des');
Dos.Caption:=comenta(8,'vendedor.des');
end;

procedure TFormaVendedor.Eliminar1Click(Sender: TObject);
begin

if caso(StrToInt(usuario.Caption),15) then
begin
TablaVendedor.Delete;
end;

end;


procedure TFormaVendedor.Comisiones1Click(Sender: TObject);
var
desde,hastavalor:string;

begin
FormaFormatos.Rangos.Visible:=True;
FormaFormatos.Formatos.Visible:=False;
activacondiciones(true,true,False,False,False,true,true,true,true,'vendedor.cmp');
TablaFactura.First;
desde:=TablaFactura.FieldByName('CLDOC_F').AsString;
TablaFactura.Last;
hastavalor:=TablaFactura.FieldByName('CLDOC_F').AsString;
valoresiniciales('','',desde,hastavalor);

FormaFormatos.ShowModal;
if FormaFormatos.Tag=1 then
begin
condiciones(FormaFormatos.C1.Caption,tipooperador(FormaFormatos.Operador1.Text),FormaFormatos.Valor1.Text,FormaFormatos.T1.Caption,FormaFormatos.C2.Caption,tipooperador(FormaFormatos.Operador2.Text),FormaFormatos.Valor2.Text,FormaFormatos.T2.Caption,FormaFormatos.C3.Caption,tipooperador(FormaFormatos.Operador3.Text),FormaFormatos.Valor3.Text,FormaFormatos.T3.Caption);
Concentrar(TablaFactura,FormaFormatos.De.Text,Formaformatos.Hasta.Text,'f','f','f','CLVEN_F','','IMTOD_F','&%IMTOD_F&*&%CTOVE_F&*&0.01&','','','','','','','STATU_F','!','C','D');
poneetiquetas('Vendedor','','Importe de Fact.','Comisión','','','','','','','');
Poneanchos(20,20,20,20,20,20,20,20,20,20,0);
FormaBarras.Panel2.Tag:=0;
FormaBarras.Tag:=1;
FormaBarras.botonGrafica.Tag:=2;
FormaBarras.Caption:='Reporte de Comisiones Detallado de Vendedores';
FormaBarras.ShowModal;
FormaBarras.Tag:=0;
end;
FormaFormatos.Tag:=0;
end;

procedure TFormaVendedor.EditCLVEN_VMouseMove(Sender: TObject;
  Shift: TShiftState; X, Y: Integer);
begin
Uno.Caption:=comenta(1,'vendedor.des');
Dos.Caption:=comenta(2,'vendedor.des');

end;

procedure TFormaVendedor.EditNOMBR_VMouseDown(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
Uno.Caption:=comenta(3,'vendedor.des');
Dos.Caption:=comenta(4,'vendedor.des');
end;

procedure TFormaVendedor.EditCOMIS_VMouseDown(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
Uno.Caption:=comenta(5,'vendedor.des');
Dos.Caption:=comenta(6,'vendedor.des');
end;

procedure TFormaVendedor.EditCLASV_VMouseDown(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
Uno.Caption:=comenta(7,'vendedor.des');
Dos.Caption:=comenta(8,'vendedor.des');
end;

procedure TFormaVendedor.ComisionesConcentrado1Click(Sender: TObject);
var
desde,hastavalor:string;

begin
FormaFormatos.Rangos.Visible:=True;
FormaFormatos.Formatos.Visible:=False;
activacondiciones(true,true,False,False,False,true,true,true,true,'vendedor.cmp');
TablaFactura.First;
desde:=TablaFactura.FieldByName('CLDOC_F').AsString;
TablaFactura.Last;
hastavalor:=TablaFactura.FieldByName('CLDOC_F').AsString;
valoresiniciales('','',desde,hastavalor);

FormaFormatos.ShowModal;
if FormaFormatos.Tag=1 then
begin
condiciones(FormaFormatos.C1.Caption,tipooperador(FormaFormatos.Operador1.Text),FormaFormatos.Valor1.Text,FormaFormatos.T1.Caption,FormaFormatos.C2.Caption,tipooperador(FormaFormatos.Operador2.Text),FormaFormatos.Valor2.Text,FormaFormatos.T2.Caption,FormaFormatos.C3.Caption,tipooperador(FormaFormatos.Operador3.Text),FormaFormatos.Valor3.Text,FormaFormatos.T3.Caption);
Concentrar(TablaFactura,FormaFormatos.De.Text,Formaformatos.Hasta.Text,'f','f','f','CLVEN_F','','IMTOD_F','&%IMTOD_F&*&%CTOVE_F&*&0.01&','','','','','','','','X','','C');
poneetiquetas('Vendedor','','Importe de Fact.','Comisión','','','','','','','');
Poneanchos(20,20,20,20,20,20,20,20,20,20,0);
FormaBarras.Panel2.Tag:=0;
FormaBarras.Tag:=1;
FormaBarras.botonGrafica.Tag:=2;
FormaBarras.Caption:='Reporte de Comisiones Concentrado de Vendedores';
FormaBarras.ShowModal;
FormaBarras.Tag:=0;
end;
FormaFormatos.Tag:=0;
end;

procedure TFormaVendedor.ElegirFormato1Click(Sender: TObject);
begin
FormaFormatos.Rangos.Visible:=False;
FormaFormatos.Formatos.Visible:=True;
FormaFormatos.ShowModal;
if FormaFormatos.Tag=3 then
begin
if FileExists(Formaformatos.Rutas.Text) then
begin
nombreformato:=Formaformatos.Rutas.Text;
forma(TablaVendedor,TablaVendedor,Formaformatos.Rutas.Text,'i')
end
else
MuestraMensaje('El Formato '+Formaformatos.Rutas.Text+' No Existe');
end;

end;

procedure TFormaVendedor.Disearformato1Click(Sender: TObject);
begin
FormaFormatos.Rangos.Visible:=False;
FormaFormatos.Formatos.Visible:=True;
FormaFormatos.ShowModal;


end;

procedure TFormaVendedor.TablaVendedorEditError(DataSet: TDataSet;
  E: EDatabaseError; var Action: TDataAction);
begin
DatabaseError('No se Pueden Editar los Datos ha Ocurrido un Error');
end;

procedure TFormaVendedor.TablaVendedorPostError(DataSet: TDataSet;
  E: EDatabaseError; var Action: TDataAction);
begin
DatabaseError('No se Pueden Guardar los Datos ha Ocurrido un Error');
end;


procedure TFormaVendedor.EditCLVEN_VExit(Sender: TObject);
begin
quitacolor(EditCLVEN_V.ComponentIndex);
end;

procedure TFormaVendedor.EditNOMBR_VExit(Sender: TObject);
begin
quitacolor(EditNOMBR_V.ComponentIndex);
end;

procedure TFormaVendedor.EditSTATU_VExit(Sender: TObject);
begin
quitacolor(EditSTATU_V.ComponentIndex);
end;

procedure TFormaVendedor.EditCOMIS_VExit(Sender: TObject);
begin
quitacolor(EditCOMIS_V.ComponentIndex);
end;

procedure TFormaVendedor.EditCLASV_VExit(Sender: TObject);
begin
quitacolor(EditCLASV_V.ComponentIndex);
end;

procedure TFormaVendedor.Listadode1Click(Sender: TObject);
var
desde,hastavalor:string;

begin

FormaFormatos.Rangos.Visible:=True;
FormaFormatos.Formatos.Visible:=False;
TablaVendedor.First;
desde:=TablaVendedor.FieldByName('CLVEN_V').AsString;
TablaVendedor.Last;
hastavalor:=TablaVendedor.FieldByName('CLVEN_V').AsString;
valoresiniciales('','',desde,hastavalor);

FormaFormatos.ShowModal;
if FormaFormatos.Tag=1 then
begin
ConcentrarCadenas(TablaVendedor,FormaFormatos.De.Text,Formaformatos.Hasta.Text,'f','f','f','CLVEN_V','NOMBR_V','CLASV_V','COMIS_V','','','','','','','','X','','D');
poneetiquetas('Clave','Nombre','Clasificación','Comisión','','','','','','','');
Poneanchos(20,20,20,20,20,20,20,20,20,20,0);
FormaBarras.Panel2.Tag:=0;
FormaBarras.Tag:=1;
FormaBarras.botonGrafica.Tag:=3;
FormaBarras.Caption:='Listado de Vendedores';
FormaBarras.ShowModal;
FormaBarras.Tag:=0;
end;
FormaFormatos.Tag:=0;

end;

procedure TFormaVendedor.BotonCambiosMouseDown(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
describir(Button,FormaVendedor.Left+BotonCambios.Left,FormaVendedor.Top+BotonCambios.Top+BotonCambios.Height,5);
end;

procedure TFormaVendedor.BotonNuevoMouseDown(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
describir(Button,FormaVendedor.Left+BotonNuevo.Left,FormaVendedor.Top+BotonNuevo.Top+Botonnuevo.Height,6);
end;

procedure TFormaVendedor.BotonGuardarMouseDown(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
describir(Button,FormaVendedor.Left+BotonGuardar.Left,FormaVendedor.Top+Botonguardar.Top+BotonGuardar.Height,7);
end;

procedure TFormaVendedor.BotonBuscarMouseDown(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
describir(Button,FormaVendedor.Left+BotonBuscar.Left,FormaVendedor.Top+BotonBuscar.Top+BotonBuscar.Height,8);
end;

procedure TFormaVendedor.BotonImprimirMouseDown(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
describir(Button,FormaVendedor.Left+BotonImprimir.Left,FormaVendedor.Top+BotonImprimir.Top+BotonImprimir.Height,9);
end;

procedure TFormaVendedor.ImprimePlantilla1Click(Sender: TObject);
begin
FormaVendedor.Print;
end;

procedure TFormaVendedor.Temas1Click(Sender: TObject);
begin
PoneAyuda(leeruta+'\ayuda\vendedor.rtf',0);
end;

procedure TFormaVendedor.ImprimirRango1Click(Sender: TObject);
begin
DialogoImprimir.ShowModal;
if Tag=1 then
begin

TablaVendedor.SetRange([DialogoImprimir.PrimeraPagina.Text],[DialogoImprimir.UltimaPagina.Text]);

while not TablaVendedor.Eof do
begin
if FileExists(nombreformato) then
forma(TablaVendedor,TablaVendedor,nombreformato,'i');
TablaVendedor.Next;
end;

TablaVendedor.CancelRange;
{else
MuestraMensaje('El Formato '+leeruta+'\consulta\'+ruta(12)+'No Existe');}
end;

end;

procedure TFormaVendedor.CancelaMovimiento1Click(Sender: TObject);
begin
if (BotonNuevo.Tag=1) then
begin
TablaVendedor.Delete;
activabotones(True,True,False,True,True,True,False);
desactiva;
end;

if (BotonCambios.Tag=1) then
begin
TablaVendedor.Cancel;
activabotones(True,True,False,True,True,True,False);
desactiva;
end;
BotonNuevo.Tag:=0;
BotonCambios.Tag:=0;

end;


procedure TFormaVendedor.BotonPreliminarClick(Sender: TObject);
begin
if FileExists(nombreformato) then
begin
forma(TablaVendedor,TablaVendedor,nombreformato,'p');
end
else
MuestraMensaje('El Formato '+nombreformato+'No Existe');
FormaEdicion.Hoja.Tag:=0;
FormaEdicion.ShowModal;
end;


end.
