MSDN Blog Postings

via RSS Feed

Table Data Type values (used in Record Links)

Posted by on September 3rd, 2010

Sometime ago I have promised to publish the numbers used in NAV for the data types. These numbers are used all over the system, but are more visible when encoding record links (please refer to my post about encoding record links). This list contains the data types that are available in Tables in NAV 2009 SP1.

Data type

ID

Comment

Integer

00 86

 

Text

00 88

 

Code

00 89

 

Decimal

00 32

 

Option

00 8B

 

Boolean

00 85

 

Date

00 2E

(0×2E ‘+’ 0)

Time

01 2E

(0×2E ‘+’ 1)

Binary

N/A

 

BLOB

N/A

 

DateFormula

16 2E

(0×2E ‘+’ 22)

TableFilter

N/A

 

BigInteger

00 8D

 

Duration

00 90

 

GUID

00 91

 

RecordID

7D 13

(0×13 ‘+’ 125)

DateTime

00 92

 

 

Internally some types are “extensions” of other types, and therefore are composed as a base type and subtype ID. As an example Time (2E ‘+’ 1) is a “subtype” of Date (2E ‘+’ 0).


This post originated from and is provided by the MSDN Blogs RSS feed. The original post of the article can be found here.

Posted in MSDN Blogs | Comments Off

Update on the Windows Azure Platform online conference, 20 September

Posted by on September 3rd, 2010

Check out Eric Nelson’s blog for an update on the Windows Azure Platform online conference, and feast your eyes on a skeleton agenda.


This post originated from and is provided by the MSDN Blogs RSS feed. The original post of the article can be found here.

Posted in MSDN Blogs | Comments Off

Diagnosing CRM Issues with Tracing

Posted by on September 3rd, 2010

Tracing is a means that you can use to get detailed information about the inner workings of your Microsoft Dynamics CRM Server and Outlook Client’s. Tracing is very simple to use and is the 2nd level of effort when hunting down issues. The first step is at the functional level. This includes application settings, workflows, and looking at scripts. A common area to look at first are your workflows. Workflows allow you  flexibility in your business process but you could have some logic errors.

How to enable tracing in Microsoft Dynamics CRM http://support.microsoft.com/kb/907490
Once you’ve turned on Tracing, the application will produce a log file that you can then analyze or hand off to support.

So, what’s in a trace anyway ? It’s a text file with a history of actions by the program. Here’s an example partial trace. You’ll notice it’s quite verbose and might seem daunting to look through.
The next step is using a tool to help analyze the trace.

# CRM Tracing Version 2.0
# LocalTime: 2010-09-02 08:17:05.4
# Categories: *:Verbose
# CallStackOn: Yes
# ComputerName: DEMOBOX
# CRMVersion: 4.0.7333.2862
# DeploymentType: OnPremise
# ScaleGroup:
# ServerRole: AppServer, AsyncService, DiscoveryService, WebService, ApiServer, HelpServer, DeploymentService

[2010-09-02 08:17:05.4] Process: w3wp |Organization:00000000-0000-0000-0000-000000000000 |Thread:   18 |Category: Application |User: 00000000-0000-0000-0000-000000000000 |Level: Verbose | AppWebService.Dispose
at AppWebService.Dispose(Boolean disposing)
at MarshalByValueComponent.Dispose()
at ServerProtocol.DisposeServerInstance()
at WebServiceHandler.Invoke()
at WebServiceHandler.CoreProcessRequest()
at SyncSessionlessHandler.ProcessRequest(HttpContext context)
at CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
at ApplicationStepManager.ResumeSteps(Exception error)
at HttpApplication.System.Web.IHttpAsyncHandler.BeginProcessRequest(HttpContext context, AsyncCallback cb, Object extraData)
at HttpRuntime.ProcessRequestInternal(HttpWorkerRequest wr)
at HttpRuntime.ProcessRequestNoDemand(HttpWorkerRequest wr)
at ISAPIRuntime.ProcessRequest(IntPtr ecb, Int32 iWRType)
>AppWebService Destructed: Microsoft.Crm.Application.WebServices.LookupService
[2010-09-02 08:17:06.8] Process: w3wp |Organization:00000000-0000-0000-0000-000000000000 |Thread:   18 |Category: Platform |User: 00000000-0000-0000-0000-000000000000 |Level: Verbose | SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute
at SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
at ApplicationStepManager.ResumeSteps(Exception error)
at HttpApplication.System.Web.IHttpAsyncHandler.BeginProcessRequest(HttpContext context, AsyncCallback cb, Object extraData)
at HttpRuntime.ProcessRequestInternal(HttpWorkerRequest wr)
at HttpRuntime.ProcessRequestNoDemand(HttpWorkerRequest wr)
at ISAPIRuntime.ProcessRequest(IntPtr ecb, Int32 iWRType)
>MapOrgEngine: Retreived the OrgId[{CC06919E-44AD-DF11-A5D2-0050569E2DB6}] for URL[http://dmsextascrm01:5555/AEGONTLP/sfa/accts/edit.aspx?id={144869C0-ECAE-DF11-B909-0050569E2DB6}].
[2010-09-02 08:17:06.8] Process: w3wp |Organization:00000000-0000-0000-0000-000000000000 |Thread:   18 |Category: Platform |User: 00000000-0000-0000-0000-000000000000 |Level: Verbose | SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute
at SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
at ApplicationStepManager.ResumeSteps(Exception error)
at HttpApplication.System.Web.IHttpAsyncHandler.BeginProcessRequest(HttpContext context, AsyncCallback cb, Object extraData)
at HttpRuntime.ProcessRequestInternal(HttpWorkerRequest wr)
at HttpRuntime.ProcessRequestNoDemand(HttpWorkerRequest wr)
at ISAPIRuntime.ProcessRequest(IntPtr ecb, Int32 iWRType)

Analyzing the trace is the key to solving your CRM hiccups. There are few different trace viewers available. Here’ is one from Codeplex - Trace Viewer.

Notice you can filter to see only the error messages.

TraceMenu

Next, you can evaluate the error message and read the details

TraceMenu

The details shows us that a stored procedure is missing. The next step is to determine how to resolve the issue and what caused the issue.

At this point, you should consider contacting support to assist you.

Knowing how to capture a trace and do some preliminary analysis can help you speed up the time to find resolutions. Including a trace file with you support incidents can also
improve the time to a resolution.

-cheers

Jon White | CRM Premier Field Engineer | Microsoft Dynamics US


This post originated from and is provided by the MSDN Blogs RSS feed. The original post of the article can be found here.

Posted in MSDN Blogs | Comments Off

I knew where Nepal was before Raiders of the Lost Ark. Did you?

Posted by on September 3rd, 2010

THE WINDOWS 7 NEPALI LANGUAGE INTERFACE PACK IS LIVE!

(Click here to download the Nepali Windows 7 LIP via the Microsoft.com Download Center)

Please note that the Nepali  Windows 7 LIP can only be installed on a system that runs an English client version of Windows 7.   It is available to download for both 32-bit and 64-bit systems.

The Nepali Windows 7 LIP is produced as part of the Local Language Program sponsored by Public Sector.

A LITTLE BACKGROUND INFORMATION ON NEPALI:

NUMBER OF SPEAKERS:

20 million speakers worldwide

NAME IN THE LANGUAGE ITSELF:

नेपाली  

Nepali (sometimes also referred to as “Nepalese”) is the official language of Nepal where it is spoken by 11 million people as a mother tongue and by about 2 million people as a second language. Nepali is spoken indigenously over most of western Nepal, then progressively less further to the east.  It is related to Hindi but has borrowed fewer words from Persian and English (instead using more Sanskrit derivations) and it has been influenced by the neighboring Tibeto-Burman languages.

Nepali is also official language in the Indian state of Sikkim and is spoken by substantial minorities in parts of Assam West Bengal (around Darjeeling) and in the country Bhutan.

Interesting features of the language include the socio-linguistically complex pronouns (there are different forms depending on the social status of the person spoken to or of) and the existence of parallel negative conjugations of verbs.

FUN FACT:

Nepali developed a significant literature within a short period of hundred years in the nineteenth century. The contribution of trio-laureates Poudyal, Devkota, and Sama took Nepali to the level of other world languages. The contribution of expatriate writers outside Nepal — especially in Darjeeling and Varanasi — is also notable.

CLASSIFICATION:

Nepali belongs to the so-called Pahari languages (including, for example, Hindi), a group of Indo-Aryan languages spoken in the lower elevations of the Himalaya which belong to the Indo-European language family.

SCRIPT:

Nepali is written in Devanagari script (which is also used for Hindi, Marathi, and several other languages).

Enjoy!


This post originated from and is provided by the MSDN Blogs RSS feed. The original post of the article can be found here.

Posted in MSDN Blogs | Comments Off

What happens to a named object when all handles to it are closed?

Posted by on September 3rd, 2010

A customer had a question about named kernel objects:

I understand that handles in a process
if leaked will be destroyed by the kernel when the process exits.
My question would be around named objects.

Would named objects hold their value indefinitely?
If I run a small utility app to increment a named counting semaphore,
the count of that named semaphore could be lost when that app exits?

I would expect it to always hold its current value
so that transactions across processes and across time
could be held even if no process is holding on to it.

When the last handle to a named kernel object
(such as a named semaphore or a named shared memory block)
is closed,
the object itself is destroyed.
Doesn’t matter whether you explicitly closed the handle
by calling CloseHandle or the kernel closed
the handle for you when it cleaned up the mess you left behind.
The object manager doesn’t say,
“Well, if the application explicitly called CloseHandle,
then I’ll also delete the named object, but if the application
leaked the handle, then I’ll leave the named object around.”

First of all, that would kind of belie the whole concept of clean-up.
Cleaning up means destroying the resources the application neglected to.

Second, this would create a bizarre situation where the way to
access a new feature is
to intentionally do something wrong.
(Namely, to leak a handle to a named object.)

Okay, so maybe the expectation was that named objects persisted
after all handles to them are closed,
even if the handle is closed via the normal CloseHandle
mechanism.
But then how would you delete a named object?
There is no DeleteNamedEvent function,
after all.
You could write a process that created 2 billion named objects
and then leaked them.
Boom, now you can’t clean up by killing the process;
you have to restart the computer.

Kernel objects all follow the same lifetime rules,
whether they are named or anonymous:
The object is destroyed when the last reference to it is removed
(when the handle is closed, noting also that running threads and
processes keep a reference to the corresponding kernel object).

If you want something that survives after all its handles are closed,
then use something with a persistence model, like a file.


This post originated from and is provided by the MSDN Blogs RSS feed. The original post of the article can be found here.

Posted in MSDN Blogs | Comments Off

Quote of the Day: On the Efficiency of Government

Posted by on September 3rd, 2010

“If you put the federal government in charge of the Sahara Desert, in five years there’d be a shortage of sand.” - Milton Friedman


This post originated from and is provided by the MSDN Blogs RSS feed. The original post of the article can be found here.

Posted in MSDN Blogs | Comments Off

Не место красит разработчика, а…

Posted by on September 3rd, 2010

RSDN совместно с Microsoft сообщают о фотоконкурсе лучших рабочих мест разработчика. В период с 1 сентября по 13 сентября 2010 года на конкурс принимаются фотографии вашего рабочего места. О призах, правилах участия и критериях оценки работ можно узнать на сайте RSDN.


This post originated from and is provided by the MSDN Blogs RSS feed. The original post of the article can be found here.

Posted in MSDN Blogs | Comments Off

Steve Marx Reads The Azure Tea Leaves on Connected Show #36

Posted by on September 3rd, 2010

Peter Laudati & Dmitry Lyalin host the edu-taining Connected Show developer podcast on cloud computing and interoperability. Check out episode #36, “Steve Marx on Azure” .  In this episode, the one and only Windows Azure Tactical Strategist, Steve Marx , joins Dmitry and Peter to give us an update on the Windows Azure platform. Steve talks about common real world Windows Azure use patterns, including storage and compute instance configurations.  Steve uses some strategic tactics to…(read more)
This post originated from and is provided by the MSDN Blogs RSS feed. The original post of the article can be found here.

Posted in MSDN Blogs | Comments Off

This is a really cool panoramic stitching tool!

Posted by on September 3rd, 2010

 

If you are like me and use the “burst” mode on your camera to take a bunch of pictures on your digital camera, then this link will definitely be of interest:

Image Composite Editor

It composes the pictures quickly and that makes it FUN!  Give it a try.  Here is a picture from Warsaw, Poland when I was there for the Imagine Cup 2010:

 

Imagine Cup 2010 stitch


This post originated from and is provided by the MSDN Blogs RSS feed. The original post of the article can be found here.

Posted in MSDN Blogs | Comments Off

Microsoft Dynamics ERP Licensing Guide

Posted by on September 3rd, 2010

As a Microsoft Dynamics partner are you looking for clarification on Microsoft Dynamics ERP licensing and additional guidance? If so, check out the new Microsoft Dynamics ERP Licensing Guide. This guide isn’t just a huge document full of text. It has visual examples, scenerios, and comparison charts.

Use this guide to improve your understanding of how to license Microsoft Dynamics ERP solutions. It provides an overview of Microsoft Dynamics ERP Licensing requirements for Business Ready Licensing and Service Provider License Agreement (SPLA) for Hosted Solutions.

–Kevin


This post originated from and is provided by the MSDN Blogs RSS feed. The original post of the article can be found here.

Posted in MSDN Blogs | Comments Off