13 сент. 2010 г.

Справочная система по классам VCL

Справочная система Delphi XE намного лучше той, что была в предыдущих версиях. Того и гляди приблизятся к "золотому" стандарту справки времен Delphi 5-7. Есть еще нюансы с поиском. Так на строку "TStringList" нужная статья идет третьей в списке. Но, уже не на третьей странице результатов. Описание класса стало гораздо удобнее и понятнее.

Может сделать в Гедымине для классов из VCL сразу переход на страницу справки в Интернете?

4 сент. 2010 г.

Ошибка исправлена

Так мешавшая нам в последнее время ошибка в Firebird 2.5 RC исправлена. Всем клиентам рекомендуется обновиться до последнего снэпшота и сапгрейдить базу новейшим экзешником.

Как обновить сервер Firebird:
  1. Качаем и распаковываем архив. Чем больше номер билда в имени архива — тем новее сборка. Символы x64 в имени архива означают 64-х битную версию; pdb — сборка сервера с отладочной информацией.
  2. Заходим Мой компьютер - Управление - Службы и останавливаем Firebird.
  3. Содержимое каталога c:\Program Files\Firebird заменяем содержимым архива, со всеми подкаталогами, Заменяем полностью, за исключением файла fbsecurity2.fdb. Если вы перепишите и последний файл, то при первом подключении к базе под учетной записью Administrator следует выполнить операцию пересоздания учетных записей пользователей.
  4. Запускаем сервис.
Если БД была повреждена при миграции с более ранних версий на 2.5 (симптомы: ошибка в процессе апгрейда при подключении gedemin.exe), то следует выполнить бэкап-разбэкап новейшей сборкой Firebird.

31 авг. 2010 г.

Последняя группа?

Поскольку новое руководство ГИВЦ-а не проявляет большой заинтересованности в сохранении учебного класса (а точнее, того что осталось от учебного класса после январского потопа), скорее всего в ближайшее время он будет расформирован. По крайней мере запчасти от учебных компьютеров уже активно используются в качестве ремонтного фонда. Поэтому ближайшая учебная группа может стать и последней в учебном центре на Крапоткина, 44. Не упускаем шанс, записываемся!

PS: Не могу не прорекламировать девочку из Борисова.

28 авг. 2010 г.

Маша, электронную почту не приносили?

Дародная цётка, кіраўніца нейкага там аддзелу буйного прадпрыемства пытаецца ў сакратаркі. "Нет еще. Может через полчаса будет." — адказвае тая.

Пры капіталізме прадпрыемства зацікаўлена ў выкарыстоўваньні найноўшых тэхналёгіяў, каб быць на паўкрока наперадзе канкурэнтаў. Пры рынкавым сацыялізме найноўшыя тэхналёгіі насаджваюцца зьверху загадамі ды дырэктывамі. Вось загадалі ўсім зрабіць сайты. Потым перакласьці іх на ангельскую (тое бяды, што на прадпрыемстве па ангельску размаўляць ніхто не умее). Цяпер трэба карыстацца электроннай поштай. Абавязкова, бо з выканкаму абяцалі праверыць. А што рабіць, калі топ мэнэджэры толькі-толькі асвоілі як той кампутар уключаць-выключаць? Правільна: садзім хлопчыка і ён кожны дзень добрасумленна раздрукоўвае электронныя лісты. Настолькі добрасумленна, што раздрукоўваецца нават спам, улучна з нігерыйскімі лістамі, кітайскім ролексам, віяграй без рэцэптаў ды іншымі падаўжальнікамі пенісаў.

8 авг. 2010 г.

Все, что нажито непосильным трудом :)

3157 страниц — такой объем документации по Гедымину, платформе и настройкам, имеем мы на сегодняшний день. Включая wiki, но не считая статей на сайте. Конечно, там есть повторы; в подсчет попали страницы оглавления, указателей, заголовки разделов и т.п. Но, даже если отнять половину, все равно останется более полутора тысяч страниц полезной информации.

Нам нужен технический редактор со знаниями Гедымина, программирования, баз данных, бухгалтерского, оперативного и производственного учета, методологии внедрения. Грамотный, способный выполнять стиль-корректуру. Желательно, владеющий приемами верстки, обработки изображений и векторной графики.

Такой редактор должен прочитать все, разбить на части и каталогизировать. Подсказать чего не хватает, что раскрыть подробнее, где выкинуть лишнее, какие главы переписать, где описанная функциональность не соответствует существующей. Из откорректированных частей собрать две книги: Руководство пользователя и Руководство разработчика, объемом по 600-800 страниц каждая. Подготовить их к изданию.

И тогда останется всего ничего: заставить наших пользователей и разработчиков прочитать эти руководства.

5 авг. 2010 г.

Растет как на дрожжах

Инстоляция Adobe Acrobat Reader 9.3.3 завешивает на все 52.1 Мб! А когда-то хватало и пяти (инстоляция Acrobat Reader v 4.0, поставляемая на компакт-диске с программами Анжелика имела размер 5,4 Мб). Bloatware во всей его красе.

4 авг. 2010 г.

Проверка структуры базы на повреждения

В развитие предыдущего поста. В некоторых базах (но не всех!) из тех, где не проходит команда изменения домена или создания чека, ситуация еще хуже: несколько чеков из разных таблиц ссылаются на один и тот же системный триггер. Проверить можно с помощью такого запроса:
select *
from rdb$relation_constraints rc1 
  natural join rdb$check_constraints cc1
where cc1.rdb$trigger_name in
(
   select cc.rdb$trigger_name
   from rdb$relation_constraints rc 
     natural join rdb$check_constraints cc
   where rc.rdb$constraint_type = 'CHECK'
   group by cc.rdb$trigger_name
   having count(*) > 1
) 

3 авг. 2010 г.

Ошибочка в RC 3 FB 2.5 (и более ранних релизах)

Вдруг откуда ни возьмись вылезла неприятная ошибка в FB. На некоторых базах не проходит команда изменения дефолтного значения для домена (например, ALTER DOMAIN domain SET DEFAULT 0), а так же не создаются ограничения CHECK на поля. При этом сервер выдает сообщение об ошибке:

This operation is not defined for system tables.
unsuccessful metadata update.
DEFINE TRIGGER failed.
action cancelled by trigger (1) to preserve data integrity.
Cannot update trigger used by a CHECK Constraint.


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

Разработчики FB поставлены в известность. Предположительно, сбой в структуре метаданных возникает (не всегда!) при миграции с Yaffil и Firebird 2.0 на 2.5.

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

28 июл. 2010 г.

Как удалить все записи

Приведенная команда позволяет удалить все документы, которые не заблокированы ссылочной целостностью или триггерами:
execute block
as
  declare variable id integer;
begin
  for select id from gd_document into :id
  do begin
    delete from gd_document where id=:id;
    when any do begin end
  end
end
Очевидно, что вместо gd_document можно указать, например, gd_contact и почистить справочник клиентов.

НЕ ИСПОЛЬЗУЙТЕ НА РАБОЧИХ БАЗАХ КЛИЕНТОВ!

PS: И, да, у нас полумиллионный посетитель на сайте!

24 июл. 2010 г.

Pascal forever

Apple has opened sources of their MacPaint and QuickDraw applications. Naturally, it had been done in Pascal with some assembler insertions. The sources are available from this Computer History Museum page.

14 июл. 2010 г.

Посадили дерево

В наших интервальных деревьях всю жизнь была ошибка. Интервалы перекрывались в следующем случае: есть два элемента A и B, имеющих одного родителя. A расположен левее B. Пусть B имеет два дочерних элемента C и D, примыкающих друг к другу, причем C расположен левее D и интервал C уже D. Тогда, при перемещении D в A, в процессе расширения интервалов вправо, интервал C будет перекрываться с A и B.