[AccessD] Resume command problem

Kaup, Chester Chester_Kaup at kindermorgan.com
Tue Sep 25 10:02:42 CDT 2007


I thought it was bound to a date field by setting the default value to a
date/time field in a table with the following default value statement.
Although I have been known to be wrong.
=DMin("[ProductionDate]","tbl One Manifold Production for a Time
Period")

I changed the order of the statements in the if then else block to check
for the null condition first. I also added CVDate to the date
comparison. Everything seems to work correctly now.

Thanks everyone.

-----Original Message-----
From: accessd-bounces at databaseadvisors.com
[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of
max.wanadoo at gmail.com
Sent: Tuesday, September 25, 2007 9:19 AM
To: 'Access Developers discussion and problem solving'
Subject: Re: [AccessD] Resume command problem

The code assumed that your control was bound to a DATE Field, not a TEXT
Field.
REgards
Max
 

-----Original Message-----
From: accessd-bounces at databaseadvisors.com
[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock
Sent: Tuesday, September 25, 2007 3:09 PM
To: accessd at databaseadvisors.com
Subject: Re: [AccessD] Resume command problem

Hi Chester

You may try to replace CDate() with CVDate().

/gustav

>>> Chester_Kaup at kindermorgan.com 25-09-2007 15:52 >>>
Thanks everyone for your coding ideas. It almost works. The problem is
this.
If the user does not enter a date it loops through the null error check
just
fine. However when the user enters a valid date it displays the message
that
the start date is after the end date when it is not. A check of the code
reveals that after a null check the next time a date is entered the code
thinks the date is text (puts quotes around it). I tried a cdate on the
start date but of course that doesn't work if it is null. Ideas?

-----Original Message-----
From: accessd-bounces at databaseadvisors.com
[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gmail
Sent: Friday, September 21, 2007 2:20 AM
To: 'Access Developers discussion and problem solving'
Subject: Re: [AccessD] Resume command problem


I would change your code to:

Private Sub StartDate_Exit(Cancel As Integer)
    If Forms![frm Manifold Chart]!StartDate > Forms![frm Manifold
Chart]!EndDate Then
      MsgBox "Invalid Date. Start date must be before end date"
	cancel = true
    End If
End Sub

Also if "frm Manifold Chart" is your current form where this code exists
(and I suspect it is) then change it to

Private Sub StartDate_Exit(Cancel As Integer)
    If Me!StartDate > Me!EndDate Then
     MsgBox "Invalid Date. Start date must be before end date"
	cancel = true
    End If
End Sub

But, presumably your user will enter the Startdate before the Enddate.
I
would put some code in the OnCurrent:

me!EndDate.enabled = not isnull(me!StartDate) 

HERE IS AN EXAMPLE of the whole thing:

Option Compare Database
Option Explicit

Private Sub Form_Current()
  Me!EndDate.Enabled = Not IsNull(Me!StartDate)
End Sub

Private Sub StartDate_Exit(Cancel As Integer)
  If Me!StartDate > Me!EndDate Then
    MsgBox "Invalid Date. Start date must be before end date"
    Cancel = True
  ElseIf IsNull(Me!StartDate) Then
    MsgBox "You must enter a start date"
    Cancel = True
  Else
    Me!EndDate.Enabled = True
    Me!EndDate.SetFocus
  End If
End Sub
Private Sub EndDate_Exit(Cancel As Integer)
  If Me!EndDate < Me!StartDate Then
    MsgBox "Your End Date cannot be before the Start Date"
    Cancel = True
  ElseIf IsNull(Me!EndDate) Then
    MsgBox "You must enter an End Date"
    Cancel = True
  End If
End Sub

Max


-- 
AccessD mailing list
AccessD at databaseadvisors.com
http://databaseadvisors.com/mailman/listinfo/accessd
Website: http://www.databaseadvisors.com

-- 
AccessD mailing list
AccessD at databaseadvisors.com
http://databaseadvisors.com/mailman/listinfo/accessd
Website: http://www.databaseadvisors.com





More information about the AccessD mailing list