Если у главного устройства могут быть дочерние устройства, нужно
Создать класс, унаследованный от класса TChildDeviceInterface
Сгенерировать идентификатора типа дочернего устройства.
Например, в Delphi нажать комбинацию клавиш Ctrl-Shift-G.
В классе главного устройство перекрыть метод ChildClassByModuleInterface
Из перекрытого метода нужно вернуть нужный класс дочернего устройства в зависимости от идентификатора типа дочернего устройства, переданного в метод
В карточке редактирования программного модуля дочернего устройства в поле Интерфейс нужно указать созданный идентификатор типа дочернего устройства.
А в разделе Подключающие модули той же карточки указать программный модуль главного устройства.
Пример.
interface type TFiscalMainDeviceInterface = class(TssSomeMainDeviceInterface) // Некоторый код пропущен protected function ChildClassByModuleInterface(ModuleInterface: TModuleInterface): TChildDeviceInterfaceClass; override; // Некоторый код пропущен end; implementation function TFiscalMainDeviceInterface.ChildClassByModuleInterface(ModuleInterface: TModuleInterface): TChildDeviceInterfaceClass; const MODULE_INTERFACE_CHILD: TGUID = '4E22E5C2-F4FE-4706-95D7-1E1872450D77'; begin if SameGUID(ModuleInterface, CHILD_DEVICE_ChildFiscal_ModuleInterface) then Result := TChildFiscalDeviceInterface else Result := inherited; end;