123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137 |
- unit ZJJLFme;
- interface
- uses
- ZJJLDm,
- Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
- Dialogs, ExtCtrls, StdCtrls, DBCtrls, Mask, JimLabels, DB, ComCtrls,
- ToolWin, ActnList, ZjGridDBA, ZJGrid, dxBar;
- type
- TZJJLFrame = class(TFrame)
- labTitle: TJimGradLabel;
- alBGL: TActionList;
- actnGenerate: TAction;
- pnlTop: TPanel;
- pnlButton: TPanel;
- tobaTop: TToolBar;
- tobtnGenerate: TToolButton;
- lePreText: TLabeledEdit;
- zaZJJL: TZjGridDBA;
- pnlZJJL: TPanel;
- zgZJJL: TZJGrid;
- pnlListTitle: TPanel;
- pnlListBar: TPanel;
- lblListTitle: TLabel;
- pnlZJJLProperty: TPanel;
- pnlDataTitle: TPanel;
- lblDataTiel: TLabel;
- pnlDataBar: TPanel;
- dxpmZJJL: TdxBarPopupMenu;
- rgType: TRadioGroup;
- actnLocateBills: TAction;
- procedure actnGenerateExecute(Sender: TObject);
- procedure lePreTextExit(Sender: TObject);
- procedure zgZJJLMouseDown(Sender: TObject; Button: TMouseButton;
- Shift: TShiftState; X, Y: Integer);
- procedure dxpmZJJLPopup(Sender: TObject);
- procedure actnLocateBillsExecute(Sender: TObject);
- procedure actnLocateBillsUpdate(Sender: TObject);
- private
- FZJJLData: TZJJLData;
- FDataReadOnly: Boolean;
- procedure SetDataReadOnly(const Value: Boolean);
- public
- constructor Create(AParent: TFrame; AZJJLData: TZJJLData);
- destructor Destroy; override;
- procedure ResetFrameLink(AZJJLData: TZJJLData);
- property DataReadOnly: Boolean read FDataReadOnly write SetDataReadOnly;
- end;
- implementation
- uses
- MergeTextFrm, PhaseData, MainFrm, ProjectData, UtilMethods;
- {$R *.dfm}
- { TZJJLFrame }
- constructor TZJJLFrame.Create(AParent: TFrame; AZJJLData: TZJJLData);
- begin
- inherited Create(AParent);
- ResetFrameLink(AZJJLData);
- with TProjectData(TPhaseData(FZJJLData.PhaseData).ProjectData) do
- lePreText.Text := ProjProperties.ZJJLPreText;
- end;
- destructor TZJJLFrame.Destroy;
- begin
- inherited;
- end;
- procedure TZJJLFrame.ResetFrameLink(AZJJLData: TZJJLData);
- begin
- FZJJLData := AZJJLData;
- zaZJJL.DataSet := FZJJLData.cdsZJJLView;
- AlignControl(FZJJLData.DetailGrid, pnlZJJLProperty, alClient);
- end;
- procedure TZJJLFrame.actnGenerateExecute(Sender: TObject);
- begin
- with TProjectData(TPhaseData(FZJJLData.PhaseData).ProjectData) do
- ProjProperties.ZJJLPreText := lePreText.Text;
- if rgType.ItemIndex = 0 then
- FZJJLData.GenerateAll
- else if rgType.ItemIndex = 1 then
- FZJJLData.GenerateAllByB_Code;
- FZJJLData.AssignedCurData;
- end;
- procedure TZJJLFrame.lePreTextExit(Sender: TObject);
- begin
- with TProjectData(TPhaseData(FZJJLData.PhaseData).ProjectData) do
- ProjProperties.ZJJLPreText := lePreText.Text;
- end;
- procedure TZJJLFrame.SetDataReadOnly(const Value: Boolean);
- begin
- FDataReadOnly := Value;
- actnGenerate.Enabled := not FDataReadOnly;
- lePreText.Enabled := not FDataReadOnly;
- rgType.Enabled := not FDataReadOnly;
- zaZJJL.Column('Code').ReadOnly := FDataReadOnly;
- zaZJJL.Column('CertificateCode').ReadOnly := FDataReadOnly;
- end;
- procedure TZJJLFrame.zgZJJLMouseDown(Sender: TObject; Button: TMouseButton;
- Shift: TShiftState; X, Y: Integer);
- begin
- if Button = mbRight then
- dxpmZJJL.PopupFromCursorPos
- else if (ssDouble in Shift) and (zgZJJL.CurCol = 3) then
- begin
- if FZJJLData.cdsZJJLView.RecordCount > 0 then
- FZJJLData.LocateBills;
- end;
- end;
- procedure TZJJLFrame.dxpmZJJLPopup(Sender: TObject);
- begin
- SetDxBtnAction(actnLocateBills, MainForm.dxbtnLocateBills);
- end;
- procedure TZJJLFrame.actnLocateBillsExecute(Sender: TObject);
- begin
- FZJJLData.LocateBills;
- end;
- procedure TZJJLFrame.actnLocateBillsUpdate(Sender: TObject);
- begin
- TAction(Sender).Enabled := FZJJLData.cdsZJJLView.RecordCount > 0;
- end;
- end.
|