How to programmatically import a CRM Organization? - powershell

Is there any way via powershell or some api that I can't seem to find in the CRM 4.0 SDK, that would allow us to automate the refresh from our production CRM 4.0 environment to a Staging CRM server? Obviously the db backup / restore we can script but I cannot find a way to kick off a CRM Import Organization without using the MMC snap-in.

there is a Deployment SDK for Dynamics CRM 4 available. However the interesting part for you is not part of the public api.
The documentation mentions the ImportOrganizationRequest which should be used by the Deployment Manager. Unfortunately, it is marked for internal use. However, there should be no changes to this API as Dynamics CRM 2011 is just around the corner and therefore I would give it a try.
You could use this post in the msdn forums as a starting point.
btw: Dynamics CRM 2011 comes with a set of PowerShell CmdLets which makes the adminstration much more scriptable. Especially Import-CrmOrganization would be the CmdLet which you could use. See my blog post for further information.

Related

Dependent objects for New-Object -ComObject Word.Application

We created multiple powershell scripts that read from word document and extract required information.
Locally on laptop all works fine, but when we deployed on production server.... they dont work.
We run powershell scripts through asp.net web app... that's where any powershell scripts that refers to WORD.APPLICATION are not working
Components we deployed on production server:
operating system: Windows Server 2012
Powershell: Version 5
MsOffice 2010 installed
Asp.net 4.5 all components installed
We have created web application in ASP.NET 4.5 Core where user upload documents and based on certain criteria documents will be searched for specific keyterms. if keyterms found, values will be displayed.
Asp.net invokes powershell script which has all document library code to search through. Everything gets executed in PS script, except where WORD-APPLICATION code is referred.
Has anyone faced any issues while deploying them on server?
Required reading:
https://support.microsoft.com/en-us/help/257757/considerations-for-server-side-automation-of-office
All current versions of Microsoft Office were designed, tested, and configured to run as end-user products on a client workstation. They assume an interactive desktop and user profile. They do not provide the level of reentrancy or security that is necessary to meet the needs of server-side components that are designed to run unattended.
...
Besides the technical problems, you must also consider licensing issues. Current licensing guidelines prevent Office applications from being used on a server to service client requests, unless those clients themselves have licensed copies of Office. Using server-side Automation to provide Office functionality to unlicensed workstations is not covered by the End User License Agreement (EULA).
As you can see, the scenario you're trying is officially unsupported, and license wise very expensive, as you officially require an Office license for each user invoking your functionality or for whom you're invoking the functionality.
There is an official Open XML SDK, which will allow server-side processing of the XML-based office documents:
https://learn.microsoft.com/en-us/office/open-xml/word-processing
If that isn't enough, there are a number of 3rd party libraries that provide server-side execution and don't require office licensing, some commercial, some open source:
Aspose: https://www.aspose.com/
NPIO: https://github.com/dotnetcore/NPOI
There are ways to get your code working on the server from an ASP.NET Application. They are officially unsupported, they open up your server to a number of extra security issues, they are very expensive from a licensing perspective and there is no guarantee they will remain working.

Salesforce : How to activate Apex Classes feature in Professional Edition

I am working on a salesforce project and need to add a package. The issue is that under developer console I am not able to create Apex Classses , which leads to the following error when I add the package to salesforce.
This is the error I get when I try to install the package
After reading many forums, I came to a conclusion that i need to activate Apex Author permission under permission sets.
But the permission is not present there.
I created a developer account for salesforce in which the Apex Classes where already active and was able to import the package and make changes.
The Salesforce account is Professional Edition and is not under trial.
Any help regarding this will be appretiated.
Thanks
Currently, Professional Edition (PE) does not have the ability to create, modify, or deploy Apex classes directly in an org of that edition. This includes using Apex in an unmanaged package. The Author Apex permission is only found in Enterprise, Unlimited, Performance, and Developer editions.
If you are an AppExchange Partner, you can write apps that use Apex, and send them through security review to be installed in PE orgs (as well as Group Edition).
From the Apex Code Developer guide relating to Apex and PE, you can read about the basic statement about Apex and supported editions. In the ISV Developer Guide (for App Exchange Apps and partners), you can read the specifics of what is required to get your app to run with Apex in a PE/GE org.
If you are exploring Salesforce for the purposes of writing ISV apps for Salesforce, I would also recommend taking this short self-paced learning module on ISV basics and Salesforce on the Trailhead learning platform.
Finally, there is a dedicated Salesforce stack exchange you might also look into for further question.

Microsoft CRM 2011 IFD vs Windows Auth

Can someone explain to me why one would use IFD (Internet Facing Deployment) to access Microsoft CRM vs. just using Windows Authentication? They seem equivalent to me in their features. Not sure of the benefits of IFD over Windows auth however.
Thanks!
Take a look at this previous answer for some discussion on this topic: Exposed onsite vs IFD deployments for MS Dynamics CRM
I would say from my standpoint the biggest issue with using Windows Auth over the internet for CRM is the issue of Outlook integration. The second point I would make is that Windows Auth can present issues to people accessing CRM from a non-domain computer when outside the domain - i.e., their home computer. Not always but I have seen issues pop-up (not very often) that are avoided in a forms based configuration.
As a reminder in 2011 the IFD feature has been changed signficantly so that you must use Active Directory Federation Service which is claims-based. I recommend reading over http://blogs.msdn.com/b/crm/archive/2011/01/13/configuring-ifd-with-microsoft-dynamics-crm-2011.aspx and watching the video at http://www.youtube.com/watch?v=ZD5qaa-G99E.
You can certainly go with Windows Auth but if you are willing to put in the extra work go with the Internet Facing setups for a more robust and better supported install.
I want to add to privious answer.
Integrating Outlook client from outside the domain can be done by reseting windows credential in the control panel from time to time.
another complication is SharePoint integration which can't be used outside the domain with SSO.
If you do use IFD, I recommand on this blog:
http://dynamics.co.il/configuring-crm-2011-ifd

Microsoft Dynamics CRM 4.0: Are Powershell cmdlets available?

I am entirely new to Microsoft Dynamics CRM 4.0 and have been tasked to create some automation around MS-Crm administration.
To this end, I wish to use powershell. I have found that there are cmdlets that allow you to work with CRM (see MSDN). But what I cant seem to find out is whether these cmdlets are only available in Dynamics 2011 or are they available in Dynamics 4.0 also?
I tried running "Add-PSSnapin Microsoft.Crm.PowerShell" on the server - but get an error message that the snapin is not available. So, not sure as to what is going on.
For Dynamics CRM 4 there are no PowerShell cmdlets available. However, the cmdlets which are existing for Dynamics CRM 2011 are mostly a convenient way to automate the deployment service or to access the organization settings.
Most of these is also available in Dynamics CRM 4.
Take a look at the Deployment SDK for Dynamics CRM 4.
Keep in mind that some of the cmdlets for Dynamics CRM 2011 use new features of its Deployment Service, as for example the Import-CrmOrganization cmdlet. This is not possible with the Dynamics CRM 4 Deployment Service.
There are no official PowerShell cmdlets for CRM 4, but the Deployment web service is available for 4.0. You could code against that, or create your own cmdlets that run against it.
Do you installed the Deployment Tools role ?
Have a look to this post for more informations.

Integrating SugarCRM with Microsoft Exchange Server

What I need is a connector for integrating SugarCRM with Microsoft Exchange server.
I am using SugarCRM CE 6.0.2
There are several solutions of integrating/synchronizing SugarCRM with Microsoft Exchange Server.
The first one as you pointed out is using the open source implementation of Microsoft Exchange Server's protocols from OpenChange. A complete tutorial is posted at the accelerate4.com site you mentioned above.
The official SugarCRM go-to way is using a Riva Integration Server. However there are several applications/plug-ins for synchronizing available: J-ExSync, ZuckerExchange, whereas I don't know about their quality. You might want to search through the application list on SugarForge.