RE: Can't pass form to sub/function and...



Thanks for the second pair of eyes.

I found a known error with similar Recordset/RecordsetClone behavior in the
MS knowledge base ... but it referred to ACC2, not ACC2000/2002.

I'll work the login form some more and see if that doesn't change anything.


"Klatuu" wrote:

I don't see a problem with the code. In that the error is intermittent, my
guess is that it is related to the fact that you are using a connection to
Oracle.

I'm sorry, but I don't have any experience using Oracle, so I guess there is
not much else I can do.

"David Mueller" wrote:

Sure...

It's called from the OnCurrent event of a subform that is master/child
linked with a main form.

Private Sub Form_Current()
Set_GUI_Indicator Me, "Customer_ID"
End Sub



Public Function Set_GUI_Indicator(MyForm As Form, strCustomerIDField As
String) As Boolean
On Error GoTo Err_Set_GUI_Indicator

Dim ctlEstimated As Control

Dim rstEstData As DAO.Recordset
Dim rstEstDataOpen As Boolean
Dim strSubFormControlName As String

strSubFormControlName = DLookup("[Sub_Form_Control_Name]",
"[SETUP_MS_FORMS]", "FORM_NAME='" & MyForm.Name & "'")

Set rstEstData = MyForm.RecordsetClone
rstEstDataOpen = True
rstEstData.FindFirst strCustomerIDField & " = " &
Nz(Forms("Frm_main").Controls(strSubFormControlName).Form.Controls(strCustomerIDField).Value, "0")
.....

.... immediately after the set command the Watch window shows it as
invalid/not set. The .FindFirst is where it errs.


Other attempts include...
strRecordSourceSQL =
Forms("frm_main").Controls(strSubFormControlName).Form.RecordSource
Set rstEstData = CurrentDb.OpenRecordset(strRecordSourceSQL)

and ...
Set rstEstData =
Forms("frm_main").Controls(strSubFormControlName).Form.RecordsetClone


I hope y'all see something in this.


"Klatuu" wrote:

It would be helpful if we could see the code for the function and the code
where you call the function.

"David Mueller" wrote:


I'm passing a form object to a function.

Within the function, I create a new recordset object.

When I attempt to set the new recordset to the form's recordsetclone my new
recordset inconsistently errs. "invalid object/no longer set"

The inconsistency of the error seems to be directly related to a
not-so-obviously related user action (ODBC preconnect to Oracle). If the
user chooses to login to Oracle via my login form, I get the error. If the
user skips the Oracle login, no error.

I verified that I am cleaning up (closing objects/set to nothing) objects
related to the oracle login. I even renamed them all so there are no
similarly named objects.

Anyone have suggestions?

Thanks
.



Relevant Pages

  • RE: Cant pass form to sub/function and...
    ... I'm sorry, but I don't have any experience using Oracle, so I guess there is ... Set rstEstData = CurrentDb.OpenRecordset ... I create a new recordset object. ... user skips the Oracle login, ...
    (microsoft.public.access.modulesdaovba)
  • Upgrading from ADO 2.7 to ADO 2.81
    ... Recently I upgraded from ADO 2.7 to the latest. ... etc. rather than using .Net (which as better support for Oracle). ... Since installing MDAC 2.81, the recordset is not populated, and an error ... The oracle package returns a refcursor data type, and I know the package is ...
    (microsoft.public.data.ado)
  • Re: Oracle 10g and VB6 ADO
    ... applications which connect to our oracle 8 database. ... recordset, it seems to load the whole recordset into ... It shouldn't retrieve 50K records and cache them on the client. ... and then disconnect from SQLServer (thus freeing locks). ...
    (comp.databases.oracle.misc)
  • Re: Login problem of oracle DB
    ... > When I login to oracle database, a strange problem occurs, here comes the ... Create database, sid = TEST. ... > Copyright 2000 Oracle Corporation. ...
    (comp.databases.oracle.server)
  • Re: Oracle 8i compromise questions
    ... My knowledge of Oracle is limited, ... >a similar login attempt that failed roughly 10 minutes before this, ... >1) What is the most common attack method used for an Oracle database ... >assigning the log file and overwriting, but most of them seem to be ...
    (Incidents)