Home  Fees/Services  Microsoft Access Templates  Tutorials  Tutorial Download  Articles  Search  Contact  Privacy  Links
Visual Basic Child-Parent Update Query
Detail Master Update Query in Visual Basic
Detail Master Update Query in Visual Basic  
 




Detail - Master Query in Visual Basic

Set status fields of master record based on characteristic of detail records

In this visual basic example let us assume we have two tables in a master/detail relationship. The main table contains Tasks which much be completed.  The detail table contains one or more Action Items for each task. The two tables are linked by Task_ID.  All Action Items must be completed before the Task is complete.  We want to mark the task as done when all the action items have been completed.
We have a visual basic AfterUpdate trigger associated with the Completed field in the Action Items form.  Here is the code to update the master table (Tasks) when all items are completed for the task.

Private Sub Action_Complete_AfterUpdate()

    If Me.Action_Complete=true then

        DoCmd.RunSQL ("Update Tasks set Task_Complete=True " & _
        " Where Tasks.Task_ID in " & _
        " (Select Task_ID from Action_Items where Task_ID=" & Me.Task_ID & _
        " Having Max(Action_Items.Action_Completed)=-1 " & _
        " Group By Task_ID)")

    Else

        DoCmd.RunSql ("Update Tasks set Task_Complete=False " & _
        " where Task_ID=" & Me.Task_ID)

    End If

End Sub

Ok... this is more of an SQL example than a visual basic example.  But this is a perfect example of creating a very simple solution to a potentially very complicated task.   The key to creating highly maintainable Access databases is to have a consultant who knows both SQL programming and visual basic programming.

Here is the trick to this query... If all the Action_Completed Yes/No fields are true (-1) then the Max of them will be -1.  If any are not true (0) then the Max will be 0.

You should have indexes on all table fields mentioned in the SQL statement.









A Blue Claw Database Design Article:

ODBC Links To Other DB Systems
 





Blue Claw Database Design Downloadable Tutorial:
Bar Chart / Bar Graph Download  





A Blue Claw Database Design Template:

Order Processing Case Study
 





Contact Information

Copyright 2000-2012 Blue Claw Database Design, LLC

VBA Tutorials:
VBA Access-Google Earth
VBA Age Calculation
VBA Change Case
VBA Email via Gmail
VBA Outlook Email
VBA Read Email Access
VBA Email Attachment
VBA Send Outlook Email
VBA Running Sum
VBA Concatenate Records
VBA Stock Quotes
VBA CreateQueryDef
VBA Find Database Path
VBA Detail-Master Update
VBA Data Validation
VBA Field Value New-Old
VBA FindFirst
VBA Access Version
VBA Global Variable Parameter
VBA Global Variables
VBA Active Labels
VBA Files List Box
VBA Mail Merge
VBA Quick Sort
VBA Recordset Filters
VBA Reference Form Field
VBA Select Case
VBA Access Transactions


Visual Basic Function Examples