Link to home
Start Free TrialLog in
Avatar of JordanKingsley
JordanKingsley

asked on

stLinkCriteria

Hello all. This one will be simple to you guys but it's driving me totally nuts. I have a Clients Form that has a Command Button to open an Admissions Form. To filter the record being entered into the Admissions Form to be the same UniqueID as the current record in the Client Form I've added "  stLinkCriteria = "[UniqueID]=" & Me![UniqueID]" in the On Click event of the Command Button. The complete code is:

Private Sub Command134_Click()
On Error GoTo Err_Command134_Click

    Dim stDocName As String
    Dim stLinkCriteria As String

    stDocName = "Admissions"
     stLinkCriteria = "[UniqueID]=" & Me![UniqueID]
    DoCmd.OpenForm stDocName, , , stLinkCriteria

Exit_Command134_Click:
    Exit Sub

Err_Command134_Click:
    MsgBox Err.Description
    Resume Exit_Command134_Click
   
End Sub

Simple right? Then in the Default Value property of the UniqueID field on the Admissions Form I've added
"=[Forms]![Clients]![UniqueID]". My problem is that when I click the button to open the Admissions Form I get a message box prompting me to "Enter Parameter Value" and the correct UniqueID is showing. I've done this a hundred times and have never had this stupid message box appear. How do I get rid of this? Thanks, Jordan.
Avatar of Emanon_Consulting
Emanon_Consulting

You should only need the stLinkCriteria to link the forms.

You should be able to delete the "=[Forms]![Clients]![UniqueID]".   I don't think you need this and it may be what is giving you the error.

Cheers
M
Avatar of JordanKingsley

ASKER

Regardless of if it's there or not I'm getting that prompt. I have 5 other applications set up the exact same way and none of them give the message box.
I'll ask some others to have a look...

Cheers
M
thanks M
Avatar of Steve Bink
First issue I see is the possibility that Me![UniqueID] is NULL.  Even if it should never be NULL, it's always a good idea to check for it.  Users are notoriously ingenious in finding ways to do things they "can't" do.  :)

' The -1 value is just arbitrary...you can make it whatever you want.
stLinkCriteria = "[UniqueID]=" & NZ(Me![UniqueID],-1)

I also agree with Emanon that you should remove the default value assignment from the [UniqueID] control on the Admissions form.  By setting the link criteria, you are effectively telling the Admissions form that no other [UniqueID] value should be available.

For troubleshooting, I suggest putting a breakpoint in the OnLoad event of the Admissions form, or in the OnClick event for the command button on the main form.  This way you can check the value of stLinkCriteria during execution to verify its validity.  Also, your code assumes that [UniqueID] is a numeric value.  Finally, please detail the title bar and text on the prompt you receive.  It will tell us what parameter it thinks it needs, and may provide a clue as to the source of the error.
DOH!  If you have any code in the OnLoad event of the Admissions form, please post that as well.
Thanks for looking at this routinet. The UniqueID isn't null. The way this is filtered from Clients to Admissions there shouldn't be any other UniqueID available except the one showing on the Clients Form when the Admissions Form is opened. What you said about the code assuming that the UniqueID is a numeric may be the problem. The UniqueID is a generated field that is a text. It contains first letter of the last name and first letter of the first name. In the past I have used text fields in this manner but they've only contained numbers. An example of a UniqueID is "M04N61225". The exact prompt that I get (if that exact UniqueID was showing is):

 Enter Parameter Value (Blue part of msgbox)

 M04N61225 (Right above text box)

 
 When I click ok it's at that exact UniqueID anyway. You probably have a good idea of what I'm doing wrong now. Thanks
PS there is no on load event for the Admissions form. The command button is the only source.
I'm getting the impression that the error is in another control on the triggered form.
Did you try to open the form "stand alone" and do you get the message box then too ?

When it's a simple form just create a new one and try again, otherwise you'll have to dig into the combo's and other controls that are "data related" by using a query.

Nic;o)
Hello Nic;0), the message doesn't come up when I open it by it'self. I'll do another form then. I think what routinet said about the code assuming it's a numeric could be the cause.
ASKER CERTIFIED SOLUTION
Avatar of Steve Bink
Steve Bink
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Routinet? You totally RULE !!!! That was exactly it. Thank you so much !!!!!
Hey Folks

I just got out of my meeting...

>>JordanKingsley - Sorry to have started and then have to leave ya hanging.  Work gets in the way of my free time once in a while!

>> routinet - Thanks a bunch coming to help!

Cheers
Michael
I live to serve.  <smirk>