Вопрос № 172995: Здравствуйте уважаемые эксперты. Конфигурация самописная на 1С 8.1. Сервер баз данных MSSQL2005+. Вопрос состоит в следующем. Поскольку клиентские машины слабые, а сервер достаточно серьезный, при написании отчетов, я стараюсь все условия закидать в...
Вопрос № 172995:
Здравствуйте уважаемые эксперты. Конфигурация самописная на 1С 8.1. Сервер баз данных MSSQL2005+. Вопрос состоит в следующем. Поскольку клиентские машины слабые, а сервер достаточно серьезный, при написании отчетов, я стараюсь все условия закидать в запрос. Мне надо в запросе по условию соединить два поля. Привожу работающий пример без запроса: см. Пример 1. Каким образом я могу в запросе выбрать поле? По следующим условиям: 1. Если ВидДок=перечисления.НавчанняГуртожитокПроживання_ВидДок.виселення (передаю
параметром) 2. Тогда надо соединить два поля ЖитловийФонд + "ДатаПосВис" (желательно с форматом дд.ММ.гг для даты) 3. В остальных условиях просто выводить "ЖитловийФонд". В Примере 2, я пробовал выполнить нужные условия в запросе. Мне показывает ошибку при использовании оператора "+". Пробовал переводить поля в строку через метод "ПРЕДСТАВЛЕНИЕ", ситуация с ошибкой повторилась. Подскажите, или реально это сделать, и
как именно? Заранее благодарен.
Отправлен: 06.10.2009, 22:44
Вопрос задал: Andris, 1-й класс
Всего ответов: 2 Страница вопроса »
Отвечает Анатолий Ясень, Студент :
Здравствуйте, Andris.
К сожалению, в конкатенации (оператор "+") нельзя использовать поля разных типов. Функция запросов "ВЫРАЗИТЬ" поможет Вам лишь в случае составного типа. Тогда будут выводиться те поля периода, которые имеют тип Строка. Попробуйте использовать Представление с гарантированной передачей этой функции непустого параметра
Приложение:
----- Только вперед!
Ответ отправил: Анатолий Ясень, Студент
Ответ отправлен: 07.10.2009, 07:01
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 255111
на номер 1151 (Россия) |
Еще номера »
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Отвечает Кулевский Сергей Владимирович, Студент :
Здравствуйте, Andris! Попробуйте так: ВЫБОР КОГДА МешканцiЖитлаСрезПоследних.ВидДок=ЗНАЧЕНИЕ(Перечисление.НавчанняГуртожитокПроживання_ВидДок.виселення) ТОГДА МешканцiЖитлаСрезПоследних.ЖитловийФонд + ВЫРАЗИТЬ(МешканцiЖитлаСрезПоследних.Период КАК СТРОКА(10)) ИНАЧЕ МешканцiЖитлаСрезПоследних.ЖитловийФонд КОНЕЦ
* Стоимость одного СМС-сообщения от 7.15 руб. и зависит от оператора сотовой связи.
(полный список тарифов)
** При ошибочном вводе номера ответа или текста #thank услуга считается оказанной, денежные средства не возвращаются.
*** Сумма выплаты эксперту-автору ответа расчитывается из суммы перечислений на портал от биллинговой компании.