Текущее время: Вс, июн 22 2025, 18:46

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 6 ] 
Автор Сообщение
 Заголовок сообщения: Деривация классом Exit
СообщениеДобавлено: Ср, авг 20 2008, 17:33 
Начинающий
Начинающий

Зарегистрирован:
Пн, июл 28 2008, 08:28
Сообщения: 24
Есть деривация из одного признака(П1) в 3 признака (П2,П3,П4).
Если мы включили в уровень агрегации П1 и П2, то в структуру c_s_chas все равно включен П2. Он пытается его сдеревировать(а там отлчное значение от деревируемого) - ошибка. Раньше в функциональных модулях типа EXIT приходила таблица с признаками целелевыми, которые необходимо сдеревировать (т.е. там были бы значения П3 и П4). В атрибутах класса я такую таблицу не нашел. в интерфейсе метода деривации подавно. Где можно откопать, то что признак П2 не нужно деревировать, т.к. он сейчас включен в уровень.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, авг 20 2008, 20:26 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Ср, июл 04 2007, 22:04
Сообщения: 138
Пол: Мужской
Попробуйте следующее:
В классе деривации проверьте заполнен ли признак П2. Если он отличен от INITIAL, то не деривируйте признак, а оставляйте существующее значение.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, авг 21 2008, 07:45 
Начинающий
Начинающий

Зарегистрирован:
Пн, июл 28 2008, 08:28
Сообщения: 24
Фишка в том, что пустое значение признака П2 это допустимая комбинация из уровня и менять ее не нужно, просто так. Кто-нить рылся глубоко в классе деривации? Какие еще идеи?

Можно попробовать получить ид запроса который сейчас обрабатывается пользователем. Но вопрос тоже как это сделать в классе?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, авг 21 2008, 08:26 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Ср, июл 04 2007, 22:04
Сообщения: 138
Пол: Мужской
Если в уровне агрегации (У1), в котором нет П2, есть признак (назовем его ПХ), которого нет в уровне агрегации (У2), где П2 есть, то можно попробовать следующее:

Разбить класс деривации на 2:
Первый будет деривировать только П3 и П4
Второй только П2, причем в исходные признаки для деривации П2 добавить признак ПХ. Так как ПХ нет в У2, то деривация не сработает и все будет ОК :)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, авг 21 2008, 08:39 
Начинающий
Начинающий

Зарегистрирован:
Пн, июл 28 2008, 08:28
Сообщения: 24
Да такой метод сработает, даже промежуточный признак ПХ не нужен. Если разделить, то деривация на У2(П1->П2) не запустится. Сейчас так и настроено. Просто хочется узнать, есть ли возможность(точнее как, т.к. на абапе нет ничего невозможного)) получить информацию, о том для каких признаков из списка целевых сейчас необходимо выполнить деривацию. В 3ке BPS такое писал на FM там нормальная таблица целефых признаков приходила.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, авг 21 2008, 11:49 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Ср, июл 04 2007, 22:04
Сообщения: 138
Пол: Мужской
Можно в класс деривации передавать еще какой-нибудь дополнительный признак, который будет различать первую форму и вторую и на его основе делать вывод нужно деривировать П2 или нет.


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 6 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB