25 янв. 2013 г.

Пока не забыл

TestCorrect в диалоговом окне не так надо было делать. Сейчас метод возвращает булевское значение -- удовлетворяют ли введенные в полях диалогового окна значения условиям или нет. А можно было бы возвращать список ошибок, где каждая запись содержала бы сообщение пользователю, экранный элемент и поле БД. Тогда, по нажатию на кнопку Ок, можно было бы обойтись без лишних диалоговых окон, а просто подсвечивать неверные поля и против каждого во всплывающем окошке вывести поясняющее сообщение. Подобно тому, как это принято в веб интерфейсах.

23 янв. 2013 г.

Автоматическое добавление доменов в настройку

Запрос автоматом добавляет в указанную настройку все домены, которые используются полями таблиц, входящими в эту настройку:
INSERT INTO at_settingpos (
  settingkey,
  objectclass,
  category,
  objectname,
  xid,
  dbid,
  objectorder,
  withdetail,
  needmodify,
  autoadded
)

SELECT DISTINCT
  p.settingkey,
  'TgdcField',
  'Домен',
  f.FIELDNAME,
  fr.xid,
  fr.dbid,
  1, /* домены должны располагаться перед полями */
  0,
  1,
  0
FROM
  at_settingpos p
  JOIN gd_ruid pr
    ON pr.xid = p.xid
      AND pr.dbid = p.dbid
  JOIN at_relation_fields rf
    ON rf.id = pr.id
  JOIN at_fields f
    ON f.id = rf.FIELDSOURCEKEY
  JOIN gd_ruid fr
    ON fr.id = f.id
  LEFT JOIN at_settingpos p2
    ON p2.XID = fr.xid
      AND p2.DBID = fr.dbid
      /* если убрать это условие, то */
      /* исключим домены, которые    */
      /* входят хотя бы в одну настр.*/
      AND p2.settingkey = :SK
WHERE
  f.fieldname LIKE 'USR$%'
  AND
  p.settingkey = :SK
  AND
  p2.id IS NULL

16 янв. 2013 г.

Курсы для системных администраторов

Очередная группа пройдет обучение с 29 января по 1 февраля. Записываемся тут.

Один из первых семинаров, 1999 г.

Архивные фото. Одно из самых первых наших участий в семинарах. Мероприятие было организовано Белорусским союзом предпринимателей и нанимателей "Вялес" им. Макса Кунявского и проходило в выставочном центре на пр. Машерова где-то осенью 1999 г.

Работа с посетителями (на заднем плане проглядывается Владимир Маломин):

В то время как космические корабли бороздят просторы вселенной:

В одном ряду с конкурентами:

8 янв. 2013 г.

Налетай, торопись, покупай живопись

Пока половина пользователей спорят: удачный ли это маркетинговый ход или фатальная ошибка, другая успешно качает ставший вдруг бесплатным Adobe Creative Suite 2.

5 янв. 2013 г.

Не ноль

Еще один довод не считать ноль валидным идентификатором платформы. TField при обращении AsInteger возвращает 0 для полей с NULL. На что наша стандартная функция генерирует RUID 0_17. Эксепшен в данном случае был бы более ожидаем.