Re: TableGrid и все что с ним связано

Привет Админ!
На проекте имеется 2 таблицы (Category и Subcategory). Таблица Category содержит только одно текстовое поле category. Таблица Subcategory содержит 6 текстовых полей - subcategory, danniye, podgotovka, pokazaniya, faktori и interpretatsiya. Также таблица Subcategory связан к таблице Category.
На форме имеется 2 грида и одно Мемо поле. При нажатии на грид 2 надо чтобы в мемо поле было данные из таблицы Subcategory.danniye.

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

procedure Form1_TableGrid2_OnCellClick (Sender: string; ACol, ARow: Integer);
begin
Form1.Memo1.Text:= SQLExecute('Select danniye from Subcategory where id_Category='+Form1.TableGrid2.sqlValue+'');
end;

procedure Form1_TableGrid1_OnKeyUp (Sender: string; var Key: Word; Shift, Alt, Ctrl: boolean);
begin
Form1.Button1.Click;
end;

procedure Form1_OnShow (Sender: string; Action: string);
begin
Form1.TableGrid1.SelectedRow:= 0;
Form1.Button1.Click;
end;


begin

end.

Post's attachments

Attachment icon Анализ.rar 5.31 kb, 436 downloads since 2015-08-04 

Re: TableGrid и все что с ним связано

Поправил.


В настройках кнопки "Поиск" неверна была указана таблица (Category вместо Subcategory)


и ошибка в SQL запросе скрипта, необходимо так:

Form1.Memo1.Text:= SQLExecute('Select danniye from Subcategory where id='+Form1.TableGrid2.sqlValue);
Post's attachments

Attachment icon Анализ_fixed.zip 6.17 kb, 455 downloads since 2015-08-04 

Dmitry.

28 (edited by pha1984 2015-08-04 14:37:09)

Re: TableGrid и все что с ним связано

спс, все работает,
1. теперь надо чтобы при клике на ячейку грид 2 была выелена строка из грида 1, к которому она связана, и также при клике на кнопки Button3, 4, 5, 6 также была выбрана ячейка на гриде 1 и 2 к которым они связаны, надеюсь смог объяснить. Проект прилагается.
2. Чем отличаются эти два скрипта?
  form1.memo1.text := sqlexecute('select requisition2 from requisitions where id=' + inttostr(form1.tablegrid1.dbitemid));
  form1.memo1.text := sqlexecute('select requisition2 from requisitions where id=' + form1.tablegrid1.sqlValue);

Post's attachments

Attachment icon Анализ.rar 6.12 kb, 462 downloads since 2015-08-04 

Re: TableGrid и все что с ним связано

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


2. Они идентичны, второй вариант был добавлен в более новых версиях для удобства.

Dmitry.

Re: TableGrid и все что с ним связано

я нарисовал то что хотел на фотошопе, надеюсь будет понятно, смотрите скриншот

Post's attachments

Attachment icon 123.bmp 773.2 kb, 593 downloads since 2015-08-05 

Re: TableGrid и все что с ним связано

pha1984 wrote:

я нарисовал то что хотел на фотошопе, надеюсь будет понятно, смотрите скриншот

Имеете ввиду цвет выделения записи? чтобы у обоих он был синего цвета?

Dmitry.

Re: TableGrid и все что с ним связано

не обязательно синего цвета, главное чтобы было понятно к какой строке грида1 оносится выбранная строка грида2, также планирую при нажатии на кнопки (их там 4) чтобы были как в рисунке

Re: TableGrid и все что с ним связано

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

    Form1.TableGrid1.InactiveSelectionColor := clHighlight;
    Form1.TableGrid2.InactiveSelectionColor := clHighlight;

данный код можно расположить на событие OnShow формы Form1

Dmitry.

Re: TableGrid и все что с ним связано

спс, получилась

Re: TableGrid и все что с ним связано

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

Re: TableGrid и все что с ним связано

Milla.Makova wrote:

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

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

Dmitry.

Re: TableGrid и все что с ним связано

Спасибо.
Странно, что по поиску не нашлось.