FactuGES2/Source/ApplicationBase/Empresas/Views/uViewTienda.pas
david b68b3e630a - Repaso a multiempresa y tiendas.
- Limpieza de warnings.

git-svn-id: https://192.168.0.254/svn/Proyectos.Acana_FactuGES2/trunk@294 f4e31baf-9722-1c47-927c-6f952f962d4b
2008-07-28 11:58:45 +00:00

129 lines
3.6 KiB
ObjectPascal

unit uViewTienda;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uViewBase, ExtCtrls, StdCtrls, DB, uDADataTable, cxGraphics,
dxLayoutControl, cxContainer, cxEdit, cxTextEdit, cxMaskEdit, cxDropDownEdit,
cxControls, dxSkinsCore, dxSkinBlack, dxSkinBlue, dxSkinCaramel, dxSkinCoffee,
dxSkinGlassOceans, dxSkiniMaginary, dxSkinLilian, dxSkinLiquidSky,
dxSkinLondonLiquidSky, dxSkinMcSkin, dxSkinMoneyTwins, dxSkinOffice2007Black,
dxSkinOffice2007Blue, dxSkinOffice2007Green, dxSkinOffice2007Pink,
dxSkinOffice2007Silver, dxSkinSilver, dxSkinStardust, dxSkinsDefaultPainters,
dxSkinValentine, dxSkinXmas2008Blue, dxSkinsdxLCPainter;
type
IViewTienda = interface(IViewBase)
['{9FD357AB-2E87-4CAF-8AEB-04368AD075AF}']
function GetDataItem: TDADataTable;
procedure SetDataItem(const Value: TDADataTable);
property DataItem : TDADataTable read GetDataItem write SetDataItem;
procedure ElegirTienda(const AIDTienda : Integer);
end;
TfrViewTienda = class(TfrViewBase, IViewTienda)
cbTienda: TcxComboBox;
dxLayoutControl1Group_Root: TdxLayoutGroup;
dxLayoutControl1: TdxLayoutControl;
dxLayoutControl1Item1: TdxLayoutItem;
procedure CustomViewCreate(Sender: TObject);
procedure CustomViewDestroy(Sender: TObject);
procedure cbTiendaPropertiesValidate(Sender: TObject;
var DisplayValue: Variant; var ErrorText: TCaption; var Error: Boolean);
private
FDataItem : TDADataTable;
FListaTiendas : TStringList;
function GetDataItem: TDADataTable;
procedure SetDataItem(const Value: TDADataTable);
public
property DataItem : TDADataTable read GetDataItem write SetDataItem;
procedure ElegirTienda(const AIDTienda : Integer);
end;
implementation
{$R *.dfm}
uses
uFactuGES_App;
procedure TfrViewTienda.cbTiendaPropertiesValidate(Sender: TObject;
var DisplayValue: Variant; var ErrorText: TCaption; var Error: Boolean);
var
AIndex : integer;
begin
inherited;
if Assigned(FDataItem) and FDataItem.Active then
begin
AIndex := StrToInt(FListaTiendas.Values[DisplayValue]);
FDataItem.Edit;
if Assigned(FDataItem.FindField('ID_TIENDA')) then
FDataItem.FieldByName('ID_TIENDA').AsInteger := AIndex;
if Assigned(FDataItem.FindField('TIENDA')) then
FDataItem.FieldByName('TIENDA').AsString := DisplayValue;
FDataItem.post;
end;
end;
procedure TfrViewTienda.CustomViewCreate(Sender: TObject);
var
i : integer;
begin
inherited;
FListaTiendas := AppFactuGES.EmpresasController.DarListaTiendas(AppFactuGES.EmpresaActiva);
with cbTienda.Properties.Items do
begin
BeginUpdate;
try
Clear;
for i := 0 to FListaTiendas.Count - 1 do
Add(FListaTiendas.Names[i]);
finally
EndUpdate;
end;
end;
end;
procedure TfrViewTienda.CustomViewDestroy(Sender: TObject);
begin
FreeAndNIL(FListaTiendas);
inherited;
end;
procedure TfrViewTienda.ElegirTienda(const AIDTienda: Integer);
var
i : integer;
begin
for i := 0 to FListaTiendas.Count-1 do
begin
if FListaTiendas.ValueFromIndex[i] = IntToStr(AIDTienda) then
begin
cbTienda.Text := FListaTiendas.Names[i];
Break;
end;
end;
end;
function TfrViewTienda.GetDataItem: TDADataTable;
begin
Result := FDataItem;
end;
procedure TfrViewTienda.SetDataItem(const Value: TDADataTable);
begin
FDataItem := Value;
if Assigned(FDataItem.FindField('ID_TIENDA')) then
ElegirTienda(FDataItem.FieldByName('ID_TIENDA').AsInteger);
end;
end.