вторник, 27 сентября 2011 г.

Дата и время на страницах SharePoint


Часто на портале требуется отобразить текущие дату и время. Например, на скриншоте портала всегда будет привязка содержимого к определенной дате.

Чтобы это сделать, в нужном месте (например, на главной странице, если требуется отображать дату на всех страницах) добавьте следующий код:

<div id="current-time"/></div>

<SCRIPT type=text/javascript>
                                                           function zDate() {
                                                              pad = function (val, len) {
                                                                                val = String(val);
                                                                                len = len || 2;
                                                                                while (val.length < len) val = "0" + val;
                                                                                return val;
                                                                        };
                                                              var cur = new Date();
                                                              var dweek = [ 'воскресенье', 'понедельник', 'вторник', 'среда', 'четверг', 'пятница', 'суббота' ];
                                                              var nmonth = [ 'января', 'февраля', 'марта', 'апреля', 'мая', 'июня', 'июля', 'августа', 'сентября', 'октября', 'ноября', 'декабря' ];
                                                              var t = pad(cur.getHours()) +':'+ pad(cur.getMinutes()) +':'+ pad(cur.getSeconds());
                                                              var d = cur.getDate() + ' ' + nmonth[(cur.getMonth())] +' ' + cur.getFullYear();
                                                              var out = d +', '+ dweek[cur.getDay()];
                                                              return out;
                                                           }
                                                           document.getElementById('current-time').innerHTML = zDate();

</SCRIPT>

Получаем такой текст:

27 сентября 2011, вторник

Аналогично, можно отобразить текущее время.

понедельник, 26 сентября 2011 г.

Печать страниц SharePoint

При печати страниц SharePoint многие элементы разметки не печатаются или выглядят по-другому.

Например, левая колонка и вкладки ленты не отображаются.

Страница на экране:

image

Та же страница распечатанная:

image

Как это работает и как подготовить верстку страниц так, чтобы она печаталась максимально информативно?

Разработчики SharePoint используют для этого стили в документе corev4.css:

@media print{
.ms-globallinks,.ms-siteaction,.ms-areaseparatorcorner,.ms-titlearealeft,.ms-searchform,.ms-banner,.ms-buttonheightwidth,
.ms-areaseparatorright,.ms-titlearearight,.ms-rightareacell,.ms-leftareacell,.ms-areaseparatorleft{
display:none;
}

@media print{
body #s4-ribbonrow{
display:none;
}

Соответственно, рекомендую использовать подобные стили. Как Вы поняли, можно не только скрывать элементы, но и применять любые другие приемы стилизации.

четверг, 1 сентября 2011 г.

SharePoint и русские доменные имена

Для того чтобы реализовать доступность портала на SharePoint по русскому доменному имени, нужно настроить в параметрах альтернативного доступа к приложению закодированный локализованный адрес:

image

Этот адрес можно узнать в Internet Explorer:

image

UPD 14.09.2011:

1. Закодированный адрес называется punycode

2. Его можно сгенерить с помощью многочисленных сервисов. Например, тут.

2. Если требуется, чтобы сайт в IIS был не безымянным (т.е. отвечал не на все заголовки), то в привязках сайта необходимо указать адрес в незакодированном виде:

image

пятница, 12 августа 2011 г.

Выполнение действий из формы InfoPath

Есть ряд действий, которые не доступны в правилах InfoPath. Например, отправка электронного сообщения. Для выполнения подобных действий можно использовать следующий способ.

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

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

воскресенье, 31 июля 2011 г.

Симулирование действий ленты

Если Вам по каким-то причинам потребовалось скрыть в дизайне страницы ленту действий, Вам наверняка потребуется продублировать определенные действия своими кнопками. Это можно сделать, например, так:

<Sharepoint:SPSecurityTrimmedControl runat="server" PermissionsString="DeleteListItems">
    <div style="text-align:right">
        <input class="ms-ButtonHeightWidth" type="button" value="Удалить" onclick="document.getElementById('Ribbon.ListForm.Display.Manage.DeleteItem-Medium').click();" />
    </div>
</Sharepoint:SPSecurityTrimmedControl>

Результат может выглядеть, например, так:

image

вторник, 19 июля 2011 г.

Установка Office Web Apps на DC

В одно-серверной установке возникает проблема при открытии doc-ументов в приложении Office Web Apps:

image

В журнале SharePoint такая ошибка:

07/19/2011 21:24:26.47     w3wp.exe (0x09FC)                           0x0784    Office Web Apps                   Office Viewing Architecture       vjzo    Medium      Librarian.SetCompleted(Fa31755c3db8c4d148fbb52fde2ec789em6a6be5a7e1244184a55b00e4d740b90bmcc39281b966f4e5e86aa4981bae150c4m, Silverlight, docdata.xml) - status = ConversionError    3fc56411-2af6-46c1-9b24-11358a04648e

Вероятно, вы забыли проделать следующие шаги, необходимые при развертывании Web Apps на одном сервере с контроллером домена:

1. В PowerShell запустить команды

$e = Get-SPServiceApplication | where {$_.TypeName.Equals("Word Viewing Service Application")}
$e.WordServerIsSandboxed = $false
$e.WordServerIsSandboxed

А для корректной работы с PowerPoint документами еще и

Get-SPPowerPointServiceApplication | Set-SPPowerPointServiceApplication -EnableSandboxedViewing $false
Get-SPPowerPointServiceApplication | Set-SPPowerPointServiceApplication -EnableSandboxedEditing $false

2. In the server’s c:\windows\system32\inetsrv\config\applicationHost.config
Add the line below in the end of the dynamicTypes.
< add mimeType=”application/zip” enabled=”false” />

При вставке в файл обязательно перепечатайте с клавиатуры кавычки.

3. iisreset

image

понедельник, 18 июля 2011 г.

Портал Контек

Наш портал

 

Портал Контек