SPMenu Field for sharepoint document library

I have written code where it will show the Sharepoint document library in sp grid view.It
is showing the grid but i want the default spmenu field for the type icon. please see the attached image. Below is the code of mine
private void CreateBoundField(string sDataField, string sHeaderText, bool bReadOnly, SPGridView theGridView)
BoundField field = new BoundField();
field.DataField = sDataField;
field.HeaderText = sHeaderText;
field.HtmlEncode = false;
field.HeaderStyle.ForeColor = ColorTranslator.FromHtml("#808080");
field.HeaderStyle.Font.Names = new string[] { "verdana", "arial", "helvetica", "sans-serif" };
field.ItemStyle.HorizontalAlign = System.Web.UI.WebControls.HorizontalAlign.Center;
if (sHeaderText.ToLower().Equals("type"))
field.ItemStyle.HorizontalAlign = System.Web.UI.WebControls.HorizontalAlign.Center;
field.ItemStyle.Width = Unit.Pixel(35);
field.HeaderStyle.Width = Unit.Pixel(35);
field.ReadOnly = bReadOnly;
if (!bReadOnly)
field.SortExpression = sDataField;
field.Visible = true;
theGridView.Columns.Add(field);
SPGridView gv = new SPGridView();
gv.ID = "gv";
gv.EmptyDataText = "No items found!";
gv.AllowSorting = true;
gv.AllowFiltering = true;
gv.AutoGenerateColumns = false;
gv.EnableSortingAndPagingCallbacks = true;
CreateBoundField("Type", "Type", false, gv);
CreateBoundField("Title", "Title", false, gv);
CreateBoundField("Date", "Date", false, gv);
CreateBoundField("ProcessTask", "ProcessTask", false, gv);
DataTable dt = new DataTable();
SPWeb web = SPContext.Current.Web;
SPListItemCollection items = web.Lists["Shared Documents"].Items;
dt.Columns.Add("Type");
dt.Columns.Add("Title");
dt.Columns.Add("Date");
dt.Columns.Add("ProcessTask");
foreach (SPListItem item in items)
DataRow dr = dt.NewRow();
string value = item["ProcessTask"].ToString();
value = value.Substring(value.LastIndexOf(";#") + 2);
string docicon = SPUtility.ConcatUrls("/_layouts/images",
SPUtility.MapToIcon(item.Web, SPUtility.ConcatUrls(item.Web.Url, item.Url), "", IconSize.Size16));
dr["Type"] = string.Format("<img src='{0}' />", docicon);
dr["Title"] = item.Title;
dr["Date"] = item["Created"].ToString().Split(' ')[0];
dr["ProcessTask"] = value;
dt.Rows.Add(dr);
gv.DataSource = dt;
gv.DataBind();
this.Controls.Add(gv);
SPListItemCollection _GridCollection = SPContext.Current.Web.Lists["Shared Documents"].Items;
DataTable _MyDatabale = _GridCollection.GetDataTable();
gvdetails.DataSource = _MyDatabale;
gvdetails.DataBind();
I want the default menu pop up like the below attached image. Can any one help me to
modify the above code and get me the attached out put.
Thanks,
Sandy.

Hi,
According to your post, my understanding is that you wanted to show the SharePoint document library in GridView.
You need to get hold of the SPFile object, which is a property of a ListItem item, and get the ServerRelativeUrl property. Then you need to add code to an <a> tag .
Here is a similar thread for your reference:
http://sharepoint.stackexchange.com/questions/88139/code-download-file-from-doc-icon-image-in-sharepoint-2010
More information:
Bind SharePoint 2010 Document Library to GridView:
http://sppractices.blogspot.com/2013/03/bind-sharepoint-2010-document-library.html
Best Regards,
Linda Li
Linda Li
TechNet Community Support

Similar Messages

  • Jquery for sharepoint document library form to filter dropdown/lookup field

    I have created a document library to update status of a ongoing process. I have created a lookup column "status" with options 
    Initiated,
    Reivew-in Progress,
    Review-Denied,
    Review-Approved,
    Verification-In progress,
    Verification-Denied,
    Verification-Approved.
    The demand from the client is they want to see - 'Initiated'in the form while adding a new document,other options should be hidden/disabled.
    The next time when they edit the form,they want to see just :
    Reivew-in Progress,
    Review-Denied,
    Review-Approved.
    Other options should be hidden/disabled.
    On the next step they want to see 
    Verification-In progress,
    Verification-Denied,
    Verification-Approved.
    other options should be hidden/disabled.
    I have worked with cascade drop down but i have no idea how to filter a single dropdwn/lookup field.Is there any way to implement this? Any help would be appreciated.
    Thank you.

    Hi Slionel,
    Based on you description, my understanding is that you want to show certain fields on NewForm.aspx and hide/ disable other fields and in EditForm.aspx you need to show or hide/disable certain fields based on condition. I would say you can use JSOM to implement
    your requirement in NewForm.aspx and EditForm.aspx
    based on the condition and requirement, it will be simple and straight forward.
    Thanks
    Shakir

  • How to add User Permissions to form created in InfoPath 2010 created for SharePoint document Library

    Hi,
    I created a form in InfoPath 2010 with three views (one for user input, the other two views to be used by supervisors) and published this to a SharePoint 2010 document library. Now the way this form is supposed to work is that when a User goes to the document
    library and adds a document, it is supposed to open the Form with the User's input view. When the User submits the document, only him/her should be able to open and possibly edit the the form. When the Immediate Supervisor opens the form, it should open in
    the Supervisors view and allow them to fill in only their section and not be able to edit or alter the user's data. When the Immediate Supervisor saves the document, the Over-all Supervisor should be able to open it in their view and not be able to edit or
    alter the sections filled out by the User and Immediate Supervisor.
    How would i go about completing this? I have the views created but now have the problem of associating these views with their respective users or groups.

    Hello,
    You need to first create user group in sharepoint site then add user in group according to their role. Later you need to call usergroup.asmx web service to get current logged-In user group name so you can switch view and also apply rule for editing or disabling
    controls in form.
    Follow this link to get group name:
    http://social.technet.microsoft.com/wiki/contents/articles/13271.sharepoint-2010-extracting-user-group-of-current-login-user-in-infopath-2010.aspx
    http://social.msdn.microsoft.com/Forums/en-US/018f5184-5c83-4a53-b66b-8c376fc800fc/how-to-get-current-users-sharepoint-group-name-sharepoint-2010-infopath-2010
    To apply rule on control:
    http://office.microsoft.com/en-in/infopath-help/add-rules-for-performing-other-actions-HA101783373.aspx
    Hope it could help
    Hemendra:Yesterday is just a memory,Tomorrow we may never see
    Please remember to mark the replies as answers if they help and unmark them if they provide no help

  • Advice needed for provider hosted web application - authentication and access to SharePoint document library

    I haven't done SharePoint 2013 development with claims so I apologize in advance if my assumptions and questions are way out in left field.
    I'm trying to understand SharePoint 2013 claims authentication for a scenario that involves:
    A SharePoint provided hosted (web forms) app that will pull information and assets (e.g. PDFs) from SharePoint into the web page.
    It will be a VS 2012 solution with asp.net.identity feature.
    Security will be set for internal users, federated external users and forms-based external users.  Based on their security and (claim type) role it will define what information and assets that can be retrieved from SharePoint
    I have looked through MSDN and other sources to understand.
    This one helped with my understanding 
    Federated Identity for Web Applications and assumed that the general concept could be applied to forms-based identity for non-Federated external users .
    What I have now:
    VS 2012 solution web forms application set to Provider Host with asp.net.identity feature and its required membership tables.
    I can create new users and associate claims to the new user.
    I can log in with a user from the membership tables and it will take me to a default.aspx page.  I have added code to it that displays the claims associated to a user.
    For POC purposes I'd like to retrieve documents that are associated to this user from the default.aspx page.
    This is where I am having trouble understanding:  Is my understand correct?
    Internal users
    since they are internal on the network i am assuming that they would already have access to SharePoint and they would already be configured to what documents that they have available to them.
    Federated external users & Forms authentication external users
    it seems to me that the authentication for external users are separate from SharePoint authentication process.
    changes to the configuration settings are necessary in SharePoint, IIS, web application.
    I believe this is what i read.
    claims processes (e.g. mappings) need to be set up in SharePoint
    as long as external users are authenticated then things are ok b/c they would have claims associated to the user and the configuration in SharePoint takes are of the rest.
    This statement bothers me because I think it's wrong.
    So basically i'm stuck with if my understanding is correct: once a user is authenticated either by federated identity or asp.net.identity authentication that it should go to the provider hosted default.aspx page because the claim is authenticated and means
    that it should have access to it and the SharePoint document library based on some claim property.  I could then write the calls to retrieve from a document library and SharePoint will know based on some claim property that the logged in user can only
    access certain documents.
    It just sounds too good to be true and that i'm missing something in the thought process.
    Thanks in advance for taking the time to read.
    greenwasabi

    Hi GreenWasabi,
    i agree this is an interesting topic to discuss,
    as you can check from the article, you may check this example from the codeplex:http://claimsid.codeplex.com/
    when i thinking regarding this topic, its looks like an environment with multiple of realms,
    from what you understand, its correct that all the authentication is based from the provider, so for example i have a windows live ID and internal ID, then when i login windows live ID, it will be authenticated using windows live ID server.
    here is the example for the webservice:
    http://claimsid.codeplex.com/wikipage?title=Federated%20Identity%20for%20Web%20Services&referringTitle=Home
    as i know, if you using this federated, i am not quite sure that you will need to go to the provider page literally, perhaps you can check this example if we are using azure:
    http://social.technet.microsoft.com/wiki/contents/articles/22309.integrating-windows-live-id-google-and-facebook-accounts-with-sharepoint-2013-white-paper.aspx
    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.

  • Attaching Attributes to Image For Loading to SharePoint Document Library

    We currently have a need to create a searchable document library which will consist solely of images. The standard metadata for a file/image won't suffice in this case. We have some custom attributes that will need to be searchable.
    Essentially, we will have a library of receipt images for expense reporting purposes. We get these images from a third party who handles all of our expense reporting. There are two large zipped files we receive: one file contains all the actual expense report
    "data" that was processed that day(amount, date, client, job, etc.) and the second file contains all the receipt images for those expense report items. Each data file contains data for individual expense reports, and each expense report is assigned
    a unique ID. Each line item in an expense report is also assigned a unique ID. Lastly, each receipt image for a line item of a specific expense report is also assigned a unique ID.
    The zipped image file only contains images. There is a main image file - this contains several smaller zipped files. Each of the smaller zipped files contains all receipt images for a specific expense report. Each image file name is comprosed of three parts:
    The expense report identifier, the unique image identifier, and the expense report line item identifier.
    So, to put this all into perspective:
    On Thursday, we received an image file named extract_images_p006320452r3_20140904171423
    This file contained images for the following unique expense reports:
    The compressed file 95FB8C488519427793FC contains the following receipt images:
    The "data" file - as mentioned before - contains the actual info about the expense and image. These include: date of transaction, date approved, vendor, amount. GL code, type, function, client, project, billable or not, and several other attributes.
    All of this information - including the location of the images - is stored in a SQL Server database and then placed in an SSAS cube.
    The images are related back to the underlying data via the expense report id, and line item id.
    What I need to be able to do is to somehow "tag" these images with all their underlying attributes, load then into a SharePoint document library, and make them searchable.
    I have already figured out that I would need to create several SharePoint lists based on the available values in my OLAP cube (essentially a dataset each for clients, vendors, etc.). The part I have no idea how to accomplish is how to tag each image with
    its respective information.
    All the pertinent info is stored in the database tables, just don't know how to attach it to each image.
    Hopefully, this made some kind of sense. If anyone has any idea on how to even remotely accomplish such a thing, your input would be greatly appreciated!
    Thanks in advance!
    A. M. Robinson

    You will have to develop a custom solution to do this. I am assuming you have taken the first steps to define separate document libraries for the expense reports and images along with site columns and contenttypes. You would define the site columns based
    on the data you want to search on and assign these to corresponding contenttypes. So basically a contenttype for expense reports and receipts possibly. You would link the two contenttypes using the expense report id.
    Your custom solution would have to break apart the zip files and upload and index (set site column data) for each file. Then the user could search on the expense report id and get all the files associated with the expense report.
    An alternative could be to use one document library and have all the files uploaded into their own document set (folder).
    Blog | SharePoint Field Notes Dev Tools |
    SPFastDeploy | SPRemoteAPIExplorer

  • Creating a folder for a document library in SharePoint online

    Hello I am looking for a good place to get started on creating a folder for a document library using a powershell script. Thanks in advance for any help.

    Here is a guide to creating folders and items in a document library for SharePoint Server/Foundation: Creating SharePoint Folders
    and Items with PowerShell. You will need to tailor it to your needs as it's a demo for creating 50,000 items.
    That's step 1 and contains the bulk of what you would need to do. Here's an example of connecting to a library in SharePoint Online using CSOM: Office
    365 - PowerShell Script to Upload Files to a Document Library using CSOM. You won't be uploading files, but the parts where you connect and get a list are what you're interested in.
    Now you'll combine bits from both of these scripts:
    1. Connect to SPO
    2. Get your list (looks like you need to first get the site collection and then the site)
    3. Create a folder
    I figure it would look something like this (note I haven't tested this at all):
    #Specify tenant admin and site URL
    $User = "[email protected]"
    $SiteURL = "https://tenant.sharepoint.com/sites/site"
    $DocLibName = "DocLib"$FolderTitle = "Example Folder"
    #Add references to SharePoint client assemblies and authenticate to Office 365 site - required for CSOM
    Add-Type -Path "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\15\ISAPI\Microsoft.SharePoint.Client.dll"
    Add-Type -Path "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\15\ISAPI\Microsoft.SharePoint.Client.Runtime.dll"
    $Password = Read-Host -Prompt "Please enter your password" -AsSecureString
    #Bind to site collection
    $Context = New-Object Microsoft.SharePoint.Client.ClientContext($SiteURL)
    $Creds = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($User,$Password)
    $Context.Credentials = $Creds
    #Retrieve list
    $List = $Context.Web.Lists.GetByTitle($DocLibName)
    $folder = $list.AddItem("", [Microsoft.SharePoint.SPFileSystemObjectType]::Folder)
    $folder["Title"] = $FolderTitle
    $folder.Update();
    Jason Warren
    @jaspnwarren
    jasonwarren.ca
    habaneroconsulting.com/Insights

  • How to grant anonymous access on sharepoint document library/list only not for web application

    Hello
    How to grant anonymous access on sharepoint document library/list only not for web application.I have claim based sharepoint site and has to be but i want to grant access on document library/list only.Is this possible?
    Thanks
    Rajesh Kumar "Changing the Face" can change nothing.But "Facing the Change" can change everything.

    As i am using following code
    SPSite site = SPContext.Current.Site;
                SPWeb web = SPContext.Current.Web;
                SPSecurity.RunWithElevatedPrivileges(delegate()
                    using (SPSite ospSite = new SPSite(site.ID))
                        using (SPWeb webs = ospSite.OpenWeb(web.ID))
                            // Enable anonymous access on web application
                            webs.AllowUnsafeUpdates = true;
                            SPUrlZone urlZone = SPUrlZone.Default;
                            SPWebApplication specifiedWebApplication = ospSite.WebApplication;
                            SPIisSettings iisSettings = specifiedWebApplication.IisSettings[urlZone];
                            //iisSettings.AuthenticationMode = AuthenticationMode.Windows;
                            iisSettings.AllowAnonymous = true;                       
                            specifiedWebApplication.Update();
                            // Get document library collection here and fetch all the document urls
                            SPDocumentLibrary docLib = (SPDocumentLibrary)web.Lists["Documents"];
                            if (docLib != null)
                                docLib.BreakRoleInheritance(true, false);
                                docLib.AllowEveryoneViewItems = true;
                                docLib.AnonymousPermMask64 = SPBasePermissions.ViewPages | SPBasePermissions.OpenItems | SPBasePermissions.ViewVersions
                                    | SPBasePermissions.Open | SPBasePermissions.UseClientIntegration | SPBasePermissions.ViewFormPages | SPBasePermissions.ViewListItems;
                                //docLib.AnonymousPermMask64 = SPBasePermissions.EmptyMask;
                                docLib.Update();
    Should working but getting access denied......i am totally stuck at this point.
    Rajesh Kumar "Changing the Face" can change nothing.But "Facing the Change" can change everything.

  • Detect what the default edit form is for a document library and list using jquery

    Hi,
    So what I have done is with some jquery made it that when a files are dragged and dropped into a document library and there is a required field such as "Metadata" the EditForm.aspx opens up for the user to fill in the required column. I am building
    the url up from what I have found in SharePoints DragDrop.js file. This is all working perfectly I just need to find a way to dynamically find what the default edit form is for that document library as I have just hardcoded like this...
    g_currentControl.strSiteUrl + "/" + this.ListName + "/Forms/EditForm.aspx?ID=" + id
    So I need a way to figure out what the default edit form is instead of hard coding like this in case someone creates a custom_editform.aspx or something for one of the lists.
    Thanks

    You can get it by hitting this REST end point via JQuery:
    http://weburl/_api/Web/Lists(guid'YOURLISTGUID')/Forms
    Chris Givens CEO, Architecting Connected Systems
    Blog Twitter

  • Create a new document in Sharepoint Document Library/OneDrive on iPad/Safari

    Hi,
    My users are having trouble creating a new document from OneDrive in Safari on their iPads. The screen goes grey like its going to show the popup to select the new file type, but the popup never comes up. If they clear their cache, it works for exactly 1
    time and then goes back to this behavior. I'm not exactly sure if it worked before and/or when it stopped working. The iPad I have tested was at the latest 8.2 version of IOS and my Sharepoint farm is an On-Prem install of 2013 with SP1 mark2. My WAC farm
    is also 2013 SP1.
    Any suggestions?
    Thanks,
    Matt

    Hi,
    I understand you are suffering the issue when create a document in Sharepoint Document Library/OneDrive on  iPad.
    According to the official article
    https://technet.microsoft.com/en-us/library/fp161353.aspx?f=255&MSPPError=-2147217396, the version of your iOS should be in the supported list. I guess the issue may start after you installed an update, and if there is any other version (low versions)
    of iPads in your company, please use a different version device to test the issue.
    Meanwhile, to determine whether the issue is related to your SharePoint environment, I suggest you just to register an Office 365 trail account, and test the issue with SharePoint Online. In case the same issue happens with SharePoint Online, the issue should
    be related to your client device, and my next suggestion is to contact support of your device manufacture.
    Once you need any help from SharePoint end, please don’t hesitate to come back, and we are always happy to support you.
    Best Regards,
    Lisa Chen
    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]

  • Ssrs sharepoint 2013 error: "A delivery error has occurred ...not a sharepoint document library..."

    Greetings SSRS/SharePoint experts,
    SharePoint 2013 with SSRS - Creating a subscription to a report that is in SharePoint
    I'm trying to create a subscription to publish a report to a sharepoint document library.
    I've configured all the settings and on clicking OK get the following error:
    "A delivery error has occurred. ---> Microsoft.ReportingSerives.Diagnostics.Utilities.DeliveryErrorException: A delivery error has occurred. ---> Microsoft.ReportingServices.Diagnostics.Utilities.InvalidExtensionParameter: One of the extension
    parameters is not valid for the following reason: The delivery path is either not a SharePoint Document Library Folder or does not exist in the Share Point farm."
    SQL Server Developer Edition 2012 SP1
    SharePoint 2013 Standard
    Just wondering if anyone has a solution.
    I've tried changing the proxy settings as per this post
    http://social.technet.microsoft.com/Forums/en-US/19817dc7-6725-40d8-befa-1b94099a71bd/sql-server-2012-reporting-services-in-sharepoint-2013-integrated-mode-dilivery-extension
    Workaround is to not use a sharepoint document library but write the report to a windows file share (this works but is not optimal).
    Hoping someone at Microsoft or an expert will come back with something.
    Kind regards
    Gio

    Hi,
    Can you check the SharePoint ULS log located at : C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\LOGS, and look at the log there when the error occurs?
    You can also check the Application Event Log on the SQL Server to see if there are any additional errors.
    Tracy Cai
    TechNet Community Support

  • Download older version of a file from SharePoint Document Library using CSOM and 404 error

    Hi,
    I am trying to download previous versions including Major and Minor versions of documents from SharePoint Online using CSOM. I get 404 error when I try to download the file. I found several posts on various discussion forums where people are getting same
    error but none of those have any solution/answer. Below is one of the threads and sample code I have tried that results in 404 error. If I use the link in browser directly, I am able to download the file. Also I am able to download the current version of file
    using CSOM without any problem, it is only the older versions that give me 404 in CSOM.
    http://qandasys.info/how-to-download-the-historical-file-version-content-using-csom/
    public int GetStreamFromFile(string docid, string lib, string fileurl, ClientContext clientContext, int iuserid, string Version, bool isCurrrent)
    if(!isCurrent)
    List LibraryName = clientContext.Web.Lists.GetByTitle(lib);
    clientContext.Load(LibraryName);
    clientContext.ExecuteQuery();
    CamlQuery camlQuery = new CamlQuery();
    camlQuery.ViewXml = "" + fileurl +
    Microsoft.SharePoint.Client.ListItemCollection collListItem = LibraryName.GetItems(camlQuery);
    clientContext.Load(collListItem, items => items.Include(item => item.Id, item => item["FileLeafRef"], item => item["LinkFilename"],
    item => item["FileRef"], item => item["File_x0020_Size"], item => item["DocIcon"], item => item.File.Versions));
    //clientContext.Load(collListItem);
    clientContext.ExecuteQuery();
    foreach (Microsoft.SharePoint.Client.ListItem oListItem in collListItem)
    //string fileurl1 = (string)oListItem["FileRef"];
    //string filename = (string)oListItem["LinkFilename"];
    foreach (FileVersion version in oListItem.File.Versions)
    if (Version == version.VersionLabel)
    //Added excutequery to get object one more time as per blog
    //http://social.technet.microsoft.com/Forums/de-DE/sharepointdevelopmentprevious/thread/88a05256-8694-4e40-863d-6c77512e079b
    clientContext.ExecuteQuery();
    FileInformation fileInformation = ClientOM.File.OpenBinaryDirect(clientContext,version.Url);
    bytesarr = ReadFully(fileInformation.Stream);
    Darwaish

    Hi,
    According to your description,
    I know you want to get older version of a file from SharePoint Document Library using Client Object Model.
    The following code snippet for your reference:
    public void GetVersions()
    ClientContext clientContext = new ClientContext(“http://SPSite”);
    Web site = clientContext.Web;
    clientContext.Load(site);
    clientContext.ExecuteQuery();
    File file = site.GetFileByServerRelativeUrl(“/Shared Documents/mydocument.doc”);
    clientContext.Load(file);
    clientContext.ExecuteQuery();
    ListItem currentItem = file.ListItemAllFields;
    clientContext.Load(currentItem);
    clientContext.ExecuteQuery();
    FileVersionCollection versions = file.Versions;
    clientContext.Load(versions);
    clientContext.ExecuteQuery();
    if (versions != null)
    foreach(FileVersion _version in versions)
    Console.WriteLine(“Version : {0}”,_version.VersionLabel);
    More information:
    http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.client.file.versions.aspx
    Best Regards,
    Dennis Guo

  • Save output of powershell script to a SharePoint document library?

    Hi
    I've got the PS script below which scripts out our SQL replication so disaster recovery.  Is there a way to output this to a SharePoint document library so that way we can version control the file to keep multiple copies and it also avoids outputting
    this to a file share.  We would still need to have the files with the .sql extension format which is an allowed file type in our farm.
    Thanks
    #Load command-line parameters - if they exist
    param ([string]$sqlserver, [string]$filename)
    #Reference RMO Assembly
    [reflection.assembly]::LoadWithPartialName("Microsoft.SqlServer.Replication") | out-null
    [reflection.assembly]::LoadWithPartialName("Microsoft.SqlServer.Rmo") | out-null
    function errorhandler([string]$errormsg)
        writetofile ("-- Replication Script Generator run at: " + (date)) $filename 1
        writetofile ("-- [Replication Script ERROR] " + $errormsg) $filename 0
    function writetofile([string]$text, [string]$myfilename, [int]$cr_prefix)
        if ($cr_prefix -eq 1) { "" >> $myfilename }
        $text >> $myfilename
    function initializefile([string]$myfilename)
        "" > $myfilename
    trap {errorhandler($_); Break}
    #Deal with absent parameters
    [string] $hostname=hostname
    if ($sqlserver -eq "") {$sqlserver = read-host -prompt "Please enter the server name or leave blank for Hostname"}
    #if ($filename -eq "")  {$filename = read-host -prompt "Please enter the file name (eg 'c:\ReplicationBackupScript.sql')..."}
    if ($sqlserver -eq "")   {$sqlserver = $hostname}
    if ($filename -eq "")   {$filename = "d:\Rep\CreateReplication-$(get-date -format ddMMyyyy).sql"}
    # Clear file contents
    if (Test-Path  ($filename)) {Clear-Content $filename}
    $repsvr=New-Object "Microsoft.SqlServer.Replication.ReplicationServer" $sqlserver
    initializefile $filename
    # if we don't have any replicated databases then there's no point in carrying on
    if ($repsvr.ReplicationDatabases.Count -eq 0)
        writetofile ("-- Replication Script Generator run at: " + (date)) $filename 0
        writetofile "-- ZERO replicated databases on $sqlserver!!!" $filename 1
        EXIT
    # similarly, if we don't have any publications then there's no point in carrying on
    [int] $Count_Tran_Pub = 0
    [int] $Count_Merge_Pub = 0
    foreach($replicateddatabase in $repsvr.ReplicationDatabases)
            $Count_Tran_Pub = $Count_Tran_Pub + $replicateddatabase.TransPublications.Count
            $Count_Merge_Pub = $Count_Merge_Pub + $replicateddatabase.MergePublications.Count
    if (($Count_Tran_Pub + $Count_Merge_Pub) -eq 0)
        writetofile ("-- Replication Script Generator run at: " + (date)) $filename 0
        writetofile "-- ZERO Publications on $sqlserver!!!" $filename 1
        EXIT
    # if we got this far we know that there are some publications so we'll script them out
    # the $scriptargs controls exactly what the script contains
    # for a full list of the $scriptargs see the end of this script
    $scriptargs = [Microsoft.SqlServer.Replication.scriptoptions]::Creation `
    -bor  [Microsoft.SqlServer.Replication.scriptoptions]::IncludeEnableReplicationDB `
    -bor  [Microsoft.SqlServer.Replication.scriptoptions]::IncludeCreateLogreaderAgent `
    -bor  [Microsoft.SqlServer.Replication.scriptoptions]::IncludePublicationAccesses `
    -bor  [Microsoft.SqlServer.Replication.scriptoptions]::IncludeArticles `
    -bor  [Microsoft.SqlServer.Replication.scriptoptions]::IncludePublisherSideSubscriptions `
    -bor  [Microsoft.SqlServer.Replication.scriptoptions]::IncludeSubscriberSideSubscriptions
    writetofile ("-- Replication Script Generator run at: " + (date)) $filename 0
    writetofile "-- PUBLICATIONS ON $sqlserver" $filename 1
    writetofile "-- TRANSACTIONAL PUBLICATIONS ($Count_Tran_Pub)" $filename 1
    foreach($replicateddatabase in $repsvr.ReplicationDatabases)
        if ($replicateddatabase.TransPublications.Count -gt 0)
            foreach($tranpub in $replicateddatabase.TransPublications)
                writetofile "/********************************************************************************" $filename 0
                writetofile ("***** Writing to file script for publication: " + $tranpub.Name) $filename 0
                writetofile "********************************************************************************/" $filename 0
                [string] $myscript=$tranpub.script($scriptargs) 
                writetofile $myscript $filename 0
    writetofile "-- MERGE PUBLICATIONS ($Count_Merge_Pub)" $filename 1
    foreach($replicateddatabase in $repsvr.ReplicationDatabases)
        if ($replicateddatabase.MergePublications.Count -gt 0)
            foreach($mergepub in $replicateddatabase.MergePublications)
                writetofile "/********************************************************************************" $filename 0
                writetofile ("***** Writing to file script for publication: " + $mergepub.Name) $filename 0
                writetofile "********************************************************************************/" $filename 0
                [string] $myscript=$mergepub.script($scriptargs) 
                writetofile $myscript $filename 0

    Check out Using PowerShell to upload a scripts output to SharePoint
    Jason Warren
    @jaspnwarren
    jasonwarren.ca
    habaneroconsulting.com/Insights

  • Linking a programmatically created folder in SharePoint Document Library.

    I have created folders within a document library using InfoPath & C#. To that folder I uploaded several documents using several file attachment controls within the same InfoPath Form using the code behind the form.  Now I want to create an Hyperlink
    to each folder in another document folder's column that has the relationship with the previously created folder.
    When I googled I saw there are lot of articles to create Folders ,uploading documents to folders in a SharePoint Library but I cannot understand how to create a hyperlink in a SharePoint Document Library field column.
    Could someone help me to solve this matter?
    Thanks,
    Regards,
    Chiranthaka

    Why don’t you create a hyperlink column to store the hyperlink value, or you can use a lookup column to lookup the related folder item?
    Qiao Wei
    TechNet Community Support

  • Word opening in Client Application in SharePoint document library when feature is not activated in manage features in site collection

    Hello, I wish for all Word documents to open in the browser for my SharePoint document library on my team site.
    The feature 'open in client application' is not activated in Features for the site collection and the setting in the document library is set on 'Use the server default (open in the browser)
    When I select File > new> from the ribbon in the document library - it still opens Word in the client application?
    Any ideas on this?
    Is there a general Office 365 setting over riding SharePoint somewhere?
    Regards
    kegan1

    Okie don't open up a ticket. Can you please open internet explorer...See if its the latest version. Once you have done that can you login to the SharePoint site. Then go to the internet wheel option  in top right corner > select manage add on >
    Click on toolbars and extensions on left > then click on SharePoint open documents in client and disable it. Close the browser completely now for the changes to take effect. Open internet explorer once again and then try to go to site collection click on
    file and create new. The word will open up in browser now. This has to be done on each and every machine in your firm so that users will be able to open up only in browser. Out of the box there is only one way is to customize the ribbon and remove the new
    option from there or creating an all together new ribbon for your SharePoint from visual studio.

  • Load a project from a SharePoint document library

    "Add a project to a SharePoint document library"  is nicely documented in the RoboHelp reference guide. However there is no information on adding another user to that library, i.e. how do you synchronize that user with the library on SharePoint? Do they open a new project and restore the files...? I have no idea how to do this - spent the last 2 hours trying to figure this out as there in no information on this - not even on Google searches. It's really a shame that a powerful help authoring tool is lacking help itself. I'm a fan of robohelp, however when you face roadblocks like this - it's very frustrating. This should be something simple to do and it should be clearly documented. Can someone please help.

    I have just found the solution and it had previously been answered in this post: How do I connect multiple users to a project on Sharepoint for collaboration
    Adobe - you need to include this in your documentation - this is a vital feature for people using the ShrePoint connector. I should't have to take two hours of my time to find a random post about this to resolve my problem.

Maybe you are looking for