Конференция "Базы" » BDGridEh не отображает вычислимое поле после добавления записи
 
  • TheEd (16.02.13 05:14) [0]
    Господа мастера, сильно не пинайте:
    БД - firebird 2.1, Delphi7, Доступ к данным - FIBPlus, таблица:
    CREATE TABLE SomeTable (
       ID                     INTEGER NOT NULL,
       FNAME                  TSTR50 NOT NULL /* TSTR50 = VARCHAR(50) - Имя */,
       SNAME                  TSTR50 NOT NULL /* TSTR50 = VARCHAR(50) - фамилия */,
       PNAME                  TSTR50 /* TSTR50 = VARCHAR(50) - Отчество */,
       FIO    /* ФИО - конструируется из первых трёх */              
    COMPUTED BY (case
       when PNAME is null
         then SNAME || ' ' || LEFT(FNAME, 1) || '.'
         else SNAME || ' ' || LEFT(FNAME, 1) || '.' || LEFT(PNAME, 1) || '.'
    end) COLLATE PXW_CYRL, ...



    При работе с таблицей в компоненте TDBGridEh при добавлении новой записи  ФИО остаётся пустым до переоткрытия датасета... Можно ли его обновлять автоматом, без переоткрытия?
  • TheEd (16.02.13 06:38) [1]
    нашел!
    что-то намудрил с AutoUpdateOptions похоже, видимо копипаста подвела :)

    Однако теперь другой вопрос назрел - как правильно "отлавливать" вставку новых записей в базу из других клиентских приложений?
    Конечно, SameDataSet.Close и SameDataSet.Open всё решит, но я имею в виду следующее: есть ли возможность на уровне события некоторого компонента вычислить появление новых (удаление) записей и сделать ClodeOpen ручками, или - вообще автоматом настроить рефреш DBGridEh?
  • turbouser © (17.02.13 00:45) [2]

    > TheEd   (16.02.13 06:38) [1]


    > есть ли возможность на уровне события некоторого компонента

    Классика. Есть лишь одно адекватное решение - бизнес логика на сервере. Если речь про справочники - то так же опрос по запросу/таймеру. По таймеру не советую :)
  • TheEd (17.02.13 20:08) [3]

    > Есть лишь одно адекватное решение - бизнес логика на сервере

    Т.е. по любому трёхзвенная архитектура?
    Про таймер - понятно, что это кривое решение. Просто была мысль что такой мощный набор компонентов как FIBPlus имеет некоторый (пусть косвенный) механизм отслеживания данных ситуаций...
 
Конференция "Базы" » BDGridEh не отображает вычислимое поле после добавления записи
Есть новые Нет новых   [134430   +2][b:0][p:0.001]