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

procedure Form1_TableGrid1_OnChange (Sender: string);
begin
    ShowMessage(Form1.TableGrid1.dbGetSqlStatement);
end;

Для кнопки с действием Отчет такой возможности пока нет.

3,952

(8 replies, posted in General)

Hello.


Check it out

procedure SaleTransHist_tgSaleInvTransHist_OnChange (Sender: string);
var
    i,c: integer;
    sPrevRow: string;
begin
    sPrevRow := '';
    c := SaleTransHist.tgSaleInvTransHist.RowCount-1;
    for i := 0 to c do
    begin
        if SaleTransHist.tgSaleInvTransHist.Cells[0,i] = sPrevRow then
        begin
            sPrevRow := SaleTransHist.tgSaleInvTransHist.Cells[0,i];
            SaleTransHist.tgSaleInvTransHist.Cells[0,i] := '';
            SaleTransHist.tgSaleInvTransHist.Cells[1,i] := '';
        end else sPrevRow := SaleTransHist.tgSaleInvTransHist.Cells[0,i];

    end;
end;

3,953

(10 replies, posted in Russian)

bemorhona-qt wrote:

спасибо работает
А как задать сегоднящную дату в Edit1?
Я сделал так Form1.Edit1.Text:= SELECT strftime('%s','now');
Но не получился.


Можно так

Form1.Edit1.Text := DateToStr(now);


Но обычно компонент edit не используется для даты, для этого есть компонент DateTimePicker

Form1.DateTimePicker1.DateTime := now;

3,954

(14 replies, posted in FAQ)

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

if RegExp.Exec then
  repeat
        // Матчи
        Form1.Memo2.Lines.Add( RegExp.Match[0] );


        // группы
        for i := 1 to RegExp.Match.Count-1 do
        begin    
            Email:=  'Group'+IntToStr(i)+': '+RegExp.Match[i];           
            Form1.Memo3.Lines.Add(Email);
            SQLExecute ('INSERT INTO AAA (aaa) VALUES ("'+ Email +'");');
        end;            

  until not RegExp.ExecNext;
  Form1.TableGrid1.dbUpdate;

3,955

(3 replies, posted in Russian)

У компонента PageControl есть событие OnChange, которое срабатывает при переключении вкладок, пример

procedure Form1_PageControl1_OnChange (Sender: string);
begin
    ShowMessage(Form1.PageControl1.ActivePageIndex);
end;

3,956

(10 replies, posted in Russian)

разницу между датами в секундах можно посчитать так

SELECT strftime('%s','now') - strftime('%s', datefield)

3,957

(7 replies, posted in Russian)

beniamin91 wrote:

Да, иногда вылетает. Но все ровно это может быть из за моего компьютера, на другом не имею возможности потестировать.
По поводу Page Control тоже вопрос остается открытым. Как изменить фон и как установить иконки на вкладках (как в программе MVD, имя вкладки + иконка)

Приложите пожалуйста ваш проект (zip файл без exe и dll), возможно найду ошибку.


Раскрасить вкладки невозможно, это заблокировано на уровне ОС.
Иконки на вкладки пока нет возможности добавить, но планируется.

3,958

(3 replies, posted in General)

prahousefamily
Here you can find answer
http://stackoverflow.com/questions/1215 … -using-php


but you'll get result like
enum('CEO','Administrator','Developer','EndUser')


after that you should parse this string to add to ComboBox


Also MVD is not support ENUM, you must use it only by script.

3,959

(8 replies, posted in Script)

You need script like this

procedure Form1_GridEmployees_OnChange (Sender: string);
var
   i,c: integer;
   k,q: integer;
begin
     q := Form1.GridEmployees.Columns.Count-1;
     c := Form1.GridEmployees.RowCount - 1;
     for i := 0 to c do
     begin
         for k := 0 to q do
         begin
             if Form1.GridEmployees.Cells[k,i] = '6' then
                 Form1.GridEmployees.Cell[k,i].Color := clYellow;
         end;
     end;
end;

But I don't know where you store value of numbers.

3,960

(13 replies, posted in General)

To delete password, just execute sql query to delete record with password.

SQLExecute('DELETE FROM password WHERE id=1');

3,961

(6 replies, posted in General)

luisfilipeipam wrote:

Hello Dmitry
I hope that you´ve rested enough during holidays, gaining energy to continue your tremendous job.

And yes! The question still relevant for me.
I can always do that in excel or someother software, but what i really want is to have the graphs anytime available for users without the need of my intervention, and i don't know where to find documentation about tchart class.

Thanks so much

Luis Rodrigues

Hello.


Please download latest beta version here
https://www.dropbox.com/s/1y0jek64gzfdy … a.zip?dl=0



Tutorial for TChart
http://www.teechart.net/docs/teechart/v … index.html
http://www.teechart.net/docs/teechart/v … index.html



Example how to add two diagram on the same chart.

3,962

(3 replies, posted in Script)

Hello.


I have added class TPrinter.
Please download latest beta version here
https://www.dropbox.com/s/1y0jek64gzfdy … a.zip?dl=0


Example, how to use the class.

3,963

(13 replies, posted in General)

Please check it out

3,964

(4 replies, posted in General)

Check it out

Form1.edPrice.Value := SQLExecute('SELECT price FROM inv WHERE id='+form1.TableGrid1.sqlValue);

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


2. Здесь сможете найти два проекта с примером http://myvisualdatabase.com/forum/viewtopic.php?id=1434

В скрипте найдите строку

 if SQLExecute ('SELECT admin FROM users WHERE id = '+IntToStr(idUser)) = '1' then isAdmin := True;

после нее расположите строку

        formIzm.cbUser.Enabled:=isAdmin;


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

gdmitroleg
У вас неверная структура БД для таких данных. В БД данные не должны повторяться, в вашем случае у вас несколько записей с одной и той же фамилией.


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


Прочитайте пожалуйста книгу, которую я начал писать, там это объясняется доступным языком
http://myvisualdatabase.com/forum/viewtopic.php?id=2554




в любом случае, сделать это можно так:

SELECT

lastname,
(SELECT strftime('%d.%m.%Y', MAX(datefield)) FROM employees e WHERE employees.lastname=e.lastname ORDER BY datefield DESC LIMIT 1)


FROM employees

GROUP BY lastname

3,968

(6 replies, posted in Russian)

В этой теме
http://myvisualdatabase.com/forum/viewtopic.php?id=3006


вам нашли пример реализации TreeView скриптом, но он довольно трудный, в будущем планируется его реализация без скриптов.

3,969

(8 replies, posted in Script)

Hello.


Unfortunately I can help you only with specific question.

3,970

(3 replies, posted in General)

Hello.


Sorry for delay. I was on vacation.
The question is still relevant for you?

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


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

3,972

(7 replies, posted in Russian)

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


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

3,973

(14 replies, posted in FAQ)

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


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

3,974

(4 replies, posted in General)

Hello.

Sorry for delay. I was on vacation.
The question is still relevant for you?

3,975

(18 replies, posted in Russian)

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


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