Текущее время: Сб, июл 20 2019, 21:59

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


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 24 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Добавление поля в J3RFLVMOBVEDH
СообщениеДобавлено: Пт, ноя 23 2018, 13:59 
Младший специалист
Младший специалист

Зарегистрирован:
Пт, дек 15 2017, 11:50
Сообщения: 56
Доброго времени суток!
Помогите, пожалуйста вот с чем:
необходимо добавить новое поле в транзакцию J3RFLVMOBVEDH.
Трудности начинаются, если я пытаюсь расширить структуры J_3RMOBVEDH_DOCUMENT и J_3RMOBVEDH_TOTAL
А при вызове бади CALL BADI lr_badi->calculate_turnovers
выходит особая ситуация CX_AMDP_NATIVE_DBCALL_FAILED

Возможно ли вообще поле добавить? Или что можно сделать с этим?
Заранее спасибо за ответ


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Добавление поля в J3RFLVMOBVEDH
СообщениеДобавлено: Пт, ноя 23 2018, 18:18 
Специалист
Специалист

Зарегистрирован:
Вт, дек 06 2005, 14:24
Сообщения: 106
Чтобы добавить свое поле надо сделать свою реализацию в BADI_J_3RMOBVEDH
И в ней переписать метод CALCULATE_TURNOVERS, который будет выполнять select с учетом вашего поля.

Текущую реализацию выборки данных можно посмотреть в методе CALCULATE_TURNOVERS класса CL_J_3RMOBVEDH_MAIN


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Добавление поля в J3RFLVMOBVEDH
СообщениеДобавлено: Пн, апр 01 2019, 10:26 
Младший специалист
Младший специалист

Зарегистрирован:
Пт, дек 15 2017, 11:50
Сообщения: 56
Daw написал(а):
Чтобы добавить свое поле надо сделать свою реализацию в BADI_J_3RMOBVEDH
И в ней переписать метод CALCULATE_TURNOVERS, который будет выполнять select с учетом вашего поля.

Текущую реализацию выборки данных можно посмотреть в методе CALCULATE_TURNOVERS класса CL_J_3RMOBVEDH_MAIN


Пытаюсь переписать код, путем копирования класса CL_J_3RMOBVEDH_MAIN в Z, для дальнейшего изменения, но и тут возникает ошибка при активации:
Метод CALCULATE_TURNOVERS SQLSCRIPT message: return type mismatch: Procedure ZCL_J_3RMOBVEDH_MAIN=>CALCULATE_TURNOVERS: TOTALS[ MATNR:NVARCHAR(18)
BWTAR:NVARCHAR(10) WERKS:NVARCHAR(4) LGORT:NVARCHAR(4) CHARG:NVARCHAR(10) SOBKZ:NVARCHAR(1) LIFNR:NVARCHAR(10) KUNNR:NV

Хотя TOTALS объявлен в definition

types:
j_3rmobvedh_totals type standard table of J_3RMOBVEDH_TOTAL .

value(TOTALS) type J_3RMOBVEDH_TOTALS "Total.

что еще можно сделать, подскажите, пожалуйста


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Добавление поля в J3RFLVMOBVEDH
СообщениеДобавлено: Чт, апр 04 2019, 10:27 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 17:25
Сообщения: 3093
Пол: Мужской
Объявите тип таблицы глобально(se11) и используйте его.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Добавление поля в J3RFLVMOBVEDH
СообщениеДобавлено: Чт, апр 11 2019, 15:57 
Начинающий
Начинающий

Зарегистрирован:
Вт, ноя 28 2006, 01:24
Сообщения: 11
MaрьЯ написал(а):
Daw написал(а):
Чтобы добавить свое поле надо сделать свою реализацию в BADI_J_3RMOBVEDH
И в ней переписать метод CALCULATE_TURNOVERS, который будет выполнять select с учетом вашего поля.

Текущую реализацию выборки данных можно посмотреть в методе CALCULATE_TURNOVERS класса CL_J_3RMOBVEDH_MAIN


что еще можно сделать, подскажите, пожалуйста



добрый день, похожая задача.
для BADI_J_3RMOBVEDH можно создать только одну реализацию, судя по настройкам,
у нас есть стандартная реализация CL_J_3RMOBVEDH_BADI созданная сапом для HANA. как можно расширить на свои поля структуры J_3RMOBVEDH_TOTAL и J_3RMOBVEDH_DOCUMENT. предварительно прописав заполнение этих полей в CALCULATE_TURNOVERS, если свою реализацию BADI_J_3RMOBVEDH делать нельзя.
подскажите, пожалуйста


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Добавление поля в J3RFLVMOBVEDH
СообщениеДобавлено: Чт, апр 11 2019, 16:18 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 17:25
Сообщения: 3093
Пол: Мужской
женечка2 написал(а):
добрый день, похожая задача.
для BADI_J_3RMOBVEDH можно создать только одну реализацию, судя по настройкам,
у нас есть стандартная реализация CL_J_3RMOBVEDH_BADI созданная сапом для HANA. как можно расширить на свои поля структуры J_3RMOBVEDH_TOTAL и J_3RMOBVEDH_DOCUMENT. предварительно прописав заполнение этих полей в CALCULATE_TURNOVERS, если свою реализацию BADI_J_3RMOBVEDH делать нельзя.
подскажите, пожалуйста

При расширении стандарта, особенно когда нет четкой рекомендации SAP по расширению, всегда надо погружаться более детально, чтобы после расширения не сломать ничего.
Тут надо смотреть и на сам код, и то где могут использоваться расширенные объекты словаря.
J_3RMOBVEDH_TOTAL и J_3RMOBVEDH_DOCUMENT - вроде расширяемые, поэтому посмотреть в сторону append structure.

Могу дать направления:
1 - Можно в SAP написать
2 - Можно поискать другие механизмы расширения или другие BADI (как искать в интернете много написано)
3 - Можно использовать неявные enhancemnt points для класса CL_J_3RMOBVEDH_BADI или явные/неявные enhancemnt points для другим программных единиц которые может быть больше подходят


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Добавление поля в J3RFLVMOBVEDH
СообщениеДобавлено: Чт, апр 11 2019, 16:25 
Специалист
Специалист

Зарегистрирован:
Вт, дек 06 2005, 14:24
Сообщения: 106
J_3RMOBVEDH_TOTAL исппользуется для amdp функций, которые вовзращают в селектах строго определнные поля.
Расширение J_3RMOBVEDH_TOTAL возможно, но тогда надо заменять всю реализацию классов на свои Z-классы.
Не очень удобно, так как после каждого измения стандартных классов надо будет изменять и свои расширения.
Вариант с своей реализацией BADI действительно не подходит, так только одно внедерение может быть активно.

Можно выствить сообщение в SAP, чтобы сделали более расширяемый код.


Последний раз редактировалось Daw Чт, апр 11 2019, 16:30, всего редактировалось 1 раз.

Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Добавление поля в J3RFLVMOBVEDH
СообщениеДобавлено: Чт, апр 11 2019, 16:28 
Начинающий
Начинающий

Зарегистрирован:
Вт, ноя 28 2006, 01:24
Сообщения: 11
Besa написал:
женечка2 написал(а):
При расширении стандарта, особенно когда нет четкой рекомендации SAP по расширению, всегда надо погружаться более детально, чтобы после расширения не сломать ничего.
Тут надо смотреть и на сам код, и то где могут использоваться расширенные объекты словаря.
J_3RMOBVEDH_TOTAL и J_3RMOBVEDH_DOCUMENT - вроде расширяемые, поэтому посмотреть в сторону append structure.

Могу дать направления:
1 - Можно в SAP написать
2 - Можно поискать другие механизмы расширения или другие BADI (как искать в интернете много написано)
3 - Можно использовать неявные enhancemnt points для класса CL_J_3RMOBVEDH_BADI или явные/неявные enhancemnt points для другим программных единиц которые может быть больше подходят


спасибо

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


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Добавление поля в J3RFLVMOBVEDH
СообщениеДобавлено: Чт, апр 11 2019, 16:32 
Начинающий
Начинающий

Зарегистрирован:
Вт, ноя 28 2006, 01:24
Сообщения: 11
Daw написал(а):
J_3RMOBVEDH_TOTAL исппользуется для amdp функций, которые вовзращают в селектах строго определнные поля.
Расширение J_3RMOBVEDH_TOTAL возможно, но тогда надо заменять всю реализацию классов на свои Z-классы.
Не очень удобно, так как после каждого измения стандартных классов надо будет изменять и свои расширения.


совсем неудобно.
выход забрать данные к себе, расширить на нужные поля уже в Z программе и заполнить повторными выборками, я так понимаю


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Добавление поля в J3RFLVMOBVEDH
СообщениеДобавлено: Чт, апр 11 2019, 17:00 
Специалист
Специалист

Зарегистрирован:
Вт, дек 06 2005, 14:24
Сообщения: 106
женечка2 написал(а):
совсем неудобно.
выход забрать данные к себе, расширить на нужные поля уже в Z программе и заполнить повторными выборками, я так понимаю


Тут уж каждый сам решает, что удобнее.
Можно и по такому варианту пойти.
Главное, что данные выбираются быстро и обработать их под свои задачи вполне возможно.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Добавление поля в J3RFLVMOBVEDH
СообщениеДобавлено: Чт, апр 11 2019, 17:15 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 17:25
Сообщения: 3093
Пол: Мужской
женечка2 написал(а):
Daw написал(а):
J_3RMOBVEDH_TOTAL исппользуется для amdp функций, которые вовзращают в селектах строго определнные поля.
Расширение J_3RMOBVEDH_TOTAL возможно, но тогда надо заменять всю реализацию классов на свои Z-классы.
Не очень удобно, так как после каждого измения стандартных классов надо будет изменять и свои расширения.


совсем неудобно.
выход забрать данные к себе, расширить на нужные поля уже в Z программе и заполнить повторными выборками, я так понимаю

Анализируйте код J3RFLVMOBVEDH, анализируйте зависимости, анализируйте последствия, потом принимайте решение. Как вариант, можно и рассмотреть возможно неявных точек расширения программы J_3RMOBVEDH - зависит от задачи.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Добавление поля в J3RFLVMOBVEDH
СообщениеДобавлено: Чт, апр 11 2019, 17:19 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 17:25
Сообщения: 3093
Пол: Мужской
Еще как вариант, рассмотреть ведение Ваших "дополнительных данных" в классификации партии или классификации материала (имеется ввиду в признаках классов). Этот отчет умеет работать к классификацией, и может динамически подтягивать информацию из признаков. Посмотрите на селективный экран, там есть где указать имя класса для выборки данных.
UPD - В стандарте такого нет, это было Z расширение через ENH FRM.


Последний раз редактировалось Besa Пн, апр 15 2019, 11:58, всего редактировалось 1 раз.

Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Добавление поля в J3RFLVMOBVEDH
СообщениеДобавлено: Пт, апр 12 2019, 15:53 
Гуру-маршал
Гуру-маршал
Аватара пользователя

Зарегистрирован:
Пт, янв 30 2009, 10:59
Сообщения: 1200
Откуда: Москва, Минск
Пол: Мужской
Besa, а где ты такое нашел - что отчет умеет читать данные классификации?
У меня нет таких полей на селекционном экране..

_________________
Лучше быть умным и иногда тупить, чем быть тупым и постоянно умничать!


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Добавление поля в J3RFLVMOBVEDH
СообщениеДобавлено: Пн, апр 15 2019, 10:06 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 17:25
Сообщения: 3093
Пол: Мужской
DED_MOROZ написал:
Besa, а где ты такое нашел - что отчет умеет читать данные классификации?
У меня нет таких полей на селекционном экране..

тр J3RFLVMOBVEDH
NW FOR S4HANA ONPREMISE 1709 01 (01/2018) sap.com NW 7.52 FOR S/4HANA 1709


Последний раз редактировалось Besa Пн, апр 15 2019, 11:17, всего редактировалось 1 раз.

Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Добавление поля в J3RFLVMOBVEDH
СообщениеДобавлено: Пн, апр 15 2019, 10:55 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, дек 20 2007, 19:21
Сообщения: 1309
Besa написал:
DED_MOROZ написал:
Besa, а где ты такое нашел - что отчет умеет читать данные классификации?
У меня нет таких полей на селекционном экране..

тр J3RFLVMOBVEDH
NW FOR S4HANA ONPREMISE 1709 01 (01/2018) sap.com NW 7.52 FOR S/4HANA 1709
https://ibb.co/YBdRRn6

Привет. А она уже перестала ложИть хану? :D А то на 1610 без ограничений выборки только в путь ООМ.

_________________
я твой сап эфай внедрял
BAdI-позитив


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 24 ]  На страницу 1, 2  След.

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


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

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


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

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