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

📄 rc_dbassignmanage.pas

📁 亚惠快餐管理信息系统 包括亚惠快餐管理的各项功能
💻 PAS
📖 第 1 页 / 共 2 页
字号:
    begin
      if ((pos(ModifyRightName, TreeView1.Items[i].Text) <> 0) and
        (Pos('修改', TreeView1.Items[i].Text) = 0) and
        (pos('记录权', TreeView1.Items[i].Text) = 0)) then
      begin
        if Pos('(', TreeView1.Items[i].Text) = 0 then
          TreeView1.Items[i].Text := TreeView1.Items[i].Text + '(' + '修改' + ')'
        else
          TreeView1.Items[i].Text := Copy(TreeView1.Items[i].Text, 1,
            Length(TreeView1.Items[i].Text) - 1) + ',修改)';
      end;
    end;
  end
  else
  begin
    if Pos('(', TreeView1.Selected.Text) = 0 then
      TreeView1.Selected.Text := TreeView1.Selected.Text + '(' + '修改' + ')'
    else
      TreeView1.Selected.Text := Copy(TreeView1.Selected.Text, 1,
        Length(TreeView1.Selected.Text) - 1) + ',修改)';
  end;
end;

procedure TRC_DfmDBAssignManage.AddClick(Sender: TObject);
var
  ModifyRightName: string;
  i: integer;
begin
  if pos('(', TreeView1.Selected.Text) <> 0 then
    ModifyRightName := copy(TreeView1.Selected.Text, 1, pos('(',
      TreeView1.Selected.Text) - 1)
  else
    ModifyRightName := TreeView1.Selected.Text;
  if Pos('插入', TreeView1.Selected.Text) <> 0 then
    Exit;
  if TreeView1.Selected.Level = 1 then
  begin
    for i := 0 to TreeView1.Items.Count - 1 do
    begin
      if ((pos(ModifyRightName, TreeView1.Items[i].Text) <> 0) and
        (Pos('插入', TreeView1.Items[i].Text) = 0) and
        (pos('记录权', TreeView1.Items[i].Text) = 0)) then
      begin
        if Pos('(', TreeView1.Items[i].Text) = 0 then
          TreeView1.Items[i].Text := TreeView1.Items[i].Text + '(' + '插入' + ')'
        else
          TreeView1.Items[i].Text := Copy(TreeView1.Items[i].Text, 1,
            Length(TreeView1.Items[i].Text) - 1) + ',插入)';
      end;
    end;
  end
  else
  begin
    if Pos('(', TreeView1.Selected.Text) = 0 then
      TreeView1.Selected.Text := TreeView1.Selected.Text + '(' + '插入' + ')'
    else
      TreeView1.Selected.Text := Copy(TreeView1.Selected.Text, 1,
        Length(TreeView1.Selected.Text) - 1) + ',插入)';
  end;
end;

procedure TRC_DfmDBAssignManage.DeleteClick(Sender: TObject);
var
  ModifyRightName: string;
  i: integer;
begin
  if pos('(', TreeView1.Selected.Text) <> 0 then
    ModifyRightName := copy(TreeView1.Selected.Text, 1, pos('(',
      TreeView1.Selected.Text) - 1)
  else
    ModifyRightName := TreeView1.Selected.Text;
  if Pos('删除', TreeView1.Selected.Text) <> 0 then
    Exit;
  if TreeView1.Selected.Level = 1 then
  begin
    for i := 0 to TreeView1.Items.Count - 1 do
    begin
      if ((pos(ModifyRightName, TreeView1.Items[i].Text) <> 0) and
        (Pos('删除', TreeView1.Items[i].Text) = 0) and
        (pos('记录权', TreeView1.Items[i].Text) = 0)) then
      begin
        if Pos('(', TreeView1.Items[i].Text) = 0 then
          TreeView1.Items[i].Text := TreeView1.Items[i].Text + '(' + '删除' + ')'
        else
          TreeView1.Items[i].Text := Copy(TreeView1.Items[i].Text, 1,
            Length(TreeView1.Items[i].Text) - 1) + ',删除)';
      end;
    end;
  end
  else
  begin
    if Pos('(', TreeView1.Selected.Text) = 0 then
      TreeView1.Selected.Text := TreeView1.Selected.Text + '(' + '删除' + ')'
    else
      TreeView1.Selected.Text := Copy(TreeView1.Selected.Text, 1,
        Length(TreeView1.Selected.Text) - 1) + ',删除)';
  end;
end;

//将权限写回库里----------------------------------------------------------------

procedure TRC_DfmDBAssignManage.ConfirmToolButtonClick(Sender: TObject);
var
  k: Integer;
begin
  with RC_DfmDataModule1.DBAssignQuery do
  begin
    if RC_DfmDataModule1.DBAssignQuery.Active then
    begin
      First;
      Close;
    end;
    Sql.Clear;
    Sql.Add('Delete From TDBAssign where UOrUGName=''' + UserOrUserGroupName.Text
      + ''' and UOrUGIden=''' + UserOrUserGroupIdentify.Text + '''');
    try
      ExecSQL;
    except
      ShowMessage('error');
      Exit;
    end;
    if RC_DfmDataModule1.DBAssignQuery.Active then
    begin
      First;
      Close;
    end;
    Sql.Clear;
    Sql.Add('Select * From TDBAssign');
    try
      Open;
    except
      ShowMessage('无法打开库表!');
      Exit;
    end;
  end;
  for k := 0 to TreeView1.Items.Count - 1 do
  begin
    if pos('(', TreeView1.Items[k].Text) <> 0 then
    begin
      with RC_DfmDataModule1.DBAssignQuery do
      begin
        Insert;
        FieldByName('UOrUGIden').AsString := UserOrUserGroupIdentify.Text;
        FieldByName('UOrUGName').AsString := UserOrUserGroupName.Text;
        FieldByName('DBResIden').AsString := DBSourceIdentify[k];
        FieldByName('DBResName').AsString := copy(TreeView1.Items[k].Text, 1,
          pos('(', TreeView1.Items[k].Text) - 1);
        FieldByName('DBRighName').AsString := Copy(TreeView1.Items[k].Text,
          pos('(', TreeView1.Items[k].Text) + 1, pos(')',
          TreeView1.Items[k].Text)
          - pos('(', TreeView1.Items[k].Text) - 1);
        Post;
      end;
    end;
  end;
  Close;
end;

{-------------------------------------Tools------------------------------------}

function TRC_DfmDBAssignManage.OpenDBAssignQuery: Boolean;
begin
  Result := False;
  //打开数据库权限分配表
  with RC_DfmDataModule1.DBAssignQuery do
  begin
    if Active then
    begin
      First;
      Close;
    end;
    Sql.Clear;
    Sql.Add('Select * From TDBAssign');
    try
      Open;
    except
      ShowMessage('无法打开库表TDBAssign!');
      Exit;
    end;
  end;
  RC_DfmDataModule1.DBAssignQuery.FieldByName('DBAId').Alignment :=
    taLeftJustify;
  with RC_DfmDataModule1.DDBAssignQuery do
  begin
    if Active then
    begin
      First;
      Close;
    end;
    Sql.Clear;
    Sql.Add('Select * From DDBAssign');
    try
      Open;
    except
      ShowMessage('无法打开库表DDBAssign!');
      Exit;
    end;
  end;
  Result := True;
end;

function TRC_DfmDBAssignManage.OpenDTableNameQuery: Boolean;
begin
  Result := False;
  //打开数据库名字表
  with RC_DfmDataModule1.DTableNameQuery do
  begin
    if Active then
    begin
      First;
      Close;
    end;
    Sql.Clear;
    Sql.Add('Select * From TTableName');
    try
      Open;
    except
      ShowMessage('无法打开库表!');
      Exit;
    end;
  end;
  Result := True;
end;

procedure TRC_DfmDBAssignManage.TreeView1ContextPopup(Sender: TObject;
  MousePos: TPoint; var Handled: Boolean);
begin
  if TreeView1.Selected.Level = 0 then
  begin
    Popupmenu1.Items.Items[0].Enabled := False;
    Popupmenu1.Items.Items[1].Enabled := False;
    Popupmenu1.Items.Items[2].Enabled := False;
    Popupmenu1.Items.Items[3].Enabled := False;
    Popupmenu1.Items.Items[4].Enabled := False;
    Popupmenu1.Items.Items[5].Enabled := False;
  end
  else
  begin
    if pos('记录权', TreeView1.Selected.Text) <> 0 then
    begin
      Popupmenu1.Items.Items[0].Enabled := False;
      Popupmenu1.Items.Items[1].Enabled := False;
      Popupmenu1.Items.Items[2].Enabled := False;
      Popupmenu1.Items.Items[3].Enabled := False;
      Popupmenu1.Items.Items[4].Enabled := True;
      Popupmenu1.Items.Items[5].Enabled := True;
    end
    else
    begin
      Popupmenu1.Items.Items[0].Enabled := True;
      Popupmenu1.Items.Items[1].Enabled := True;
      Popupmenu1.Items.Items[2].Enabled := True;
      Popupmenu1.Items.Items[3].Enabled := True;
      Popupmenu1.Items.Items[4].Enabled := False;
      Popupmenu1.Items.Items[5].Enabled := True;
    end;
  end;
end;

end.

⌨️ 快捷键说明

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