|
Форма поиска документа по реквизитам | ☑ | ||
---|---|---|---|---|
0
podkovka_
udachi 16.01.15
✎
12:39
|
доброго времени суток! ( 1С 8.3 )
Есть документ личное дело с различными реквизитами, предположим пока только - фамилия - имя - отчество. Необходимо, чтобы при запуске приложения на главном экране была представлена форма поиска этих личных дел, причем вариант поиска можно выбрать: - простой ( поиск осуществляется только по фамилии и /или имени) - расширенный ( поиск осуществляется по ВСЕМ реквизитам документа сразу или выборочно по некоторым). Также, если набрать несколько символов из реквизиты, результат должен выводить все подходящие строки (например, при вводе "ива" в параметр фамилия, выводится должны все "ивановы", "ивашкины" "иващуки" итд) Результат должен быть представлен в виде таблицы, из которой можно перейти в нужный найденный документ "личное дело". Попробовала сделать это просто на форме обработки, режим поиска через радиогруппу. И также попробовала через СКД, где режим поиска варьируется через варианты настроек отчета . В обоих случаях использовала запрос с параметрами по сути один и тот же: ВЫБРАТЬ ЛичноеДело.Ссылка, ЛичноеДело.Фамилия, ЛичноеДело.Имя, ЛичноеДело.Отчество, ИЗ Документ.ЛичноеДело КАК ЛичноеДело ГДЕ (ЛичноеДело.Фамилия = &Фамилия ИЛИ ЛичноеДело.Имя = &Имя ИЛИ ЛичноеДело.Отчество = &Отчество) Работает некорректно. Пробовала в скд как то применить отбор...не получилось. Выводятся все документы где есть и фамилия, и имя и отчество, указанные в параметрах. А нужно чтобы совпадали данные по всем указанным реквизитам в рамках одного документа ( стандартный поиск по сути). А по поводу вхождения части параметра ф реквизит документа, пробовала применить "подобно" результат тоже нулевой. Что делаю не так? |
|||
1
Cube
16.01.15
✎
12:41
|
(0) Че за пережитки прошлого? Делай поиск как в Яндексе - с одной строкой, которая ищет везде.
|
|||
2
FIXXXL
16.01.15
✎
12:44
|
Не надо через параметры, делай через Построитель и ПостроительОтбор выведи на форму
|
|||
3
podkovka_
udachi 16.01.15
✎
12:45
|
(1) с помощью чего это можно сделать? направьте в нужную сторону
|
|||
4
Cube
16.01.15
✎
12:47
|
+(1) Как-то так (ищем Петю Заточкина):
ПодстрокаПоиска = "Пет Зат"; Запрос = Новый Запрос("ВЫБРАТЬ | ЛичноеДело.Ссылка |ИЗ | Документ.ЛичноеДело КАК ЛичноеДело |ГДЕ | ЛичноеДело.Фамилия + "" "" + ЛичноеДело.Имя + "" "" + ЛичноеДело.Отчество + "" "" ПОДОБНО &ПодстрокаПоиска"); Запрос.УстановитьПараметр("ПодстрокаПоиска", "%" + СтрЗаменить(ПодстрокаПоиска, " ", "%") + "%"); |
|||
5
Адский плющ
16.01.15
✎
12:50
|
Стандартный ДС со стандартным поиском чем не угодил?
|
|||
6
Cube
16.01.15
✎
12:51
|
+(4) Это просто пример. Для нормальной реализации нужно учесть, что слова могут располагаться в произвольном порядке. Для этого в запросе строку в которой будет производиться поиск надо делать с учетом этого (по несколько раз включать одно и то же поле, например).
И ещё не забудь, что строки неограниченной длины объединить просто так нельзя, юзавй ВЫРАЗИТЬ(ЛичноеДело.Фамилия КАК Строка(200)). А ещё проще перейти на Такси, там поис работает и так, как в Яндексе. |
|||
7
Cube
16.01.15
✎
12:52
|
+(6) Подробнее здесь: http://v8.1c.ru/o7/201401ls/index.htm
|
|||
8
podkovka_
udachi 16.01.15
✎
13:00
|
(7) спасибо очень хорошие идеи, так еще не пробовала, буду изучать!
|
|||
9
Cube
16.01.15
✎
13:02
|
(8) О, ты погоди))) Я ж не знал, что ты девушка. Тут у нас принято девушкам сначала фотку в личную карточку вставлять, а потом уже спрашивать! :))
Так что исправляйся прямо щас!) |
|||
10
podkovka_
udachi 16.01.15
✎
13:19
|
(9) Я же подковка *)))
|
|||
11
Cube
16.01.15
✎
13:23
|
(10) Без фотки помогающих будет меньше. Вот я, например, буду вредничать :)
|
|||
12
palpetrovich
16.01.15
✎
13:27
|
(0) можно обойтись вообще без программного кода, смотри тему
Выбор элемента справочника в поле ввода по реквизиту пост (5) |
|||
13
podkovka_
udachi 16.01.15
✎
13:39
|
(11) готово)
(12) у меня там нет вариантов для добавления, что значит "индексированные реквизиты"? |
|||
14
palpetrovich
16.01.15
✎
13:45
|
(13) микроконфинурация http://www.fayloobmennik.net/4479426
в открывающейся обработке, в поле выбора документа, введи "петр" или "иван" |
|||
15
Cube
16.01.15
✎
13:46
|
(13) "готово)"
Ну вот и молодец :) |
|||
16
Cube
16.01.15
✎
13:47
|
(14) А если ввести "Пет Зат"?
Можешь не отвечать. Твой вариант - это поиск по одному слову, значит в утиль. |
|||
17
palpetrovich
16.01.15
✎
13:48
|
(16) в утиль - так в утиль, я не возражаю :)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |