📄 dailyproductfindfrm.pas
字号:
unit DailyProductFindFrm;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
FindFrameFrm, Db, ADODB, ActnList, Grids, DBGridEh, StdCtrls, Buttons,
ComCtrls, jpeg, ExtCtrls, EHGrids;
type
TDailyProductFindForm = class(TFindFrameForm)
cbProductCode: TComboBox;
Label1: TLabel;
ADOQuery2: TADOQuery;
ADOQuery1DSDesigner: TWideStringField;
ADOQuery1DSDesigner2: TWideStringField;
ADOQuery1DSDesigner3: TDateTimeField;
ADOQuery1DSDesigner4: TWideStringField;
ADOQuery1DSDesigner7: TFloatField;
ADOQuery1DSDesigner8: TFloatField;
ADOQuery1DSDesigner9: TWideStringField;
procedure AExecExecute(Sender: TObject);
procedure cbProductCodeChange(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure AReviewExecute(Sender: TObject);
procedure APrintExecute(Sender: TObject);
private
FProductCode: string;
procedure SetProductCode(const Value: string);
{ Private declarations }
protected
procedure InitInterface; override;
procedure InitCondition; override;
procedure CreateConditionString; override;
public
{ Public declarations }
property ProductCode: string read FProductCode write SetProductCode;
end;
var
DailyProductFindForm: TDailyProductFindForm;
implementation
uses U_DM, import1;
{$R *.DFM}
const AllProductInfo = '<<全部>>';
procedure TDailyProductFindForm.InitInterface;
procedure SetProductCodeList(ProductCodeList: TStrings);
begin
ProductCodeList.Clear;
ProductCodeList.Add(AllProductInfo);
with ADOQuery2 do
begin
Close;
SQL.Clear;
SQL.Add(' SELECT DISTINCT sgoodno ');
SQL.Add(' FROM xs_rbd ');
SQL.Add(' ORDER BY sgoodno ');
Open;
end;
if ADOQuery2.RecordCount>0 then
begin
while not ADOQuery2.Eof do
begin
ProductCodeList.Add(ADOQuery2.FieldByName('sgoodno').asstring);
ADOQuery2.Next;
end;//while
end;//if
end;//function
begin
inherited;
SetProductCodeList(cbProductCode.Items);
// cbStoreName.ItemIndex := 0;
end;
procedure TDailyProductFindForm.InitCondition;
begin
inherited;
ProductCode := AllProductInfo;
ColumnIndex := 1;
IsASCOrder := false;//日期
end;
procedure TDailyProductFindForm.CreateConditionString;
var
sBeginDate,sEndDate,sProductCode: string;
begin
inherited;
sBeginDate := DateToStr(BeginDate);
sEndDate := DateToStr(EndDate);
if ProductCode=AllProductInfo then sProductCode := '%' else sProductCode := ProductCode;
if DTPEnd.Checked then
ConditionString := ' WHERE xs_rbm.drbdate<= '''+sEndDate+''''+
' AND xs_rbd.sgoodno LIKE '''+sProductCode+'''';
if DTPBegin.Checked then
ConditionString := ' WHERE xs_rbm.drbdate>= '''+sBeginDate+''''+
' AND xs_rbd.sgoodno LIKE '''+sProductCode+'''';
if DTPBegin.Checked and DTPEnd.Checked then
ConditionString := ' WHERE xs_rbm.drbdate>= '''+sBeginDate+''''+
' AND xs_rbm.drbdate<= '''+sEndDate+''''+
' AND xs_rbd.sgoodno LIKE '''+sProductCode+'''';
if not DTPBegin.Checked and not DTPEnd.Checked then
ConditionString := ' WHERE xs_rbd.sgoodno LIKE '''+sProductCode+'''';
// ShowMessage(ConditionString);
end;
procedure TDailyProductFindForm.AExecExecute(Sender: TObject);
begin
inherited;
with ADOQuery1 do
begin
Close;
SQL.Clear;
SQL.Add(' select xs_rbm.sxsrbno ''日报编码'', ');
SQL.Add(' s_customer.ncName ''分销店名称'', ');
SQL.Add(' xs_rbm.drbdate ''上报时间'', ');
SQL.Add(' xs_rbd.sgoodno ''产品编码'', ');
// SQL.Add(' js_shoeskind1.s_name ''样式'', ');
// SQL.Add(' js_shoeskind2.s_name ''鞋别'', ');
SQL.Add(' xs_rbd.nTotal ''金额'', ');
SQL.Add(' xs_rbd.Amount ''数量'', ');
SQL.Add(' xs_rbm.smemo ''备注'' ');
SQL.Add(' from xs_rbm inner join xs_rbd ');
SQL.Add(' on Xs_rbm.sxsrbno = Xs_rbd.id ');
SQL.Add(' Left outer join s_customer ');
SQL.Add(' on xs_rbm.sclientno = s_customer.nccode ');
SQL.Add(ConditionString);
Open;
Sort := SortString;
end;//with
end;
////////////////////////////////////////////////////////////////////////////////
procedure TDailyProductFindForm.SetProductCode(const Value: string);
begin
FProductCode := Value;
if cbProductCode.Text<>Value then
cbProductCode.ItemIndex := cbProductCode.Items.IndexOf(Value);
end;
procedure TDailyProductFindForm.cbProductCodeChange(Sender: TObject);
begin
inherited;
ProductCode := cbProductCode.Text;
AExec.OnExecute(nil);
end;
procedure TDailyProductFindForm.FormDestroy(Sender: TObject);
begin
inherited;
DailyProductFindForm := nil;
end;
procedure TDailyProductFindForm.AReviewExecute(Sender: TObject);
begin
inherited;
CreateReport(Application.Handle,DM.ADOConnection.ConnectionString,'302','0',
nil,TAdoQuery(DataSource1.DataSet),false) ;
end;
procedure TDailyProductFindForm.APrintExecute(Sender: TObject);
begin
inherited;
CreateReport(Application.Handle,DM.ADOConnection.ConnectionString,'302','0',
nil,TAdoQuery(DataSource1.DataSet),TRUE) ;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -