Перейти к содержимому


Услуги программиста 1С
Профессиональные программисты 1С.
Весь комплекс услуг сопровождения 1С.

Курсы 1С
Бухгалтерам, менеджерам
и программистам.
Бесплатно!
Живое индивидуальное обучение по 1С.

1c 8.1 загрузка данных из Access


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 5

#1   Androskin

Androskin

      Рядовой

    • Пользователи
    • Сообщений: 3
    • Регистрация: 19-January 11
    • Откуда:Киев , Киев , Украина

Отправлено 21 March 2011 - 17:46

Из 1с делаю запрос в базу Access, где нужно выбрать определенные данные за период.
Написал такой запрос:
"SELECT PayType.PTChNum, PayType.PTChDate, SalesProt.PrCode FROM PayType, SalesProt WHERE PayType.PTChNum = SalesProt.PrChNum and PayType.PTChDate <= '"+НачалоДня(ДатаПродаж)+"' and PayType.PTChDate >= '"+КонецДня(ДатаПродаж)+"';"
Получаю ошибку "Произошла исключительная ситуация (Microsoft JET Database Engine): Несоответствие типов данных в выражении условия отбора."
Если этот же запрос делать без проверки даты, то все получается.
Где может быть ошибка? Спасибо.
  • 0

#2   Ardi

Ardi

      Генерал-полковник

    • Пользователи
    • PipPipPipPipPipPipPipPipPip
    • Сообщений: 958
    • Регистрация: 27-January 09
    • Откуда:Столица

Отправлено 21 March 2011 - 18:21

Quote
Несоответствие типов данных

  • 0

#3   Anderson

Anderson

      Полковник

    • Пользователи
    • PipPipPipPipPipPip
    • Сообщений: 178
    • Регистрация: 05-March 08
    • Откуда: , ,

Отправлено 22 March 2011 - 09:54

Quote (Androskin)
Если этот же запрос делать без проверки даты, то все получается.

Логика подсказывает что в аксессе дата имеет друой тип или формат.
  • 0

#4   Androskin

Androskin

      Рядовой

    • Пользователи
    • Сообщений: 3
    • Регистрация: 19-January 11
    • Откуда:Киев , Киев , Украина

Отправлено 22 March 2011 - 17:49

Смотрю поле с датой в Access на вид точно такое. Вот пример
22.03.2011 17:48:07

Добавлено (22.03.2011, 17:49)
---------------------------------------------
В чем тогда несоответствие?

Добавлено (22.03.2011, 17:49)
---------------------------------------------
Ну и если оно на самом деле есть, как мне сформировать запрос с выборкой за период?

  • 0

#5   Ardi

Ardi

      Генерал-полковник

    • Пользователи
    • PipPipPipPipPipPipPipPipPip
    • Сообщений: 958
    • Регистрация: 27-January 09
    • Откуда:Столица

Отправлено 22 March 2011 - 18:30

гугл сказал что нужно писать так " #02.02.2006# "
Попробуй.
  • 0

#6   Androskin

Androskin

      Рядовой

    • Пользователи
    • Сообщений: 3
    • Регистрация: 19-January 11
    • Откуда:Киев , Киев , Украина

Отправлено 23 March 2011 - 10:47

1 Вариант
Дата содержит синтаксическую ошибку в выражении запроса 'PayType.PTChNum = SalesProt.PrChNum and PayType.PTChDate <= #23.03.2011# and PayType.PTChDate >= #23.03.2011#'.

2 Вариант
Дата содержит синтаксическую ошибку в выражении запроса 'PayType.PTChNum = SalesProt.PrChNum and PayType.PTChDate <= #23.03.2011 00:00:00# and PayType.PTChDate >= #23.03.2011 23:59:59#'.

Тоесть, оно уже понимает что это дата.

Добавлено (23.03.2011, 10:47)
---------------------------------------------
Ну танцы с бубном решают все. Оказывается для Access Формат даты нужно задавать в виде
23/03/2011 12:25:45

"SELECT PayType.PTChNum, PayType.PTChDate, SalesProt.PrCode FROM PayType, SalesProt WHERE PayType.PTChNum = SalesProt.PrChNum and PayType.PTChDate >= #"+Формат(НачалоДня(ДатаПродаж),"ДФ=дд/ММ/гггг")+" "+Формат(НачалоДня(ДатаПродаж),"ДЛФ=В")+"# and PayType.PTChDate <=#"+Формат(КонецДня(ДатаПродаж),"ДФ=дд/ММ/гггг")+" "+Формат(КонецДня(ДатаПродаж),"ДЛФ=В")+"#;"

Ardi: спасибо за помощь.

  • 0



Похожие темы

  Название темы Автор Статистика Последнее сообщение



Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных