[AccessD] Error 3070 - field not recognized

Jim Lawrence accessd at shaw.ca
Tue Oct 12 23:49:43 CDT 2010


Hi Rocky:

That would have been nearly my last guess... it must be that when all
possible logical solutions have been exhausted the only option left, no
matter how implausible must be the answer. (Doyle could not have said it
better) 

All I can say is welcome to the strange world of MS Access where the laws of
the universe and logic do not necessarily apply.

Jim



-----Original Message-----
From: accessd-bounces at databaseadvisors.com
[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin
Sent: Tuesday, October 12, 2010 9:15 PM
To: 'Access Developers discussion and problem solving'
Subject: Re: [AccessD] Error 3070 - field not recognized

No - I always prefix field names with fld and never use them for anything
else.  Nope - deleting the field form the table and re-entering it solved
the problem.  God knows why.  I'm thinking rift in the temporal matrix. Some
kind of quantum effect.  Or a poltergeist.

R

-----Original Message-----
From: accessd-bounces at databaseadvisors.com
[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Jim Lawrence
Sent: Tuesday, October 12, 2010 7:53 PM
To: 'Access Developers discussion and problem solving'
Subject: Re: [AccessD] Error 3070 - field not recognized

Hi Rocky:

One quick thought. You would not have added a 'caption name' so the field
name displays differently or made a calculation, lookup or query field, that
you are trying to access in the subform? If so, that could be problems.

Jim

 

-----Original Message-----
From: accessd-bounces at databaseadvisors.com
[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin
Sent: Tuesday, October 12, 2010 6:00 PM
To: 'Access Developers discussion and problem solving'
Subject: Re: [AccessD] Error 3070 - field not recognized

Jim:

cboLotSerialReferences is displaying a value.  

After the Set rs MsgBox rs.RecorCount displays 7
 
However...

MsgBox "First record field value = " &
rs.Fields("fldLotSerialReference").Value & ""

Errors 3265 - Item not found in this collection

So I added:

Dim fld As Field
For Each fld In rs.Fields
    MsgBox fld.Name
Next fld

And watched as each field name in the bound table tblLotSerial came up in
sequence, among them was fldLotSerialReference.

Strange, huh?

It's fldLotSerialReference that's the problem - something strange there. 

I wonder what would happen if I deleted the field from the table and
recreated it? 

Well what do you know - that fixed it!  I wonder if there was some kind of
hidden character in there? Anyway thanks for hanging in there with me.  That
was an odd problem.



R

-----Original Message-----
From: accessd-bounces at databaseadvisors.com
[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Jim Lawrence
Sent: Tuesday, October 12, 2010 3:55 PM
To: 'Access Developers discussion and problem solving'
Subject: Re: [AccessD] Error 3070 - field not recognized

Hi Rocky:

More obvious stuff: So the following code; 

MsgBox "Lot Combo selection = " & Me.cboLotSerialReferences.Column(0) 

...is displaying a value.
 
Assuming then that the value returned from the Lot combo box is correct and
the search field is correct then how many rows/fields are being placed in
the recordset 'Me.subfrmLotSerial.Form.RecordsetClone'? (...rs.RecordCount)
with something like:

With rs
	.movelast
	.movefirst
	MsgBox "records = " & .RecordCount
End With

...and one final check, assuming that the record count has a value greater
than zero check to see whether the field actually exists.

MsgBox "First record field value = " &
rs.fields("fldLotSerialReference").value & ""

I am sure you have already checked this but decided to ask the obvious
questions anyway. ;-)

Jim


-----Original Message-----
From: accessd-bounces at databaseadvisors.com
[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin
Sent: Tuesday, October 12, 2010 1:10 PM
To: 'Access Developers discussion and problem solving'
Subject: Re: [AccessD] Error 3070 - field not recognized

LotSerial combo has only one column.  I put a MsgBox in to display strSQL
and it looks right.  It's the field fldLotSerialReference that it's having a
problem with.  strSQL reads fldLotSerialReference = 'xxx' after a selection
is made from the combo box.

The nearly identical code for the part number works just fine.  That's
what's so baffling.

R


-----Original Message-----
From: accessd-bounces at databaseadvisors.com
[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Jim Lawrence
Sent: Tuesday, October 12, 2010 12:40 PM
To: 'Access Developers discussion and problem solving'
Subject: Re: [AccessD] Error 3070 - field not recognized

Hi Rocky:

The obvious question would be whether the 'lot' combo is returning a
value...right column?...or if it is a number field for lot number; have you
set it to a string and then TRIMMED of extra spaces?

Jim



-----Original Message-----
From: accessd-bounces at databaseadvisors.com
[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin
Sent: Tuesday, October 12, 2010 11:38 AM
To: 'Access Developers discussion and problem solving'
Subject: Re: [AccessD] Error 3070 - field not recognized

OK per a snip I saw on the web I changed the routine to use rs dimmed as a
DAO.Recordset.  There are two combo boxes the user can use to find a record
- one for a part number, one for a lot number.  The part number one works,
lot number one fails:

Private Sub cboLotSerialReferences_AfterUpdate()

strSQL = "fldLotSerialReference = '" _
        & Me.cboLotSerialReferences.Column(0) & "'"

Set rs = Me.subfrmLotSerial.Form.RecordsetClone

rs.FindFirst strSQL
Me.subfrmLotSerial.Form.Bookmark = rs.Bookmark

End Sub

Private Sub cboPart_AfterUpdate()

strSQL = "fldLotSerialPartNumber= '" _
        & Me.cboPart.Column(0) & "'"

Set rs = Me.subfrmLotSerial.Form.RecordsetClone

rs.FindFirst strSQL
Me.subfrmLotSerial.Form.Bookmark = rs.Bookmark

End Sub


Rocky
 

-----Original Message-----
From: accessd-bounces at databaseadvisors.com
[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin
Sent: Tuesday, October 12, 2010 10:47 AM
To: 'Access Developers discussion and problem solving'
Subject: [AccessD] Error 3070 - field not recognized

Dear List:

This has got to be something simple that I'm just not seeing because I've
used this technique for years with no problem.  But I'm stumped.

User selects a value from a combo box (in this case a lot number) and I use
.FindFirst and .Bookmark to set the record selector to the selected record
on a continuous form.  The combo box is on the main form, continuous form is
a sub form.  (BTW I tried putting the combo right on the subform but had the
same problem.)

Here's the code:

Private Sub cboLotSerialReferences_AfterUpdate()

Dim strSQL As String

strSQL = "fldLotSerialReference = '" _
        & Me.cboLotSerialReferences.Column(0) & "'"

MsgBox strSQL
        
Me.subfrmLotSerial.Form.RecordsetClone.FindFirst strSQL Me.Bookmark =
Me.RecordsetClone.Bookmark

End Sub


where fldLotSerial is a bound field on the subform.  The MsgBox shows
fldLotSerialReference = 'aaa'.  On the .FindFirst statement I get error 3070
- Microsoft Jet database engine does not recognize 'fldLotSerialReference'
as a valid field name or expression.

Any clues?

 

MTIA

 

Rocky Smolin

Beach Access Software

858-259-4334

Skype: rocky.smolin

www.e-z-mrp.com <http://www.e-z-mrp.com/> 

www.bchacc.com <http://www.bchacc.com/> 

 

 


--
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

--
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

--
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

-- 
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