289 lines
9.3 KiB
ObjectPascal
289 lines
9.3 KiB
ObjectPascal
{*******************************************************}
|
|
{ }
|
|
{ Administración de puntos de venta }
|
|
{ }
|
|
{ Copyright (C) 2006 Rodax Software S.L. }
|
|
{ }
|
|
{*******************************************************}
|
|
|
|
unit uEditorAjustarTraspasos;
|
|
|
|
interface
|
|
|
|
uses
|
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
|
Dialogs, StdCtrls, JvExControls, JvComponent,
|
|
JvgWizardHeader, ExtCtrls, cxStyles, cxCustomData, uBizTraspasos,
|
|
cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData,
|
|
cxCurrencyEdit, uDADataTable, cxGridLevel, cxGridCustomTableView,
|
|
cxGridTableView, cxGridBandedTableView, cxGridDBBandedTableView,
|
|
cxClasses, cxControls, cxGridCustomView, cxGrid, dxLayoutControl,
|
|
cxContainer, cxTextEdit, cxDBEdit, cxMemo, cxMaskEdit, cxDropDownEdit,
|
|
cxCheckBox, cxCalendar, cxLabel, cxDBLabel;
|
|
|
|
type
|
|
IEditorAjustarTraspasos = interface
|
|
['{40E4185E-595B-48DF-AFA8-E86509F7354F}']
|
|
function GetItems : IBizTraspasos;
|
|
procedure SetItems (const AValue : IBizTraspasos);
|
|
property Items : IBizTraspasos read GetItems write SetItems;
|
|
end;
|
|
|
|
TfEditorAjustarTraspasos = class(TForm, IEditorAjustarTraspasos)
|
|
bAceptar: TButton;
|
|
bCancelar: TButton;
|
|
JvgWizardHeader1: TJvgWizardHeader;
|
|
Bevel1: TBevel;
|
|
dsDataSource: TDADataSource;
|
|
dxLayoutControl1Group_Root: TdxLayoutGroup;
|
|
dxLayoutControl1: TdxLayoutControl;
|
|
dxLayoutControl1Group1: TdxLayoutGroup;
|
|
dxLayoutControl1Group3: TdxLayoutGroup;
|
|
dxLayoutControl1Group5: TdxLayoutGroup;
|
|
dxLayoutControl1Item9: TdxLayoutItem;
|
|
Bevel2: TBevel;
|
|
dxLayoutControl1Item2: TdxLayoutItem;
|
|
edtRec38: TcxDBMaskEdit;
|
|
dxLayoutControl1Item3: TdxLayoutItem;
|
|
edtRec40: TcxDBMaskEdit;
|
|
dxLayoutControl1Item4: TdxLayoutItem;
|
|
edtRec42: TcxDBMaskEdit;
|
|
dxLayoutControl1Item20: TdxLayoutItem;
|
|
edtRec44: TcxDBMaskEdit;
|
|
dxLayoutControl1Item21: TdxLayoutItem;
|
|
edtRec46: TcxDBMaskEdit;
|
|
dxLayoutControl1Item22: TdxLayoutItem;
|
|
edtRec48: TcxDBMaskEdit;
|
|
dxLayoutControl1Item23: TdxLayoutItem;
|
|
Label2: TLabel;
|
|
dxLayoutControl1Item24: TdxLayoutItem;
|
|
edtRecR48: TcxCurrencyEdit;
|
|
dxLayoutControl1Item25: TdxLayoutItem;
|
|
edtRecR46: TcxCurrencyEdit;
|
|
dxLayoutControl1Item26: TdxLayoutItem;
|
|
edtRecR44: TcxCurrencyEdit;
|
|
dxLayoutControl1Item27: TdxLayoutItem;
|
|
edtRecR42: TcxCurrencyEdit;
|
|
dxLayoutControl1Item28: TdxLayoutItem;
|
|
edtRecR40: TcxCurrencyEdit;
|
|
dxLayoutControl1Item29: TdxLayoutItem;
|
|
edtRecR38: TcxCurrencyEdit;
|
|
dxLayoutControl1Group10: TdxLayoutGroup;
|
|
dxLayoutControl1Group11: TdxLayoutGroup;
|
|
dxLayoutControl1Group12: TdxLayoutGroup;
|
|
dxLayoutControl1Group13: TdxLayoutGroup;
|
|
dxLayoutControl1Group14: TdxLayoutGroup;
|
|
dxLayoutControl1Group15: TdxLayoutGroup;
|
|
dxLayoutControl1Item30: TdxLayoutItem;
|
|
Label3: TLabel;
|
|
dxLayoutControl1Group16: TdxLayoutGroup;
|
|
edtFecha: TcxDBLabel;
|
|
dxLayoutControl1Item31: TdxLayoutItem;
|
|
edtProducto: TcxDBLabel;
|
|
dxLayoutControl1Item32: TdxLayoutItem;
|
|
edtColor: TcxDBLabel;
|
|
dxLayoutControl1Item33: TdxLayoutItem;
|
|
cbEstado: TcxComboBox;
|
|
dxLayoutControl1Item5: TdxLayoutItem;
|
|
memObservaciones: TcxMemo;
|
|
dxLayoutControl1Item6: TdxLayoutItem;
|
|
cbContabilizar: TcxCheckBox;
|
|
dxLayoutControl1Item8: TdxLayoutItem;
|
|
dxLayoutControl1Group17: TdxLayoutGroup;
|
|
dxLayoutControl1Group7: TdxLayoutGroup;
|
|
dxLayoutControl1Group6: TdxLayoutGroup;
|
|
dxLayoutControl1Item7: TdxLayoutItem;
|
|
Bevel3: TBevel;
|
|
dxLayoutControl1Item1: TdxLayoutItem;
|
|
lblCentroOrigen: TLabel;
|
|
dxLayoutControl1Item10: TdxLayoutItem;
|
|
lblCentroDestino: TLabel;
|
|
dxLayoutControl1Group2: TdxLayoutGroup;
|
|
procedure FormShow(Sender: TObject);
|
|
procedure cxGridViewCustomDrawCell(Sender: TcxCustomGridTableView;
|
|
ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo;
|
|
var ADone: Boolean);
|
|
procedure bAceptarClick(Sender: TObject);
|
|
private
|
|
FItems : IBizTraspasos;
|
|
FHayErrores : Boolean;
|
|
procedure CargarValores;
|
|
procedure SalvarValores;
|
|
protected
|
|
function GetItems : IBizTraspasos;
|
|
procedure SetItems (const AValue : IBizTraspasos);
|
|
public
|
|
property Items : IBizTraspasos read GetItems write SetItems;
|
|
end;
|
|
|
|
|
|
implementation
|
|
|
|
uses
|
|
uEditorUtils, uDataModuleTraspasos;
|
|
|
|
{$R *.dfm}
|
|
|
|
function ShowEditorAjustarTraspasos (ABizObject : TDADataTableRules) : TModalResult;
|
|
var
|
|
AEditor: TfEditorAjustarTraspasos;
|
|
begin
|
|
AEditor := TfEditorAjustarTraspasos.Create(Application);
|
|
try
|
|
AEditor.Items := (ABizObject as IBizTraspasos);
|
|
Result := AEditor.ShowModal;
|
|
finally
|
|
AEditor.Release;
|
|
end;
|
|
end;
|
|
|
|
|
|
{ TfEditorCambioReferenciaGenerica }
|
|
|
|
procedure TfEditorAjustarTraspasos.FormShow(Sender: TObject);
|
|
begin
|
|
FHayErrores := False;
|
|
FItems.DataTable.Open;
|
|
|
|
CargarValores;
|
|
end;
|
|
|
|
function TfEditorAjustarTraspasos.GetItems: IBizTraspasos;
|
|
begin
|
|
Result := FItems;
|
|
end;
|
|
|
|
procedure TfEditorAjustarTraspasos.SetItems(
|
|
const AValue: IBizTraspasos);
|
|
begin
|
|
FItems := AValue;
|
|
if Assigned(FItems) then
|
|
dsDataSource.DataTable := FItems.DataTable;
|
|
end;
|
|
|
|
procedure TfEditorAjustarTraspasos.cxGridViewCustomDrawCell(
|
|
Sender: TcxCustomGridTableView; ACanvas: TcxCanvas;
|
|
AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
|
|
begin
|
|
if ((AViewInfo.Item as TcxGridDBBandedColumn).Position.RowIndex = 1) then
|
|
begin
|
|
ADone := True;
|
|
with AViewInfo do begin
|
|
ACanvas.FillRect(Bounds);
|
|
ACanvas.DrawTexT(Text, TextAreaBounds, 0);
|
|
ACanvas.FrameRect(Bounds, BorderColor[bBottom], 1, [bBottom]);
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
procedure TfEditorAjustarTraspasos.bAceptarClick(Sender: TObject);
|
|
begin
|
|
ShowHourglassCursor;
|
|
try
|
|
SalvarValores;
|
|
FItems.DataTable.ApplyUpdates;
|
|
finally
|
|
HideHourglassCursor;
|
|
end;
|
|
Close;
|
|
end;
|
|
|
|
procedure TfEditorAjustarTraspasos.CargarValores;
|
|
begin
|
|
with FItems.DataTable do
|
|
begin
|
|
if FieldByName('T38').AsInteger <> FieldByName('TR38').AsInteger then
|
|
edtRecR38.Value := FieldByName('TR38').AsInteger
|
|
else
|
|
edtRecR38.Value := FieldByName('T38').AsInteger;
|
|
|
|
if FieldByName('T40').AsInteger <> FieldByName('TR40').AsInteger then
|
|
edtRecR40.Value := FieldByName('TR40').AsInteger
|
|
else
|
|
edtRecR40.Value := FieldByName('T40').AsInteger;
|
|
|
|
if FieldByName('T42').AsInteger <> FieldByName('TR42').AsInteger then
|
|
edtRecR42.Value := FieldByName('TR42').AsInteger
|
|
else
|
|
edtRecR42.Value := FieldByName('T42').AsInteger;
|
|
|
|
if FieldByName('T44').AsInteger <> FieldByName('TR44').AsInteger then
|
|
edtRecR44.Value := FieldByName('TR44').AsInteger
|
|
else
|
|
edtRecR44.Value := FieldByName('T44').AsInteger;
|
|
|
|
if FieldByName('T46').AsInteger <> FieldByName('TR46').AsInteger then
|
|
edtRecR46.Value := FieldByName('TR46').AsInteger
|
|
else
|
|
edtRecR46.Value := FieldByName('T46').AsInteger;
|
|
|
|
if FieldByName('T48').AsInteger <> FieldByName('TR48').AsInteger then
|
|
edtRecR48.Value := FieldByName('TR48').AsInteger
|
|
else
|
|
edtRecR48.Value := FieldByName('T48').AsInteger;
|
|
|
|
if Length(FieldByName('ESTADO_TRASPASO').AsString) = 0 then
|
|
cbEstado.Text := cbEstado.Properties.Items[0]
|
|
else
|
|
cbEstado.Text := FieldByName('ESTADO_TRASPASO').AsString;
|
|
|
|
if FieldByName('TIPO').AsString = 'S' then
|
|
begin
|
|
lblCentroOrigen.Caption := FieldByName('CENTRO').AsString;
|
|
lblCentroDestino.Caption := FieldByName('CENTRO2').AsString;
|
|
end
|
|
else begin
|
|
lblCentroOrigen.Caption := FieldByName('CENTRO2').AsString;
|
|
lblCentroDestino.Caption := FieldByName('CENTRO').AsString;
|
|
end;
|
|
|
|
cbContabilizar.Checked := (FieldByName('CONTABILIZAR').AsString = 'S');
|
|
memObservaciones.Lines.Clear;
|
|
if Length(FieldByName('OBSERVACIONES').AsString) > 0 then
|
|
memObservaciones.Lines.Add(FieldByName('OBSERVACIONES').AsString)
|
|
end;
|
|
end;
|
|
|
|
procedure TfEditorAjustarTraspasos.SalvarValores;
|
|
var
|
|
aux : String;
|
|
begin
|
|
with FItems.DataTable do
|
|
begin
|
|
Edit;
|
|
FieldByName('TR38').AsVariant := edtRecR38.Value;
|
|
FieldByName('TR40').AsVariant := edtRecR40.Value;
|
|
FieldByName('TR42').AsVariant := edtRecR42.Value;
|
|
FieldByName('TR44').AsVariant := edtRecR44.Value;
|
|
FieldByName('TR46').AsVariant := edtRecR46.Value;
|
|
FieldByName('TR48').AsVariant := edtRecR48.Value;
|
|
|
|
if Length(memObservaciones.Lines.Text) > 0 then
|
|
FieldByName('OBSERVACIONES').AsString := memObservaciones.Lines.Text
|
|
else
|
|
FieldByName('OBSERVACIONES').AsVariant := null;
|
|
|
|
if cbContabilizar.Checked then
|
|
FieldByName('CONTABILIZAR').AsString := 'S'
|
|
else
|
|
FieldByName('CONTABILIZAR').AsString := 'N';
|
|
|
|
|
|
if cbEstado.Text = cbEstado.Properties.Items[0] then
|
|
FieldByName('ESTADO_TRASPASO').AsVariant := null
|
|
else
|
|
FieldByName('ESTADO_TRASPASO').AsString := cbEstado.Text;
|
|
|
|
Post;
|
|
end;
|
|
end;
|
|
|
|
|
|
initialization
|
|
RegisterEditor(IBizTraspasos, ShowEditorAjustarTraspasos, etItem);
|
|
|
|
finalization
|
|
|
|
end.
|
|
|