![]() |
![]() |
![]() |
|
Как объединить две строки в запросе? | ☑ | ||
---|---|---|---|---|
0
V_V_V
08.02.11
✎
15:52
|
В зависимости от типа документа-регистратора на выходе нужно получить различные данные, да еще и обязательно с разным префиксом. Перепробовал разное, ничего не работает. Читал
v8: v8: Конкатенация строк в запросе v8: v8: Соединить число со строкой в запросе не подошло - у меня не в тех секциях запроса объединение требуется. На данный момент имеется такой не работающий вариант запроса для поля: ВЫБОР КОГДА ОстаткиТоваров.Регистратор ССЫЛКА Документ.ПриходнаяНакладная ТОГДА ПРЕДСТАВЛЕНИЕ(&БукваКонтрагент + ОстаткиТоваров.Регистратор.Контрагент.Код) ИНАЧЕ ВЫБОР КОГДА ОстаткиТоваров.Регистратор ССЫЛКА Документ.Перемещение ТОГДА ПРЕДСТАВЛЕНИЕ(&БукваСклад + ОстаткиТоваров.Регистратор.СкладОтправитель.Код) КОНЕЦ КОНЕЦ КАК КодПоставщика, |
|||
1
izekia
08.02.11
✎
15:53
|
кажется это не работает
|
|||
2
mikecool
08.02.11
✎
15:53
|
а так
Выразить(&БукваКонтрагент как строка(1)) + Выразить(ОстаткиТоваров.Регистратор.Контрагент.Код как строка(10)) |
|||
3
mikecool
08.02.11
✎
15:53
|
+2 при условии , что Код - текстовый
|
|||
4
V_V_V
08.02.11
✎
15:54
|
Да, ругается
Неверные параметры "+" ТОГДА ПРЕДСТАВЛЕНИЕ(&БукваСклад <<?>>+ ОстаткиТоваров.Регистратор.СкладОтправитель.Код) |
|||
5
V_V_V
08.02.11
✎
15:55
|
(2) Запросу плюс не нравится...
|
|||
6
mikecool
08.02.11
✎
15:55
|
(4) без представлений пробуй (2)
|
|||
7
V_V_V
08.02.11
✎
16:02
|
(6) Не дает сохранить строку в конструкторе. Пишет: "Несовместимые типы ВЫРАЗИТЬ".
|
|||
8
V_V_V
08.02.11
✎
16:03
|
+7 Перед плюсом
|
|||
9
Дикообразко
08.02.11
✎
16:04
|
(7) у ОстаткиТоваров.Регистратор.СкладОтправитель.Код тип строковой?
|
|||
10
Дикообразко
08.02.11
✎
16:05
|
(8) у буквы тогда убери выразить
|
|||
11
V_V_V
08.02.11
✎
16:08
|
(9) Тип числовой. Попробовал преобразовать через ПРЕДСТАВЛЕНИЕ(ОстаткиТоваров.Регистратор.Контрагент.Код)
и убрать (10) - таже ошибка на ВЫРАЗИТЬ |
|||
12
Дикообразко
08.02.11
✎
16:08
|
(11) тогда не судьба
|
|||
13
V_V_V
08.02.11
✎
16:11
|
(12) Хм. Плохо. А надо - там выборка большая...
|
|||
14
Дикообразко
08.02.11
✎
16:12
|
(13) ну раз длина кода ограничена...разложи код на символы
|
|||
15
V_V_V
08.02.11
✎
16:14
|
(14) В запросе?
|
|||
16
Дикообразко
08.02.11
✎
16:16
|
(15) а что?
|
|||
17
V_V_V
08.02.11
✎
16:20
|
(16) Не пойму зачем и не знаю как, вот и спросил... :)
|
|||
18
Дикообразко
08.02.11
✎
16:28
|
вот тут есть пример Книга знаний: v8: Операции преобразования Число в Строку и обратно в запросах
не знаю то, не то... но суть будет понятна |
|||
19
V_V_V
08.02.11
✎
16:36
|
(18) Спасибо. С количеством прочитанного потихоньку начинаю догонять, что проблему не победить...
v8: Сложение в запросе ВложенныЗапрос.Цена + "*". Может я хочу невозможного? |
|||
20
Дикообразко
08.02.11
✎
16:38
|
(19) получи текст запроса, для длины кода и засуть в текст твоего запроса... :)
хотя это конечно будет выглядеть монструозно |
|||
21
Sasha_H
08.02.11
✎
17:02
|
если код числовой то в запросе ничего не сделать такога уж идиология функции ВЫРАЗИТЬ()
|
|||
22
V_V_V
08.02.11
✎
17:05
|
(21) Да вот как раз курю
v8: Преобразование числа в строку в запросе v8: Конкатенация строк в запросе |
|||
23
anig99
08.02.11
✎
22:59
|
(22) единственное найденное мною решение пока - использование возможности СКД вызывать функции общих модулей. Т.е. создаем функцию складывающую две строки в общем модуле или ищем в конфе подходящую. Засовываем её в вычисляемое поле. Все.
Пример использования внешней функции http://infostart.ru/public/57892/ |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |