Имя: Пароль:
1C
1C 7.7
v7: Прямой запрос
0 NataShul
 
23.11.12
06:48
Здравствуйте. Помогите с запросом. Нужно организовать поиск по названию в справочнике контрагенты. Например есть некий ИП Иванов Иван Иванович, путем нехитрых изменений, получили что он Иванов, как теперь найти всех Ивановых, в справочнике?
1 zak555
 
23.11.12
06:51
искать по ИНН
2 NataShul
 
23.11.12
06:54
По ИНН, поиск организован. Стоит задача если по инн не найден, искать по названию
3 zak555
 
23.11.12
06:56
показывай
4 NataShul
 
23.11.12
07:00
Вот запрос, для выборки по нужному ИНН
   Запрос = СоздатьОбъект("Запрос");
       ТекстЗапроса =
       "//{{ЗАПРОС(Сформировать123)  
       |Без Итогов;
       |Контра = Справочник.Контрагенты.ТекущийЭлемент;
       |Код = Справочник.Контрагенты.ТекущийЭлемент.Код;
       |Наименование = Справочник.Контрагенты.Наименование;
       |ИНН = Справочник.Контрагенты.ИНН;          
       |Условие (Контра.ПометкаУдаления() = 0);
       |Условие(ИНН=НужныйИНН);
       |Группировка Код;
       |"//}}ЗАПРОС
       ;
       // Если ошибка в запросе, то выход из процедуры
       Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
           Сообщить("Ошибка в запросе");
       КонецЕсли;
       ТЗКонтра = СоздатьОбъект("ТаблицаЗначений");
       Запрос.Выгрузить(ТЗКонтра,3);
       ТЗКонтра.Сортировать("+Код");
5 zak555
 
23.11.12
07:01
как всё запущено
6 DimGan
 
23.11.12
07:03
И где тут прямой запрос?
7 miki
 
23.11.12
07:05
(6)В сабже, вероятно, сарказм...
(4)И что, штатный конструктор запросов так и написАл:
>>|Условие (Контра.ПометкаУдаления() = 0);
?
9 miki
 
23.11.12
07:06
+а если нужный ИНН есть у помеченного на удаление?
10 NataShul
 
23.11.12
07:09
Этот запрос до меня был написан. У меня задача дополнить код поиском по наименованию. И мне кажется что обычным запросом тут не обойтись
11 zak555
 
23.11.12
07:10
а где твоё произведение ?
12 miki
 
23.11.12
07:13
(10)тут вообще без запроса можно обойтись, если не по вхождению искать...
Но, а вот без почитать букварь - никак.
13 Mikeware
 
23.11.12
07:23
"помогите с запросом" в данном случае - это "напишите за меня"?
14 NataShul
 
23.11.12
07:23
Ладно, вопрос решен по другому.
(12) Думаю без запроса никак, слишком большой справочник.
15 miki
 
23.11.12
07:34
>>вопрос решен по другому
пригласили программиста?
16 Mikeware
 
23.11.12
07:36
(14) запрос-то, собственно, элементарный.
только где ваши попытки сделать хоть что-нибудь?
17 NataShul
 
23.11.12
07:54
все уже сделано, мной.
Единственный еще вопрос, можно ли чтобы запрос выдавал значения, например Балаба и балабанова.
Запрос = СоздатьОбъект("Запрос");
                   ТекстЗапроса =
                   "//{{ЗАПРОС(Сформировать123)  
                   |Без Итогов;
                   |Контра = Справочник.Контрагенты.ТекущийЭлемент;
                   |Код = Справочник.Контрагенты.ТекущийЭлемент.Код;
                   |Наименование = Справочник.Контрагенты.Наименование;
                   |ИНН = Справочник.Контрагенты.ИНН;          
                   
                   |Условие(Наименование=Наим);
                   |Группировка Код;
                   |"//}}ЗАПРОС
18 Mikeware
 
23.11.12
07:55
(17) и _это_ - "прямой запрос"? :-))
зы. ну, хоть конструктор освоили - уже хоть что-то...
19 zak555
 
23.11.12
07:56
(17) сам сделал ?
20 NataShul
 
23.11.12
07:58
уже вопрос не прямой запрос. Это была ошибка :)
21 Mikeware
 
23.11.12
07:58
(19) это "она"
22 zak555
 
23.11.12
07:59
(20) как определил ?
23 Mikeware
 
модератор
23.11.12
08:01
просто. по ее второму нику.
24 zak555
 
23.11.12
08:01
зачем ников больше одного ?
25 Mikeware
 
23.11.12
08:04
(24) "распределение позора между никами"
26 Ёпрст
 
23.11.12
09:12
(17)
|Условие(Найти(Наименование,Наим)>0);
27 zak555
 
23.11.12
09:17
(26) надо ж учесть ИВановИИ
28 Ёпрст
 
23.11.12
09:19
Ну, Нрег/ВРег воткнет, делов то..
AdBlock убивает бесплатный контент. 1Сергей