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

📄 sy_ck_jyp_sele.pas

📁 省级集邮品管理ERP
💻 PAS
字号:
{*******************************************************}
{                                                       }
{            集邮出库计划单——查询条件模块             }
{                                                       }
{            中软金马公司版权所有。2002.12              }
{                                                       }
{                   编制:杨俊                        }
{                                                       }
{                                                       }
{*******************************************************}

(*==============================================================================
省级集邮票

程序说明:
    1.  用记录型指针PRec_CKJH保存查询条件,默认查询一周内的计划分配单;
    2.  Show_Condition(A_CKJH: PRec_CKJH); 用来传递查询条件;

本模块调用

===============================================================================*)


unit Sy_CK_JYP_Sele;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, Buttons, Mask, ToolEdit;

type
  {复选框的选中与相应的列表框或者文本框的内容}
  TRec_Text = record
    Checked: Boolean;
    Index: Integer;
    Text: string;
  end;

  {复选框的选中与与相应的日期起止}
  TRec_Date = record
    Checked: Boolean;
    FromDate: TDate;
    ToDate: TDate;
  end;

  {出库计划分配单查询条件}
  PRec_CKJH = ^TRec_CKJH;
  TRec_CKJH = record
    JHDH: TRec_Text;                                        {计划号}
    RQ: TRec_Date;                                          {制定日期}
    SQL: string;
  end;

  TFrm_Sy_CK_JYP_Sele = class(TForm)
    gb_box: TGroupBox;
    Label1: TLabel;
    Label2: TLabel;
    chk_JHDH: TCheckBox;
    edt_JHDH: TEdit;
    chk_RQ: TCheckBox;
    DateEdt_FromDate: TDateEdit;
    DateEdt_ToDate: TDateEdit;
    bbtn_OK: TBitBtn;
    bbtn_Cancel: TBitBtn;
    procedure bbtn_OKClick(Sender: TObject);
    procedure chk_JHDHClick(Sender: TObject);
    procedure chk_RQClick(Sender: TObject);
  private
    { Private declarations }
  public
    procedure Show_Condition(A_CKJH: PRec_CKJH);
    { Public declarations }
  end;

var
  Frm_Sy_CK_JYP_Sele: TFrm_Sy_CK_JYP_Sele;

implementation

{$R *.DFM}

var
  VL_CKJH: PRec_CKJH;                                       {计划单——查询条件}

  { TFrm_Sy_CK_JYP_Sele }

{-------------------------------------------------------------------------------}
{查询条件}
procedure TFrm_Sy_CK_JYP_Sele.Show_Condition(A_CKJH: PRec_CKJH);
begin
  VL_CKJH := A_CKJH;

  with vl_CKJH^ do
  begin
    chk_JHDH.Checked := JHDH.Checked;                       {计划单}
    edt_JHDH.Text := JHDH.Text;
    chk_RQ.Checked := RQ.Checked;                           {起止日期}
    DateEdt_FromDate.Date := RQ.FromDate;
    DateEdt_ToDate.Date := RQ.ToDate;
  end;
end;

{-------------------------------------------------------------------------------}
{计划分配单号输入}
procedure TFrm_Sy_CK_JYP_Sele.chk_JHDHClick(Sender: TObject);
begin
  edt_JHDH.Enabled := chk_JHDH.Checked;
end;

{-------------------------------------------------------------------------------}
{制单日期的选中}
procedure TFrm_Sy_CK_JYP_Sele.chk_RQClick(Sender: TObject);
begin
  DateEdt_FromDate.Enabled := chk_RQ.Checked;
  DateEdt_ToDate.Enabled := chk_RQ.Checked;
end;

{===============================================================================}
{确认所选择的条件}
procedure TFrm_Sy_CK_JYP_Sele.bbtn_OKClick(Sender: TObject);
var
  l_sql: string;
begin
  {生成sql语句}
  l_sql := '  select distinct  b.CKJHDH, b.CKXZ, ''分配出库'' CKXZMC, b.ZBR, b.PZR, b.ZDRQ, b.BZ, b.ZT, c.ZH, a.PPMC ' +
    ' from TYS_JYCKJHDPPB a, TYS_JYCKJHDB b, TB_YZPPTXXB c where a.CKJHDH = b.CKJHDH and a.PPDM = c.TDM and b.CKXZ= ''10'' and b.CKJHDH like ''JN%'' ';

  if chk_JHDH.Checked then                                  {计划单号}
    l_sql := l_sql + '  and  b.CKJHDH like ' + QuotedStr('%' + edt_JHDH.Text + '%');

  if chk_Rq.Checked then                                    {制表日期}
    l_sql := l_sql + ' and  ( b.ZDRQ between  to_date( ' +
      QuotedStr(DateToStr(DateEdt_FromDate.Date)) + ',' + QuotedStr('YYYY/MM/DD') + ')  and to_date( ' +
      QuotedStr(DateToStr(DateEdt_ToDate.Date)) + ',' + QuotedStr('YYYY/MM/DD') + ')  )';

  l_sql := l_sql + ' order by b.CKJHDH ';

  with vl_CKJH^ do
  begin
    JHDH.Checked := chk_JHDH.Checked;                       {计划单号模糊查询}
    JHDH.Text := edt_JHDH.Text;
    RQ.Checked := chk_RQ.Checked;                           {起止日期}
    RQ.FromDate := DateEdt_FromDate.Date;
    RQ.ToDate := DateEdt_ToDate.Date;
    SQL := l_sql;
  end;

  ModalResult := mrOK;
end;

end.

⌨️ 快捷键说明

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