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

📄 cpkccx.pas

📁 仓库管理信息系统
💻 PAS
字号:
unit cpkccx;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Grids, DBGridEh, ComCtrls, StdCtrls, DBCtrls, ExtCtrls, Mask,
  DBCtrlsEh, Spin, DBLookupEh, StdActns, ActnList, ActnMan, Menus, PrnDbgeh,
  DBGridEhImpExp, Buttons,ADODB,db;

type
  Tfrm_cpkccx = class(TForm)
    Panel1: TPanel;
    DBNavigator1: TDBNavigator;
    DBGridEh1: TDBGridEh;
    GroupBox1: TGroupBox;
    Label8: TLabel;
    Edit1: TEdit;
    Button1: TButton;
    slcb1: TComboBox;
    sled1: TSpinEdit;
    slxx1: TComboBox;
    Label1: TLabel;
    Label2: TLabel;
    Button2: TButton;
    dblkbox: TDBLookupComboboxEh;
    stb: TStatusBar;
    SaveDialog1: TSaveDialog;
    MYPDBGEh: TPrintDBGridEh;
    PopupMenu1: TPopupMenu;
    N2: TMenuItem;
    N5: TMenuItem;
    N6: TMenuItem;
    PrintSetup1: TMenuItem;
    N1: TMenuItem;
    N3: TMenuItem;
    N4: TMenuItem;
    ActionManager1: TActionManager;
    EditCut1: TEditCut;
    EditCopy1: TEditCopy;
    EditPaste1: TEditPaste;
    EditDelete1: TEditDelete;
    FilePrintSetup1: TFilePrintSetup;
    FontEdit1: TFontEdit;
    ColorSelect1: TColorSelect;
    PrintDlg1: TPrintDlg;
    N7: TMenuItem;
    N8: TMenuItem;
    N9: TMenuItem;
    Panel2: TPanel;
    GroupBox2: TGroupBox;
    nf_spe: TSpinEdit;
    Label3: TLabel;
    jzts: TLabel;
    Label4: TLabel;
    BitBtn1: TBitBtn;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure FontEdit1Accept(Sender: TObject);
    procedure PrintSetup1Click(Sender: TObject);
    procedure N1Click(Sender: TObject);
    procedure N4Click(Sender: TObject);
    procedure N8Click(Sender: TObject);
    procedure N9Click(Sender: TObject);
    procedure nf_speChange(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
  private
    { Private declarations }
  public
    sxtjtx:string;
    { Public declarations }
  end;

var
  frm_cpkccx: Tfrm_cpkccx;

implementation
uses data, main;
{$R *.dfm}

procedure Tfrm_cpkccx.FormClose(Sender: TObject; var Action: TCloseAction);
begin
action:=cafree;
frm_cpkccx:=nil;
end;

procedure Tfrm_cpkccx.FormCreate(Sender: TObject);
begin
dm.jzxxbads.Close;
dm.jzxxbads.Open;
dm.jzxxbads.Filter:='结转项目='+''''+'产品'+'''';
dm.jzxxbads.Filtered:=true;
dm.zlads_cplx.Open;
nf_spe.MinValue:=dm.jzxxbads.fieldbyname('开始年份').Value;
nf_spe.MaxValue:=dm.jzxxbads.fieldbyname('最后年份').Value;
nf_spe.Value:=dm.jzxxbads.fieldbyname('最后年份').Value;
dm.cshads_cpkc.Close;
dm.cshads_cpkc.Parameters.ParamByName('nf').Value:=nf_spe.Value;
dm.cshads_cpkc.Open;
//  dm.jcsladosp.ExecProc;
//  dm.ccsladssp.ExecProc;
//  dm.kcsladosp.ExecProc;
//  dm.whckdmads.Open;
//  dm.whclbmads.Close;
//  dm.whclbmads.CommandText:='select * from CLDMB where 仓库ID='+''''+mainfrm.CKid+'''';
//  dm.whclbmads.Open;
//  dm.whcllxdmads.Open;
end;

procedure Tfrm_cpkccx.Button1Click(Sender: TObject);
begin
close;
end;

procedure Tfrm_cpkccx.Button2Click(Sender: TObject);
var sxtj:string;
begin
sxtj:='';
if trim(edit1.Text)<>'' then
   sxtj:='产品ID like %'+trim(edit1.Text)+'%';
if slxx1.ItemIndex>0 then
  if sxtj<>'' then
     sxtj:=sxtj+' and '+slxx1.Text+slcb1.Text+sled1.Text
   else
     sxtj:=slxx1.Text+slcb1.Text+sled1.Text;
if (dblkbox.KeyValue<>'') and
   (dblkbox.KeyValue<>null) then
   if sxtj<>'' then
     sxtj:=sxtj+' and 分类ID='+''''+dblkbox.KeyValue+''''
   else
     sxtj:='分类ID='+''''+dblkbox.KeyValue+'''';
dm.cshads_cpkc.Filtered:=false;
if trim(sxtj)<>'' then
begin
  dm.cshads_cpkc.Filter:=sxtj;
  dm.cshads_cpkc.Filtered:=true;
end;
sxtjtx:=sxtj;
sxtjtx:=StringReplace(sxtjtx,'and','以及',[rfReplaceAll]);
sxtjtx:=StringReplace(sxtjtx,'like %','包含"',[rfReplaceAll]);
sxtjtx:=StringReplace(sxtjtx,'%','"',[rfReplaceAll]);
sxtjtx:='查询条件:'+sxtjtx;
stb.SimpleText:=sxtjtx;
end;

procedure Tfrm_cpkccx.FontEdit1Accept(Sender: TObject);
begin
TDBGridEh(ActiveControl).Font:=FontEdit1.Dialog.Font;
TDBGridEh(ActiveControl).FooterFont:=FontEdit1.Dialog.Font;
TDBGridEh(ActiveControl).TitleFont:=FontEdit1.Dialog.Font;
end;

procedure Tfrm_cpkccx.PrintSetup1Click(Sender: TObject);
var bt,tj:string;
begin
  bt:='产品库存表';
  tj:=inttostr(nf_spe.value)+'年  //'+sxtjtx;   //打印条件:
  if (ActiveControl is TDBGridEh) then
  begin
    MYPDBGEh.DBGridEh := TDBGridEh(ActiveControl);
    MYPDBGEh.SetSubstitutes(['%[Today]',DateToStr(Now),'%[bt]',bt,'%[tj]',tj]);
    MYPDBGEh.print;
  end;
end;

procedure Tfrm_cpkccx.N1Click(Sender: TObject);
var bt,tj:string;
begin
  bt:='产品库存表';
  tj:=inttostr(nf_spe.value)+'年 ... '+sxtjtx;   //打印条件:
  if (ActiveControl is TDBGridEh) then
  begin
    MYPDBGEh.DBGridEh := TDBGridEh(ActiveControl);
    MYPDBGEh.SetSubstitutes(['%[Today]',DateToStr(Now),'%[bt]',bt,'%[tj]',tj]);
    MYPDBGEh.Preview;
  end;
end;

procedure Tfrm_cpkccx.N4Click(Sender: TObject);
var ExpClass:TDBGridEhExportClass;
    Ext:String;
begin
  SaveDialog1.FileName := 'file1';
  if (ActiveControl is TDBGridEh) then
    if SaveDialog1.Execute then
    begin
      case SaveDialog1.FilterIndex of
        1: begin ExpClass := TDBGridEhExportAsXLS; Ext := 'xls'; end;
        2: begin ExpClass := TDBGridEhExportAsCSV; Ext := 'csv'; end;
        3: begin ExpClass := TDBGridEhExportAsHTML; Ext := 'htm'; end;
        4: begin ExpClass := TDBGridEhExportAsRTF; Ext := 'rtf'; end;
        5: begin ExpClass := TDBGridEhExportAsText; Ext := 'txt'; end;
      else
        ExpClass := nil; Ext := '';
      end;
      if ExpClass <> nil then
      begin
        if UpperCase(Copy(SaveDialog1.FileName,Length(SaveDialog1.FileName)-2,3)) <>
           UpperCase(Ext) then
          SaveDialog1.FileName := SaveDialog1.FileName + '.' + Ext;
        SaveDBGridEhToExportFile(ExpClass,TDBGridEh(ActiveControl),
             SaveDialog1.FileName,true);
      end;
    end;
end;

procedure Tfrm_cpkccx.N8Click(Sender: TObject);
begin
TDBGridEh(ActiveControl).Columns
  [TDBGridEh(ActiveControl).SelectedIndex].Visible:=false;
if TDBGridEh(ActiveControl).SelectedIndex<
  TDBGridEh(ActiveControl).Columns.Count-1 then
TDBGridEh(ActiveControl).SelectedIndex:=
  TDBGridEh(ActiveControl).SelectedIndex+1;
end;

procedure Tfrm_cpkccx.N9Click(Sender: TObject);
var i:integer;
begin
  for i:=1 to TDBGridEh(ActiveControl).Columns.Count-1 do
  begin
        TDBGridEh(ActiveControl).Columns[i].Visible:=true;
  end;
end;

procedure Tfrm_cpkccx.nf_speChange(Sender: TObject);
begin
if nf_spe.Value>nf_spe.MaxValue then
  nf_spe.Value:=nf_spe.MaxValue;
if nf_spe.Value<nf_spe.MinValue then
  nf_spe.Value:=nf_spe.MinValue;
if nf_spe.Value<nf_spe.MaxValue then
begin
  jzts.Caption:='当年数据已结转,不可重新整理';
  jzts.Color:=clred;
  bitbtn1.Enabled:=false;
end
else
begin
  jzts.Caption:='当年数据未结转,可重新整理';
  jzts.Color:=clbtnface;
  bitbtn1.Enabled:=true;  
end;
dm.cshads_cpkc.Close;
dm.cshads_cpkc.Parameters.ParamByName('nf').Value:=nf_spe.Value;
dm.cshads_cpkc.Open;
end;

procedure Tfrm_cpkccx.BitBtn1Click(Sender: TObject);
var ts:string;
begin
ts:=jzts.Caption;
jzts.Font.Color:=clFuchsia;
jzts.Caption:='正在整理中...';
dm.ASP_KCZL.Close;
dm.ASP_KCZL.ProcedureName:='cpkc_update;1';
dm.ASP_KCZL.Parameters.Clear;
with dm.ASP_KCZL.Parameters.AddParameter do
begin
Name:='@return_value';
Direction:=pdReturnValue;
DataType:=ftInteger;
end;
with dm.ASP_KCZL.Parameters.AddParameter do
begin
Name:='@nf';
Direction:=pdInput;
DataType:=ftInteger;
end;
dm.ASP_KCZL.Parameters.ParamByName('@nf').Value:=nf_spe.Value;
dm.ASP_KCZL.Prepared;
dm.ASP_KCZL.Parameters.ParamByName('@nf').Value:=nf_spe.Value;
dm.ASP_KCZL.Prepared;
dm.ASP_KCZL.ExecProc;
jzts.Caption:=ts;
jzts.Font.Color:=clblack;
end;

end.

⌨️ 快捷键说明

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