Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Adding New Records In A Grid
Message
From
01/07/1998 22:07:17
 
 
To
30/06/1998 22:13:00
General information
Forum:
Visual FoxPro
Category:
Forms & Form designer
Miscellaneous
Thread ID:
00113051
Message ID:
00113650
Views:
19
>>>nKeyCode = InKey()
>>>If nKeyCode = 24
>>> Insert Into GridTable(parent_id, otherparent_id) Values (Parent.parent_id, OtherParent.otherparent_id)
>>> ThisForm.Refresh
>>>EndIf
>>>
>>
>>Try putting a NODEFAULT() before the EndIf
>>and then going to the record.
>
>Okay, I added the "NODEFAULT" and it seemed to work
>to an extent, i.e. it added the correct parent_id number,
>but it also added an incorrect otherparent_id! But this
>is progress. I didn't quite understand what you meant
>when you said "and then going to the record." Please
>explain further. TIA --lincoln

What seems to be happening is that you are inserting two records,
one during the above code and one doing the grid's AllowAddNew
event. Turn off the grid's AllowAddNew event since your program
is personally handling the insert ( AllowAddNew=.f.).

If the application is a single user application, all you do
is have to issue a

SELECT childalias
GO BOTTOM
this.parent.gridname.refresh && Your in the ADD button
to get to the last record
(your inserted record).

If the child table has a primary key, substitute the
GO BOTTOM with a LOCATE FOR childkey=m.hcildkeyIncrement.

If the child table doesn't have a primary key, you've got
code that's a little more messy. Every one of my tables
always has a primary key (single fields only) to identify
every record. It makes life wonderfully uneventful. [g]
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform