#0
by radiks
Подскажите как преобразовать в запросе строку вида "20111005ПРТТ" преобразовать в дату?
#3
by radiks
(2? В общем нужно из внешнего источника затянуть данные в заданном интервале дат. Дата там в таком формате. Т.е. чтобы не тянуть за весь период данные из внешнего источника, нужно отобрать в запросе.
#5
by Aleksey
Дата в нормальном виде, осталось период преобразовать в строку и сравнивать строки. Необязательно входящие данные преобразовывать
#7
by radiks
а как все-таки отсечь текст и оставшееся сравнить? я попытался ВЫРАЗИТЬ(ПОДСТРОКА(..., 0, 8) КАК Дата) - ошибка
#9
by Aleksey
А зачем отсекать. 000 гарантированно больше чем буква т.е. 201110050000<20111005ПРТТ<201110060000
#15
by radiks
нужно именно в запросе. Понятно, что можно затянуть все и потом обычным Формат, но нужно в запросе
#19
by andrewks
вот другой вариант: select 0 as num ,"0" as numstr into digits union select 1,"1" union select 2,"2" union select 3,"3" union select 4,"4" union select 5,"5" union select 6,"6" union select 7,"7" union select 8,"8" union select 9,"9" index by num,numstr ; select digits1.num+10*digits2.num as day ,digits2.numstr+digits1.numstr as daystr into days from digits as digits1 ,digits as digits2 where (digits1.num+10*digits2.num between 1 and 31) index by day,daystr ; select digits1.num+10*digits2.num as month ,digits2.numstr+digits1.numstr as monthstr into months from digits as digits1 ,digits as digits2 where (digits1.num+10*digits2.num between 1 and 12) index by month,monthstr ; select digits1.num+10*digits2.num+100*digits3.num+1000*digits4.num as year ,digits4.numstr+digits3.numstr+digits2.numstr+digits1.numstr as yearstr into years from digits as digits1 ,digits as digits2 ,digits as digits3 ,digits as digits4 //where (digits1.num+10*digits2.num+100*digits3.num+1000*digits4.num between 1 and 3999) where (digits1.num+10*digits2.num+100*digits3.num+1000*digits4.num between 2000 and 2020) index by year,yearstr ; dateadd(dateadd(dateadd(datetime(1,1,1),day,days.day-1),month,months.month-1),year,years.year-1) as Дата, years.yearstr+months.monthstr+days.daystr as ДатаСтрокой from years ,months ,days order by Дата генерация таблицы дат и их текстовых представлений. можешь её пихать прямо в запросе в ВТ, и использовать соединение с ней
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
В этой группе 1С
- СКД. Скрыть колонку показателя в зависимости от значения группировки
- Добавить реквизит сразу во все документы
- Аналог Addin.V7HttpReader
- Как активизировать ячейку табличного поля программно?
- УТ11, Интеркампани, себестоимость
- Как из узла РИБ сделать отдельную базу
- Драйвер hasp 2.17 где взять?
- УПП: СКД во внешней печатной форме
- VBA - как загрузить список в combobox
- Проблема с правом на стандартные вычеты на детей ЗуП 8.2 2.5.42.4
- Требуется скачать с Infostart.ru
- 8.2 В процессе обновления информационной базы произошла критическая ошибка
- Помогите перешедшему с v7 создать запрос из двух регистров с объединением
- Яндекс в Опере вместо поиска постоянно выбрасывает на редирект
- Установка отборов в отчета Свод начислений в УПП
- ЗУП КОРП. Как ввести анкету?
- Перенос нетиповой бухгалтерии 7.7. в 8.2
- Обработка печатающая все реквизиты документа
- Как назначить задание в "Планировщик заданий" при выключении компьютера ?
- выборка из запроса в конвертации