During the course of the day I encounter lots of challenges, some of which take minutes to solve and others that take much longer. My goal for this section is to keep track of these challenges and their solutions. I will turn the longer ones into articles, while the shorter ones will stay as blog entries. You can expect topics to range from very specific programming challenges to broader topics like life.

Below is a list of the recent blog entries. You can also browse the blog by using the tags on the right side, or if you know what you are looking for then you can use the search box at the top right.

Tasks in Exchange using WebDAV

Is it just me or does everyone agree that creating tasks in Exchange 2003 is much harder than it should be? Today I and colleague spent quite some time trying to create a task, it kept giving us a 403 Forbidden. After searching around for quite some time we found out this was because we were specifying the DAV:displayname property. So after removing that we were able to create a blank item (it was E-mail item, not a task item) in a user’s task folder. Now on to the next step, assigning all the properties. We were able to specify the type by setting the outlookclass to IPM.Task and still haven’t figured out the how to assign the individual properties.

I think Microsoft really needs to add some serious documentation for Exchange 2003 and WebDAV. Until then if I get some time I will try to put a tutorial about Exchange and WebDAV once we are done with the project.

Finally the new website look is here!

"Shoooooh!" I think I am pretty close to finishing the site design! Last night I decided I should stop ripping on Drupal’s default themes and come up with something on my own. This is what I came up with. Before critiquing keep in mind that I am a programmer and not a graphics guy!

What do you say :questioning:

Task Manager’s “Tiny Footprint” Mode

Lately I have noticed that the task manager in Windows XP mysteriously started hiding all the tabs (Applications, Processes, etc.) and the borders around it. I knew the shortcuts to step through all the tabs (CTRL+TAB and CTRL+SHIFT+TAB, forwards and backwards respectively) so it wasn’t a big deal but today just out of curiosity I did a quick search on google.

After my little adventure I found out that the task manager was running in a "tiny footprint" mode! Here is the first search result where I found out what it was and this MSDN article points out another way you can get out of the tiny footprint mode. You can easily switch between the two modes by double clicking on the borders of the task manager window.

‘failed to get data’ in Microsoft Office 2003 Web Components

I have been working on a business intelligence project using Microsoft Analysis Services (AS) for quite some time and now we are getting close to the final roll out date. One of the problems that has been on the todo list is that some of the users were getting "failed to get data" errors from the Office 2003 Web Components (OWC) that we are using for presenting the data. Below is the error that PivotChart OWC was showing:

Failed to get data. If available, errors returned from the provider are listed below.

And thats it! The provider didn’t return any errors so I have no idea about actual errors. Seaching on google didn’t return any useful results so once again I was on my own :-/. After spending some time thinking about what could be causing the problem I ended up at the cube-level permission dialog box. I noticed that the "Enforce on" property for all the roles were set to "Client." Knowing that the OWC were pretty thin clients I decided to try enforcing the permissions on the server and guess what? This time the data provider actually returned an error:

Failed to get data. If available, errors returned from the provider are listed below.
* Safety settings on this machine prohibit accessing a data source on another domain

Now that is so much more helpful! So if you are in the same situation then make sure that you enforce the permissions on the server. To do this:

  1. Right click on the database in Analysis Services
  2. Click "Manage Roles…"
  3. Make sure that the "Enforce On" column has "Server" for the desired roles

Knowing that it was a security issue I just asked the admins to adjust the permissions accordingly for all the users and on towards the next hurdle! 🙂

End of Another Day

Well, its around 11pm and I need to go to sleep soon. Today, I spent most of the day working with Analysis Services (AS) and Office Web Components fixing issues and catching up on a Business Intelligence project. This project had slowed down because I was stuck with a one-to-many relationship issue, which AS doesn’t deal very well with. Finally, my supervisor helped me solve this issue by deciding to change the requirements on the available dimensions. I will try to post an article about this because after looking the newsgroups it looks like this is a common problem.

Read full post...

Testing the Image Module

Testing the image module… here is my 2003 GSX-R600 Alstare Edition, it’s an awesome machine! Next year I am planning on hitting the track but I am thinking I should get another bike that has already been prep’d for the track; taking this brand new bike to the track would not be very fair.d

Incremental Search in Visual Studio .Net 2003

A few days ago while looking around for the shorcuts to the immediate window I found out that Visual Studio .Net 2003 supports incremental searches! CTRL+I and CTLR+SHIFT+I triggers the incremental search. So far I have found it to be very useful when jumping around the code (I am used to the ‘/’ searching in VIM and Firefox) and thought I would bring it up.

For those of you who do not what incremental search is… incremental search searches for words as you type… so pressing CTRL+I and then ‘w’ will find the first occurrence of ‘a’ after the cursor, then ‘h’ will find the first occurrence of ‘wh’, then ‘i’ will find ‘whi’, and so on. The good thing about this mode is that you don’t use the find dialog box, so its becomes very handy.

Now go and start searching! 🙂

Today and GLUGnet

Well, I spent quite a lot of time today trying to merge two DataSet that were created from reading two exact XML files. Supposedly ReadXML() function should also build the relationship and setup the primary/foreign keys but from experience that wasn’t the case. This time luck was on my side since the parent row in my case had only one property and additionally I was doing an XSL transformation to create the XML that was read in. So I just modified the XSL to include the one property in the child rows and there I was, ready to move on!

Later in the day I attended the GLUGnet meeting and saw a presentation about Microsoft Reporting Services presented by by Alex Lowe of Micrsoft. And guess what? I won a copy of the ".Net – A Complete Development Cycle" book. They were also giving away a copy of Microsoft Windows Server 2003 Enterprise Edition! I wanted that so bad because that would have provided me with the budget for a tablet PC! 🙂 But anything is better than nothing, eh?!

I have wanted a Tablet PC pretty bad for quite some time but haven’t been able to justify the ~$2,400 price tag! A little more time and I might be able to justify the cost, or hey maybe I will get to review one!!! 🙂


Logitech diNovo Media Desktop Review

I don’t think many people know this but I have been writing reviews for Bona fide reviews. I just finished my review of the Logitech diNovo Media Desktop set, it’s an awesome and very sexy piece (or pieces) of equipment. Check it out here.

Now, I am thinking about the next thing that I should review… maybe the new Dell X50v! 🙂

Slow Day

Today has mostly been a very slow day. I worked on grabbing some tasks from Exchange for a little while then had to migrate my desktop app code to an web app. The desktop app was mostly a hack anyways so this was good because now I refactored the code. The new classes should really speed up the rest of the reports. I will try to write an article about my experience as soon as this project is finished.