Sep. 14th, 2006
Мою голову съели какие-то черви, и я, вместо того чтобы сделать отдельную ветку в svn, стал вносить не совсем вменяемый функционал в основную, а для правки багов и мелких доработок в текущем релизе сделал отдельную рабочую копию.
Теперь сижу и думаю, как бы это эти вариации поменять местами, и нужно ли это делать вообще. Или создать ветку и соскладировать неадекватный функционал туда на будущее?
Теперь сижу и думаю, как бы это эти вариации поменять местами, и нужно ли это делать вообще. Или создать ветку и соскладировать неадекватный функционал туда на будущее?
Идиотское говно
Sep. 14th, 2006 03:49 pmДано: документ, декларация по одному из налогов на выбросы.
Количество выбросов требуется указывать в тоннах. Но! С точностью до 7 знаков после запятой. Вопрос, нахрена использовать тонны, если все равно точность до 100 грамм?
Кстати, денежный тип в дельфи - 4 знака после запятой. Придется, как обычно, вводить что-то вроде коэффициента и скакать вокруг него с бубном везде где он используется.
Количество выбросов требуется указывать в тоннах. Но! С точностью до 7 знаков после запятой. Вопрос, нахрена использовать тонны, если все равно точность до 100 грамм?
Кстати, денежный тип в дельфи - 4 знака после запятой. Придется, как обычно, вводить что-то вроде коэффициента и скакать вокруг него с бубном везде где он используется.
GUI и SqlException
Sep. 14th, 2006 11:03 pmКак известно, проверять объекты на валидность перед сохранением лень. И вообще делать что-либо в GUI лень.
А вот в базе данных делать констрейнты и сложные условия предметной области на триггерах - не лень. Главным образом из-за того, что в GUI это означает борьбу с импедансом "код-база данных", а триггер или констрейнт уже в базе данных.
Но вот надо бы юзеру красивое сообщение об ошибке показывать, а не ужас вроде "ESUBDException with message 'Violation of FOREIGN KEY fkZHABBAKLESCH_KORTCHID on Table ZHABBAKLESCH'". Посему всем констрейнтам назначаем уникальные имена(по какой-то неясной науке причине во всех моих базах так уже сделано, видимо марсиане в мозг подсказали), эти имена вытаскиваем каким нибудь не особо долгим образом из сообщения об ошибке, по ним находим в таблице локализованных сообщений понятное юзеру сообщение и показываем.
А вот в базе данных делать констрейнты и сложные условия предметной области на триггерах - не лень. Главным образом из-за того, что в GUI это означает борьбу с импедансом "код-база данных", а триггер или констрейнт уже в базе данных.
Но вот надо бы юзеру красивое сообщение об ошибке показывать, а не ужас вроде "ESUBDException with message 'Violation of FOREIGN KEY fkZHABBAKLESCH_KORTCHID on Table ZHABBAKLESCH'". Посему всем констрейнтам назначаем уникальные имена(по какой-то неясной науке причине во всех моих базах так уже сделано, видимо марсиане в мозг подсказали), эти имена вытаскиваем каким нибудь не особо долгим образом из сообщения об ошибке, по ним находим в таблице локализованных сообщений понятное юзеру сообщение и показываем.