Gustav Brock
Gustav at cactus.dk
Wed May 4 12:53:13 CDT 2005
Hi Penn
Don't set the Value but - at the OnCurrent event when the ID is not
Null - the DefaultValue of those fields.
Then nothing is edited until the user types in something. After that
point pressing Escape is needed to cancel the new record.
/gustav
>>> penn227 at yahoo.com 05/04 7:40 pm >>>
Karen,
Thank you for the suggestion. That would be fine if I
wanted to add a new
record. The problem really arises when I'm
accidentally in a new record (I
hit the * button in the record selector) but don't
really want to add a new
record. If I attempt to move from that 'new empty'
record, I can't get out
of it. Delete Record doesn't work either because I'm
still in a 'new empty'
record after the delete.
Penn
----- Original Message -----
From: "Nicholson, Karen" <cyx5 at cdc.gov>
To: "Access Developers discussion and problem solving"
<accessd at databaseadvisors.com>
Sent: Wednesday, May 04, 2005 1:22 PM
Subject: RE: [AccessD] Fill in some fields in a new
record without
creatinganew record?
> Why don't you make the first statement something like:
>
> if isnull(me.person_id) then
> msgbox "You Must Select a Person",,"required entry"
> docmd.gotocontrol "person_id"
> exit sub
> end if
>
>
> -----Original Message-----
> From: accessd-bounces at databaseadvisors.com
> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Penn 227
> Sent: Wednesday, May 04, 2005 12:45 PM
> To: Access Developers discussion and problem solving
> Subject: [AccessD] Fill in some fields in a new record without
creating
> anew record?
>
> ACC03-WinXP Pro
>
> I'm at a loss with this problem and hope someone can help.
>
> I have a form in a 'members' database that allows entry of people
> (members, prospective members, guests, etc.) who have RSVP'd to an
> upcoming meeting.
> The Meeting info comes from tblMeetings (date, location, time, etc.)
and
> the person info comes from tblPeople.
>
> When a new record in frmRSVP is created, I would like to fill in some
of
> the fields in the new record (those that are starred below).
>
> The form consists of the following controls (not counting the
command
> buttons):
>
> ** ComboBox: MeetingID
> ** Text Box: MeetingDate
> ** Text Box: RSVPDue
> Option Group: ogShowRecords
> Option Button: optAll
> Option Button: optFuture
> Option Button: optPrevious
> Combo Box: PersonID
> Text Box: RSVPDate
> Text Box: Status
> Text Box: txtEmailAddress
> Text Box: Note
> Check Box: ReceiptConfSent
>
> The Form_Current sub looks like this:
>
> Private Sub Form_Current()
> Dim intNewRec As Integer
> Dim rsc As Recordset
> On Error GoTo Err_Form_Current
> intNewRec = Me.NewRecord
> If intNewRec Then
> Set rsc = Me.RecordsetClone
> Me.cboMeetingID = rsc!MeetingID
> Me.MeetingDate = DLookup("MeetingDate", "tblMeetings",
> "MeetingID="
> & rsc!MeetingID)
> Me.RSVPDue = DLookup("RSVPDue", "tblMeetings", "MeetingID=" &
> rsc!MeetingID)
> Set rsc = Nothing
> rsc.Clone
> If (Now() > Me.RSVPDue) Then
> Me.Late = True
> End If
> End If
> Me.PersonID.SetFocus
> Exit_Form_Current:
> Exit Sub
> Err_Form_Current:
> ErrorHandler...
> Resume Exit_Form_Current
> End Sub
>
> This works fine as long as there is actually someone selected in the
> PersonID control. However, if it is blank, I get an error "The
> Microsoft Jet database engine can't find a record in the table
> "tblPeople" with key matching field(s) 'PersonID'. and I am thrown
into
> an endless loop trying to get out of that record with the empty
PeopleID
> control.
>
> Any help appreciated.
>
> Penn