PowerPivot - how to "freeze" data? - excel

I apologise if this has been asked before - I have searched the internet endlessly for an answer.
I have several Excel files which connect to Databases via PowerPivot - I use PowerPivot to manipulate the data before producing various PivotTables in Excel.
Every month, the source Databases are update with the latest month's data and with any existing records updated for their latest status.
I want to be able to keep Excel files for each month that I can go back and run new PivotTables if I need. However, I want to ensure that it is not possible for the user to Refresh the PowerPivot connection as otherwise the original data will be lost. Is this possible?

Related

Need to get data flowed from power automate excel file to Oracle database in DataGrip

I am asked to make a table in DataGrip with the data from excel spreadsheet file being made and updated in Power Automate. I did not make the flow in Power Automate so I have no experience with this. Here is the current flow in Power Automate. As you can see the data in the excel spreadsheet is created by emails being received with data. Here is what the tables look like in Data Grip I usually pull from look like. I just want to add another table here with the data on the excel sheet. The location of the excel sheet is in our company share point. There you can open it, and see that a row of data is being added every time a new email comes in. So basically just want a new table in DataGrip that is simultaneously having a a row of data being added every time a new email comes in. PLEASE HELP, thank you!
I honestly have not tried much because I have no experience in this. Just watching YouTube videos right now.

Refresh an Excel Report that comes from PBI

I have a page on PowerBI that I did not develop, but I can download data straight to excel. This data needs to be filtered on PBI first before anything, as it contains sensitive information that I will be eventually sending to an external partner. What I want to be able to do is download this report to excel one time and create pivot tables, with all of the necessary filters added, and be able to just click refresh on the excel file and have it update (PBI file currently updates daily). My end goal is to send this information to a vendor and all I will need to do is hit refresh so that I may send to them. I am lost on how to do this, so if anybody can help I will greatly appreciate it!
Analyze in Excel is exactly the way to go. Find more information here: https://learn.microsoft.com/en-us/power-bi/collaborate-share/service-analyze-in-excel
You'll get a live connection to your Power BI dataset and you can use pivot tables to filter the data to your needs. And for sure the data is updated when you hit the refresh button.
To play it save you could finally remove the data connection from the workbook so that the data is frozen and there is no access to sensitive information.
See also my answer here regarding common Analyze in Excel pitfalls:
Power BI Exporting data to a excel/csv

Refresh only internal connections in excel power query / Data model

I have a rather large datamodel in excel. it consists of an imported data mart featuring one fact table and around 20 dimension tables.
I also have 3 tables directly in the excel sheet, where users can enter data, that then gets merged into the existing datamodel using power query.
I would like to be able to update the datamodel thereby updating the content of my pivot tables and my calculations, without refreshing the actual data coming from my external server.
Is this possible without having to disable external data connections i the sheet (I'd like to periodically update the data)
For clarification, i am building a KPI that will be measured monthly on data present on the 1st of every month, but will have to be analyzed, commented, and have outliers handled throughout the month.
You've not mentioned VBA in your question, but going by the fact you've tagged your question as VBA, I'm guessing that's what you're using?
VBA code to refresh a single query is:
Sheets("sheetName").ListObjects("queryName").Refresh
If you're trying to do it manually, then it's just a question of selecting a cell within the table the query is pulling to, and then Query > Refresh.

Can Access replace data information in an upload?

I have a project in Access where we are using tables that have the customers information. These tables were created by downloading as Excel from another site of ours and then uploading to the Access program.
The problem is that the information on our other site changes sometimes, and we really don't know what has changed on our existing information. When we append a new Excel download it will add customeraccountID's that are not on the table yet, but I need a way of finding out if there are any changes to the existing information.
I have tried an update query, but that makes forms that have a relationship to the customer information tables not show the detail section. From what I have researched, this is possibly due to the update query making the updated table read only.
I have taken an made a query that gives me a list of all the duplicates between the newly downloaded Excel and the existing table, but now I need some way to find if there is any changes. There are 60 columns where there could be changes.
We are not against manually updated our tables if we can find a way of finding out what has changed.
I have considered downloading the duplicates report to excel and running a formula using exact(a2:a61,b2:b61), but then I would have to copy that formula to every other row through thousands of rows. I have no preference to whether we find the changes by Excel or Access.
The best way would be to have Access replace the information when appending the new information, not just drop the duplicates. Which would mean having Access replace the existing data when appending. Is that possible or can a report be created that shows where the information differs?

Bulk update record in CRM Online

I asked a similar yet slightly different question before here. I am using CRM 2013 Online and there are couple of thousand records in it. The records we created by an import of excel sheet data that came from a SQL database.
There were some fields in each record in which there was no data when the first import from excel was made. The system works in such a way that the excel sheet is updated from the SQL database periodically, and that data then needs to be imported in CRM Online. As far as I know and mentioned in the shared link, you can only bulk update the records in CRM by first importing the data from CRM to Excel and then reimporting the same sheet back to excel.
Is there a way to bulk update the records in CRM Online if I get data from the client in an Excel sheet?
Right now I compare their excel sheet to my exported excel sheet and make the required changes. It works well for small amount of records but it is infeasible for bulk record update. Any ideas?
2) Or is their a way to compare two excel sheets and make sure that if you copy columns from one sheet to another, the data in the column ends up in the right rows?
I faced a similar issue with updating records from a CSV file. It is true that SSIS is one way. To solve our problem, I created a .NET executable application which is scheduled to execute once per week. The .NET application does the following
Connects to the organisation
Imports all records from the excel
spreadsheet using a pre-existing data map in CRM organisation
Runs a duplicate detection rule (already existing in the CRM organisation)and brings back all duplicates
Sorts through each duplicate and stores the guid into 2 arrays: list of original records and list of newly imported records (based on created date of record)
Performs a merge of the old data on the record with the new data (this is
performed through the CRM2013 SDK MergeResponse class
Now that the original records have been updated with the new data from the
spreadsheet, delete the duplicate records which have just been
created and then made inactive due to the use of MergeResponse class in step 5 . (for us, we were updating contact info, but wanted the
orginal contact to stay in CRM because they will have cases etc
related to that contact's GUID)
If you want to go down this route, I suggest looking at the example on the MS website which uses the CRM SDK (\CRM 2013 SDK\SDK\SampleCode\CS\DataManagement\DataImport\ImportWithCreate.cs). That is the sample code which I used to create the web service.
As you have thousands of records then I guess that SSIS Package is the best option for you. its very efficient in such scenorios.
This is the approach I would use:
Create a Duplication Detection Rule under Settings > Data Management
Download the Import Template
Adjust your source system to generate the spreadsheet in that particular format
Depending on the frequency of your updates I'd look into CRM web services to import your data.

Resources