Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 2, свеженьких 1
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Помилка: Номер року в літералі типу 'Дата' перевищує 3999 , в конфігурації BAS Бухгалтерія КОРП 2.1.20.3          
Gorus Подменю пользователя
сообщение 11.08.22, 16:36
Сообщение #1

Общительный
**
Группа: Пользователи
Сообщений: 28
Из: Вінниця
Спасибо сказали: 53 раз
Рейтинг: 63

Для інформації, може комусь допоможе.

Після оновлення конфігурації BAS Бухгалтерія КОРП в документах "Відпустка" та "Звільнення" при заповнені стала генеруватись помилка "Номер року в літералі типу 'Дата' перевищує 3999". Причому лише в клієнт-серверному варіанті, у файловому - все добре. Причина виявилась в некоректному виконанні запиту спільного модуля УчетСреднегоЗаработка. Проблема виникає при розрахунку поля:
КОНЕЦПЕРИОДА(ДОБАВИТЬКДАТЕ(Начисления.ДатаНачалаБазовогоПериода, МЕСЯЦ, Начисления.КоличествоМесяцев - 1), МЕСЯЦ) КАК ДатаОкончанияПериода

При цьому, якщо Начисления.ДатаНачалаБазовогоПериода - пуста дата, і Начисления.КоличествоМесяцев = 0, то розраховується не пойми що, яке потім в отладчику виглядає як "30.11.0001 0:00:00". Але сам запит - виконується без помилок, проте при використанні отриманих значень в інших запитах - генерується дана помилка.

P.S. Якщо в когось також дана помилка виникає - можу поділитись розширенням для даної конфігурації, що її виправляє.

Спасибо сказали: dmik, kihor, RedCat77, Vofka,

AnryMc Подменю пользователя
сообщение 12.08.22, 9:04
Сообщение #2

Завсегдатай
Иконка группы
Группа: Местный
Сообщений: 103
Спасибо сказали: 46 раз
Рейтинг: 44.9

Gorus @ Вчера, 17:36 * ,
Из справки:
Цитата
Литерал типа ДАТА
Литерал типа ДАТА записывается в виде:
ДАТАВРЕМЯ ( <Целое число>, <Целое число>,
<Целое число>[, <Целое число>,
<Целое число>, <Целое число>] )
Значения типа дата задаются с помощью ключевого слова ДАТАВРЕМЯ, после которого в скобках последовательно указываются год, месяц, день, час, минута, секунда. Последние три указывать необязательно.
Максимальная дата которую возможно задать при помощи литерала ДАТАВРЕМЯ – 31.12.3999 23:59:59.


Вы пишите
Цитата
При цьому, якщо Начисления.ДатаНачалаБазовогоПериода - пуста дата

Пустая дата - это 01.01.0001 или Null или Неопределено?

Сообщение отредактировал AnryMc - 12.08.22, 9:05

dmik Подменю пользователя
сообщение 15.08.22, 17:08
Сообщение #3

Молчаливый
*
Группа: Пользователи
Сообщений: 1
Спасибо сказали: 0 раз
Рейтинг: 0

Gorus, Добрий день. Gorus,

Такаж маємо помилку: Номер року в літералі типу 'Дата' перевищує 3999 , в конфігурації BAS Бухгалтерія КОРП 2.1.20.3

Чи могли Ви поділитись розширенням для вирішення даної проблеми.

Дякую.

Gorus Подменю пользователя
сообщение 15.08.22, 17:30
Сообщение #4

Общительный
**
Группа: Пользователи
Сообщений: 28
Из: Вінниця
Спасибо сказали: 53 раз
Рейтинг: 63

dmik @ Сегодня, 18:08 * ,
Переслав.

AnryMc @ 12.08.22, 10:04 * ,
Пуста дата - це 01.01.0001, тобто '00010101'

AnryMc Подменю пользователя
сообщение 16.08.22, 8:25
Сообщение #5

Завсегдатай
Иконка группы
Группа: Местный
Сообщений: 103
Спасибо сказали: 46 раз
Рейтинг: 44.9


Цитата(Gorus @ 15.08.22, 18:30) *
Пуста дата - це 01.01.0001, тобто '00010101'


У Вас из МИНИМАЛЬНОГО значения '00010101' вычитается месяц месяц - результат выходит за разрешенный диапазон и выдается сообщение о его превышении, все нормально...
Это как деление на 0 (ноль) - результат = бесконечность...

Единственный выход я вижу в проверке на "0" (т.е. '00010101') перед выполнением кода...

Gorus Подменю пользователя
сообщение 16.08.22, 9:32
Сообщение #6

Общительный
**
Группа: Пользователи
Сообщений: 28
Из: Вінниця
Спасибо сказали: 53 раз
Рейтинг: 63

AnryMc @ Сегодня, 9:25 * ,
Зверніть увагу: у файловому варіанті даний код виконується без помилок. У клієнт-серверному - генерується помилка.
Ймовірно, що SQL сервер опрацьовує цей запит коректно, просто отримане значення виходить за межі можливого діапазону значень в 1С. Але не зважаючи на це - 1С при цьому все одно опрацьовує результат запиту, хоча й дані там не відповідають обмеженню типа "Дата". А от при подальшій спробі використати отримані дані - генерується помилка, типу 1Ска зненацька "побачила" що дані в змінній некоректні.
Тобто має місце різний алгоритм поводження з даними у файловому і клієнт-серверному варіантах, чого по ідеї бути не повинно - всі відмінності у типах мали б опрацьовуватись платформою автоматично. Ймовірно, що це може бути поправлено в наступних релізах (або, можливо, і вже поправлено, бо у мене це виникло на релізі 8.3.16.1814 з сервером PostgreSQL, а на інших - не перевіряв).

BigWig Подменю пользователя
сообщение 16.08.22, 11:43
Сообщение #7

Молчаливый
*
Группа: Пользователи
Сообщений: 1
Спасибо сказали: 0 раз
Рейтинг: 0

Gorus, Добрий день, п.Gorus

яким чином мож було би отримати розширення? та сама ситуація.
Дякую!

Gorus Подменю пользователя
сообщение 16.08.22, 13:04
Сообщение #8

Общительный
**
Группа: Пользователи
Сообщений: 28
Из: Вінниця
Спасибо сказали: 53 раз
Рейтинг: 63

BigWig @ Сегодня, 12:43 * ,
Доброго дня. Переслав.

RedCat77 Подменю пользователя
сообщение 16.08.22, 13:40
Сообщение #9

Завсегдатай
****
Группа: Пользователи
Сообщений: 122
Из: Киев
Спасибо сказали: 20 раз
Рейтинг: 20

Цитата(Gorus @ 11.08.22, 17:36) *
Для інформації, може комусь допомож

І мені надішліть
Завчасно дякую
koral@ukr.net

Gorus Подменю пользователя
сообщение 16.08.22, 13:47
Сообщение #10

Общительный
**
Группа: Пользователи
Сообщений: 28
Из: Вінниця
Спасибо сказали: 53 раз
Рейтинг: 63

RedCat77 @ Сегодня, 14:40 * ,
Надіслав.

Спасибо сказали: RedCat77,

Gazulo Подменю пользователя
сообщение 17.08.22, 13:39
Сообщение #11

Оратор
*****
Группа: Пользователи
Сообщений: 267
Спасибо сказали: 44 раз
Рейтинг: 44

Gorus @ Вчера, 14:47 * ,
Добрий день, киньте і мені. nazar_budivskiy@ukr.net. Дякую.

Gorus Подменю пользователя
сообщение 17.08.22, 22:42
Сообщение #12

Общительный
**
Группа: Пользователи
Сообщений: 28
Из: Вінниця
Спасибо сказали: 53 раз
Рейтинг: 63

Gazulo @ Сегодня, 14:39 * ,
Відправив.

Спасибо сказали: Gazulo,

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 06.10.22, 15:57
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!