Event Management Programme in SharePoint 2013

What is the possibility of creating Event Management Programme in SharePoint 2013 similar to eventbrite ?
https://www.eventbrite.com/

Hi,
According to your description, my understanding is that you want to implement the event management in SharePoint 2013.
I suggest you can use event management site template to achieve it.
Here is a detailed article for your reference:
SharePoint Event Management Configuration
Thanks
Best Regards,
Jerry Guo 
TechNet Community Support
Please remember to mark the replies as answers if they help, and unmark the answers if they provide no help. If you have feedback for TechNet Support, contact
[email protected]

Similar Messages

  • Workflow Manager 1.0 (SharePoint 2013): The process was terminated due to an unhandled exception

    I am seeing large numbers of the following errors appearing in the event log of the SharePoint 2013 application server hosting Workflow Manager 1.0:
    Log Name: Application
    Source: Application Error
    Date: [Date/Time]
    Event ID: 1000
    Task Category: (100)
    Level: Error
    Keywords: Classic
    User: N/A
    Computer: [Application Server]
    Description:
    Faulting application name: Microsoft.Workflow.ServiceHost.exe, version: 1.0.20922.0, time stamp: 0x505e1b24
    Faulting module name: KERNELBASE.dll, version: 6.2.9200.16864, time stamp: 0x531d34d8
    Exception code: 0xe0434352
    Fault offset: 0x0000000000047b8c Faulting process id: 0x691c Faulting application start time: 0x01cfc2776b3f0d74
    Faulting application path: C:\Program Files\Workflow Manager\1.0\Workflow\Artifacts\Microsoft.Workflow.ServiceHost.exe
    Faulting module path: C:\Windows\system32\KERNELBASE.dll Report Id: b8157bf8-2e6a-11e4-9413-00155d38891d Faulting package full name:
    Faulting package-relative application ID: Event Xml:
    Log Name: Application
    Source: .NET Runtime
    Date: [date/time]
    Event ID: 1026
    Task Category: None
    Level: Error
    Keywords: Classic
    User: N/A
    Computer: [same application server]
    Description:
    Application: Microsoft.Workflow.ServiceHost.exe Framework Version: v4.0.30319 Description: The process was terminated due to an unhandled exception. Exception
    Info: Microsoft.Workflow.Common.FatalException Stack: at Microsoft.Workflow.Common.Fx+<>c__DisplayClass2.<failfast>b__0() at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object,
    Boolean) at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean) at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)
    at System.Threading.ThreadHelper.ThreadStart()
    Event Xml:
    Log Name: System
    Source: Service Control Manager
    Date: [date/time]
    Event ID: 7031
    Task Category: None
    Level: Error
    Keywords: Classic
    User: N/A
    Computer: [Same application server]
    Description:
    The Workflow Manager Backend service terminated unexpectedly. It has done this 895 time(s). The following corrective action will be taken in 30000 milliseconds: Restart the service.
    Event Xml:
    The SharePoint 2013 farm is updated through the September 2014 PU (KB2995902).  Topology: 1 App, 2 WFEs.  Workflow Manager 1.0 installed to the App server.  Workflow Manager 1.0 cumulative updates one
    and two have not been installed.  The Service Bus Gateway and Service Bus Message Broker services are started.  The Workflow Manager Backend service can be started, but then quickly stops.
    Thoughts?  Resolution?  I would be grateful for any assistance.

    Hi Stephan,
    As I understand, you are encountering the issue that Workflow Manager Backend service terminating each time. May I know did you run the update cmdlets after you installed the updates for SharePoint server 2013? Please confirm it per the link below:
    http://technet.microsoft.com/en-us/library/dn133867.aspx
    If you haven’t run the updates cmdlets, I suspect this is an install issue. I’d suggest you re-install workflow manager to resolve the issue:
    1) Leave WFM/SB Farm
    2) Uninstall updates and application in the following order and one at a time:
    Service Bus CU1
    Workflow Manager CU1
    Service Bus 1.0
    Workflow Manager 1.0
    Workflow Manager Client 1.0
    Microsoft Windows Fabric
    3) Log into SQL server and delete Service Bus and Workflow Manager databases.
    SBManagementDB
    SBGatewayDB
    SBMessageContainer01
    WFManagementDB
    WFInstanceManagementDB
    WFResourceManagementDB
    4) Install in the following order one at a time through Web Platforms Installer:
    Workflow Manager 1.0
    Service Bus 1.0 CU1
    Workflow Manager 1.0 CU1
    Regards,
    Rebecca Tu
    TechNet Community Support

  • Employee Performance Management System on SharePoint 2013

    How can I create a simple Employee Performance Management System on SharePoint 2013?

    Hi AnTiiika,
    You question is a very open ended one, there are too many features that you have consider, without knowing your requirement it would be hard to answer.
    you can consider the following OOTB features of SharePoint to start with-
    Use SharePoint enterprise features -
    http://technet.microsoft.com/en-us/sharepoint/fp142374.aspx
    SharePoint BI -
    http://technet.microsoft.com/en-us/library/jj542395(v=office.15).aspx
    http://technet.microsoft.com/en-us/sharepoint/fp142398.aspx
    http://office.microsoft.com/en-us/sharepoint-help/create-and-use-a-report-or-a-scorecard-HA102772329.aspx
    Lists to store and manage data
    External content type if you want to access data from outside SharePoint like SQL Server or other external datastore
    http://msdn.microsoft.com/en-us/library/office/jj163139(v=office.15).aspx
    Excel services
    http://office.microsoft.com/en-us/sharepoint-server-help/business-intelligence-in-excel-and-excel-services-sharepoint-server-2013-HA102915300.aspx?CTT=5&origin=HA102772329
    PerformancePoint
    http://technet.microsoft.com/en-us/library/jj571736(v=office.15) 
    Reporting services
    http://technet.microsoft.com/library/bb522712.aspx
    for code approach -
    http://msdn.microsoft.com/en-us/office/dn448478.aspx
    http://sharepointdemobuilds.codeplex.com/
    http://msdn.microsoft.com/en-us/library/office/jj163140(v=office.15).aspx
    you can also consider new App model and develop apps using CSOM/JSOM/REST API for list based CRUD operations or for dashboards-
    http://code.msdn.microsoft.com/office/SharePoint-2013-Create-a-20a03d84
    Hope this helps!
    Ram - SharePoint Architect
    Blog - SharePointDeveloper.in
    Please vote or mark your question answered, if my reply helps you

  • Setting up a Document management system in SharePoint 2013

    Hello All,
    I have come across a scenario where Customer needs a Document management system for their organization.
    They want to keep the documents of different departments like sales, HR,Finace in corresponding folders and want to include a workflow for approval of the Documents. Also, Documents related to particular department can be modified or added by users in that
    department.
    I thought of creating a seperate site collection for this purpose & document libraries of each department, setting up the permission on document library level. Is this a correct approach?
    I am new to Enterprise content management system of sharepoint. Can anybody give me a guidance on this how to get started.
    Regards
    Vishnu
    dfd

    Creating separate site collection for each department will help you scale and grow better and easier to group SharePoint sites together.
    Refer to the following articles which will give you an idea about the plan you should do before building a Document management system 
    http://technet.microsoft.com/en-us/library/cc263267.aspx
    http://blogs.msdn.com/b/sgoodyear/archive/2009/07/25/determining-between-sharepoint-site-collections-and-sub-sites.aspx
    http://atinkerersnotebook.com/2013/10/02/creating-your-own-document-management-system-with-sharepoint/
    http://community.dynamics.com/ax/b/tinkerersnotebook/archive/2013/10/02/creating-your-own-document-management-system-with-sharepoint.aspx
    --Cheers

  • Dependencies on the App Management Service in SharePoint 2013

    Looking for a listing of services or features in SharePoint 2013 that are dependent on the App Management Service Application being provisioned...
    Anyone have a good list of what those are or could provide me one here? I want to make sure i'm not overlooking something as i weigh the pro's and con's of setting this service up.

    I'm not aware of a list of other services that are dependant on the App Management service.
    My understanding is there aren't other out of the box services that depend on it. Update: Good news, I'm wrong :)
    The Hybrid topologies (Search, BCS, Duet) between SharePoint Server 2013 and SharePoint Online do require the app management service so if you're condsidering these then you'll want to configure it.
    If you're not using apps for SharePoint then you probably do not have a need to configure the service at this time.
    Jason Warren
    @jaspnwarren
    jasonwarren.ca
    habaneroconsulting.com/Insights

  • How to set master page for Wildcard inclusion Managed path in Sharepoint 2013

    I am using sharepoint 2013. I created mysite in root level for newsfeed. Also i included wildcard inclusion managed path named as
    my. If i am clicking newsfeed the page url is http://webapplication:port/
    if  i am clicking sites the page url is http://webapplication:port/my/CURRENTUSERNAME/Social/Sites.aspx#IsEditing_WPQ4=1.
    I can apply master page for newsfeed site using sharepoint designer. But i cant apply for
    my path.
    If am opening http://webapplication:port/my/vijay in designer i can change the master page. But my requirement is to apply master page for http://webapplication:port/my
    for all users have same master page.
    How to solve this . Thanks in advance.

    You need to update the mysitehost masterpage. all master pages are created as mysitehost template.
    Here is how you do it. 
    Create a site collection with template as mysitehost
    Modify the mysitehost masterpage
    Once it is done, update the mysitehost in user profile service application
    If this helped you resolve your issue, please mark it Answered

  • Unable to mail-enable a document library when using Directory Management Service in SharePoint 2013

    I'm not able to mail-enable a library document while Directory Management Service is enabled. This behavior only happens when Directory Management Service is turned on.
    Correlation ID: a8c7b29c-d193-90b5-ae14-64cd1143445f
    Note that I have the OU created and permissions setup properly according to MS official documentation.

    Hi,
    According to your post, my understanding is that you failed to mail-enable a library document while Directory Management Service is enabled.
    Please make sure you configure the incoming email correctly.
    For more information, you can refer to:
    https://hosting.intermedia.net/support/kb/default.asp?id=2439
    http://davecoleman146.com/2010/10/20/how-to-setup-mail-enabled-document-libraries-in-sharepoint-2010-part-1/
    If so and the error message persists, please check the SharePoint ULS log to find more information about this error, the ULS log file is in the location: C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\15\LOGS
    You can check the ULS log by the methods here:
    http://blog.credera.com/technology-insights/microsoft-solutions/troubleshooting-sharepoint-errors/
    Best Regards,
    Linda Li
    Linda Li
    TechNet Community Support

  • Create Root Web for Wildcard exclusion Managed path in SharePoint 2013

    Hi,
    I have some hundreds of site collections in a web application under a managed path which is wildcard inclusion.
    For ex :  https://demo2013.com/sites/siteA, https://demo2013.com/sites/siteB, https://demo2013.com/sites/siteC and so on.
    In SharePoint we cant create root web for the wildcard inclusion Managed path. But i need to create a site collection at the root for the managed path sites.
    Is there any other way to create that?
    Any help is highly appreciated.

    so you're generally aware of a very NECESSARY technical requirement.
    You cannot have a managed path that is both explicit (and allows a site collection to exist at the path) AND wildcard (allowing site collections at child URLs).
    It's a performance issue... when the URL is detected, it needs to either check the site collections (wildcard), or find the parent site collection and dig into sites/subsites (explicit).
    Additionally, there would be HUGE concerns if you create similarly URL'ed subsites.
    Accept the technical restriction, and design an Information Architecture that is not hampered by said restrictions.
    Scott Brickey
    MCTS, MCPD, MCITP
    www.sbrickey.com
    Strategic Data Systems - for all your SharePoint needs

  • Show 2 level hierarchy in Managed Navigation menu(Current Navigation) in SharePoint 2013

    We have enabled Managed Navigation in SharePoint 2013 Publishing Site. Now when a user browses a page we want to show the current page siblings are its parent links in the Managed Navigation. Right now its showing only current page siblings in managed navigation.
    Is there any way to show current page parent links in Managed Navigation menu?
    For example I have a term set enabled for managed navigation with following terms:
    Level1
        Level 1.1
            Level 1.1.1
            Level 1.1.2
            Level 1.1.3
    Level 2
        Level 2.1
            Level 2.1.1
    Level 3
        Level 3.1
    Level 4
        Level 4.1 
    Now if a user is on page Level1.1.1 then Current Navigation should show following hierarchy in using Managed Navigation :
    Level 1.1
        Level 1.1.1 -> This node will be shown as selected
        Level 1.1.2
        Level 1.1.3
    Level 2.1
    Level 3.1
    Level 4.1
    Is the above behaviour possible by doing any out of box configuration or using SharePoint designer?
    Thanks,
    Anna Jhaveri

    Ha i was given the same task by my client but they wanted it to be done in client side rather than creating new user control and inheriting from actual control.
    i used Jquery and css to achieve staticlevel 3+  left navigation in sharepoint 2013. first of all let me explain the structure i had created.
    HR department
     -->Level 1
    ---->Level 1.1
    ------>Level 1.1.1
    ------>Level 1.1.2
    -->Level 1.2
     (same as above structure)
    all i did was setting up the staticlevel ="2" and dynamiclevel="3"
    so this would make left navigation with two level  and remaining of its sub sites as flyouts
    Part-1:
    so i used Js to convert all the flyout(dynamic class ) to static $(function(){  
    $("ul.dynamic").removeClass('dynamic').addClass('static');$(".dynamic").removeClass('dynamic').addClass('static');  $(".static").removeClass('dynamic-children'); $("#zz12_RootAspMenu > li:nth-child(n) > ul").removeClass('dynamic-children');
    $("leftnavigation ID"> li:nth-child(n) > ul > li.static > ul").removeClass('dynamic-children');              $("leftnavigation ID" > li:nth-child(n) > ul > li.static > ul > li:nth-child(n) > ul").removeClass('dynamic-children')
    $(".ms-navedit-flyoutArrow").removeClass('dynamic-children').removeClass('ms-navedit-flyoutArrow');
    by using this script all the dynamic classes get convert to static. after getting rid of classes call "dynamic" and "dynamic-children"
    second part :
    now we have convert all the dynamic level to static (just look wise) but functionally  its behaviors is like flyout menu items.so the following js adds the static behavior classes so it just functions like static menu
    $(function()
    var path = window.location.pathname;
    path = path.replace(/\/$/, "");
    path = decodeURIComponent(path)
    $("left nav ID" > li > ul > li.static.selected > ul > li > a").each(function () {
    var href = $(this).attr('href');
    if (path.substring(0, href.length) === href)
    $(this).closest('li').addClass('selected');
    $(this).removeClass('ms-core-listMenu-selected').addClass('selected').addClass('ms-core-listMenu-selected');
    else
    $(this).closest('li').removeClass('selected');
    $(this).removeClass('selected').removeClass('ms-core-listMenu-selected');
    How above code works:
    it  takes the url path of current page and compare it with the all the anchor elements href ,so when it finds the match it would go insert the static level class  like "selected" in the <li> and "ms-core-listMenu-selected" in the <a>
    tag so  they function like static.
    so i have done it for 4 levels so i had to put one more function as shown above to target and read <a> tag href values for 4th level and compare it with current page url.
    i didn't explain in detail in here, i'll be writing up again on this issue on  my blog with screen captures soon.
    Till then you can leave comments and questions.
    Disadvantage :this doest work if you have anything listed other then Subsites(pages,list,libraries) in left navigation.

  • Steps to configure Information Rights Management in SharePoint 2013 On-Premise

    Hi,
    What are the steps to configure Information Rights Managment [IRM] on SharePoint 2013 On-Premise.
    Regards,

    2. PHases
    1. you will have to configure a IRM server
    2. You will have to integrate IRM iwth sp server. 
    Below article should explain all
    http://msmvps.com/blogs/ivansanders/archive/2012/06/08/check-out-the-weather-forecast-for-teched-2012.aspx

  • What is the use of custom properties for terms in term store management of SharePoint 2013

    Hi All,
    Can some one pls explain what is the purpose of custom properties for terms in term store management tool of SharePoint 2013.
    In general, for each term we have shared and local properties. What is the real purpose in terms of SharePoint development.
    Please share with possible scenarios. Does it refer's to a hierarchical metadata in SharePoint ?
    Thanks keshav,Share point Developer

    The custom properties for terms allow you to further define or clarify a term via the properties. You can then display these properties in search results or specify query rules that look for specific custom properties.
    Here is an example of how to create a query rule using custom properties:
    http://social.technet.microsoft.com/Forums/sharepoint/en-US/a8b53ffe-869e-4c86-8c43-d239370ee7d5/custom-properties-of-the-managed-metadata-service?forum=sharepointgeneral
    Here is an example that uses code to verify that a custom property exists on a term object that is pinned to another term object:
    http://msdn.microsoft.com/en-us/library/jj163273.aspx#SP15_H2UseCodeToPinTerms_CodeVerifyCustomProperty
    Doug Hemminger http://www.sharepointdoug.com

  • Error when click Manage in Business Data Connectivity Service Sharepoint 2013

    Dear all,
    In Sharepoint central administration, I click manage service applications. Then, I click New > Business Data Connectivity Service. After create new Business Data Connectivity Service, when I click Manage to manage this new Business Data Connectivity Service,
    there is error "Cannot complete this action as the Business Data Connectivity Shared Service is not responding. Please contact your administrator." In event viewer, there is error ""The BDC Service application is not accessible. The full
    exception text is : The HTTP request is unauthorized with client authentication scheme 'Negotiate'. The authentication header received from the server was 'NTLM'.
    I have tried to delete and create the BDC Service application, but it still did not work. I have tried to restart BDC Service and do iisreset, but it still did not work.
    Please help. Thank you.
    Best regards,
    Johanna

    Hi,
    According to your post, my understanding is that you get an issue about the Business Data Connectivity Service.
    To quickly and accurately find the issue, I recommend you can check the event log and ULS log to see if anything unexpected occurred.
    For SharePoint 2013, by default, ULS log is at
    C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\15\LOGS
    You can check the ULS log by the methods here:
    http://blogs.msdn.com/b/opal/archive/2009/12/22/uls-viewer-for-sharepoint-2010-troubleshooting.aspx
    http://msdn.microsoft.com/en-us/library/gg193966(v=office.14).aspx
    Thanks & Regards,
    Jason
    Jason Guo
    TechNet Community Support

  • Upgrade SharePoint 2013 SP1 to CU Mar 2015 with Workflow Manager

    Hi Guys,
    I've tried upgrading SharePoint 2013 SP1 Farm to latest package of CU Mar 2015 today, I've been able to do so and ran PCW and everything seems ok at first glance.. except I have Workflow Manager 1.1. which was also configured on the same server and I was
    using it to run my SP 2013 Workflows. Problem is now I can't trigger any of my Workflows.
    Grateful if you could advise.
    Thanks and Regards,
    Rhyan

    Hi Rhyan,
    After you install the updates and run configuration wizard, please check if rebooting server could help.
    For troubleshooting the issue, we can check ULS log (may need verbose level) for more detailed information generated when we perform workflow trigger and issue occurs.
    https://technet.microsoft.com/en-us/library/ee748656.aspx
    http://summit7systems.com/sharepoint-2013-troubleshooting-guide/
    And also check Event Viewer to see if there are some related errors.
    Thanks
    Daniel Yang 
    TechNet Community Support
    Please remember to mark the replies as answers if they help, and unmark the answers if they provide no help. If you have feedback for TechNet Support, contact
    [email protected]

  • SharePoint 2013 event receiver error

    I am currently working on a SharePoint online project. I am facing a strange issue. My code generates 6 documents
    in 6 different document libraries along with other metadata. When I save data to a List, the event receiver fires and creates all the 6 documents. But sometimes it stops creating the 6 documents and left with 1 or 2 documents. Sometimes documents has been
    created but without any metadata. The same code is working fine in my on-premises environment, but it sometimes breaks in the Office 365 environment. I also created a log list to track the issue as we cannot debug in Office 365. In the log list I found a error
    message saying "Thread was being aborted." Below is my code. please help it is happening only in Office 365 environment.
    using Microsoft.SharePoint;
    /// <summary>
    /// List Item Events
    /// </summary>
    public class ExcelGenReceiver : SPItemEventReceiver
    /// <summary>
    /// The template URL
    /// </summary>
    private const string TemplateUrl = "/Quotation Analysis Electrical/Forms/Quotation Analysis Sheet ELEC_Blank.xlsm";
    /// <summary>
    /// The template url1
    /// </summary>
    private const string TemplateUrl1 = "/Quotation Analysis Mechanical/Forms/Quotation Analysis Sheet MECH_Blank.xlsm";
    /// <summary>
    /// The template url2
    /// </summary>
    private const string TemplateUrl2 = "/TenderSummaryLib/Forms/TenderSummaryBlankMaster1.xlsm";
    /// <summary>
    /// The RFI template URL
    /// </summary>
    private const string RfiTemplateUrl = "/EstimatingRFI/Forms/RFI Schedule MASTER.docx";
    /// <summary>
    /// The drawing template URL
    /// </summary>
    private const string DrawingTemplateUrl = "/Tender and Drawing Schedule/Forms/Tender Document Drawing Schedule.docx";
    /// <summary>
    /// The tender return template URL
    /// </summary>
    private const string TenderReturnTemplateUrl = "/Est_Tender_Pricing_Document/Forms/Tender Pricing Document blank.xlsm";
    /// <summary>
    /// The project number
    /// </summary>
    private string projectNumber = string.Empty;
    /// <summary>
    /// The project name
    /// </summary>
    private string projectName = string.Empty;
    /// <summary>
    /// The no bid
    /// </summary>
    private string noBid;
    /// <summary>
    /// The team
    /// </summary>
    private string team;
    /// <summary>
    /// The description
    /// </summary>
    private string description;
    /// <summary>
    /// The status
    /// </summary>
    private string status;
    /// <summary>
    /// The electrical
    /// </summary>
    private SPUser electrical;
    /// <summary>
    /// The mechanical
    /// </summary>
    private SPUser mechanical;
    /// <summary>
    /// The document date
    /// </summary>
    private DateTime? docDate;
    /// <summary>
    /// The tender received
    /// </summary>
    private DateTime? tenderReceived;
    /// <summary>
    /// The tender return
    /// </summary>
    private DateTime? tenderReturn;
    /// <summary>
    /// The pre construction program start date
    /// </summary>
    private DateTime? preConstructionProgramStart;
    /// <summary>
    /// The pre construction program end date
    /// </summary>
    private DateTime? preConstructionProgramEnd;
    /// <summary>
    /// The sector
    /// </summary>
    private string sector;
    /// <summary>
    /// The design build
    /// </summary>
    private string designBuild;
    /// <summary>
    /// The build type
    /// </summary>
    private string buildType;
    /// <summary>
    /// The service program start date
    /// </summary>
    private DateTime? serviceProgramStart;
    /// <summary>
    /// The service program completion date
    /// </summary>
    private DateTime? serviceProgramCompletion;
    /// <summary>
    /// The client1
    /// </summary>
    private string client1;
    /// <summary>
    /// The client2
    /// </summary>
    private string client2;
    /// <summary>
    /// The client3
    /// </summary>
    private string client3;
    /// <summary>
    /// The client4
    /// </summary>
    private string client4;
    /// <summary>
    /// The consultant
    /// </summary>
    private string consultant;
    /// <summary>
    /// An item is being added.
    /// </summary>
    /// <param name="properties">The Item Event properties</param>
    public override void ItemAdded(SPItemEventProperties properties)
    //this.EventFiringEnabled = false;
    var web = properties.Web;
    var listItem = properties.ListItem;
    try
    LogIssue(web, null, "Item Added", "List Item Id {0}", listItem.ID);
    if (!this.AttemptCopyProcess(listItem))
    LogIssue(web, null, "List Id : " + listItem.ID, "AttemptCopyProcess failed.");
    catch (Exception ex)
    LogIssue(web, ex, "List Id : " + listItem.ID, "AttemptCopyProcess failed.");
    finally
    //this.EventFiringEnabled = true;
    LogIssue(web, null, "List Id : " + listItem.ID, "Event Receiver completed sucessfully.");
    /// <summary>
    /// Logs any issues found
    /// </summary>
    /// <param name="webContext">The web context.</param>
    /// <param name="exception">The exception, if null not exception details are written</param>
    /// <param name="contextId">The context identifier, a unique identifier that allows us to know where the call originated, i.e. a List and ListItem Id, or a Page Url</param>
    /// <param name="comment">The comment.</param>
    /// <param name="args">The arguments.</param>
    private static void LogIssue(SPWeb webContext, Exception exception, string contextId, string comment, params object[] args)
    //// if (webContext.AllProperties.ContainsKey("EnableLogging"))
    var list = webContext.Lists.TryGetList("ErrorIssues");
    if (list != null)
    var item = list.AddItem();
    item["Title"] = contextId;
    if (exception != null)
    item["Message"] = exception.Message;
    item["InnerException"] = exception.InnerException ?? (object)string.Empty;
    item["StackTrace"] = exception.StackTrace;
    if (!string.IsNullOrEmpty(comment))
    item["Comment"] = string.Format(comment, args);
    item.Update();
    /// <summary>
    /// Assigns the field.
    /// </summary>
    /// <param name="listItem">The list item.</param>
    /// <param name="fieldName">Name of the field.</param>
    /// <param name="contextId">The context identifier.</param>
    /// <returns>The fields string value if present, otherwise string.empty.</returns>
    private static string AssignField(SPListItem listItem, string fieldName, string contextId)
    var fieldValue = string.Empty;
    if (listItem.Fields.ContainsField(fieldName) && listItem[fieldName] != null)
    fieldValue = listItem[fieldName].ToString();
    else
    LogIssue(listItem.Web, null, contextId, string.Format("Field not available : {0}", fieldName));
    return fieldValue;
    /// <summary>
    /// Assigns the field as a DateTime
    /// </summary>
    /// <param name="listItem">The list item.</param>
    /// <param name="fieldName">Name of the field.</param>
    /// <param name="contextId">The context identifier.</param>
    /// <returns>Returns the date if found, otherwise returns DateTime.MinValue</returns>
    private static DateTime? AssignDateField(SPListItem listItem, string fieldName, string contextId)
    DateTime? fieldValue = null;
    if (listItem.Fields.ContainsField(fieldName) && listItem[fieldName] != null)
    fieldValue = Convert.ToDateTime(listItem[fieldName].ToString());
    else
    LogIssue(listItem.Web, null, contextId, string.Format("Field not available : {0}", fieldName));
    return fieldValue;
    /// <summary>
    /// Creates the folder.
    /// </summary>
    /// <param name="listdoc">The list.</param>
    /// <param name="folderName">Name of the folder.</param>
    private static void CreateFolder(SPList listdoc, string folderName)
    LogIssue(listdoc.ParentWeb, null, "List Id : " + listdoc.ID, "Creating folder {0} in {1}", folderName, listdoc.RootFolder.ServerRelativeUrl);
    // Updated by Indusnet
    SPListItem folder1 = listdoc.Items.Add(listdoc.RootFolder.ServerRelativeUrl, SPFileSystemObjectType.Folder);
    folder1["Name"] = folderName;
    folder1.Update();
    listdoc.Update();
    // End Updated
    /// <summary>
    /// Assigns the user field.
    /// </summary>
    /// <param name="listItem">The list item.</param>
    /// <param name="fieldName">Name of the field.</param>
    /// <param name="contextId">The context identifier.</param>
    /// <returns>Returns the user if found, otherwise null.</returns>
    private static SPUser AssignUserField(SPListItem listItem, string fieldName, string contextId)
    SPUser user = null;
    if (listItem.Fields.ContainsField(fieldName) && listItem[fieldName] != null)
    var userField = (SPFieldUser)listItem.Fields.GetField(fieldName);
    var fieldValue = (SPFieldUserValue)userField.GetFieldValue(listItem["electrical_proj_manager"].ToString());
    user = fieldValue.User;
    else
    LogIssue(listItem.Web, null, contextId, string.Format("Field not available : {0}", fieldName));
    return user;
    /// <summary>
    /// Attempts the copy process.
    /// </summary>
    /// <param name="listItem">The list item.</param>
    /// <returns>True if it successfully processed, false otherwise.</returns>
    private bool AttemptCopyProcess(SPListItem listItem)
    if (listItem.ParentList.Title != "Enquiry_Template")
    LogIssue(listItem.Web, null, "List Id : " + listItem.ID, "ListItem titles is not Enquiry_Template, aborting.");
    return false;
    var finalNum = "15-" + new Random().Next(0, 9999).ToString("D4");
    this.Initialize(listItem, finalNum);
    if (this.noBid != "Yes")
    LogIssue(listItem.Web, null, "List Id : " + listItem.ID, "The noBid field does not equal Yes, aborting.");
    return false;
    this.CopyFiles(listItem.Web, finalNum);
    this.CreateFolders(listItem.Web);
    return true;
    /// <summary>
    /// Copies the files.
    /// </summary>
    /// <param name="web">The web.</param>
    /// <param name="finalNum">The final number.</param>
    private void CopyFiles(SPWeb web, string finalNum)
    LogIssue(web, null, "Web Id : " + web.ID, "Setting the copying of files ...");
    var mechanicalQuoteList = web.Lists["Quotation Analysis Mechanical"];
    var electricalQuoteList = web.Lists["Quotation Analysis Electrical"];
    var tenderSummarList = web.Lists["TenderSummaryLib"];
    var estimatingList = web.Lists["EstimatingRFI"];
    var tenderSheduleList = web.Lists["Tender and Drawing Schedule"];
    var tenderPricingList = web.Lists["Est_Tender_Pricing_Document"];
    var url1 = mechanicalQuoteList.RootFolder.ServerRelativeUrl;
    var url = electricalQuoteList.RootFolder.ServerRelativeUrl;
    var url2 = tenderSummarList.RootFolder.ServerRelativeUrl;
    var urlA = estimatingList.RootFolder.ServerRelativeUrl;
    var urlB = tenderSheduleList.RootFolder.ServerRelativeUrl;
    var urlC = tenderPricingList.RootFolder.ServerRelativeUrl;
    var foldername1 = string.Empty;
    var foldername = string.Empty;
    var foldername2 = string.Empty;
    var foldernameA = string.Empty;
    var foldernameB = string.Empty;
    var foldernameC = string.Empty;
    var folder1 = web.Folders[url1 + "/" + foldername1];
    var folder = web.Folders[url + "/" + foldername];
    var folder2 = web.Folders[url2 + "/" + foldername2];
    var folderA = web.Folders[urlA + "/" + foldernameA];
    var folderB = web.Folders[urlB + "/" + foldernameB];
    var folderC = web.Folders[urlC + "/" + foldernameC];
    if (!folder1.Exists && !folder.Exists && !folder2.Exists && !folderA.Exists && !folderB.Exists && !folderC.Exists)
    var folders1 = web.GetFolder(url1).SubFolders;
    var folders = web.GetFolder(url).SubFolders;
    var folders2 = web.GetFolder(url2).SubFolders;
    var foldersA = web.GetFolder(urlA).SubFolders;
    var foldersB = web.GetFolder(urlB).SubFolders;
    var foldersC = web.GetFolder(urlC).SubFolders;
    folders1.Add(foldername1);
    folders.Add(foldername);
    folders2.Add(foldername2);
    foldersA.Add(foldernameA);
    foldersB.Add(foldernameB);
    foldersC.Add(foldernameC);
    var file1 = web.GetFile(web.Site.Url + TemplateUrl1);
    var file = web.GetFile(web.Site.Url + TemplateUrl);
    var file2 = web.GetFile(web.Site.Url + TemplateUrl2);
    var fileA = web.GetFile(web.Site.Url + RfiTemplateUrl);
    var fileB = web.GetFile(web.Site.Url + DrawingTemplateUrl);
    var fileC = web.GetFile(web.Site.Url + TenderReturnTemplateUrl);
    if (file1 != null && file != null && file2 != null && fileA != null && fileB != null && fileC != null)
    var fileName = string.Format("{0}/{1}{2}", folder1.ServerRelativeUrl, this.projectName, ".xlsm");
    LogIssue(web, null, "Web Id : " + web.ID, "Copying file 1 {0} to {1}...", file1.Name, fileName);
    var byteArray1 = file1.OpenBinary();
    var uploadedFile1 = folder1.Files.Add(fileName, byteArray1, true);
    LogIssue(web, null, "Web Id : " + web.ID, "File 1 Uploaded with new ID of {0}", uploadedFile1.Item.ID);
    this.EventFiringEnabled = false;
    var listitem1 = uploadedFile1.Item;
    listitem1["Name"] = this.projectName;
    listitem1["EnquiryNo"] = finalNum;
    listitem1["Project_Name"] = this.projectName;
    listitem1["Tender_Received"] = this.tenderReceived;
    listitem1["Tender_Return"] = this.tenderReturn;
    listitem1["Quotation_Analysis_Mech_Url"] = "https://groupportal.sharepoint.com/sites/EnginSouth/Quotation%20Analysis%20Mechanical/Forms/DispForm.aspx?ID=" + listitem1.ID;
    listitem1.SystemUpdate(false);
    this.EventFiringEnabled = true;
    LogIssue(web, null, "Web Id : " + web.ID, "Copied file 1.");
    fileName = string.Format("{0}/{1}{2}", folder.ServerRelativeUrl, this.projectName, ".xlsm");
    LogIssue(web, null, "Web Id : " + web.ID, "Copying file 2 {0} to {1}...", file.Name, fileName);
    var byteArray = file.OpenBinary();
    var uploadedFile = folder.Files.Add(fileName, byteArray, true);
    LogIssue(web, null, "Web Id : " + web.ID, "File 2 Uploaded with new ID of {0}", uploadedFile.Item.ID);
    this.EventFiringEnabled = false;
    var listitem = uploadedFile.Item;
    listitem["Name"] = this.projectName;
    listitem["EnquiryNo"] = finalNum;
    listitem["Project_Name"] = this.projectName;
    listitem["Tender_Received"] = this.tenderReceived;
    listitem["Tender_Return"] = this.tenderReturn;
    listitem["Quotation_Analysis_Elec_Url"] = "https://groupportal.sharepoint.com/sites/EnginSouth/Quotation%20Analysis%20Electrical/Forms/DispForm.aspx?ID=" + listitem.ID;
    listitem.SystemUpdate(false);
    this.EventFiringEnabled = true;
    LogIssue(web, null, "Web Id : " + web.ID, "Copied file 2.");
    fileName = string.Format("{0}/{1}{2}", folderA.ServerRelativeUrl, this.projectName, ".docx");
    LogIssue(web, null, "Web Id : " + web.ID, "Copying file 3 {0} to {1}...", fileA.Name, fileName);
    var byteArrayA = fileA.OpenBinary();
    var uploadedFileA = folderA.Files.Add(fileName, byteArrayA, true);
    LogIssue(web, null, "Web Id : " + web.ID, "File 3 Uploaded with new ID of {0}", uploadedFileA.Item.ID);
    this.EventFiringEnabled = false;
    var listitemA = uploadedFileA.Item;
    listitemA["Name"] = this.projectName;
    listitemA["EnquiryNo"] = finalNum;
    listitemA["Project_Name"] = this.projectName;
    listitemA["Date"] = this.docDate;
    listitemA["Description"] = this.description;
    listitemA["ProjectNo"] = this.projectNumber;
    listitemA["RFIUrl"] = "https://groupportal.sharepoint.com/sites/EnginSouth/EstimatingRFI/Forms/DispForm.aspx?ID=" + listitemA.ID;
    listitemA.SystemUpdate(false);
    this.EventFiringEnabled = true;
    LogIssue(web, null, "Web Id : " + web.ID, "Copied file 3.");
    fileName = string.Format("{0}/{1}{2}", folderB.ServerRelativeUrl, this.projectName, ".docx");
    LogIssue(web, null, "Web Id : " + web.ID, "Copying file 4 {0} to {1}...", fileB.Name, fileName);
    var byteArrayB = fileB.OpenBinary();
    var uploadedFileB = folderB.Files.Add(fileName, byteArrayB, true);
    LogIssue(web, null, "Web Id : " + web.ID, "File 4 Uploaded with new ID of {0}", uploadedFileB.Item.ID);
    this.EventFiringEnabled = false;
    var listitemB = uploadedFileB.Item;
    listitemB["Name"] = this.projectName;
    listitemB["EnquiryNo"] = finalNum;
    listitemB["Project_Name"] = this.projectName;
    listitemB["Date"] = this.docDate;
    listitemB["Description"] = this.description;
    listitemB["ProjectNo"] = this.projectNumber;
    listitemB["DrawingURL"] = "https://groupportal.sharepoint.com/sites/EnginSouth/Tender%20and%20Drawing%20Schedule/Forms/DispForm.aspx?ID=" + listitemB.ID;
    listitemB.SystemUpdate(false);
    this.EventFiringEnabled = true;
    LogIssue(web, null, "Web Id : " + web.ID, "Copied file 4.");
    fileName = string.Format("{0}/{1}{2}", folderC.ServerRelativeUrl, this.projectName, ".xlsm");
    LogIssue(web, null, "Web Id : " + web.ID, "Copying file 5 {0} to {1}...", fileC.Name, fileName);
    var byteArrayC = fileC.OpenBinary();
    var uploadedFileC = folderC.Files.Add(fileName, byteArrayC, true);
    LogIssue(web, null, "Web Id : " + web.ID, "File 5 Uploaded with new ID of {0}", uploadedFileC.Item.ID);
    this.EventFiringEnabled = false;
    var listitemC = uploadedFileC.Item;
    listitemC["Name"] = this.projectName;
    listitemC["EnquiryNo"] = finalNum;
    listitemC["Project_Name"] = this.projectName;
    listitemC["Date"] = this.docDate;
    listitemC["Description"] = this.description;
    listitemC["ProjectNo"] = this.projectNumber;
    listitemC["PricingURL"] = "https://groupportal.sharepoint.com/sites/EnginSouth/Est_Tender_Pricing_Document/Forms/DispForm.aspx?ID=" + listitemC.ID;
    listitemC.SystemUpdate(false);
    this.EventFiringEnabled = true;
    LogIssue(web, null, "Web Id : " + web.ID, "Copied file 5.");
    fileName = string.Format("{0}/{1}{2}", folder2.ServerRelativeUrl, this.projectName, ".xlsm");
    LogIssue(web, null, "Web Id : " + web.ID, "Copying file 5 {0} to {1}...", file2.Name, fileName);
    var byteArray2 = file2.OpenBinary();
    var uploadedFile2 = folder2.Files.Add(fileName, byteArray2, true);
    LogIssue(web, null, "Web Id : " + web.ID, "File 6 Uploaded with new ID of {0}", uploadedFile2.Item.ID);
    this.EventFiringEnabled = false;
    var listitem2 = uploadedFile2.Item;
    listitem2["Name"] = this.projectName;
    listitem2["EnquiryNo"] = finalNum;
    listitem2["Project_Name"] = this.projectName;
    listitem2["Date"] = this.docDate;
    listitem2["Team"] = this.team;
    listitem2["Estimator_Electrical"] = this.electrical;
    listitem2["Estimator_Mechanical"] = this.mechanical;
    listitem2["Status"] = this.status;
    listitem2["Tender_Received"] = this.tenderReceived;
    listitem2["Tender_Return"] = this.tenderReturn;
    listitem2["Sector"] = this.sector;
    listitem2["Design_Build"] = this.designBuild;
    listitem2["Build_Type"] = this.buildType;
    listitem2["Service_Prog_Start"] = this.serviceProgramStart;
    listitem2["Service_Prog_Completion"] = this.serviceProgramCompletion;
    listitem2["Client_1"] = this.client1;
    listitem2["Client_2"] = this.client2;
    listitem2["Client_3"] = this.client3;
    listitem2["Client_4"] = this.client4;
    listitem2["Consultant"] = this.consultant;
    listitem2["Pre-construction_Prog_Start"] = this.preConstructionProgramStart;
    listitem2["Pre-construction_Prog_End"] = this.preConstructionProgramEnd;
    listitem2["Tender_Summary_Url"] = "https://groupportal.sharepoint.com/sites/EnginSouth/TenderSummaryLib/Forms/DispForm.aspx?ID=" + listitem2.ID;
    listitem2.SystemUpdate(false);
    this.EventFiringEnabled = true;
    LogIssue(web, null, "Web Id : " + web.ID, "Copied file 6.");
    /// <summary>
    /// Creates the folders.
    /// </summary>
    /// <param name="web">The web.</param>
    private void CreateFolders(SPWeb web)
    var projectListId = web.Lists.Add(this.projectName.Replace(' ', '_'), string.Empty, SPListTemplateType.DocumentLibrary);
    var projectList = web.Lists[projectListId];
    projectList.OnQuickLaunch = true; // The document library will appear in Quick Launch bar.
    CreateFolder(projectList, "1.Tender Documents");
    CreateFolder(projectList, "2. Electrical");
    CreateFolder(projectList, "3. Mechanical");
    CreateFolder(projectList, "4. Correspondance");
    CreateFolder(projectList, "5. Settlement Meeting Docs");
    CreateFolder(projectList, "6. Tender Return Docs");
    CreateFolder(projectList, "7. Tender Handover");
    projectList.Update();
    /// <summary>
    /// Initializes the specified list item.
    /// </summary>
    /// <param name="listItem">The list item.</param>
    /// <param name="finalNum">The final number.</param>
    private void Initialize(SPListItem listItem, string finalNum)
    var contextId = string.Format("List:{0}, Id:{1}", listItem.ParentList.Title, listItem.ID);
    this.noBid = AssignField(listItem, "Bid", contextId);
    this.projectName = AssignField(listItem, "Project_Name", contextId);
    var teamlookup = AssignField(listItem, "Team", contextId);
    var lookupParts = teamlookup.Split(new[] { ";#" }, StringSplitOptions.None);
    this.team = lookupParts[1];
    this.description = AssignField(listItem, "Description", contextId);
    this.status = AssignField(listItem, "enquiry_status", contextId);
    this.electrical = AssignUserField(listItem, "electrical_proj_manager", contextId);
    this.mechanical = AssignUserField(listItem, "mechanical_proj_manager", contextId);
    this.docDate = AssignDateField(listItem, "Date", contextId);
    this.tenderReceived = AssignDateField(listItem, "Tender_Received", contextId);
    this.tenderReturn = AssignDateField(listItem, "Tender_Return", contextId);
    this.preConstructionProgramStart = AssignDateField(listItem, "Pre-construction_Prog_Start", contextId);
    this.preConstructionProgramEnd = AssignDateField(listItem, "Pre-construction_Prog_End", contextId);
    this.sector = AssignField(listItem, "Sector", contextId);
    this.designBuild = AssignField(listItem, "Design_Build", contextId);
    this.buildType = AssignField(listItem, "Build_Type", contextId);
    this.serviceProgramStart = AssignDateField(listItem, "Service_Prog_Start", contextId);
    this.serviceProgramCompletion = AssignDateField(listItem, "Service_Prog_Completion", contextId);
    this.client1 = AssignField(listItem, "Client_1", contextId);
    this.client2 = AssignField(listItem, "Client_2", contextId);
    this.client3 = AssignField(listItem, "Client_3", contextId);
    this.client4 = AssignField(listItem, "Client_4", contextId);
    this.consultant = AssignField(listItem, "Consultant", contextId);
    if (this.status == "Won")
    this.projectNumber = string.Format("15-{0}-{1}", this.team, new Random().Next(0, 9999).ToString("D4"));
    if (this.status == "Active" || this.status == "Closed")
    this.projectNumber = "No Project No";
    listItem["ProjectNo"] = this.projectNumber;
    listItem["EnquiryNo"] = finalNum;
    listItem.Web.AllowUnsafeUpdates = true;
    listItem.SystemUpdate(false);

    Hi,
    In this forum we mainly discuss questions and feedbacks about Office client products, as your question is about SharePoint 2013, I suggest you post this thread in SharePoint forum:
    https://social.technet.microsoft.com/Forums/office/en-US/home?category=sharepoint
    The reason why we recommend posting appropriately is you will get the most qualified pool of respondents, and other partners who read the forums regularly can either share their knowledge or learn from your interaction with us. Thank you for your understanding.
    Regards,
    Melon Chen
    TechNet Community Support
    It's recommended to download and install
    Configuration Analyzer Tool (OffCAT), which is developed by Microsoft Support teams. Once the tool is installed, you can run it at any time to scan for hundreds of known issues in Office
    programs. Please remember to mark the replies as answers if they help, and unmark the answers if they provide no help. If you have feedback for TechNet Support, contact
    [email protected]

  • Sharepoint 2013 - Active Directory Import User Profile Property manager fields

    Hi there,
    I juste encountered actually a little issue regarding the Active Directory Import User Profil.
    Importation seems to work well but I have a little problem regarding the Manager field.
    When I verify a user profil through the sharepoint admin page ("Manage user profil") , I can see the manager field is correctly populated, but if I want to check my profil as a user (personal information), the manager field is not visible.
    With Sharepoint Admin and Manage Profil Properties, I haven't the possibility to modify some settings for the manager.
    For example, Policy parameters is greyed.
    The only way I found to show this field in a user profil is to give the permission "allow users to Edit values ...".... setting I don't want to set.
    Have you already this sort of issue ?
    Thanks for your help/idea.

    Hi Michael,
    I don't remember well what I did exactly regarding this issue because I played a lot with user profil.
    I know I used this powershell script from Sheyia which in fact help me a lot to clean and create a good profil setting.
    http://blogs.technet.com/b/sheyia/archive/2013/10/09/sharepoint-2013-another-way-to-change-order-for-user-profile-properties-via-powershell.aspx
    For example, this script help me to resolve some double entries.
    Let-me know if it help you (or not of course)

Maybe you are looking for

  • Questions regarding features of BPM

    Hi, I am currently writing my diploma thesis and evaluating different BPM Solutions. One of those is SAP NetWeaver BPM. Although i studied many pdfs and tried to install the trial version, some questions remained. Maybe you can help? I donu2019t need

  • HP2740p expansion battery problem - slow, 100% cpu

    Posting this problem because it took us months to figure out root cause.  When expansion battery for 2740p gets old and tablet tries to charge it the computer slows to a crawl - seriously slow and unworkable.  It's tough to troubleshoot the machine i

  • I can't get my windows computer to recognize my iPhone 4s.  What should I do?

    I have an iPhone 4s that I'm trying to sync with my windows computer but I can't get my computer to recognize the iPhone.  My computer is running with the windows 7 64 bit operating system.  I have the latest version of iTunes as well.  I've followed

  • Whats the best way to produce PDF output for Graphics

    Greetings; I posted something earlier which received no replys, so I figure I probably asked the wrong question. I have recently migrated an application over from Delphi and I have to admit that I'm not as familiar with using Java and Graphics as I w

  • Image for background

    I have an image now that I want to use for a background on all of my WebPages. The image size is 2912x 4368 and I have made it 1024x1536. On the page it looks good but what happens is the image repeats itself twice for width and length. I want it to