Отключить дополнительную строку запроса для определенной веб-части (Sharepoint) - PullRequest
1 голос
/ 16 сентября 2011

Идея:

Мне бы хотелось, чтобы веб-части представления списка на моей странице Sharepoint отображались без учета дополнительной строки запроса, которую пользователь может ввести в URL.

Моя особая ситуация:

Если кто-то добавляет фильтр в конце URL-адреса, например,
http://mysite/Blog/default.aspx?FilterField1=Main%5Fx0020%5FCategory&FilterValue1=Category1

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

Желаемый результат:

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

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

Некоторые заметки:

Я не пытаюсь создать пользовательскую веб-часть, я использую веб-часть представления списка, и лучшая настройка, которую я могу сделать, - через Sharepoint Designer.

Причина этого в том, что я хотел бы сохранить получившийся сайт в качестве шаблона и использовать его на других серверах Sharepoint без необходимости загружать пользовательскую веб-часть. (Я понимаю, что все очень легко решить с помощью пользовательской веб-части)


Хорошо, параметр просмотра работает:)

Однако я не ожидал, что ответ будет таким, поэтому мне придется добавить больше к моей ситуации.

Новая ситуация

Этот URL не будет введен вручную, я на самом деле использую xsl для автоматической генерации этого URL. Поскольку в какой-то момент я перенесу этот сайт (по шаблону) на новый сервер, я не могу жестко закодировать GUID, потому что он не должен быть таким же на новом сайте. Таким образом, существует ли некоторый xsl-код для поиска GUID представления списка по умолчанию? ИЛИ, я могу как-то использовать фактическое имя представления в URL?

Мой текущий код xsl

Содержится в веб-части, вид которой отличается от того, который мне нужен в URL

<a href="{$HttpVDir}/{$thisNode/../@resource.wss.lists_Folder}/{$thisNode/../@resource.wss.blogpost_Folder}/AllPosts.aspx?FilterField1=Main%5Fx0020%5FCategory&amp;FilterValue1={substring-after($thisNode/@Main_x0020_Category., '#')}">

Примечания

Требуемое представление является видом по умолчанию, на случай, если что-нибудь упростит

Ответы [ 3 ]

0 голосов
/ 17 сентября 2011

Хорошо!Я нашел ответ!

Справочная информация

Я не уверен, насколько это будет полезно для других, но моя ситуация включала в себя необходимость сгруппировать список понекоторые столбцы, а затем связать заголовки группы (значения столбцов) обратно на ту же страницу с фильтром в URL.

Это отфильтровывает основной список (в отдельной веб-части и в другом представлении), содержащий элементы, но былдолжен НЕ фильтровать сгруппированную веб-часть (навигацию).

Все это время я использовал ListViewWebParts (xsl name = XsltListViewWebPart), поэтому у меня возникла указанная проблема.

Ответ

Случайно, когда я искал способ сгруппировать списки по более чем двум столбцам (представление, созданное в sharepoint, ограничивает вас до 2), я наткнулся на сообщение, в котором показано, как добавитьDataViewWebPart (xsl name = DataFormWebPart), который может быть вставлен только с помощью Sharepoint Designer и допускает более 2 группируемых столбцов.

Побочный эффект этой веб-части,поскольку он может быть добавлен только через конструктор, то, что ничто не может быть изменено, относящееся к представлению, во время выполнения.Это означает, что URL не влияет на то, что вы видите в этой веб-части!

Ресурсы

Вот некоторые ссылки на сайты, которые мне нужны для работы с этой новой веб-частью

http://techtrainingnotes.blogspot.com/2011/01/sharepoint-group-by-on-more-than-2.html

http://www.jwc3.net/2008/05/how-to-get-url-in-xsl.html

0 голосов
/ 09 января 2017

Вы можете попробовать параметр просмотра: http://mysite/Blog/default.aspx?View={A6D1D37F-25CB-473C-8B84-361829F0D96E}&FilterField1=Main%5Fx0020%5FCategory&FilterValue1=Category1

Это не работает!

0 голосов
/ 16 сентября 2011

Вы можете попробовать параметр View:

http://mysite/Blog/default.aspx?View={A6D1D37F-25CB-473C-8B84-361829F0D96E}&FilterField1=Main%5Fx0020%5FCategory&FilterValue1=Category1

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

...