SQL Azure Database Schema Patch system - azure

I have been trying to find a standard way to include databases schema patches into my Azure continuous deployment flow.
So the problem I am looking for a solution to, is that as an application evolves, so does the database. Ever so often there are changes to the database to support new functionality etc.
In earlier work situations I have used proprietary solutions that hold changes to the database in a linked list in an Xml document. The database then knows the latest patch it applied, and if any new patches are present it will apply them. That way it is easy to keep all environments synchronised, and the changes follow the code.
While these proprietary solutions have worked great, I was thinking that before I implement yet another tool to do this, I would see if there was a standard solution provided by SQL Azure to solve this problem. But I haven't been able to find one.
Is there one or do I need to create a tool myself?

Visual Studio Database Projects support deploying to Azure SQL Database so this is a good way to incorporate it into a CI workflow. If you are used to traditional deployment methods it is a bit of a mindset change; these projects work out at deploy-time what to deploy. For example, if you want to create a table, add a Table to the project and fill out the columns. Then, say months later, you want to add a column, simply add the column to the CREATE TABLE script. When you deploy, it will work out that the only schema change is a new column and it will add it.
This is a nice little series on that topic:
https://channel9.msdn.com/Blogs/Have-you-tried-turning-it-off-and-on-again/Creating-a-Database-Project-for-Artificial-Intelligence

Related

Is there a recommended method to clean up Azure Data Factory (Datasets, linked services etc.)?

Elaborating the title further, the current ADF I am working on has a lot of legacy code, i.e. multiple datasets, linked services. Unfortunately no naming convention or system of creating new items were defined.
I have tried to list down all the pipelines, the associated datasets (linked services as well), but this seems a lengthy approach and we have around 100 odd pipelines.
I tried by exporting the complete data factory as an ARM template and tried to create a parser which would automatically create the above list, but it seems that ARM templates are more interlinked than I had thought, I dropped this plan.
Is their a better approach for solving this problem?
You can pull the pipelines/dataflows that uses the particular dataset. this details will be available in the properties tab -> Related tab.
enter image description here
Also you get the list of datasets that uses a particular linked service by going to manage tab ->Linkedservice -> Related
enter image description here
Since you haven't mentioned data factory version (v1 or v2) and mentioned it has lot of legacy code, I am making an assumption that it could be a v1 factory. In that case, you can check the ADF v1 to ADF v2 migration tool which helps with basic migration tasks (listing resources, doing simple migration steps etc.)

Moving changes from development to production on Dynamics CRM 2011

I am new to CRM and have gone through OJT(On Job Training) and being assigned this project. So this question may sound too amateur.
We are using Dynamics CRM 2011. There is a customized solution that contains the custom entities used for storing the Case data. I have done a few changes for two new clients in the solution. Like adding new subjects, plugin changes, javascript changes etc. Now i want to get all these changes updated on production. There are some issues with the current production server because of update rollup not being installed correctly. I am not able to delete any user or do any settings changes. So we are planning to setup a new production server.
I have done the changes in the new production server. And the current production server has lot of new cases which are not on the new production. I tried the export functionality in Dynamics CRM, but it doesnt work. It always skips a few records(best has been 31/50 records) even when the wizard goes through without any errors and after migrating all dependent entities data.
Now there are following ways I can think of to streamline the servers without having any downtime :
Migrate the data from the current production to new production.
I have done my research on Instance adapter for CRM. ( http://www.powerobjects.com/2012/10/26/installing-dynamics-crm-instance-adapter/). But i got stuck as i cannot download Connector for Microsoft Dynamics.
Backup current production data and create a new organization. Import the unmanaged solution from the new production. I have tried this. It doesnt import subjects, javascript changes etc. although it does import plug ins. So i am not sure till what extent it successfully imports. In that case I will need to run a complete test cycle to ensure that everything is working. It will require downtime.
Can any experts in this forum guide me in this situation please?
We are going with option number 2. I have successfully tried to :
Backup current production. Restore to a new organization.
Import the unmanaged solution with changes.
Create any new taxonomies, users, option set values required.
Currently it is undergoing final round of testing and has passed the first round.
The important thing to remember while importing the solution is to check the checkbox for activating all workflows and sdk message processing activities. This keeps the organisation instance in the same position as the source instance i.e. SLA clocks etc.
Also the processes changes(Pre-Post plug-ins, email notification workflows etc) are not imported through unmanaged solution as they are not attached to the solution but to the database. We are planning to carry out these changes over a weekend, so no downtime.
Hopefully very soon we are going to move on to Dynamics CRM 2013.

How to add a resource to project using workflow in NetSuite

As the title says...
I've successfully got workflows working that create project tasks, so I have some idea how the workflow customization tools work. But I'm struggling to see how I can (or even if I can) use a workflow to auto-magically add resources to the project (and then assign them to the project tasks I dynamically create.
Regarding which users/employees to add as resources, I imagine sorting out an appropriate clause shouldn't be too hard.
If I recall correctly, Resouces on a Project record are sublists. If I am correct, then it is not possible via workflows. There is a limitation with Workflows that they cannot work on record sublists.
You will have to do this via SuiteScript.

How do I write a program that creates new shared queries for a team project in TFS?

Is it possible using the TFS client object model to create new shared
queries for the team project?
If so can you provide a code sample or a link to the MSDN
documentation?
We keep a couple queries for each team member and when someone joins then team we have to create new ones for the new member. It doesn't take long, but I'd like to just write a quick program that copies a template query definition, changes the name of the developer, and saves a copy of it. It would be especially useful when we decide to add a column to the query. Currently I have to manually modify 20+ queries definitions. I couldn't find anything on MSDN, but I'm hoping I just missed it somehow.

How do I use SimpleRepository without the migration approach?

I am evaluating SubSonic for use in Phase 2 of a large project. This is an ASP.NET project, with 700 tables in a SQL Server database.
We are planning for our domain model to consist of POCO classes to assist with an offline access requirements we have. I believe that the SimpleRepository pattern would be among my best options.
Since I have a database already, however, the migration assistance doesn't help me. Are there T4 templates for SimpleRepository that I just overlooked? How do I 'turn off' migration? If I missed something in the Wiki, point me there, otherwise get me started and I'll write up a Wiki entry for y'all when we get there.
I'd suggest you look at the linq templates. They're generated from your database just like the ActiveRecord templates but give you POCOs instead.
Alternatively you can just use the simple templates and never run migrations, migrations only happen when you explicitly tell them to (by specifying SimpleRepositoryOptions.RunMigrations while creating your repository) so it's not so much that you need to turn them off, just don't turn them on.

Resources