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

📄 sys_reportctrl.pas

📁 一个MRPII系统源代码版本
💻 PAS
字号:
//张程炜
unit Sys_ReportCtrl;

Interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  Base_Outer, Menus, ExtPrintReport, Db, ActnList, AdODB, Grids, DBGridEh,
  StdCtrls, ExtCtrls, ComCtrls, ToolWin;

Type
  TFrm_Sys_ReportCtrl = Class(TFrm_Base_Outer)
    AdoQry_MainSysMenuCode: TStringField;
    AdoQry_MainSysMenuName: TStringField;
    AdoQry_MainReportName1: TStringField;
    AdoQry_MainisoCode1: TStringField;
    AdoQry_MainReportName2: TStringField;
    AdoQry_MainisoCode2: TStringField;
    AdoQry_MainReportName3: TStringField;
    AdoQry_MainisoCode3: TStringField;
    AdoQry_MainSysMenuid: TBCDField;
    procedure Act_ModifyExecute(Sender: TObject);
  private
    { Private declarations }
  public
    procedure InitForm(AdOConnection:TAdOConnection;ReadOnly:Boolean);Override;
    function  SetDeleteSql:String;Override  ;
    { Public declarations }
  end;

var
  Frm_Sys_ReportCtrl: TFrm_Sys_ReportCtrl;

implementation

uses Sys_ReportCtrl_D,Sys_Global;

{$R *.DFM}

procedure TFrm_Sys_ReportCtrl.InitForm(AdOConnection:TAdOConnection;ReadOnly:Boolean);
begin
  inherited;
  SelectFromSQL:=
     ' select m.SysMenuid,m.SysMenuCode,'+
          ' REPLICATE('' '',len(m.SysMenuCode)-4)+m.SysMenuName SysMenuName,'+
          ' r.ReportName1,r.isoCode1,'+
          ' r.ReportName2,r.isoCode2,r.ReportName3,r.isoCode3 '+
        'from SysMenu m '+
        'left join ReportCtrl r on r.SysMenuid=m.SysMenuid ';
  OrderByFields:='SysMenuCode';
  ConditionUserDefine:=' m.SysModuleCode='''+ModuleCode+'''';
  if (ModuleCode='Inv') or (ModuleCode='Stk') or (ModuleCode='Sal') then
    ConditionUserDefine:=ConditionUserDefine+' and (not m.SysMenuCode like ''mn01%'' or m.SysMenuCode=''mn01'')';
  if ModuleCode='Sfc' then
    ConditionUserDefine:=ConditionUserDefine+' and (not m.SysMenuCode like ''mn01%'' or m.SysMenuCode=''mn01'' or m.SysMenuCode>''mn0107'')';
  GetData;
  Frm_Sys_Detail:=TFrm_Sys_ReportCtrl_D.Create(Application)
end;

function TFrm_Sys_ReportCtrl.SetDeleteSql:String;
begin
end;

procedure TFrm_Sys_ReportCtrl.Act_ModifyExecute(Sender: TObject);
var
  i:integer;
begin
  with AdoQry_Main do
  begin
    i:=length(fieldbyname('SysMenuCode').asstring);
    if (Trim(fieldbyname('SysMenuName').asstring)='-') or (i=4) then
      abort;
    disablecontrols;
    try
      next;
      if not eof then
      begin
        if i<length(fieldbyname('SysMenuCode').asstring) then
          abort;
      end;
    finally
      if eof then last
      else
        prior;
      enablecontrols;
    end;
  end;
  inherited;
end;

end.

⌨️ 快捷键说明

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