#0
by Киса
Такая проблема нарисовалась:Нужно в .dbf поставить индекс, отфильтровующий записи по трем полям.Два поля в .dbf-e (PERIOD и YEAR) имеют числовой тип, а КОD - строка.Фильтр="(PERIOD="+ДатаТек+").AND.(YEAR="+ДатаГод(ДатаТек)+").AND.(KOD=STR("+КодФирмы+"))";ДБФ.ТекущийИндекс("PERIOD");На такой код Xbase ругается ошибкой -460 (Неверный тип подвыражения)Сдается мне, что индекс ругается на одновременное использование полей разных типов.Сделал такие научные тыки:Если индекс делать по первым двум полям (т.е. одного типа) то все проходит. Фильтр="(PERIOD="+ДатаМесяц(КонКвартала(ДатаТек))/3+").AND.(YEAR="+ДатаГод(ДатаТек)+")";ДБФ.ДобавитьИндекс("PERIOD", "PERIOD+YEAR", 0, 0,Фильтр);Также и для одного строчного поля индекс работает, если переписать соответственно.Возникает вопрос: как подружить в индексе поля разных типов???
#2
by dfdsfsdfsdfdf
ПопробуйDTOS - data to stringSTOD - string to dateSTR - to stringтак и пиши у меня все прошло
#3
by Киса
Писать в индексе или в фильтре?В индексе только что попробовалДБФ.ДобавитьИндекс("PERIOD", "PERIOD+YEAR+VAL(KOD)", 0, 0,Фильтр);ругается, но меньшеВ принципе, значение KOD - числовое, но тип у него символьный.Пробую дописать в фильтр
#5
by klimalex
Вдогонку к Если нужно внутри года бегать по кватралам, то конечно:"Str(YEAR) + Str(PERIOD) + KOD"а если нужно пробегать сначала по первым кварталам всех лет, затемпо вторым и т.д., тогда
#6
by Киса
ПопробовалБолт. Ругается.Неужели только числа в строки переобразовывать??? "Str(PERIOD) + Str(Year) + KOD"
#8
by Киса
Он еще и по разному ругаетсяЕслиДБФ.ДобавитьИндекс("PERIOD", "STR(PERIOD)+STR(YEAR)+KOD", 0, 0,Фильтр);Тогда ругается на неправильное выражение индексаПишу:Фильтр="(PERIOD=STR("+ДатаМесяц(КонКвартала(ДатаТек))/3+")).AND.(YEAR=STR("+ДатаГод(ДатаТек)+")).AND.(KOD="+КодФирмы+")";Продолжает ругатся 460 ошибкой на выражение фильтраКак подружить типы выражений в фильтре?
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям
В этой группе 1С
- 1C:Бухгалтерия 7.7 SQL vs. Галактика
- Как взломать HASP "ИНФО-Бухгалтера"
- 1C:Экзаменатор
- Терминальный режим в 2000 сервере +1С
- Ошибка захвата таблиц 1SJOURN ..... :0(
- Нужен кряк ИТС диска ?
- Есть ли в 1С перебор каталогов?..
- Написал обработку и поставил пароль. Давно было, пароль забыл. Что делать?
- ТиС 7.5 зависает на отчетах
- Возможен ли в запросе отбор по значению функции?
- TSE, как развернуть окно на клиенте на весь экран?
- А как по-английски произносится "1С"?
- Cannot insert dulicate key in object '_1C_entry'
- Нужна информация о структуре dbf файлов в 1с предприятии v7.7
- Эргономичность интерфейса.
- А как убрать дату из документа?
- Как выбрать в реквизит группу справочника, а не сам элемент?
- Кто подскажет, чем посмотреть функции dll??? ооочень надо.
- Пароль на конфу - по совести!
- ToySQL. Parsing. Уже можно так.