Показать сообщение отдельно
Старый 10.07.2019, 17:06   #1  
mikki_messer is offline
mikki_messer
Участник
 
91 / 20 (1) +++
Регистрация: 20.04.2010
Адрес: Ростов-на-Дону
Передача таблицы TempDB по маршруту класс1-форма-класс2, как правильно?
Здравствуйте. Столкнулся с такой задачей: есть форма, на которой выводятся данные из нескольких временных таблиц TempDB. Таблицы эти заполняются в классе myClass1 и передаются на форму через методы myClass1.parmTempDB() и через linkPhysicalTableInstance связываются с соответствующими датасурсами. Всё работает.

Теперь нужно данные из формы вывести на печать. Соответственно, как это правильно сделать? Я создаю класс myClass2 для печати, вешаю menuItem для его вызова на форму и через через args передаю в myClass2 экземпляр myClass1, а в ините myClass2 получаю через методы myClass1.parmTempDB(). Но в этом случае linkPhysicalTableInstance не работает, выдаётся сообщение "Невозможно выполнить требуемую операцию с базой данных. Метод применим только к переменным таблицы TempDB, не связанным с существующим физическим экземпляром таблицы". Но если в init myClass2 написать

X++:
myTempDB1 = caller.parmMyTempDB1();
всё работает. Вопрос, насколько допустимо и правильно передавать таким образом tempDB-таблицы?

Или может быть, мне вообще надо получать в myClass2 временные таблицы не из исходного класса myClass1, а с формы?

Подскажите, пожалуйста, как правильно?

2012 R3