Проверить работу вшитой функции можно на любой конфигурации, в которой есть справочник "Номенклатура" (выполняется запрос с текстом ВЫБРАТЬ Номенклатура.Ссылка, Номенклатура.Наименование ИЗ Справочник.Номенклатура КАК Номенклатура ГДЕ Номенклатура.Ссылка В ИЕРАРХИИ(&ВыбГруппа)).
В публикации 2 варианта шаблона внешней компоненты - со страницей свойств и без нее. В последнем случае размер dll файла получается примерно на 300 кбт меньше.
При компиляции могут выдаваться ошибки
[C++ Error] atlcom.h(1877): E2352 Cannot create instance of abstract class 'CComObject<TAddInImpl>'
[C++ Error] atlcom.h(1877): E2353 Class 'CComObject<TAddInImpl>' is abstract because of '__stdcall ILanguageExtender::CallAsFunc(long,tagVARIANT *,tagSAFEARRAY * *) = 0'
[C++ Error] atlvcl.h(1271): E2451 Undefined symbol 'e'
Так как в библиотеке типов невозможно выбрать OleVariant*, а можно выбрать только VARIANT*, то необходимо каждый раз при появлении такой ошибки в файл проекта Template_Builder_TLB.h вносить вручную изменения в параметры функции CallAsFunc, заменяя VARIANT* на OleVariant* в трех местах этого файла.