Thursday, July 22, 2004

*********CALL FOR SPEAKERS*********

 

Developer Code Camp II: The Return!

October 16/17, 2004

 

October 16 – 8:30 AM – 9PM

October 17 – 8:30 AM – 4PM

 

Microsoft Waltham

Schedule: http://radio.weblogs.com/0131777/CodeCamp2/code2.htm

 

General Call for Speakers

Code Camp II is looking for speakers and session leaders.

 

Code Camp II: The Return is looking to be even bigger and better than anything we have done before. The secret is you! This is a New England developer community based event that requires both speakers and attendees. The continuing goal of the Code Camps series is to provide an intensive developer to developer learning experience that is fun and technically stimulating. The primary focus is on delivering programming information and sample code that can be used immediately. The event is free and all slides, manuals and demo code are provided free!

 

This two day camp is hosted in our Waltham facility. As a community based event this is a general call for speakers and session leaders to help make this event a success. Based on your feedback, Code Camp II will now feature two types of 1.5 hour sessions and three defined tracks

 

Do you have something to say?

 

Requested Session Types:

Code focused presentation – These are presentations that include both power points and code demos. Given the audience that is attending it is important that a large amount of the presentation is focused on code and coding related techniques. Sample topics include How To and Best Practice Sessions.

 

Chalk Talks – These are new to the Code Camp. These sessions are designed as a facilitated discussion around a specific topic. No pre-canned demos, or pre-prepared code samples allowed! They are presented as a free form facilitated discussion that leverages the expertise of the presenter and the combined knowledge of the group to explore a specific topic.

 

Additionally, based on feedback we are sponsoring the following three tracks. All presentations must fall into these tracks to be considered. One of the strongest pieces of feedback from the last Code Camp was to provide a better organized set of tracks:

 

Code Camp Tracks:

 

Smart Client – This track is designed for presentations or chalk talks on topics related to Smart Client related development topics. This includes Windows Forms applications, Microsoft Office or mobile devices.

 

Web Track – This track is designed for presentations or chalk talks about Web based development that includes ASP.NET and Web Services.

 

Data Track – This track is designed for presentation and chalk talks about data storage technologies that includes SQL Server and XML.

 

 

********Submit Your Sessions********

 

Please complete the following and return it to trobbins@microsoft.com by September 15.

 

Once your session abstract is received we will review and provide scheduling for the selected sessions by October 1. All slides and code samples for the presentation must be delivered by October 14. If we are unable to fill all the time slots for the two days, the code camp will be shortened. It is the community that makes this event a success!

 

Name:

 

Company:

 

Email:

 

Phone:

 

Session Type:

Chalk Talk/Presentation (Select one)

Track:

Web/Smart Client/Data (Select one)

Level

200/300/400

Session Name:

 

Session Description:

 

 


11:20:34 AM    
 Tuesday, July 06, 2004

Question: I need to hide the screen that comes up after the user submits the form.  How can I do this?

 

Answer: This is actually part of the advanced submissions feature. For example, if you have a form that contains a “Submit Customer Information” button as shown below. In order to either customize or disable this screen follow these steps.  More..


11:09:00 PM    
 Wednesday, June 30, 2004

One of the features that I have found really useful within SP 1 of InfoPath is the use of Filters. I was working with a customer the other day that was looking to build a list box with a specific set of filtered data from a SQL table and this was a handy feature to have. In this example, I will build a form that using Filters retrieves only customers who names begin with “A” to populate into a drop down list box. More..


3:32:26 PM    
 Monday, June 28, 2004

I recently was doing a form and needed to create a drop down list dynamically based on values contained in a form. In this example, I will show how this can be done using a new feature found in InfoPath SP 1. In this example, I will create a form that a list of companies. This list of companies is then used to populate a drop down list used elsewhere in the form. More..


6:55:41 PM    
 Tuesday, June 22, 2004

As promised I wanted to post the information from my talk last night at the VB Learn User Group:

 

What is XML? And why should I care?

You've heard the hype but have you heard the facts? XML is clearly one of the most important standards within the technology industry. In this presentation Microsoft's Thom Robbins covers the structure and design of XML and how it should be used by developers. This presentation also covers the various companion technologies and standards that have been developed with XML (XSD and XSLT). These are important technologies for developers to understand not only for their own application development but as a cornerstone of the .NET Framework. Thom explains how these can be tied together and used within the .NET Framework for application development.

 

The samples and slides are available for download from here


11:30:43 AM    
 Saturday, June 19, 2004

XSD has become a core part of many of the customers that I work with. Within these customers they are using XSD as a standard way of representing various enterprise objects. By defining a standard way to describe these objects using XSD they are able to manage and guarantee the various data formats. I was working with a customer the other day and they were interested in how they could create an extensible schema. They wanted to create a standard representation of their employees, but provide the way for each of their subsidiaries to extend (not change) the underlying structure. I am going to present three examples that show this. For ease of clarity I will use InfoPath. Of course, these same concepts can be extended to anything XSD compliant.

By default, anything like an InfoPath form created using an XSD is considered locked. This means that form designers or developers are unable to add new elements or attributes to the data structure. This by design makes sense when you consider the fact that the purpose of XSD is to guarantee a specific format to the data structure. Of course, the flexibility of the XSD design allows for extensible elements to be added as we will see in later example.

Example 1: The Locked Schema

Starting with the XSD defined below that describes an employee

<?xml version="1.0"?>

<schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.w3.org/2001/XMLSchema">

<element name="prefix" type="string"/>

<element name="firstname" type="string"/>

<element name="lastname" type="string"/>

<element name="suffix" type="string"/>

<element name="email" type="string"/>

<element name="employeeid" type="string"/>

<element name="costcenter" type="string"/>

<element name="employeeinfo">

<complexType>

<sequence>

<element ref="prefix" minOccurs="0"/>

<element ref="firstname"/>

<element ref="lastname"/>

<element ref="suffix" minOccurs="0"/>

<element ref="email"/>

<element ref="employeeid"/>

<element ref="costcenter"/>

</sequence>

</complexType>

</element>

</schema>

Using this XSD to create an InfoPath form creates a locked form as shown below. The data source window within InfoPath actually adds a locked icon to the entire data source for visual display.

Even if a form designer attempts to right click and add a new element or attribute the “add” menu is grayed out as shown below.

Example 2: Extending Elements

If we change the XSD schema to include the “any” element attribute as shown below. This allows additional elements to be added to the XSD data structure.

<?xml version="1.0"?>

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">

<xsd:element name="prefix" type="xsd:string"/>

<xsd:element name="firstname" type="xsd:string"/>

<xsd:element name="lastname" type="xsd:string"/>

<xsd:element name="suffix" type="xsd:string"/>

<xsd:element name="email" type="xsd:string"/>

<xsd:element name="employeeid" type="xsd:string"/>

<xsd:element name="costcenter" type="xsd:string"/>

<xsd:element name="employeeinfo">

<xsd:complexType>

<xsd:sequence>

<xsd:element ref="prefix" minOccurs="0"/>

<xsd:element ref="firstname"/>

<xsd:element ref="lastname"/>

<xsd:element ref="suffix" minOccurs="0"/>

<xsd:element ref="email"/>

<xsd:element ref="employeeid"/>

<xsd:element ref="costcenter"/>

<xsd:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>

</xsd:sequence>

</xsd:complexType>

</xsd:element>

</xsd:schema>

Using the above XSD to create an InfoPath form creates a slightly different data source. The appearance of the lock icons appears at the field level.

I am now allowed to add additional elements to the data source.

Example 3: Extending Attributes

If we change the XSD slightly and add in the “any” attribute.

<?xml version="1.0"?>

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">

<xsd:element name="prefix" type="xsd:string"/>

<xsd:element name="firstname" type="xsd:string"/>

<xsd:element name="lastname" type="xsd:string"/>

<xsd:element name="suffix" type="xsd:string"/>

<xsd:element name="email" type="xsd:string"/>

<xsd:element name="employeeid" type="xsd:string"/>

<xsd:element name="costcenter" type="xsd:string"/>

<xsd:element name="employeeinfo">

<xsd:complexType>

<xsd:sequence>

<xsd:element ref="prefix" minOccurs="0"/>

<xsd:element ref="firstname"/>

<xsd:element ref="lastname"/>

<xsd:element ref="suffix" minOccurs="0"/>

<xsd:element ref="email"/>

<xsd:element ref="employeeid"/>

<xsd:element ref="costcenter"/>

</xsd:sequence>

<xsd:anyAttribute/>

</xsd:complexType>

</xsd:element>

</xsd:schema>

Once again creating an InfoPath form the locks appear the same.

However, right clicking and selecting “add” to the data source allows only field level attributes to be added as shown below.

This was meant to show only some of the features available within XSD. The XSD standard defines a very robust and well defined set of tags.


10:22:00 PM    
 Tuesday, June 15, 2004

Email received:

I have installed the SP 1 preview of InfoPath and recently completed the design of a form. The form doesn’t use any of the new features. Actually, I had designed it using the original InfoPath and accidentally upgraded it. Is there a way to remove the SP 1 features?

Answer:

Absolutely, if you have a form and need to turn off the upgrade follow these steps.

  1. Open the form in design mode.

  1. Once in design mode you then select Tools -> Form Options

  1. Select the Advanced tab. At the bottom you can then click the export button and save the form. This will save the form as an InfoPath 1.0 form.

Now, once you have the form in compatibility mode, or if you need to design a form using InfoPath 1.0 make sure that you turn off the SP 1 features. Follow these steps to turn off the features in the Service Pack.

  1. Open InfoPath and select the Tools -> Options menu

 

  1. Select the Advanced tab and click the first box “Disable Service Pack Features”.

Once you close and reopen InfoPath, any forms that you open are no longer using or taking advantage of the InfoPath SP 1 features.


11:26:53 PM