[Last Call] Learn how to a build a cloud-first strategyRegister Now

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1456
  • Last Modified:

Msflxgrd.ocx + Access 2003

We have an Access 2003 database which uses a number of different ActiveX controls including msflxgrd.ocx. When trying to access the form with the flex grid control we get the following message:
“The expression On Click you entered as the event property setting produced the following error: Object doesn’t support this property or method.”
I have unregistered and registered the control successfully several times. I have also unreferenced and referenced the control in Access 2003 several times. I can perform these actions with no problem and the ActiveX control shows up in the ‘References’ section of Access.  We have tried both versions of msflxgrd.ocx , version 6.0.81.69 and version 6.1.98.11.
The system in which we are developing the application on has no problems with the flex grid but when the application gets put on other systems it does not work. By put on other systems I mean an .mde is created on the developers system and then copied to other systems. We have two other systems out of about 50 that the flex grid works on and we are not sure why.
I know that mslfxgrd.ocx is not supported in Access 2003 and that’s not the answer I am looking for here. There’s no way that people are just no longer using msflexgrd.ocx with Access 2003, there has to be a work around. I am also aware that Microsoft Update KB960715 blocks the flex grid. This update is not installed on any of our systems.  Any suggestions you have with help, we need this to work.
0
kpurchase
Asked:
kpurchase
  • 2
1 Solution
 
Jim Dettman (Microsoft MVP/ EE MVE)PresidentCommented:
<<By put on other systems I mean an .mde is created on the developers system and then copied to other systems. We have two other systems out of about 50 that the flex grid works on and we are not sure why. >>
In short, your problem is references, which are broken.  Whether a MDB or MDE, when you move to another system, all the reference needs to be exactly the same; same location, version, etc.  If they are not exactly identical, the reference breaks and the app doesn't work.
Most developers deploying custom controls use Sagekey scripts to avoid the issues.
<<I know that mslfxgrd.ocx is not supported in Access 2003 and that’s not the answer I am looking for here. There’s no way that people are just no longer using msflexgrd.ocx with Access 2003, there has to be a work around. >>
FWIW, I don't use any 3rd party controls with Access for this very reason.  Access's implementation of the IDispatch inteface is lacking and there are just too many controls that don't work properly with it.  That issue is actually a separate one from the one you have (a broken reference), but between the two, it makes using any type of third party control difficult.
As a suggestion, you can try placing the .ocx in the same directory as the DB and referencing/registering it there and see if that solves the issue.
Outside of that, the only sure fix is a runtime install with the Sage Key scripts.
JimD.
0
 
Rey Obrero (Capricorn1)Commented:
< By put on other systems I mean an .mde is created on the developers system and then copied to other systems.>

have you tried using a .mdb version on the machines that are raising the error?

with a .mdb, you can open the VBA window and inspect the References to find out if the reference is not MISSING.

0
 
kpurchaseAuthor Commented:
Registering and referencing the ActiveX control in the same folder as the database worked! Nice job JDettman.
0
 
kpurchaseAuthor Commented:
Good answer.
0

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now