2010-06-18 5 views
0

У меня есть пользовательский список Sharepoint 2007 с столбцом с именем «Менеджер», чтобы удерживать диспетчер пользователя (одна строка текста).Форма пользовательского списка - диспетчер автопопуляции

При создании нового элемента я хочу, чтобы NewForm.aspx автоматически заполнял поле «Менеджер» с помощью менеджера пользователя.

Я знаю, что мы можем autopulate список полей формы с помощью JQuery для доступа к Sharepoint в «Список пользователей Информация» разоблачен как веб-сервиса, в блоге Марка, ниже:

http://sympmarc.com/2010/04/29/populating-a-sharepoint-list-form-with-the-current-user-information/

Моя проблема менеджер не хранится в 'User Information List', поэтому я не могу получить его, как указано выше, у кого есть идеи?

Спасибо, нав

+0

Где ваш менеджер сохраненную тогда? –

+0

в профиле пользователя – van

ответ

0

Это очень просто, вам нужно объявить «CAMLQuery», «CAMLRowLimit» и «CAMLViewFields» ниже в «ИМЯ_СПИСКА», я объясню это при следующем примере кода:

Вы можете получить CAMLQuery с учетом вас список, в Sharepoint Designer откройте форму, я открыл свой список вида anuncio.aspx и нашел следующий код:

<View Name="your list name"> 
<Query> 
<OrderBy> 
     <FieldRef Name="Title" Ascending="FALSE"/> 
</OrderBy> 
    </Query> 
<ViewFields> 
    <FieldRef Name="Title"/> 
    <FieldRef Name="Body"/> 
    <FieldRef Name="Expires"/> 
</ViewFields> 
    <RowLimit Paged="TRUE">30</RowLimit> 
    <Toolbar Type="Standard"/> 
</View> 

Затем разделить CAML запроса в вашем Код JavaScript зависит от ваших потребностей или запроса вашего списка просмотров,

var fields ="<ViewFields>"+ 
     "<FieldRef Name='Title'/>"+ 
     "<FieldRef Name='Body'/>"+ 
     "<FieldRef Name='Expires'/>"+ 
      "</ViewFields>"; 
    var query = "<Query>"+ 
      "<OrderBy>"+ 
       "<FieldRef Name='Modified' Ascending='FALSE'/>"+ 
      "</OrderBy>"+ 
       "</Query>"; 

После установки CAMLQuery в переменных, измените сценарий:

$(document).ready(function() { 


     $().SPServices({ 
     operation: "GetListItems", 
     async: false, 
     listName: "Your List name", 

     CAMLViewFields: fields, 
      CAMLQuery: query, 


      completefunc: function (xData, Status) { 

      $(xData.responseXML).SPFilterNode("z:row").each(function() { 

       var liHtml = "<tr> <td>" + $(this).attr("ows_Title") + "</td> </tr>"; 


       $("#tasksUL").append(liHtml); 

     }); 
     } 
    }); 


    }); 


    </script> 
    <table id="tasksUL"/> 
Смежные вопросы