3,426

(2 replies, posted in Script)

Hello.


When you use reserved word 'delete_col', column will be deleted, thus you can't read value of this column.


But you can make SQL query to get this value from database.

procedure Form1_TableGrid1_OnCellClick (Sender: string; ACol, ARow: Integer);
var
    sValue: string;
begin
    sValue := SQLExecute('SELECT auto FROM artist_asset WHERE id='+Form1.TableGrid1.sqlValue);
end;


another way, hide a colum using script, in this way you still can read a value from hided the column.

procedure Form1_TableGrid1_OnChange (Sender: string);
begin
    Form1.TableGrid1.Columns[2].Visible := False;
end;

procedure Form1_TableGrid1_OnCellClick (Sender: string; ACol, ARow: Integer);
var
    sValue: string;
begin
    sValue := Form1.TableGrid1.Cells[2,ARow];
end;

In the new version 3.4b, now all the fields in the report designer also contain the name of the table.

before

fieldname

now

tablename.fieldname

just rename fields in your report, or place it again.

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


На работоспособность не влияет.

3,429

(16 replies, posted in Russian)

kovalenko
Для этого необходимо создать новую глобальную переменную, например isAdmin: boolean;
Затем в процедуре procedure frmLogin_bLogin_OnClick присваивать этой переменной результат SQL запроса, который проверит, является ли текущий пользователь администратором.


Можете приложить ваш проект, постараюсь помочь.

3,430

(4 replies, posted in SQL queries)

Check it out

SELECT
artist.id as "id",
artist.artist_name
FROM
artist
INNER JOIN tmp_table ON artist.id = tmp_table.id1

UNION

SELECT
artist.id as "id",
artist.artist_name
FROM
artist
INNER JOIN artist_asset ON artist_asset.id_artist = artist.id
WHERE artist_asset.id_asset = {edAID} 

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

3,432

(5 replies, posted in General)

Hello.


The ComboBox have a property Additional > FirstEmptyItem, set its value to False.

3,433

(16 replies, posted in Russian)

Необходимо создать событие OnClick для каждой кнопки, которая открывает форму, которая может быть заблокирована, т.о. вместо ошибки вы можете написать свое сообщение.

3,434

(4 replies, posted in General)

Hello.


It's not supported in the current version. Unfortunately I can't to know right now how difficult it is to realize this.

3,435

(16 replies, posted in Russian)

kovalenko
К сожалению именно заменить сообщение не получиться, т.к. это ошибка, когда вы пытаетесь открыть форму, если для этой формы установлено свойство Enabled = False


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

procedure Form1_ButtonForNewRecord_OnClick (Sender: string; var Cancel: boolean);
begin
    if not Form2.Enabled then
    begin
        ShowMessage('Доступ закрыт.');
        Cancel := True;
    end;
end;

3,436

(9 replies, posted in Russian)

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

3,437

(20 replies, posted in Russian)

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


Да, у SQLite есть такая особенность, решить ее можно, умножив поле на 1.0, т.е. вместо a/b записать так

a*1.0/b  

3,438

(1 replies, posted in Script)

Hello.


Just place the Image component to a panel.

3,439

(7 replies, posted in Script)

majuten
Hello.


Map is a Form. Just create a new form with name "Map"

3,440

(16 replies, posted in Russian)

Пожалуйста приложите ваш проект, с описанием, по какому критерию необходимо ограничивать доступ к форме и к какой форме?

3,441

(7 replies, posted in General)

3. Spin boxes / buttons on time component doesn't work for me. What am I missing?
https://s21.postimg.org/ydbzz5oif/zzzzz_Temp27.png


First you should select what you want change, hours, minutes or seconds.

3,442

(36 replies, posted in Russian)

- Добавлен новый раздел: "3. Печать"
http://myvisualdatabase.com/forum/viewt … 191#p15191

3,443

(9 replies, posted in Russian)

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


1. У компонент TextBox есть свойство Filter, установите его значение %s%


2. Зайдите в настройку компонента TableGrid, где есть пункт 3. Фильтр, там вы можете написать условие для фильтрации, например у вас идентификатор записи со значение Да равно 1, тогда условие будет таким

id_returned<>1

вместо id_returned подставьте имя внешнего ключа, который используется в вашем проекте

3,444

(7 replies, posted in General)

1. You can copy to clipboard text of cell if you hold Ctrl button and click on cell.


2. I think you do something wrong, why you want to do?


3. Please describe in more details, what exactly don't work?

3,445

(13 replies, posted in General)

AD1408
Unfortunately I can't understand what exactly you want to do. Why you use onCellClick event?

3,446

(8 replies, posted in General)

http://myvisualdatabase.com/forum/viewtopic.php?id=1440

3,447

(8 replies, posted in General)

domebil wrote:

If I create a new project I do not have these problems?

It depends how exactly you do it. I think you need fix the current project, not create a new.

3,448

(8 replies, posted in General)

In this old project there is one mistake.


I have added new field bills.cost and place component edCost (you can hide it) on form frmService.


Also I have added a script:

procedure frmService_TableGrid1_OnCellClick (Sender: string; ACol, ARow: Integer);
begin
    frmService.edCost.Value := SQLExecute('SELECT cost FROM services WHERE id='+frmService.TableGrid1.sqlValue);
end;

Attached project:

3,449

(9 replies, posted in Reports)

nikolai_nn wrote:

здравейте,възможно ли е в Report  целите числа да си се показват като цели (15) ,а десетичните числа да се показват с три знака след десетичната запетая (15,400).Благодаря

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

procedure ReportemployeessalaryOnAfterData(Sender: TfrxComponent);
begin
       if Frac(Reportemployeessalary.Value)=0 then 
       begin
           Reportemployeessalary.Text := FloatToStr(Reportemployeessalary.Value);                                      
       end;                 
end;

3,450

(8 replies, posted in General)

Hello.


Please attach your project. I will test it.