Имя: Пароль:
1C
1С v8
Отчет не выдает данные базы
0 Anastasiy
 
04.07.12
08:03
Люди!)) Есть отчет: Поиск Данных - управляемая форма в обычной среде:


&НаКлиенте
Процедура Поиск()
   Искать(0);// Вставить содержимое обработчика.
КонецПроцедуры

&НаКлиенте
Процедура ПредыдущаяПорция()
   Искать(-1);// Вставить содержимое обработчика.
КонецПроцедуры

&НаКлиенте
Процедура СледующаяПорция()
   Искать(1);// Вставить содержимое обработчика.
КонецПроцедуры
  &НаКлиенте
Процедура Искать(Направление)
   Если ПустаяСтрока(ПоисковоеВыражение) Тогда
           Предупреждение("Не задана строка поиска.");
           Возврат;
   КонецЕсли;
   ИскатьСервер(Направление);
КонецПроцедуры

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

Где ошибаюсь, никак не пойму, вроде всё точно сделала!! Подскажите, кто знает..
1 GStiv
 
04.07.12
08:11
не увидел
СписокПоиска.ПерваяЧасть(); это где
2 Anastasiy
 
04.07.12
08:14
Искать Сервер(Направление) &НаСервере
3 Anastasiy
 
04.07.12
08:18
УПП 1.2  на 1с8.2 в режиме совместимости с 8.1
4 Anastasiy
 
05.07.12
09:57
(((
5 vmv
 
05.07.12
10:01
код мне кажеться слишком мудреным и неррационально запутанным

"баби такие баби"(с)

извините, это же цивилизованный форум, хотя в чем я не прав
6 Ёпрст
 
05.07.12
10:04
И ?
а что оно должно делать ?

СообщениеОРезультате .. как потом на клиента попадает ?
7 Anastasiy
 
05.07.12
11:08
Код из Радченко с Хрусталевой отчет ПоискДанных,

вроде всё получается, только находит он исключительно левую страницу HTML ))) Как бы заставить его находить данные базы?
8 Anastasiy
 
05.07.12
11:11
На клиента:

&НаКлиенте
Процедура Поиск()
   Искать(0);// Вставить содержимое обработчика.
КонецПроцедуры

&НаКлиенте
Процедура ПредыдущаяПорция()
   Искать(-1);// Вставить содержимое обработчика.
КонецПроцедуры

&НаКлиенте
Процедура СледующаяПорция()
   Искать(1);// Вставить содержимое обработчика.
КонецПроцедуры
  &НаКлиенте
Процедура Искать(Направление)
   Если ПустаяСтрока(ПоисковоеВыражение) Тогда
           Предупреждение("Не задана строка поиска.");
           Возврат;
   КонецЕсли;
   ИскатьСервер(Направление);
КонецПроцедуры
9 abitfrosty
 
05.07.12
11:12
Индекс полнотекстового поиска обновлен?
10 Anastasiy
 
05.07.12
11:15
УПП 1.29, теоретически - да
11 Anastasiy
 
09.07.12
12:30
Индекс - обновлен, данные не видит, подскажите, где ошибка...
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший