Tuesday, December 18, 2018

Setup Web Deploy for Windows Server

To simplify the deployment of web apps / web services on a load balanced system, you want to use a central point for deployment (I am in an environment currently where the development happens completely outside the customer network, so there is no Build Server etc. available, we scripted the deployment).

1.) Enable the IIS features you need and dont forget "Web Server (IIS) --> Management Tools --> Management Service
2.) Install Microsoft Web Deployment Tool (https://www.iis.net/downloads/microsoft/web-deploy)

3.) Make sure the "IIS Deployment Handler" node is enabled (by default this is not checked)

4.) Open link "https://:8172/msdeploy.axd"

Note: You need to apply those changes on all web servers.

cheers

Tuesday, December 11, 2018

Powerpoint Statusslides Hell (Traffic Lights) - Solved

The last years I was looking more or less every week on status slides or I had to create them. Whereever possible, I try to use direct exports from tools like TFS and just copy the table to the deck.

Sometimes a specific format for the famous traffic lights status column is required. So most people (including me until today) were just adding a circle shape and putting it into the Status-Column.

The week after, you need to add new items to the table and your format gets broken because the circles are just not moving.
To get rid of this issue, you can easily use Symbols in Outlook.

Insert --> Symbol --> Symbol --> Select the one you need --> just change Font-Size and Color

The symbol will now be handled like every other regular text.
Alternatively you can just copy and past the black dot from below.

Black Large Circle

Result:


Cheers,
Markus

Friday, October 12, 2018

Dynamics CRM - What happens to the audit log when field gets deleted?

If you delete a field from a CRM entity, the complete column gets dropped from the database table. This is a known fact and should be mentioned explicitly in your design/userstory to avoid confusion later. The question is, what happens to the audit log itself?

I was doing some testing on 8.1.0 OnPremise and the good thing is, Microsoft is handlign this quite nice (i am not sure if this was the case from the beginning of the audit log).

I created a field "Bank Secret" in the account entity with auditing enabled, created a new account and afterwards deleted the field from form and entity again.


Result

  • The audit-entry still exists
  • the field name is flagged with a id and a "[deleted]" marker
  • The value is removed and shows the famous "audit" icon

Cheers

Thursday, September 6, 2018

Dynamics CRM - Possible values for TraceLogBase.ErrorTypeDisplay

In my current project we are cleaning up the TraceLogBase table to reduce the DB size and overall get rid of unnecessary data.

Since the documentation on MSDN is not very helpful to understand/make sure what exactly is traced in the table (only email related or other things as well), I extracted the current entries of a ~3 years old database and grouped them by "ErrorTypeDisplay". Following values I identified.

Note: Maybe not complete!
  • ExchangeSyncACTDeliveryMethodNotExchangeSynchronization
  • ExchangeSyncUnapprovedEmailAddress
  • IncomingDeliveryMethodNotEmailRouter
  • IncomingEmailRejected
  • IncomingEmailServerServiceError
  • IncomingMailboxTimeoutError
  • IncomingServerCertificateError
  • IncomingTestConfigurationSuccess
  • InvalidIncomingEmailServerProfile
  • InvalidIncomingMailboxCredentials
  • InvalidIncomingMailboxEmailAddress
  • InvalidOutgoingEmailServerProfile
  • InvalidOutgoingMailboxCredentials
  • InvalidRecipientEmailAddress
  • MailboxQuotaExceeded
  • OutgoingDeliveryMethodNotEmailRouter
  • OutgoingEmailServerServiceError
  • OutgoingMailboxSendAsPermission
  • OutgoingServerCertificateError
  • OutgoingTestConfigurationSuccess
  • RetrieveAttachmentFailure
  • UnapprovedIncomingEmailAddress
  • UnapprovedOutgoingEmailAddress

Query which also returns the amount of traces

Use
SELECT ErrorTypeDisplay, Count(*) AS 'Number of Traces'
FROM
GROUP BY ErrorTypeDisplay
ORDER BY ErrorTypeDisplay
Cheers