1. да, как-то так и должно быть
2. с событиями действительно можно так сделать - всего-то и надо добавить эмулятор хаба при генерации кода. Но с data точками такое прокатить не может - данные должны считываться только с одного конкретного экземпляра, а не со всех ссылок сразу. Т.е. грубо говоря перед вызовом метода нужно все поля _data_XXX переназначить на нужные var точки:
#pas
...
Element1._data_Data1 := FirstElement._var_Var1;
Element1._data_Data2 := FirstElement._var_Var2;
Element1._work_doWork();
...
Element1._data_Data1 := SecondElement._var_Var1;
Element1._data_Data2 := SecondElement._var_Var2;
Element1._work_doWork();
------------ Дoбавленo в 13.04:
да еще получается, что после вызова метода нужно восстанавливать значения _data_ полей на исходные, иначе схемы могут не верно работать...