Ошибка в 1с преобразование значения к типу дата не может быть выполнено

Обновлено: 07.07.2024

Помогла статья?

Получите еще секретный бонус и полный доступ к справочной системе БухЭксперт8 на 14 дней бесплатно

Все комментарии (3)

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

Поэтому в этом случае могу просто описать, как бы я действовала в этом случае:

1. В документе, где фиксируется ошибка, например, Больничный лист в модуле объекта нашла бы процедуру обработки проведения документа и в режиме Отладчика прошлась бы по всем строчкам выполняемого кода.

2. В месте ошибки я бы определила функцию, где регистрируется ошибка и данные на основе которых эта ошибка происходит.

Поэтому без программиста победить вам ситуацию будет сложно.
Сказать без базы где и почему возникает эта ошибка, к сожалению, невозможно.

Но что можно сейчас, в первую очередь, попробовать сделать, если программиста нет:

2. Если с базой все хорошо, выполните чистку кеша:
Очистка кэш 1С 8.3

Вы можете задать еще вопросов

Доступ к форме "Задать вопрос" возможен только при оформлении полной подписки на БухЭксперт8

Вы можете оформить заявку от имени Юр. или Физ. лица Оформить заявку

Нажимая кнопку "Задать вопрос", я соглашаюсь с
регламентом БухЭксперт8.ру >>

Радует, что много стали уделять внимания УСН. Марию Демашеву слушать очень приятно, понятно все рассказывает. Семинар долгий, но от ее объяснений не устаешь, пролетает как один миг. Спасибо огромное.

Вы можете задать еще вопросов

Доступ к форме "Задать вопрос" возможен только при оформлении полной подписки на БухЭксперт8

Вы можете оформить заявку от имени Юр. или Физ. лица Оформить заявку

Нажимая кнопку "Задать вопрос", я соглашаюсь с
регламентом БухЭксперт8.ру >>

Нетипичный бухгалтер (бухгалтерия и налоги)

Татьяна Михайлова запись закреплена

Татьяна Лихогубова

ЗАполните в 1С производственный календарь. У меня была ошибка не могла провести отпускные 2021 год, ну и соответственно далее все операции. . Вкладка - Зарплата и кадры - Справочники и настройки -Производственные календари

Татьяна Лихогубова

Татьяна Лихогубова

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

Ольга Бакумович

Юлия Башкова

Мария Иванова


Мария Иванова

Ксения Павлова

У меня такая ошибка была в базе, когда я открывала любой документ. Документ не открывался и выходила ошибка. Сделала копию базы, и работаю через нее, все норм.
А что касается настроек 1с, то при открытии любой вкладки (покупки, продажи и тд) справа сверху есть значок настроек, именно оттуда настраивается видимость пунктов, которые на Вашем фото. Я таким образом постоянно что-то добавляю в список.

Я не поняла, как мне помогут "Настройки" в данном случае и что я должна через них сделать

Внутренняя ошибка "Преобразование значения к типу Дата не может быть выполнено"
1С.8.2 / При загрузке Выписки из казначейства в Документ Кассовые выбытия происходит ошибка, на.

Преобразование значения к типу Число не может быть выполнено
Процедура КоманднаяПанельТабличногоДокументаСохранить(Кнопка) ДиалогВыбораФайла = Новый.

Преобразование значения к типу число не может быть выполнено (1с 8.3)
В документе, если цену указываешь в ручную, то всё работает, если ссылаешься на справочник, либо на.

Преобразование значения к типу Число не может быть выполнено
Здраствуйте выполнял работу по книжке. В конфигураторе всё настроено правильно,написал код кнопки.

Период = Выборка2.Период; что у вас тут возвращает? Может не дата?
Вам бы в выборке сделать выбор даты: ПродажиПоДисконтнымКартам.ДисконтнаяКарта.Дата Как Дата
А потом Период = Выборка2.Дата. Тогда и ошибки не будет точно LIDENBROCK, что отладчик показывает вам? Это первое, второе, почему период получаем в йикле, а за циклом с ним работаем? ЕстьNULL(МАКСИМУМ(ПродажиПоДисконтнымКартам.Период),0) КАК Период

Если Период действительно может быть NULL, то 0 - это явно НЕ дата
И, так понял, первым запросом вам надо получить последнюю дату использования конкретной диск карты.
Тогда лучше
ВЫБРАТЬ первые 1
ПродажиПоДисконтнымКартам.Период КАК Период
. ..
УПОРЯДОЧИТЬ ПО
ПродажиПоДисконтнымКартам.Период Убыв

Добавлено через 7 минут
Понял. ЕстьNULL у вас присутствует, потому что по карте могло не быть продаж. Тогда надо ставить какое-то условие проверки на 0 перед

polax, что если там несколько одинаковых дат. И как мне записать на выборку первого!?

Добавлено через 6 минут
polax, Дело в том что мне нужно выбрать последнюю дату когда была совершена покупка по карте, ЕстьNULL - я пытался проверить на наличие, его можно убрать. Может мне убрать из цикла " Период = Выборка2.Период; " ?

LIDENBROCK, А как вы берете МАКСИМУМ в таком случае? Период - только дата без времени? Берите не реальную таблицу регистра накоплений а виртуальную и установите период секунда по нему порядок с убыванием. Получите самую последнюю запись

Добавлено через 1 минуту
LIDENBROCK, Уберете и как определите период?

Добавлено через 39 секунд

Все, уезжаю на работу вызвали )))

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

Преобразование значения к типу Число не может быть выполнено
Помогите пожалуйста не могу понять в чем проблема, выбивает ошибку "Преобразование значения к типу.

Очень часто начинающие программисты 1С 8.3 встречаются с этой проблемой. Рассмотрим причины возникновения ошибки Преобразование значения к типу Число не может быть выполнено и методы её решения.


Причина ошибки Преобразование значения к типу Число не может быть выполнено

Причина достаточно банальна. Обычно при каком-либо арифметическом действии над переменными числового типа система ожидает увидеть в этом действии два значения числового типа, например:

Система, естественно, верно отработает это выражение и вернет 4.

Существуют ситуации, в которых в таких простых случаях в переменных оказывается не число, а, например, строка, NULL неопределено, дата и др.

Вот такой пример обязательно выдаст ошибку Преобразование значения к типу Число не может быть выполнено:

Потому как платформа не может сложить значения типа число и значения типа дата.

Единственное исключение — сложения со строкой, в которой содержатся только цифры:

Получите 267 видеоуроков по 1С бесплатно:

Система выдаст результат 4, однако, если поменять слагаемые местами, система выдаст строковые «22», т.к 1С 8 выбирает тип по первому в выражению значению.

Решение Преобразование значения к типу Число не может быть выполнено

В качестве решения рекомендую использовать дополнительные проверки. Например, на тип переменных:

Очень распространенная ошибка — это получение NULL в запросе и использование его в арифметических выражениях:

Здесь в строке Сч = Сч + Выборка.КоличествоОборот вполне вероятно появление данной ошибки в случае получения в качестве значения NULL.

Чтобы избежать данной ошибки, достаточно использовать проверку на NULL ресурсов в запросе:

Если в значении будет значение NULL, то система заменит его на ноль, тем самым ошибка будет исправлена.

Другие статьи по 1С:

Если Вы начинаете изучать 1С программирование, рекомендуем наш бесплатный курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):


Программирование системы
15.08.2016 10:22
8131

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

Неявное преобразование типов

Неявное преобразование типов переменных возникает когда над переменными выполняется какие либо действия: сложение, вычитание, соединение строк, и т.д.

Явное преобразование типов

Для преобразования типов значений в 1С предназначены специальные функции: Число(), Строка(), Дата().

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

Даты, отформатированные как текст, выравниваются по левому краю в ячейке (вместо выравнивания по правому краю). Если включена Проверка ошибок , Текстовая дата с двумя цифрами года также может помечаться индикатором ошибки: .

Поскольку функция проверки ошибок в Excel распознает даты в текстовом формате с двузначным номером года, можно воспользоваться средством автозамены и преобразовать их в даты в формате даты. С помощью функции ДАТАЗНАЧ можно преобразовывать в даты большинство типов текстовых дат.

Если вы импортируете данные в Excel из другого источника или вводите даты с двумя цифрами года в ячейки, которые ранее были отформатированы как текст, в левом верхнем углу ячейки может появиться маленький зеленый треугольник. Этот индикатор ошибки указывает на то, что дата хранится в текстовом формате, как показано в данном примере.


Вы можете использовать индикатор ошибки для преобразования дат из текстового формата в формат даты.

Примечания: Сначала убедитесь в том, что в Excel включена проверка ошибок. Для этого:

Щелкните Файл > Параметры > Формулы.

В Excel 2007 нажмите кнопку Microsoft Office и выберите Параметры ExcelExcel 2007 формулы.

При проверке ошибокустановите флажок Включить фоновую проверку ошибок. Все найденные ошибки помечаются треугольником в левом верхнем углу ячейки.

В разделе правила проверки ошибоквыделите ячейки, которые содержат годы, представленные 2 цифрами.

Выполните указанные ниже действия, чтобы преобразовать дату в текстовом формате в обычную дату.

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

Совет: Чтобы отменить выделение ячеек, щелкните любую ячейку на листе.

Нажмите появившуюся рядом с выделенной ячейкой кнопку ошибки.


В меню выберите команду Преобразовать XX в 20XX или Преобразовать XX в 19XX. Если вы хотите отключить индикатор ошибки, не преобразуя число, нажмите кнопку пропустить ошибку.


Текстовые даты с двумя цифрами года преобразуются в стандартные даты с четырьмя цифрами года.

После преобразования ячеек с текстовыми значениями можно изменить внешний вид дат путем применения формата даты.

Если на листе есть даты, которые, возможно, были импортированы или вставлены так, как показано на рисунке ниже, вам, возможно, потребуется переформатировать их так, чтобы они выводились в виде коротких или длинных дат. Формат даты также будет более полезен, если вы хотите отфильтровать, отсортировать или использовать его в вычислениях дат.

Выделите ячейку, диапазон ячеек или столбец, которые нужно переформатировать.

Краткий формат даты выглядит следующим образом:


В длинный формат даты содержатся дополнительные сведения, как показано на рисунке:


Чтобы преобразовать текстовую дату в ячейку в серийный номер, используйте функцию ДАТАЗНАЧ. Затем скопируйте формулу, выделите ячейки, содержащие текстовые даты, и используйте команду Специальная Вставка , чтобы применить к ним формат даты.

Выполните указанные ниже действия:

Выберите пустую ячейку и убедитесь в том, что ее числовой формат является общим.

В пустой ячейке сделайте следующее.

Щелкните ячейку, содержащую дату в текстовом формате, которую следует преобразовать.

Нажмите клавишу ВВОД, и функция ДАТАЗНАЧ возвращает порядковый номер даты, представленной текстовым форматом даты.

Что такое серийный номер Excel?

В Excel даты хранятся в виде порядковых номеров, что позволяет использовать их в вычислениях. По умолчанию 1 января 1900 г. является порядковым числом 1, а 1 января 2008 — порядковый номер 39448, так как он составляет 39 448 дня после 1 января, 1900.To скопировать формулу преобразования в диапазон смежных ячеек, выделите ячейку, содержащую введенную формулу. , а затем перетащите маркер заполнения по диапазону пустых ячеек, который соответствует размеру диапазона ячеек, содержащих текстовые даты.

В результате получится диапазон ячеек с порядковыми номерами, который соответствует диапазону ячеек с датами в текстовом формате.

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

Сочетание клавиш: Кроме того, можно нажать клавиши CTRL + C.

Выделите ячейку или диапазон ячеек, которые содержат даты в текстовом формате, и на вкладке Главная в группе Буфер обмена нажмите стрелку под кнопкой Вставить и выберите команду Специальная вставка.

В диалоговом окне Специальная вставка в разделе Вставить выберите параметр Значения и нажмите кнопку ОК.

На вкладке Главная нажмите кнопку вызова всплывающего окна рядом с полем число.

В поле Категория выберите пункт Дата, после чего укажите необходимый формат даты в списке Тип.

Чтобы удалить серийные номера после того, как все даты будут успешно преобразованы, выделите ячейки, содержащие их, а затем нажмите клавишу DELETE.

Дополнительные сведения

Вы всегда можете задать вопрос специалисту Excel Tech Community, попросить помощи в сообществе Answers community, а также предложить новую функцию или улучшение на веб-сайте Excel User Voice.

Примечание: Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Была ли информация полезной? Для удобства также приводим ссылку на оригинал (на английском языке).

Get expert help now

Don’t have time to figure this out? Our expert partners at Excelchat can do it for you, 24/7.

Читайте также: