Shai Raiten

WIIFM? Alot !!!

 Subscribe in a reader

Microsoft MVP’s,MRD’s, MRS’s and UG Managers Summit - Israel

Microsoft MVP’s,MRD’s, MRS’s and UG Managers Summit - Israel

Microsoft Israel arranged a “Movie Meeting” (we saw Avatar – My second time – still great movie) for all Microsoft Experts in Israel.
The event were take place in Rav-Chen Ayalon Ramat-Gan, good food, drinks, gadgets and most important good People.

It’s very nice to take a break from work and meet all those great people in one place without work involved :-D

Here is some pictures from the event:

IMG_3921 IMG_3922 IMG_3923 IMG_3924 IMG_3925 IMG_3926 IMG_3927 IMG_3928 IMG_3929 IMG_3930 IMG_3931 IMG_3932 IMG_3933 IMG_3934 IMG_3935  IMG_3937 IMG_3938 IMG_3939 IMG_3940 IMG_3941 IMG_3942  IMG_3944 IMG_3945  IMG_3948  IMG_3950 IMG_3951 IMG_3953 IMG_3954 IMG_3955 IMG_3956 IMG_3957 IMG_3958 IMG_3914 IMG_3915 IMG_3916 IMG_3917 IMG_3918 IMG_3919 IMG_3920

Posted: Feb 08 2010, 11:34 PM by shair | with 2 comment(s)
תגים:, , ,
How To Add File Upload To Team System Web Test With Relative Path

How To Add File Upload To Team System Web Test With Relative Path

In the past I’ve write on How To Add File Upload To Team System Web Test, I got a question - Is there a way give a relative path of the document ?

image

Open Test Settings window - (See Below Image)

image

Enable deployment and add the files needed to file upload.

image

Now when running the test Team System will copy the files into the TestResult folder.

image

Than you can use this path.

image

Hope this helps.

PHP On Windows - Summary

PHP On Windows - Summaryphp-loves

Last week I attended in Guy Burstein lecture about PHP On Windows, you may ask what the relation between Me (Team System) and PHP?
In the past I was a PHP developer so a small part of me was curious to hear what new for PHP developers under Windows.

IMG_3896 IMG_3900

I came to this lecture with just one question –

Why?

As you know PHP on windows is not new, using ISAPI you can install PHP on IIS but still the question remains - Way?

  • Even when using ISAPI PHP will not work on windows like he works on Apache (A lot performance problems).
  • Money… Windows cost money…..
  • Visual Studio is not so PHP friendly.

In spite of all this, Guy Burstein always has good answers and off course good performance, so here is 4 Big Reasons Why, I’ve learned from Guy’s lecture.

Reason 1: FastCGI = Very Fastphp-fastcgi

The IIS FastCGI component enables popular application frameworks like PHP be hosted on the IIS web server in a high-performance and reliable way.

FastCGI helps these application frameworks to achieve improved performance on Windows over CGI, while allowing stable operation in production environments

Getting started with IIS and PHP

Community PHP for Windows at PHP.net

The Open Source Community at Microsoft

Reason 2: Microsoft Web Platform Installer 2.0

The Microsoft Web Platform Installer 2.0 (Web PI) is a free tool that makes getting the latest components of the Microsoft Web Platform, including Internet Information Services (IIS), SQL Server Express, .NET Framework and Visual Web Developer easy. The Web PI also makes it easy to install and run the most popular free web applications for blogging, content management and more with the built-in Windows Web Application Gallery.

Installing Web Apps or updating the Microsoft Web Platform, Web PI’s improved validation support ensures everything just works.

Using Web Platform Installer you can install PHP application on Windows without any need to do manual configuration just selecting the desire PHP application you want to install and Web Platform Installer will do the rest.

image  

I choose to install Joomla on Windows and then I got all the Dependencies required for installing Joomla on my system.

image

All you need to do is to Accept Web Platform Installer to install those components for you.

image

But this is not all – also the configurations are made during the setup, not need to modify and configuration files.
Below you can see MySql and Site configuration:

image 

 

 

 

 

 

 

 

image image

And after couple of minutes you are done!

image

Reason 3: Expression Web 3

Open and edit PHP pages directly in Expression Web 3 and apply the full range of standards-based design tools to PHP. Open and edit PHP pages directly in Expression Web 2 and apply the full range of standards-based design tools to PHP including code-coloring, snippets and IntelliSense™. It also ships with a PHP development server that lets you test your PHP pages without any other external web server dependencies

image

PHP IntelliSense -

image

Visual Diagnostics

Debug your pages in multiple browsers on the same machine that you use for development with SuperPreview. And Snapshot Preview provides a high-fidelity browser preview that updates live as you edit your code, saving you the time and effort of loading the page in a browser for each code change. The CSS properties palette visually displays the CSS cascade, enabling you to quickly see all of the styles that the current selection in your web page uses, the order of precedence of those styles, and all of the properties and values of those styles.

image

Another cool feature is Overlay Layout, shows both previews together so you can see the difference between those browsers.
Below is the CSS size you can take a fix in your code.

image

 

 

 

 

 

 

 

 

 

 

 

 

 

Reason 4 – Visibility, support and software for professional Web Developers and Designers - at no upfront cost!!!

Does your company have 10 or fewer employees?

Join WebSiteSpark program with A one-time $100 Program Offering Fee is due upon exit or at the end of the 3 year term.

Program Benefits image

WebSiteSpark provides access to a technology offering for development and production hosting of websites. Once enrolled, you can download the following software from Microsoft:

  • For design, development, testing and demonstration of new websites – for a total of up to three users per Web design and development company:
    • Visual Studio Professional
    • Expression Studio 3 (1 user) and Expression Web 3 (up to 2 users)
    • Windows Web Server 2008 R2
    • SQL Server 2008 Web Edition
  • For production use – that is, to deploy and host new websites developed using Program software – using a total of up to four processors per Web design and development company, of the following (physical or virtual) dedicated servers:
    • Windows Web Server 2008 R2
    • SQL Server 2008 Web Edition
In addition to software, Microsoft WebsiteSpark offers Web development and design companies the opportunity to:
  • Get Business Opportunities: Get opportunities to expand your customer base and drive new business through showcasing your capabilities and connecting with partners, by featuring your talents in Microsoft marketing and business networking vehicles.
  • Get Support and Training - benefits include:
    • 2 professional support incidents
    • Free online training Managed newsgroups on MSDN (a community of over six million developers) and other Microsoft online properties
    • Access to broad community support through connections with Network Partners, Hosting Partners and peers with complementary services and technologies

For more information please visit Guy Burstein's Blog.

Thanks

VSTS 2010 Beta 2 – Coded UI Test – Tip 1 – Delete Recorded Actions

VSTS 2010 Beta 2 – Coded UI Test – Tip 1 – Delete Recorded Actions

This is the first of post of many about CodedUI Test Tips, so what is CodedUI Test?

CodedUI Test – Is a new feature in Visual Studio Team System 2010 that allows you to create functional testing for your application very easily.
I’ll talk more about how the CodedUI works but for now the important detail is: IT’S NOT A SCRIPT Language, CodedUI works with .NET language that will allow you a lot more control and options when recording functional testing on your application.

Please take a look at Channel 9 – Video on How to create, edit and playback CodedUI Tests in Visual Studio 2010 Beta2.

TIP - During test recording there is a possibility some unwanted actions will be recorded, you don’t need to start all over again!

Just  pause the recording and click “Show Record Steps” (Alt + s), now you can see all the actions from the last recording, select the unwanted actions and press delete.

Take Notice – Delete actions may ruined the recording and playback(Action that essential to the playback), make sure you test it after you delete to make sure everything works.

image

Apple Released Boot Camp Update For Windows 7

Apple Released Boot Camp Update For Windows 7

I don’t have IMac right now but maybe you do.

Either Apple isn't operating on the Gregorian calender, or these updates are just straight-up late. Either way, we're pretty stoked to see the suits in Cupertino finally wise up and allow Microsoft's best OS ever to work on its machines, as it has today issued new Boot Camp software (v3.1) for both 32-bit and 64-bit users of Windows 7. The updates add native support for Win7 Home Premium, Professional and Ultimate, and in case that wasn't enough, they also fix "issues" with the Apple trackpad and add support for Apple's wireless keyboard and Magic Mouse.

Full Article

imac-windows7

Posted: Jan 20 2010, 06:53 AM by shair | with no comments
תגים:, ,
VSTS 2010 Beta 2 – Diagnostic Data Adapters – Custom Adapter – Part 2

VSTS 2010 Beta 2 – Diagnostic Data Adapters – Custom Adapter – Part 2

In my previous post Diagnostic Data Adapters – Create Custom Adapter – Part 1 I’ve showed how to create a Custom Data Adapter, this post will be on how to add a Configuration File to your Custom Data Adapter.

Download Demo Project

Step 1 – Add Configuration File

In your Data Adapter project add a new xml file and change the name to <name of your data diagnostic adapter>.dll.config

Copy below format into the xml config file:

<?xml version="1.0" encoding="utf-8"?>
<Config
>
  <DataCollector typeUri="datacollector://ShaiRaiten/LogsCollector/1.0" enabledOnCollectionOnlyAgents="true"
>
    <DefaultConfiguration
>
      <Folder FullPath="C:\Logs\Day"
/>
      <Folder FullPath="C:\Logs\Night"
/>
    </DefaultConfiguration
>
  </DataCollector
>
</Config>

 

Make sure the DataCollector typeUri attribute is the same as [DataCollectorTypeUri("datacollector://ShaiRaiten/LogsCollector/1.0")] from the Data Adapter class.

Step 2 – Initialize Configuration Element

In the Initialize method make sure to Initialize the Configuration XmlElement.

private XmlElement config;

 

public void Initialize(System.Xml.XmlElement configurationElement, DataCollectionEvents events, DataCollectionSink dataSink, DataCollectionLogger logger, AgentContext agentContext)

{

    this.config = configurationElement;

 

    Events.TestCaseEnd += new EventHandler<TestCaseEndEventArgs>(Events_TestCaseEnd);

}

Step 3 – Use Configuration Element

void Events_TestCaseEnd(object sender, TestCaseEndEventArgs e)

{

    try

    {

        List<string> folders = new List<string>();

        XmlNode currentNode = config.FirstChild;

 

        while (currentNode != null)

        {

            if ((currentNode.Name == "Folder") && (currentNode.Attributes["FullPath"] != null))

                folders.Add(currentNode.Attributes["FullPath"].Value);

            currentNode = currentNode.NextSibling;

        }

 

        foreach (string folder in folders)

        {

            string[] files = Directory.GetFiles(folder);

            foreach(string file in files)

                dataSink.SendFileAsync(e.Context, file, false);

        }

    }

    catch (Exception ex)

    { throw ex; }

}

Step 4 – Install Configuration File

End you’re almost done, Build the solution, and then copy the built assembly and the Configuration file to -
C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PrivateAssemblies\DataCollectors

Now, Run the test and see the results below:

image

Full Code :

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using Microsoft.VisualStudio.TestTools.Execution;

using System.Xml;

using System.IO;

using System.Diagnostics;

 

namespace LogsCollector

{

    [DataCollectorTypeUri("datacollector://ShaiRaiten/LogsCollector/1.0")]

    [DataCollectorFriendlyName("Local Logs Collector")]

 

    public class LogsCollector : IDataCollector

    {

        private DataCollectionEvents Events;

        private DataCollectionSink dataSink;

        private XmlElement config;

 

        public void Initialize(System.Xml.XmlElement configurationElement, DataCollectionEvents events, DataCollectionSink dataSink, DataCollectionLogger logger, AgentContext agentContext)

        {

            this.Events = events;

            this.dataSink = dataSink;

            this.config = configurationElement;

 

            Events.TestCaseEnd += new EventHandler<TestCaseEndEventArgs>(Events_TestCaseEnd);

        }

 

        void Events_TestCaseEnd(object sender, TestCaseEndEventArgs e)

        {

            try

            {

                List<string> folders = new List<string>();

                XmlNode currentNode = config.FirstChild;

 

                while (currentNode != null)

                {

                    if ((currentNode.Name == "Folder") && (currentNode.Attributes["FullPath"] != null))

                        folders.Add(currentNode.Attributes["FullPath"].Value);

                    currentNode = currentNode.NextSibling;

                }

 

                foreach (string folder in folders)

                {

                    string[] files = Directory.GetFiles(folder);

                    foreach (string file in files)

                        dataSink.SendFileAsync(e.Context, file, false);

                }

            }

            catch (Exception ex)

            { throw ex; }

        }

 

        public void Dispose()

        {

            //Unregister events

            Events.TestCaseEnd -= new EventHandler<TestCaseEndEventArgs>(Events_TestCaseEnd);

        }

    }

}

 

Download Demo Project

Enjoy.

VSTS 2010 Beta 2 – CodedUI Test – Access Denied Error

VSTS 2010 Beta 2 – CodedUI Test – Access Denied Error

While recording CodedUI Test I had very irritating problem:

Each time I record a Test (even opening the application) I’ve always got the following error message:

image

Solution:

You cannot run Visual Studio and Test Application with different users or same users but different admin privilege.

In my scenario Visual Studio was running with my User and the Test Application with another user.;

Enjoy

VSTS 2010 Beta 2 – Diagnostic Data Adapters – Custom Adapter – Part 1

VSTS 2010 Beta 2 – Diagnostic Data Adapters – Custom Adapter – Part 1

In my previous post I’ve talked about What is Diagnostic Data Adapters – No More No Repro!, this post will be about how to
create your own Diagnostic Data Collector.

Download Demo Project

In this post I’ll show you how to create a custom Log data collector that can be very helpful for many applications using local logs.

Below is an example of advanced custom data adapter I built for collecting performance data during a test. – I’ll get to this later…

image

image

Step 1 – Getting Started

Create a Class library project and add two references:

  1. Microsoft.VisualStudio.QualityTools.Common
  2. 2. Microsoft.VisualStudio.QualityTools.ExecutionCommon.dll

You can find those assemblies C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PrivateAssemblies\
(If you are not using 64bit operation system - C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\PrivateAssemblies\).

Step 2 – Create Data Collector Class

1. Add new class to your project with the Data Collector name, make sure the class defined as Public and add both using to the class:

using Microsoft.VisualStudio.TestTools.Execution;

using Microsoft.VisualStudio.TestTools.Common;

 

2. Add the Data Collector attributes

 

[DataCollectorTypeUri("datacollector://Manufacturer/DataCollectorName/Version")]

[DataCollectorFriendlyName("Data Collector Name")]


3. Add IDataCollector interface and implement it.
This is what you should see:

public void Initialize(XmlElement configurationElement, DataCollectionEvents events, DataCollectionSink dataSink, DataCollectionLogger logger, AgentContext agentContext)

{

    throw new NotImplementedException();

}

 

public void Dispose()

{

    throw new NotImplementedException();

}

Step 3 – Implement Custom Data Adapter

Using the DataCollectionEvents add the desire events for the Custom Data Adapter.

CustomNotification      Raised when a custom notification occurs.
DataRequest                Raised to request intermediate data.
SessionEnd                   Raised when a test session ends.
SessionPause                Raised when a test session pauses.
SessionResume            Raised when a test session resumes.
SessionStart                 Raised when a test session starts.
TestCaseEnd                Raised when a test case ends.
TestCasePause             Raised when a test case pauses.
TestCaseReset             Raised when a test case resets.
TestCaseResume         Raised when a test case resumes.
TestCaseStart              Raised when a test case starts.
TestStepEnd                Raised when a test step ends.
TestStepStart              Raised when a test step starts.

And define DataCollectionSink for storing files as attachments.

For Example:

private DataCollectionEvents Events;

private DataCollectionSink dataSink;

private const string LogPath = @"C:\Logs";

 

public void Initialize(System.Xml.XmlElement configurationElement, DataCollectionEvents events, DataCollectionSink dataSink, DataCollectionLogger logger, AgentContext agentContext)

{

    this.Events = events;

 

    //DataCollectionSink - Diagnostic data adapters use a DataCollectionSink to store files and

    //XML data for later attachment to bugs and test reports.

    this.dataSink = dataSink;

 

    Events.TestCaseEnd += new EventHandler<TestCaseEndEventArgs>(Events_TestCaseEnd);

}

Now write the code to collect the logs from the specified folder.

void Events_TestCaseEnd(object sender, TestCaseEndEventArgs e)

{

    try

    {

        if (Directory.Exists(LogPath))

        {

            string[] files = Directory.GetFiles(LogPath);

            foreach (string f in files)

            {

                dataSink.SendFileAsync(e.Context, f, false);

            }

        }

    }

    catch (Exception ex)

    { throw ex; }

}

Step 4 – Install Custom Data Adapter

End you’re almost done, Build the solution, and then copy the built assembly to -
C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PrivateAssemblies\DataCollectors

 

Now create a new test (VS2010 – Coded UI Test) and define the new Data Adapter(Team System 2010 Beta 2 – Diagnostic Data Adapters – No More No Repro!).

I’ve built a simple WPF application that creates log file in C:\Logs.


image

 

Below image show a normal run of CodedUITest without selecting the data adapter.

image

 

Below image show a CodedUITest run with Logs Data Adapter selected.

image

image 

Local Logs Folder

image

 

Full Code Sample:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using Microsoft.VisualStudio.TestTools.Execution;

using System.Xml;

using System.IO;

 

namespace LogsCollector

{

    [DataCollectorTypeUri("datacollector://ShaiRaiten/Logs/1.0")]

    [DataCollectorFriendlyName("Local Logs Collector")]

    public class LogsCollector : IDataCollector

    {

        private DataCollectionEvents Events;

        private DataCollectionSink dataSink;

        private const string LogPath = @"C:\Logs";

 

        public void Initialize(System.Xml.XmlElement configurationElement, DataCollectionEvents events, DataCollectionSink dataSink, DataCollectionLogger logger, AgentContext agentContext)

        {

            this.Events = events;

 

            //DataCollectionSink - Diagnostic data adapters use a DataCollectionSink to store files and

            //XML data for later attachment to bugs and test reports.

            this.dataSink = dataSink;

 

            Events.TestCaseEnd += new EventHandler<TestCaseEndEventArgs>(Events_TestCaseEnd);

        }

 

        void Events_TestCaseEnd(object sender, TestCaseEndEventArgs e)

        {

            try

            {

                if (Directory.Exists(LogPath))

                {

                    string[] files = Directory.GetFiles(LogPath);

                    foreach (string f in files)

                    {

                        dataSink.SendFileAsync(e.Context, f, false);

                       image

                    }

                }

            }

            catch (Exception ex)

            { throw ex; }

        }

 

        public void Dispose()

        {

            //Unregister events

            Events.TestCaseEnd -= new EventHandler<TestCaseEndEventArgs>(Events_TestCaseEnd);

        }

    }

}

Download Demo Project

Enjoy

CopySourceAsHtml Support For Visual Studio Team System 2010 Beta 2

CopySourceAsHtml Support For Visual Studio Team System 2010 Beta 2

I’ve used existing project from CodePlex - http://copysourceashtml.codeplex.com/ and add Visual Studio 2010 support.

You can download the installer directly from Here - http://copysourceashtml.codeplex.com/Project/Download/FileDownload.aspx?DownloadId=100271

image 

    9 [TestClass]
   10     public class UnitTest1
   11     {
   12         [TestMethod]
   13         public void TestMethod1()
   14         {
   15             //Let's Test CopySourceAsHtml in Visual Studio 2010 - Shai Raiten
   16         }
   17     }

 

You can download the installer directly from Here - http://copysourceashtml.codeplex.com/Project/Download/FileDownload.aspx?DownloadId=100271

or directly from the patches section

image

Enjoy

Team System 2010 Beta 2 – Diagnostic Data Adapters – No More No Repro!

Team System 2010 Beta 2 – Diagnostic Data Adapters – No More No Repro! – Part 1

What is Data Adapter?

Diagnostic Data Adapters will allow you specify various types of data to collect or how to affect the test machine when you run manual tests, automated tests, or both.
For example, a diagnostic data adapter might create an action recording, an action log, a video recording, or collect system information.
Additionally, diagnostic data adapters can be used to simulate potential bottlenecks on the test machine or reduce the available system memory.
For example, you can emulate a slow network to impose a bottleneck on the system.

How To Define Data Adapter?

You can define data adapters in two places – Microsoft Test & Lab Manager (manual testing) and Visual Studio 2010 (automated testing).

Microsoft Test and Lab Manager

Open MTLM and create a new Test Plan (Team System 2010 - Create a Test Plan [HE] – Screencast)

image

image 

Visual Studio 2010 Beta 2

After you create a Test Project you will notice Local.testsettings file was created under “Solution Items” folder.

The bellow pictures shows two ways on how to open the Test Settings window.

image

image 

Now Run and Open BUGS with a lot of data to help you and the developer solving it faster.

 

image

image

Quality Center Migration To Team System 2010 - Done

Quality Center To Team System 2010 Migration - Done

In the last couple of months I worked on Quality Center 2 Team System 2010 Migration Tool, this tool is a simple wizard gives you a very easy platform to leave Quality Center behind and move forward to Microsoft Test & Lab Manager without losing any information.

I’ve just finished a full migration from Quality Center to Team System 2010 includes:

  • Requirement
  • Test Case
  • Bug
    Total of 1200 items.
  • Include Coverage

Here is couple of screenshot of the tool:

image

 

image image

Sela Developer Practice – Automated “Done Done”

Sela Developer Practice – Automated “Done Done”

On the 29th of December Me and Shmulik Segal will present the new Team System 2010 and Team Foundation Server 2010. image

In this session we will take you to a magical journey on how to create Full Automated “Done Done” Workflow using VSTS 2010.

  • WF 4.0
  • VCL (Visual Component Library)
  • Gated Check-in
  • Microsoft Test & Lab manager
  • More...

Click here for more details and registration

 image

סלע מרחיבים את משפחת היועצים ומחפשים יועצים נוספים בתחום ה – ALM

 

מי ש - Team System ו ALM הן לא מילים גסות עבורו ימצא כאן אתגר מקצועי וחבר’ה שכיף לעבוד איתם.

clip_image001

סלע הינה שותף מוביל של מיקרוסופט בעולמות פיתוח התוכנה כולל שותפות בתחום ה- ALM. בסלע מועסקים 6 MVP בתחומי מיקרוסופט השונים.

 

מעניין אותכם, שלחו לי קו"ח לאימייל

קצת על קבוצת סלע

קבוצת סלע הינה מרכז הידע המוביל בישראל לתעשיית ההיי-טק.
החל משנת 1990, פועלת סלע בשני תחומים עיקריים: מרכז הדרכה ומרכז טכנולוגי.
בשני תחומים אלה פועלת סלע בישראל וברחבי העולם. 
קבוצת סלע הוקמה על בסיס הרעיון של התמחות ושימוש יעיל במידע הנרכש בכל אחד מתחומי התמחותה של הקבוצה:

· הדרכה לתעשיית ההיי טק

· הכשרת אנשי פיתוח תוכנה, בדיקות תוכנה, סיסטם ואבטחת מידע לעבודה בתעשייה

· פיתוח תוכנה

· בדיקות תוכנה

· סיסטם ואבטחת מידע

· ניהול מערכות מחשוב

לסלע סניפים בישראל, ארה"ב, קנדה, הודו וסינגפור, וקשרי שיתוף פעולה עם חברות מובילות באירופה ובמזרח הרחוק.

Posted: Dec 22 2009, 09:09 PM by shair | with no comments
תגים:, ,
VSTS Beta 2 - Web Access Not Working With SERVERDEFAULT Tag

VSTS Beta 2 - Web Access Not Working With SERVERDEFAULT Tag

Strange problem with TFS 2010 Beta 2, it seems like SERVERDEFAULT tag is not working from Web Access 2010.

In Visual Studio when I change the Status to - Active, Resolved, Closed etc.. there is an action inside the transition that takes the Clock and CurrentUser (Comes with default template). (see below)

When performing the same action from Web I get a message that the Field (By, Date) cannot be empty.

This works fine in 2008 Web Access.

<TRANSITION from="Active" to="Closed">
          <REASONS>
            <DEFAULTREASON value="Cannot Reproduce" />
            <REASON value="Deferred" />
            <REASON value="Duplicate" />
            <REASON value="Not a Bug" />
            <REASON value="Rejected" />
          </REASONS>
          <FIELDS>
            <FIELD refname="Microsoft.VSTS.Common.ClosedDate">
              <SERVERDEFAULT from="clock" />
            </FIELD>
            <FIELD refname="Microsoft.VSTS.Common.ClosedBy">
              <COPY from="currentuser" />
            </FIELD>
          </FIELDS>
        </TRANSITION>

Solution 1:

Edit work item definition and Change all SERVERDEFAULT tags to COPY

  <SERVERDEFAULT from="clock" /> ->  <COPY from="clock" />

Solution 2:

Edit work item definition so that fields “By” and “Date” should not be marked as required.

Solution 3:

Download - EditWorkItem.js

  • Copy %Program Files%\Microsoft Team Foundation Server 2010\Application Tier\Web Access\Web\Resources\Scripts\editworkitem.js to the %backup% directory
  • Copy %Patch%\EditWorkItem.js to %Program Files%\Microsoft Team Foundation Server 2010\Application Tier\Web Access\Web\Resources\Scripts\editworkitem.js
Create OLAP Failed – XML parsing failed at line 1, column 0: A document must contain exactly one root element.

Create OLAP Failed – XML parsing failed at line 1, column 0: A document must contain exactly one root element.

I’ve visit one of my customers and saw a strange error in the event log:

Errors in the metadata manager. An error occurred when instantiating a metadata object from the file, '\\?\C:\Program Files\Microsoft SQL Server\MSSQL.2\OLAP\Data\TfsWarehouse.0.db\Today.886.dim.xml'.

Detailed Message: Create OLAP failed
Exception Message: XML parsing failed at line 1, column 0: A document must contain exactly one root element.

Errors in the metadata manager. An error occurred when instantiating a metadata object from the file, '\\?\C:\Program Files\Microsoft SQL Server\MSSQL.2\OLAP\Data\TfsWarehouse.0.db\Today.886.dim.xml'.
Errors in the metadata manager. An error occurred when instantiating a metadata object from the file, '\\?\C:\Program Files\Microsoft SQL Server\MSSQL.2\OLAP\Data\TfsWarehouse.0.db\Today.886.dim.xml'.
(type OperationException)

I tried to process the the cube using SQL Management Studio and everything end just fine.

image

 

Solution:

First thing is to try setting OLAP for full processing instead of incremental processing following those actions:

1. Open Web.config in C:\Program Files\Microsoft Visual Studio 2008 Team Foundation Server\Web Services\Warehouse folder.

2. Add the following “<add key=”ProcessingType” value=”Full” />” under <appSettings>.


Please also run the following commands in the AT to rebuild the warehouse relational and OLAP databases:


1. Rebuild relational database

SetupWarehouse -s <DT Server Name> -d TFSWarehouse -c warehouseschema.xml -a <Service Account> -ra <Reporting Account> -mturl <TFS URL> -rebuild -edt TfsBuild

2. Rebuild OLAP database


SetupWarehouse -o -s <DT Server Name> -d TFSWarehouse -c warehouseschema.xml -a <Service Account> -ra <Reporting Account> -mturl <TFS URL>


Hope this helped.

More Posts Next page »