15 August 2009

Build a handy Dynamics CRM development environment

Last month, Sonoma Partners and Microsoft had an very useful article for CRM developers: Setting Up Your Development Environment, I have abstract it into Chinese version. In this post, I'd like to give my idea about how to build up a handy Dynamics CRM development environment.

The typical situation is: A CRM developer runs a Virtual PC image on his/her own PC; the virtual image is a All-In-One CRM system(Windows Server/SQL/IIS/CRM/SharePoint etc.); the Host PC has Visual Studio installed. I'm not going to discuss the mutli-developers sharing one development environment using TFS in this article.

Setup Virtual PC environment:
Microsoft Virtual PC is a free software, it has all we need to host a development environment. You may firstly install Windows Server 2003/2008 on the VPC, then install AD, DNS, IIS 6/7, SQL server 2005/2008, CRM 4, etc. Finally it's a All-In-One CRM box, I'd like to point out that:

1. It can be a Domain Controller - that's for your development only, not for production.

2. You may need 3 Network Adapters in the VPC:
a. Local only - for VPC internal use
b. Microsoft Loopback Adapter - for the communication between Host and VPC
c. Host's Physical Adapter - for the Internet access via the Host PC

The communication between Host and VPC can be used by a Physical Adapter, however think about this situation:
You have a laptop which can be used at home(via Wireless) and company(via Cable), so the IP arrange / Adapter are different.
That's the reason why we need a Microsoft Loopback Adapter in this "handy" environment(BING it: how to set up a Microsoft Loopback Adapter).

3. The VPC can be set up to the On-Premise/IFD mode, so you can develop/test both CRM deployment. You may edit Host's hosts file(e.g.: C:\WINDOWS\system32\drivers\etc\hosts) to point to the IFD URL.


Setup Visual Studio on the Host PC:
You can use Visual Studio to develop/debug CRM on the Host PC, to make it work efficiently:

1. Add user credentials to access VPC (on your Host PC(I suppose it's a Windows XP system, Vista/7 are similar), go to: Control Panel>>User Accounts>>Advanced>>Manage Passwords) , then type in VPC's Server name, User name and Password, click OK to save it.



2. To make the Remote Debug work, the runas account for Visual Studio on the Host PC and the runas account for the Visual Studio Remote Debugging Monitor(msvsmon.exe) on the VPC must use the same user name, it doesn't matter whether users are in two different domains. For example, your VPC domain name call: WIN2K3, your logon user for the VPC is Administrator; However your Host PC's logon user is: CompanyDomain\jimwang, in this case, the remote debugging will not work because it's on different users names. What you can do is, use the local Administrator account on your Host PC to run Visual Studio. E.g.: you can simply create a shortcut on your desktop, target to, e.g.: %windir%\system32\RUNAS.exe /USER:HostPCName\Administrator "C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\devenv.exe" . These two users must have the same password as well.

3. How to remote debug VPC CRM from the Host PC?
Once you completed the step1 and step2, then make sure the msvsmon.exe is running on the VPC( you can copy the file from your Host PC: C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\Remote Debugger\x86\), the monitor will then waiting for new connections. Go back to your Host PC, set a Breakpoint in your project,
Then click "Debug">>"Attach to process...", in the Qualifier, type in the VPC's server information you created on step 1, e.g.: WIN2K3\Administrator@R2
And then attach w3wp.exe (Managed code).




4. How to deploy the plugins .dll file to VPC?
You need to deploy the .dll file to the VPC's file system in order to Remote Debug(see SDK for more information), the folder is, e.g.: C:\Program Files\Microsoft Dynamics CRM\Server\bin\assembly\
You may share the folder and give permission to everyone with full control, then in the Visual Studio, set up the project output path to the shared folder, e.g.: \\R2\assembly\
Now, you may have the experience that, every time you deploy/debug the project, you have to run a IISRESET on the VPC to release the previous .dll file.
I write a Windows PowerShell script to help you do the hard work, your may save it as RecycleCRMAppPool.ps1, then in Visual Studio, make it as the Pre-build event command line of the project. The script will recycle the CRMAppPool before deploy the .dll file.


$server="R2";

$co = new-object System.Management.ConnectionOptions;
$co.Authentication=[System.Management.AuthenticationLevel]::PacketPrivacy;
$co.EnablePrivileges=$true;

$wmi = [WmiSearcher] "Select * From IIsApplicationPool";
$wmi.Scope.Path = "\\$server\root\microsoftiisv2";
$wmi.Scope.Options=$co;

foreach($crmpool in $wmi.Get())
{
if($crmpool.name -eq "W3SVC/AppPools/CRMAppPool")
{
$crmpool.recycle();
}
}




5. You may also use Microsoft Dynamics CRM Develop Toolkit Visual Studio add-on to develop any plugin/workflow assembly/jscript for your CRM project, it will reduce your development time.

21 comments:

thecrmgrid said...

That's a lot of code just to recycle the application pool, Jim. Try this: http://thecrmgrid.wordpress.com/2009/08/17/restarting-the-crm-application-pool/

Jim Wang said...

Thank Greg, I supposed that the Host PC doesn't have IIS installed. :)

The PowerShell does it without IIS on the Host PC.

steven said...

Thanks for the sharing this website. it is very useful professional knowledge. Great idea you know about company background.
web application development

marlboro35 said...
This comment has been removed by the author.
marlboro35 said...

Hi Jim,

Do you know about a similar tutorial or guide for setting up a CRM 3.0 Dev Env ??

We have a running MSCRM 3.0 and need to setup an isolated environment to develop and test some customizations and in the process to train new people to maintain them in the future.

We have ASP/.Net trained programmers but the initial CRM deployment was made by some other company.

We would like to start a new development setup, import current customizations and start from there our develoment. Later, when changes are aproved, deploy them to the production environment.

Ready-to-run VPC solutions we could find around there seem outdated and are set to expire last year´s end.

We suppose we´ll have to deploy a new server (perhaps on a VPC) but we´re no t sure about the impact it could have on the current setup. We´re not sure about AD, SQL Databases, Exchange and licensing issues we may encounter on the road ahead.

Is there any hint you could give us ?

Thanks a lot in advance !!

Alberto

Aleena said...

This seems to be a great site which offers Headset Adapter, Headset Adaptor, PC Headset To Iphone Adapter, RJ11 To RJ 9 Adapter, Phone Headset Adapter, Xbox 360 Headset Adapter, Computer Headset, PC Headset etc. and i would surely like to try their service...i had been relying on http://www.theheadsetbuddy.com earlier and they too offered good stuff.

Omega software said...

Keep up the fantastic piece of work, I read few blog posts on this web site and I believe that your site is real interesting and has lots of great information. ERP Software in Mumbai || System Software || CRM Software in Mumbai || MLM Software

Omega software said...

I really appreciate spending some time to talk about that, I believe firmly regarding this and so really enjoy understanding more about this kind of subject.This is also a very good post which I really enjoyed reading. It is not everyday that I have the possibility to see something like this. CRM Software || MLM Software in Mumbai || ERP Software || System Software in Mumbai

Muhammad Muddassar said...

Thanks for sharing a best informetion
CRM Development Dubai:ERP Development Dubai

Đào Quân said...

dich vu ke toan dích vu lam bao cao tai chinh tín
khóa học kế toán thực hành re
công ty dịch vụ kế toán
dich vu ke toan thue tai bac ninh
dịch vụ kế toán trọn gói tại hà nội
dịch vụ kế toán tại tp.hcm
dịch vụ báo cáo thuế
dịch vụ quyết toán thuế uy
trung tâm đào tạo kế toán tại tphcm
trung tâm đào tạo kế toán tại cầu giấy tín
trung tâm đào tạo kế toán tại long biên
trung tâm đào tạo kế toán tại hà đông re
trung tâm kế toán tại thanh xuân
trung tâm kế toán tại bắc ninh
trung tâm kế toán tại bình dương
trung tâm kế toán tại hải phòng
dịch vụ quyết toán thuế tại quận bình thạnh
dịch vụ quyết toán thuế tại quận tân phú
dịch vụ quyết toán thuế tại quận 5
dịch vụ quyết toán thuế tại quận 3
dịch vụ quyết toán thuế tại tphcm
dịch vụ quyết toán thuế tại quận cầu giấy
dịch vụ quyết toán thuế tại quận long biên
dịch vụ quyết toán thuế tại quận hà đông
dịch vụ quyết toán thuế tại quận thanh xuân

Đào Quân said...

dịch vụ làm báo cáo tài chính tại quận cầu giấy
dịch vụ làm báo cáo tài chính tại quận hai bà trưng
dịch vụ làm báo cáo tài chính tại quận ba đình
dịch vụ làm báo cáo tài chính tại thanh trì
dịch vụ làm báo cáo tài chính tại quận hoàng mai
dịch vụ làm báo cáo tài chính tại quận tây hồ
dịch vụ làm báo cáo tài chính tại quận đống đa
dịch vụ kế toán thuế tại quận cầu giấy
dịch vụ kế toán thuế tại quận thanh xuân
dịch vụ kế toán thuế tại bắc ninh
dịch vụ kế toán thuế tại quận hai bà trưng
dịch vụ kế toán thuế tại từ liêm
dịch vụ kế toán thuế tại hoàng mai
dịch vụ kế toán thuế tại ba đình
dịch vụ kế toán thuế tại thanh trì
dịch vụ kế toán thuế tại thái bình
công ty dịch vụ kế toán tại vĩnh phúc
công ty dịch vụ kế toán tại hưng yên
công ty dịch vụ kế toán tại phú thọ
công ty dịch vụ kế toán tại hải dương
công ty dịch vụ kế toán tại hải phòng
công ty dịch vụ kế toán tại bắc ninh
dịch vụ kế toán thuế tại vĩnh phúc
dịch vụ kế toán thuế tại hưng yên
dịch vụ kế toán thuế tại hải dương

Đào Quân said...

dịch vụ dọn dẹp sổ sách kế toán
dịch vụ dọn dẹp sổ sách kế toán tại thái bình
dịch vụ dọn dẹp sổ sách kế toán tại phú thọ
dịch vụ dọn dẹp sổ sách kế toán tại hưng yên
dịch vụ dọn dẹp sổ sách kế toán tại quận hải dương
dịch vụ dọn dẹp sổ sách kế toán tại hải phòng
dịch vụ dọn dẹp sổ sách kế toán tại quận thanh trì
dịch vụ dọn dẹp sổ sách kế toán tại quận hoàng mai
dịch vụ dọn dẹp sổ sách kế toán tại quận hai bà trưng
dịch vụ dọn dẹp sổ sách kế toán tại quận hoàn kiếm
dịch vụ dọn dẹp sổ sách kế toán tại quận từ liêm
dịch vụ dọn dẹp sổ sách kế toán tại quận ba đình
dịch vụ dọn dẹp sổ sách kế toán tại quận tây hồ
dịch vụ dọn dẹp sổ sách kế toán tại quận đống đa
dịch vụ dọn dẹp sổ sách kế toán tại bắc ninh
dịch vụ dọn dẹp sổ sách kế toán tại quận tphcm
dịch vụ dọn dẹp sổ sách kế toán tại quận cầu giấy
dịch vụ dọn dẹp sổ sách kế toán tại quận long biên
dịch vụ dọn dẹp sổ sách kế toán tại quận hà đông
dịch vụ dọn dẹp sổ sách kế toán tại quận thanh xuân
dich vu hoan thue gtgt

Đào Quân said...

dịch vụ làm báo cáo tài chính tại huyện củ chi
dịch vụ làm báo cáo tài chính tại quận bình tân
dịch vụ làm báo cáo tài chính tại quân phú nhuận
dịch vụ làm báo cáo tài chính tại quận gò vấp
dịch vụ làm báo cáo tài chính tại quận thủ đức
dịch vụ làm báo cáo tài chính tại quận bình thạnh
dịch vụ làm báo cáo tài chính tại quận tân phú
dịch vụ làm báo cáo tài chính tại quận 12
dịch vụ làm báo cáo tài chính tại quận 11
dịch vụ làm báo cáo tài chính tại quận 10
dịch vụ làm báo cáo tài chính tại quận 9
dịch vụ làm báo cáo tài chính tại quận 8
dịch vụ làm báo cáo tài chính tại quận 7
dịch vụ làm báo cáo tài chính tại quận 6
dịch vụ làm báo cáo tài chính tại quận 5
dịch vụ làm báo cáo tài chính tại quận 4
dịch vụ làm báo cáo tài chính tại quận 3
dịch vụ làm báo cáo tài chính tại quận 2
dịch vụ làm báo cáo tài chính tại quận 1

Đào Quân said...

dịch vụ báo cáo thuế tại tỉnh bình dương
dịch vụ báo cáo thuế tại quận bình thạnh
dịch vụ báo cáo thuế tại quận tân phú
dịch vụ báo cáo thuế tại quận 5
dịch vụ báo cáo thuế tại quận 3
dịch vụ báo cáo thuế tại tphcm
dịch vụ báo cáo thuế tại quận long biên
dịch vụ báo cáo thuế tại quận hà đông
dịch vụ báo cáo thuế tại quận thanh xuân
dịch vụ báo cáo thuế tại quận cầu giấy
dịch vụ báo cáo thuế tại gia lâm
dịch vụ báo cáo thuế tại đông anh
dịch vụ báo cáo thuế tại thanh trì
dịch vụ báo cáo thuế tại quận hoàng mai
dịch vụ báo cáo thuế tại quận hai bà trưng
dịch vụ báo cáo thuế tại quận từ liêm
dịch vụ báo cáo thuế tại quận hoàn kiếm
dịch vụ báo cáo thuế tại quận tây hồ
dịch vụ báo cáo thuế tại quận ba đình
dịch vụ báo cáo thuế tại quận đống đa

Đào Quân said...

lớp học kế toán tổng hợp
lớp học kế toán thực hành
khóa học kế toán tổng hợp tại vinh nghệ an
trung tâm đào tạo kế toán tại vinh nghệ an
khóa học kế toán thực hành
Khóa học kế toán tổng hợp thực hành tại bắc ninh
Khóa học kế toán tổng hợp thực hành tại hải phòng
Khóa học kế toán tổng hợp thực hành tại tphcm
Khóa học kế toán tổng hợp thực hành tại bình dương
Khóa học kế toán tổng hợp thực hành tại hà đông
Khóa học kế toán tổng hợp thực hành tại cầu giấy
Khóa học kế toán tổng hợp thực hành tại long biên
Khóa học kế toán tổng hợp thực hành tại thanh xuân
dịch vụ kê khai làm báo cáo thuế hàng tháng
dịch vụ kế toán thuế trọn gói chuyên nghiệp giá rẻ
dịch vụ làm báo cáo tài chính giá rẻ
dịch vụ kế toán trọn gói chuyên nghiệp giá rẻ
dịch vụ rà soát dọn dẹp sổ sách kế toán chuyên nghiệp giá rẻ
dịch vụ quyết toán thuế chuyên nghiệp giá rẻ

Đào Quân said...

Lớp học kế toán tổng hợp thực hành tại hải phòng
Lớp học kế toán tổng hợp thực hành tại biên hòa đồng nai
Lớp học kế toán tổng hợp thực hành tại vinh nghệ an
Lớp học kế toán tổng hợp thực hành tại hải dương
Lớp học kế toán tổng hợp thực hành tại ninh bình
Lớp học kế toán tổng hợp thực hành tại hưng yên
Lớp học kế toán tổng hợp thực hành tại phú thọ
Lớp học kế toán tổng hợp thực hành tại hà nam
Lớp học kế toán tổng hợp thực hành tại vĩnh phúc
Lớp học kế toán tổng hợp thực hành tại bắc giang
Lớp học kế toán tổng hợp thực hành tại thái nguyên
Lớp học kế toán tổng hợp thực hành tại thái bình
Lớp học kế toán tổng hợp thực hành tại nam định
Lớp học kế toán tổng hợp thực hành tại thanh hóa
Lớp học kế toán tổng hợp thực hành tại tphcm
Lớp học kế toán tổng hợp thực hành tại bắc ninh
Lớp học kế toán tổng hợp thực hành tại hà đông
Lớp học kế toán tổng hợp thực hành tại long biên
Lớp học kế toán tổng hợp thực hành tại thanh xuân
Lớp học kế toán tổng hợp thực hành tại cầu giấy
khóa học kế toán toán dành cho giám đốc và nhà quản lý
công cụ dụng cụ
thủ tục thanh lý tài sản cố định
bảng cân đối kế toán
thuế thu nhập cá nhân năm 2015
phần mềm htkk 3.3.1

Đào Quân said...

hướng dẫn sử dụng hàm vlookup
thủ tục hoàn thuế thu nhập cá nhân
chi phí không được khấu trừ khi tính thuế tndn
chi phí không được khấu trừ khi tính thuế tndn
một số lỗi liên quan đến phần mềm htkk
cách kê khai bổ sung thế gtgt
cách lập bảng cân đối kế toán
cách lập báo cáo kết quả hoạt động kinh doanh

cách tính thuế gtgt theo phương pháp khấu trừ
xử lý hóa đơn sai
cách viết hóa đơn gtgt khi bán hàng
xử lý khi viết sai hóa đơn gtgt
lập tờ khai thuế gtgt mẫu 01
cách kê khai thuế gtgt theo tháng quý
cách tính thuế gtgt theo phương pháp trực tiếp
câu hỏi thường gặp về hóa đơn chứng từ
kê khai thuế tndn tạm tính quý
cách tính thuế gtgtg mới nhất
cách lập tờ khai thuế gtgt trên doanh thu 04
cách lập tờ khai thuế tndn 01b
ghi sổ kế toán theo hình thức nhật ký chung
xử lý khi phát hiện thừa thiếu hàng hóa
cách lập tờ khai thuế tndn 01a
xử lý khi phát hiện thừa thiếu hàng hóa

Đào Quân said...

hóa đơn hợp pháp và bất hợp pháp
cách lập bảng kê hóa đơn chứng từ bán ra
cách lập bảng kê hóa đơn chứng từ mua vào
kiểm tra thuế tndn chuẩn bị quyết toán thuế
hạch toán khoản truy thu thuế
biện pháp kê khai bổ sung thuế gtgt
cách làm báo cáo tài chính sử dụng hóa đơn
cách viết hóa đơn điều chỉnh tăng giảm
cách tính giá thành theo phương pháp giản đơn
viết hóa đơn điều chỉnh tăng giảm
một số hàm excel thường dùng
kiểm tra báo cáo tài chính
hạch toán công cụ dụng cụ
xử lý và mức phạt cháy hỏng hóa đơn
phân biệt hóa đơn xóa bỏ và hủy
các khoản giảm trừ thuế thu nhập cá nhân

Đào Quân said...

căn cứ tính thuế đối với thu nhập từ đầu tư vốn
cách tính thuế đối với thu nhập từ chuyển nhượng vốn
cách khấu trừ thuế thu nhập cá nhân
hướng dẫn quyết toán thuế tncn
hướng dẫn hoàn thuế tncn
hướng dẫn thuế tndn
sửa đổi về thuế tndn
miễn thuế thu nhập cá nhân
người nộp thuế tncn là những ai
hoàn thuế gtgt
báo cáo thuế quý gồm những gì
cách lập hóa đơn gtgt
cách đăng ký thuế thu nhập cá nhân
lưu ý khi thực hiện quyết toán thuế tncn
hướng dẫn sử dụng một số hàm cơ bản trong excel
Một số sai sót thường gặp khi hạch toán kế toán
một số sai sót kế toán và cách sửa chữa
mẹo tô màu xen kẽ các dòng trên bảng tính lớn trong Excel
cách mở nhiều bảng tính khác nhau trong Excel
mức phạt nộp chậm thuế gtgt
quy định mới về hóa đơn bán hàng

Đào Quân said...

thông tư 200
địa chỉ học kế toán
khóa học kế toán dành cho giám đốc
dịch vụ thành lập doanh nghiệp công ty trọn gói giá rẻ
trung tâm đào tạo kế toán tại hải dương
trung tâm đào tạo kế toán tại biên hòa đồng nai
lớp học kế toán tại biên hòa đồng nai
trung tâm đào tạo kế toán tại vinh nghệ an
trung tâm đào tạo kế toán tại quận 9
trung tâm đào tạo kế toán tại vĩnh phúc
trung tâm đào tạo kế toán tại hưng yên
trung tâm đào tạo kế toán tại phú thọ
trung tâm đào tạo kế toán tại bà rịa vũng tàu
trung tâm đào tạo kế toán tại quận 3 tphcm>trung tâm đào tạo kế toán tại quận 3
trung tâm đào tạo kế toán tại đà nẵng
trung tâm đào tạo kế toán tại huế
lớp học kế toán tổng hợp tại đà nẵng
lớp học kế toán tổng hợp tại huế
trung tâm đào tạo kế toán tại vinh nghệ an
trung tâm đào tạo kế toán tại đà nẵng
trung tâm đào tạo kế toán tại bà rịa vũng tàu
trung tâm đào tạo kế toán tại huế
khóa học kế toán dành cho người mới bắt đầu
khóa học kế toán dành cho người đã học kế toán

Đào Quân said...

học kế toán thực hành cấp tốc
học kế toán thực hành cấp tốc
học kế toán thực hành tại cầu giấy
học kế toán thực hành tại thanh xuân
]học kế toán thực hành tại hà đông
học kế toán thực hành tại long biên
học kế toán thực hành tại long biên
học kế toán thực hành tại hải phòng
học kế toán thực hành tại bắc ninh
học kế toán thực hành tại tphcm
học kế toán thực hành tại quận 3
học kế toán thực hành tại hải phòng
học kế toán thực hành tại bắc ninh
học kế toán thực hành tại bình dương
học kế toán thực hành tại biên hòa
học kế toán thực hành tại vinh
học kế toán thực hành tại vinh
học kế toán thực hành tại huế
học kế toán thực hành tại đà nẵng
học kế toán thực hành tại đà nẵng
học kế toán thực hành tại đà nẵng
học kế toán thực hành tại hải dương
học kế toán thực hành tại hưng yên
học chứng chỉ kế toán
học kế toán ở đâu tốt