automating database processing chapter 6. chapter introduction design and implement user-friendly...

54
Automating Database Processing Chapter 6

Upload: bruce-phelps

Post on 30-Dec-2015

238 views

Category:

Documents


1 download

TRANSCRIPT

Automating Database Processing

Chapter 6

Chapter Introduction

• Design and implement user-friendly menu– Called navigation form

• Macros– Automate repetitive tasks– Add functionality to reports and forms

Succeeding in Business with Microsoft Access 2010 2

Tools Covered in This Chapter

• Access Options• Action Catalog• AutoExec macro• AutoKeys macro• Breakpoints• Events• Macros

Succeeding in Business with Microsoft Access 2010 3

Tools Covered in This Chapter

• Macro groups• Macro security• Navigation Forms• Splash screen• Trust Center• Visual Basic for Applications (VBA)

Succeeding in Business with Microsoft Access 2010 4

Level 1 Objectives: Automating Tasks with Switchboards and Macros

• Create a well-designed navigation form to provide a user interface for a database

• Automate tasks by creating basic macros• Specify what happens when a database opens

Succeeding in Business with Microsoft Access 2010 5

Understanding Navigation Forms

• Navigation Form– Special kind of form – Appears when database opened– Makes database navigation similar to a website

• Main navigation form and subform control automatically built in

• Drag and drop object to form and create tab– Selecting tab allows instant view of the objects

Succeeding in Business with Microsoft Access 2010 6

Understanding Switchboards (continued)

• Can add buttons to main navigation form to work with– Tables– Forms– Queries– Reports

• Appear in hierarchical format

Succeeding in Business with Microsoft Access 2010 7

Typical Switchboard Design

Succeeding in Business with Microsoft Access 2010 8

Designing a Navigation Form

• Main navigation form serves as menu for users when database is opened

• Control user access to tables • Review objects, plan categories to organize

the objects on tabs• Sketch a design for the navigation form

Succeeding in Business with Microsoft Access 2010 9

Creating a Navigation Form

• Create lower level of the hierarchy first– Create tabs by drag and drop of object onto form

• Create main navigation form then created• Click Navigation button in forms group of Create tab

– Select tab layout– Change title and change format, if necessary– Drag forms or reports from Navigation Pane to the [Add New]

tab– Use Layout view and Form selector button to change form

location or size

• Repeat until all needed forms are on the navigation form

Succeeding in Business with Microsoft Access 2010 10

Creating a Navigation Form, Cont.

• Preview all forms in Form View– Test to ensure working correctly

• Create forms for reports as created for forms– Preview and test all tabs to ensure working

correctly• Create main form to provide easy navigation

through database• Last item on main form should be a button to

close the databaseSucceeding in Business with Microsoft Access 2010 11

Formatting a Main Menu

• Steps to changing the format of a main menu– Open the navigation form in design view– Change formatting elements• Color• Labels• Images• Lines

– To change size and position properties, double click Form Selector button and change entries on form’s property sheet

Succeeding in Business with Microsoft Access 2010 12

Understanding Basic Macros

• Macro – Action or series of actions – Save time and ensure accuracy– Automate repetitive tasks– Composed of series of actions organized in

sequence in which they should be performed• Create macro– Using Macro window

Succeeding in Business with Microsoft Access 2010 13

Common Macro Actions

Succeeding in Business with Microsoft Access 2010 14

Creating a Macro

• Create Access macro in Macro window• Select the Create tab, and then click the

Macro button in the Macro & Code group• Action catalog – Select features wanted– Actions to be performed– Click list arrow in action column– Click Add New and scroll through list to action you

wantSucceeding in Business with Microsoft Access 2010 15

Creating a Macro (continued)

• Action arguments– Provide additional information for performing

macro action– Arguments needed vary depending on selected

action chosen• Save macro with descriptive name, using mcr

prefix

Succeeding in Business with Microsoft Access 2010 16

Running a Macro

• Three ways to run a macro:– In Macro Tools design tab, click the Run button in

the Tools group– On database Tools Tab, click the Run Macro button

in the Macro group• Select the macron in the Run Macro dialog box,

click– In the Navigation Pane, click Macros, right-click

the macro name, and then click Run

Succeeding in Business with Microsoft Access 2010 17

Editing a Macro

• Use Macro Builder as in creating• Rearrange order of actions – Drag action line to new position

• Insert new action between two existing actions – Click Add new and select the action– Move or drag the new action between the two

other actions• Delete action– Click action then click the delete button

Succeeding in Business with Microsoft Access 2010 18

Setting Startup Options

• Startup options– Access performs when database opens

• Set options using Access options feature• Bypass Startup Options– Press and hold down shift key when opening

database

Succeeding in Business with Microsoft Access 2010 19

Specifying Startup Options in the Startup Dialog Box

• Options– Display form– Display navigation pane– Allow full menus

Succeeding in Business with Microsoft Access 2010 20

Startup Dialog Box

Succeeding in Business with Microsoft Access 2010 21

Creating a Splash Screen

• Splash screen– Displays when database opens– Contains• Logo• Text

• Can only display splash screen or Navigation form automatically

Succeeding in Business with Microsoft Access 2010 22

Creating a Splash Screen (continued)

• AutoExec– Special macro– Runs when database opens– Before Access Options dialog box options– Can use to display splash screen

• Create splash screen form

Succeeding in Business with Microsoft Access 2010 23

Creating an AutoExec Macro

• Create macro that contains actions Access should perform when database opened

• Save macro using name AutoExec

Succeeding in Business with Microsoft Access 2010 24

Level 1 Summary

• Navigation Form– Special kind of form – Appears when database opened

• Macro– Use to automate repeated actions

• Access options dialog box• Splash screen

Succeeding in Business with Microsoft Access 2010 25

Level 2 Objectives:Creating Advanced Macros

• Consolidate automated tasks by creating a macro group

• Specify conditions and events for macros• Troubleshoot macros

Succeeding in Business with Microsoft Access 2010 26

Understanding Macro Groups

• Macro group – Two or more macros placed within same macro

file– Consolidate related macros – Manage large numbers of macros– Only group name displayed as macro object in

database window

Succeeding in Business with Microsoft Access 2010 27

Creating a Macro Group

• Logical to organize similar macros within group• To create:

– Click Create tab on the ribbon, click Macro button in the Macros & Code group

– Click the Action Catalog button in the Show/Hide group on the Design tab

– Add the Submacro Action to the Macro Builder– Enter unique name in the Submacro box– Click Add New Action arrow and select an action, select or enter

the arguments– Repeat for each macro you want in group– Save the macro group using mcr prefix

Succeeding in Business with Microsoft Access 2010 28

Running the Macros in a Macro Group

• Clicking Run Button on the Design tab runs only the first macro in the group

• Run particular macro within group– Click the Run Macro button in the Macro group on

the Database Tools tab– Select the list arrow to choose the macro name– Click the macro name– Click OK

Succeeding in Business with Microsoft Access 2010 29

Assigning AutoKeys to Macros in a Macro Group

• AutoKeys macro group – Assign macro to key or key combination• Type key or key combination • Use special notation–^ for CTRL–+ for Shift

• Uses subset of SendKeys command–Built-in commands to send keystrokes to Access

databases• Save group as AutoKeys

Succeeding in Business with Microsoft Access 2010 30

Examples of Key Combinations for the Autokeys Macro Group

Succeeding in Business with Microsoft Access 2010 31

Creating the Navigation Form to run macros using Command buttons

• Add Command button to a form– Click button to run a macro– Makes database actions easier for users

• Click the Button button in the Controls group• Click in from where button is to be placed– Command button wizard starts• Select category and then action to be completed

– Repeat until all need buttons are on form– Save form

Succeeding in Business with Microsoft Access 2010 32

Specifying Conditions and Events for Macros

• Specify conditions for performing macro actions • Assign macro to control• Event-driven programming– Running macro when user interacts with object

• Event – State, condition, or occurrence that Access recognizes

• Event property– Specifies how object responds when event occurs

Succeeding in Business with Microsoft Access 2010 33

Specifying Where Conditions in a Macro

• Where condition argument• Refer to controls on form that are not

currently active– Use control’s complete name– Format• [Forms]![formName]![controlName]

Succeeding in Business with Microsoft Access 2010 34

Troubleshooting Macros

• Macros containing arguments– Especially error prone

• Error types– Syntax error– Logic error– Run-time error

• Troubleshooting tools– Single step through execution of macro, using debug window– Print macro code– Use Visual Basic Editor

Succeeding in Business with Microsoft Access 2010 35

Printing Macros

• Open Documenter dialog box – Click macros tab– Select macro by clicking its check box– Click options button to select details of macro to

print• Properties• Actions• Arguments• Permissions

Succeeding in Business with Microsoft Access 2010 36

Single Stepping a Macro

• Runs macro one action at time – Pausing between actions

• Make sure actions appear in correct order and with correct arguments

• Use Single Step button– Macro Single Step dialog box– Buttons• Step• Stop All Macros• Continue

Succeeding in Business with Microsoft Access 2010 37

Setting Breakpoints

• Breakpoint– Code inserted in macro– Signals where to stop macro

• Examine values of actions, controls, and arguments macro using

• Open macro in the Microsoft Visual Basic for Applications window– Shows macro as it appears in VBA code– Examine details of macro code in VBA window

Succeeding in Business with Microsoft Access 2010 38

Setting Breakpoints

• Immediate pane– Displays current value of controls and arguments– Display using ? operator

Succeeding in Business with Microsoft Access 2010 39

Level 2 Summary

• Macro group• Conditions for macros• Assign macro to buttons• Debug macros

Succeeding in Business with Microsoft Access 2010 40

Level 3 Objectives:Macro Conditions

• Assign a macro to an object event• Run a macro when a form opens or a report

prints• Use a macro to validate data

Succeeding in Business with Microsoft Access 2010 41

Exploring Macro Conditions

• Macro conditions – Logical expressions that result in true or false answer– Depending on outcome

• Macro can perform one set of actions or another

• Enter macro conditions – Open macro in macro builder

• Drag the program flow action to macro builder– Set condition to test

• If condition true – Access performs SetValue action

Succeeding in Business with Microsoft Access 2010 42

Exploring Macro Conditions

• Add Else If condition to perform actions if False– Provides alternate action to perform

Succeeding in Business with Microsoft Access 2010 43

Assigning a Macro to an Object Event

• Assign macro to object – By specifying macro name in event property of

object• Event categories– Report– Section

Succeeding in Business with Microsoft Access 2010 44

Report Events and Section Events

Succeeding in Business with Microsoft Access 2010 45

Using Message Boxes with Forms

• Form events can also trigger macros• Use to – Validate data – Set values – Navigate between forms– Filter, find, and print records

Succeeding in Business with Microsoft Access 2010 46

Form Events

Succeeding in Business with Microsoft Access 2010 47

Using Message Boxes with Forms

• MsgBox command– Opens message box – Displays warning or informational message– MsgBox ("message" sum of button and icon values "title")

– Returns value depending on which button clicked– Create condition that checks to see which button

users click

Succeeding in Business with Microsoft Access 2010 48

Using Message Boxes with Reports

• When conditions in macro references name of control from source – Source must be open when condition tested– Can hide window while macro tests condition

• MsgBox action– Opens message box and displays warning or

informational message– Similar to using MsgBox command

Succeeding in Business with Microsoft Access 2010 49

Using Message Boxes with Reports (continued)

• MsgBox action arguments – Message – Beep – Type– Title

Succeeding in Business with Microsoft Access 2010 50

Validating Data with Macros

• Validation field properties have limits• Validate data using more than one rule and more

than one validation message– Create macro

• Domain aggregate functions– Calculate statistics for set of records (recordset) or

domain, from table or query• Dcount function– Dcount(expression, table or query, condition)

Succeeding in Business with Microsoft Access 2010 51

Common Domain Aggregate Functions

Succeeding in Business with Microsoft Access 2010 52

Level 3 Summary

• Conditional expressions in macros• Assign macros to events• Message boxes– Msgbox command– Msgbox action

• Validate data with macros

Succeeding in Business with Microsoft Access 2010 53

Chapter Summary

• Navigation Form– Provides main menu for Access application

• Macro – Automates repetitive tasks– Can use conditional expressions– Associate with command buttons or other controls

• Debugging– Find errors in macros by stepping though each

statement

Succeeding in Business with Microsoft Access 2010 54