3,151

(9 replies, posted in Russian)

1. Вы имеете ввиду при открывании проекта в среде My Visual Database? Или при запуске проекта самостоятельно?


2. К сожалению наложить текст непосредственно на фото нет возможности, разве что расположить поверх фото компонет "Надпись"

2. Если открыть форму первый раз, то она появляется пустая, а если до этого вводил в неё данные, то в следующий раз она открывается с заполненными до этого данными? Как сделать что бы форма всегда открывалась пустая?


Если вы открываете форму с помощью скрипта или действия кнопки "Показать форму" то данные на форме очищены не будут, они очищаются автоматически если форма открывается с помощью кнопки с действием "Новая запись"


Чтобы форма очищалась при ее открытии, можете создать событие OnShow для данной форме и в ней очистить все компоненты. Либо очистить компоненты перед вызовом процедуры Form2.Show;

но почему-то IncYear не работает.

Можно просто прибавить 12 месяцев IncMonth(MyData,12)

3,154

(5 replies, posted in Russian)

Bullet3203
Необходимо создать еще одно поле в таблице с пользователями, например "Archived" с типом ДА/НЕТ, также сделайте данное поле обязательным для заполнения и установите Значение по умолчанию = 0


при установки значения Да для данного поля будем скрывать пользователя из ComboBox при создании записи новой записи, пример:

procedure frmAbonent_OnShow (Sender: string; Action: string);
begin
    if Action = 'NewRecord' then
        frmAbonent.cbArchived.dbFilter := 'archived <> 1' else
        frmAbonent.cbArchived.dbFilter := '';

    frmAbonent.cbArchived.dbUpdate;
end;

таком образом при создании новой записи пользователь не сможет выбрать человека, который в архиве, но в тоже время при редактировании записи можно будет видеть данного архивного человека.

3,155

(3 replies, posted in Script)

Works perfect with the internal SQLite.
But....
For connecting MySQL Server you need to have an exsting Database.
Only at design time you can create a new database.
I need this for connecting via script to MySQL.



Example:

procedure Form1_OnShow (Sender: string; Action: string);
begin
     frmWait.Show;
     Application.ProcessMessages;

     {$MySQL disable_connectdialog}
     Form1.MySQLConnection.Server := '127.0.0.1';
     Form1.MySQLConnection.Port := 3306;
     Form1.MySQLConnection.Username := 'root';
     Form1.MySQLConnection.Password := '';


     try
         Form1.MySQLConnection.Connect;
     except
         frmWait.Close;
         ShowMessage('Can''t connect to database.');
         Form1.Close;
     end;

     if Form1.MySQLConnection.Connected then
     begin
         SQLExecute('CREATE DATABASE IF NOT EXISTS `DBName`;');
         SQLExecute('USE `DBName`;');
     end;
     frmWait.Close;
end;

3,156

(5 replies, posted in General)

manixs2013 wrote:

Thank You!

What about in the report, is this possible?

Thanks!

Yes, an example:

procedure Memo1OnAfterData(Sender: TfrxComponent);
begin
   Memo1.Text := ReplaceStr(<Report."tablename.amount">, 'dollars', 'Pesos');  
end;

3,157

(1 replies, posted in General)

Hello.


I thought about that, it's really nice idea which I may be will do in the next year.

3,158

(1 replies, posted in General)

Hello.


procedure Form1_TableGrid1_OnCellClick (Sender: string; ACol, ARow: Integer);
begin
    if ARow = 0 then Form3.Show;
    if ARow = 1 then Form4.Show;
    if ARow = 2 then Form5.Show;
end;

Пожалуйста опишите порядок действий, чтобы протестировать работу скрипта, при создании нового заказа я не вижу на форме frmApplication "Изображения к заказу"

3,160

(8 replies, posted in Russian)

Доработал ваш проект

3,161

(7 replies, posted in Russian)

в процедуре OnMVDMouseWheel есть переменная Sender, в которой содержится компонент, который вызывает данное событие, т.о. данное событие можно использовать одновременно для нескольких форм, пример


procedure Form1_OnShow (Sender: string; Action: string);
begin
    Form1.OnMouseWheel := @OnMVDMouseWheel;
    Form2.OnMouseWheel := @OnMVDMouseWheel;
end;

procedure OnMVDMouseWheel(Sender: TObject; isShift, isAlt, isCtrl: boolean; WheelDelta: Integer; X, Y: Integer; var Handled: Boolean);
begin
    if TAForm(Sender).ActiveControl is TdbComboBox then Handled := True;
end;

Автосохранение проекта происходит каждый раз, когда вы запускаете проект из среды My Visual Database.
Спасибо за идею.

v_pozidis
Unfortunately in your example there is no database table for Country and zip field, please make correct example with right database structure.

Можете, к сожалению на форуме скопилось много вопросов, не успеваю ответить всем быстро )

Извиняюсь за задержку с ответом.


Интенсивность работы, скажем, не высокая. Я совершенно не представляю как и что должно работать и что такое нагрузка в этом контексте. О чем хоть поверхностно нужно думать, говоря о нагрузке? Что нужно понимать?

Думаю в вашем случае о какой то серьезной нагрузке можно не волноваться, пока думать не о чем не нужно.


В одном из проектов я "смотрел" на пользователей он-лайн. Как в здешних примерах, при входе - запись в таблицу к пользователю и при выходе. Печаль только в том, что при кривом выходе (просто погасили компьютер, или сбой какой) пользователь он-лайн так и висит. Нет возможности как-то еще реализовать эту задачу?

Сделал для вас проект с примером, приложил к сообщению.


Есть ли готовое решение по обновлению программы?

Какого либо встроенного решения по обновлению программы нет, ваше решение вполне работоспособно.


Каким-то чудом вычищается БД (тестовая на MySQL) в нуль! Не понимаю, что происходит. Структура вся неизменна, данные исчезают. При каких обстоятельствах выяснить не могу. Может при переключении с SQLite и обратно что-то подобное происходить? Никто не сталкивался?

База очищается только с разрешения польльзователя (появляется диалог с вопросом), если структура БД проекта не соотвествует структуре БД на сервере, т.к. ее необходимо пересоздать. Можете приложить ваш проект и описать шаги, которые приводят к очищению БД, протестирую.



Как реализовать следующую задачу? Таблица клиенты. В формах где нужен клиент комбобокс. Рядом кнопка поиск. Сложностей не вижу взять данные из заполненного поля, открыть форму "клиенты" и выполнить в ней поиск по заполненному боксу. По двойному клику вернуть "клиента" в комбобокс. Но как быть когда форм, где нужен клиент много? Вариант, который работать будет, но не нравится:

Приложил проект с примером

3,166

(8 replies, posted in Russian)

Посмотрите пожалуйста данный проект с примером
http://myvisualdatabase.com/forum/misc. … download=1

kovalenko
Пришлите пожалуйста проект на support@drive-software.com со ссылкой на данную тему.

There is no way to prevent showing dialog box, you can do it only with a script. Why you need another way to do it?

3,169

(10 replies, posted in Russian)

Дмитрий, а разве
procedure frmNumber_Button3_OnClick (Sender: string; var Cancel: boolean);
begin
    CloseForms(frmAbonent);
end;

Не закроет формы? Хотелось-бы понять смысл во второй части скрипта.

Вторая часть скрипта (procedure CloseForms(exceptForm: TForm);) это реализация данной процедуры (CloseForms), т.е. вы ее как бы вызываете.

3,170

(5 replies, posted in Script)

teco049 wrote:

Sorry for "hacking" into this topic but how to connect MySql and Sqlite at the same time?
I have a database currently on Sqlite and want to move to to MySql.
Any option to connect both Types of Database in one application?
Thank you.


Check out this topic
http://myvisualdatabase.com/forum/viewt … 666#p14666



Also check out this project

3,171

(7 replies, posted in Russian)

Form1.Name

3,172

(1 replies, posted in Reports)

Hello.



I suppose you use PageFooter, PageFooter band are displayed at the bottom of each page, try to use "Footer" instead "PageFooter"

Thanks!

3,174

(4 replies, posted in General)

boslot65
Change of color is blocked by operation system from Windows XP

3,175

(1 replies, posted in Russian)

Здравствуйте.


К сожалени мало что знаю про Flash, и скорей всего там не используется html


попробуйте  найти информацию в поисковике по запросу "декомпиляция flash"