on vba, ODRecord.AttachTo(plineobj.ObjectID32) doenst work. plineobj.ObjectID32 is i.e. 47, I think thats not correct. I think, the thisdrawing.Utility.ObjectId32ToObjectIdString gets the right ID. But how can I use this ID with AttachTo ?
AutoCad Map 3D 2013, Windows 7, both 64 bit
Could you try using ODRecord.AttachTo(plineobj.ObjectID) instead ?
Does it help ?
I don't have VBA installed right now on my Map 3D 2013 64 bit version. You can download the correct version from the link below -
In the past I have seen some issues in using VBA on 64 bit Map 3D running on 64 bit OS and at times you might see inconsistent behavior. If you have any chance to migrate to VB.NET instead, I would suggest you to consider the same.
And the following might be useful info to you :
I also tried with my Acad Map 2012 64-bit. No, it did not work. That means, for 64-bit Acad Map, the Map COM API (contained in AcMapVbApi.dll/tlb) is broken and useless, at least in terms of ObjectData related APIs (Has Autodesk ever mentioned that Acad Map COM API would be broken in 64-bit, other than generally claiming VBA would be problematic in 64-bit Acad?).
Hi, having the same issue with the line:
Can do everything else (read object data, attach databases, even digitize new blocks) but can't attach object data with VBA.
This is an old project and don't have the time to migrate to .NET yet, but may have to if this doesn't get sorted.
Well, with 64-bit VBA being built into AutoCAD 2014, we may be able to hold our breath to see if this will be back to work again when AutoCAD Map 2014 comes out in next a few days (or weeks)?
This VBA Object Data connect bug was a bit of a show-stopper in my project.
I have already started moving over to .NET and the cumbersome BlockTableRecord and DatabaseServices API that is found in there...yuck.
>> I don't have VBA installed right now on my Map 3D 2013 64 bit version
It's not a question of VBA, it's a defect signature in the AttachTo function (in COM-API) which wants a Integer as parameter for ObjectID.
Entity.ObjectID returns a LONG value
attachTo function needs a INTEGER value
...and you can't use the Entity.ObjectID32 workaround as this returns invalid numbers
All tested now with Map3D 2014 German 64bit
- alfred -