[AccessD] Broken Reference

MartyConnelly martyconnelly at shaw.ca
Mon Aug 7 13:20:18 CDT 2006


If you are setting it, you must be returning an object rather than a 
variant.
Set a reference to bartender and look at the values in the Object Browser
libary for Bartender to see what they should be set to.

Rocky Smolin - Beach Access Software wrote:

>Marty:
>
>I deleted the Reference to Bartender and changed the declarations to:
>
>Public BtApp As Object 'BarTender.Application
>Public BtFormat As Variant 'BarTender.Format
>
>In the load event I put:
>
>Set BtApp = CreateObject("BarTender.Application")
>In the Print event however, on the line
>
>Set BtFormat = BtApp.Formats.Open(Me.fldFABLabelFile)
>
>I get an 'argument not optional' error.  With the old declarations it 
>worked.  Any idea what's going wrong?
>
>Thanks and regards,
>
>Rocky
>
>
>MartyConnelly wrote:
>  
>
>>You are mixing Early and Late Binding methods
>>First remove the reference
>>Then just change your declarations to things like
>>
>>Public BtApp As Object 'BarTender.Application
>>Public BtFormat As String 'BarTender.Format
>>
>>
>>If you are unsure of the type returned  try using  a variant
>>especially in the case of returned arrays.
>>
>>or leave both types in and do a conditional compile around them
>>
>>#Const DebugVersion = 0
>>
>>#if DebugVersion = 1 then
>>    Dim wa as  BarTender.Application
>>    Set wa = new BarTender.Application
>>#else
>>    Dim wa as Object
>>    set wa = createobject ("BarTender.Application")
>>#endif
>>You'l have to set the flag to 1
>>    (#Const DebugVersion = 1)
>>and then add a reference to Bartender
>>for the debug intellisence to work..
>>
>>Then to check if Bartender is actually installed  on the machine
>>
>>  On Error Resume Next
>>Set objExcelapp = CreateObject("BarTender.Application")
>>If Err.Number Then
>>     MsgBox "Bartender not installed or not registered for Automation"
>>     Exit Sub
>>  End If
>>'reset error
>>
>>
>>
>>
>>Rocky Smolin - Beach Access Software wrote:
>>
>>  
>>    
>>
>>>Dear List:
>>>
>>>I have a client who prints bar coded labels through an application 
>>>called Bartender (cute, huh?).  I wrote a production management system 
>>>for them which contains all the information in the db that they are 
>>>inputting manually into Bartender.  So the client asked me to add a 
>>>function to the app to run Bartender from the production system and that 
>>>is working great. 
>>>
>>>To do this I downloaded and installed the trial version of Bartender and 
>>>so was able to set a reference to it in the VBA code so I could run 
>>>Bartender from the client's app (stuff like Public BtApp As 
>>>BarTender.Application and Public BtFormat As BarTender.Format and Set 
>>>BtApp = CreateObject("BarTender.Application")).
>>>
>>>Problem is that the app won't run on any machine which doesn't have 
>>>Bartender loaded - it gets a broken reference error when the app opens.
>>>
>>>So I'm wondering how to handle this.  Perhaps I unset the reference in 
>>>the Tools-->References and set it when the bar code form opens?  Or is 
>>>there a way to trap and get around this error when the app loads?
>>>
>>>What's the best way to handle this?
>>>
>>>MTIA,
>>>
>>>Rocky
>>>
>>> 
>>>
>>>    
>>>      
>>>
>>  
>>    
>>
>
>  
>

-- 
Marty Connelly
Victoria, B.C.
Canada




More information about the AccessD mailing list