0 / 0 / 0
Регистрация: 16.04.2010
Сообщений: 50
|
|
1 | |
Аналог Like19.08.2010, 13:06. Показов 32847. Ответов 28
Метки нет (Все метки)
всем привет, подскажите, как мне искать в документе необходимые слова в поле
Код (Delphi): search = "Form="KR" & Num="1" & Corr="БАНК" colldoc = db.Search(search, null, 0); к примеру поле "кореспондент"="АО "КРЕДИТ БАНК" или "кореспондент"="АО "АЛЬЯНС БАНК" в этом случае эти документы должны быть найдены по этому поиску, есть ли функция типа как LIKE ?
0
|
19.08.2010, 13:06 | |
Ответы с готовыми решениями:
28
Аналог Компрессора Данфосс FR-8.5A, Не могу найти аналог компрессора Аналог Zilog 1883, Аналог Zilog 1883 Модуль EATON A1 D20 Аналог where из C# Аналог 1С |
0 / 0 / 0
Регистрация: 04.08.2008
Сообщений: 408
|
|
19.08.2010, 13:12 | 2 |
@Like
0
|
0 / 0 / 0
Регистрация: 16.04.2010
Сообщений: 50
|
|
19.08.2010, 13:19 | 3 |
Сообщение от xalet
Код (C++): search = "Form="KR" & Num="1" & @Like(Corr)="БАНК" пишет
0
|
0 / 0 / 0
Регистрация: 23.08.2008
Сообщений: 6,252
|
|
19.08.2010, 13:22 | 4 |
всегда существует оценка эффективности...
если набор большой - возможно DbSearch а ежели - нет - то выборку можно "втянуть" и искать в ней притом не все варианты возможны для поиска (т.е. всего-лишь надо <начало фразы>* или *<конецфразы>) можно решить и индексом (сгенерив мультивалюйное поля - для поиска, с вариантами) Добавлено:
Сообщение от Didokz
или открыть хэлп по формуле....
0
|
0 / 0 / 0
Регистрация: 16.04.2010
Сообщений: 50
|
|
19.08.2010, 13:38 | 5 |
так геморно, мне надо в БД искать документы по вх.номерам и по кореспондентам
я не хочу каждый документ открывать, "втянуть" и искать, пусть сервер это делает db.Search(... пишу на C# импользуя СОМ библиотеки, про @Uppercase узнал уже ))) search = "Form=KR & Num=" + InNumber.Text + " & @Uppercase(Corr)=" + Korespondent.Text.ToUpper() + ""; я сам в Лотусе не пишу и дизайнера(хелп по нему в т.ч) у меня нету
0
|
0 / 0 / 0
Регистрация: 04.12.2004
Сообщений: 3,329
|
|
19.08.2010, 13:47 | 6 |
Подойдет @Contains.
0
|
0 / 0 / 0
Регистрация: 16.04.2010
Сообщений: 50
|
|
19.08.2010, 13:51 | 7 |
ещё одна проблема:
colldoc = db.Search(search, null, 0); doc = colldoc.GetFirstDocument(); поле RegDate в документе отображается как дд.мм.гггг я проверял, почему не срабатывает думал: MessageBox.Show(doc.GetFirstItem("RegDate").Text); возвращает дд.мм.гггг чч.мм.сс как правило юзер время не помнить и не вводят, как искать такую дату
0
|
0 / 0 / 0
Регистрация: 04.12.2004
Сообщений: 3,329
|
|
19.08.2010, 13:57 | 8 |
Понял только с третьего прочтения.
@Date(RegDate) вернёт только дату.
0
|
0 / 0 / 0
Регистрация: 16.04.2010
Сообщений: 50
|
|
19.08.2010, 14:11 | 9 |
Сообщение от Medevic
че то у меня при поиске с датой не срабатывает поиск, без даты работает search = "Form="KR" & Num="1" & @Date(RegDate)="23.12.2009" & @Contains(@LowerCase(Corr);" + Korespondent.Text.ToLower() + ")";
0
|
0 / 0 / 0
Регистрация: 23.08.2008
Сообщений: 6,252
|
|
19.08.2010, 14:16 | 10 |
http:///ipb.html?s=&sh...st&p=178713
почиталиб про алтернативы и применимасть вашего подхода
0
|
0 / 0 / 0
Регистрация: 04.12.2004
Сообщений: 3,329
|
|
19.08.2010, 14:20 | 11 |
В формате даты.
Дату надо брать в квадратные скобки. @Date(RegDate)=[23.12.2009] Добавлено: Ну а более правильно: @Date(RegDate)=@Date(2009; 12; 23)
0
|
0 / 0 / 0
Регистрация: 16.04.2010
Сообщений: 50
|
|
19.08.2010, 14:23 | 12 |
г-н lmike, вы просто мимо идите,сюда не заглядывайте
0
|
0 / 0 / 0
Регистрация: 19.04.2009
Сообщений: 2,219
|
|
19.08.2010, 14:28 | 13 |
Сообщение от Didokz
https://www.ibm.com/developerworks/lotus/do...dominodesigner/
0
|
0 / 0 / 0
Регистрация: 16.04.2010
Сообщений: 50
|
|
19.08.2010, 14:34 | 14 |
Сообщение от Medevic
a Код (Delphi): search = "Form="KR" & Num="1" & @Date(RegDate)="2009.12.23" & @Contains(@LowerCase(Corr);" + Korespondent.Text.ToLower() + ")"; не возвращает ничего
0
|
0 / 0 / 0
Регистрация: 04.12.2004
Сообщений: 3,329
|
|
19.08.2010, 14:40 | 15 |
Если берешь в квадратные скобки, то вводить дату надо в региональном формате. т.е. [23.12.2009].
Поэтому лучше использовать @Date(2009; 12; 23). Параметры - год, месяц, число.
0
|
0 / 0 / 0
Регистрация: 19.04.2009
Сообщений: 2,219
|
||||||
19.08.2010, 14:59 | 16 | |||||
Didokz
Что-то мне кажется с кавычками Вы намудрили. В ЛС запрос скорее всего выглядел бы так:
Может так получится: Код (Delphi): search = "Form=\"KR\" & Num=\"1\" & @Date(RegDate)=@Date(2009; 12; 23) & @Contains(@LowerCase(Corr);\"} + Korespondent.Text.ToLower() + "\")";
0
|
0 / 0 / 0
Регистрация: 16.04.2010
Сообщений: 50
|
|
19.08.2010, 15:17 | 17 |
Сообщение от Medevic
но я могу в этом в текстбоксе настроит дату как хочу, могу гггг.мм.дд или дд.мм.гггг, соответственно, при поиске док-в по дате: если я настрою дд.мм.гггг Код (Delphi): search = "@Date(RegDate)=[" + InDate.Text + "]...; а если формат гггг.мм.дд то Код (Delphi): search = "@Date(RegDate)=@Date(" + InDate.Text + ")...; далее colldoc = db.Search(search, null, 0); и т.д. я вас правильно понял ? Добавлено:
Сообщение от nvy
Код (Delphi): search = "Form=KR & Num=" + InNumber.Text +" & @Contains(@LowerCase(Corr);" + Korespondent.Text.ToLower() + ")";
0
|
0 / 0 / 0
Регистрация: 04.12.2004
Сообщений: 3,329
|
|
19.08.2010, 15:18 | 18 |
Лучше давать дату по частям. Чтобы не было проблем с форматом. Типа такого:
Код
search = "@Date(RegDate)=@Date(" + Year(InDate) + "; " + Month(InDate) + "; " + Day(InDate) + ")...;
0
|
0 / 0 / 0
Регистрация: 16.04.2010
Сообщений: 50
|
|
19.08.2010, 15:51 | 19 |
Сообщение от Medevic
пишет Notes error: Formula Error (@Date(RegDate)=@Date(2009.12.23)) Добавлено:
0
|
0 / 0 / 0
Регистрация: 19.04.2009
Сообщений: 2,219
|
|
19.08.2010, 15:57 | 20 |
@Date(2009.12.23), @Year(2009.12.23), @Month(2009.12.23), @Day(2009.12.23) — не хватает кавычек/скобок.
0
|
19.08.2010, 15:57 | |
19.08.2010, 15:57 | |
Помогаю со студенческими работами здесь
20
Аналог L Аналог на С++ Аналог GET в js Аналог Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |