Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 11.01.2015, 23:50
geniusbsd geniusbsd вне форума
Прохожий
 
Регистрация: 11.01.2015
Сообщения: 27
Версия Delphi: RAD STUDIO XE7
Репутация: 10
По умолчанию Оптимизация кода

Добрый день
Помогите с оптимизацией кода

Есть Форма авторизации при введении правильного логина и пароля
Получаем из таблицы базы данных
параметры главного меню основной формы в зависимости от роли пользователя
Структура базы такова
Таблица СпрПользователи связана с таблицей СпрГрупп которая связана с таблицей СпрИнтерфейсов

Задачу решил так
Код:
 ADOQueryFase.Active:=False;
      ADOQueryFase.SQL.Clear;
 ADOQueryFase.SQL.Add('SELECT *');
 ADOQueryFase.SQL.Add('FROM  SprFase');
 ADOQueryFase.SQL.Add('WHERE');
 ADOQueryFase.SQL.Add('FaseID  = '+InttoStr(IFaseID[H])+' '); 
  ADOQueryFase.Open;
   //Настройка интерфейса
   IFACE:= ADOQueryFase.FieldValues['MClose'];
  if IFACE = 1 then
  IFACEBool:=True
  else IfaceBool:=False;
  MainForm.MainMenu.MClose.Visible:=IFACEBool;

  IFACE:= ADOQueryFase.FieldValues['MNewOrder'];
  if IFACE = 1 then
  IFACEBool:=True
  else IfaceBool:=False;
  MainForm.MainMenu.MNewOrder.Visible:=IFACEBool;

  IFACE:= ADOQueryFase.FieldValues['MUsers'];
  if IFACE = 1 then
  IFACEBool:=True
  else IfaceBool:=False;
  MainForm.MainMenu.MUsers.Visible:=IFACEBool;

  IFACE:= ADOQueryFase.FieldValues['MTMC'];
  if IFACE = 1 then
  IFACEBool:=True
  else IfaceBool:=False;
  MainForm.MainMenu.MTMC.Visible:=IFACEBool;

  IFACE:= ADOQueryFase.FieldValues['MContractor'];
  if IFACE = 1 then
  IFACEBool:=True
  else IfaceBool:=False;
  MainForm.MainMenu.MContractor.Visible:=IFACEBool;

  IFACE:= ADOQueryFase.FieldValues['MCatalog'];
  if IFACE = 1 then
  IFACEBool:=True
  else IfaceBool:=False;
  MainForm.MainMenu.MCatalog.Visible:=IFACEBool;

  IFACE:= ADOQueryFase.FieldValues['MSettings'];
  if IFACE = 1 then
  IFACEBool:=True
  else IfaceBool:=False;
  MainForm.MainMenu.MSettings.Visible:=IFACEBool;

  IFACE:= ADOQueryFase.FieldValues['MRegister'];
  if IFACE = 1 then
  IFACEBool:=True
  else IfaceBool:=False;
  MainForm.MainMenu.MRegister.Visible:=IFACEBool;

  IFACE:= ADOQueryFase.FieldValues['MRegister'];
  if IFACE = 1 then
  IFACEBool:=True
  else IfaceBool:=False;
  MainForm.MainMenu.MRegister.Visible:=IFACEBool;

  IFACE:= ADOQueryFase.FieldValues['MDoc'];
  if IFACE = 1 then
  IFACEBool:=True
  else IfaceBool:=False;
  MainForm.MainMenu.MDoc.Visible:=IFACEBool;

   IFACE:= ADOQueryFase.FieldValues['MReports'];
  if IFACE = 1 then
  IFACEBool:=True
  else IfaceBool:=False;
  MainForm.MainMenu.MReports.Visible:=IFACEBool;

   IFACE:= ADOQueryFase.FieldValues['MParameters'];
  if IFACE = 1 then
  IFACEBool:=True
  else IfaceBool:=False;
  MainForm.MainMenu.MParameters.Visible:=IFACEBool;
Админ: Пользуемся тегами для оформления кода!

Как можно более красиво решить данную задачу?

Последний раз редактировалось Admin, 12.01.2015 в 19:46.
Ответить с цитированием
 


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 17:01.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025