captgreen
1. Не нужен только файл проекта (*.vdb) и файл скрипта script.pas из папки Script


2. Могу предложить устанавливать текст надписей для данной формы с помощью скрипта.
при этом использовать нестандартный метод присвоения текста в скрипте, т.о. текст нельзя будет найти и в файле script.dcu

например вместо этого

frmAbout.LabelCopyright.Text := 'Capt Green';


использовать функцию Chr, которая возвращает символ по его ASCII коду, таблицу символов можно найти здесь
http://book.itep.ru/10/ascii.htm

frmAbout.LabelCopyright.Text := Chr(63)+Chr(97)+Chr(112)+Chr(116)+Chr(32)+Chr(71)+Chr(114)+Chr(101)+Chr(101)+Chr(110);

Nervis
3.
http://myvisualdatabase.com/help_ru/com … ooter.html


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

Please send your project to support@drive-software.com
with link on this topic

6,279

(131 replies, posted in Russian)

1.

Form3.CheckBox1.State := cbGrayed;

2,3. Не располагайте скрипт ниже блока

begin

end.

все что идет после end. (именно с точкой в конце) будет проигнорировано.

captgreen wrote:

Какие файлы строго необходимы? Как обезопасить от, изменения пользователем файлов ini, xml?

Строго необходимы для чего?


К сожалению нет защиты от изменений в файлах ini и xml. С какой целью вам необходима данная защита?

6,281

(42 replies, posted in Russian)

terra-alp wrote:

Можно заказать проект ?

Приветствую, да, отправьте пожалуйста ваше задание на support@drive-software.com

6,282

(1 replies, posted in General)

Hello,


Yes, you can install the software on all own computers but only you can use the software.
Also you can simple reinstall on another PC.



I don't use the commercial tool for the serial numbers.
Here you can find an example, how to create trial period and serials for your project
http://myvisualdatabase.com/forum/viewtopic.php?id=1434



The script is a programming language Object Pascal or Delphi, thus for learnig the script, you can read any book about Delphi.


some useful resources
http://www.delphibasics.co.uk/
http://101.lv/learn/delphi/

6,283

(2 replies, posted in Script)

Hello,


Here you can find info, how to do it using button.
http://myvisualdatabase.com/help_en/com … n_sql.html


also you can create event OnShow for form and click on this button using script, example:

procedure Form1_OnShow (Sender: string; Action: string);
begin
   Form1.Button1.Click;
end;



also you can do by another way, please download the example:
http://myvisualdatabase.com/forum/misc. … download=1

Nervis
1. Если без чекбоксов, то можно так

var
   idCombo1: integer = 0; // глобальная переменная


procedure Form1_bNewRecord_OnClick (Sender: string; var Cancel: boolean);
begin
    frmAbonent.cbGroups.dbDefaultID := idCombo1; // при создании новой записи, присваиваем ранее сохраненный индекс для данного ComboBox
end;

procedure frmAbonent_bSave_OnClick (Sender: string; var Cancel: boolean);
begin
    idCombo1 := frmAbonent.cbGroups.ItemIndex; // запоминаем индекс выбранного значения в ComboBox во время сохранения записи
end;

2. К сожалению не могу знать почему не работает в вашем случае, необходимо смотреть ваш проект.

3. На сколько я помню, в версии 1.46 уже была такая возможность.

Leonid wrote:

И еще пожалуйста подскажите :
Ранее использовался такой скрипт для SQLite :

var
  a,b : string;
begin
  a := SQLExecute('SELECT MAX(NomPachki) FROM OtchodZayav ;');
  if a = '' then a:='0';                                                                           
  b := SQLExecute('SELECT MAX(NomPachki) FROM MatZayav1 ;');

попробуйте так

  a := SQLExecute('SELECT IFNULL(MAX(NomPachki), 0) FROM OtchodZayav ;');
Leonid wrote:

Из частых вот первая :


Возникает при открытии формы , на которой расположен грид , настроенный в мастере.

Пришлите пожалуйста проект на support@drive-software.com
с описанием действий приводящих к ошибке.

6,287

(9 replies, posted in Script)

You can popup calendar

procedure Form1_Button1_OnClick (Sender: string; var Cancel: boolean);
begin
    if (Form1.ComboBox1.dbItemID = 4) and (not Form1.DateTimePicker1.Checked) then
    begin
        ShowMessage('Date is mandatory field.');
        Form1.DateTimePicker1.SetFocus;
        Form1.DateTimePicker1.OpenCalendar;
        Cancel := True;
    end;
end;

6,288

(9 replies, posted in Script)

In Windows 7 and above, can't to change background color for some components.

6,289

(9 replies, posted in Script)

You should create event OnClick for button "Save"

procedure Form1_Button1_OnClick (Sender: string; var Cancel: boolean);
begin
    if (Form1.ComboBox1.dbItemID = 4) and (not Form1.DateTimePicker1.Checked) then
    begin
        ShowMessage('Date is mandatory field.');
        Form1.DateTimePicker1.SetFocus;
        Cancel := True;
    end;
end;

Leonid
При использовании SQL запросов в проекте, порой могут встретиться не совместимости при переводе проекта с одной СУБД на другую, т.к. язык запросов SQL может немного отличаться на разных СУБД.


о какой конкретно ошибке идет речь?

6,291

(63 replies, posted in Russian)

kunar80
если равна нулю, тогда
numMaino.balancePrice = 0


если NULL
numMaino.balancePrice IS NULL

6,292

(4 replies, posted in General)

procedure Form1_Button2_OnClick (Sender: string; var Cancel: boolean);
var
   sl: TStringList;
   i,c: integer;
begin
          sl := TStringList.Create;
          sl.LoadFromFile ('c:\readme.txt');
          c := sl.Count - 1;

          for i := 0 to c do
          begin
               if i = 0 then Form1.Image1.Picture.LoadFromFile(sl[i]);
               if i = 1 then Form1.Image2.Picture.LoadFromFile(sl[i]);
               if i = 2 then Form1.Image3.Picture.LoadFromFile(sl[i]);
               if i = 3 then Form1.Image4.Picture.LoadFromFile(sl[i]);
          end;

          sl.Free;
end;

6,293

(2 replies, posted in SQL queries)

You can use calculated field for that purpose:


(SELECT TOTAL(profits) FROM tablename WHERE profits > 100)

6,294

(4 replies, posted in General)

Hello,



example:

procedure Form1_Button2_OnClick (Sender: string; var Cancel: boolean);
var
   sl: TStringList;
begin
          sl := TStringList.Create;
          sl.LoadFromFile ('c:\readme.txt');
          ShowMessage(sl.Text);
          sl.Free;
end;

6,295

(3 replies, posted in Russian)

Приветствую,


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

6,296

(19 replies, posted in Russian)

gozalovsamir1
Вы что то изменили в проекте?
пришлите мне свой проект, вместе с exe, посмотрю.
support@drive-software.com

6,297

(19 replies, posted in Russian)

Отправил проект на ваш email.

6,298

(9 replies, posted in FAQ)

Example, how to connect to MySQL server using script.


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 := 'root';
     Form1.MySQLConnection.Database := 'mvd';

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

     if Form1.MySQLConnection.Connected then
     begin
         UpdateDatabase(''); // to fill ComboBoxes
         Form1.GridEmployees.dbUpdate; // if you have TableGrid on first form with option "Enable auto execution", you should call method dbUpdate manually
     end;
     frmWait.Close;
end;




begin


end.


Download project:
http://myvisualdatabase.com/forum/misc. … download=1

Пример, как реализовать подключение к MySQL используя скрипт, без использования встроенного диалога подключения.

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 := 'root';
     Form1.MySQLConnection.Database := 'mvd';

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

     if Form1.MySQLConnection.Connected then
     begin
         UpdateDatabase(''); // to fill ComboBoxes
         Form1.GridEmployees.dbUpdate; // if you have TableGrid on first form with option "Enable auto execution", you should call method dbUpdate manually
     end;
     frmWait.Close;
end;




begin


end.


Проект с данным примером:

6,300

(19 replies, posted in Russian)

samir.gozalov wrote:

Dmotri dobciy vecer. vi poslatreli?

ya was sozdal vashu proyekt dabavil na moy proyekt nikakix ashibik ne dayot. no  krasniy kursor ne dviqayetsa. mojit skripti ya  ne  pravilna postavil no ashivbik nikakix toja ne dayot vrode vsyo narmalna

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