#0
by крутойкодер
Выразить(НоменклатураВСписании.РазмерТовара.Ширина Как Строка ) + "х" + Выразить(НоменклатураВСписании.РазмерТовара.Глубина Как Строка ) что бы получилась строка "100х20" или "100х40" никогда не приходилось а щас надо
#2
by Megas
Никак =) Правдо смешно... Вот строки можно , а если число преобразовать в строку то нельзя =)
#3
by крутойкодер
тогда пойдем другим путем как вычеркнуть среднее измерение из трех измерений "100х78х40" "100х58х40" "80х78х40" "80х58х40" четыре значения должны превратиться в два "100х40" и "80х40" В ЗАПРОСЕ
#4
by Megas
хз... если все числа были б одинаковой(известной) длины выбрать выразить("100х78х40" как строка ) + ПОДСТРОКА("100х78х40", 7, 3)
#6
by Megas
А так смелый заголовок =) "простенькая задача" Нендавно MySQL ковырял, так там всё есть, и объявления переменной с последующими арифметическими действиями с ней, и нахождение в строке и вычисление длины строки... прям слюной истёк =)
#8
by Megas
Могу предложить. ВЫгрузить запрос по НоменклатураВСписании.РазмерТовара и поля ширина грубина в ТЗ Обработать Тез в ВременнуюТаблицу И в запрос ... вот такой вот финт =)
#10
by МихаилМ
насколько я помню. решение через выгрузку во временную таблицу с полями varchar. но задача скорее всего изначально неверно поставлена в связи с болезью 1с ников патать данные и их представление.
#16
by крутойкодер
в запросе сделал представление для полей а потом в вычисляемых полях добавил Ширина + "х" +Глубина взлетело ;)
#18
by Speshuric
"ВЫРАЗИТЬ" не предназначено для преобразования типов, а лишь для выделения простого типа из составного. Решить вопрос преобразования чисел в строки можно следующими способами: 1. Преобразовывать на стороне 1С. Дёшево и сердито. Но не запросом. 2. Загнать нужные числа во временную таблицу, индексировать её и соединяться с ней. Подходит, когда чисел не до фига - примерно до 10000. Потом возникает проблема скорости передачи этих 10000 на сервер, плохих планов запросов и т.п. 3. Сделать таблицу с соответствем цифр и символов цифр и написать соответствующее выражение, правда выражение будет очень громоздким и для каждой длины числа своё. Это способ для маньяков и для тренировки - для реальных задач лучше его не использовать. В любом случае следует помнить, что есть национальные форматы чисел (в т.ч. неразрывный пробел для отделения тысяч и запятая вместо десятичной точки)
#19
by Mendel_UA
- я сделал третий вариант, чисто для тренировки. До трех знаков. Чисто для тренировки. Только без таблицы. До трех знаков, но дальше одинаково все. Как я понял из ТЗ изменять конфигурацию нельзя. Пару кусков кода: В результате три часа мучений, и десятки килобайт запроса, и оно работает :)
#20
by Speshuric
>>но дальше одинаково все Это до тех пор, пока нет отрицательных и дробных - ага :) Я же говорю - хорошая задачка, если рассматривать как задачку, но не для практического использвания. Для практического использования часто лучше хранить представление (в том виде, который удобен).
#21
by Mendel_UA
Отрицательные и дробные тоже однотипно на самом деле. Я ведь округлял через выразить как число(10,0), оно мне округляет по правилам округления а не отбрасыванием дробной части... тоже еще тот вопросик :) Задачка действительно хороша как задача, но не более. Но и не менее. Специально решение целиком не выложил, вдруг надо будет экзамен делать на соображалку :)
#23
by Mendel_UA
Почему никак? Теоретически можно, но на практике такое решение слишком прожорливо. Разбираем число по циферкам и склеиваем каждую циферку. Длинно, но работает.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- Как сложить две таблицы значений?
- Как сложить две колонки в одну, если тип колонок строка?
- Условие в запросе, аналогичное условию в запросе 77
- Интересная фишка в запросе в 7-ке. Сумма из шапки и из ТЧ в запросе
- как сложить две строки в запросе?
- Как в запросе сложить строки?
- Как объединить две строки в запросе?
- Как сложить в запросе строки представления?
- Как в запросе, сложить суммы N-й строки табличной части?
- Сложить две строки в запросе
В этой группе 1С
- Вылет 1С SQL при одновременном создании документов
- ПолучитьСоединенияИнформационнойБазы()
- Zebra GK420t - ошибка "закончилась бумага" при полном рулоне
- Не могу скачать нигде! DrWeb Cureit ... http://www.drweb.com/ - ошибки..
- Округление в запросе и как с ним бороться?
- Количество пользователей на 1 программиста
- Ошибка печати принтера этикеток Zebra 2844
- Не работает сканер в УТ, хотя все тесты прошел
- где взять шаблон для создания базы УПРАВЛЕНИЕ Торговлей 10.3
- Как оформить в ЗиК перерыв на кормление ребенка
- Есть ли какие либо ограничения у объекта "Текст"
- Контекстный поис в ИндексированнаяТаблица
- УРБД и Mozilla Thunderbird
- Многофирменный учет в Бухгалтерии - разделить на 2 базы
- УТ 10.3 Отчет Взаиморасчеты с комиссионерами.
- Отчет по типу валовая прибыль
- Неудачная попытка создания объекта (BinaryData)
- Отличия УТ 10.3 от 11
- ЗУП: Расчет нормы дней за расчетный период
- Прием на работу - увольнение