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

📄 sj_ywkccx.pas

📁 省级集邮品管理ERP
💻 PAS
📖 第 1 页 / 共 3 页
字号:
{*******************************************************}
{                                                       }
{                     库存查询                          }
{                                                       }
{            中软金马公司版权所有。2002.12前            }
{                                                       }
{            编制:中软金马邮资票品项目开发组           }
{                                                       }
{                                                       }
{*******************************************************}
(*
省级集邮品,省级集邮票,省级零枚票,省级市场购入票
地市集邮品,地市集邮票,地市市场购入票.省级综合查询

*)
(*
修改记录:
  1、在界面上增加年度、票品类别(大类)、小类、特征的查询条件
  2、最下面增加一个合计行,志号处显示合计、票品名称处显示:记录数:XX
  3、查询结果锁定:志号、票品名称、库房名称、进价
  4、查询结果顺序:志号、票品名称、库房名称(无合计)、进价(无合计)、数量、面值(无合计)、
    库存核算价(无合计)、销价(无合计)、进价金额、面值金额、库存核算价金额、销价金额、折扣(无合计)、
    结算价(无合计)、库位(无合计)

  霍铁明   2002年12月9日
*)

unit SJ_YWKCCX;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  Grids, DBGrids, Buttons, ExtCtrls, StdCtrls, ActnList, Db, DBTables,
  ComCtrls, ImgList, Spin, RXCtrls, SqlStrings, RxQuery, DBGridExport,
  Menus, FieldComboBox, Mask, ToolEdit, CurrEdit, EHGrids,
  DBGridEh;

type
  TFrm_YWKCCX = class(TForm)
    GroupBox1: TGroupBox;
    Label1: TLabel;
    Label2: TLabel;
    ActionList1: TActionList;
    Act_sel: TAction;
    Act_rtn: TAction;
    DS_kc: TDataSource;
    Panel2: TPanel;
    rxLbl_Title: TRxLabel;
    DWMC: TLabel;
    RxQry_KC: TRxQuery;
    RxQry_Tmp: TRxQuery;
    RxQry_KCPPDM: TStringField;
    RxQry_KCKWH: TStringField;
    RxQry_KCTS: TFloatField;
    RxQry_KCKFMC: TStringField;
    RxQry_KCTMC: TStringField;
    RxQry_KCZH: TStringField;
    RxQry_KCJJ: TFloatField;
    RxQry_KCXJ: TFloatField;
    RxQry_KCZK: TFloatField;
    RxQry_KCJSJ: TFloatField;
    rg_ZHMC: TRadioGroup;
    chk_MHCX: TCheckBox;
    edt_ZHMC: TEdit;
    Label3: TLabel;
    fcb_PPLB: TFieldComboBox;
    bbtn_Quit: TBitBtn;
    bbtn_Find: TBitBtn;
    L_MC: TLabel;
    cb_XJ: TComboBox;
    fcb_KFMC: TFieldComboBox;
    fcb_PPMC: TFieldComboBox;
    RG_KC: TRadioGroup;
    chk_BHKC: TCheckBox;
    bbtn_Print: TBitBtn;
    se_ND: TSpinEdit;
    Label5: TLabel;
    fcb_DL: TFieldComboBox;
    Label6: TLabel;
    fcb_TZ: TFieldComboBox;
    chk_ND: TCheckBox;
    RxQry_KCMZ: TFloatField;
    RxQry_KCKCHSJ: TFloatField;
    RxQry_KCJJJE: TFloatField;
    RxQry_KCMZJE: TFloatField;
    RxQry_KCKCHSJJE: TFloatField;
    RxQry_KCSJJE: TFloatField;
    dbgEh_KC: TDBGridEh;
    procedure Act_selExecute(Sender: TObject);
    procedure Act_rtnExecute(Sender: TObject);
    procedure RxQry_KCAfterOpen(DataSet: TDataSet);
    procedure FormCreate(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure RxQry_KCJJGetText(Sender: TField; var Text: string;
      DisplayText: Boolean);
    procedure fcb_PPLBChange(Sender: TObject);
    procedure fcb_KFMCChange(Sender: TObject);
    procedure bbtn_PrintClick(Sender: TObject);
    procedure fcb_DLChange(Sender: TObject);
    procedure se_NDChange(Sender: TObject);
    procedure chk_NDClick(Sender: TObject);
    procedure RxQry_KCMZGetText(Sender: TField; var Text: string;
      DisplayText: Boolean);
    procedure RxQry_KCKCHSJGetText(Sender: TField; var Text: string;
      DisplayText: Boolean);
    procedure RxQry_KCJJJEGetText(Sender: TField; var Text: string;
      DisplayText: Boolean);
    procedure RxQry_KCMZJEGetText(Sender: TField; var Text: string;
      DisplayText: Boolean);
    procedure RxQry_KCKCHSJJEGetText(Sender: TField; var Text: string;
      DisplayText: Boolean);
    procedure RxQry_KCSJJEGetText(Sender: TField; var Text: string;
      DisplayText: Boolean);
    procedure dbgEh_KCGetFooterParams(Sender: TObject; DataCol,
      Row: Integer; Column: TColumnEh; AFont: TFont;
      var Background: TColor; var Alignment: TAlignment;
      State: TGridDrawState; var Text: string);
    procedure FormShow(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

function Show_YWKCCX(io_typ: TIO_TYPE): boolean;

var
  Frm_YWKCCX: TFrm_YWKCCX;

implementation

uses
   datas,pub;

var
  vl_Io_Type: TIO_TYPE;

{$R *.DFM}

{-------------------------------------------------------------------------------}
{从INI文件文件读取并设置DbGrid列宽}
procedure TFrm_YWKCCX.FormCreate(Sender: TObject);
begin
  GetAllColWidth(Self);
  se_ND.Text:= FormatDateTime('yyyy', GetSysDate);
end;

{-------------------------------------------------------------------------------}
{库存查询公共模块}
function Show_YWKCCX(io_typ: TIO_TYPE): boolean;
begin
  Result:= false;
  with TFrm_YWKCCX.Create(Application) do
  begin
    vl_Io_Type:= io_typ;
    Caption:= '邮资票品管理信息系统';
    rxLbl_Title.Caption:= pCaption[integer(vl_Io_Type)] + '库存查询';
    DWMC.Caption:= '使用单位:' + VG_UnitName;
    try
      {刷新库房名称}
      fcb_KFMC.ClearAll;
      with RxQry_Tmp do
      begin
        Close;
        case vl_Io_Type of
          io_jyp:
            begin
              SQL.Text:= ' select DISTINCT b.KFMC, b.KFDM from TYS_JYPPKC a, TGS_KFB b, TGS_KFRYDZB c'#10#13
                + ' where a.KFDM=b.KFDM and a.KFDM=c.KFDM and c.YGDM= ' + QuotedStr(VG_USERID) + ' order by b.KFDM';
            end;
          io_txp:
            begin
              SQL.Text:= ' select DISTINCT b.KFMC, b.KFDM from TYS_TXPPKC a, TGS_KFB b, TGS_KFRYDZB c'#10#13
                + ' where a.KFDM=b.KFDM and a.KFDM=c.KFDM and c.YGDM= ' + QuotedStr(VG_USERID) + ' order by b.KFDM';
            end;
          io_yp:
            begin
              SQL.Text:= ' select DISTINCT b.KFMC, b.KFDM from  TYS_YPPKC a, TGS_KFB b, TGS_KFRYDZB c '#10#13
                + ' where a.KFDM=b.KFDM and a.KFDM=c.KFDM and c.YGDM= ' + QuotedStr(VG_USERID) + ' order by b.KFDM';
            end;
          io_grp:
            begin
              SQL.Text:= ' select DISTINCT b.KFMC, b.KFDM from TYS_GRPPKC a, TGS_KFB b, TGS_KFRYDZB c '#10#13
                + ' where a.KFDM=b.KFDM and a.KFDM=c.KFDM and c.YGDM= ' + QuotedStr(VG_USERID) + ' order by b.KFDM';
            end;
        end;
        Open;
        while not Eof do
        begin
          fcb_KFMC.Items.Add(Fields[0].AsString);
          fcb_KFMC.FieldItems.Add(Fields[1].AsString);
          Next;
        end;
        fcb_KFMC.ItemIndex:= 0;
        fcb_KFMCChange(nil);
      end;

      {刷新票品价格}
      cb_XJ.Items.Clear;
      with RxQry_Tmp do
      begin
        Close;
        case vl_Io_Type of
          io_jyp:
            begin
              SQL.Text:= ' select DISTINCT a.XJ from TYS_JYPPKC a, TGS_KFB b, TGS_KFRYDZB c'#10#13
                + ' where a.KFDM=b.KFDM and a.KFDM=c.KFDM and c.YGDM= ' + QuotedStr(VG_USERID) + ' order by a.XJ';
            end;
          io_txp:
            begin
              SQL.Text:= ' select DISTINCT a.XJ from TYS_TXPPKC a, TGS_KFB b, TGS_KFRYDZB c'#10#13
                + ' where a.KFDM=b.KFDM and a.KFDM=c.KFDM and c.YGDM= ' + QuotedStr(VG_USERID) + ' order by a.XJ';
            end;
          io_yp:
            begin
              SQL.Text:= ' select DISTINCT a.XJ from  TYS_YPPKC a, TGS_KFB b, TGS_KFRYDZB c '#10#13
                + ' where a.KFDM=b.KFDM and a.KFDM=c.KFDM and c.YGDM= ' + QuotedStr(VG_USERID) + ' order by a.XJ';
            end;
          io_grp:
            begin
              SQL.Text:= 'select DISTINCT a.XJ from TYS_GRPPKC a, TGS_KFB b, TGS_KFRYDZB c '#10#13
                + ' where a.KFDM=b.KFDM and a.KFDM=c.KFDM and c.YGDM= ' + QuotedStr(VG_USERID) + ' order by a.XJ';
            end;
        end;
        Open;
        while not Eof do
        begin
          cb_XJ.Items.Add(Fields[0].AsString);
          Next;
        end;
      end;
      Act_selExecute(nil);
    except
      Application.MessageBox('不能打开 <库存信息表>', '提示', MB_OK + 48);
      Exit;
    end;
    result:= ShowModal = MB_OK;
    free;
  end;
end;

{-------------------------------------------------------------------------------}
{如果为集邮品,DbGridEh中面值、库存核算价、面值金额、库存核算价金额字段不显示}
procedure TFrm_YWKCCX.FormShow(Sender: TObject);
var
  i: Integer;
begin
  if vl_Io_Type = io_yp then
    for i:= 0 to dbgEh_KC.Columns.Count - 1 do
      if (dbgEh_KC.Columns[i].FieldName = 'MZ') or (dbgEh_KC.Columns[i].FieldName = 'KCHSJ')
        or (dbgEh_KC.Columns[i].FieldName = 'MZJE') or (dbgEh_KC.Columns[i].FieldName = 'KCHSJJE') then
        dbgEh_KC.Columns[i].Visible:= False;
end;

{-------------------------------------------------------------------------------}
{年度复选框单击}
procedure TFrm_YWKCCX.chk_NDClick(Sender: TObject);
begin
  fcb_KFMCChange(nil);
end;

{-------------------------------------------------------------------------------}
{年度改变}
procedure TFrm_YWKCCX.se_NDChange(Sender: TObject);
begin
  fcb_KFMCChange(nil);
end;

{-------------------------------------------------------------------------------}

⌨️ 快捷键说明

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