Chapter 2
Visual InterDev:
Up Close and Personal
On Chapter 1, you learned about the need for a new kind of tool like Visual InterDev
to address the urgent void of application development tools for the Web. Developers
have been clamoring for an integrated development tool that provides comprehensive
support for the various tools, languages, and technologies for creating Web applications.
There has been a lot of press about Visual InterDev and how this tool finally addresses
many of these concerns. ToChapter, you will have an up close and personal tour of Visual
InterDev, and see its fascinating features. You also will learn the answers to the
following questions:
Throughout the Chapter, you will see application examples that have been built using
Visual InterDev. ToChapter's objective: exploring the integrated development environment
of Visual InterDev and discovering how the tool can immediately begin enhancing your
applications and productivity.
What Is Visual InterDev?
The World Wide Web (WWW) has made the Internet come alive for many new users.
In the initial stages, users realized that they could view numerous documents on
various topics from all over the world. Through the WWW, people have access to a
plethora of knowledge. Not only can you read about many interesting topics on the
Web, but you also can find information about your favorite products and services.
Once you have gained this knowledge, you will invariably want to act on it. Some
companies have built Web-based applications, enabling you to buy their products and
services electronically over the Internet. Other companies enable you to fill out
registration information to begin receiving certain services. The point is, applications
enable the user to act on the knowledge they have gained. Businesses can capitalize
on opportunities sooner by becoming closer to the customer through a virtual marketplace.
Visual InterDev provides all the necessary tools to build these vital applications
for the Web.
Visual InterDev is a comprehensive, Web-based application development tool. Visual
InterDev provides an integrated environment that brings together various technologies
to work towards a common goal of building robust and dynamic applications for the
Web. Visual InterDev achieves this integrated development environment through the
use of the Developer Studio shell interface, first used in Microsoft's Visual C++.
You can open and work on Visual C++ and Visual J++ projects while simultaneously
creating your Visual InterDev project. This feature greatly enhances productivity,
especially when you're building COM and DCOM components and incorporating these components
into your Visual InterDev application.
Visual InterDev enables the developer to build applications that are dynamic and
interactive. YesterChapter you learned about the difference between static and dynamic
web pages. Visual InterDev enables the developer to build dynamic web pages through
the use of client- and server-side script. VBScript is the default scripting language,
but JavaScript also can be used.
Database integration is vital to any application. Visual InterDev provides a rich
and robust set of visual database tools to immediately enhance your productivity.
Visual InterDev supports the major ODBC-compliant databases, both on the desktop
and the server.
Managing your web site once it has been developed is a very crucial function.
Visual InterDev provides a set of tools to view and maintain your site. These tools
are similar and compatible with the site management tools found in Microsoft FrontPage.
Visual InterDev supports the major object-based technologies that exist for developing
Web-based applications, including ActiveX controls and Java applets. Visual InterDev
supports the use of third-party ActiveX controls and enables you to integrate your
own custom ActiveX controls. Visual InterDev also provides Design-time Controls that
enable you to set control properties when you're designing your application and then
use this functionality at runtime without the overhead of a typical ActiveX control.
In a nutshell, Visual InterDev is an exciting new tool that significantly augments
a Web developer's productivity. In this next section, you will learn why you need
to use Visual InterDev instead of other development tools.
Why Visual InterDev?
The basic premise behind the creation of Visual InterDev was to provide a tool
that enabled developers to build dynamic and interactive applications for the Web.
On the first Chapter, you read about some of the similarities and differences between
client-server application development and application development for the Web. Essentially,
these two modes of computing were the same in that they both used the client-server
model. That is, client-server and Web applications both facilitate the client making
a request of the server. The main difference is the degree to which they distribute
the application logic between the client and the server. Figure 2.1 depicts the distribution
of logic for a typical client-server application.
Figure 2.1.
A typical configuration for a client-server application.
While a client-server application distributes a mix of presentation, application,
and database logic between the client and server, Web applications typically parcel
almost all of the logic to the server. Using this mix, Web applications can provide
the thinnest client of all, where the only component that's installed on the client
machine is a browser. Figure 2.2 shows the configuration for a typical Web-based
application.
Figure 2.2.
A typical configuration for a Web-based application.
NOTE: The previous architecture diagrams
represent a typical configuration for both client-server and Web-based applications.
You can distribute the presentation, application, and database logic to varying degrees
between the client and the server in both computing models. This comparison is meant
to show the benefit of the Web-based style of computing over client-server in terms
of software distribution, version control, and administration.
The benefit of Web-based applications hinges on providing a universal client to
all users that make requests of a centralized application stored on the server. This
application is comprised of HTML pages, client- and server-side script, object-based
controls, and other server-side components that provide robust application processing.
With a client-server application, you still have a client component that you have
to install with every new enhancement and change to your application. With a Web-based
application, the browser and, hence, the client remain unchanged, and the application
changes are made centrally, in one place at one time on the server. Administration,
software distribution, and version control are significantly simplified under this
model.
A problem occurs under the Web-based model in that the Internet doesn't inherently
support interactive sessions with the user like the client-server model. Visual InterDev
supports the use of server-side components to accomplish a persistent dialogue with
the user and, thus, an interactive session.
Visual InterDev provides the tool to take advantage of the new Web-based model
of computing. Some development tools focus on supporting a single Internet technology.
Others support several technologies for Web-based development but don't provide visual
tools to accomplish these tasks. Visual InterDev exceeds existing Web development
tools by providing a way to integrate multiple technologies and supplies visual tools
to greatly enhance a developer's productivity. Visual InterDev also surpasses and
extends the reach of client-server tools to the Internet and the Web.
The Essence of Integration
The American Heritage Dictionary defines the word integration in the following
manner:
- "1. To make into a whole; unify. 2. To join with something else; unite."
Truly, Visual InterDev unifies and unites the technologies of the Web through
its integrated development environment. You can use the environment to rapidly build
a robust application. You have at your disposal all of the tools necessary for Web-based
application development in one integrated package. In this sense, the whole really
is greater than the sum of its parts.
Visual InterDev Development Environment
Visual InterDev provides an integrated container for a variety of visual tools.
The integrated development environment is like a house with many rooms. Each of the
rooms has its own specific function that contributes to the overall purpose of the
house. Similar to the rooms of a house, each function contributes to the well-being
of the developer or resident. No single tool is more important than the other, just
as no room is more important than another. In a typical house, you can eat, sleep,
and take care of your personal hygiene all under the same roof. With Visual InterDev,
you can develop your web pages, connect them to a database, and deploy your web site
all within the confines of the same development environment.
The Visual InterDev development environment utilizes an implementation of the
Developer Studio shell that was first found in Microsoft's Visual C++. Microsoft's
Visual J++ also incorporates this development environment. By using the Developer
Studio workspace, multiple projects and tools can be supported. Microsoft is bringing
its Visual Tools family together by using the same initial shell across products.
Developers can open many types of projects created with Visual InterDev, Visual C++,
and Visual J++.
The advantage of this integrated support is found in using multiple applications
to provide a robust solution. You can build a Java applet using Visual J++, incorporate
the applet into your Visual InterDev web application, and test and debug the application
all within the same environment. The same holds true for building an ActiveX control
using Visual C++. Again, "integration" is the key word. Figure 2.3 illustrates
the ability to open multiple types of projects from within the Visual InterDev integrated
development environment.
Figure 2.3.
Opening projects with Visual InterDev.
Figure 2.3 shows the Visual InterDev File Open Project dialog window. Notice the
ability to open multiple types of projects from within the environment.
When you open your Visual InterDev project, you're viewing your actual web site.
The Visual InterDev development environment uses the Explorer interface to view and
manage your web site files and folders. This interface simplifies the task of creating
and maintaining your web site files and folders. Also, the interface enables you
to fully organize the construction of your Web-based application. The integrated
development environment enables easy site creation through the use of wizards, and
enables developers to reuse files from other sites.
Visual InterDev enables you to easily import existing files into your web site
structure. The Explorer interface enables you to accomplish this task through a point-and-click
metaphor, just as you copy and paste files and folders on your PC. Figure 2.4 shows
a Visual InterDev project using File View.
Figure 2.4.
A typical Visual InterDev project.
The File View is the default view for a typical Visual InterDev project. Notice
the tabs at the bottom of the pane on the left-hand side of the workspace. File View
enables you to see the structure of your web site including files and folders. This
view displays the entire contents of your site, including HTML pages, images, controls,
applets, and other files. The pane to the right of this workspace displays the object
that is selected based upon its file type. For example, if you selected an HTML page
from the list on the left, the HTML code would be displayed in the window on the
right.
DataView is the other tab located next to the FileView tab. This view shows all
of your database objects, including tables, views, stored procedures, and triggers.
The Data View provides a direct connection to your ODBC datasource to enable remote
configuration and maintenance as well as interaction. Figure 2.5 demonstrates the
Data View showing a sample Access database.
Figure 2.5.
The Data View.
NOTE: The Data View only appears as an
option for web projects after you have inserted a database connection. The Data View
also is displayed for Database Projects.
Visual SourceSafe Integration
Visual InterDev supports integration with Visual SourceSafe to provide version
control cap-abilities like check-in/check-out. Similar to any application development
effort, source code control becomes a big issue when you're building a site with
multiple team members. Developers can check out their portion of the site, make the
appropriate changes, and send the file back to the server to be incorporated with
the other developers' files. Effective team development is covered in more detail
on Chapter 19, "Working Effectively in Teams with Visual SourceSafe."
Browser Integration
Another feature of Visual InterDev is the integration of a browser within the
development environment. Visual InterDev includes an implementation of the Microsoft
Internet Explorer 3.0 browser. This implementation supports all of the same features
of the commercial version of Internet Explorer, including Java applets, ActiveX controls,
ActiveX documents, VBScript and JavaScript, style sheets, and HTML 3.x features such
as frames and tables. By using the Preview in Browser feature, you don't have to
use one tool to build the application and then open up your browser to view it. With
Visual InterDev, you can build your Web-based application and view the results all
from within one environment. This feature adds to the speed with which a developer
can create and update applications and web sites.
You do have the capability to use the Browse With function to view your web site
from within the browser's native window. For example, you could configure Internet
Explorer or Netscape Navigator and view the site from within the production browser
environment. You probably will want to use this feature during final testing of your
web site. If you're deploying your site for use with the Netscape Navigator browser,
you have to use this feature.
You can use either of these features by selecting an HTML file and right-clicking
the mouse to display the shortcut menu. Figure 2.6 shows the Preview in Browser and
Browse With menu options on the shortcut menu for an HTML file.
Figure 2.6.
Browser viewing options.
Taking a Closer Look at the Components
The previous section discussed how Visual InterDev provides an integrated development
environment from which to work. You saw the basic Visual InterDev workspace and the
different views that are available. In this section, you get a guided tour through
each of the features and components that make up Visual InterDev.
Visual InterDev Editors
Visual InterDev provides several visual editors for designing and developing your
HTML web pages. The following list outlines those that are available:
HTML Source Editor
Using this editor, you can create and edit your HTML code, which is color-coded,
providing a visually appealing syntax. You can incorporate many objects and controls,
such as HTML layouts and controls, ActiveX controls, and Design-time ActiveX controls.
The editor also supports the use of script with your HTML web page. Figure 2.7 highlights
standard HTML code using the HTML Source Editor.
Figure 2.7.
The HTML Source Editor.
FrontPage Editor for Visual InterDev
This editor is an implementation of the Microsoft FrontPage Editor created for
Visual InterDev. This editor is completely compatible with the full version of Microsoft
FrontPage and provides a visual tool for developing HTML web pages. You may already
be familiar with Microsoft FrontPage. The FrontPage Editor uses a WYSIWYG approach
to develop HTML code. This approach enables you to add HTML features to your web
page through a graphical, point-and-click metaphor. For example, to add a table,
you select the Insert Table menu item from the Table menu and then visually set the
parameters, such as number of rows and columns. With the FrontPage Editor, you can
visually work with objects instead of the underlying HTML to construct your web pages.
This method can substantially save development time. Once you have constructed a
web page using the graphical editor, you can access and manipulate the generated
HTML code and add your own custom HTML.
The FrontPage Editor also supports the incorporation of plug-ins, ActiveX controls,
and Java applets. Figure 2.8 highlights the WYSIWYG features of the FrontPage Editor
for Visual InterDev.
Figure 2.8.
The FrontPage Editor for Visual InterDev.
HTML Layout Editor
The HTML Layout Editor is the same editor that was first included with the ActiveX
Control Pad from Microsoft. This editor provides a way to accurately position all
of your ActiveX controls on your web page. The interface is very similar to tools
like Visual Basic, which enable you to position your objects on forms. With this
layout editor, you can drag and drop controls onto the layout and establish their
properties and exact position within the web page. When the form is displayed by
the browser at runtime, the controls are positioned at the exact coordinates that
were specified at design time. The toolbox enables you to add and delete controls.
You also can use the Script Wizard to automatically add scripting code for use with
your controls. Figure 2.9 displays the HTML Layout Editor.
Figure 2.9.
The HTML Layout Editor.
Object Editor
The Object Editor enables you to establish the properties for your ActiveX and
Design-time ActiveX controls as well as Java applets and Netscape plug-ins. The Object
Editor is activated after you insert an object into your HTML source code. For example,
to position an ActiveX control on your web page, you would right-click the mouse
where you wanted the object to be placed within your HTML code.
NOTE: You must click between the <HTML>
and </HTML> tags that signify the beginning and ending of your code.
You can then choose between regular and Design-time controls. Once you have chosen
a control, the Object Editor is displayed, enabling you to set the properties for
the given control. Figure 2.10 exhibits the Object Editor for a typical ActiveX control.
Figure 2.10.
The Object Editor.
As you can see, there are several editors that you can choose, based on the task
that you're trying to accomplish. These editors are covered in-depth later in the
week. You also will get a chance to use each of these editors to experience their
features during the first week.
ActiveX Controls and Java Applets
Visual InterDev includes and supports the use of ActiveX controls. ActiveX controls
are the next generation of OLE controls, .OCX files. These controls use less overhead
and memory and are perfect for transporting over the Internet. These controls also
can be used with other client-server development tools, like Visual Basic and Visual
C++. ActiveX controls extend the reach of HTML controls and enable you to create
effective user interfaces. Using the editors mentioned in the previous section, you
can visually set the properties for the ActiveX control.
Visual InterDev also supports the use of Java applets and Netscape plug-ins. You
can work within the frame of either of these controls to visually establish their
properties.
Design-Time ActiveX Controls
Visual InterDev uses Design-time ActiveX controls to provide similar functionality
to regular ActiveX controls without the processing overhead. Design-time ActiveX
controls enable you to visually set properties for the control at design time. The
Design-time control then generates HTML and scripting code based on the properties
that you select. Regular ActiveX controls differ in that they include a run-time
component that executes within the context of the browser.
Design-time ActiveX controls have no run-time component. Their script is processed
on the server, and the HTML and results are returned to the client. Visual InterDev
provides many Design-time controls, including some very powerful controls for building
database connectivity. You can also build your own design-time controls with tools
such as Visual Basic and Visual C++.
On Chapter 14, "Extending Web Pages Through Design-Time Controls," you will
see how to extend your Web-based applications through the use of design-time controls.
On Chapter 16, "Building Design-Time ActiveX Controls," you will have the opportunity
to design and develop your very own design-time control.
Active Server Pages
Visual InterDev enables you to add powerful processing for your application on
the server through the use of Active Server Pages. If you remember from yesterChapter's
lesson, Active Server Pages are a combination of HTML and scripting code that resides
on the server. The script is processed before the page is returned to the client
machine. Some common uses of Active Server Pages include interacting with a database
and performing loop operations on a web page.
Active Server Pages seamlessly integrate with your HTML files. These pages remove
the need to link separately compiled programs to accomplish robust application tasks.
The other benefit to using Active Server Pages involves the use of ActiveX Server
Components. You can build an ActiveX Server Component with tools like Visual Basic
and Visual C++ to handle additional application processing.
In a distributed environment, ActiveX Server Components can be used to spread
the processing across several application servers. Scripting code is very useful
but has its limitations, like the inability to perform file I/O or provide access
to system resources. ActiveX Server Components extend the limitations of scripting
code by providing these features as well as other robust features. You should use
a combination of Active Server Pages and ActiveX Server Components to provide the
best solution for the server side of your application equation.
The Script Wizard
Once you have created your basic HTML page and included a few objects, you will
want to make your objects come alive. The Script Wizard enables you to accomplish
this task, providing a method for adding script to enhance your ActiveX controls.
Those of you who have used the ActiveX Control Pad will be familiar with this wizard.
You activate the Script Wizard by right-clicking the mouse in an HTML file that contains
the object you want to add script for. The Script Wizard provides two basic views:
List View and Code View. List View enables you to associate actions with the available
events for that control. The script is automatically generated based on the actions
that you choose. Code View enables you to directly modify the generated script code
as well as add your own custom code. Although the default scripting language is VBScript,
Visual InterDev also supports the use of JavaScript. Figure 2.11 shows the Script
Wizard in List View.
Figure 2.11.
The Script Wizard as seen through the List View.
File Components
You will be working with various files when developing your Visual InterDev project.
The following list outlines some of the most relevant files that you will be working
with:
HTML Files
HTML files are the most basic file created by Visual InterDev. These files are
specified by the .asp extension and contain the HTML code for your web pages. I mentioned
earlier toChapter the Visual InterDev editors that are available to edit your HTML code.
Visual InterDev supports the HTML 3.2 standards as well as some Microsoft Internet
Explorer and Netscape Communicator browser extensions.
Active Server Page Files
Active Server Pages are special HTML pages that provide ActiveX scripting on the
server. A few common uses of Active Server Pages include executing loops and connecting
to a database. An Active Server Page is denoted by the .asp filename extension. These
files reside and are processed on the server before the page is sent to the client
machine. The script is never seen by the client. The results are the only thing that
are passed back to the browser.
NOTE: Script code is designated by the
<% and %> delimiters.
TIP: You can create an .asp file by changing
the filename extension of an existing .asp file to .asp.
ActiveX Layout Files
These are files that are created and maintained by the HTML Layout Editor. This
editor, as discussed earlier in the Chapter, enables you to visually construct the layout
of your web page and controls. An .alx file is created when you use this editor.
Your HTML file references this file and incorporates the layout at runtime. You can
edit these files by directly opening the file from within File View or by right-clicking
the mouse within the <OBJECT> tag for the HTML layout and selecting
Edit HTML Layout from the shortcut menu.
Global Files
These files are denoted with the .asa filename extension. A global file, by default,
is constructed when you use the Web Project Wizard to create a new project. The global
file is very useful for both application and session initialization and termination
routines.
Multimedia Files
While enhancing your web page you will probably create images, sounds, music,
and other multimedia files to enhance your web page. Some of the multimedia products
included with Visual InterDev will be presented in detail later this week. For now,
it's important to mention that you can incorporate these files within the context
of your Visual InterDev project. Some of the more common image filename extensions
include .jpg, .gif, .img, .mic, and .bmp. Some of the more common audio and video
extensions include .mid, .mmp, .avi, and .wav. These file types will be explained
on Chapter 6, "Spicing Up Your Interface with Images and Multimedia."
File Management Components
So far you have seen different components and files that make up a Visual InterDev
project. The benefits of having an integrated tool to manage these components has
been emphasized. Visual InterDev provides comprehensive site and file management
tools to help maintain your components during every phase of development and deployment.
The File View enables you to view and manage all of the file types located in
your project. The left-hand pane of the Visual InterDev workspace behaves just like
the Windows Explorer, enabling you to drag and drop files. Full right-mouse button
functionality is also provided. The shortcut menu makes it easy to change the names
of files, to move files within your web site hierarchy, and to copy files to other
Visual InterDev projects. You can create folders that represent the sub-directories
for your web site. You can copy the sub-directories, including all of the files,
to another web site. Another powerful feature is the Copy Web command. This feature
enables you to copy an entire web site from one place to another. This can save time
when preparing your site for deployment. By using this command, you can migrate your
site from a development server to a testing server and, eventually, to a production
server.
Visual InterDev automatically verifies links between pages and ensures that no
links have been changed or broken. Upon detection of a broken link, Visual InterDev
is able to repair these broken links. For example, if you changed the name of a file
that was used by a web page in your project, Visual InterDev would detect the link
and prompt you to update the web page reference to the file.
The Link View provides a powerful tool for viewing the entire structure of your
web site. This tool enables you to graphically see the content of your web site,
how each object is related, and filename and property information of each object.
This view is similar to using an entity relationship diagram to graphically view
a database. You can double-click on any item in the view to use the appropriate editor
to manipulate the object. You also can select parameters to view only certain objects
or files. Figure 2.12 illustrates the power of the Link View.
Figure 2.12.
The Link View.
Visual InterDev incorporates many components to provide a very robust and powerful
development platform. You will have a chance to use each of these components in due
time. For now, though, it's time to discuss some of the multimedia tools that accompany
Visual InterDev.
Multimedia Tools
Several multimedia tools are included with Visual InterDev. These tools are separate
applications but can be initiated from within the Visual InterDev development environment.
Each of these products also can be purchased separately from Microsoft. The multimedia
tools include
NOTE: The Image Composer and the Music
Producer are covered in detail on Chapter 6.
Image Composer
The Microsoft Image Composer enables you to develop professional-looking graphics
through an easy-to-use interface. The Image Composer is capable of many of the features
of other graphics packages, but differs from them in that it supports images as objects,
or sprites. Sprites are independent objects that have a defined shape. Sprites enable
you to easily edit images by selecting, moving, and changing the individual sprites
that make up the image. Figure 2.13 displays the Image Composer environment.
Figure 2.13.
The Image Composer.
Music Producer
The Microsoft Music Producer enables you to create sounds and music for your web
site. The Music Producer includes many musical styles for building creative and innovative
musical compositions. Once you select a musical style, you can then choose the personality
of the music as well as the band. A band can include up to six different musical
instruments. You then compose the music based on your selections while modifying
the tempo, timing, and key of the music. Sounds and music can definitely enliven
the web page experience for your users. Figure 2.14 depicts the Music Producer workspace.
Figure 2.14.
The Music Producer.
Media Manager
The Media Manager provides a tool to manage your multimedia files. This tool is
incorporated into the Windows Explorer to enable proper file management of all your
multimedia components. Special folders are created for each of your multimedia file
types. You can create thumbnail sketches of your files based on the file type to
see a quick view of the file without launching its host application. This feature
is similar to the Quick View feature of the Windows Explorer. Figure 2.15 shows the
Windows Explorer with the special folders for your multimedia files.
Figure 2.15.
The Media Manager.
Finally!...Database Integration
There has usually been a tradeoff between the power of database tools and their
ease of use. The development tools that have provided the most robust power in terms
of features have not been very intuitive to use. Likewise, those tools that have
been very easy to use haven't provided the most powerful features. With Visual InterDev,
you now have both: powerful features and an intuitive, easy-to-use interface.
Another component that has been missing specifically in Web-based development
tools has been database connectivity and integration. You typically have had to use
one tool to develop your web site and another tool to provide the database connectivity.
Connecting to a database is extremely important when building a Web-based application.
Visual InterDev takes care of this aspect, as well, by incorporating the Visual Data
Tools within the Visual InterDev development environment. These visual tools significantly
augment a database programmer's capabilities and productivity.
Data View
The Data View is one of the main views available within Visual InterDev. This
view enables you to see all of the database components contained in your project.
These components include tables, fields, views, stored procedures, and triggers.
Through this view, you can directly manipulate the objects in your database. By selecting
an object, you can view detailed information about the object in the display area
to the right of the Data View pane.
Query Designer
The Query Designer enables you to visually build SQL queries for your application.
The Query Designer uses the Microsoft Access interface and significantly improves
development time for building database interaction. Similar to the Access interface,
you can drag and drop objects onto the design pane area. You can then construct your
query by associating various tables and fields. As you build your query, the results
are displayed in the design pane. You can view the SQL as it's constructed as well
as the query criteria upon which the SQL statement is comprised. You can stack the
different windows within the design pane display area. For example, you might want
to view the tables, SQL statement, and results, all within the design pane. Using
this layout, you could manipulate your SQL statement while validating the results,
all within the confines of the design pane. Figure 2.16 demonstrates the graphical
nature and power of the Query Designer.
Figure 2.16.
The Query Designer.
As you can see from Figure 2.16, the query designer visually displays your database
objects. This picture illustrates how you can stack a diagram of the tables, the
query criteria, the constructed SQL, and the query results all in the design pane
display.
The Query Designer saves an inordinate amount of time in building your SQL statements.
You may choose to manipulate the generated SQL or build SQL statements on your own.
Visual InterDev enables you to easily accomplish all of these tasks.
Database Designer
Visual InterDev provides the Database Designer to help you design and implement
your SQL database. This tool currently only supports Microsoft SQL Server. The Database
Designer provides a visual tool for creating and maintaining your database. You can
directly manipulate the properties of your database objects, or you can generate
the necessary Data Definition Language (DDL) scripts to execute against the database.
Figure 2.17 shows some related tables using the Database Designer.
Figure 2.17.
The Database Designer.
One of the most laborious tasks for database administrators (DBAs) is changing
a field type for a table that has existing data. I remember how cumbersome this process
was from my early Microsoft SQL Server DBA Chapters. First, you had to back up the existing
data. Then, you had to execute a DDL script that would drop the table and create
a new table with the revised field type. Finally, you restored the data back into
the revised table.
The Database Designer enables you to change field types for your database table
by selecting the type from a drop-down combo box. The Database Designer handles the
data type conversion for you. Again, the ease of the Microsoft Access interface has
been used to make cumbersome administrative tasks relatively easy.
Stored Procedure/Trigger Editor
This tool enables you to create and maintain stored procedures and triggers for
your application. Stored procedures are SQL statements that are precompiled in the
database. You call a stored procedure by name from your application, passing it the
appropriate parameters. Stored procedures are more efficient than dynamic SQL because
they reduce the number of steps to execute the SQL call. A trigger is a special type
of stored procedure that executes based on some event that occurs in the database.
For example, you might create a trigger to execute whenever a row is deleted in an
Order Header table, ensuring that referential integrity is maintained and no Order
Detail records exist for the deleted Order Header.
Visual InterDev enables you to create, view, and maintain stored procedures for
Microsoft SQL Server 6.x and Oracle 7.x databases. You also can establish who has
permission to execute this stored procedure or trigger. You can debug your stored
procedures through the use of the Visual InterDev debugger.
ActiveX Data Objects
Visual InterDev achieves database integration through the use of the ActiveX Data
Objects model (ADO). The ADO model has been specifically designed for database connectivity
over the Web. These database objects are more efficient than previous database controls
used with existing client-server tools. Also, ADO easily accommodates the management
of binary objects like images and other multimedia objects. The ADO model supports
the use of stored procedures and cursors for robust database access.
Database Design-Time Controls
Visual InterDev includes several database Design-time controls. These controls
enable you to easily establish database connections for your applications by setting
database connection properties for the particular control. After you have set these
properties, the Design-time control automatically generates all of the necessary
scripting and connection information for you. Examples of database Design-time controls
include the Data Command control and the Data Header and Data Footer control. These
powerful controls enable you to construct a web page that interacts with a database
and displays the results with little or no programming. You will get a chance to
use these controls on Chapter 8.
Database Wizards
Visual InterDev provides several database wizards that significantly reduce the
time for developing database connections for your web pages. These wizards guide
you through the process of establishing connectivity with your database. Examples
of Visual InterDev database wizards include the New Database Wizard and the Data
Form Wizard. The New Database Wizard guides you through the process of creating a
new SQL Server database. The Data Form Wizard enables you to create an ActiveX HTML
form that is database-enabled. In other words, this form can execute all of the relevant
database functions including inserting, selecting, updating, and deleting information.
NOTE: The Data Form Wizard creates an
Active Server Page, or .asp, file to execute the database calls. This .asp file must
reside on a server that supports the ActiveX Server framework.
How Should I Use Visual InterDev?
With all of the features introduced toChapter, you may be wondering where to begin.
Also, you may be asking questions about how to use these features when building your
Web-based application. Visual InterDev should be used as a high-end development tool
for building applications for the Web. The key words in the last sentence are "high-end"
and "applications." If all you want to do is publish basic information
on the Web, you might want to consider another tool like an HTML editor. Visual InterDev
is too powerful for a menial task like document publishing. This prior example would
be synonymous to having Charles Barkley, forward for the Houston Rockets, carry the
suitcases for the team on all the road trips. He could do it, but there are people
better suited for this task.
Visual InterDev is specifically designed to meet all of your application development
needs while providing compatibility with other tools like FrontPage. In fact, for
your development team, you may want to include functional members such as a marketing
person to construct the content for the various web pages, using a tool like FrontPage.
Then, application developers can incorporate that content into Visual InterDev and
build a robust Web-based application. The different roles of development team members
are discussed in more detail on Chapter 5.
The following is a checklist for deciding how to use each of the features of Visual
InterDev:
- 1. Define what are you are trying to accomplish.
2. Identify the alternatives for accomplishing this task.
3. Assess the strengths of each method.
4. Choose the best alternative.
5. Implement to perfection.
Summary
As you can see, Visual InterDev is a very comprehensive and powerful tool. In
toChapter's lesson, you were taken on a guided tour of Visual InterDev. You have been
given a taste of the features and components that make Visual InterDev such a powerful
application development tool for the Web.
When the Chapter began, Visual InterDev was described, and the question of why you
should use this exciting new tool was answered. An in-depth discussion of its components
and features followed. I talked about the powerful integrated development environment,
which significantly enhances your productivity and makes Web programming fun again
by enabling you to build your applications within the confines of a single tool.
I then covered each of the major Visual InterDev components. In reading about the
components, you saw how their features could be used to develop your application.
Database integration is one of the most significant features of Visual InterDev.
For this reason, this topic was saved for the end of the Chapter to keep your attention.
Visual Data Tools that enable you to use an intuitive, visual environment while constructing
and executing powerful database commands were discussed, as were database wizards,
which can make your life easier by guiding you through complex processes.
Remember, this material is just scratching the surface of the power of this tool.
Over the next few weeks, you will be exploring and learning about the power of Visual
InterDev. You should set a goal to learn how to incorporate each of these features
into building more robust and powerful Web-based applications. Your overall goal,
however, should be to learn to use Visual InterDev to its fullest capacity. Your
users will thank you for it when they interact with your applications.
You have already learned a lot so far. YesterChapter, you learned about the relationship
between applications, the Web, and Visual InterDev. ToChapter, you went on a guided tour
of the features and components of Visual InterDev. These two lessons have set the
stage for tomorrow when you will learn the final component necessary for developing
applications for the Web. On Chapter 3, you will learn about development and deployment
considerations when designing, constructing, and promoting Web-based applications.
After tomorrow's lesson, you will be ready to start building your first Visual InterDev
project, which you will do on Chapter 4.
Q&A
- Q What is the difference between Visual InterDev and FrontPage?
A Visual InterDev is a development tool for building Web-based applications and
is a part of the Microsoft Visual Tools family. Other tools in this group include
Visual C++, Visual Basic, and Visual J++. FrontPage is a Web authoring tool for non-programmers
and is an extension of the Microsoft Office family. While FrontPage focuses on content
and publishing, Visual InterDev focuses on application development. Visual InterDev
and FrontPage are completely compatible. Visual InterDev also includes the FrontPage
Editor for Visual InterDev, which is a special implementation of the editor included
in the commercial version of FrontPage.
Q Does Visual InterDev support Java?
A Yes. Visual InterDev supports the incorporation of Java applets and Java components.
Q How can I get ActiveX Controls for my applications?
A Visual InterDev includes many ActiveX and Design-time ActiveX controls. You
also can choose from over 1000 third-party controls on the market. Finally, you can
create your own ActiveX and Design-time ActiveX controls with tools like Visual Basic
and Visual C++.
Workshop
Think about previous client-server or Web-based application development that you
may have done. Think about the tools that you used and the strength of their features.
For those of you who have developed for the Web, I want you to specifically think
about how many tools you have used in the past to develop and deploy your application.
Compare that list to Visual InterDev and how you think it will make your life easier.
For all developers, write down your expectations and anticipated benefits. Save this
list for the third and final week and see if Visual InterDev exceeds your expectations.
You may want to have an HTML reference on hand as you venture on through the week.
HTML 3.2 and CGI Unleashed by John December and Mark Ginsburg is a very good reference.
Quiz
- 1. What is the main benefit of Web-based applications over typical client-server
applications?
2. What is the purpose of the HTML Layout Editor?
3. What is the difference between Active Server Pages and ActiveX Server Components?
4. What is the difference between an ActiveX control and a Design-time ActiveX
control?
5. Name a multimedia tool that is included with Visual InterDev and its purpose.
Quiz Answers
- 1. The main benefit to Web-based applications is that code changes to
the client are practically reduced, thereby simplifying software distribution, version
control, and administration. The reason for this is the use of a browser as a universal
client and the use of the server as the primary location of the presentation, application,
and database logic. In a client-server configuration, an executable file resides
on the client. When you make changes to your application, you have to re-deploy the
application to each of the client machines. In the Web-based model, you make your
changes in one place on the server.
2. Similar to the ActiveX Control Pad, the HTML Layout Editor enables you to
accurately position ActiveX controls onto your web page.
3. Active Server Pages are a combination of HTML and scripting code that enable
you to perform dynamic actions for your applications at the server. All of the script
is processed on the server and the results are sent back to the client. Active Server
Components are executable programs or dynamic link libraries that execute at the
server to handle tasks such as file I/O and resource-intensive processes. The difference
is that an Active Server Component is a compiled program. Active Server Pages are
not compiled, and are typically used to call ActiveX Server Components.
4. ActiveX controls differ from Design-time ActiveX controls in that ActiveX
controls include a run-time component that executes within the context of the browser.
Design-time ActiveX controls provide a visual guide for establishing properties that
are generated into HTML and scripting code. Design-time ActiveX controls don't incur
processing overhead because they don't have a run-time component.
5. Possible answers include the following:
Image Composer--Design and development of graphic images
Music Producer--Creation of music and sounds
Media Manager--Management of multimedia files
|