Вход | Регистрация


1С:Предприятие ::

Метки:справочники

Можно ли осуществить программно поиск в справочнике по фрагменту...

Я
   Aiuan
 
25.07.04 - 19:18
т.е. в справочнике ищутся все позиции в которые входит данный фрагмент, а потом все найденые позиции выводятся для выбора...
 
  Рекламное место пустует
   Матрейя
 
7 - 25.07.04 - 20:51
Соединение = СоздатьОбъект("ADODB.Connection");
ConnectionString = "driver={SQL Server};server="+"ACER-W6ARR1O5HS"+";uid="+"sa"+";pwd="+""+";Database="+"souztem";
Соединение.ConnectionTimeOut =20;
Соединение.CursorLocation = 1; 
Соединение.Mode=1;
Соединение.Open(ConnectionString);    
Cmd = СоздатьОбъект("ADODB.Command");
Cmd.ActiveConnection = Соединение; 
Rs = CreateObject("ADODB.RecordSet"); 
ТекстЗапроса="Select descr, code from sc133 where ((descr LIKE '%"+Стр+"%') and (isfolder=2))";
Cmd.CommandText=ТекстЗапроса;
Rs = Cmd.Execute;//Выполнение и получение набора данных  


Сч=0;
Пока Rs.EOF() = 0 do  
Value1 = Rs.Fields("descr").Value;  
Value2 = Rs.Fields("Code").Value;  
Rs.MoveNext();  
Сч=Сч+1;
Тз.НоваяСтрока();
Спр.НайтиПоКоду(Value2,0);
Тз.Наименование=Спр.ТекущийЭлемент();
Состояние("Обработка: "+Сч);
КонецЦикла;
   Матрейя
 
8 - 25.07.04 - 20:53
+7. ConnectionString - нужно изменить под себя. Имя таблицы справочника можно узнать, посмотрев файл 1cv7.dd(dds) в блокноте апример.
   Валентин
 
9 - 25.07.04 - 20:55
(7) Группы тоже могут понадобиться. Не стоит их так безоглядно отсекать. Или вообще не будет групп в таблице. Тогда косяк.
То что ты предлагаешь на hippo  позиционируется обработкой ё-SQL. Просто и со вкусом.
Кстати, что сказал что Aiuan под SQL имеет базу?
   Матрейя
 
10 - 25.07.04 - 20:59
9. Не обязательно иметь SQL базу. (я написал, что "ConnectionString - нужно изменить под себя"). Был просто дан пример, у меня допустим формирование ТекстаЗапроса происходит по условиям (то есть составным образом).
 
  Рекламное место пустует
   Warlock
 
11 - 25.07.04 - 20:59
Вот пример, реализованный на встроенном языке 1С:

    СЗНайденныеЭлементы = СоздатьОбъект("СписокЗначений");
    Спр = СоздатьОбъект("Справочник.НужныйСправочник");
    Спр.ВыбратьЭлементы();
    Пока Спр.ПолучитьЭлемент()=1 Цикл
        Если Спр.ПометкаУдаления() = 1 Тогда
            Продолжить;
        КонецЕсли;
        Если Найти(ВРег(Спр.Наименование),ВРег(СокрЛП(ИскомоеЗначение))) <> 0 Тогда
            СЗНайденныеЭлементы.ДобавитьЗначение(Спр.ТекущийЭлемент());
        КонецЕсли;
    КонецЦикла;

В СЗНайденныеЭлементы - список найденных элементов. Можно и в ТаблицуЗначений - по вкусу...



Список тем форума
Рекламное место пустует   Рекламное место пустует
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Ветка сдана в архив. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует