Microsoft

Research and backup of current office box state, soved the situation

After a short reflection, the first thing of task was to backup the exist base setup of the program IncrediMail, so i could always go back, if needed. So i had to know where the data from the program was, therefore i start a short research and found some solutions at the web. Now i had a good breakpoint to start for my original work. After this i search for some existing solutions, which could easily convert an IncrediMail office box to an outlook office box. A few solutions exist, so i had to decide the best of them under the condition to be free. The first of all, was the simplest one, therefore i had to prepare a new Virtual Machine (VM) and install Outlook Express and my Version of IncrediMail.

After this the only thing was to import the folder where the office box was from IncrediMail. So done, i was very happy, this cost me only the time for prepare the VM. After import i had to check, if the data was the same. For this one step was missing, cause the requirement at the end was Outlook 2010. Therefore i had to download the compatibility pack from Microsoft to import the Outlook Express file to the original one. After an deeper comparison, i found out that the messages were successfully imported, but the whole images assigned to this mails were missing. At this point the migration was failed, and i had to try another solution.

The second one was an freeware, which describes my problem. This seems a good solution at first. After downloading and installing, i followed the instruction on the website of the program to convert the office box. After selecting the office box files, the program shows me an error message, that my version of IncrediMail was not supported for this program. I felt bad, so i decide to take a look at the commercial version of another program for converting IncrediMail to Outlook. This program has an restriction in the testversion, that means, it only supports a clearly structure of 10 messages per folder in only one level into deep.

I got into me and thought about a few minutes. After that i had the idea to prepare the original IncrediMail messages into the required structure to convert all at one time. This idea was the gold one, but this had an impact of my progress at all, cause i had to prepare it twice in the end. The conversation of the office box took a long time, cause the office box of my friend was a huge one. After finish of the conversation, I had to prepare the messages back to the original structure. Outlook has a nice function for this requirement, cause i could mark all required messages and move them to the folder i want. At the end it cost me much nerves and some coffee to solve this, from the view of the endpoint, easy task for free.

Absolute references in Tables in Excel 2007

In MS Excel 2007 there are 3 types of cell references: absolute, relative and mixed. The use of correct type of reference provides correct behavior when dragging of the formula using references to other cells: <ol> <li><strong>Absolute</strong> e.g. $A$1 An absolute reference is not changed while dragging. For instance in cell A1 is number 100. In cell B1 we enter a formula <code>=$A$1</code>. Dragging of B1 to B2 or C1 will not change the behavior of the formula in B2 or C1 i.e. all 3 cells with the formula will show value 100. </li> <li><strong>Relative</strong> e.g. A1 A relative reference is changed in both directions while the formula is dragged. Let A1 is containing number 100, A2=200 and B1=300. We enter the formula formula <code>=A1</code> in C1. Afterwards we drag the formula into C2 and D1. The formulas in these cells will be altered so that C2 and D1 will contain formulas <code>=A2</code> (shows 200) and <code>=B1</code> (shows 300) respectively. </li> <li><strong>Mixed</strong> e.g. $A1 A mixed reference is dynamically changed in one direction only e.g. $A1 has a absolute column and relative row reference. </li> </ol> The problem is that such notation is not working when using tables in Excel 2007. We want to find out how to make a absolute reference to the whole column of a table. The syntax of relative reference to Column1 of Table1 is <code>=Table1[Column1]</code>

Optimize the source for performance

The exports use a data structure called "Excel Buffer" in Dynamics NAV. All exports fill the "Excel Buffer". If all data has been transfered into the "Excel Buffer" a function will be called which creates a new worksheet in Excel and transfer all the data from the "Excel Buffer" to the worksheet. You can speed up the export if you modify the implementation of the function which transfers the data from the "Excel Buffer" to Excel. Normally empty cells (empty strings, 0, etc.) are transfered. This is not neccessary and takes only time. Additionaly all formating is done for each cell individually when it is transfered. It is faster to transfer the values first and format the worksheet afterwards. These modifications are relatively easy to implement. You can gain even more performance if you do not format the cells individually but connected areas which have the same formats. I would recommend this only as last step if the performance is still not sufficent because this is a lit bit more complex to implement.

Fasten export from Microsoft Dynamics NAV to Microsoft Excel

<p>Automatic exports from Dynamics NAV to Microsoft Excel take long. There are various Excel-exports implemented in Dynamics NAV. For example you can export budgets to excel. There exists&nbsp; user dislike waiting for a couple of minutes until the export of huge amounts of data finishes.</p><p>If you have to export huge data amounts the export will take comparatively long.</p>

How can the creation of WCF or ASMX Web Services be simplified at high quality level?

<p>&nbsp;</p><p style="margin: 0.0px 0.0px 0.0px 0.0px; line-height: 20.0px; font: 12.0px Verdana; color: #494949;">Is there a way to increase the speed of overall web service development using .NET and preferrable WCF. This overall procedure should include the implementation, the testing, the support for documentation and the maintenance and feature extending in the future.</p> <p style="margin: 0.0px 0.0px 0.0px 0.0px; line-height: 20.0px; font: 12.0px Verdana; color: #494949; min-height: 15.0px;">&nbsp;</p> <p style="margin: 0.0px 0.0px 0.0px 0.0px; line-height: 20.0px; font: 12.0px Verdana; color: #494949;">Automatic code generation (server &amp; client) using patterns or strict conventions is preferred due to an easier communicatable result, because we use web services in way that they the user easily recognizes which parameters are requested and which are returned without searching through structures and procedures. The generation of tests should be possible at least on "Test shell" basis that can be completed. The generation should never remove own written code.</p><p style="margin: 0.0px 0.0px 0.0px 0.0px; line-height: 20.0px; font: 12.0px Verdana; color: #494949;">&nbsp;</p><p style="margin: 0.0px 0.0px 0.0px 0.0px; line-height: 20.0px; font: 12.0px Verdana; color: #494949;">Additonally, the code generation should be possible for WCF and classical (ASMX) Web Services using the same input values.&nbsp;</p><p style="margin: 0.0px 0.0px 0.0px 0.0px; line-height: 20.0px; font: 12.0px Verdana; color: #494949;">&nbsp;</p><p style="margin: 0.0px 0.0px 0.0px 0.0px; line-height: 20.0px; font: 12.0px Verdana; color: #494949;">Naturally, we do not want to use the configurability of web services. It must be able to create unsecured / open web services without authtentication, but it should also be possible to secure them. Several different binding variants are used in our system at the moment and we typically publish our services several times on different machines addressing different users. This should be easier to configure and use in the future.&nbsp;</p><p style="margin: 0.0px 0.0px 0.0px 0.0px; line-height: 20.0px; font: 12.0px Verdana; color: #494949;">&nbsp;</p><p style="margin: 0.0px 0.0px 0.0px 0.0px; line-height: 20.0px; font: 12.0px Verdana; color: #494949;">&nbsp;</p><p>&nbsp;</p>

Modify the source code

There is an option AspBufferingLimit in IIS. This option is used to limit the maximum size. But the maximum size of the buffer was even higher than the size of the files which caused the problem. Therefore this setting can't be the cause of the problem.  Finally I decided to change the asp routine. Instead of sending the file in one buffered part, the routine sends the file in a couple of smaller parts. The behaviour of the system is exactly the same for the user but the download of files works independent of the filesize.

Taggings:

Large files can't be downloaded via asp on IIS 6.0

<p>There is an existing application based on asp-pages running on IIS 6.0. In this application exists an asp routine which controls if an user has the permissions to download this file. If the user has the permission it will start the download. Else it will display an error message. The routine worked properly for a long eriod of time.</p><p>&nbsp;Now files have been added which were larger. These new files can't be downloaded. The download starts and but does not finish. It aborts while downloading.</p><p>&nbsp;It has to be possible to download files regardless of the filesize.</p>
Subscribe to Microsoft