1

(44 replies, posted in Russian)

то что событие произойдет по истечении 60 сек, заявлял автор скрипта. Но суть не в этом. Не знаю как, но в конце концов скрипт вроде как запустился. Работает странновато, но работает. Погоняв его туда-сюда, понял, что время потрачено зря. Для моих целей он не подходит. То есть, открыл программу - записал напоминание - и если оно на сегодня и программа не закрывалась, то окно напоминания всплывет. Если программу закрыл, то при открытии это обычный планар. Для того чтобы напоминание появилось через месяц, программа не должна закрываться месяц. Вообщем скрипт для склеротиков на сегодня: выпить таблетку, проверить кран ну и т.д.   
Вообщем ветку закрываю. Огромное спасибо Sibprogsistem за терпение и помощь, а также CDB, что не прошел мимо.

2

(44 replies, posted in Russian)

А так работает

3

(44 replies, posted in Russian)

Прочитал. Попробовал. Вот что не так?

4

(44 replies, posted in Russian)

Ну, вообщем, если убрать в скриптах все связанное с Form1 и оставить только напоминатель, указав начало и конец всех процедур с Form1 (как в примере), то скрипт работает нормально. При попытке добавить   что то на Form1, то, что добавлено не работает.

 var
    //isManyFiles: boolean;
    //sFileName: string;
    Timer: TTimer;

//Напоминатель события
procedure Form1_OnShow (Sender: TObject; Action: string);
begin
     Timer := TTimer.Create(Form1);
     Timer.Interval := 60000;
     Timer.OnTimer := @OnTimer;
     OnTimer;
     Timer.Enabled := true;
end;

procedure OnTimer;
var
   sMessage: string;
begin
     sMessage := SQLExecute('SELECT message FROM reminder WHERE strftime(''%d.%m.%Y %H:%M'', datetime)<=strftime(''%d.%m.%Y %H:%M'', ''now'', ''localtime'') ');
     if sMessage<>'' then ShowMessage(sMessage);
end;

procedure Form1_OnClose (Sender: TObject; Action: string);
begin
    Timer.Free;
end;

// Дата, часы на Form1
procedure Form1_OnShowClock (Sender: string; Action: string);
begin
     Timer := TTimer.Create (nil);
     Timer.OnTimer := @OnTimer;
     Timer.Interval := 1000;
     Timer.Enabled := True;

end;

procedure OnTimerClock;
begin
     Form1.DateTime.Caption := FormatDateTime('c', Now);
end;

procedure Form1_OnCloseCloc (Sender: string; Action: string);
begin
     Timer.Free;
end;

 
Что не так делаю.

5

(44 replies, posted in Russian)

Еще вопрос, в скрипте уже назначено событие форме "Form1" :  procedure Form1_OnShow (Sender: string; Action: string); , При попытке назначить ещё одну процедуру , procedure Form1_OnShow (Sender: string; Action: string); компилятор выделяет строчку красным и ругается. Как правильно прописать еще одну процедуру которая начинается с : procedure Form1_OnShow (Sender: string; Action: string); ?

6

(44 replies, posted in Russian)

Опять неверно задал вопрос. Чтобы задать кнопке какой то скрипт, в программе я выбираю вкладку "Событие", выбираю "OnClose". и во вкладке "Скрипт" появляется, ну например :
procedure Form1_OnClose (Sender: string; Action: string);
begin
     
end;
Как в скрипт прописывается :
procedure OnTimer;
begin
     
end;
Просто ручками?

7

(44 replies, posted in Russian)

Всем доброго,
Как правильно запускать (указывать, активировать) :

procedure OnTimer;

8

(44 replies, posted in Russian)

Попробовал. Ваш пример работает. Не понимаю, что с моей головой не правильно, но в примере было так

9

(44 replies, posted in Russian)

Доброго времени суток,

Со вторым вопросом разобрался. Ранее делал так как Вы объяснили, но почему то результата не было. Вполне вероятно, что дело пошло в лучшую сторону, после удаления файла sqlite из папки (он был какого то неимоверного размера, порядка 8 мб, при том, что ничего загружено в БД не было) . Но факт - таблица загруженных файлов работает корректно. Спасибо.

По первому вопросу, с комбобоксами, на Ваших скриншотах, все указано правильно, при условии что каждый комбобокс работает сам. Вероятно я неправильно задаю вопрос. Если в комбобоксе "Оборудование" выбрано оборудование, то в комбобоксе "Модель", выпадают модели, связанные с этим оборудованием. То есть в таблице это выглядит как : application<-model<-brend.  Если я добавлю id_brend  в application, будет ошибка. Я еще раз переделал связи, и пришел к тому, что при добавлении в таблицу поиска в отображение результатов поля brendname, начинается чехорда с выводом результата. Если не добавлять, то все работает корректно. Заказчик я, пользователь я, поэтому думаю что на этом можно остановиться. Не совсем то, что я хотел, но работает.

Ну и с напоминанием, сам скрипт работает, и напоминает по заданному времени и дате. Но окно напоминания не показывает при этом событии. При этом после того как время напоминания прошло, при нажатии на кнопку "Напоминание", окно напоминания появляется. Как заставить его появляться поверх всех окон, как в примере?

Еще раз подгружаю проект, с исправленными ошибками.

10

(44 replies, posted in Russian)

Сейчас на работе. Вечером проверю, попробую, отпишусь.

11

(44 replies, posted in Russian)

Я так пробовал, при запуске программа начинает "ругаться", Если убираю это условие, все работает. Еще раз попробую.

12

(44 replies, posted in Russian)

Добрый,

По первому вопросу: на форме "Form1" - комбобокс "Оборудование". При нажатии на кнопку Поиск, в таблице сразу отображаются внесенные заявки, но если в словаре "Оборудование", внесено например 3 записи, то в таблице будет отображаться каждая заявка с названием каждого из видов оборудования. Нумерация заявки не меняется. Если в словаре "Оборудование"  3 записи, то заявка №1 повторится 3 раза с №1, но с разным оборудованием указанным в словаре.

По второму вопросу: на форме "Application" таблица добавления файлов. При создании заявки и прикреплении файлов, новые  прикрепленные файлы отображаются во всех уже созданных заявках. Если был файл  в предыдущей заявке, добавляется новый. Пример брал здесь :
//myvisualdatabase.com/forum/viewtopic.php?pid=19222#p19222

Третий вопрос: На форме "Form1" кнопка "Напоминание". Здесь, все работает, кроме того что окно с напоминанием (как в примере), не появляется. Здесь, мое полное непонимание работы скрипта, и ошибка там же. Пример "Reminder" с описанием брал здесь:
//myvisualdatabase.com/forum/viewtopic.php?pid=3601#p3601

13

(44 replies, posted in Russian)

Доброго времени суток, уважаемые форумчане. Возникла необходимость подобрать софтинку для работы. В поисках натолкнулся на простую, удобную и бесплатную программку Клиент-Мастер. Можно было на этом и остановится, но пройдя на сайт атора, понял что есть возможность адаптировать под себя точечно. Сейчас уже понимаю, что погорячился. Но дело принципа. Ставлю My Visual Database уже на 2 компьютер (на первом лицензия закончилась, но если сделаю, директор пообещал оплатить лицензию), кое чего добился, но некоторые моменты решить не удается. На форуме смотрю примеры, читаю вопросы, но никак. На 6м десятке трудно стать программистом. Так вот, если у кого то найдется время помочь исправить мои ошибки, или объяснить что не так делаю, буду очень благодарен. Вопросы такого плана:
1. В примере "Linked Lists" увидел что можно сделать удобную функцию из комбобокса в комбобокс: страна-регион-город, с примером разобрался, но при запуске программы, при нажатии кнопки поиск, в таблицу выбрасывает все записи из первого комбобокса.  Не могу победить.
2. В примере "Employees - a lot of files at once" усмотрел полезную функцию прикрепления файлов. Все прописал, все вроде проверил. Но при работе в программе прикрепленные файлы в одной заявке, отображаются во всех уже сохраненных. Кстати в примере "Employees - a lot of files" такая же проблема.
3. Ну и захотел добавить в программу  напоминалку. То что скрипты это не мое, я уже знаю, но очень захотелось ( заявки иногда растягиваются на несколько недель). С трудом прописал скрипт из примера, но опять что то наверное упустил. Само окно напоминания не появляется.
    Но сам добавил таблицу истории с заявкой, как в программе "Nanny Management ", прикрутил счетчик с оригинальным счетом, и немножко переделал склад по примеру "Склад простой".
Надеюсь на помощь.