123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172 |
- unit tpPartTenderSetFme;
- interface
- uses
- tpPartTenderSet, tpPartTenderFme,
- Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
- Dialogs, sdGridDBA, StdCtrls, JimLabels, ZJGrid, ExtCtrls, ActnList,
- dxBar;
- type
- TtpPartTenderSetFrame = class(TFrame)
- pnlPartTenders: TPanel;
- zgPartTendersInfo: TZJGrid;
- labGatherTenders: TJimGradLabel;
- pnlCurPartTender: TPanel;
- sprTenderData: TSplitter;
- dxpmPartTenders: TdxBarPopupMenu;
- alPartTenders: TActionList;
- actnExportTpExcel: TAction;
- procedure zgPartTendersInfoCurrentChanged(Sender: TObject; Col,
- Row: Integer);
- procedure dxpmPartTendersPopup(Sender: TObject);
- procedure actnExportTpExcelExecute(Sender: TObject);
- procedure zgPartTendersInfoMouseDown(Sender: TObject;
- Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
- procedure actnExportTpExcelUpdate(Sender: TObject);
- private
- FPartTenderSetData: TtpPartTenderSet;
- FCurPartTenderFrame: TtpPartTenderFrame;
- procedure AssignTenderInfo;
- procedure ExportPegGclExcel;
- procedure ExportGclPegExcel;
- public
- constructor Create(APartTenderSetData: TtpPartTenderSet);
- destructor Destroy; override;
- procedure RefreshData;
- end;
- implementation
- uses
- UtilMethods, tpPartTender, MainFrm, ExportExcel;
- {$R *.dfm}
- { TtpPartTenderSetFrame }
- procedure TtpPartTenderSetFrame.AssignTenderInfo;
- var
- i: Integer;
- vPartTender: TtpPartTender;
- begin
- zgPartTendersInfo.RowCount := FPartTenderSetData.TenderCount + 1;
- for i := 0 to FPartTenderSetData.TenderCount - 1 do
- begin
- vPartTender := FPartTenderSetData.PartTender[i];
- zgPartTendersInfo.Cells[1, i+1].Text := vPartTender.BeginPeg + '~' + vPartTender.EndPeg;
- zgPartTendersInfo.Cells[1, i+1].Align := gaCenterLeft;
- end;
- end;
- constructor TtpPartTenderSetFrame.Create(
- APartTenderSetData: TtpPartTenderSet);
- begin
- inherited Create(nil);
- zgPartTendersInfo.Cells[1, 0].Text := '깃뙈';
- FPartTenderSetData := APartTenderSetData;
- FPartTenderSetData.SetFrame := Self;
- FCurPartTenderFrame := TtpPartTenderFrame.Create;
- AlignControl(FCurPartTenderFrame, pnlCurPartTender, alClient);
- end;
- destructor TtpPartTenderSetFrame.Destroy;
- begin
- FCurPartTenderFrame.Free;
- inherited;
- end;
- procedure TtpPartTenderSetFrame.RefreshData;
- begin
- AssignTenderInfo;
- FCurPartTenderFrame.PartTenderData := FPartTenderSetData.PartTender[0];
- end;
- procedure TtpPartTenderSetFrame.zgPartTendersInfoCurrentChanged(
- Sender: TObject; Col, Row: Integer);
- var
- iTender: Integer;
- begin
- iTender := zgPartTendersInfo.CurRow - 1;
- FCurPartTenderFrame.PartTenderData := FPartTenderSetData.PartTender[iTender];
- end;
- procedure TtpPartTenderSetFrame.dxpmPartTendersPopup(Sender: TObject);
- begin
- SetDxBtnAction(actnExportTpExcel, MainForm.dxbtnExportTpExcel);
- end;
- procedure TtpPartTenderSetFrame.actnExportTpExcelExecute(Sender: TObject);
- begin
- if (FCurPartTenderFrame.tobtnInPegs.Down) then
- ExportPegGclExcel
- else if (FCurPartTenderFrame.tobtnInGcls.Down) then
- ExportGclPegExcel;
- end;
- procedure TtpPartTenderSetFrame.ExportGclPegExcel;
- var
- sFileName: string;
- Exportor: TMasterExcelExportor;
- begin
- if SaveExcelFile(sFileName) then
- begin
- Exportor := TMasterExcelExportor.Create;
- try
- Exportor.DefineCol(@ciTpGclPeg_Gcl, Length(ciTpGclPeg_Gcl), @ciTpGclPeg_Peg);
- with FCurPartTenderFrame.PartTenderData.InGclGatherData do
- begin
- Exportor.DefineMasterDataSet(sddGclGather, 'ID');
- Exportor.DefineRelaDataSet(sddGclRela, 'GclID');
- end;
- Exportor.ExportToFile(sFileName);
- finally
- Exportor.Free;
- end;
- end;
- end;
- procedure TtpPartTenderSetFrame.ExportPegGclExcel;
- var
- sFileName: string;
- Exportor: TMasterExcelExportor;
- begin
- if SaveExcelFile(sFileName) then
- begin
- Exportor := TMasterExcelExportor.Create;
- try
- Exportor.DefineCol(@ciTpPegGcl, Length(ciTpPegGcl));
- with FCurPartTenderFrame.PartTenderData.InPegData do
- begin
- Exportor.DefineMasterDataSet(sddPeg, 'ID');
- Exportor.DefineRelaDataSet(sddGclBills, 'PegID');
- end;
- Exportor.ExportToFile(sFileName);
- finally
- Exportor.Free;
- end;
- end;
- end;
- procedure TtpPartTenderSetFrame.zgPartTendersInfoMouseDown(Sender: TObject;
- Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
- begin
- if (Button = mbRight) and (FPartTenderSetData.TenderCount > 0) and
- (FCurPartTenderFrame.tobtnInPegs.Down or FCurPartTenderFrame.tobtnInGcls.Down) then
- dxpmPartTenders.PopupFromCursorPos;
- end;
- procedure TtpPartTenderSetFrame.actnExportTpExcelUpdate(Sender: TObject);
- begin
- if (FCurPartTenderFrame.tobtnInPegs.Down) then
- TAction(Sender).Caption := '돔놔Excel(렀鍋코褸뵀)'
- else if (FCurPartTenderFrame.tobtnInGcls.Down) then
- TAction(Sender).Caption := '돔놔Excel(렀鍋코헌데)';
- end;
- end.
|