Информация

Последние записи

Теги


Блоги


Записи из всех блогов с тегом: поиск


Поиск в приложениях SharePoint. Часть 3.

Блог: Gandjustas' blog
В SharePoint 2013 появился REST веб-сервис, который позволяет делать поисковые запросы из JavaScript. В SharePoint 2010 есть только search.asmx, который требует генерировать и парсить большой объём XML (в лучших традициях SharePoint).

Чтобы упростить жизнь разработчику клиентских компонентов я написал REST веб-сервис для SharePoint 2010.

Реализация

За основу взял метод, который описывал ранее - Javascript-enabled SharePoint WCF services.

Контракт у сервиса очень простой:

[ServiceContract]
public interface ISearch
{
    [OperationContract]
    [WebGet(BodyStyle = WebMessageBodyStyle.Bare, RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json)]
    Stream Query(string q, int top, int skip, string select, string orderBy, bool includeRefiners, string refiners);
}

Параметры вызова:

  • q – текст запроса (обязательно).
  • top – количество результатов.
  • skip – с какой позиции в выборке отдавать результаты.
  • select – через запятую названия managed properties в результатах.
  • orderBy – через запятую названия managed properties по которым сортировать результат, после имени можно указать desc для сортировки по убыванию.
  • includeRefinerstrue или false, возвращать результаты уточнений или нет.
  • refiners - через запятую названия managed properties для формирования уточнений.

Реализация:

public System.IO.Stream Query(string q, int top, int skip, string select, string orderBy,
                    bool includeRefiners, string r) 
{
    u...
читать дальше...
автор: gandjustas добавлено: 04 сен 16 просмотры: 2224, комментарии: 0



7 способов улучшить поля в формах SharePoint 2013

Блог: Gandjustas' blog

Кастомизация форм – очень больная тема в SharePoint. InfoPath фактически умер, новые способы кастомизации появятся не раньше следующего релиза (назначенного на конец 2015 года), а для использования SPServices нужен jQuery старой версии, что само по себе несет проблемы, так еще и требует знания отображаемых имен полей, что делает решение ненадежным. Подробнее в моем курсе по клиентской разработке SharePoint.

Создавая TypeScript-определения для клиентской библиотеки SharePoint  сделал несколько примеров полей. Недавно я провел большой рефакторинг и выделил кастомные поля в отдельные, повторно используемые функции.

Все функции содержатся в файле typescripttemplaes.ts. Тем, кто не пользуется TypeScript (зря!), можно скачать .js файл в том же каталоге.

Как пользоваться typescripttemplates:

  1. Скачать файл и добавить .js в проект
  2. Сделать свой файл скрипта для полей, такого вида:
    module _ {
        function init() {
            CSR.override()
                .lookupAddNew("Master", "Add New Master item", true)
                .register();        
        }
    
        SP.SOD.executeOrDelayUntilScriptLoaded(init, "typescripttemplates.ts");
    
        SP.SOD.executeOrDelayUntilScriptLoaded(function () {
            RegisterModuleInit(SPClientTemplates.Utility.ReplaceUrlTokens("~site/YOUR_SCRIPT_PATH.js"), init);
        }, "sp.js");
    } 
  3. Вписать адрес скрипта в ReplaceUrlTokens и вызовы функций между .override() и .register()
  4. В атрибут JSLink поля\формы\типа контента вписать стро...
читать дальше...
автор: gandjustas добавлено: 13 июл 16 просмотры: 1607, комментарии: 0



Результаты семинара “Поиск SharePoint”

Блог: Gandjustas' blog

Месяц назад прошел семинар по поиску в SharePoint 2013. В этот раз семинар был на полный день.  Видеозаписи доступны по ссылке http://gandjustas.justclick.ru/order/spsearch/.

В ходе семинара успели рассмотреть следующие темы:

  • Настройка Content By Search Web Part
  • Сценарии выборки данных (замена CAML)
  • Ранжирование результатов поиска
  • Настройки центра поиска и правил запросов

Отзывы некоторых участников:

Добрый день! Отличное мероприятия Стас, очень понравилось! Упорядочил для себя все знания по поиску, узнал парочку новых и интересных вещей. Также решил давно мучавшую меня проблему с необязательным условием и знаком «?» в выражении запроса поиска. С нетерпением жду следующего семинара =)

Борис Журкин, RTLabs

 

Из семинара получили развернутое и подробное (для первичного ознакомления, на мой взгляд, достаточно подробное ) описание возможностей поиска платформы Sharepoint 2013. Рассмотрели примеры использования в различных сценариях. В общем семинар был очень полезен, как вводная часть, для дальнейшей тесной работы с поиском. От семинара получил на 100% что ожидал.

Вахтанг Барбакадзе, РТК

 

Пока мне не удалось применить полученные знания непосредственно на практике, т.к. наш корпоративный портал на SP 2010.

Однако материал оказался полезным для общего кругозора и понимания возможностей новой версии SP.

Вадим Титов, АВТОМИР

В этот раз с видеозаписью помог Александр Ульмаскулов, любезно предоставив видеокамеру. Записи вебинара теперь включают как экран, так и весь...

читать дальше...
автор: gandjustas добавлено: 21 окт 15 просмотры: 1229, комментарии: 0



Поиск известного значения в неизвестной базе...

Блог: Oracle SQL
Учебный тренинг. SQL от новичка до профессионала.
Бесплатные авторские видеокурсы SQL, PLSQL, JAVA
Чалышев Максим Михайлович

Иногда, в процессе работы ,приходится сталкиваться с задачами,
когда знаешь некоторое значение в базе , например уникальный идентификационный номер,
и необходимо определить в каких таблицах, и каких столбцах базы данное значение расположено

Особенно это справедливо , когда работаешь с чужой базой , и имеешь ограниченный набор прав,
например нет возможности трассировки , а клиентская часть представляет собой веб интерфейс , который является частью сложной многозвенной структуры общего приложения.

То есть, ты видишь на экране условное значение , необходимо разобраться , из каких таблиц и столбцов значение считывается.

Приведу несколько примеров, которые лично мне помогли решить данную задачу.

Подготовим тестовые данные
create table t1(n number);
create table t2(n number);
create table t3(n number);
create table t4(n number);
insert into t1 select level from dual connect by level < 10;
insert into t2 select level from dual connect by level < 20;
insert into t3 select level from dual connect by level < 10;
insert into t4 select level from dual connect by level < 20;
commit;

соберем статистику по таблицам необходимой схемы
begin
 	dbms_stats.gather_schema_stats(ownname => 'TRADE', estimate_percent => DBMS_STATS.AUTO_SAMPLE_SIZE, cascade=>FALSE);
end;

читать дальше...
автор: Myp3_u_K добавлено: 21 окт 15 просмотры: 4441, комментарии: 0



7 способов улучшить поля в формах SharePoint 2013

Блог: Gandjustas' blog

Кастомизация форм – очень больная тема в SharePoint. InfoPath фактически умер, новые способы кастомизации появятся не раньше следующего релиза (назначенного на конец 2015 года), а для использования SPServices нужен jQuery старой версии, что само по себе несет проблемы, так еще и требует знания отображаемых имен полей, что делает решение ненадежным. Подробнее в моем курсе по клиентской разработке SharePoint.

Создавая TypeScript-определения для клиентской библиотеки SharePoint  сделал несколько примеров полей. Недавно я провел большой рефакторинг и выделил кастомные поля в отдельные, повторно используемые функции.

Все функции содержатся в файле typescripttemplaes.ts. Тем, кто не пользуется TypeScript (зря!), можно скачать .js файл в том же каталоге.

Как пользоваться typescripttemplates:

  1. Скачать файл и добавить .js в проект
  2. Сделать свой файл скрипта для полей, такого вида:
    module _ {
        function init() {
            CSR.override()
                .lookupAddNew("Master", "Add New Master item", true)
                .register();        
        }
    
        SP.SOD.executeOrDelayUntilScriptLoaded(init, "typescripttemplates.ts");
    
        SP.SOD.executeOrDelayUntilScriptLoaded(function () {
            RegisterModuleInit(SPClientTemplates.Utility.ReplaceUrlTokens("~site/YOUR_SCRIPT_PATH.js"), init);
        }, "sp.js");
    } 
  3. Вписать адрес скрипта в ReplaceUrlTokens и вызовы функций между .override() и .register()
  4. В атрибут JSLink поля\формы\типа контента вписать стро...
читать дальше...
автор: gandjustas добавлено: 21 сен 15 просмотры: 3222, комментарии: 4



Семинар "Поиск в SharePoint 2013"

Блог: Gandjustas' blog

Поиск в SharePoint существует очень давно. Даже когда SharePoint не назывался SharePoint_ом в нем существовал поиск. В SharePoint 2013 поиск стал не просто небольшим дополнением к платформе, а инструментом для решения многих задач, как для разработчиков, так и для дизайнеров, и для продвинутых пользователей. Многие части SharePoint основаны на механизме поиска, но для создания решений поиск до сих пор приvеняется очень редко.

Поиск помогает реализовать многие сценарии ECM, сбор данных из разных источников, публикацию контента на порталах с высокой скоростью и многие веб-части, например, информер дней рождения и трудовых юбилеев сотрудников. Поиск SharePoint интегрирован с профилями пользователей и таксономией, может быть использован как в приложениях, так и в решениях.

К сожалению, многие аспекты поиска плохо документированы, что создает проблемы при создании решений и используется от силы 30% всех возможностей.

21 августа пройдет семинар по Поиску в SharePoint 2013. Он будет интересен как разработчикам решений, так и продвинутым пользователям, и администраторам.

Участвуйте в семинаре, и Вы узнаете много нового:

  • Как использовать существующие возможности поиска SharePoint для решения задач.
  • Приемы построения запросов и настройки ранжирования результатов поиска.
  • Возможности настройки схемы для полнотекстового и атрибутивного поиска, а также уточнений.
  • Архитектуру службы поиска SharePoint, возможности масштабирования и отказоустойчивости.
  • Клиентское и серверное API для...

читать дальше...
автор: gandjustas добавлено: 24 авг 14 просмотры: 1617, комментарии: 0



Поиск в приложениях SharePoint. Часть 3.

Блог: Gandjustas' blog
В SharePoint 2013 появился REST веб-сервис, который позволяет делать поисковые запросы из JavaScript. В SharePoint 2010 есть только search.asmx, который требует генерировать и парсить большой объём XML (в лучших традициях SharePoint).

Чтобы упростить жизнь разработчику клиентских компонентов я написал REST веб-сервис для SharePoint 2010.

Реализация

За основу взял метод, который описывал ранее - Javascript-enabled SharePoint WCF services.

Контракт у сервиса очень простой:

[ServiceContract]
public interface ISearch
{
    [OperationContract]
    [WebGet(BodyStyle = WebMessageBodyStyle.Bare, RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json)]
    Stream Query(string q, int top, int skip, string select, string orderBy, bool includeRefiners, string refiners);
}

Параметры вызова:

  • q – текст запроса (обязательно).
  • top – количество результатов.
  • skip – с какой позиции в выборке отдавать результаты.
  • select – через запятую названия managed properties в результатах.
  • orderBy – через запятую названия managed properties по которым сортировать результат, после имени можно указать desc для сортировки по убыванию.
  • includeRefinerstrue или false, возвращать результаты уточнений или нет.
  • refiners - через запятую названия managed properties для формирования уточнений.

Реализация:

public System.IO.Stream Query(string q, int top, int skip, string select, string orderBy,
                    bool includeRefiners, string r) 
{
    u...
читать дальше...
автор: gandjustas добавлено: 09 фев 14 просмотры: 1773, комментарии: 0



Поиск в приложениях SharePoint. Часть 2.

Блог: Gandjustas' blog

Untitled

Первая часть этой серии была написана примерно полтора года назад, после этого появился SharePoint 2013, в котором добавили очень много возможностей для использовании поиска в решениях. Но недавний опрос в сообществе (https://www.facebook.com/groups/sharepointrussian/permalink/514677285314072/?stream_ref=2) показал, что наиболее популярной версией до сих пор является SharePoint 2010.

В первой части я рассказывал как использовать стандартные веб-части поиска в SharePoint 2010, теперь расскажу как с помощью небольшого объема кода получить максимальное мощное решение для создания порталов.

DataFormWebPart

Стандартная веб-часть SharePoint позволяет использовать различные источники данных и формировать разметку с помощью XSL. Источник данных описывается с помою класса наследника System.Web.UI.DataSourceControl. В разметке страницы или .webpart файле можно указать какой DataSource использовать в веб-части.

SearchDataource

Для начала создадим DataSource, который возвращает результаты поискового запроса. На MSDN есть инструкция по созданию класса DataSource - http://msdn.microsoft.com/RU-RU/library/92e191zc(v=vs.90)

public class SearchDataSource: DataSourceControl
{
    protected override DataSourceView GetView(string viewName)
    {
        return new SearchDataSourceView(this);
    }

    public string QueryText { get; set; }

    public string SelectProperties { get; set; }        
}
Основная работа делается в классе SearchDataSo... читать дальше...
автор: gandjustas добавлено: 27 янв 14 просмотры: 1470, комментарии: 0



Поиск в SharePoint 2010

В SharePoint есть 2 вида поиска: поиск документов и поиск людей. Если вы что-то или кого-то не можете найти, то опишите в строке поиска и просмотрите результаты:

image

Рис. 170 Поиск документов

Дальше » читать дальше...
автор: FortuneS добавлено: 06 июл 13 просмотры: 1118, комментарии: 0



Поиск файла в библиотеке SharePoint

Поиск файлов аналогичен поиску элемента в списке. Те, кто уже разобрался с этим, могут пропустить эту часть главы.

Библиотеки в SharePoint могут хранить несколько тысяч файлов. Эти файлы не войдут на один экран, поэтому SharePoint разобьет их на несколько страниц. Каким же образом найти нужный файл в библиотеке?

Описание задачи. Необходимо найти все заказы от Соловьева Ильи Ивановича на покупку шаров класса AX-7.

Сортировка

image

Рис. 67 Поле "Класс аэростата"

Посмотрим на заголовок столбцов в списке. Если подвести курсор к заголовку столбца «Класс аэростата», то он станет серым и справа появится черный треугольник, направленный вниз. На него нужно нажать, чтобы появилось выпадающее меню. Первые 2 пункта – это сортировка. Выбираем ту, которая интересна. Таким образом, мы отсортировали список по алфавиту. Но все же не хочется просматривать записи, а хочется знать наверняка. Для этого переходим к фильтрам.

Дальше » читать дальше...

предыдущие записи