123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116 |
- unit DealBillsFme;
- interface
- uses
- DealBillsDm,
- Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
- Dialogs, StdCtrls, JimLabels, ZJGrid, ExtCtrls, sdGridDBA, dxBar,
- ActnList;
- type
- TDealBillsFrame = class(TFrame)
- saDealBills: TsdGridDBA;
- pnlDealBills: TPanel;
- zgDealBills: TZJGrid;
- dxpmDealBills: TdxBarPopupMenu;
- alDealBills: TActionList;
- actnChangeDealBillsMode: TAction;
- pnlTop: TPanel;
- labTitle: TJimGradLabel;
- procedure dxpmDealBillsPopup(Sender: TObject);
- procedure zgDealBillsMouseDown(Sender: TObject; Button: TMouseButton;
- Shift: TShiftState; X, Y: Integer);
- procedure actnChangeDealBillsModeExecute(Sender: TObject);
- private
- FDealBillsData: TDealBillsData;
- FIsEditMode:Boolean;
- FLockedData: Boolean;
- procedure AddCurrentBills;
- procedure SetLockedData(const Value: Boolean);
- procedure SetIsEditMode(const Value: Boolean);
- public
- constructor Create(AParent: TFrame; ADealBillsData: TDealBillsData);
- property LockedData: Boolean read FLockedData write SetLockedData;
- property IsEditMode: Boolean read FIsEditMode write SetIsEditMode;
- end;
- implementation
- uses
- MainFrm, UtilMethods, ProjectData, BillsCompileDm;
- {$R *.dfm}
- { TDealBillsFrame }
- constructor TDealBillsFrame.Create(AParent: TFrame;
- ADealBillsData: TDealBillsData);
- begin
- inherited Create(AParent);
- FDealBillsData := ADealBillsData;
- saDealBills.DataView := FDealBillsData.sdvDealBills;
- IsEditMode := False;
- LockedData := True;
- end;
- procedure TDealBillsFrame.SetLockedData(const Value: Boolean);
- begin
- FLockedData := Value;
- saDealBills.Columns.ColumnByName('B_Code').ReadOnly := FLockedData;
- saDealBills.Columns.ColumnByName('Name').ReadOnly := FLockedData;
- saDealBills.Columns.ColumnByName('Units').ReadOnly := FLockedData;
- saDealBills.Columns.ColumnByName('Price').ReadOnly := FLockedData;
- saDealBills.Columns.ColumnByName('Quantity').ReadOnly := FLockedData;
- saDealBills.Columns.ColumnByName('TotalPrice').ReadOnly := FLockedData;
- end;
- procedure TDealBillsFrame.dxpmDealBillsPopup(Sender: TObject);
- begin
- SetDxBtnAction(actnChangeDealBillsMode, MainForm.dxbtnChangeDealBillsMode);
- end;
- procedure TDealBillsFrame.SetIsEditMode(const Value: Boolean);
- begin
- FIsEditMode := Value;
- LockedData := not FIsEditMode;
- if FIsEditMode then
- begin
- labTitle.Caption := ' 푯獨헌데 -- 긍서친駕(崗샌데禱목錦맣헌데斤口)';
- actnChangeDealBillsMode.Caption := '학뻣逞敦뗍친駕';
- actnChangeDealBillsMode.Hint := '敦뗍친駕苟옵崗샌警속헌데逞0뵀憩瑯';
- end
- else
- begin
- labTitle.Caption := ' 푯獨헌데 -- 敦뗍친駕(崗샌옵警속朞櫓헌데逞0뵀憩瑯)';
- actnChangeDealBillsMode.Caption := '학뻣逞긍서친駕';
- actnChangeDealBillsMode.Hint := '긍서친駕苟옵崗샌錦맣헌데斤口';
- end;
- end;
- procedure TDealBillsFrame.zgDealBillsMouseDown(Sender: TObject;
- Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
- begin
- if Button = mbRight then
- dxpmDealBills.PopupFromCursorPos
- else if not FIsEditMode and (Button = mbLeft) and (ssDouble in Shift) then
- AddCurrentBills;
- end;
- procedure TDealBillsFrame.AddCurrentBills;
- begin
- if Assigned(saDealBills.DataView.Current) then
- with TProjectData(FDealBillsData.ProjectData).BillsCompileData do
- AddBillsFromDealBills(saDealBills.DataView.Current);
- end;
- procedure TDealBillsFrame.actnChangeDealBillsModeExecute(Sender: TObject);
- begin
- if IsEditMode or TProjectData(FDealBillsData.ProjectData).CheckPassword then
- IsEditMode := not IsEditMode;
- end;
- end.
|