|
|
|
Определение первого рабочего дня относительно заданной даты.
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, уважаемые спецы и не только. ASE 12.5.3 У меня есть такая задача: Скрипт генерирует серию записей по заданному алгоритму (например, график погашения кредита). Дата в каждом погашении должна быть рабочим днем. Необходимо корректировать дату таким образом, чтобы это был первый рабочий день после расчетной даты (или до нее, зависит от задачи) (включая саму расчетную дату). Алгоритм определения выходных простой, по дням недели. Праздничные дни забиты в отдельную таблицу. На данный момент я решаю подобную задачу с помошью утилиты на Delphi, которой передаю имя таблицы, ключевые поля, поле для корректировки и инкремент. По этим параметрам утилита генерирует update комманды и выполняет их. Но этот вариант немного громоздкий и не удобный. Также, написал на JAVA встроенную процедуру. Получилось красиво, удобно, но и тут меня постигла неудача - у клиентов нет лицензии на использование встроенных процедур на JAVA. Кто-то решал подобные задачи методами SQL? Помогите советом пожалуйста. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2009, 14:52 |
|
||
|
Определение первого рабочего дня относительно заданной даты.
|
|||
|---|---|---|---|
|
#18+
Сталкивался с такой задачей - решал "прямым ударом в лоб": в отдельную таблицу вносятся вообще все не рабочие дни (таблица просто имеет один столбец типа DateTime) а далее рисуется простейшая процедура, которая по переданной дате возвращает минимально дату из таблицы больше указанной. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2009, 08:59 |
|
||
|
Определение первого рабочего дня относительно заданной даты.
|
|||
|---|---|---|---|
|
#18+
Еще один вариант - джойнить темповую таблицу по принципу Код: plaintext 1. 2. но тут надо оценивать время работы запроса, критичность индексов и т.п. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2009, 09:02 |
|
||
|
Определение первого рабочего дня относительно заданной даты.
|
|||
|---|---|---|---|
|
#18+
Всем спасибо. Нашел простое решение и хочу поделиться им с вами. Суть решения заключается в корректировке поля с датой до тех пор, пока не будет 0 обновлений. Вот пример: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. В таблице STB_HOLIDAYS находятся специфичные нерабочие дни (праздники, переносы и т.п.). Суббота, воскресенье - по-умолчанию нерабочие дни. Примерно за 3 итерации скрипт отрабатывает. Пока ничего проще не нашел. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2009, 12:16 |
|
||
|
|

start [/forum/search_topic.php?author=d.e.&author_mode=last_topics&do_search=1]: |
0ms |
get settings: |
7ms |
get forum list: |
11ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
162ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
| others: | 498ms |
| total: | 767ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...