• You can create a wrapper function in the non-current database like so:

    create function ObjectProperty(@objId int, @property varchar(20)) returns int as begin

    --Because ObjectProperty runs in the context of the current DB, we need a wrapper function in the DB we want it to run in the context of.

    return objectproperty(@objId, @property)

    end

    Then, instead of calling ObjectProperty(...), call dbname.dbo.ObjectProperty(...).

    This should work.