How to make sharepoint control centre?

Sean 1 Reputation point
2022-12-13T08:42:32.837+00:00

My company has a ton of SharePoint sites. I have outlook, Onedrive and access to a bunch of SharePoint sites where I get files needed for my work.

I would like a single dashboard location online where I can manage and automate some of my work flow. Maybe my own SharePoint? Maybe my onedrive online home?

A typical use case would be I am assigned a job via email and that job comes with a link to a SharePoint folder with a bunch of files. Right now I manually create a folder on my computer witch is backed up to one drive where I manually copy those files from the SharePoint site.

What I want to happen is for the email withe the link to be flagged so that I can review it on my “dashboard” click a button if I want those files and have some automation name and create the new folder on the cloud site. Then it can be copied down to my computer.

Is this possible?

Thanks!

Microsoft 365 and Office | SharePoint | Development
{count} votes

1 answer

Sort by: Most helpful
  1. Tong Zhang_MSFT 9,251 Reputation points
    2022-12-14T05:35:56.86+00:00

    Hi @Sean ,

    According to my research and testing, unfortunately, you will need to develop such a feature yourself, we don't have a default solution, the implementation is out of our scope. Also, about copied down files to my computer, here is a code about download files from SharePoint Library to your local computer using SharePoint Online CSOM, you can refer to. Thanks for your understanding.

    using Microsoft.SharePoint.Client;  
    using System.IO;  
    using System.Linq;  
    using System.Security;  
      
    namespace CSOM  
    {  
        class Program  
        {  
            static void Main(string[] args)  
            {  
      
                using (ClientContext ctx = new ClientContext("https://tenantname.sharepoint.com/sites/sitename/"))  
                {  
                    string password = "********";  
                    string account = "******@tenantname.onmicrosoft.com";  
                    var secret = new SecureString();  
                    foreach (char c in password)  
                    {  
                        secret.AppendChar(c);  
                    }  
                    ctx.Credentials = new SharePointOnlineCredentials(account, secret);  
                    ctx.Load(ctx.Web);  
                    ctx.ExecuteQuery();  
      
                    List list = ctx.Web.Lists.GetByTitle("libraryTitle");  
      
                    FileCollection files = list.RootFolder.Folders.GetByUrl("/sites/sitename/shared documents/foldername").Files;  
      
                    ctx.Load(files);  
                    ctx.ExecuteQuery();  
      
                    foreach (Microsoft.SharePoint.Client.File file in files)  
                    {  
                        FileInformation fileinfo = Microsoft.SharePoint.Client.File.OpenBinaryDirect(ctx, file.ServerRelativeUrl);  
      
                        ctx.ExecuteQuery();  
      
                        using (FileStream filestream = new FileStream("C:" + "\\" + file.Name, FileMode.Create))  
                        {  
                            fileinfo.Stream.CopyTo(filestream);  
                        }  
      
                    }  
                };  
      
            }  
      
      
        }  
    }  
    

    Hope it can help you. Thanks for your understanding.


    If the answer is helpful, please click "Accept Answer" and kindly upvote it. If you have extra questions about this answer, please click "Comment".
    Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.



Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.