Текущее время: Сб, июн 21 2025, 19:33

Часовой пояс: 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 часа


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

Сейчас этот форум просматривают: Yandex [Bot]


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

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