⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 uselectstockorder.pas

📁 天涯進銷存系統
💻 PAS
字号:
unit uSelectStockOrder;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls,jpeg, LBCtrls, ActnList, StdCtrls,
  LBDBScrollBar, Grids, LBDBGrid, DB, DBClient, SimpleDS, LBMorphVCLBase,
  LBMorphButton;

type
  TfrmSelectStockOrder = class(TForm)
    Image2: TImage;
    SysCloseButton: TLBMorphButton;
    Panel4: TPanel;
    Panel6: TPanel;
    Panel3: TPanel;
    ActionList1: TActionList;
    Action1: TAction;
    Action2: TAction;
    LBSpeecButton1: TLBSpeecButton;
    LBSpeecButton2: TLBSpeecButton;
    Label2: TLabel;
    Label1: TLabel;
    BillCodeEdit: TLBEdit;
    NameEdit: TLBEdit;
    Label3: TLabel;
    StateEdit: TLBComboBox;
    Shape1: TShape;
    DataDBGrid: TLBDBGrid;
    Panel2: TPanel;
    LBDBScrollBar1: TLBDBScrollBar;
    Label17: TLabel;
    Label21: TLabel;
    Label4: TLabel;
    Label7: TLabel;
    Label5: TLabel;
    sdsSelectBillData: TSimpleDataSet;
    dsSelectBillData: TDataSource;
    sdsSelectBillDataBILLCODE: TStringField;
    sdsSelectBillDataPROVIDERCODE: TStringField;
    sdsSelectBillDataPROVIDERNAME: TStringField;
    sdsSelectBillDataBILLDATE: TSQLTimeStampField;
    sdsSelectBillDataINPUTTYPE: TStringField;
    sdsSelectBillDataISEXECUTE: TStringField;
    sdsSelectBillDataState: TStringField;
    WindowCaption: TLabel;
    procedure FormShow(Sender: TObject);
    procedure FormKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure BillCodeEditChange(Sender: TObject);
    procedure NameEditKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure DataDBGridKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Action2Execute(Sender: TObject);
    procedure Action1Execute(Sender: TObject);
    procedure BillCodeEditKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure sdsSelectBillDataCalcFields(DataSet: TDataSet);
    procedure SysCloseButtonClick(Sender: TObject);
    procedure Image2MouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
  private
    procedure SelectData;
  public
    { Public declarations }
  end;

var
  frmSelectStockOrder: TfrmSelectStockOrder;

const
  sql = 'select BillCode, ProviderCode, Provider, BillDate, OrderMan, '+
        'isExecute From OrderBillHand where OrderType='''+'1''';

implementation

uses uDataMo, uPublicvar, uConst;

{$R *.dfm}

procedure TfrmSelectStockOrder.SelectData;
var
  sqltext: string;
begin
  sqltext:=sql;
  if SelectBillType=2 then
  begin
    Sqltext:=Sqltext+' and isExecute='''+'0'''+' and isAUDITING='''+'1''';
    if OpposingCode<>'' then
       sqltext:=Sqltext+' and ProviderCode='+#39+OpposingCode+#39;
  end;
  if Trim(BillCodeEdit.Text)<>'' then
    sqltext:=sqltext+' and BillCode like '+#39+'%'+Trim(BillCodeEdit.Text)+'%'+#39;
  if Trim(NameEdit.Text)<>'' then
    sqltext:=sqltext+' and Provider like '+#39+'%'+Trim(NameEdit.Text)+'%'+#39;
  if OpposingCode<>'' then sqltext:=Sqltext+' and ProviderCode='+#39+OpposingCode+#39;
  if StateEdit.ItemIndex=0 then sqltext:=Sqltext+' and isExecute='''+'1''';
  if StateEdit.ItemIndex=1 then sqltext:=Sqltext+' and isExecute='''+'0''';
  OpenData(Sqltext+'Order by BillCode  Desc',sdsSelectBillData);
  OpposingCode:='';
end;

procedure TfrmSelectStockOrder.FormShow(Sender: TObject);
var
  sqltext: string;
begin
  sqltext:=Sql;
  if SelectBillType=2 then
  begin
    Sqltext:=SqlText+' and isExecute='''+'0'''+' and isAUDITING='''+'1''';
    Label3.Visible:=False;
    StateEdit.Visible:=False;
  end
  else if SelectBillType=1 then
  begin
    Label3.Visible:=True;
    StateEdit.Visible:=True;
  end;
  if OpposingCode<>'' then sqltext:=Sqltext+' and ProviderCode='+#39+OpposingCode+#39;
  OpenData(Sqltext+'Order by BillCode  Desc',sdsSelectBillData);
  OpposingCode:='';
end;

procedure TfrmSelectStockOrder.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Key=27 then Close;
end;

procedure TfrmSelectStockOrder.BillCodeEditChange(Sender: TObject);
begin
  SelectData;
end;

procedure TfrmSelectStockOrder.NameEditKeyDown(Sender: TObject;
  var Key: Word; Shift: TShiftState);
begin
  if key=13 then  Perform(WM_NEXTDLGCTL,0,0);
end;

procedure TfrmSelectStockOrder.DataDBGridKeyDown(Sender: TObject;
  var Key: Word; Shift: TShiftState);
begin
  if key=13 then Action2Execute(Sender);
  if key=VK_NEXT then
    if sdsSelectBillData.Eof then
       sdsSelectBillData.GetNextPacket;
end;

procedure TfrmSelectStockOrder.Action2Execute(Sender: TObject);
begin
  if sdsSelectBillData.IsEmpty then
  begin
    Application.MessageBox('没有选择任何入库单。',Hintinfo,$30);
    Exit;
  end;
  with sdsSelectBillData do
  begin
    SelectBillCode:=Trim(Fieldbyname('BillCode').asstring);
    OpposingCode:=Trim(Fieldbyname('ProviderCode').asstring);
    OpposingName:=Trim(Fieldbyname('Provider').asstring);
  end;
  Close;
end;

procedure TfrmSelectStockOrder.Action1Execute(Sender: TObject);
begin
  FormShow(Nil);
end;

procedure TfrmSelectStockOrder.BillCodeEditKeyDown(Sender: TObject;
  var Key: Word; Shift: TShiftState);
begin
  if key=13 then DataDBGrid.SetFocus;
end;

procedure TfrmSelectStockOrder.sdsSelectBillDataCalcFields(
  DataSet: TDataSet);
begin
  if sdsSelectBillData.FieldByName('ISEXECUTE').AsString='1' then
     sdsSelectBillData.FieldByName('STATE').AsString:='已收货'
  else
     sdsSelectBillData.FieldByName('STATE').AsString:='未收货';
end;

procedure TfrmSelectStockOrder.SysCloseButtonClick(Sender: TObject);
begin
  Close;
end;

procedure TfrmSelectStockOrder.Image2MouseDown(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
  ReleaseCapture;
  SendMessage(Handle, wm_SysCommand ,$F012, 0);
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -