328 lines
11 KiB
ObjectPascal
328 lines
11 KiB
ObjectPascal
|
|
unit U_TradePlanProfit1;
|
|||
|
|
|
|||
|
|
interface
|
|||
|
|
|
|||
|
|
uses
|
|||
|
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
|||
|
|
Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB,
|
|||
|
|
cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, StdCtrls,
|
|||
|
|
cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient,
|
|||
|
|
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls,
|
|||
|
|
cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid,
|
|||
|
|
cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common,
|
|||
|
|
RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection,
|
|||
|
|
IdTCPClient, IdFTP, ShellAPI, IniFiles, cxCheckBox, cxCalendar, cxButtonEdit,
|
|||
|
|
cxTextEdit, cxDBLookupComboBox, cxGridBandedTableView, cxGridDBBandedTableView,
|
|||
|
|
cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, dxDateRanges,
|
|||
|
|
dxBarBuiltInMenu, U_BaseList, dxScrollbarAnnotations, FrameDateSel,
|
|||
|
|
cxContainer, cxCurrencyEdit, dxSkinsCore, dxSkinsDefaultPainters,
|
|||
|
|
cxProgressBar;
|
|||
|
|
|
|||
|
|
type
|
|||
|
|
TfrmTradePlanProfit1 = class(TfrmBaseList)
|
|||
|
|
ToolBar1: TToolBar;
|
|||
|
|
TBRafresh: TToolButton;
|
|||
|
|
TBClose: TToolButton;
|
|||
|
|
ADOQueryTemp: TADOQuery;
|
|||
|
|
ADOQueryCmd: TADOQuery;
|
|||
|
|
Panel1: TPanel;
|
|||
|
|
TBFind: TToolButton;
|
|||
|
|
ToolButton1: TToolButton;
|
|||
|
|
cxGridPopupMenu2: TcxGridPopupMenu;
|
|||
|
|
ADOQueryMain: TADOQuery;
|
|||
|
|
DataSource1: TDataSource;
|
|||
|
|
cxStyleRepository1: TcxStyleRepository;
|
|||
|
|
cxStyle1: TcxStyle;
|
|||
|
|
ToolButton3: TToolButton;
|
|||
|
|
ToolButton4: TToolButton;
|
|||
|
|
ToolButton5: TToolButton;
|
|||
|
|
frmFrameDateSel1: TfrmFrameDateSel;
|
|||
|
|
Label1: TLabel;
|
|||
|
|
Label4: TLabel;
|
|||
|
|
BuyName: TcxTextEdit;
|
|||
|
|
ConNo: TcxTextEdit;
|
|||
|
|
Label2: TLabel;
|
|||
|
|
Saleser: TcxTextEdit;
|
|||
|
|
ToolButton2: TToolButton;
|
|||
|
|
ToolButton6: TToolButton;
|
|||
|
|
cxGrid1: TcxGrid;
|
|||
|
|
Tv1: TcxGridDBTableView;
|
|||
|
|
v1conno: TcxGridDBColumn;
|
|||
|
|
v1CustomerNoName: TcxGridDBColumn;
|
|||
|
|
Tv1Column85: TcxGridDBColumn;
|
|||
|
|
Tv1Column14: TcxGridDBColumn;
|
|||
|
|
Tv1Column15: TcxGridDBColumn;
|
|||
|
|
v1OrdDate: TcxGridDBColumn;
|
|||
|
|
Tv1Column1: TcxGridDBColumn;
|
|||
|
|
Tv1Column79: TcxGridDBColumn;
|
|||
|
|
Tv1Column83: TcxGridDBColumn;
|
|||
|
|
Tv1Column2: TcxGridDBColumn;
|
|||
|
|
Tv1Column3: TcxGridDBColumn;
|
|||
|
|
Tv1Column4: TcxGridDBColumn;
|
|||
|
|
Tv1Column5: TcxGridDBColumn;
|
|||
|
|
Tv1Column6: TcxGridDBColumn;
|
|||
|
|
Tv1Column80: TcxGridDBColumn;
|
|||
|
|
Tv1Column7: TcxGridDBColumn;
|
|||
|
|
Tv1Column9: TcxGridDBColumn;
|
|||
|
|
Tv1Column8: TcxGridDBColumn;
|
|||
|
|
Tv1Column10: TcxGridDBColumn;
|
|||
|
|
cxGrid1Level1: TcxGridLevel;
|
|||
|
|
ToolButton7: TToolButton;
|
|||
|
|
procedure FormDestroy(Sender: TObject);
|
|||
|
|
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
|||
|
|
procedure TBCloseClick(Sender: TObject);
|
|||
|
|
procedure FormShow(Sender: TObject);
|
|||
|
|
procedure TBRafreshClick(Sender: TObject);
|
|||
|
|
procedure TBFindClick(Sender: TObject);
|
|||
|
|
procedure ToolButton1Click(Sender: TObject);
|
|||
|
|
procedure FormCreate(Sender: TObject);
|
|||
|
|
procedure ToolButton3Click(Sender: TObject);
|
|||
|
|
procedure ToolButton4Click(Sender: TObject);
|
|||
|
|
procedure ToolButton5Click(Sender: TObject);
|
|||
|
|
procedure CustNamePropertiesChange(Sender: TObject);
|
|||
|
|
procedure ToolButton6Click(Sender: TObject);
|
|||
|
|
procedure ToolButton2Click(Sender: TObject);
|
|||
|
|
procedure ToolButton7Click(Sender: TObject);
|
|||
|
|
procedure cxButton4Click(Sender: TObject);
|
|||
|
|
procedure cxButton1Click(Sender: TObject);
|
|||
|
|
procedure cxButton5Click(Sender: TObject);
|
|||
|
|
procedure cxButton2Click(Sender: TObject);
|
|||
|
|
procedure cxButton3Click(Sender: TObject);
|
|||
|
|
private
|
|||
|
|
|
|||
|
|
{ Private declarations }
|
|||
|
|
|
|||
|
|
procedure InitGrid();
|
|||
|
|
public
|
|||
|
|
fkhType: string;
|
|||
|
|
Fmanage: string;
|
|||
|
|
canshu1: string;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
var
|
|||
|
|
frmTradePlanProfit1: TfrmTradePlanProfit1;
|
|||
|
|
|
|||
|
|
implementation
|
|||
|
|
|
|||
|
|
uses
|
|||
|
|
U_DataLink, U_RTFun, U_RPFun, U_ZDYHelp, U_TradePlanProfitDetails,
|
|||
|
|
U_LabelPrint;
|
|||
|
|
|
|||
|
|
{$R *.dfm}
|
|||
|
|
|
|||
|
|
procedure TfrmTradePlanProfit1.InitGrid();
|
|||
|
|
var
|
|||
|
|
SqlStr: string;
|
|||
|
|
begin
|
|||
|
|
SqlStr := ' exec P_Trade_Profit_Plan1 @Begdate=' + quotedstr(trim(FormatDateTime('yyyy-MM-dd', frmFrameDateSel1.Begdate.Date)));
|
|||
|
|
SqlStr := SqlStr + ' ,@enddate=' + quotedstr(trim(FormatDateTime('yyyy-MM-dd', frmFrameDateSel1.EndDate.Date + 1)));
|
|||
|
|
|
|||
|
|
InitADOData(ADOQueryMain, Tv1, SqlStr, SGetFilters(Panel1, 1, 2), 'conno');
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePlanProfit1.FormDestroy(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
inherited;
|
|||
|
|
frmTradePlanProfit1 := nil;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePlanProfit1.CustNamePropertiesChange(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
TBFind.Click;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePlanProfit1.cxButton1Click(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
inherited;
|
|||
|
|
frmFrameDateSel1.cxButton1Click(Sender);
|
|||
|
|
ToolBar1.SetFocus;
|
|||
|
|
InitGrid();
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePlanProfit1.cxButton2Click(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
inherited;
|
|||
|
|
frmFrameDateSel1.cxButton2Click(Sender);
|
|||
|
|
ToolBar1.SetFocus;
|
|||
|
|
InitGrid();
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePlanProfit1.cxButton3Click(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
inherited;
|
|||
|
|
frmFrameDateSel1.cxButton3Click(Sender);
|
|||
|
|
ToolBar1.SetFocus;
|
|||
|
|
InitGrid();
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePlanProfit1.cxButton4Click(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
inherited;
|
|||
|
|
frmFrameDateSel1.cxButton4Click(Sender);
|
|||
|
|
ToolBar1.SetFocus;
|
|||
|
|
InitGrid();
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePlanProfit1.cxButton5Click(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
inherited;
|
|||
|
|
frmFrameDateSel1.cxButton5Click(Sender);
|
|||
|
|
ToolBar1.SetFocus;
|
|||
|
|
InitGrid();
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePlanProfit1.FormClose(Sender: TObject; var Action: TCloseAction);
|
|||
|
|
begin
|
|||
|
|
inherited;
|
|||
|
|
Action := caFree;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePlanProfit1.TBCloseClick(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
|
|||
|
|
Close;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePlanProfit1.FormShow(Sender: TObject);
|
|||
|
|
var
|
|||
|
|
fsj: string;
|
|||
|
|
begin
|
|||
|
|
inherited;
|
|||
|
|
ReadCxGrid(trim(self.caption), Tv1, '<27><>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
|
|||
|
|
|
|||
|
|
InitGrid();
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePlanProfit1.TBRafreshClick(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
InitGrid();
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePlanProfit1.TBFindClick(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
if ADOQueryMain.Active then
|
|||
|
|
begin
|
|||
|
|
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
|
|||
|
|
// SCreateCDS(ADOQueryMain, CDS_1);
|
|||
|
|
// SInitCDSData(ADOQueryMain, CDS_1);
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePlanProfit1.ToolButton3Click(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
WriteCxGrid(trim(self.caption), Tv1, '<27><>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePlanProfit1.ToolButton4Click(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
try
|
|||
|
|
frmTradePlanProfitDetails := TfrmTradePlanProfitDetails.Create(Application);
|
|||
|
|
with frmTradePlanProfitDetails do
|
|||
|
|
begin
|
|||
|
|
|
|||
|
|
FConNo := Trim(Self.ADOQueryMain.fieldbyname('ConNo').AsString);
|
|||
|
|
if ShowModal = 1 then
|
|||
|
|
begin
|
|||
|
|
InitGrid();
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
finally
|
|||
|
|
frmTradePlanProfitDetails.Free;
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePlanProfit1.ToolButton5Click(Sender: TObject);
|
|||
|
|
var
|
|||
|
|
WSql: string;
|
|||
|
|
MPrintJson: string;
|
|||
|
|
begin
|
|||
|
|
WSql := ' ,@ConNo=' + quotedstr(Trim(Self.ADOQueryMain.fieldbyname('ConNo').AsString));
|
|||
|
|
MPrintJson := ' {"LMType": "TradePlanProfit1" ';
|
|||
|
|
MPrintJson := MPrintJson + ' ,"PreviewPrint": true ';
|
|||
|
|
MPrintJson := MPrintJson + ' ,"PrtArgs": [ { "IsSql": true, "Filtration":" @CXType=''<27>ܼ<EFBFBD>'' ' + WSql + '" }, ';
|
|||
|
|
MPrintJson := MPrintJson + ' { "IsSql": true, "Filtration":" @CXType=''<27><><EFBFBD><EFBFBD>'' ' + WSql + '" }, ';
|
|||
|
|
MPrintJson := MPrintJson + ' { "IsSql": true, "Filtration":" @CXType=''<27>ɱ<EFBFBD>'' ' + WSql + '" }, ';
|
|||
|
|
MPrintJson := MPrintJson + ' { "IsSql": true, "Filtration":" @CXType=''<27><><EFBFBD><EFBFBD>'' ' + WSql + '" }, ';
|
|||
|
|
MPrintJson := MPrintJson + ' { "IsSql": true, "Filtration":" @CXType=''<27><><EFBFBD><EFBFBD>'' ' + WSql + '" } ] } ';
|
|||
|
|
FromPrintFr3(Application, PChar(DConString), PChar(MPrintJson));
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePlanProfit1.ToolButton6Click(Sender: TObject);
|
|||
|
|
var
|
|||
|
|
WSql: string;
|
|||
|
|
MPrintJson: string;
|
|||
|
|
begin
|
|||
|
|
|
|||
|
|
WSql := ' ,@SellName=' + quotedstr(Trim(Self.ADOQueryMain.fieldbyname('SellName').AsString));
|
|||
|
|
WSql := WSql + ' ,@Begdate=' + quotedstr(trim(FormatDateTime('yyyy-MM-dd', frmFrameDateSel1.Begdate.Date)));
|
|||
|
|
WSql := WSql + ' ,@enddate=' + quotedstr(trim(FormatDateTime('yyyy-MM-dd', frmFrameDateSel1.EndDate.Date + 1)));
|
|||
|
|
|
|||
|
|
MPrintJson := ' {"LMType": "TradePlanProfit2" ';
|
|||
|
|
MPrintJson := MPrintJson + ' ,"PreviewPrint": true ';
|
|||
|
|
MPrintJson := MPrintJson + ' ,"PrtArgs": [ { "IsSql": true, "Filtration":" @CXType=''<27>ܼ<EFBFBD>'' ' + WSql + '" }, ';
|
|||
|
|
MPrintJson := MPrintJson + ' { "IsSql": true, "Filtration":" @CXType=''<27><><EFBFBD><EFBFBD>'' ' + WSql + '" }, ';
|
|||
|
|
MPrintJson := MPrintJson + ' { "IsSql": true, "Filtration":" @CXType=''<27>ɱ<EFBFBD>'' ' + WSql + '" }, ';
|
|||
|
|
MPrintJson := MPrintJson + ' { "IsSql": true, "Filtration":" @CXType=''<27><><EFBFBD><EFBFBD>'' ' + WSql + '" }, ';
|
|||
|
|
MPrintJson := MPrintJson + ' { "IsSql": true, "Filtration":" @CXType=''<27><><EFBFBD><EFBFBD>'' ' + WSql + '" } ] } ';
|
|||
|
|
FromPrintFr3(Application, PChar(DConString), PChar(MPrintJson));
|
|||
|
|
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePlanProfit1.ToolButton7Click(Sender: TObject);
|
|||
|
|
var
|
|||
|
|
WSql: string;
|
|||
|
|
MPrintJson: string;
|
|||
|
|
begin
|
|||
|
|
WSql := ' ,@Begdate=' + quotedstr(trim(FormatDateTime('yyyy-MM-dd', frmFrameDateSel1.Begdate.Date)));
|
|||
|
|
WSql := WSql + ' ,@enddate=' + quotedstr(trim(FormatDateTime('yyyy-MM-dd', frmFrameDateSel1.EndDate.Date + 1)));
|
|||
|
|
|
|||
|
|
MPrintJson := ' {"LMType": "TradePlanProfit4" ';
|
|||
|
|
MPrintJson := MPrintJson + ' ,"PreviewPrint": true ';
|
|||
|
|
MPrintJson := MPrintJson + ' ,"PrtArgs": [ { "IsSql": true, "Filtration":" @CXType=''<27>ܼ<EFBFBD>'' ' + WSql + '" }, ';
|
|||
|
|
MPrintJson := MPrintJson + ' { "IsSql": true, "Filtration":" @CXType=''<27><><EFBFBD><EFBFBD>'' ' + WSql + '" }, ';
|
|||
|
|
MPrintJson := MPrintJson + ' { "IsSql": true, "Filtration":" @CXType=''<27>ɱ<EFBFBD>'' ' + WSql + '" }, ';
|
|||
|
|
MPrintJson := MPrintJson + ' { "IsSql": true, "Filtration":" @CXType=''<27><><EFBFBD><EFBFBD>'' ' + WSql + '" }, ';
|
|||
|
|
MPrintJson := MPrintJson + ' { "IsSql": true, "Filtration":" @CXType=''<27><><EFBFBD><EFBFBD>'' ' + WSql + '" } ] } ';
|
|||
|
|
FromPrintFr3(Application, PChar(DConString), PChar(MPrintJson));
|
|||
|
|
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePlanProfit1.ToolButton1Click(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
if ADOQueryMain.IsEmpty then
|
|||
|
|
Exit;
|
|||
|
|
TcxGridToExcel(self.Caption, cxgrid1);
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePlanProfit1.ToolButton2Click(Sender: TObject);
|
|||
|
|
var
|
|||
|
|
WSql: string;
|
|||
|
|
MPrintJson: string;
|
|||
|
|
begin
|
|||
|
|
WSql := ' ,@Saleser=' + quotedstr(Trim(Self.ADOQueryMain.fieldbyname('Saleser').AsString));
|
|||
|
|
WSql := WSql + ' ,@Begdate=' + quotedstr(trim(FormatDateTime('yyyy-MM-dd', frmFrameDateSel1.Begdate.Date)));
|
|||
|
|
WSql := WSql + ' ,@enddate=' + quotedstr(trim(FormatDateTime('yyyy-MM-dd', frmFrameDateSel1.EndDate.Date + 1)));
|
|||
|
|
|
|||
|
|
MPrintJson := ' {"LMType": "TradePlanProfit3" ';
|
|||
|
|
MPrintJson := MPrintJson + ' ,"PreviewPrint": true ';
|
|||
|
|
MPrintJson := MPrintJson + ' ,"PrtArgs": [ { "IsSql": true, "Filtration":" @CXType=''<27>ܼ<EFBFBD>'' ' + WSql + '" }, ';
|
|||
|
|
MPrintJson := MPrintJson + ' { "IsSql": true, "Filtration":" @CXType=''<27><><EFBFBD><EFBFBD>'' ' + WSql + '" }, ';
|
|||
|
|
MPrintJson := MPrintJson + ' { "IsSql": true, "Filtration":" @CXType=''<27>ɱ<EFBFBD>'' ' + WSql + '" }, ';
|
|||
|
|
MPrintJson := MPrintJson + ' { "IsSql": true, "Filtration":" @CXType=''<27><><EFBFBD><EFBFBD>'' ' + WSql + '" }, ';
|
|||
|
|
MPrintJson := MPrintJson + ' { "IsSql": true, "Filtration":" @CXType=''<27><><EFBFBD><EFBFBD>'' ' + WSql + '" } ] } ';
|
|||
|
|
FromPrintFr3(Application, PChar(DConString), PChar(MPrintJson));
|
|||
|
|
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePlanProfit1.FormCreate(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
inherited;
|
|||
|
|
canshu1 := Trim(DParameters1);
|
|||
|
|
frmFrameDateSel1.EndDate.Date := SGetServerDate(ADOQueryTemp);
|
|||
|
|
frmFrameDateSel1.BegDate.Date := frmFrameDateSel1.EndDate.Date - 365;
|
|||
|
|
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
end.
|
|||
|
|
|