Sunday 27 November 2011

Where to Download Your Product's Companion Content? How to download sample code/files of tech books.

we are pleased to offer the CD/DVD content as a free download via O'Reilly Media's Digital Distribution services. To download this content, please visit O'Reilly's web site, search for the title of this book to find its catalog page, and click on the link below the cover image (Examples, Companion Content, or Practice Files). Note that while we provide as much of the media content as we are able via free download, we are sometimes limited by licensing restrictions. Please direct any questions or concerns to booktech@oreilly.com.

http://shop.oreilly.com/category/customer-service/faq-examples.do

Thursday 24 November 2011

Referendum NZ 2011, Different voting systems

* FFP
+ Only one vote for the local MP and that mp will represent in the parliament.
+ Hard for small party to win seats.
* PV (Preferential Voting)
+ Like FFP but you rank your local MP instead. Ranking from 1 to 4
* SM (Supplementary Member)
+ Like MMP but smaller party will have less seats than the votes they get.
* STV (Single Transferable Vote)
+ Each electorate has more than one MP
+ Easy for small party to get elected.

http://www.youtube.com/user/ReferendumNZ#p

Wednesday 23 November 2011

Random, Misc

scrapple - Like spam in a tasty sause
relish - Pickled fruit and veges
Gandalf (Lord of the ring) - Ian McKellen
It smells like sweat and virginity. LOL
(Artist)Coop. Wheel girl is one of his drawings
lederhosen - German beer festival outfits for guys

Sunday 20 November 2011

Crm 4 Email Tracking

When you track an email in Crm, it means an email activity record will be generated from an income email which matches the track criteria.

Once an email is tracked, you will be able to find it in your Crm activity list with Type = E-mail

To manually track an email, click on the "Track in CRM" button in the Crm integration ribbon section in Outlook.

To automatically track an email, you need to choose how much emails to be tracked/copied into crm.



The token (e.g. CRM:0002001) is there to allow Crm to set the "Regarding" field automatically.

Email tracking CRM 4.0 - Here's 4 Easy questions

Q1. What is the difference between the three options?
1. All Emails
2. Emails in Response to CRM emails
3. E-mail messages from CRM Leads, Contacts and Accounts

The first one is obvious. The second one states that any email that originated in CRM, if replied to, the reply will be tracked in CRM. The third one specifically tracks emails from CRM Leads, Contacts and Accounts (which is obvious too).

Q2. If I click on "Set Regarding" and link an email message from one of my customers - why does it not remember next time he sends me an email and automatically "Set Regarding" to his contact record

If you have enabled Smart Matching based email correlation (On by default in CRM 4 and configurable for CRM 2011 in System Settings), AND if the second email that you want to have regarding object set automatically is part of the original thread conversation, then the email will have the regarding object set automatically. If the second email is having a different subject or set of recipients, then the email will nto have the regarding set as CRM will find that to be a different conversation.

Q3. I get some email automatically linking (getting tracked) where it says "Regarding NONE" - does that mean it's not attached to a record? where do I find that email in CRM?

Email are automatically tracked if you have chosen one if the 3 options in Q1. The Regarding object is set as None since there is no history for that email (no previous email in the thread has a regarding object set). You will be able to see all emails in the Activities Grid.

Q4. How does it decide if it should track the email and where it should put it? (is it looking at the email address only or something else)
Answered in Q3.

Thursday 17 November 2011

Things to note for a CRM3 to CRM2011 upgrade

Hi team,

Two things (I found out so far) which are important to know for a CRM3 to CRM2011 upgrade project - which need to be part of a system requirement checklist –

1. CRM 2011 requires SQL Server 2008 (use SP1 for R2 to avoid a known issue)
If the existing SQL Server in PRODUCTION is below this version, a SQL Server upgrade is required so licensing and hardware costs would need to be considered.

2. CRM 3.0 Server is NOT supported on 64bit platform
A (transitional) 32bit server is required for a CRM 3.0 to CRM 4.0 upgrade. After that, the databases would be copied and used in a 64bit server. Even though the 32bit server is only required during the upgrade, it is a part of the process we need to consider.

Wednesday 16 November 2011

How much does a Microsoft exam cost?

Microsoft $205 + GST*
http://www.auldhouse.co.nz/content/99c776d9-8745-48ef-b1c2-9f2a86af0b91.html

Monday 14 November 2011

Displaying CRM emails using SSRS 2008. PlaceHolder and its deficiency.

Place a textbox control on report and within it place the PlaceHolder by right clicking inside textbox and choose PlaceHolder.

Set the properties of the 'PlaceHolder', change Markup type to HTML.

Extract description(body) of email by query eg. Select description from filteredemail where activityid='A0773451-3DE3-DF11-9EAB-0003FFD4167C'

Set the expression value of the placeholder to description, from dataset fields.( For e.g. Fields!description.Value).

Review the report to see the following result.

Reference: http://inogic.blogspot.com/2010/11/displaying-crm-emails-using-ssrs-2008.html

=============
Another deficient of the placeholder
=============
Also the placeholder can interpret html before rendering, you can not do anything with the text after interpreting. For example, placeholder can render an html email correctly but you can not trim down the already interpreted email content to 80 characters.

Sunday 13 November 2011

Resolving "Error: Subreport Could Not Be Displayed" in Crm 2011

The error I got:

Steps I went through to fix the problem:
1: Upload the parent report as well as the sub report
2: Make the parent report property is defined sub report edit form

Database Mirroring

Configure a Microsoft Dynamics CRM organization for database mirroring
Three principle components:
MSCRM_Primary
MSCRM_Mirror
MSCRM_Witness

Database mirroring overview

Tuesday 8 November 2011

Crm 2011 XSDValidation Error when importing customization.

Crm 2011 XSDValidation Error when importing customization.


Original error message:
The import file is invalid. XSD validation failed with the following error: 'The 'dateformat' attribute is not declared.'. The validation failed at: '...utoMode="VariableCount"

The issue is that the dateformat attribute is used in the customization.xml file but it is not defined in the schema.

The FIX:
Remove the dateformat attribute from the customization.xml.
Note: importing may take a while

Other things to try when the customization failed.
* Import a partial customization
* Remove the managed solutions and try again.

Monday 7 November 2011

Crm security privileges Append, Append to, Assign

Append - To control the lookup fields of the other entities on the form of this entity

Append to - To control the lookup field of this entity on the forms of other entities

Assign - To control the Owner field of this entity.


Here is a good reference for this topic. http://community.dynamics.com/product/crm/crmtechnical/b/crminogic/archive/2010/05/03/append-v-47-s-append-to.aspx

Sunday 6 November 2011

Brew beer

Malted Barley (一点点发芽的大麦)
Hop - Add bitterness
Yeast

Wednesday 2 November 2011

Increasing the CRM 4.0 Attachment Size Limit

The default attachment file size limit in Microsoft Dynamic CRM 4.0 is 5 MB. There is good reason for this - as a general rule you should be placing some restrictions on the amount of file data that can enter CRM so that the database can maintain a reasonable size and so that performance is optimized. However, your business may find the need to increase this size a little in order to handle larger file attachments. Here are the instructions to increase the file size limit to 10 MB. You can go larger than this, but pay close attention to the table size and performance over time as you want to keep CRM running as well as possible. Note - even though the System Settings option looks like this it would apply to email attachments only, it does apply to "notes" type attachments as well. Finally, this procedure to change the max attachment size is not an officially published recommendation, so use this at your own risk. How to increase the max attachment size in CRM 4.0:


1. Open the application web.config (C:\Inetpub\CRM\web.config).


2. Locate the key within the element and change the values to the following:


3. Locate the key within the element of the

Sql tracing profiler event explained

RPC: Completed
The RPC: Completed event fires after a stored procedure is executed as a remote procedure call. It includes useful information about the execution of the stored procedure, including the CPU time used to execute the stored procedure, the total length of time the stored procedure ran, logical reads and writes that occurred during its execution, along with the name of the stored procedure itself.

SP: StmtCompleted
Stored procedures are made up of one or more statements. In SQL Server 2005, each statement within a stored procedure is traced. The SP: StmtCompleted event indicates when a statement within a stored procedure has ended. The StmtCompleted event’s data columns provide lots of useful information about the statement, including the actual code in the statement, the duration the statement ran, the amount of CPU time used, the number of logical reads and writes, the number of rows returned by the statement, among others.

SQL: BatchStarting
The SQL: BatchStarting event is fired whenever a new batch begins. Once a batch begins, then one or more individual Transact-SQL statements occur. The SQL: BatchStarting event is a good event to easily see where a batch begins, but other than this, it is not particularly useful.

SQL: BatchCompleted
The SQL: BatchCompleted event occurs when a batch completes. This means that one or more Transact-SQL statements have completed for the batch. The SQL: BatchCompleted event is more useful than the SQL: BatchStarting event because it includes useful information like the duration of the entire batch, the logical number of reads and writes caused by all the statements inside the batch, the total number of rows returned by the batch, and other useful information.

Deadlock Graph
Of seven events I have listed above, the only event you must have is the Deadlock Graph event. It captures, in both XML format and graphically, a drawing that shows you exactly the cause of the deadlock. We will examine how to interpret this drawing later in this article.

Lock:Deadlock
This event is fired whenever a deadlock occurs, and because of this, it is also fired every time the Deadlock Graph event is fired, producing redundant data. I have included it here because it makes it a little easier to see what is happening, but if you like, you can drop this event from your trace.

Lock:Deadlock Chain
This event is fired once for every process involved in a deadlock. In most cases, a deadlock only affects two processes at a time, and because of this, you will see this event fired twice just before the Deadlock Graph and the Lock:Deadlock events fire. In rare cases, more than two processes are involved in a deadlock, and if this is the case, an event will be fired for every process involved in the deadlock.

Tuesday 1 November 2011

The import file is too large to upload - Crm customization import error


Have fine fix for Crm 2011 but I am trying the Crm 4 equivalent.

http://support.microsoft.com/kb/918609

Programming and debugging tips. Debugging Crm tips

* Look deeper under the hood: Reflector, Sql Profiler, Debugger, VS Tracing, Tracing File, Log Files, Windows Event Logger...
* Compare with working version: svn, different version of database...

* if crashes on create, debug the constructor
* Always Set Stop On Exception While Doing Debugging in Visual Studio 2005 or 2008
Menu -> Debug -> Exceptions... -> Tick all the check boxes
* Attach to w3wp is unstable. F5/debug may show you more debug info
* Debug window "Call stack", "Immediate" and "Disassembly" are very useful.
* Use break point's hit count, stop condition and when hit (you can print when the statement is hit)

--Crm--
* Turn on DevErrors in web.config
* For Crm client, run the diagnosis tool.

temp table, table variable, CTE (Common Table Expression)

Rule of thumb: If logic is simple CTE, otherwise Table Variable

CTE (Common Table Expression):
* May have performance issues
* Like a sub-query
* Save you some type and make the field type consistent with the original table
* Saved in memory

Table Variable:
* Performance better
* Saved in database

Temp Table:
* Do you best to not use it

http://databases.aspfaq.com/database/should-i-use-a-temp-table-or-a-table-variable.html

Temp Table

CREATE TABLE #MyTable
(
Id int,
Name varchar(32)
)

DROP TABLE #MyTable

alternative syntax
select * into #MyTable from contacts
drop table #MyTable
-----------------------

Table Variable

DECLARE @MyTable TABLE
(
Id int,
Name varchar(32)
)

----------------------

CTE (Common Table Expression)
WITH MyTable (Id, Name)
AS
(
SELECT Id, Name
FROM User
)

Music

Roky Erickson

Exodus Honey by Honeycut

Bohemian Rhapsody by QUEEN
mamma mia let me go