![]() |
![]() |
![]() |
|
функция ВЫРАЗИТЬ в запросе не работает | ☑ | ||
---|---|---|---|---|
0
pppp
01.12.08
✎
13:43
|
не могу выразить число в строку или наоборот
мож меня глючит пытаюсь в 1с написать аналог sql запроса select cast('30' as numeric(10)) набираю в консоле ВЫБРАТЬ ВЫРАЗИТЬ("30" как число) {ОбщаяФорма.КонсольТестированияЗапроса(35)}: Ошибка при вызове метода контекста (Выполнить): {(1, 9)}: Несовместимые типы "ВЫРАЗИТЬ" ВЫБРАТЬ <<?>>ВЫРАЗИТЬ("30" как число) ЭлементыФормы.Результат.Значение=Запрос.Выполнить().Выгрузить(); по причине: {(1, 9)}: Несовместимые типы "ВЫРАЗИТЬ" ВЫБРАТЬ <<?>>ВЫРАЗИТЬ("30" как число) |
|||
1
Garkin
01.12.08
✎
13:45
|
RTFM
|
|||
2
asady
01.12.08
✎
13:45
|
(0) не взлетит.
|
|||
3
Mitriy
01.12.08
✎
13:45
|
ВЫРАЗИТЬ так не умеет... справку читай... очень внимательно...
|
|||
4
globalasax
01.12.08
✎
13:53
|
Приведение типа>
ВЫРАЗИТЬ ( <Выражение> КАК <Тип значения> ) <Тип значения> БУЛЕВО | ЧИСЛО [(Длина[, Точность])]| СТРОКА [(Длина)]| ДАТА | <Имя таблицы> <Длина> Число <Точность> Число |
|||
5
pppp
01.12.08
✎
13:53
|
а на выразить и справки нету
|
|||
6
globalasax
01.12.08
✎
13:54
|
<Выражение> приводится к одному из примитивных типов, или к ссылочному типу данных; в последнем случае <Имя таблицы> указывает на соответствующую таблицу информационной базы.
Если <Выражение> содержит в составном типе требуемый <Тип значения>, то приведение типа считается осуществимым, и для каждого значения указанного типа результатом будет это самое значение. Для значений других типов результатом приведения типа будет значение NULL. Если <Выражение> не содержит в составном типе требуемый <Тип значения>, то выполнение данного запроса завершится ошибкой из-за принципиальной невозможности совершить приведение типов. Для <Тип значения> СТРОКА с указанием длины максимальный размер строки 1024. |
|||
7
pppp
01.12.08
✎
13:54
|
длина точность опциональны, но если их указать точно такая же ошибка
ВЫБРАТЬ ВЫРАЗИТЬ("30" как число(10,0)) однох... |
|||
8
pppp
01.12.08
✎
13:55
|
и чего 1с не может число в строку и обратно???
|
|||
9
pppp
01.12.08
✎
13:56
|
напишите рабочий пример плиз (всего 3 слова писать то)
|
|||
10
pppp
01.12.08
✎
13:57
|
почему у 1с строка и число несовместиииииии-и-и-и-и-и-и-имые типы млин
|
|||
11
globalasax
01.12.08
✎
13:59
|
дык не работает ВЫБРАТЬ ВЫРАЗИТЬ("30" КАК ЧИСЛО). А так ВЫБРАТЬ ВЫРАЗИТЬ("30" КАК СТРОКА) работает. Преобразовывать не хочет.
|
|||
12
pppp
01.12.08
✎
13:59
|
на sql все легко переводится и туда и обратно с любой точностью и разрадностью
|
|||
13
globalasax
01.12.08
✎
13:59
|
(4) из справки
|
|||
14
pppp
01.12.08
✎
13:59
|
хахахаха строку в строку и конвертировать то не надо
|
|||
15
Garkin
01.12.08
✎
13:59
|
(12) Нет в запросах 1с преобразования типов.
|
|||
16
globalasax
01.12.08
✎
14:01
|
Поля исходных таблиц могут иметь составной тип. Для таких полей возникает необходимость привести значения поля к какому-либо определенному типу. В языке запросов предусмотрена возможность приведения типа, ею можно пользоваться в списке полей выборки и в условии отбора в предложении ГДЕ.
|
|||
17
Cheater
01.12.08
✎
14:01
|
||||
18
pppp
01.12.08
✎
14:06
|
млин скачай на клиент число переведи в строку и обратно отправь на сервер
проще быстрее ;(( |
|||
19
pppp
01.12.08
✎
14:08
|
в общем функцию cast 1с решила не реализовывать а написала свою великую выразить для выражения типа в самого себя если он идет в выборке а остальные подтипы составного типа в NULL це глобально можно было решить
ВЫБРАТЬ КОГДА поле1 ССЫЛКА Справочник.Номенклатура ТОГДА поле1 ИНАЧЕ NULL КОНЕЦ |
|||
20
MSensey
01.12.08
✎
15:23
|
(19) не совсем ты прав, что можно вместо ВЫРАЗИТЬ использовать ВЫБОР ...
почему? подумай сам |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |