Как указать в запросе, что хочу получить тип Double

Тема в разделе "SQL", создана пользователем Heleos1984, 12 ноя 2010.

  1. Heleos1984

    Heleos1984 Гость

    Привет, народ. Есть такой запрос, который обращается к базе данных Паруса, которая на FoxPro

    SELECT ZTRANSF.SUM, ORGBASE.SHOWNAME AS FIO, BANKACC.ACCOUNT FROM ZTRANSF, ORGBASE, BANKACC WHERE ORGBASE.RN = ZTRANSF.ORGFROM_RN AND BANKACC.ORBASE_RN = ZTRANSF.ORGFROM_RN AND ZTRANSF.YEAR = 2009 AND ZTRANSF.MONTH = 4

    Запрос делается с использование компоненты ADODB в 1С 7.7
    Проблема в том, что при выборке поле SUM имеет тип НУМЕРИК (код 131), а 1С не понимает такого типа данных, сообщает "Тип переменой не поддерживается".

    Можно ли как то определить в запросе, что нужно преобразовать значения этого поля в тип Double?
     
  2. etc

    etc Гость

    Приведение типов это CAST (может оно в FoxPro есть и свое), но ваша задача это задача 1С.
     
  3. Heleos1984

    Heleos1984 Гость

    Решил проблему. Функция преобразования типов CAST в FoxPro не работает, но работает функция STR (<Выражения>,<Длина>,<ПослеЗапятой>)

    SELECT STR (ZTRANSF.SUM, 15, 2) AS SUM, ORGBASE.SHOWNAME AS FIO, BANKACC.ACCOUNT FROM ZTRANSF, ORGBASE, BANKACC WHERE ORGBASE.RN = ZTRANSF.ORGFROM_RN AND BANKACC.ORBASE_RN = ZTRANSF.ORGFROM_RN AND ZTRANSF.YEAR = 2009 AND ZTRANSF.MONTH = 4

    и всё заработало.
     
Загрузка...

Поделиться этой страницей