Customers using a Microsoft ERP or CRM product use more than one addon from an ISV. (I read that most companies use more than 4 ISV addons â€“ although I could not verify this statistic). This in itself is a fantastic thing, that there are so many solutions that help Microsoft products fit businesses better. The ISV (Independent Software Vendor) market around
With the introduction of Dynamics GP 2013 R2, Microsoft delivered support for application databaseÂ backups onto Windows Azure blob storage serviceÂ from within GP itself.
Azure Blob storage is a service for storing large amounts of unstructured data, such as text or binary data, that can be accessed from anywhere in the world via HTTP or HTTPS. You can use Blob storage to expose data publicly to the world, or to store application data privately. Common uses of Blob storage include:
â€˘ Serving images or documents directly to a browser
â€˘ Storing files for distributed access
â€˘ Streaming video and audio
â€˘ Performing secure backup and disaster recovery
â€˘ Storing data for analysis by an on-premises or Azure-hosted service
In turn, Dynamics GP takes advantage of capabilities introduced in SQL Server 2012 SP1 CU2 toÂ enable SQL Server backup and restore directly to the Windows Azure Blob service. See SQL Server Backup and Restore with Windows Azure Blob Storage Service for more information.
Note: Starting with SQL Server 2012 SP1 CU4, you can also useÂ PowerShell to backup to and restore from Windows Azure Blob storage services.
As part of the backup and restoreÂ process, Microsoft Dynamics GP calls the syGPAzureBackupRestoreProcess system database stored procedure.
Configuring Microsoft Dynamics GP backups with Windows Azure Blog storage service
To take advantage of Windows Azure Blob storage service, you must begin by setting up an Azure storage account. The storage account is the starting point for all storage services. The storage account requirements are fairly straight forward: setup a URL prefix, associate a location or affinity group for your storage account, and determine the type of replication. See How To Manage Storage AccountsÂ for additional informationÂ on replication options.
Note: The full URL will be the URL prefixÂ followed by blob.core.windows.net.
|Storage Account Setup|
Upon creation of the storage account, the storage account name and its access key properties are required to authenticate to the Windows Azure Blob Storage service and its components.
Following the creation of the account, you will need a storage container. A container provides a grouping of a set of Blobs, and can store an unlimited number of Blobs. To write a SQL Server backup to the Windows Azure Blob service, you must have at least the root container created.
Click on the Containers tab to setup a new container. Enter a name for the container, and select the type of access that will be provided to the container.
|New Container setup|
For more information on setting container access types, see Restrict Access to Containers and Blobs. Once the container has been setup, you should see your new container listed.
|Container is now setup|
Return to the storage account dashboard and click the Manage AccessÂ Keys option at the bottom of the window for the storage account you setup. You can copy the primary access key, which will be used to setup Microsoft Dynamics GP.
|Manage Access Keys|
In Microsoft Dynamics GP, go to Microsoft Dynamics GP | Maintenance | Backup to open the Back Up Company window. Follow these instructions:
1. Select the company you wish to backup
2. Choose Use Microsoft Azure storage as the destination for your backup
3. Enter the storage account name you created in Windows Azure
4. Paste the access key from the previous section.
5. Enter the URL to the container. The URL format is as follows:
|Back Up Company|
ď»ż6. Click on Verify account to validate your account settings and connectivity to the container then click OK to continue. The backup performance will depend on your internet connection speed.
Now that you have a pretty good grasp on the configuration, you can begin taking advantage of Windows Azure as a secure, always available option for your Microsoft Dynamics GP data. The best part is, the data geo-redundantly stored (if this option was selected when creating the storage account) and you no longer need to rely on tapes being exposed to damage.
Until next post!
Mariano Gomez, MVP
Intelligent Partnerships, LLC
December 15, 2014
Â· Mariano Gomez Â· No Comments
Tags: backup, database, Dexterity, dynamics gp 2013, fixed-assets, General Ledger, integration, maintenance, newsgroups, sql server, windows Â· Posted in: Blogs I Follow Total Views: 49
Just before I left Microsoft, I was writing a series of blog articles about Customising the Company Login window so that you could see the full company name in the drop down list for long company names.
I had shown how to achieve the customisation with Dexterity and with Visual Basic for Applications, but was having problems getting it to work from Visual Studio Tools.
The problem was that Visual Studio Tools does not have the properties and methods to get and set the sizes of the fields. So the solution was to access the Continuum library to execute pass through Dexterity sanScript instead. My original article is below:
In the article, I explained how I was unable to get the references working to allow me to call the Continuum library. In the end, I ran out of time before I left Microsoft and so I issued a challenge to the community to take my idea and make it work.
Well, Tim Wappat from theÂ Dynamic Coding Blocks blog, took up my challenge and was able to complete the customisation. He explains how he got it working in the following article:
Based on Timâ€™s article and had another go at making this work and below the steps I used for Visual C#:
- Ensure Visual Studio Tools for Microsoft Dynamics GP is installed. If necessary use Marianoâ€™s article to get it installed on later versions of Visual Studio.
- Launch Visual Studio and create a new Microsoft Dynamics GP Addin Visual C# project. I called mine SwitchCompanyWidthVC, because I plan to write both a C# and VB.Net version.
- In the Solution Explorer, right click on References and select Add Reference.
- In the Reference Manager window expand COM and search for â€śContinuumâ€ś.
- Select the version of the Dynamics Continuum Integration Library for your version of Microsoft Dynamics GP and click OK.
- In the Solution Explorer, right click on References and select Add Reference.
- in the Reference Manager windows expand Assemblies and search for â€śForms.
- Select the System.Windows.Forms assembly and click OK.
- In the Solution Explorer, expand References and click on Application.Dynamics. The properties will be displayed. Double click on Copy Local to change it to False.
- Repeat previous step for the Microsoft.Dexterity.Bridge reference.
- Using Timâ€™s idea to store the Dexterity sanScript code as a project resource, cut the script below to the clipboard. This is the same script as used in the Dexterity version of the customisation.
- In the Solution Explorer, right click on Resources and select Add >> New Item.
- In the Add New Item window, under General select Resources File.
- Change the Name of the resource from String1 to CompanySwitchScript.
- Paste in the Dexterity sanScript code from the clipboard into the Value cell.
- Replace the project code with the Visual C# code below.
- The changes are:
- Adding Namespace for System.Windows.Forms.
- Registering the event when the Switch Company form opens.
- Handling the event by executing the previously stored Dexterity sanScript code.
- From the menus, select Build >> Build Solution.
- Copy the file â€śC:Users
DocumentsVisual Studio 2013ProjectsSwitchCompanyWidthVCSwitchCompanyWidthVCbinx86DebugSwitchCompanyWidthVC.dllâ€ťÂ to your applicationâ€™s Addins folder.
Visual C# code
using System; using System.Collections.Generic; using System.Text; using System.Windows.Forms; using Microsoft.Dexterity.Bridge; using Microsoft.Dexterity.Applications; namespace SwitchCompanyWidthVC public class GPAddIn : IDexterityAddIn // IDexterityAddIn interface public void Initialize() // Register Event to trigger when Switch Company form opens Microsoft.Dexterity.Applications.Dynamics.Forms.SwitchCompany.OpenAfterOriginal += new EventHandler(SwitchCompanyFormPre); void SwitchCompanyFormPre(object sender, EventArgs e) Dynamics.Application CompilerApp = new Dynamics.Application(); string CompilerMessage = ""; int CompilerError = 0; // Execute SanScript in Dynamics GP CompilerError = CompilerApp.ExecuteSanscript(Resources.Resource1.CompanySwitchScript, out CompilerMessage); if (CompilerError != 0) MessageBox.Show(CompilerMessage); } } }
Â Dexterity sanScript code
local integer l_adjust, h_pos, v_pos, h_size, v_size; default form to 'Switch Company'; default window to 'Switch Company'; l_adjust = 230; Field_GetPosition('(L) Company Names', h_pos, v_pos); Field_GetSize('(L) Company Names', h_size, v_size); move field '(L) Company Names' to h_pos - l_adjust, -1; resize field '(L) Company Names' to h_size + l_adjust, -1; move field '(L) RememberMe' to h_pos - l_adjust, -1; resize field '(L) RememberMe' to h_size + l_adjust, -1; move field '(L) SQL Server' to h_pos - l_adjust, -1; resize field '(L) SQL Server' to h_size + l_adjust, -1; move field 'User ID' to h_pos - l_adjust, -1; resize field 'User ID' to h_size + l_adjust, -1; move field '(L) Number of Users In' to h_pos - l_adjust, -1; resize field '(L) Number of Users In' to h_size + l_adjust, -1; move field 'Max Number User In System' to h_pos - l_adjust, -1; resize field 'Max Number User In System' to h_size + l_adjust, -1;
The end result is now the Switch company window has been modified viaÂ Visual Studio Tools.
Note: This code is a great example of using pass through Dexterity code from Visual C#, however this technique is not supported by Microsoft.
Thanks to Tim Wappat for pointing me in the right direction.
This article was originally posted on http://www.winthropdc.com/blog.
Some of the sales orders and invoices printed off were coming off in the originating company and others in the functional. … coralcurve | A Consultants Dabblings In Dynamics CRM Perfect Image Email azurecurve View Ian Grieve’s about.me View Ian Grieve’s profile on LinkedIn View azurecurve’s Feed on Twitter MVP Profile View azurecurve’s facebook page View azurecurve’s Google+ View azurecurve’s Summary RSS Feed View azurecurve’s Detailed RSS FeedÂ …
December 13, 2014
Â· Waqas Butt Â· No Comments
Tags: atom, dynamics, dynamics ax 2013, dynamics-erps-sources, microsoft-dynamics, normal-normal, purchase-order, receipt, sql server, waqas, waqas-butt Â· Posted in: Blogs I Follow Total Views: 75
ATTENTION: Fix for Issue – SmartConnect Excel Templates Stop Working after Applying Microsoft Updates from 12/9/2014
We wanted to bring to your attention a solution for a recent issue where our SmartConnect Excel templates stop working after applying Microsoft updates from 12/9/2014.
The typical symptom is that none of the buttons in the Excel Template will push, they appear to be static pictures.
This is caused by a Microsoft security update that was issued on 12/9/2014. These patches break any Excel
December 12, 2014
Â· Frank Hamelly MCP-GP MCT MVP Â· No Comments
Tags: chrome, Customizations, eone news, excel, excel templates, facebook, smartconnect, SmartView, windows Â· Posted in: Blogs I Follow Total Views: 72