Sharepoint - Link to a file that is updated Dynamically? - excel

I'm hoping this is possible.
The organization I work for has a Sharepoint site and I am able to Upload Files to pages, however I am not an admin on our Sharepoint. I'm not sure what the version is, I think its older (ie: 2005).
I have some Excel Reports I've built. The data for these reports is pulled from a SQL Server Database which I have full control over. I have setup a Job in SQL Server to run every 12 minutes, this procedure pulls in some data and updates a few tables. These tables are used to feed my Excel Reports.
I have a separate Scheduled task set to open my excel report(s) refresh the data connections and save as a PDF.
I would like to link to these PDF Files via our Sharepoint so that the VIPs can access the reports as they want, but they always see the most up to date report.
I was trying to link to a Shortcut to the PDF Files but SharePoint doesn't seem to like that. How do I make the SharePoint link point to the PDF File that is saved over every 15 minutes?
Thanks in advance,
Any insight is greatly appreciated.

The way I do it (newish version of Sharepoint) is make the save location for the PDF the network location where Sharepoint keeps the files for that site. Usually you'll have access to those if you can edit the Sharepoint site.
Here is a tutorial to find that network location.
EDIT: It very well may be disabled by the admin at the moment. But it looks like the functionality is there.

Given the age of your SharePoint (either 03 or 07), most of the modern tools that you could use to do this don't exist for you (Excel reporting, BI tools, etc). The easiest solution I can think of is to actually modify the other side of the equation. A few options:
Change your report to output two copies of the same file. One entitled (as an example) currentreport.xls and the other report20150626.xls . Put the link to the currentreport.xls in SharePoint.
Build an ASP.net page that runs the SQL query you have built and pull the data through a view. Since this would be pulled on demand, it may be a few more cycles of your SQL code, but indexing, caching and selective data pull can prevent this from being an issue. Put the asp.net code in an iFrame in a SharePoint content editor web part.
Build your report using SSRS and host the output of that in SharePoint using an iFrame.
Run a scheduled job in SQL that copies your current report data to a table and query that table instead of your normal report table. That way you only have one Excel file that points to a specific table so no need to update links. You can always keep copying data to specific files if you need a historical record and can't use the DB to store this data for you (though the amount of space that it would take to do so would be minimal).

Related

Sync between database tables and SharePoint online lists using ODBC. best approach to do so

We have 5 tables inside a database and we want to sync the data inside those tables to SharePoint online lists. All the modifications will still happen on the database tables, so the sync should only sync New/edited/Deleted data from the database to SharePoint and not from the other side.
The database tables can be accessed using ODBC. So what are the approaches we have to do such a sync:-
Using Power Automate Flow which runs on schedule basis?
Write a .net console application which reads the data from the database and update SharePoint using CSOM?
Other approaches
Any advice?
Thanks
I've been working on a PowerAutomate sync between an Excel Table and a bundle of Sharepoint lists, and one component that is proving quite useful for the Excel -> Sharepoint update direction is the "Sharepoint File or Folder Created or Modified" trigger.
If your database platform has the capacity to create small csv or json files corresponding to the changes you want to make, then one option might be to set aside some "new, change, delete" folders accessible to your PowerAutomate profile and to have your system pass in files with the records to be changed. Particularly if your db tables are particularly large, this might be a more efficient solution than periodically scouring the whole table to try to identify those changes proactively.

InfoPath migration to SharePoint 365

Good day beautiful people,
Overall description
I have been assigned to a project where recruiters are using excel file to gather information about new joiners, leavers and people changing positions. Later on it is uploaded to SharePoint where this data is connected to some other files, dashboards and so on. There is also a copy of it, in InfoPath, but the program is working terribly wrong so personally for me this is no-go zone.
My goal
I would like to make this more automated and user friendly, so that's why I wanted to move it to the SharePoint. I want users to have one page, subpage, app to fill up necessary data, edit it if needed and then publish to the SharePoint.
Problem
I have visited tens of pages how to create SharePoint form without InfoPath, how to create SP form with PowerApps but most of these articles provides nothing useful. Just brief overview and I am not that power user of SP to get this done in no time.
Question
Is there a way, that I can make this working within accepted mater of time (few days) so the end result will be exactly what I need?
Make some lists in SharePoint with the columns they need, use that as your data source. Link your PowerApps application to that source, et voila. Recruitment can now fill their data in with what you need, and via Power Automate you can process the data and send it to the correct locations afterwards.

SQL Server and Excel

I want to link an excel file to SQL Server 2014 whereby I can edit the file and the data gets updated on the server automatically.
Similar to what happens when you link sql server to Access whereas you can edit the data and the changes take effect in the server.
Thanks in advance
There is no out of the box solution for this. You can do this either of two ways:
Write a C# code which has a file watcher attached to the Excel file which uploads the Excel file using SSIS job to the database.
Create a scheduled SSIS job which imports the Excel file periodically.
Understanding the purpose would allow for greater elaboration.
This depends on the type of data you wish to edit.
For master data, if you have the Enterprise or Business Intelligence edition of SQL Server and Master Data Services set up, there is a plug-in for Excel:
https://msdn.microsoft.com/en-us/library/hh231024(v=sql.120).aspx
For transactional data, I would strongly advise against using Excel as a front-end and would recommend you to consider alternatives.
However, if you are compelled to go down this route, you can achieve this using VBA scripting and linking via a DAL (Data Access Layer) such as ADO.NET. Be aware that giving such power to your users could open up your system to sql injection attacks - only proceed so if you trust the users 100%. Another thing to take into consideration is validation checks - validation checks should be applied to every cell where data can be entered. More information can be found here:
https://support.microsoft.com/en-us/kb/316934

Data connectivity issue when publishing PowerPivot Excel file to SharePoint, and how to work around it?

One of my customers is very impressed with the capabilities of PowerPivot, particularly the analysis capabilities but even more the publishing capabilities. With that I mean the ability to publish a dashboard to a SharePoint site, after which it can be experienced directly in the browser, including filtering and slicing for end-users.
As we publish our PowerPivot results to a SharePoint site, we get the following error for any action that triggers the data connection to refresh:
The data connection uses Windows Authentication and user credentials
could not be delegated
I've done a lot of research on this one and it seems it is a configuration issue on the SharePoint side. Note though that we are using a cloud hosted SharePoint thus the environment is not under our control. In addition, even our own team mentions this to be a security restriction that will not be lifted.
Therefore, I'm not working on solving the above problem, rather on avoiding it alltogether:
My first experiment was to build a "normal" Excel file without PowerPivot. Same data and I managed to build the same pivots. Both the data and the pivots are in the same file, without a data connection. Publishing it works just fine. The error is not experienced this time, and even interacting with the report via slicers works.
As a second experiment, I wanted to follow the same scenario, but this time using PowerPivot. From data in an Excel sheet I created a so-called "linked table" in PowerPivot. Next, I created some pivots that make use of this table. The pivots are in the same Excel file as the original data. When I publish this file to SharePoint, I get the same error mentioned before when doing anything that refreshed the data connection. Even though the data and pivots are in the same file, it still pops up with this security error, which surprises me.
How can I work around this data connection issue when a PowerPivot is published? We'd like to have both the analytical power of PowerPivot as well as having the rich publishing options of Excel, without running into the data connectivity issue. Is it possible to "flatten" a PowerPivot file to "normal" Excel, since experiment #1 shows that this works fine. How can I remove the data connection from PowerPivot and tell it to just use the Excel data in the very same file?
Do you have PowerPivot for Sharepoint installed?
Is it Pivotstream providing the cloud service?

SharePoint Online file storage

We have a requirement to store documents in SharePoint Online as people copy files to a shared network directly.
Is there a way of automating this? I was thinking of a windows service which will poll the directories, find any changes like new subdirectories or new files, then upload them to a SharePoint Online document library.
You don't have to poll if you use a FileSystemWatcher inside your Windows service for real-time notifications.
http://msdn.microsoft.com/en-us/library/system.io.filesystemwatcher.aspx
However, if your requirement is 100% accuracy, you will need to build in some sort of tracking/checksum mechanism to make sure that every document was 1) detected and 2) successfully moved to SharePoint.
You may want to have your service check the delta every time it starts up, and then subsequently only respond to FileSystemWatcher events.
EDIT: Per Tony's question below, here are some additional thoughts on getting files to SharePoint.
First, try a simple test.
1) Copy the URL of a document library within the BPOS SharePoint site. Make sure you're on a machine that has the Office Online sign in app on it.
2) Open Notepad. Type some random text.
3) Click on File -> Save As.
4) Paste the URL.
5) Attempt to save the file.
This works great on "regular" SharePoint (done it many times). If this works with BPOS, it opens up several options.
File System Replication to a SharePoint Online or Office 365 document library is planned to be released with the "Cloud Connector for Office 365". With the current version database content is supported only, but bi-directional with V2.0

Resources