[Forum FAQ]Open Calendar Overlay item In a Modal Dialog

Introduction:
In SharePoint Calendar, there is a feature called Calendar Overlay, it would display multiple Calendars items in one Calendar. However, when we click the items in Calendar Overlay, it would redirect to a new tab.
In this article, I would make a simple demo about how to use the JQuery to make the Calendar Overlay item open in the same window, as known as, open in a modal dialog.
Solution:
We can add the following code in Calendar view page using SharePoint Designer or paste the code within a Content Edit Web Part.
<script src="http://code.jquery.com/jquery-1.11.1.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function () {
setInterval(function () {
$("a[href*='DispForm.aspx']").each(function () {
$(this).attr("onclick", "openDialog('" + $(this).text() + "','" + $(this).attr("href") + "')");
$(this).attr("href", "javascript:void(0)");
$(this).removeAttr("target");
}, 900);
function openDialog(title, url) {
var options = {
title: "Calendar - " + title,
autoSize:true,
url: url
SP.UI.ModalDialog.showModalDialog(options);
</script>
Result:
Please click to vote if the post helps you. This can be beneficial to other community members reading the thread.

How about "launch as dialog: yes" from advance settings. If I click on blue<any> color but not hyperlink, it will open in modal.
[email protected]

Similar Messages

  • Error in opening Calendar Recurring Item

    Hi,
    I have created a recurring event in my calendar. I deleted one instance, when I open the deleted one in calendar/allitems.aspx it says " Item does not exist. It may have been deleted by another user."
    But I noticed that the column of that item still have values, why I cannot open it? The form basically is error page.
    Do you have any idea?
    Thanks!

    Hi Daniel,
    Content Approval is not enabled. 
    Here are the error logs:
    Name=Request (GET:http://bbb.pg.com:80/bu/BabyCareGlobal/Leading_Edge_TC/Lists/Calendar/DispForm.aspx?ID=20.1.19&Source=http%3A%2F%2Fdcsp%2Epg%2Ecom%2Fbu%2FBabyCareGlobal%2FLeading%5FEdge%5FTC%2FLists%2FCalendar%2FAllItems%2Easpx&ContentTypeId=0x010200CC32B4CF07E6864EB4D93282333F0563&IsDlg=1)
    When I open the link, error page is displayed. Then I navigate to "Webparts Maintainance Page", this is displayed:
    http://bbb.pg.com/bu/BabyCareGlobal/Leading_Edge_TC/_layouts/spcontnt.aspx?&url=%2fbu%2fBabyCareGlobal%2fLeading_Edge_TC%2fLists%2fCalendar%2fDispForm.aspx%3fID%3d20.1.19%26Source%3dhttp%253A%252F%252Fdcsp%252Epg%252Ecom%252Fbu%252FBabyCareGlobal%252FLeading%255FEdge%255FTC%252FLists%252FCalendar%252FAllItems%252Easpx%26ContentTypeId%3d0x010200CC32B4CF07E6864EB4D93282333F0563%26IsDlg%3d1
    Can I select the untitled webpart (Type: ListFormWebpart) and delete it from there?
    here are the rest of the error:
    Area                          
    Category                      
    EventID
    Level     
    Message 
    SharePoint Foundation         
    Logging Correlation Data      
    xmnv
    Medium
    Name=Request (GET:http://bbb.pg.com:80/bu/BabyCareGlobal/Leading_Edge_TC/Lists/Calendar/DispForm.aspx?ID=20.1.19&Source=http%3A%2F%2Fdcsp%2Epg%2Ecom%2Fbu%2FBabyCareGlobal%2FLeading%5FEdge%5FTC%2FLists%2FCalendar%2FAllItems%2Easpx&ContentTypeId=0x010200CC32B4CF07E6864EB4D93282333F0563&IsDlg=1)
    SharePoint Foundation         
    Logging Correlation Data      
    xmnv
    Medium
    Site=/bu/BabyCareGlobal
    SharePoint Foundation         
    Monitoring                    
    b4ly
    High
    Leaving Monitored Scope (PostResolveRequestCacheHandler). Execution Time=12.4307647412305
    SharePoint Foundation         
    Monitoring                    
    b4ly
    High
    Leaving Monitored Scope (EnsureListItemsData#1). Execution Time=10.3265888351966
    SharePoint Foundation         
    General                       
    8sl1
    High
    DelegateControl: Exception thrown while adding control 'ASP._controltemplates_publishingconsole_ascx': Item does not exist. It may have been deleted by another user.
    SharePoint Foundation         
    Monitoring                    
    b4ly
    High
    Leaving Monitored Scope (EnsureListItemsData#1). Execution Time=8.9865206030691
    SharePoint Foundation         
    Monitoring                    
    b4ly
    High
    Leaving Monitored Scope (Add WebPart with error). Execution Time=21.6849150170196
    SharePoint Foundation         
    Runtime                       
    tkau
    Unexpected
    Microsoft.SharePoint.SPException: Item does not exist. It may have been deleted by another user.    at Microsoft.SharePoint.ApplicationPages.Calendar.CalendarInstanceQuery.Retrieve(SPList list, String recurId)     at Microsoft.SharePoint.SPContext.get_Item()    
    at Microsoft.SharePoint.SPContext.ContentTypeInternal(String contentTypeId)     at Microsoft.SharePoint.WebPartPages.ListFormWebPart.get_TemplateName()     at Microsoft.SharePoint.WebPartPages.ListFormWebPart.ShowRibbon()    
    at Microsoft.SharePoint.WebPartPages.ListFormWebPart.OnInit(EventArgs e)     at System.Web.UI.Control.InitRecursive(Control namingContainer)     at System.Web.UI.Control.AddedControl(Control control, Int32 index)    
    at System.Web.UI.WebControls.WebParts.WebPartManager.WebPartManagerControlCollection.AddWebPar...
    SharePoint Foundation         
    Runtime                       
    tkau
    Unexpected
    ...tHelper(WebPart webPart)     at System.Web.UI.WebControls.WebParts.WebPartManager.WebPartManagerControlCollection.AddWebPart(WebPart webPart)     at System.Web.UI.WebControls.WebParts.WebPartManagerInternals.AddWebPart(WebPart
    webPart)     at Microsoft.SharePoint.WebPartPages.SPWebPartManager.AddWebPartWithRetry(WebPart webPart)     at Microsoft.SharePoint.WebPartPages.SPWebPartManager.CreateWebPartsFromRowSetData(Boolean onlyInitializeClosedWebParts)    
    at Microsoft.SharePoint.WebPartPages.SPWebPartManager.LoadWebParts()     at Microsoft.SharePoint.WebPartPages.SPWebPartManager.OnPageInitComplete(Object sender, EventArgs e)     at System.EventHandler.Invoke(Object sender,
    EventArgs e)     at System.Web.UI.Page.OnInitComplete(EventArgs e)     at System.Web.UI.Page.ProcessRequestMain(Boole...
    SharePoint Foundation         
    Runtime                       
    tkau
    Unexpected
    ...an includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
    SharePoint Foundation         
    Monitoring                    
    b4ly
    Medium
    Leaving Monitored Scope (Request (GET:http://bbb.pg.com:80/bu/BabyCareGlobal/Leading_Edge_TC/Lists/Calendar/DispForm.aspx?ID=20.1.19&Source=http%3A%2F%2Fdcsp%2Epg%2Ecom%2Fbu%2FBabyCareGlobal%2FLeading%5FEdge%5FTC%2FLists%2FCalendar%2FAllItems%2Easpx&ContentTypeId=0x010200CC32B4CF07E6864EB4D93282333F0563&IsDlg=1)).
    Execution Time=93.1800510301055

  • Open Discussion Thread in Modal Dialog

    Hi again,
    I am wondering if it possible to have SharePoint open a discussion thread in a modal dialog. To be clear, this happens when someone adds a new discussion thread (ie. creates a new one). However, when clicking on an existing one to provide a comment, this
    opens in a new page rather than in a modal dialog. I would prefer the modal approach as the user then doesn't leave the page when submitting a reply to a thread.
    Is this possible?
    thanks!

    I have a solution, but
    This will require the use of SharePoint Designer.
    It has not been heavily tested, and only tested in SP 2010.
    The reply counts will not be automatically updated in the base discussion page.
    The page will be "unghosted" (customized) and might not upgrade correctly to the next version of SharePoint.
    Use at your own risk, batteries not included.
    Steps:
    Launch SharePoint Designer and open the site with the discussion board.
    In Navigation pane click All Files. (If this is not displayed your administrators may have partially locked down Designer.) 
    Click Lists
    Click your discussion list
    Click Allitems.aspx
    In the Ribbon click Advanced Mode
    find the following lines:
    </ZoneTemplate></WebPartPages:WebPartZone>
    </asp:Content>
    In between these two lines insert a blank line and paste the JavaScript below.
    Save your changes, return to the discussion list and test.
    <script>
    function ttnGoToDiscussion(url)
    var options = SP.UI.$create_DialogOptions();
    options.url = url;
    options.width = 800;
    options.height = 500;
    SP.UI.ModalDialog.showModalDialog(options);
    function ChangeHowDiscussionsOpen()
    GoToDiscussion = ttnGoToDiscussion;
    ChangeHowDiscussionsOpen()
    </script>
    Mike Smith TechTrainingNotes.blogspot.com
    Books:
    SharePoint 2007 2010 Customization for the Site Owner,
    SharePoint 2010 Security for the Site Owner

  • [Forum FAQ] A content management tool with dashboard based on SharePoint List

    1. 
    Scenario:
    The SharePoint OOTB List has saved us a lot of time on managing mess data. It provides three forms to create/view/edit items, the ability to save the views we want with some specific filtering and sorting condition, versioning for easy restoring, and we
    can make it advanced with workflow contains the specific business logic.
    However, if there is a need for better user experience, interacting with the public APIs and a bit of script to customize the web page would be required.
    Suppose there is a requirement like this:
    We need a content collection tool which collects ideas from contributors, the newly ideas will be reviewed by reviewers.
    We may need to filter the list in a convenient way, get the wanted result with the data from the list and display in a chart or rank list. 
    We can add some buttons in Metro style to display the counting result of the data from the list dynamically. When we click them, the list will be filtered and sorted to display a friendly set of items. Also, we need to display a trend of the mess data graphically
    in some beautiful charts.  If we want to find out some outstanding contributors, top contributor board would be more comfortable than the top N items in the OOTB list view.
    The page would look like this:
    2. 
    Introduction:
    Engineers will come up with some ideas in the daily job and write a content to enlighten others. Reviewers will help to review ideas or contents and publish the contents if qualified.
    The complete process looks like this:
    As we can see, only the approved idea can be written as a content and only the approved content can be published.
    2.1
    How it works
    We build the whole tool in one page. All ideas and contents will be saved in a custom list. This is how it looks like:
    There are three parts in this page:
    1       
    2       
    2.1       
    2.1.1       
    Top menu
    The top menu contains three elements:
    A Drop Down menu for filtering data by team, it will refresh the other two parts with the filtered data:
    A hyperlink “STATISTIC” links to a PowerBI report whose data source is the custom list.
    A hyperlink “FEEDBACK” for collecting feedbacks:
    The feedbacks will be saved in another list:
    2.1.2       
    Information menu
    This part will display the calculated data retrieved from the list within tiles, chart and ranking list.
    The tiles can be clicked to filter and refresh the list view.
    2.1.3       
    List view
    A list stores all ideas and contents with the properties needed. It can be filtered by the Top menu and Information menu.
    The customization on the OOTB custom list template makes it more powerful and more suit for this scenario:
    1. An item leveled comment feature (based on OOTB Tags & Notes feature) for other users make comments to an idea or content:
    2. Title column: When there is no attachment in the current item, it redirects to the default DisplayForm page. If there is, it will open the attachment (usually a .docx file) in Word Online in a new tab.
    3. ECB menu: Add some custom shortcuts for popular actions:
    4. A hyperlink column stores the hyperlink points to the website where the content is published to.
    3.   
    How to achieve it
    This solution will be hosted in SharePoint Online environment, so we do all the job using JavaScript, REST API and Client Object Model.
    The Drop Down menu, tiles, rank list are generated with some HTML+CSS.
    The Trend Chart, we take advantage of the Combo chart in the Google chart library.  
    The list view is hosted in a <iframe> which can be easily filtered and refreshed by just passing a generated URL with query string.
    For the customization on the list view and the ECB menu, JSLink with Client Object Model would be OK.
    3.1
    Specific to every part
    3.1.1       
    Top menu
    3.1.1.1 
    Drop Down menu for retrieving filtered data and refreshing the display of the related controls
    When user selects a team here, there will be a request sent out for retrieving items of the list. By default, the limit is 100 when using REST API to get list items, so we can append a “$top=1000” to require more items from server.
    Code snippet like this:
    $.ajax({
    url: _spPageContextInfo.webAbsoluteUrl + "/_api/web/lists/getbytitle('" + listName + "')/items?$top=1000",
    method: "GET",
    headers: { "Accept": "application/json; odata=verbose" },
    success: function (data) {
    console.log("getListItems succ");
    console.log(data);
    error: function (data) {
    alert("getListItems error");
    //failure(data);
    Then we will get the “data” as a JSON format string, it contains all the values we need from the list:
    We can get the values we want like this:
    //get item Count
    var arr = [], len;
    for(key in data.d.results)
    arr.push(key);
    len = arr.length;
    for(var ii=0; ii<len; ii++)
    var team = data.d.results[ii].Team;
    var month = data.d.results[ii].Month;
    As we need to know the counts of each type of ideas or contents, we use an array for saving the counters:
    //ary to store all counters for tiles: all/pendingIdea/pendingContent/my/approvedIdea/approvedContent
    var aryAllCounters = [0,0,0,0,0,0];
    for(var ii=0; ii<len; ii++)
    //get pendingIdeaCount
    if(data.d.results[ii].Statuss === 'Pending')
    aryAllCounters[1]++;
    Once all the numbers are ready, we can do the refreshing.
    As the list view page is hosted in a <iframe>, all we need to do is passing a constructed URL with query string:
    url_team = URL + "?FilterField1="+FIELD_MYTEAM+"&FilterValue1=" + sel_val;
    $iframe.attr('src', url_team);
    3.1.1.2 
    Hyperlink for popping up a dialog to collect feedbacks
    The feedback dialog hosts another page which contains two buttons and one text area.
    The HTML code of the FEEDBACK button:
    <a id="feedback" href="#" onclick="javascript:openDialogBox('../SitePages/Feedback.aspx');">FEEDBACK</a>
    The openDialogBox() function:
    function openDialogBox(url){
    var options = SP.UI.$create_DialogOptions();
    options.url = url;
    options.height = 130;
    options.width = 425;
    options.title = "Feedback";
    SP.UI.ModalDialog.showModalDialog(options);
    In the Feedback.aspx page, when user click submit button, we will save the content of the text area into the feedback list:
    function addListItem()
    this.clientContext = new SP.ClientContext.get_current();
    this.oList = clientContext.get_web().get_lists().getByTitle('Feedback');
    var itemCreateInfo = new SP.ListItemCreationInformation();
    this.oListItem = this.oList.addItem(itemCreateInfo);
    //set person field
    var userValue = new SP.FieldUserValue();
    //userValue.set_lookupId(this.currentUser.get_id());
    userValue.set_lookupId(_spPageContextInfo.userId);
    oListItem.set_item('Provider', userValue);
    //Sets the specified field value
    oListItem.set_item('Title', str);
    //datetime field
    var currDate = new Date();
    oListItem.set_item('Submit_Time',currDate);
    oListItem.update();
    clientContext.executeQueryAsync(Function.createDelegate(this, this.onQuerySucceeded_add), Function.createDelegate(this, this.onQueryFailed));
    3.1.2       
    Information menu
    3.1.2.1 
    Tile shortcut
    In the click event of the tiles, the code will pass a generated URL with query string to the <iframe>:
    //filter list only
    $tile.click(function(){
    //distinguish tiles by id
    var v = $(this).attr('id');
    switch(v)
    case S_MY_CONTENT:
    url_team1 = URL + "?FilterField1="+FIELD_COMPOSER+"&FilterValue1=" + currentUsername;
    break;
    case S_PENDING_IDEA:
    url_team1 = url_team + "&FilterField2="+FIELD_STATUS+"&FilterValue2=Pending&FilterField3="+FIELD_IDEATYPE+"&FilterValue3=Idea";
    break;
    $iframe.attr('src', url_team1);
    3.1.2.2 
    Trend chart
    The chart will be initialized with the numbers by month stored in a 3D array:
    google.load("visualization", "1", {packages:["corechart"]});
    google.setOnLoadCallback(drawVisualization);
    function drawVisualization(ary)
    // Some raw data (not necessarily accurate)
    var data = google.visualization.arrayToDataTable(ary);
    var view = new google.visualization.DataView(data);
    view.setColumns([0, 1,
    { calc: "stringify",
    sourceColumn: 1,
    type: "string",
    role: "annotation"
    2]);
    // Create and draw the visualization.
    var ac = new google.visualization.ComboChart(document.getElementById('chart1'));
    ac.draw(view, {
    //legend: 'top',
    legend: {
    title : '',
    //width: 0,
    //height: 285,
    vAxis: {title: "", format:'#',viewWindowMode:'explicit',
    viewWindow:{
    min:0
    },ticks: ticks
    //hAxis: {title: ""},
    lineWidth: 4,
    bar: {groupWidth: "60%"},
    seriesType: "bars",
    series: {1: {type: "line"}},
    chartArea:{
    colors: ['#A4C400', '#F9A13B']
    3.1.2.3 
    Top contributors rank list
    When retrieving list items, we can get the “AuthorId” which represents the id of the user in the siteUserInfoList. We run another request to retrieve all items in the siteUserInfoList which stores the username with the URL of profile.
    Then we can use a hash table(provided by jshashtable.js) to store the user id, username and profile URL:
    $.ajax({
    url: _spPageContextInfo.webAbsoluteUrl + "/_api/web/siteUserInfoList/Items",
    method: "GET",
    headers: { "Accept": "application/json; odata=verbose" },
    success: function (data) {
    console.log(data);
    //get item Count
    var arr = [], len;
    for(key in data.d.results)
    arr.push(key);
    len = arr.length;
    var ht_authors = new Hashtable();
    for(var ii=0; ii<len; ii++)
    if(authorSet.contains(data.d.results[ii].Id))
    if(data.d.results[ii].Picture != null)
    ht_authors.put(data.d.results[ii].Id, data.d.results[ii].Title+'|'+data.d.results[ii].Picture.Url);
    else
    ht_authors.put(data.d.results[ii].Id, data.d.results[ii].Title+'|');
    console.log("ht_authors.keys(): "+ht_authors.keys());
    console.log("ht_authors.values(): "+ht_authors.values());
    error: function (data) {
    alert("error");
    //failure(data);
    3.1.3       
    List view
    For the Comment button, custom title link and the custom published link of each item, we can use JSLink to achieve.
    Comment button: It is supposed to be the OOTB “Type” column, I change the icon and modify the click event of it to pop up a comment dialog which take advantage of the OOTB “Tags&Notes” feature;
    Custom Title link: As there will be two situations of an item: has attachment or not. We will need to run a request to get the URL of attachment and change the hyperlink of the Title field accordingly:
    (function () {
    // Create object that have the context information about the field that we want to change it output render
    var linkFiledContext = {};
    linkFiledContext.Templates = {};
    linkFiledContext.Templates.Fields = {
    //"Attachments": { "View": AttachmentsFiledTemplate }
    "LinkTitle": { "View": TitleFieldTemplate },
    "Published_x0020_Link": { "View": PublishedLinkFieldTemplate },
    "DocIcon": { "View": DocIconFieldTemplate },
    "MyTeam": { "View": MyTeamFieldTemplate }
    SPClientTemplates.TemplateManager.RegisterTemplateOverrides(linkFiledContext);
    function DocIconFieldTemplate(ctx)
    var htmlStr = "";
    var listId = ctx.listName;
    var itemId = ctx.CurrentItem.ID;
    var s = listId + "," + itemId;
    htmlStr += "<img width='16' height='16' class=' ms-draggable' alt='Comment' src='"+_spPageContextInfo.webAbsoluteUrl+"/Shared%20Documents/img/comment-icon.png' border='0' ms-draggableragId='0' onclick='CommentIcon(\""+ s +"\")'></img>";
    return htmlStr;
    function CommentIcon(s)
    var listId = s.split(',')[0];
    var itemId = s.split(',')[1];
    var url=_spPageContextInfo.webAbsoluteUrl+"/_layouts/15/socialdataframe.aspx?listid="+listId+"&id="+itemId+"&mode=1";
    console.log(url);
    openCustomDialog(url,"Comment",650,520);
    function openCustomDialog(pageUrl,title,width,height)
    SP.UI.ModalDialog.showModalDialog({
    url: pageUrl,
    width: width,
    height: height,
    title: title,
    dialogReturnValueCallback: function (result){
    if(result== SP.UI.DialogResult.OK)
    parent.window.location.href=parent.window.location.href;
    function PublishedLinkFieldTemplate(ctx)
    //console.log(ctx);
    var htmlStr = "";
    var itemPublishedLink = "";
    var itemPublishedLinkDesc = "";
    if((ctx.CurrentItem.Published_x0020_Link != ''))
    itemPublishedLink = ctx.CurrentItem.Published_x0020_Link;
    itemPublishedLinkDesc = ctx.CurrentItem["Published_x0020_Link.desc"];
    htmlStr = "<a href='" + itemPublishedLink + "' target='_blank'>" + itemPublishedLinkDesc + "</a>";
    return htmlStr;
    function MyTeamFieldTemplate(ctx)
    var htmlStr = "";
    var itemMyTeam = "";
    if((ctx.CurrentItem.MyTeam[0] != undefined) && (ctx.CurrentItem.MyTeam[0] != null))
    itemMyTeam = ctx.CurrentItem.MyTeam[0].lookupValue;
    htmlStr = itemMyTeam;
    return htmlStr;
    function TitleFieldTemplate(ctx) {
    console.log(ctx.CurrentItem);
    var itemId = ctx.CurrentItem.ID;
    var itemTitle = ctx.CurrentItem.Title;
    var listName = ctx.ListTitle;
    var siteUrl = _spPageContextInfo.webAbsoluteUrl;
    var listUrl = _spPageContextInfo.webAbsoluteUrl + "/Lists/" +listName;
    var fileNames = getAttachmentsNames(listName, itemId);
    console.log(fileNames);
    var fileNameAry = fileNames.split("|");
    var htmlStr = "";
    //check the attachment existence
    if(fileNameAry[0] != '')
    for(var j = 0; j < fileNameAry.length; j++)
    var fileName = fileNameAry[j];
    var s1 = "<a class=\"ms-listlink ms-draggable\" onmousedown=\"return VerifyHref(this, event, '1', 'SharePoint.OpenDocuments.3', '1";
    //1``https://microsoft.sharepoint.com/teams/spfrmcs
    var s2 = "/_layouts/15/WopiFrame.aspx?sourcedoc=";
    //2``/teams/spfrmcs/Lists/Content%20Pool
    var s3 = "/Attachments/";
    //3``137
    var s4 = "/";
    //4``[Forum FAQ] Highlight the list tab in Quick Launch when the list view changes.docx
    var s5 = "&action=default'); return false;\" href=\"";
    //5``https://microsoft.sharepoint.com/teams/spfrmcs/Lists/Content Pool
    var s6 = "/Attachments/";
    //6``137
    var s7 = "/";
    //7``[Forum FAQ] Highlight the list tab in Quick Launch when the list view changes.docx
    var s8 = "\" target=\"_blank\" DragId=\"1\">";
    //8``Highlight the list tab in Quick Launch when the list view changes
    var s9 = "</a>";
    var s = s1+siteUrl+s2+listUrl+s3+itemId+s4+fileName+s5+listUrl+s6+itemId+s7+fileName+s8+itemTitle+s9;
    htmlStr += s;
    //console.log(htmlStr);
    if (j != fileNameAry.length - 1)
    htmlStr += "<br/>";
    //if no attachments, set the <a> point to displayForm
    else
    htmlStr += "<a class='ms-listlink ms-draggable' onclick='EditLink2(this,28);return false;' onfocus='OnLink(this)' href='" + siteUrl + "/_layouts/15/listform.aspx?PageType=4&ListId=%7BE54A4FBB%2DDDC2%2D4F7E%2D8343%2D8A1C78757CF4%7D&ID=" + itemId + "&ContentTypeID=0x010079A1D928FF77984C80BFEF1D65C3809F' target='_blank' DragId='0'>" + itemTitle + "</a>";
    return htmlStr;
    function getAttachmentsNames(listName,itemId) {
    var url = _spPageContextInfo.webAbsoluteUrl;
    var requestUri = url + "/_api/web/lists/getbytitle('" + listName + "')/items(" + itemId + ")/AttachmentFiles";
    var str = "";
    // execute AJAX request
    $.ajax({
    url: requestUri,
    type: "GET",
    headers: { "ACCEPT": "application/json;odata=verbose" },
    async: false,
    success: function (data) {
    for (var i = 0; i < data.d.results.length; i++)
    if(i != 0)
    str += "|";
    str += data.d.results[i].FileName;
    error: function (err) {
    //alert(err);
    return str;
    3.2
    How to make them work together
    When selecting an option in the Drop Down menu, the Information menu and the List view will be refreshed separately.
    When clicking the tiles, only the list view will be filtered and refreshed, the other parts will not be influenced.
    When items created/modified, the whole page will be refreshed to keep all the numbers in each part updated.  A workflow will also be triggered to inform engineers or reviewers the progress of an item or content.
    3.3
    Other customizations
    3.3.1       
    ECB menu and permission control
    As we need to refresh the page when new item or modify item, we put all the form pages in a custom modal dialog and execute the refresh in the success callback function.
    There are three roles: Site owner, reviewer and engineer. They have limited privileges according to the roles they are:
    Site owner: Full control on the list, can see all the buttons in the ECB menu;
    Reviewer: There is another list which stores the names of each team and reviewers’ names of each team. The reviewer has limited full control only on the team they belong to. To other teams, the role can be seen as a visitor;
    Composer
    (create owner): The one who contribute an idea. For the ideas\contents from other teams, this role can be seen as visitor.
    The ECB menu they can see is:
    For the visitor, the ECB menu will only display a few buttons:
    The code:
    (function () {
    var viewContext = {};
    viewContext.Templates = {};
    viewContext.OnPostRender = OnViewPostRender;
    SPClientTemplates.TemplateManager.RegisterTemplateOverrides(viewContext);
    function OnViewPostRender(ctx) {
    $("a[title='More options']").removeAttr("onclick");
    $(".ms-list-itemLink").removeAttr("onclick");
    $("a[title='More options']").attr("onclick", "showMenuList(this);return false;");
    function showMenuList(obj) {
    var itemId = $(obj).parents("tr").attr("id").split(",")[1];
    //show ECB menu
    CoreInvoke('ShowECBMenuForTr', obj, event);
    var teamId = getCurrentTeamId("Content Pool", itemId);
    var styles = "";
    if (isSiteOwner("Technet SharePoint Team Owners")) {
    styles = "li[text='Delete Item ']{display:block;} li.ms-core-menu-separator:last-child{display:block;} ul.ms-core-menu-list > li:nth-last-child(5){display:block;} li[text='Edit Item ']{display:block;} li[text='Upload Document']{display:block;} li[text='Approve']{display:block;} li[text='Reject']{display:block;} li[text='Add Publish Link']{display:block;}";
    } else if (isReviewer("List1_FAQ_team", teamId, "Reviewers")) {
    styles = "li[text='Delete Item ']{display:block;} li.ms-core-menu-separator:last-child{display:block;} ul.ms-core-menu-list > li:nth-last-child(5){display:block;} li[text='Edit Item ']{display:block;} li[text='Upload Document']{display:block;} li[text='Approve']{display:block;} li[text='Reject']{display:block;} li[text='Add Publish Link']{display:block;}";
    } else if (isComposer(obj)) {
    styles = "li[text='Delete Item ']{display:block;} li.ms-core-menu-separator:last-child{display:block;} ul.ms-core-menu-list > li:nth-last-child(5){display:block;} li[text='Edit Item ']{display:block;} li[text='Upload Document']{display:block;} li[text='Approve']{display:none;} li[text='Reject']{display:none;} li[text='Add Publish Link']{display:none;}";
    } else {
    styles = "li[text='Delete Item ']{display:none;} li.ms-core-menu-separator:last-child{display:none;} ul.ms-core-menu-list > li:nth-last-child(5){display:none;} li[text='Edit Item ']{display:none;} li[text='Upload Document']{display:none;} li[text='Approve']{display:none;} li[text='Reject']{display:none;} li[text='Add Publish Link']{display:none;}";
    includeStyleElement(styles);
    //get current team id
    function getCurrentTeamId(listName,itemId){
    var teamId="";
    var requestUri = _spPageContextInfo.webAbsoluteUrl +
    "/_api/Web/Lists/getByTitle('"+listName+"')/items("+itemId+")?$select=MyTeamId";
    // execute AJAX request
    $.ajax({
    url: requestUri,
    type: "GET",
    headers: { "ACCEPT": "application/json;odata=verbose" },
    async: false,
    success: function (data) {
    if(data.d.MyTeamId!=null){
    teamId=data.d.MyTeamId;
    }else{
    teamId="0";
    error: function () {
    //alert("Failed to get details");
    return teamId;
    //check whether is owner
    //Technet SharePoint Team Owners
    function isSiteOwner(groupName) {
    var flag = false;
    var requestUri = _spPageContextInfo.webAbsoluteUrl + "/_api/Web/effectiveBasePermissions";
    // execute AJAX request
    $.ajax({
    url: requestUri,
    type: "GET",
    headers: { "ACCEPT": "application/json;odata=verbose" },
    async: false,
    success: function (data) {
    var permissions = new SP.BasePermissions();
    permissions.fromJson(data.d.EffectiveBasePermissions);
    flag = permissions.has(SP.PermissionKind.managePermissions);
    error: function () {
    //alert("Failed to get details");
    return flag;
    function isComposer(obj) {
    var flag = false;
    var userId = _spPageContextInfo.userId;
    var composerId = $(obj).parents("tr").find("a[href*='userdisp.aspx']").attr("href").split("ID=")[1];
    if (composerId == userId) {
    flag = true;
    return flag;
    //check whether is reviewer
    function isReviewer(listName,teamId,peopleColumn){
    var flag=false;
    var userId=_spPageContextInfo.userId;
    // begin work to call across network
    var requestUri = _spPageContextInfo.webAbsoluteUrl +
    "/_api/Web/Lists/getByTitle('"+listName+"')/items?$select=ID&$filter=(ID eq '"+teamId+"' and "+peopleColumn+"Id eq '"+userId+"')";
    // execute AJAX request
    $.ajax({
    url: requestUri,
    type: "GET",
    headers: { "ACCEPT": "application/json;odata=verbose" },
    async: false,
    success: function (data) {
    if(data.d.results.length>0){
    flag=true;
    error: function () {
    //alert("Failed to get details");
    return flag;
    //insert style into page
    function includeStyleElement(styles) {
    var style = document.createElement("style");
    style.type = "text/css";
    (document.getElementsByTagName("head")[0] || document.body).appendChild(style);
    if (style.styleSheet) {
    //for ie
    style.styleSheet.cssText = styles;
    } else {
    //for w3c
    style.appendChild(document.createTextNode(styles));
    3.3.2       
    Workflow email customization
    The email will only be sent to engineer or team reviewer in the three scenarios:
    When engineer uploads an idea or content, reviewer will receive an email;
    When engineer uploads a content to an existing idea, reviewer will receive an email;
    When reviewer approve/reject an idea or content, engineer will receive an email;
    The design of the workflow process  :
     The email design like this:
    Email to engineer
    Email to reviewer
    Let us know if you are interested in it. Happy coding!
    Please click to vote if the post helps you. This can be beneficial to other community members reading the thread.

    A good solution. Liked it very much. Can you please make it a technet blog for others.
    [email protected]

  • Outlook 2013 crashes when opening Calendar search result

    I have a user who uses her Outlook 2013 calendar extensively, mainly to note for herself when she has spoken to a customer, and creating appointments for when she needs to speak to them again. (This is outside of our policy to note the contact in
    MS CRM.) She can have scores of such Calendar items each day.
    When seraching for these appointments in her Calendar, she gets the list of results, but Oulook crashes when she tries to open any of them. Sometimes Outlook restarts on its own, sometimes she must relaunch it herself.
    Related threads reference a wwlib.dll error, but she is not getting that. It is Outlook.exe itself that is crashing. There are other threads that reference other open windows, or items containing webpages or tables, but these do not apply to her, either.
    Event Data (two related entries) contain the following:
    OUTLOOK.EXE
    15.0.4551.1004
    5253ad6f
    c0000005
    00025b09
    19cc
    01cef2a610938033
    C:\Program Files\Microsoft Office\Office15\OUTLOOK.EXE
    C:\Program Files\Microsoft Office\Office15\OUTLOOK.EXE
    77f5e493-5e9b-11e3-9ef4-00219b4a7172
    And:
    3915849571
    1
    APPCRASH
    Not available
    0
    OUTLOOK.EXE
    15.0.4511.1004
    5253ad6f
    OUTLOOK.EXE
    15.0.4551.1004
    5253ad6f
    c0000005
    00025b09
    C:\Users\[username]\AppData\Local\Temp\163947659.cvr C:\User\[username]\AppData\Local\Temp\CVR780F.tmp.cvr
    C:\Users\[username]\AppData\Local\Temp\WERA546.tmp.WERInternalMetadata.xml
    C:\Users\[username]\AppData\Local\Microsoft\Windows\WER\ReportArchive\AppCrash_OUTLOOK.EXE_2e80497b46642ed3f64262bb26bbba2f6ecc_02d1bdd5
    0
    77f5e493-5e9b-11e3-9ef4-00219b4a7172
    0
    On answers.microsoft.com, Girish M (Support Engineer who eventally directed me here), asked me to run Scanpst.exe. I would paste the results here, but this window does not seem to allow pasting. A summary description of what it found on her .ost file (no
    .pst in use) is basically this:
    **Beginning NDB recovery
      **Attempting to open database
      **Attempting to validate header
      **Attempting to validate AMap
      **Attempting to validate BBT
      **Attempting to validate NBT
      **Attempting to validate BBT refcounts
        ??Couldint find BBT entry in the RBT (E025CC)
      **Attempting to validate header NID high-water marks
    **Beginning PST/OST recovery
      **Attempting to recover all top-level objects
        **Store created by biuld: 15.4517
      **Attempting to walk all folders
          Failed to add row to the FLT, RowID = 719
          Failed to add row to the FLT, RowID = 6CD
          Failed to add row to the FLT, RowID = 6DE
          Failed to add row to the FLT, RowID = 6D8
    and so on, and so on, with a few hundred more FLT RowID errors, finally ending with:
      **Attempting to locate any orphaned folders/messages
      **Performing Final HMP validation
      **Attempting to check top-level objects for consistency
      **Updating folder hierarchy
      **Verifying message moves
    My understanding of the Scanpst.exe process is that it also disables any addons which might cause crashing, but the issue is still being experienced. Running Scanpst.exe a second time (appending the previous log, although it seemed to actually prepend the
    file) only returned a few lines from the top of the result above ending with "Attempting to validate BBT."
    Fixes not attempted yet that I have found performing searches include running the Office Repair tool, or checking for KB2817631 (a Word update that is apparently having adverse affects on Outlook, not attempted yet because it seems to be related to the wwlib.dll
    error, which is not happening here).
    Any thoughts out there? Thanks!

    Mavis,
    Thanks for the reply. Running Outlook using /cleansharing and
    /cleanroamedprefs did not have any effect when used individually or in combination with each other.
    Running the Search Index Rebuild option also did not seem to do anything, as the pop-up message indicated that it may take a long time to finish, and yet seemed to finish instantaneously, not giving any indication that the indexing took place. The option
    window immediately said "Indexing complete" for 23,755 items.
    As to the Outlook Forum, they are the ones who directed me to this forum (you can see the thread on the Answers support page under Office - Office 2013 - Microsoft Office Outlook - Office on Windows 7, under the title "Outlook 2013 restarts when
    opening Calendar Search result item" first posted on Dec 11, 2013), as Girish M felt that it might be due to Exchange, and not Outlook. (I have no reports of any of our other users on the same Exchange server having the problem with their Outlook, but
    they also do not use it the way this user has been.)
    I can repost the issue there, or continue the same thread, if you think the issue lies with them. Was the "Answers" site the improper place to post, perhaps? Should it go in a different thread on Technet instead?
    Thanks for your assistance!
    Edited to add:
    Here are the KBs installed just before or on the date the problem started (12/6/2013):
    12/5/2016 (Office updates, all 32-Bit):
    Security Update Office 2013 KB2768005
    Office 2013 KB2768016
    Office 2013 KB2817640
    Office 2013 KB2827228
    Security Office 2013 KB2837618
    Word 2013 KB2817631
    InfoPath 2013 KB2752078
    Office 2013 KB2817493
    Office 2013 KB2760539
    Office 2013 KB2827235
    Office 2013 KB2827225
    Security Excel 2013 KB2827238
    Office 2013 KB2760242
    Office 2013 KB2817626
    Office 2013 KB2817314
    Office 2013 KB2760610
    Access 2013 KB2768008
    Office 2013 KB2738038
    SkyDrive Pro KB2825633
    Security Office 2013 KB2817623
    Office 2013 KB2760267
    Visio Viewer 2013 KB2768338
    Office 2013 KB2827230
    OneNote 2013 KB2810016
    Office 2013 KB2827228
    Office 2013 KB2767845
    Definition Office 2013 KB2760587
    Office 2013 KB2726996
    Security Office 2013 KB2810009
    Office 2013 KB2817316
    Word 2013 KB2817631
    Lync 2013 KB2817621
    Office 2013 KB2760224
    Office 2013 KB2726954
    Office 2013 KB2817640
    Publisher 2013 KB2752097
    PowerPoint 2013 KB2817625
    Office 2013 KB2760257
    Office 2013 KB2817309
    Security Outlook 2013 KB2837618
    Visio 2013 KB2752018
    Office 2013 KB2817490
    Word 2013 KB2827218
    Office 2013 KB2760553
    12/6/2013 (for Windows, all Security):
    KB2900986
    KB2888505
    KB2876331
    KB2868725
    KB2868626
    KB2862152
    I listed all updates because there have been reported instances of a Word update causing Outlook to crash, but she is not getting the wwlib.dll error related to that KB. If you are aware of any issues with these updates, and which ones might be worth uninstalling
    in an attempt to fix, please let me know.
    Thanks again!

  • FAQ - Print a List Item in SharePoint 2010

    FAQ - Print a List Item in SharePoint 2010
    step 1) Open a List;
    step 2) Hit the List tab;
    step 3) Click the Form Web Parts dropdownlist;
    step 4) Choose “Default Display Form”;
    step 5)At the top of the Page – Insert Tab, Click the Web Part button to add a new Content Editor web part (CEWP);
     step 6) From Categories choose “Media and Content” > “Content Editor” and add it to the main section of the page;
     Click the “Click here to add content” and then click the HTML button in the Ribbon to bring up the Edit source code window;
     In the window add the following code to display a Print Button at the top of the list item window.
    input type=”button” value=” Print” onclick=”window.print();return false;” 
    step 7) Next, hit the Page tab at the top of the page to view the List item. You should see the Print button;
     Hit the Print button to print just the list item.
    Amalaraja Fernando,
    SharePoint Architect
    This post is provided "AS IS" with no warrenties and confers no rights.

    References:
    http://social.msdn.microsoft.com/Forums/en-US/sharepointdevelopment/thread/28f02631-2291-4f8c-875a-4fa5397536ee/
    Amalaraja Fernando,
    SharePoint Architect
    This post is provided "AS IS" with no warrenties and confers no rights.

  • [Forum FAQ] How to install and configure Windows Server Essentials Experience role on Windows Server 2012 R2 Standard via PowerShell locally and remotely

    As we all know,
    the Windows Server Essentials Experience role is available in Windows Server 2012 R2 Standard and Windows Server 2012 R2 Datacenter. We can add the Windows Server
    Essentials Experience role in Server Manager or via Windows PowerShell.
    In this article, we introduce the steps to install and configure Windows
    Server Essentials Experience role on Windows Server 2012 R2 Standard via PowerShell locally and remotely. For better analyze, we divide this article into two parts.
    Before installing the Windows Server Essentials Experience Role, please use
    Get-WindowsFeature
    PowerShell cmdlet to ensure the Windows Server Essentials Experience (ServerEssentialsRole) is available. (Figure 1)
    Figure 1.
    Part 1: Install Windows Server Essentials Experience role locally
    Add Windows Server Essentials Experience role
    Run Windows PowerShell as administrator, then type
    Add-WindowsFeature ServerEssentialsRole cmdlet to install Windows Server Essentials Experience role. (Figure 2)
    Figure 2.
    Note: It is necessary to configure Windows Server Essentials Experience (Post-deployment Configuration). Otherwise, you will encounter following issue when opening Dashboard.
    (Figure 3)
    Figure 3.
      2. Configure Windows Server Essentials Experience role
    (1)  In an existing domain environment
    Firstly, please join the Windows Server 2012 R2 Standard computer to the existing domain through the path:
    Control Panel\System\Change Settings\”Change…”\Member of. (Figure 4)
    Figure 4.
    After that, please install Windows Server Essentials Experience role as original description. After installation completed, please use the following command to configure Windows
    Server Essentials:
    Start-WssConfigurationService –Credential <Your Credential>
    Note: The type of
    Your Credential should be as: Domain-Name\Domain-User-Account.
    You must be a member of the Enterprise Admin group and Domain Admin group in Active Directory when using the command above to configure Windows Server Essentials. (Figure 5)
    Figure 5.
    Next, you can type the password for the domain account. (Figure 6)
    Figure 6.
    After setting the credential, please type “Y” to continue to configure Windows Server Essentials. (Figure 7)
    Figure 7.
    By the way, you can use
    Get-WssConfigurationStatus
    PowerShell cmdlet to
    get the status of the configuration of Windows Server Essentials. Specify the
    ShowProgress parameter to view a progress indicator. (Figure 8)
    Figure 8.
    (2) In a non-domain environment
    Open PowerShell (Run as Administrator) on the Windows Server 2012 R2 Standard and type following PowerShell cmdlets: (Figure 9)
    Start-WssConfigurationService -CompanyName "xxx" -DNSName "xxx" -NetBiosName "xxx" -ComputerName "xxx” –NewAdminCredential $cred
    Figure 9.
    After you type the commands above and click Enter, you can create a new administrator credential. (Figure 10)
    After creating the new administrator credential, please type “Y” to continue to configure Windows Server Essentials. (Figure 11)
    After a reboot, all the configurations will be completed and you can open the Windows Server Essentials Dashboard without any errors. (Figure 12)
    Figure 12.
    Please click to vote if the post helps you. This can be beneficial to other community members reading the thread.

    Part 2: Install and configure Windows Server Essentials Experience role remotely
    In an existing domain environment
    In an existing domain environment, please use following command to provide credential and then add Server Essentials Role: (Figure 13)
    Add-WindowsFeature -Name ServerEssentialsRole
    -ComputerName xxx -Credential DomainName\DomainAccount
    Figure 13.
    After you enter the credential, it will start install Windows Server Essentials role on your computer. (Figure 14)
    Figure 14.
    After the installation completes, it will return the result as below:
    Figure 15.
    Next, please use the
    Enter-PSSession
    cmdlet and provide the correct credential to start an interactive session with a remote computer. You can use the commands below:
    Enter-PSSession –ComputerName
    xxx –Credential DomainName\DomainAccount (Figure 16)
    Figure 16.
    Then, please configure Server Essentials Role via
    Add-WssConfigurationService cmdlet and it also needs to provide correct credential. (Figure 17)
    Figure 17.
    After your credential is accepted, it will update and prepare your server. (Figure 18)
    Figure 18.
    After that, please type “Y” to continue to configure Windows Server Essentials. (Figure 19)
    Figure 19.
    2. In a non-domain environment
    In my test environment, I set up two computers running Windows Server 2012 R2 Standard and use Server1 as a target computer. The IP addresses for the two computers are as
    below:
    Sevrer1: 192.168.1.54
    Server2: 192.168.1.53
    Run
    Enable-PSRemoting –Force on Server1. (Figure 20)
    Figure 20.
    Since there is no existing domain, it is necessary to add the target computer (Server1) to a TrustedHosts list (maintained by WinRM) on Server 2. We can use following command
    to
    add the TrustedHosts entry:
    Set-Item WSMan:\localhost\Client\TrustedHosts IP-Address
    (Figure 21)
    Figure 21.
    Next, we can use
    Enter-PSSession
    cmdlet and provide the correct credential to start an interactive session with the remote computer. (Figure 22)
    Figure 22.
    After that, you can install Windows Server Essentials Experience Role remotely via Add-WindowsFeature ServerEssentialsRole cmdlet. (Figure 23)
    Figure 23.
    From figure 24, we can see that the installation is completed.
    Figure 24.
    Then you can use
    Start-WssConfigurationService cmdlet to configure Essentials Role and follow the steps in the first part (configure Windows Server Essentials Experience in a non-domain environment) as the steps would be the same.
    The figure below shows the status of Windows Server Essentials.
    Figure
    25.
    Finally, we have successfully configured Windows Server Essentials on Server1. (Figure 26)
    Figure 26.
    More information:
    [Forum
    FAQ] Introduce Windows Powershell Remoting
    Windows Server Essentials Setup Cmdlets
    Please click to vote if the post helps you. This can be beneficial to other community members reading the thread.

  • I am unable to open Calendar on my iMac - this occurred after installing Security Update 2015-002.  I don't know if related.  A message pops up after several minutes saying Calendar quit unexpectedly (but it never really opens). How do get Calendar b

    I am unable to open Calendar on my iMac - this occurred after installing Security Update 2015-002.  I don't know if related.  A message pops up after several minutes saying Calendar quit unexpectedly (but it never really opens). How do get Calendar back?

    Hi Magsrobby,
    Welcome to the forum and thanks for posting. I'm really sorry to hear you've had so many problems. I can look into this for you if you wish. Drop me an email with the details. You'll find the "contact us" form in the about me section of my profile. Once I have the details we'll take it from there.
    Cheers
    David
    BTCare Community Mod
    If we have asked you to email us with your details, please make sure you are logged in to the forum, otherwise you will not be able to see our ‘Contact Us’ link within our profiles.
    We are sorry but we are unable to deal with service/account queries via the private message(PM) function so please don't PM your account info, we need to deal with this via our email account :-)

  • Reg Open sales order item and the quantity

    Hi experts:
    I am getting open sales order item based on inner join of tables(vbak, vbap, vbep). Not using vbbe table in inner join as it doesnt carry all pending open records.
    can any one say how open sales order items  and their quantity can be retrieved?
    I searched forum and saw usage of vbuk and vbup tables, but it does not accomplish our scenario.
    Thanks in advance,
    Sashti.

    Hi,
    1) fetch the header information from VBAK table.
    2) Based on VBAK table fetch all the line items from VBAP table.
    3) Now fetch from VBFA table.
    *-Fetch from VBFA to get the delivered qty
      SELECT vbelv               " Preceding sales and distribution document
             posnv               " Preceding item of an SD document
             rfmng               " Referenced quantity in base UOM
        FROM vbfa
        INTO TABLE lt_vbfa
         WHERE vbelv   = gv_vbeln
           and vbtyp_n = 'J'.
    4) By comparing VBFA-POSNR just filter the records from the VBAP internal table. Remained lines are open lines of the sales order.
    Regards,
    ~Satya

  • Calendar Overlay Across Multiple Site Collections

    I have searched the forums and have not found a solution to this question.
    We are having trouble creating calendar overlays across site collections.
    Specifics:
    1. This is a single farm SharePoint 2013 installation.  Version: 15.0.4481.1005
    2. We have a single web application http://sharepointweb on port 80
    3. We are using host-named site collections
    4. We have separated the different departments into separate site collections because we want to take advantage of separate content databases.
    When we create calendar overlays between calendar lists within a single site collection...it works fine.  When we try to create calendar overlays between site collections (again, within a single web app) it fails with the message "Unable
    to find specified web in the given URL".
    Some more details:
    ## query of host headers for HNSCs
    Get-SPManagedPath -HostHeader
    Name Type                          
    ExplicitInclusion             
    sites WildcardInclusion             
    departments WildcardInclusion
    ## query of URLs for two affected site collections
    get-spsiteurl -id 'http://smportal04/departments/dev'
    Url Zone
    http://intranet/departments/dev Default
    http://sharepoint/departments/dev Internet
    http://portal/departments/dev Intranet
    get-spsiteurl -id 'http://intranet/departments/it'
    Url Zone
    http://intranet/departments/it Default
    http://sharepoint/departments/it Internet
    http://portal/departments/it Intranet
    ##The only entries I can find in the ULS logs
    ## an example of when I try to do a calendar overlay from the http://intranet/departments/dev calendar
    ## referencing a calendar in http://intranet/departments/it calendar
    Application error when access /_layouts/15/AggregationCustomize.aspx, Error=Unable to find specified web in the given URL - http://intranet/departments/it.   at Microsoft.SharePoint.ApplicationPages.Calendar.MashUpCalendarListAccessor.OpenWeb(String
    webUrl, SPWebApplication webapp)     at Microsoft.SharePoint.ApplicationPages.AggregationCustomizePage.RetrieveListsWithCalendarView(String webUrl)     at Microsoft.SharePoint.ApplicationPages.AggregationCustomizePage.FindListFromId(String
    id)     at Microsoft.SharePoint.ApplicationPages.AggregationCustomizePage.UpdateListViewDropDownList()     at System.Web.UI.WebControls.ListControl.OnSelectedIndexChanged(EventArgs e)     at System.Web.UI.Page.RaiseChangedEvents()
        at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
    Getting Error Message for Exception System.Web.HttpUnhandledException (0x80004005): Exception of type 'System.Web.HttpUnhandledException' was thrown. ---> Microsoft.SharePoint.SPException: Unable to find specified web in the given URL - http://intranet/departments/it.
        at Microsoft.SharePoint.ApplicationPages.Calendar.MashUpCalendarListAccessor.OpenWeb(String webUrl, SPWebApplication webapp)     at Microsoft.SharePoint.ApplicationPages.AggregationCustomizePage.RetrieveListsWithCalendarView(String
    webUrl)     at Microsoft.SharePoint.ApplicationPages.AggregationCustomizePage.FindListFromId(String id)     at Microsoft.SharePoint.ApplicationPages.AggregationCustomizePage.UpdateListViewDropDownList()     at System.Web.UI.WebControls.ListControl.OnSelectedIndexChanged(EventArgs
    e)     at System.Web.UI.Page.RaiseChangedEvents()     at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)     at System.Web.UI.Page.HandleError(Exception e)  
      at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)     at System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)  
      at System.Web.UI.Page.ProcessRequest()     at System.Web.UI.Page.ProcessRequest(HttpContext context)     at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()     at
    System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)

    Hi Roo, 
    i tried some steps, i agree with you that seems calendar overlay cant do good across web application, 
    from http://y:1234/ and http://y:4563/. seems there are limitation here. 
    when i extend my web app, usually i create new web app as internal/external/public, then i guess issue is happened. 
    so, anyway, i got a bit curious if your environment also came out with the same result:http://support.microsoft.com/kb/2025977
    at the kb, it was stated, that it may not able to find another site other than the default web app.
    but, while i tried in the same web app, the issue not there.
    so i tried to create new site collection, with lots of subsites, http://y:1234/. then have http://y.1234/sites/123 and http://y.1234/sites/456, for example, i add new calendar and create overlay, seems it can resolve each one and another.
    perhaps you can check this article:
    http://spsawyer.wordpress.com/2013/07/11/sharepoint-calendar-overlay-not-found-errors/
    Regards,
    Aries
    Microsoft Online Community Support
    Please remember to click “Mark as Answer” on the post that helps you, and to click “Unmark as Answer” if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread.

  • Displaying an issues list in a calendar overlay

    I would like my issues list to be overlayed on a calendar. I can do this with a task list but not the issues list. My question is what is the difference between the two. and how can I get my issues onto a calendar.

    Hi trackrn6b,
    According to your description, my understanding is that you want your issue list to  be overlayed on a calendar in SharePoint 2013.
    In a Tasks list, there is a calendar view by default. However, in Issue Tracking list, there is not a calendar view. For overlaying your issue tracking list on a calendar, you need to create a calendar view for the issue list, then you can overlay the list
    on a calendar using Calendar Overlay.
    More information, please refer to the link:
    http://sharepointsolutions.com/sharepoint-help/blog/2013/01/including-list-and-library-items-in-a-sharepoint-2010-calendar-overlay/
    I hope this helps.
    Thanks,
    Wendy
    Wendy Li
    TechNet Community Support

  • Calendar Overlay Outlook 2010 vs Outlook 2013

    I developed an Outlook 2010 add-in that allows a user to click a button and in that button it attempts to create a calendar overlay, it works great in Outlook 2010 however the same code in Outlook 2013 fails
    The only error that I get is: The Operation failed.
    This is my original code:
    Outlook.Application ouApplication = new Outlook.Application();
    Outlook.Folder newFolder = ouApplication.GetNamespace("MAPI").OpenSharedFolder(calUrl) as Outlook.Folder;
    I tried this code this morning and I get the same error
    Outlook.Folder newFolder = ouApplication.Session.OpenSharedFolder(calUrl, Type.Missing, Type.Missing, Type.Missing) as Outlook.Folder;
    calUrl is the URL that we are attempting to add to Outlook as a secondary calendar.
    What needs to be done to get this to work in Outlook 2013?

    Hello,
    What is the actual value passed to the
    OpenSharedFolder method?
    MSDN states the following:
    This method is used to access the following shared folder types:
    Webcal calendars (webcal://mysite/mycalendar)
    RSS feeds (feed://mysite/myfeed)
    Microsoft SharePoint Foundation folders (stssync://mysite/myfolder)
    iCalendar calendar (.ics) files
    vCard contact (.vcf) files
    Outlook message (.msg) files
    This method does not support iCalendar appointment (.ics) files. To open iCalendar appointment files, you can use theOpenSharedItem method
    of the NameSpace object.
    Be aware, you can use the GetSharedDefaultFolder method
    of the Namespace object to share default folders, such as the Inbox folder, in Exchange. Have you tried to use it instead?

  • Add different Colors to Calendar Overlay Settings color

    Dear All,
             I'm trying to show events on a calendar with different colors. The events are categorized based on Status field of
           Calendar list and I have two statuses. 1. Confirmed 2. Planning.
            When I create calendar overlays for two statues I'm only getting following colors.
            Dark Teal, Dark Blue, Dark Green, Olive Green, Red, Dark Purple Brown.   
     Can you please tell me how can I add some more different colors like yellow, sky blue to this drop down list.
            I referred this article
    http://davidlozzi.com/2012/01/26/color-code-your-sharepoint-calendar/
    Thanks,
    Dilip

    Hi,
    The colors are controlled by the css classes ms-acal-color1 to ms-acal-color9.
    You can override to the style as below, then add the style into a content editor web part in the calendar view.
    <style type="text/css">
    .ms-acal-color1{
    background-color:lime !important;
    </style>
    Here is a similar thread for your reference:
    https://social.msdn.microsoft.com/Forums/sharepoint/en-US/01159adf-7630-47ee-8938-b30bd0c37e83/any-way-to-customize-the-calendar-overlay-color-possibilities
    Best Regards
    Dennis Guo
    TechNet Community Support

  • Troubleshooting calendar overlay

    One of our groups has an outlook account for managing a shared calendar. They have set up a calendar overlay to display that account.
    When they visit that URL they get a blank calendar with this error message:
    An error occurred
    while making the HTTP request to
    https://theExchangeServer.us/EWS/Exchange.asmx.
    This could be due to the fact that the server certificate is not configured
    properly with HTTP.SYS in the HTTPS case. This could also be caused by a
    mismatch of the security binding between the client and the server.
    (4f60667e-ebe8-4f66-9ab3-e718ad4151ed)
    I don't recall setting up a security certificate on our SharePoint server - is that causing a problem when the users try to access the calendar?
    When I see the setup page for this in SharePoint, I don't see any place in the setup page where a password for the account would be provided. Since the users do not log on as the shared account, I am uncertain how SharePoint expects to get the information
    from the calendar?
    They configured the Outlook web access URL as
    https://theExchangeServer.us/owa/[email protected] .
    Is there something special that has to be in that URL to assist SharePoint in getting the information?
    Thank you for your help.

    So, I have been learning more about this - I am a bit surprised this whole thing is so complicated.
    I am trying, on a test machine, to configure a SP 2010 calendar overlay to display a static outlook account's calendar.
    When I try to do this, I get the error:
    Could not establish trust relationship for the SSL/TLS secure channel with authority
    'theExchangeServer.us'. (7aa5b55b-577d-4ec6-9598-293b92797966)
    When I searched the net, I found
    http://support.microsoft.com/kb/982982/en-us which tells me to
    > add a certificate file of the root certification authority (CA) for the Exchange server
    So I opened a tab in IE, went to the https url of our server, clicked on the IE locked pad lock, the certfication path there had only one certificate, selected details, pressed Copy to File, clicked on Next at the certificate export wizard welcome page >
    selected DER encoded binary X.509 , clicked Next > clicked Browse and selected a folder and entered the file name of root.cer > then clicked Save, Clicked Next > Finish.
    The certificate was read, but I continue to get the error above.
    Does anyone have additional things that I need to try to get this to work?

  • Open and Cleared Items

    Hi all
    We are currently busy finalising our FI-CA BW Data Modeling exercise - and in process to complete Dataflow documentation.
    We will make use of the standard open and cleared item extractors with enhancements on different levels. Some background on the requirements:
    - We will have to extract document types, divisions, dates, clearing reasons, contract account, Business Partner etc.. information to meet the requirements.
    - We will have to keep history for at least 26 months to produce the required management reports (very high number of data), and 'partition' the cubes on date level for both Cleared and Open Items.
    - Most of the reports display 13 months worth of billing/ payment figures. I.e. the report for the end of October show billings vs. payments for October 2006, September, August, July, ... to October 2005.
    - The requirement is that the report figures will not change from one month to the next (i.e. if I run the report for end of October - all figures from October 2006 to Oct 2005 will remain the same when I run the report for end of November). I.e. if reversals, transfers, returns etc. occur - these will be picked up in later months.
    - For the above requirement, we are looking at extracting open (end of month) and cleared items (for the specific monthly interval) on a monthly basis, and appending the data in the cubes. We will then always base the June figure in the report on the June month extraction (LAUFD/ LAUFI fields) and we will pick up any movement in the next month/s - i.e. July.
    Has anyone had these types of requirements before - to report on billings vs. payments, and report on history as described above. We would appreciate it if you could share your report requirements, and also design documents, especially the DataFlow documentation that we can look at as input to our design.

    We had a requirement to retrieve "aging of receiveables" by customer. Basically, it goes thru each record and depending on the due date places the amounts in the following buckets (example). 0-30 day Overdue, 31-60 days Overdue, 61-90 days overdue, 30+ days overdue, 60+ days overdue) etc all the way to 6+ years overdue.
    There are also cooresponding buckets for coming due analysis. For example, what is: 0-30 days coming due, 31-60 days coming due, 30+ days coming due, etc...
    To do this, first I needed to be able be able to produce an open items statement at any given time in the past. Now, this seems impossible because of how the items go from open to cleared all the time. And an item that was open one month ago, may not be open anymore.
    What I did was first remove any selections on item status. Then compare the posting date with teh key date in the past, if the posting date is less than or equal to the key date, keep the record.
    Then compare the clearing date with the key date. First, keep all that are #. (This keeps all records still open from that posting date/key date)
    Then, add another check for all items that were cleared after the key date (GT Key Date). This gives you the open items on that date.
    Hope that makes sense. Let me know if you want clarification.
    /smw

Maybe you are looking for

  • Error moving .me to iCloud

    Since hours I receive the following message from Apple's iCloud webiste: "Move Error We encountered a problem while moving your mail. You can try to move your account to iCloud again in a few hours. You can continue to use MobileMe" What kind of prob

  • Recovering anything from a dead ipod?

    I recently ran over my ipod (don't ask)...the screen is cracked internally, but there doesn't seem to be any other physical damage that I can see. I can hear the hard drive buzzing when I plug it into the USB port on my PC, but I'm not getting any re

  • How to remove 'My Printer' from XP 'System Tray' ?

    Installed MG3100 series Printer, and 'My Printer' appeared in the System Tray. Still want to use the printer, it works fine, but would like to remove icon link from the tray (scrnshot below). Possible ?

  • Cube Processing approach when Process only the Current Partition?

    Could you validate my SSAS Processing strategy for the given scenarios:<o:p></o:p> Background about cube and data:<o:p></o:p> A Sales cube has Partitions for each year for "Sales" Measure Group and it associated with dimensions "Product" and "Sales R

  • Startup Error in WLS5.1

    Running WLS5.1, sp3, on NT4 sp5.           I defined the cookie web application from the examples directory in           weblogic.properties:           weblogic.httpd.webApp.cookie=g:\\weblogic\\examples\\webapp\\cookie           (also tried relative