текст получаю через файл ini
frmUserOn.teData.Caption:=IniG.ReadString('teData','cap', '');
текст примерно такой:
{client}Ваше оборудование {type} ожидает Вас в {office}
как я понимаю StringReplace() не поддерживается
чем можно заменить?
My Visual Database → Posts by sibprogsistem
текст получаю через файл ini
frmUserOn.teData.Caption:=IniG.ReadString('teData','cap', '');
текст примерно такой:
{client}Ваше оборудование {type} ожидает Вас в {office}
как я понимаю StringReplace() не поддерживается
чем можно заменить?
А через Teamviewer это реально? просто Hamanchi у меня не хочет устанавливаться
не знаю, на сколько мне известно Teamviewer это программа удаленного доступа - тоесть можно через нее управлять целевым пк
у меня как всегда, родилася глупая мысль!
что если добавить TurboSmsUa.CodeSendSMS ClickatellCom.CodeSendSMS которые будут возвращать код ответа
тоесть если кому не нужен код, может использовать TurboSmsUa.SendSMS ClickatellCom.SendSMS
а если нужно как-то обрабатывать ответ, то CodeSendSMS ...
Не получается подключаться к своему MySQL серверу удалённо. То есть в локальной любой пк через прогу работает. Но при попытке работать извне не подключается. Есть какие то инструкции как настроить SQL или ПК что бы подключиться через интернет? Или может какой способ есть что бы как будто в локалку подключаться и работать с БД?
HAMANCHI
https://hamachi.ru.softonic.com/
Ошибка. У меня база на MySQL
тогда TOTAL поменяйте на SUM
есть папка в корне проекта куда помещаются разные файлы
суть в в том что если в папку перенести скажем (файл) а потом указать этот файл в программе при записи в бд.. то создастся копия этого файла (файл(1))..
как этого исбежать?
Отмену подключения я не предусматривал, но можно отключиться так
Form1.SQLConnection.Connected := False; // для SQLite
но при первой же попытке программы сделать запрос к БД, подключение автоматически восстановится.
Какая у вас стоит задача?
пользователи моей программы будут делать разные проекты .. root\project-project1
-project2
каждый проект это отдельная папка с базай данных
когда пользователь запускает программу то в первом (диологовом) окне он должен либо выбрать проект либо создать новый
как отменить подключение к базе данных при запуске программы...?
долго разбираться, много не понятных связей
long to understand
Привет Sibprogsistem,
Попробуйте это так.
Надеюсь, это поможет,
С уважением
Derek
(с гугл переводчиком)
YES!!! thank Derek
помогите перевести меню TreeView (по правой кнопке мыши) на Русский
а можно ли как-то отключать кнопки а не тулбар?
дак я тоже думал над этим.
А в один отчет я смогу их объединить затем?
в отчет тоже можно как разные таблицы отправить а в дизайнере их просто вывести на страницу
procedure Start_bLogin_OnClick (Sender: string; var Cancel: boolean);
var
sHash: string;
sA,sT,sU: string;
begin
//
// SQL query get hash of password
sHash := VarToStr( SQLExecute('SELECT Password FROM BEZOP WHERE (Login = ''' + Start.Login.Text + ''');') );
// if the hash in the database = hash of entered a password
if sHash = StrToMD5(Start.Pas.Text) then//
begin
sUser := Start.Login.Text; // Запомнить имя пользователя
Form1.TableSr.dbPopupMenu.Items.Items[0].Enabled := False;// отключение двойного клика в таблице на Form1
// Administrator?
// check admin rights
// Кнопки видимые только для администратора, и терадминистратора
sA := VarToStr( SQLExecute('SELECT `admin` FROM BEZOP WHERE (login = ''' + sUser + ''');') );
if sA='1' then
begin
Form1.RedakPr.Visible:=False;
Form1.UdalitPr.Visible:=False;
Form1.Import.Visible:=False;
Form1.UpfSr.Visible:=False;
RabotaSPredp.DelEv.Visible:=False;
end;
sT := VarToStr( SQLExecute('SELECT `teradmin` FROM BEZOP WHERE (login = ''' + sUser + ''');') );
if sT='1' then
begin
Form1.Custom.Visible:=False;
end;
sU := VarToStr( SQLExecute('SELECT `user` FROM BEZOP WHERE (login = ''' + sUser + ''');') );
if sU='1' then
begin
Form1.Custom.Visible:=False;
Form1.RedakPr.Visible:=False;
Form1.UdalitPr.Visible:=False;
Form1.Import.Visible:=False;
Form1.UpfSr.Visible:=False;
RabotaSPredp.DelEv.Visible:=False;
end;
// if the user does not have administrator privileges, deactivate the button to create other users
idUPF := SQLExecute('SELECT IFNULL(id_UPF, 0) FROM BEZOP WHERE (login = ''' + sUser + ''');');
// hide records for manager who from another departament
if (idUPF<>0) then Form1.TableSr.dbFilter := 'id_UPF='+IntToStr(idUPF);
Form1.Caption := 'Пользователь: ' + sUser; // отображение имя пользователя на форме 1
Start.Hide; // close login form
Form1.Show; //показать Form 1
end
else MessageDlg('Неверно введен логин или параль', mtError, mbOk, 0); // Сообщение при неверном логине и пароле
end;
Авторизация открывает форму в зависимости от прав пользователя..
procedure frmLogin_bLoginOk_OnClick (Sender: TObject; var Cancel: boolean);
var
s,t,r: string;
sStatus: string;
begin
// Запрос SQL для проверки пользователя и пароля
s := VarToStr(SQLExecute('SELECT count(id) FROM users WHERE (id = ' + IntToStr(frmLogin.cbStatus.dbItemID) + ') AND (password = ''' + frmLogin.ePassword.Text + ''');'));
// если SQL-запрос нашел логин и пароль
if (s<>'0') AND (s<>'') then
begin
//скрыть форму авторизации
frmLogin.Hide;
// SQL-запрос прав пользователя
sStatus := SQLExecute('SELECT id_userStatus FROM users WHERE id='+IntToStr(frmLogin.cbStatus.dbItemID));
// если права пользователя * то открыть *
if sStatus = '1' then frmAdmin.Show else //администратор
if sStatus = '2' then frmMasterWork.Show else //мастер
if sStatus = '3' then frmServiceCen.Show ; //менеджер
end else MessageBox('Пароль неверен','Ошибка подключения ', MB_OK+MB_ICONSTOP);
end;
где :
if sStatus = '1' then frmAdmin.Show else //администратор
if sStatus = '2' then frmMasterWork.Show else //мастер
if sStatus = '3' then frmServiceCen.Show ; //менеджер
позваляет создавать разные условия работы программы для каждого типа пользователя
ну а все-таки может будут какие идеи?
могу лишь предложить в форме first отобразить 3 грида, каждый под свою таблицу...
ну как обновлять Вы уже знаете
вот вырезанная час авторизации из моего проекта
так пробовал но мне надо "Form1.Custom.Visible:=False;" чтобы работала для пользователей типа "admin", а все остальные для пользователя "teradmin", а для остальных эти кнопки были невидимы.
А у меня выходит что для админа все работает как надо, а условия для терадмина распространяются как на терадмина так и на остальных юзеров
у вас проверка только на администратора работает, так можно только да или нет проверить
загрузите проект.
как поменять изображения на узлах?
Спасибо!
Интересно, а разаботчики не делали подобную среду разработки для приложений Андроид?
Эмулятор PC для Андроид
https://pdalife.ru/bochs-android-a25961.html
https://www.youtube.com/watch?v=uXyIqdqtEZ4
к сожалению с NULL я не селен, это как раз та проблема про которую я вам писал выше
s := VarToStr( SQLExecute('SELECT `admin` FROM BEZOP WHERE (login = ''' + sUser + ''');') );
if s='0' then
begin
Form1.Custom.Visible:=False;
Form1.RedakPr.Visible:=False;
Form1.UdalitPr.Visible:=False;
Form1.Import.Visible:=False;
Form1.UpfSr.Visible:=False;
RabotaSPredp.DelEv.Visible:=False;
end;
сам проект было бы лучше....
Спасибо, попробую. Но хотелось бы понять, в чем моя ошибка. Подобная задача может еще встретиться.
у Вас в коде
select
tblItems.Name, strftime('%d.%m.%Y',tblItems.Date)
from tblItems
where
((tblItems.Date >={DateTimePicker1}) and (tblItems.Date <= {DateTimePicker1}))
DateTimePicker1 и там и там
Спасибо, этот архив открылся.
Толко это обычный поиск. А мне нужно будет делать экспорт в Exel или выводить на печть. Как я понимаю, для этого нужно делать запрос.
можите просто добавить кнопку открыть в exel и указать нужный грид
Архив не открывается
вот в другом формате
My Visual Database → Posts by sibprogsistem
Powered by PunBB, supported by Informer Technologies, Inc.
Theme Hydrogen by Kushi