powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Informix [игнор отключен] [закрыт для гостей] / +- units month и ошибка -1267
4 сообщений из 4, страница 1 из 1
+- units month и ошибка -1267
    #33553478
falcon111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте!

В информиксе есть инструмент для работы с датами вида +5 units day, +1 units month и т.д.
И все бы было хорошо, но, при использовании +-units month возникает ошибка -1267, в случае, если в исходных датах указано число, отсутствующее в результирующем месяце.
Например, '27.01.2006'::date + 1 units month
дает 27.02.2006, все красиво.
А вот если вместо 27.01.2006 использовать 30.01.2006, то при вычислении возникает ошибка -1267

Можно как-то настроить вычисления, чтобы оно "думало", что делать со днем, и выдавало последний день месяца вместо ошибки? В процедурах-то это не проблема, хоть и через одно место, но можно по эксцепшену -1267 брать последний день месяца и продолжать вычисления, но эта конструкция заложена в sql-запросы прикладного ПО, поэтому не все так просто. Подскажите, плиз, как решить эту ситуацию?

PS: Informix 9.40TC3

PPS: И еще одна проблема - правда, наверное, не в этот форум, но просто посоветуйте, куда обращаться.
Проблема возникла, когда я один сервер запросов переписал(C++) в виде НТшного сервиса. Винда стартует - стартует сервис, код сервиса доходит до АПИ-вызова SQLConnect() и... ни ошибок, ничего - процесс просто исчезает. Ни в одном логе никаких записей, все равно, как будто сервис и не пробовал стартовать. Если сервис стартовать не автоматически а вручную, то, если сервис запускать хотя-бы через несколько секунд после старта системы, то все прекрасно работает.

Сталкивался ли кто-нибудь с таким и чей это глюк и кому его репортить?
...
Рейтинг: 0 / 0
+- units month и ошибка -1267
    #33553931
Фотография Daugava
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
falcon111 но эта конструкция заложена в sql-запросы прикладного ПО
Переписать запросы прикладном ПО. Другого выхода нет.
...
Рейтинг: 0 / 0
+- units month и ошибка -1267
    #33558662
vasilis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
falcon111PPS: И еще одна проблема - правда, наверное, не в этот форум, но просто посоветуйте, куда обращаться.
Проблема возникла, когда я один сервер запросов переписал(C++) в виде НТшного сервиса. Винда стартует - стартует сервис, код сервиса доходит до АПИ-вызова SQLConnect() и... ни ошибок, ничего - процесс просто исчезает. Ни в одном логе никаких записей, все равно, как будто сервис и не пробовал стартовать. Если сервис стартовать не автоматически а вручную, то, если сервис запускать хотя-бы через несколько секунд после старта системы, то все прекрасно работает.
Сталкивался ли кто-нибудь с таким и чей это глюк и кому его репортить?
Скорее всего, ваш сервис зависит еще от каких то системных сервисов, которые на данный момент (старт системы) еще не готовы. В таком случае нужно просто указать зависимость вашей службы от других и тогда ваша слежба будет запускаться только после говности головной (ых) служб(-ы).
...
Рейтинг: 0 / 0
+- units month и ошибка -1267
    #33558676
vasilis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
falcon111В информиксе есть инструмент для работы с датами вида +5 units day, +1 units month и т.д.
И все бы было хорошо, но, при использовании +-units month возникает ошибка -1267, в случае, если в исходных датах указано число, отсутствующее в результирующем месяце.
Например, '27.01.2006'::date + 1 units month
Некорректно смешивать units day и units month.
Даже два типа datetime для этой цели.
попробуй работать раздельно с год,месяц и день,часы,мин,сек
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Informix [игнор отключен] [закрыт для гостей] / +- units month и ошибка -1267
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]