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

📄 uglobal.~pas

📁 一个功能较全的图书进销存软件,功能还算完备
💻 ~PAS
字号:
unit Uglobal;

interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls, Buttons, ComCtrls, Grids, DBGrids, DBCtrls,
  Mask, DB, Menus, CheckLst, ADODB;

  {数据库操作相关}
  //将数据表中指定的一个字段值放在一个DBCombobox中
  Function c_getid(Sdbset:TAdoDataset;field1,dsetname:string;dtyname:string;Sdbcb:TDBComboBox):Boolean;
  //将数据表中指定的一个字段值放在一个Combobox中
  Function c_getid2(Sdbset:TAdoDataset;field1,dsetname:string;dtyname:string;Sdbcb:TComboBox):Boolean;
  //将数据表中指定的两个字段值放在一个DBCombobox和一个Combobox中
  Function c_getPid2(Sdbset:TAdoDataset;field1,field2,dsetname:string;dtyname:string;Sdbcb1:TDBComboBox;Sdbcb2:TComboBox):Boolean;
  //将数据表中指定的两个字段值放在两个Combobox中
  Function c_getPid3(Sdbset:TAdoDataset;field1,field2,dsetname:string;dtyname:string;Sdbcb1,Sdbcb2:TComboBox):Boolean;
  //将数据表中指定的四个字段值放在四个Combobox中
  Function c_getMid(Sdbset:TAdoDataset;field1,field2,field3,field4,dsetname:string;dtyname:string;Sdbcb1,Sdbcb2,Sdbcb3,Sdbcb4:TComboBox):Boolean;
  //提示框,警告框函数
  Function MSG(sMsg:string;sType:string):Boolean;
  //判断字符串是否为整数
  function IfInt(sInput:string):Boolean;
  //判断字符串是否为浮点数
  function IfNum(sInput:string):Boolean;

  var
    ReportIndex:Integer;
implementation

{------------------------------------------------------
// 功能描述:取数据库2个字段值放在2个DBCombobox中
// 变量输入:Sdbset 为dataset;dsetname 表名 Sdbcb1,2 为DBcombobox
// 变量输出:
// 返回结果:True/False 是/否
-------------------------------------------------------}
Function c_getid(Sdbset:TAdoDataset;field1,dsetname:string;dtyname:string;Sdbcb:TDBComboBox):Boolean;
var
  ind : integer;
begin
  try
    with Sdbset do
    begin
      if Active then
        Active := False;
      CommandText := 'Select * from ' + dsetname + ' where ' + dtyname + ' = 1 order by ID';
      Active := True;
      first;
      Sdbcb.Clear;
      ind := 0;
      while not eof do
      begin
        sdbcb.ItemIndex := ind;
        Sdbcb.Items.Add(Fieldbyname(field1).Value);
        ind := ind + 1;
        next;
      end;
      sdbcb.ItemIndex := -1;
    end;
    result := True;
  except
    result := False;
  end;
end;
{------------------------------------------------------
// 功能描述:取数据库2个字段值放在2个Combobox中
// 变量输入:Sdbset 为dataset;dsetname 表名 Sdbcb1,2 为DBcombobox
// 变量输出:
// 返回结果:True/False 是/否
-------------------------------------------------------}
Function c_getid2(Sdbset:TAdoDataset;field1,dsetname:string;dtyname:string;Sdbcb:TComboBox):Boolean;
var
  ind : integer;
begin
  try
    with Sdbset do
    begin
      if Active then
        Active := False;
      CommandText := 'Select * from ' + dsetname + ' where ' + dtyname + ' = 1 order by ID';
      Active := True;
      first;
      Sdbcb.Clear;
      ind := 0;
      while not eof do
      begin
        sdbcb.ItemIndex := ind;
        Sdbcb.Items.Add(Fieldbyname(field1).Value);
        ind := ind + 1;
        next;
      end;
      sdbcb.ItemIndex := -1;
    end;
    result := True;
  except
    result := False;
  end;
end;


{------------------------------------------------------
// 功能描述:取数据库某2个字段值放在1个DBCombobox和1个ComBoBox中
// 变量输入:Sdbset 为dataset;dsetname 表名 Sdbcb1 为DBcombobox ,Sdbcb2为ComboBox
// 变量输出:
// 返回结果:True/False 是/否
-------------------------------------------------------}
Function c_getPid2(Sdbset:TAdoDataset;field1,field2,dsetname:string;dtyname:string;Sdbcb1:TDBComboBox;Sdbcb2:TComboBox):Boolean;
var
  ind : integer;
begin
  try
    with Sdbset do
    begin
      if Active then
        Active := False;
      CommandText := 'Select '+field1+','+field2+' from ' + dsetname + ' where ' + dtyname + ' = 1 ';
      Active := True;
      first;
      Sdbcb1.Clear;
      Sdbcb2.Clear;
      ind := 0;
      while not eof do
      begin
        sdbcb1.ItemIndex := ind;
        sdbcb2.ItemIndex := ind;
        Sdbcb1.Items.Add(Fieldbyname(field1).Value);
        Sdbcb2.Items.Add(Fieldbyname(field2).Value);
        ind := ind + 1;
        next;
      end;
      sdbcb1.ItemIndex := -1;
      sdbcb2.ItemIndex := -1;
    end;
    result := True;
  except
    result := False;
  end;
end;
{------------------------------------------------------
// 功能描述:取数据库某2个字段值放在12个ComBoBox中
// 变量输入:Sdbset 为dataset;dsetname 表名 Sdbcb1 ,Sdbcb2为ComboBox
// 变量输出:
// 返回结果:True/False 是/否
-------------------------------------------------------}
Function c_getPid3(Sdbset:TAdoDataset;field1,field2,dsetname:string;dtyname:string;Sdbcb1,Sdbcb2:TComboBox):Boolean;
var
  ind : integer;
begin
  try
    with Sdbset do
    begin
      if Active then
        Active := False;
      CommandText := 'Select '+field1+','+field2+' from ' + dsetname + ' where ' + dtyname + ' = 1 ';
      Active := True;
      first;
      Sdbcb1.Clear;
      Sdbcb2.Clear;
      sdbcb1.ItemIndex:=0;
      sdbcb2.ItemIndex:=0;
      Sdbcb1.Items.Add('All');
      Sdbcb2.Items.Add('All');
      ind := 1;
      while not eof do
      begin
        sdbcb1.ItemIndex := ind;
        sdbcb2.ItemIndex := ind;
        Sdbcb1.Items.Add(Fieldbyname(field1).Value);
        Sdbcb2.Items.Add(Fieldbyname(field2).Value);
        ind := ind + 1;
        next;
      end;
      sdbcb1.ItemIndex := 0;
      sdbcb2.ItemIndex := 0;
    end;
    result := True;
  except
    result := False;
  end;
end;

{------------------------------------------------------
// 功能描述:取数据库某4个字段值放在4个ComBoBox中中
// 变量输入:Sdbset 为dataset;dsetname 表名 Sdbcb1,Sdbcb2,3,4为ComboBox
// 变量输出:
// 返回结果:True/False 是/否
-------------------------------------------------------}
Function c_getMid(Sdbset:TAdoDataset;field1,field2,field3,field4,dsetname:string;dtyname:string;Sdbcb1,Sdbcb2,Sdbcb3,Sdbcb4:TComboBox):Boolean;
var
  ind : integer;
  v:variant;
begin
  try
    with Sdbset do
    begin
      if Active then
        Active := False;
      CommandText := 'Select '+field1+','+field2+','+field3+','+field4+' from ' + dsetname + ' where ' + dtyname + ' = 1 ';
      Active := True;
      first;
      Sdbcb1.Clear;
      Sdbcb2.Clear;
      Sdbcb3.Clear;
      Sdbcb4.Clear;
      ind := 0;
      while not eof do
      begin
        sdbcb1.ItemIndex := ind;
        sdbcb2.ItemIndex := ind;
        sdbcb3.ItemIndex := ind;
        sdbcb4.ItemIndex := ind;
        Sdbcb1.Items.Add(Fieldbyname(field1).Value);
        Sdbcb2.Items.Add(Fieldbyname(field2).Value);
        Sdbcb3.Items.Add(Fieldbyname(field3).Value);
        if Fieldbyname(field4).Value=null then
          v:=100.0
        else
          v:=Fieldbyname(field4).Value;
        Sdbcb4.Items.Add(v);
        ind := ind + 1;
        next;
      end;
      sdbcb1.ItemIndex := -1;
      sdbcb2.ItemIndex := -1;
      sdbcb3.ItemIndex := -1;
      sdbcb4.ItemIndex := -1;
    end;
    result := True;
  except
    result := False;
  end;
end;

{------------------------------------------------------
// 功能描述:提示框,警告框函数
// 变量输入:Handle 句柄,sMsg 消息内容,sType 消息形式
// 变量输出:
// 返回结果:True/False 是/否
-------------------------------------------------------}
Function MSG(sMsg:string;sType:string):Boolean;
var
  iType : integer;
begin
   iType:=0;
  if UpperCase(sType) = 'W' then  iType:=0;
  if UpperCase(sType) = 'Q' then  iType:=1;
  if UpperCase(sType) = 'E' then  iType:=0;
  if UpperCase(sType) = 'I' then  iType:=0;
  with Application do
  begin
    if iType = 0  then
    begin
      if UpperCase(sType) = 'W' then
        MessageBox(Pchar(sMsg),'警告信息', MB_ICONWARNING + MB_OK)
      else if UpperCase(sType) = 'E' then
        MessageBox(Pchar(sMsg),'错误信息',MB_ICONERROR + MB_OK)
      else
        MessageBox(Pchar(sMsg),'提示信息',MB_ICONINFORMATION + MB_OK);
      Result := True;
    end
    else
    begin
      if MessageBox(Pchar(sMsg),'提示信息',MB_ICONQUESTION+MB_YesNo) = IDYES then
        Result := True
      else
        Result := False;
    end;
  end;
end;
{----------------------------------------------
// 功能描述:判断字符串是否为整数
// 变量输入:sInput 输入字符串
// 变量输出:
// 返回结果:True/False 是/否
-----------------------------------------------}
function IfInt(sInput:string):Boolean;
var
  iTemp:int64;
begin
  Result := False;
  if not TryStrToInt64(Trim(sInput),iTemp) then
  begin
    ShowMessage('输入内容不是整数');
  end
  else
  begin
    Result := True;
  end;
end;

{-----------------------------------------------
// 功能描述:判断字符串是否为浮点数
// 变量输入:sInput 输入字符串
// 变量输出:
// 返回结果:True/False 是/否
------------------------------------------------}
function IfNum(sInput:string):Boolean;
var
  fTemp : Double;
begin
  Result := False;
  if not TryStrToFloat(Trim(sInput),fTemp) then
  begin
    ShowMessage('输入内容不是数字');
  end
  else
  begin
    Result := True;
  end;
end;

end.

⌨️ 快捷键说明

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