TRYING to keep up with ActiveX Data Objects (ADO)

Size: px
Start display at page:

Download "TRYING to keep up with ActiveX Data Objects (ADO)"

Transcription

1 Accessing Records Peter Vogel 2000 Smart Access In this article, Peter Vogel looks at one of the newer features in ADO: the Record object. Peter outlines the object s future and shows how you can use it right now from your Access application to work with files over the Internet. TRYING to keep up with ActiveX Data Objects (ADO) isn t as easy as it was with DAO. ADO is still an evolving technology, with new features being added to the existing ADO objects and whole new objects being added to the ADO package. In this article, I ll review one of the newer objects in the ADO library: the Record object. While the Record object has a bright future ahead of it, there s currently only one ADO provider that supports it. However, using that provider you can retrieve any file, as long as you know the file s URL, or navigate through the directory structure of any site. You can also copy, move, add, or delete any file for which you know the URL. A word of warning: In any application, before taking advantage of any of the newer features of ADO (anything after ADO 2.0), you should make sure that those features will be available on the computer where your application will be installed. While all of the original features of ADO are still available in the latest versions of the technology, the reverse isn t true (see the sidebar Mutating ADO on page 15 for more on this topic). To take advantages of the technology described in this article, you ll need to have ADO 2.5 or later installed on your computer (I actually used ADO 2.6 for my testing). You can download the latest version of ADO, along with a variety of supporting technologies, as part of the Microsoft Data Access Components (MDAC) from Once you ve downloaded and installed it, you ll need to check off Microsoft ActiveX Data Objects 2.x Library in your References list before you can use them. This is required even if you re using Access 2000, as the ADO library that s checked off by default for Access 2000 is 2.1, which doesn t include the Record object. The Record object The Record object sounds like it should be associated with the Recordset object, and, to a certain extent, it is. In theory, the Record object can be used to represent one record in a Recordset. The code to create a Record object from a Recordset object looks like this (where rs is an open Recordset): rc.open rs After this code executes, the Record object rc should then be populated with the current record in the Recordset rs. In practice, for almost every provider that you try, you ll get the message Object or provider is not capable of performing requested operation. The only provider that currently supports the Record object seems to be the Microsoft OLE DB provider for Internet Publishing (also installed with MDAC 2.5 or later). Microsoft s documentation suggests that there are bigger plans for the Record object than this single provider. In the future, Record objects may be used instead of the Recordset object for commands that return a single record. The benefit would be a lighter object (since scrolling wouldn t have to be supported) and faster processing. As yet, though, you can t use the Record object to access standard data sources. The Record object s current purpose in life is to be used with semi-structured resources. A semi-structured resource is a data source that lacks the rigid format of a relational data model. Data in a semi-structured resource is organized (if it s organized at all) as a hierarchy or tree. Hierarchical data sources include file systems and, as in the examples in this article, Web sites. While the Record object documentation suggests that the Record object is ready to be used to process a file system, no indication of how that s to be done is provided. With the Internet Publishing provider, though, you can access any file that you can reach using a URL, security permitting. Opening a Record Opening a Record object looks very much like opening a Recordset: You just pass a command and a connection string to the Open method of the object. The Record object, however, shows a lot of flexibility in the format of the connection string. You can, for instance, specify a provider as you would with a Recordset. To use the Internet Publishing provider to access a site called you d use this text in your connection string: Provider=MSDAIPP.DSO;Data Source= User ID=phv;Password=phvpwd; As a shortcut, the Record object will default to using 14 Smart Access February

2 the Internet Publishing provider if your connection string contains a URL parameter like this one: rc.open "/","URL= URL= User ID=phv;Password=phvpwd; To use the Internet Publishing provider to retrieve a file called MyFile.txt at the URL you d use this code: rc.open "MyFile.txt","URL= You can t, however, specify both the URL and the Provider property. If you do specify the Provider, then you must specify the URL that you want to access by using the Data Source parameter. You re not restricted to working with individual files. Assuming that you have the appropriate security, you can retrieve a directory from a Web site. This code retrieves the root directory for the mserver site: Figure 1. Component Checker showing the summary report from its analysis. Mutating ADO Much of what you can do with ADO depends on which version of ADO is installed on your computer. And, if you distribute applications, much depends on what you ve installed on your clients computers. So how do you determine what version of ADO you have? The first thing you need to do is discriminate between the version of MDAC (Microsoft Data Access Components) and the version of ADO installed. The version of ADO is relatively easy to determine: Just check the Version property of the Connection object. In Access 2000, you can use the Connection object from the Application object s CurrentProject: Msgbox Application.Connection.Version In earlier versions of Access, you ll need to create a Connection object: Dim conn As Connection Set conn = New Connection Msgbox conn.version The problem is more complicated if you re depending on the rest of the MDAC components the data providers, for instance. Installing MDAC will, of course, upgrade/add/replace all of the components that make up MDAC. However, subsequent installations of other applications (for instance, SQL Server 2000, which installs ADO 2.6) can overwrite portions of the MDAC installation, resulting in a mixture of components that relates to no particular package. In addition, the contents that make up MDAC change over time. The latest version of MDAC, as an example, drops support for the Jet database engine. If your application depends on Jet but the client computer has only ever had the latest version of MDAC installed, you re going to have problems. Given the possible variations, the only safe thing to do when distributing an application that depends on ADO is to include your version of the MDAC components that you need as part of your setup routine. While not a solution that you can use from your application, Microsoft s Component Checker (available at will analyze your installation (see Figure 1) and report on the state of the MDAC components. Component Checker makes a best guess effort to determine what version of MDAC you have installed. The report that Component Checker makes on your version illustrates the difficulty of this effort: On my Windows 2000 Professional installation, it reads The MDAC version that is closest to the version on your computer is 2.5 RTM ( ). Component Checker then lists under the headings File Details, COM Details, and Registry Details all of the problems that it found while analyzing your installation. I ve never seen an installation without problems. My Windows 2000 laptop with ADO installed as part of the operating system had three errors and three warnings. On my Windows 98 desktop computer with MDAC 2.0 installed as part of Visual Studio, I had 11 errors and three warnings. As a test, I did a clean install of MDAC 2.5 on my desktop and reran Component Checker. Component Checker then found six errors and four warnings. Smart Access February

3 The Open method accepts five other parameters in addition to the filename and connection. The third parameter, Mode, determines whether the resource can be updated and whether the resource is opened exclusively. The fourth parameter, CreateOptions, will cause the file or directory to be created if it doesn t already exist. The fifth parameter, Options, controls how and when the data will actually be retrieved (you can defer retrieving the contents of a file while still receiving information about it, for instance). The Options parameter is supposed to support a setting of adopenexecutecommand that would allow you to execute a SQL command to retrieve a single row, but that doesn t appear to be implemented yet. The final two parameters allow you to specify a user name and password. Navigating One of the differences between retrieving a single file and retrieving a directory is that you can retrieve the children of a directory by using the Record object s GetChildren method. The GetChildren method returns a Recordset that lists all of the files and subdirectories for the Record object. This code, for instance, retrieves into a Recordset all of the files and subdirectories of the mserver root directory: Dim rs As Recordset rc.open "/","URL= Set rs = rc.getchildren The Recordset produced by the GetChildren method is a forward-only, server-side Recordset. Because it s a server-side Recordset, it can t be bound to the Recordset property of an Access 2000 Form. If the Record object is updateable, the Recordset will be updateable also. With this Recordset, built using the Internet Publishing provider, you can actually retrieve a Record object from the Recordset as promised in the Microsoft documentation. If you do retrieve a Record from the Recordset, and if the row in the Recordset represents a subdirectory, you can then use the GetChildren method to retrieve all of the subdirectory s files and directories. Navigating through semi-structured information, then, consists of retrieving Recordsets of files and subdirectories and then retrieving the children of the directories. Some terminology is probably appropriate at this stage. All of the items retrieved by GetChildren or the Open method are referred to as nodes. Nodes without children are referred to as leaf nodes and typically contain data (like the contents of a file retrieved from a Web site). Non-leaf nodes (like directories) have other nodes as their content but may also contain data themselves. You can check to see whether a Record object represents a file or a directory (leaf or non-leaf node) by checking the Record object s RecordType property. If that property is set to adsimplerecord, you can t use the GetChildren method. Using GetChildren with a Record of adsimplerecord generates the message Operation is not allowed in this context. If the RecordType property is set to any value other than adsimplerecord, you can at least try to retrieve the node s children. The other three values are adcollectionrecord (a node with children), adrecordunknown (a node of unknown type), and adstructdoc (a COM structured document). The following code cycles through all of the children of the mserver root directory and retrieves the children of those nodes. After retrieving the root directory, the code retrieves a Recordset of all of the root s children by using GetChildren on the root Record. Using standard Recordset processing, the code moves through the rows of that Recordset, opening a Record object for each row and checking its RecordType property. Whenever a nonadsimplerecord is found, the code retrieves a Recordset of the children of that node: Dim rcchild As Record Dim rs As Recordset Dim rschildren As Recordset rc.open "/","URL= Set rs = rc.getchildren Do While Not rs.eof Set rcchild = New Record rcchild.open rs If rcchild.recordtype <> adsimplerecord Then Set rschildren = rcchild.getchildren End If rs.movenext Loop A recursive routine to process all of the directories on the site would look like the following code (and is included in the sample database with this month s Source Code files at Passed a URL, the TraverseSite routine will work through all of the files and directories on the site, displaying the file or directory name: Sub TraverseSite (strurl As String) rc.open "/","URL= & strurl GetChildren rc rc.close Set rc = Nothing End Sub Sub GetChildren (rc As Record) Dim rcchild As Record Dim rs As Recordset Dim rschildren As Recordset Set rs = rc.getchildren Do While Not rs.eof Set rcchild = New Record rcchild.open rs 16 Smart Access February

4 If rcchild.recordtype <> adsimplerecord Then GetChildren rcchild End If rs.movenext Loop End Sub Record fields So what do you do with a Record? Like a Recordset, the first thing that you can do with a Record is access its fields. A Record has a Fields collection that works in the same way as a Recordset. What appears in the Fields collection has more to do with the provider that you use than the data that you access. The Record object guarantees only that two fields will be present in the Fields collection: A field containing the content of the node (for the Internet Publishing provider, that s the content of a file from a Web site) A field containing the absolute URL of the node (for the Internet Publishing provider, that s the URL of the file from the Web site) However, the provider can add any additional fields that it wants to the Record s Fields collection. The Internet Publishing provider puts 18 fields in the Record object s Fields collection, for instance. One of those fields (the third field in the collection, with an index of 2, called RESOURCE_ABSOLUTEPARSENAME) contains the absolute URL. For the file retrieved by this code: rc.open "MyFile.txt", " the RESOURCE_ABSOLUTEPARSENAME field would contain: / MyFile.txt The two fields defined by the Record object aren t guaranteed to appear in the same position for every provider. The Record object provides two enumerated values that you can use to retrieve those two fields, as shown in Table 1. Using adrecordurl, even though it has a value of -2, actually retrieves the third field, RESOURCE_ABSOLUTEPARSENAME, from the Record object s Fields collection. The addefaultstream field doesn t appear in the Record object s Fields collection unless you retrieve it with the enumerated value adrecordurl or an index of -1. Table 1. The Record object s enumerated values for retrieving the two defined fields. Enumerated value Value Field retrieved addefaultstream -1 Node contents adrecordurl -2 Node s absolute URL Continues on page 21 Smart Access February

5 was to warn you that it s harder to work with a chart on a report than on a form. I say that because (are you ready?) the chart s behavior changes. Surprised? So was I! So to spare you some frustration, I ve summarized three of my most disconcerting discoveries in Table 1. You can use my techniques to add professionallooking Gantt charts to your Access (and Excel) applications that will impress your users. I find that getting a chart to look just right is fun and satisfying, and it speaks volumes to my users (at least a thousand words!). The tips and workarounds I ve shared here should inspire you to experiment with the MS Graph library s Chart object in your own applications. GANTT.ZIP at Doug Den Hoed is a founder of Lumina Systems Delivery in Calgary, Canada, which specializes in customized software solutions using Access, Visual Basic, InterDev, SQL Server, and Oracle. Doug drew this article from The KB ( his Access-based commercial package for managing software development projects. doug.denhoed@home.com. Table 1. Chart properties differ on forms and reports. Gotcha Details, advice, and workarounds Property imparity After several hours of denial, I finally confirmed the awful truth: A chart painted on a form has more properties (61) than the exact same chart painted on a report (42). My emphasis is on the differences. If you re counting on changing some properties at runtime on a report, I recommend that you enumerate the properties in design mode (for example, for each prp in objchart.properties debug.print prp.name ), note what s available, and test with Access s /runtime startup option. Can t see/change Rowsource Can t change ChartType One of the main features in my real application lets users change the chart s criteria on the fly. On a form s chart, it was trivial: I changed the chart s Rowsource, and the chart obligingly repainted itself with the new data. On a report s chart, however, I couldn t even see the Rowsource property, let alone set it! I spent several hours superstitiously repainting in different ways to see whether I could get the chart to keep its properties. No luck. I did find a workaround: Bind the chart to a working query (for example, qtmpchart), and manipulate the query s SQL property at runtime. It s a fine line between a cool technique and cheating. The ChartType is another powerful property that disappears when you paint the chart on a report. One workaround I can offer is to paint one chart for each type you might need, and use a Select Case to set the Visible property of the chart that you want to display. This solution has its own problems, as the invisible charts take up resources even if you use separate temporary queries and try to minimize their impact by setting them to impossible conditions (for example, giving the query a WHERE clause of 1=2). Ultimately, I abandoned this approach and created a separate report for each chart type. Accessing Records... Continued from page 17 The other fields provided by the Internet Publishing provider include the name of the parent directory (RESOURCE_PARENTNAME) and flags indicating whether the file is hidden or read-only, among other information. You can add new fields to the collection just by referring to them. For instance, this code adds a new field called Handled to a Record s Fields collection and sets it to True: rc!handled = True The field that s created will have the Variant data type, which Microsoft s documentation says isn t yet supported by ADO. The fields that are added are only temporary unless you use the Fields collection s Update method, at which point, presumably, the underlying physical entity will be updated with the new field and its content. The Internet Publishing provider won t update a file or directory, so it will only let you add fields temporarily. Calling the Update method of the Fields collection for the Internet Publishing provider will generate the message Current Provider does not support adding and deleting columns on the Record object. Working with files In addition to browsing the structure of the Web site and retrieving files, you can use the Record object to change the files on the site by using the Record object s CopyRecord, DeleteRecord, and MoveRecord methods. The DeleteRecord method is the simplest. This method, used without a parameter, deletes the resource specified by the Record object. This code deletes the physical entity pointed to by the Record object: rc.deleterecord Smart Access February

6 The DeleteRecord method also accepts a parameter that specifies the resource to be deleted. The MoveRecord method copies the resource to the location specified by the second parameter and then deletes the resource. If the first parameter is omitted, the MoveRecord method copies the resource that s pointed to by the Record object. If the first parameter is provided, that s the resource that will be copied. The MoveRecord method also accepts as its third and fourth parameters a user name and password to access the location where the resource will be copied. The fifth parameter to the method controls what happens if the target of the move already exists. The CopyRecord method acts like MoveRecord but doesn t delete the resource after making the new version. Many of the methods of the Record object have an Async parameter that allows you to execute the method asynchronously. However, the Record object doesn t fire events, so you ll have to monitor the progress of the methods by checking the Record object s State property. Manipulating Internet files can be useful, but what you really want to do is get at the content of those files that you re retrieving. The field retrieved with the addefaultstream value is actually a Stream object, another of the new ADO objects added in ADO 2.5. Next month, I ll show you how the Stream object works and how to integrate it both with XML and the Record object. ADORCRD.ZIP at Peter Vogel (MBA, MCSD) is the editor of Smart Access and a principal in PH&V Information Services. PH&V specializes in system design and development for COM/COM+ based systems. Peter has designed, built, and installed intranet and component-based systems for Bayer AG, Exxon, Christie Digital, and the Canadian Imperial Bank of Commerce. He s also the editor of Pinnacle s XML Developer newsletter, wrote The Visual Basic Object and Component Handbook (Prentice Hall), and is currently working on a book on user interface design (Apress). Peter teaches for Learning Tree International, wrote its Web application development course, is technical editor of its COM+ course, and is currently developing its Technical Writing course. His articles have appeared in every major magazine devoted to VB-based development and in the Microsoft Developer Network libraries. Peter also presents at conferences in North America and Europe. peter.vogel@phvis.com. XML Web Development SQL Server Visual Basic MS Access Oracle Visual C++ Delphi FoxPro XML Web Development SQL Server Visual Basic MS Access Oracle Sign up now for Pinnacle s FREE enewsletters! Get tips, tutorials, and news from gurus in the field delivered straight to your Inbox. XML Web Development SQL Server Visual Basic MS Access Oracle Visual C++ Delphi FoxPro XML Web Development SQL Server Visual Basic MS Access Oracle Downloads February 2001 Source Code DTSHEETS.ZIP Michael Kaplan s sample database includes a number of routines for manipulating datasheets. The code in this MDB file can be used to show and hide columns, prevent your users from repositioning columns, and resize columns to fit the data that they contain. (Access 97, Access 2000) IDENTITY.ZIP This Access add-in not only includes all of Russell Sinclair s code for working with AutoNumber fields, it also includes a user interface that allows you to modify the AutoNumber fields in your MDB file. (Access 2000) ADORCRD.ZIP Peter Vogel has provided a sample database that shows how to use the ADO Recordset object. The routines TraverseSite and GetChildren will provide a complete file listing for any Web site for which you have the URL (security permitting). (Access 97) GANTT.ZIP In his sample database, Doug Den Hoed has included all of the code and forms to generate Gantt charts from Access data. You ll need to have MS Chart installed to use this code. Doug has also provided the sample Excel spreadsheet that he used in developing his code. (Access 97) SA0102.ZIP and SA0102.CHM The latest update to the cumulative Smart Access index comes in Access 2.0, Access 95, and Access 97 versions. It includes full descriptions of every article since the January 1999 issue of Smart Access, as well as an index to each month s Source Code files. (The index is available in SA0201.ZIP The Complete February 2001 Source Code. ) 22 Smart Access February

Course 319 Supplementary Materials. Effective User Manuals

Course 319 Supplementary Materials. Effective User Manuals Course 319 Course 319 Supplementary Materials www.learningtree.com 1 Course 319 Originally published in the April, 2000 issue of the Smart Access newsletter from Pinnacle Publishing (www.pinpub.com). Peter

More information

Smart Access. SOMETIMES you need to hold some data in a table to work with it over. Temporary Tables. with No Bloat. Doug Den Hoed. vb123.

Smart Access. SOMETIMES you need to hold some data in a table to work with it over. Temporary Tables. with No Bloat. Doug Den Hoed. vb123. vb123.com Smart Access Solutions for Microsoft Access Developers Temporary Tables with No Bloat Doug Den Hoed 2000 Temporary tables are great for extending query functionality, storing transient data,

More information

NOT long ago, I had a discussion with a sales

NOT long ago, I had a discussion with a sales Send Your Files Anywhere Smart Access 2000 2002 Keith Bombard Keith Bombard shows you how to create a fully automated system for file transmission across the Internet using just Access and Outlook. NOT

More information

Integrating, Tagging, Printing, and Expanding

Integrating, Tagging, Printing, and Expanding Integrating, Tagging, Printing, and Expanding Peter Vogel Access Answers Smart Access 2000 2002 In this month s Access Answers column, Peter Vogel looks at replacing perfectly good Access functions, having

More information

Smart Access. CROSSTAB queries are helpful tools for displaying data in a tabular. Automated Excel Pivot Reports from Access. Mark Davis. vb123.

Smart Access. CROSSTAB queries are helpful tools for displaying data in a tabular. Automated Excel Pivot Reports from Access. Mark Davis. vb123. vb123.com Smart Access Solutions for Microsoft Access Developers Automated Excel Pivot Reports from Access Mark Davis 2000 2002 Excel pivot reports are dynamic, easy to use, and have several advantages

More information

Chapter11 practice file folder. For more information, see Download the practice files in this book s Introduction.

Chapter11 practice file folder. For more information, see Download the practice files in this book s Introduction. Make databases user friendly 11 IN THIS CHAPTER, YOU WILL LEARN HOW TO Design navigation forms. Create custom categories. Control which features are available. A Microsoft Access 2013 database can be a

More information

THERE have been a number of articles in Smart Access

THERE have been a number of articles in Smart Access Prometheus Unbound Smart Access 2000 2002 David Moss If you re thinking of moving to a client/sever database, you can do it in Access. However, if you re going to get the performance that you need, then

More information

END-TERM EXAMINATION

END-TERM EXAMINATION (Please Write your Exam Roll No. immediately) END-TERM EXAMINATION DECEMBER 2006 Exam. Roll No... Exam Series code: 100274DEC06200274 Paper Code : MCA-207 Subject: Front End Design Tools Time: 3 Hours

More information

Splitting Up is Hard to Do Doug Hennig

Splitting Up is Hard to Do Doug Hennig Splitting Up is Hard to Do Doug Hennig While they aren t used everywhere, splitter controls can add a professional look to your applications when you have left/right or top/bottom panes in a window. This

More information

The Mother of All TreeViews, Part 2 Doug Hennig

The Mother of All TreeViews, Part 2 Doug Hennig The Mother of All TreeViews, Part 2 Doug Hennig Last month, Doug presented a reusable class that encapsulates most of the desired behavior for a TreeView control. He discussed controlling the appearance

More information

Visual Programming 1. What is Visual Basic? 2. What are different Editions available in VB? 3. List the various features of VB

Visual Programming 1. What is Visual Basic? 2. What are different Editions available in VB? 3. List the various features of VB Visual Programming 1. What is Visual Basic? Visual Basic is a powerful application development toolkit developed by John Kemeny and Thomas Kurtz. It is a Microsoft Windows Programming language. Visual

More information

Manual Vba Access 2010 Recordset Query

Manual Vba Access 2010 Recordset Query Manual Vba Access 2010 Recordset Query I used the below vba code in Excel 2007 to query Access 2007 accdb database successfully. Credit (Taken from "The Excel Analyst's Guide to Access" by Michael Recordset

More information

How metadata can reduce query and report complexity As printed in the September 2009 edition of the IBM Systems Magazine

How metadata can reduce query and report complexity As printed in the September 2009 edition of the IBM Systems Magazine Untangling Web Query How metadata can reduce query and report complexity As printed in the September 2009 edition of the IBM Systems Magazine Written by Gene Cobb cobbg@us.ibm.com What is Metadata? Since

More information

Part I: Programming Access Applications. Chapter 1: Overview of Programming for Access. Chapter 2: Extending Applications Using the Windows API

Part I: Programming Access Applications. Chapter 1: Overview of Programming for Access. Chapter 2: Extending Applications Using the Windows API 74029c01.qxd:WroxPro 9/27/07 1:43 PM Page 1 Part I: Programming Access Applications Chapter 1: Overview of Programming for Access Chapter 2: Extending Applications Using the Windows API Chapter 3: Programming

More information

Bruce Moore Fall 99 Internship September 23, 1999 Supervised by Dr. John P.

Bruce Moore Fall 99 Internship September 23, 1999 Supervised by Dr. John P. Bruce Moore Fall 99 Internship September 23, 1999 Supervised by Dr. John P. Russo Active Server Pages Active Server Pages are Microsoft s newest server-based technology for building dynamic and interactive

More information

What's New in Access 2000 p. 1 A Brief Access History p. 2 Access the Best Access Ever p. 5 Microsoft Office Developer Features p.

What's New in Access 2000 p. 1 A Brief Access History p. 2 Access the Best Access Ever p. 5 Microsoft Office Developer Features p. Foreword p. xxxiii About the Authors p. xxxvi Introduction p. xxxviii What's New in Access 2000 p. 1 A Brief Access History p. 2 Access 2000--the Best Access Ever p. 5 Microsoft Office Developer Features

More information

Pre-Migration Cleanup

Pre-Migration Cleanup Database Clean Up Pre-Migration Cleanup Our database is dirty So is yours. The Visual Element Migrator can handle only so much dirt. We had to clean it up. Problems Total Quantity = 0 Percent in CS doesn

More information

To get started with Visual Basic 2005, I recommend that you jump right in

To get started with Visual Basic 2005, I recommend that you jump right in In This Chapter Chapter 1 Wading into Visual Basic Seeing where VB fits in with.net Writing your first Visual Basic 2005 program Exploiting the newfound power of VB To get started with Visual Basic 2005,

More information

ITConnect KEEPING TRACK OF YOUR EXPENSES WITH YNAB

ITConnect KEEPING TRACK OF YOUR EXPENSES WITH YNAB ITConnect Technology made practical for home APRIL 06 Edit PDF files with Word Word is the best tool we have at hand to edit PDFs without having to purchase extra software. Viruses distributed by email

More information

Manual Vba Access 2010 Recordset Find

Manual Vba Access 2010 Recordset Find Manual Vba Access 2010 Recordset Find Microsoft Access VBA Programming - ADO Recordsets for The Beginners Part 2 Demo. The Recordset property returns the recordset object that provides the data being browsed

More information

How to use data sources with databases (part 1)

How to use data sources with databases (part 1) Chapter 14 How to use data sources with databases (part 1) 423 14 How to use data sources with databases (part 1) Visual Studio 2005 makes it easier than ever to generate Windows forms that work with data

More information

CheckBook Pro 2 Help

CheckBook Pro 2 Help Get started with CheckBook Pro 9 Introduction 9 Create your Accounts document 10 Name your first Account 11 Your Starting Balance 12 Currency 13 We're not done yet! 14 AutoCompletion 15 Descriptions 16

More information

Introduction to Access 97/2000

Introduction to Access 97/2000 Introduction to Access 97/2000 PowerPoint Presentation Notes Slide 1 Introduction to Databases (Title Slide) Slide 2 Workshop Ground Rules Slide 3 Objectives Here are our objectives for the day. By the

More information

One of Excel 2000 s distinguishing new features relates to sharing information both

One of Excel 2000 s distinguishing new features relates to sharing information both Chapter 7 SHARING WORKBOOKS In This Chapter Using OLE with Excel Sharing Workbook Files Sharing Excel Data Over the Web Retrieving External Data with Excel One of Excel 2000 s distinguishing new features

More information

SAP BusinessObjects Live Office User Guide SAP BusinessObjects Business Intelligence platform 4.1 Support Package 2

SAP BusinessObjects Live Office User Guide SAP BusinessObjects Business Intelligence platform 4.1 Support Package 2 SAP BusinessObjects Live Office User Guide SAP BusinessObjects Business Intelligence platform 4.1 Support Package 2 Copyright 2013 SAP AG or an SAP affiliate company. All rights reserved. No part of this

More information

WPS Workbench. user guide. "To help guide you through using the WPS user interface (Workbench) to create, edit and run programs"

WPS Workbench. user guide. To help guide you through using the WPS user interface (Workbench) to create, edit and run programs WPS Workbench user guide "To help guide you through using the WPS user interface (Workbench) to create, edit and run programs" Version: 3.1.7 Copyright 2002-2018 World Programming Limited www.worldprogramming.com

More information

ONE of the challenges we all face when developing

ONE of the challenges we all face when developing Using SQL-DMO to Handle Security in ADPs Russell Sinclair 2000 2002 Smart Access MSDE is a powerful, free version of SQL Server that you can make available to your users. In this issue, Russell Sinclair

More information

Linking Reports to your Database in Crystal Reports 2008

Linking Reports to your Database in Crystal Reports 2008 Linking Reports to your Database in Crystal Reports 2008 After downloading and saving a report on your PC, either (1) browse-to the report using Windows Explorer and double-click on the report file or

More information

EMC SourceOne for Microsoft SharePoint Version 6.7

EMC SourceOne for Microsoft SharePoint Version 6.7 EMC SourceOne for Microsoft SharePoint Version 6.7 Administration Guide P/N 300-012-746 REV A01 EMC Corporation Corporate Headquarters: Hopkinton, MA 01748-9103 1-508-435-1000 www.emc.com Copyright 2011

More information

Every project requires communication and collaboration and usually a lot of

Every project requires communication and collaboration and usually a lot of Collaborating on Projects with SharePoint CHAPTER 25 Every project requires communication and collaboration and usually a lot of both. With small project teams, you and your team members may interact in

More information

IntelliSense at Runtime Doug Hennig

IntelliSense at Runtime Doug Hennig IntelliSense at Runtime Doug Hennig VFP 9 provides support for IntelliSense at runtime. This month, Doug Hennig examines why this is useful, discusses how to implement it, and extends Favorites for IntelliSense

More information

CIS 45, The Introduction. What is a database? What is data? What is information?

CIS 45, The Introduction. What is a database? What is data? What is information? CIS 45, The Introduction I have traveled the length and breadth of this country and talked with the best people, and I can assure you that data processing is a fad that won t last out the year. The editor

More information

Magic Tutorial #4: Cell Hierarchies

Magic Tutorial #4: Cell Hierarchies Magic Tutorial #4: Cell Hierarchies John Ousterhout Computer Science Division Electrical Engineering and Computer Sciences University of California Berkeley, CA 94720 (Updated by others, too.) This tutorial

More information

9. Introduction to MS Access

9. Introduction to MS Access 9. Introduction to MS Access 9.1 What is MS Access? Essentially, MS Access is a database management system (DBMS). Like other products in this category, Access: o Stores and retrieves data, o Presents

More information

Public-Private Dialogue

Public-Private Dialogue Public-Private Dialogue www.publicprivatedialogue.org The PPD Reform Tracking Tool A tutorial to use a tool designed to manage, track and report on Working Groups issues 1- INTRODUCTION... 3 2 - BROWSING

More information

What s New in Access Learning the history of Access changes. Understanding what s new in Access 2002

What s New in Access Learning the history of Access changes. Understanding what s new in Access 2002 4009ch01.qxd 07/31/01 5:07 PM Page 1 C HAPTER 1 What s New in Access 2002 Learning the history of Access changes Understanding what s new in Access 2002 Understanding what s new in the Jet and SQL Server

More information

Access Intermediate

Access Intermediate Access 2010 - Intermediate (103-134) Building Access Databases Notes Quick Links Building Databases Pages AC52 AC56 AC91 AC93 Building Access Tables Pages AC59 AC67 Field Types Pages AC54 AC56 AC267 AC270

More information

Manual Vba Access 2007 Recordset Find

Manual Vba Access 2007 Recordset Find Manual Vba Access 2007 Recordset Find Total Visual CodeTools manual Supports Office/Access 2010, 2007, 2003, 2002, 2000, and Visual Basic 6.0! Create, Maintain, and Deliver better Microsoft Access, Office,

More information

Taking Control Doug Hennig

Taking Control Doug Hennig Taking Control Doug Hennig This month, Doug Hennig discusses a simple way to make anchoring work the way you expect it to and how to control the appearance and behavior of a report preview window. There

More information

Acknowledgments Introduction. Chapter 1: Introduction to Access 2007 VBA 1. The Visual Basic Editor 18. Testing Phase 24

Acknowledgments Introduction. Chapter 1: Introduction to Access 2007 VBA 1. The Visual Basic Editor 18. Testing Phase 24 Acknowledgments Introduction Chapter 1: Introduction to Access 2007 VBA 1 What Is Access 2007 VBA? 1 What s New in Access 2007 VBA? 2 Access 2007 VBA Programming 101 3 Requirements-Gathering Phase 3 Design

More information

NSCC SUMMER LEARNING SESSIONS MICROSOFT OFFICE SESSION

NSCC SUMMER LEARNING SESSIONS MICROSOFT OFFICE SESSION NSCC SUMMER LEARNING SESSIONS MICROSOFT OFFICE SESSION Module 1 Using Windows Welcome! Microsoft Windows is an important part of everyday student life. Whether you are logging onto an NSCC computer or

More information

Running Java Programs

Running Java Programs Running Java Programs Written by: Keith Fenske, http://www.psc-consulting.ca/fenske/ First version: Thursday, 10 January 2008 Document revised: Saturday, 13 February 2010 Copyright 2008, 2010 by Keith

More information

Using Components Directly from Your Company Database

Using Components Directly from Your Company Database Using Components Directly from Your Company Database Old Content - visit altium.com/documentation Modified by Phil Loughhead on 18-May-2016 This document provides detailed information on using components

More information

In this chapter, I m going to show you how to create a working

In this chapter, I m going to show you how to create a working Codeless Database Programming In this chapter, I m going to show you how to create a working Visual Basic database program without writing a single line of code. I ll use the ADO Data Control and some

More information

1. MS EXCEL. a. Charts/Graphs

1. MS EXCEL. a. Charts/Graphs 1. MS EXCEL 3 tips to make your week easier! (MS Excel) In this guide we will be focusing on some of the unknown and well known features of Microsoft Excel. There are very few people, if any at all, on

More information

Visual Basic 6 includes many tools to help you create, revise, manage, and

Visual Basic 6 includes many tools to help you create, revise, manage, and 0625-0 Ch01.F 7/10/03 9:19 AM Page 11 Chapter 1 The Big Picture: Visual Basic s Database Features In This Chapter Sampling Visual Basic s most important database features Connecting an application to a

More information

» How do I Integrate Excel information and objects in Word documents? How Do I... Page 2 of 10 How do I Integrate Excel information and objects in Word documents? Date: July 16th, 2007 Blogger: Scott Lowe

More information

A New Beginning Doug Hennig

A New Beginning Doug Hennig A New Beginning Doug Hennig The development world is moving to reusable components. As goes the world, so goes Doug s column. We ll start off the new Best Tools column with SFThermometer, a handy progress

More information

IN this installment of Access Answers, I m answering

IN this installment of Access Answers, I m answering Subforms to Security Access Answers Smart Access 2000 2002 Christopher Weber This month, Christopher Weber runs through questions that range from subforms to transparently joining secured workgroups. IN

More information

Making a PowerPoint Accessible

Making a PowerPoint Accessible Making a PowerPoint Accessible Purpose The purpose of this document is to help you to create an accessible PowerPoint, or to take a nonaccessible PowerPoint and make it accessible. You are probably reading

More information

Teiid Designer User Guide 7.5.0

Teiid Designer User Guide 7.5.0 Teiid Designer User Guide 1 7.5.0 1. Introduction... 1 1.1. What is Teiid Designer?... 1 1.2. Why Use Teiid Designer?... 2 1.3. Metadata Overview... 2 1.3.1. What is Metadata... 2 1.3.2. Editing Metadata

More information

Manual Vba Access 2010 Recordset Findfirst

Manual Vba Access 2010 Recordset Findfirst Manual Vba Access 2010 Recordset Findfirst The Recordset property returns the recordset object that provides the data being browsed in a form, report, list box control, or combo box control. If a form.

More information

The tracing tool in SQL-Hero tries to deal with the following weaknesses found in the out-of-the-box SQL Profiler tool:

The tracing tool in SQL-Hero tries to deal with the following weaknesses found in the out-of-the-box SQL Profiler tool: Revision Description 7/21/2010 Original SQL-Hero Tracing Introduction Let s start by asking why you might want to do SQL tracing in the first place. As it turns out, this can be an extremely useful activity

More information

Oracle SQL. murach s. and PL/SQL TRAINING & REFERENCE. (Chapter 2)

Oracle SQL. murach s. and PL/SQL TRAINING & REFERENCE. (Chapter 2) TRAINING & REFERENCE murach s Oracle SQL and PL/SQL (Chapter 2) works with all versions through 11g Thanks for reviewing this chapter from Murach s Oracle SQL and PL/SQL. To see the expanded table of contents

More information

Creating a PDF Report with Multiple Queries

Creating a PDF Report with Multiple Queries Creating a PDF Report with Multiple Queries Purpose This tutorial shows you how to create a PDF report that contains a table and graph utilizing two report queries. Time to Complete Approximately 15 minutes

More information

CS 111. Operating Systems Peter Reiher

CS 111. Operating Systems Peter Reiher Operating System Principles: File Systems Operating Systems Peter Reiher Page 1 Outline File systems: Why do we need them? Why are they challenging? Basic elements of file system design Designing file

More information

ADO.NET 2.0. database programming with

ADO.NET 2.0. database programming with TRAINING & REFERENCE murach s ADO.NET 2.0 database programming with (Chapter 3) VB 2005 Thanks for downloading this chapter from Murach s ADO.NET 2.0 Database Programming with VB 2005. We hope it will

More information

Manage Your Applications Doug Hennig

Manage Your Applications Doug Hennig Manage Your Applications Doug Hennig This month s article presents a simple yet useful tool, and discusses several reusable techniques used in this tool. If you re like me, your hard drive (or your server

More information

RiskyProject Enterprise 7

RiskyProject Enterprise 7 RiskyProject Enterprise 7 Project Risk Management Software RiskyProject Enterprise User Guide Intaver Institute Inc. www.intaver.com email: info@intaver.com COPYRIGHT Copyright 2017 Intaver Institute.

More information

Entries in the MS-Flex Grid

Entries in the MS-Flex Grid Entries in the MS-Flex Grid Narinder Kumar Sharma Under the Guidance of Mr. Ashwani Sethi Guru Kashi University Talwandi Sabo Email Id: - Nar12f1980@Yahoo.Co.In ABSTRACT Also, users do not require any

More information

COPYRIGHTED MATERIAL. Getting Started with. Windows 7. Lesson 1

COPYRIGHTED MATERIAL. Getting Started with. Windows 7. Lesson 1 Lesson 1 Getting Started with Windows 7 What you ll learn in this lesson: What you can do with Windows 7 Activating your copy of Windows 7 Starting Windows 7 The Windows 7 desktop Getting help The public

More information

Windows Database Applications

Windows Database Applications 3-1 Windows Database Applications Chapter 3 In this chapter, you learn to access and display database data on a Windows form. You will follow good OOP principles and perform the database access in a datatier

More information

Real World Foreach Loop Container example

Real World Foreach Loop Container example Real World Foreach Loop Container example Looping operations in SQL Server Integration Services The Foreach Loop container is one of the most flexible and useful controls available to SQL Server Integration

More information

Getting started 7. Setting properties 23

Getting started 7. Setting properties 23 Contents 1 2 3 Getting started 7 Introduction 8 Installing Visual Basic 10 Exploring the IDE 12 Starting a new project 14 Adding a visual control 16 Adding functional code 18 Saving projects 20 Reopening

More information

Clean & Speed Up Windows with AWO

Clean & Speed Up Windows with AWO Clean & Speed Up Windows with AWO C 400 / 1 Manage Windows with this Powerful Collection of System Tools Every version of Windows comes with at least a few programs for managing different aspects of your

More information

VBA Final Project: xlbooster Dan Patten

VBA Final Project: xlbooster Dan Patten VBA Final Project: xlbooster Dan Patten Table of Contents Executive Summary... 2 Implementation Documentation... 3 Basic Structure... 3 Code Structure... 3 Ribbon... 4 Group Sheet Manager... 4 Treeview...

More information

1. Managing Information in Table

1. Managing Information in Table 1. Managing Information in Table Spreadsheets are great for making lists (such as phone lists, client lists). The researchers discovered that not only was list management the number one spreadsheet activity,

More information

Navigating and Managing Files and Folders in Windows XP

Navigating and Managing Files and Folders in Windows XP Part 1 Navigating and Managing Files and Folders in Windows XP In the first part of this book, you ll become familiar with the Windows XP Home Edition interface and learn how to view and manage files,

More information

Password Protect an Access Database

Password Protect an Access Database Access a Password Protected Microsoft Access Database from within Visual Basic 6 Have you ever wanted to password protect an Access Database that is a Data Store (a repository of Data) used in one of your

More information

User Guide Hilton Court St. Paul, MN (651)

User Guide Hilton Court St. Paul, MN (651) User Guide 6331 Hilton Court St. Paul, MN 55115 (651) 779 0955 http://www.qdea.com sales@qdea.com support@qdea.com Synchronize! and Qdea are trademarks of Qdea. Macintosh and the Mac OS logo are trademarks

More information

ORACLE USER PRODUCTIVITY KIT USAGE TRACKING ADMINISTRATION & REPORTING RELEASE SERVICE PACK 1 PART NO. E

ORACLE USER PRODUCTIVITY KIT USAGE TRACKING ADMINISTRATION & REPORTING RELEASE SERVICE PACK 1 PART NO. E ORACLE USER PRODUCTIVITY KIT USAGE TRACKING ADMINISTRATION & REPORTING RELEASE 3.6.1 SERVICE PACK 1 PART NO. E17383-01 MARCH 2010 COPYRIGHT Copyright 1998, 2010, Oracle and/or its affiliates. All rights

More information

Lesson 1 Getting Started with a Database

Lesson 1 Getting Started with a Database Lesson 1 Getting Started with a Database THE PROFESSIONAL APPROACH S E R I E S M I C R O S O F T ACCESS 2007 Lesson Objectives 2 Identify basic database structure. Work with a Microsoft Access database.

More information

Simple Rules to Remember When Working with Indexes

Simple Rules to Remember When Working with Indexes Simple Rules to Remember When Working with Indexes Kirk Paul Lafler, Software Intelligence Corporation, Spring Valley, CA Abstract SAS users are always interested in learning techniques related to improving

More information

Database Concepts. Online Appendix I Getting Started with Web Servers, PHP, and the NetBeans IDE. 7th Edition. David M. Kroenke David J.

Database Concepts. Online Appendix I Getting Started with Web Servers, PHP, and the NetBeans IDE. 7th Edition. David M. Kroenke David J. Database Concepts 7th Edition David M. Kroenke David J. Auer Online Appendix I Getting Started with Web Servers, PHP, and the NetBeans IDE All rights reserved. No part of this publication may be reproduced,

More information

About the Presentations

About the Presentations About the Presentations The presentations cover the objectives found in the opening of each chapter. All chapter objectives are listed in the beginning of each presentation. You may customize the presentations

More information

CSC 330 Object-Oriented

CSC 330 Object-Oriented CSC 330 Object-Oriented Oriented Programming Using ADO.NET and C# CSC 330 Object-Oriented Design 1 Implementation CSC 330 Object-Oriented Design 2 Lecture Objectives Use database terminology correctly

More information

Essbase Installation Tutorial Tim Tow, President and Oracle ACE Director. Applied OLAP, Inc

Essbase Installation Tutorial Tim Tow, President and Oracle ACE Director. Applied OLAP, Inc , President and September 10, 2008 (revised October 23, 2008) In a recent blog post, I expressed my dedication to installing Essbase 11.1.1 and, I figured that while I was installing it, I should document

More information

ANNOYING COMPUTER PROBLEMS

ANNOYING COMPUTER PROBLEMS ANNOYING COMPUTER PROBLEMS And their solution Before you do this to your computer read this information. Feel free to print it out. This will make it easier to reference. Table of Contents 1. Computer

More information

OUR company has recognized that forms design is

OUR company has recognized that forms design is User Interface Standards for Forms Smart Access 2000 2002 Dennis Schumaker User interface standards are critical for both programmer and end-user productivity. An important part of any application is Application

More information

Lies, Damned Lies, Statistics and SQL

Lies, Damned Lies, Statistics and SQL Lies, Damned Lies, Statistics and SQL by Peter Lavin December 17, 2003 Introduction When I read about the Developer Shed December Giveaway Contest in the most recent newsletter a thought occurred to me.

More information

What can I say? The Excel program window (shown in Figure 1-1)

What can I say? The Excel program window (shown in Figure 1-1) 1 Customizing Technique Save Time By Switching in and out of Full Screen view Customizing sheet and workbook settings Saving your custom settings in a workbook template the Excel Screen Display What can

More information

How To Upload Your Newsletter

How To Upload Your Newsletter How To Upload Your Newsletter Using The WS_FTP Client Copyright 2005, DPW Enterprises All Rights Reserved Welcome, Hi, my name is Donna Warren. I m a certified Webmaster and have been teaching web design

More information

Overview of Relational Databases

Overview of Relational Databases Overview of Relational Databases 1. Databases are used to store information in a structured manner. This means that there are lots of rules that you can set up which the database will enforce. While this

More information

Creating a Spreadsheet by Using Excel

Creating a Spreadsheet by Using Excel The Excel window...40 Viewing worksheets...41 Entering data...41 Change the cell data format...42 Select cells...42 Move or copy cells...43 Delete or clear cells...43 Enter a series...44 Find or replace

More information

POInspect0r. for RNS 510 and Discover units Personal POI. Quick Start Guide

POInspect0r. for RNS 510 and Discover units Personal POI. Quick Start Guide POInspect0r for RNS 510 and Discover units Personal POI Quick Start Guide First version of document: 05/2011 (by ) Current version: 06/2018 (by Zeebulon) Based on application version 6.8 Index 1. Introduction...

More information

Introduction to Stata: An In-class Tutorial

Introduction to Stata: An In-class Tutorial Introduction to Stata: An I. The Basics - Stata is a command-driven statistical software program. In other words, you type in a command, and Stata executes it. You can use the drop-down menus to avoid

More information

Proficy* HMI/SCADA - ifix U SING V ISICONX

Proficy* HMI/SCADA - ifix U SING V ISICONX Proficy* HMI/SCADA - ifix U SING V ISICONX Version 5.5 January 2012 All rights reserved. No part of this publication may be reproduced in any form or by any electronic or mechanical means, including photocopying

More information

Introduction. Introduction

Introduction. Introduction Building ASP.NET MVC 3 Applications Using Visual C# 2010 Intro-1 Prerequisites This course assumes that you are familiar and experienced with Microsoft s.net Framework and ASP.NET development tools. You

More information

Index. B backing up 76 7

Index. B backing up 76 7 A Access, other DBMSs and 9 Action queries 121, 125 defined 125 address book 16, 34 age calculations 60 answer table 36 editing data in 147 8 field names 294 multi-table queries 294 queries and 155 queries

More information

Using Microsoft Word. Working With Objects

Using Microsoft Word. Working With Objects Using Microsoft Word Many Word documents will require elements that were created in programs other than Word, such as the picture to the right. Nontext elements in a document are referred to as Objects

More information

Index. Smart Image Processor 2 Manual DMXzone.com

Index. Smart Image Processor 2 Manual DMXzone.com Index Index... 1 About Smart Image Processor 2... 2 Features in Detail... 2 Before you begin... 6 Installing the extension... 7 Updating from previous versions... 7 Introduction... 7 How to do it... 7

More information

Want to add cool effects like rollovers and pop-up windows?

Want to add cool effects like rollovers and pop-up windows? Chapter 10 Adding Interactivity with Behaviors In This Chapter Adding behaviors to your Web page Creating image rollovers Using the Swap Image behavior Launching a new browser window Editing your behaviors

More information

How to Get Started. Figure 3

How to Get Started. Figure 3 Tutorial PSpice How to Get Started To start a simulation, begin by going to the Start button on the Windows toolbar, then select Engineering Tools, then OrCAD Demo. From now on the document menu selection

More information

Usability Test Report: Bento results interface 1

Usability Test Report: Bento results interface 1 Usability Test Report: Bento results interface 1 Summary Emily Daly and Ian Sloat conducted usability testing on the functionality of the Bento results interface. The test was conducted at the temporary

More information

Coveo Platform 7.0. Microsoft Dynamics CRM Connector Guide

Coveo Platform 7.0. Microsoft Dynamics CRM Connector Guide Coveo Platform 7.0 Microsoft Dynamics CRM Connector Guide Notice The content in this document represents the current view of Coveo as of the date of publication. Because Coveo continually responds to changing

More information

$99.95 per user. SQL Server 2008 Integration Services CourseId: 158 Skill level: Run Time: 42+ hours (210 videos)

$99.95 per user. SQL Server 2008 Integration Services CourseId: 158 Skill level: Run Time: 42+ hours (210 videos) Course Description Our is a comprehensive A-Z course that covers exactly what you want in an SSIS course: data flow, data flow, and more data flow. You will learn about transformations, common design patterns

More information

Getting started 7. Setting properties 23

Getting started 7. Setting properties 23 Contents 1 2 3 Getting started 7 Introducing Visual Basic 8 Installing Visual Studio 10 Exploring the IDE 12 Starting a new project 14 Adding a visual control 16 Adding functional code 18 Saving projects

More information

Adding records Pasting records Deleting records Sorting records Filtering records Inserting and deleting columns Calculated columns Working with the

Adding records Pasting records Deleting records Sorting records Filtering records Inserting and deleting columns Calculated columns Working with the Show All About spreadsheets You can use a spreadsheet to enter and calculate data. A spreadsheet consists of columns and rows of cells. You can enter data directly into the cells of the spreadsheet and

More information

Deploying Citrix Access Gateway VPX with Web Interface 5.4

Deploying Citrix Access Gateway VPX with Web Interface 5.4 Deploying Citrix Access Gateway VPX with Web Interface 5.4 Ben Piper President Ben Piper Consulting, LLC Copyright 2012 Ben Piper. All rights reserved. Page 1 Introduction Deploying Citrix Access Gateway

More information

TUTORIAL FOR IMPORTING OTTAWA FIRE HYDRANT PARKING VIOLATION DATA INTO MYSQL

TUTORIAL FOR IMPORTING OTTAWA FIRE HYDRANT PARKING VIOLATION DATA INTO MYSQL TUTORIAL FOR IMPORTING OTTAWA FIRE HYDRANT PARKING VIOLATION DATA INTO MYSQL We have spent the first part of the course learning Excel: importing files, cleaning, sorting, filtering, pivot tables and exporting

More information