Добрый день.
Система ERP2005, имеет место следующая проблема. В ИТ0022 «Образование» в поле SLABS «Документ об образовании» можно вбить любой код «сертификата», а не только тот что есть в справочнике T519T. Хотя средство поиска для этого же самого поля работает нормально, и даже отфильтровывает список значений «Документа об образовании» в соответствии с введенным значением экранного поля «PRU_EDUCATION-EDUCATION».
Мне кажется что проблема в кривой логике стандартного экрана 2033 (насколько я понимаю, это decoupled версия для РФ), в логике же экрана 2000 (у нас почему-то используется не 2000, а 2033!) есть такой код, который, по идее, и должен делать эту проверку (input check?)
Code:
FIELD P0022-SLABS
MODULE ABSCH. "Abschlusstexte
И модуль ABSCH в инклюде MP002230
Code:
*---------------------------------------------------------------------*
* MODULE ABSCH *
*---------------------------------------------------------------------*
* Abschlussbezeichnung lesen *
*---------------------------------------------------------------------*
MODULE ABSCH INPUT.
CLEAR T519T.
SELECT SINGLE * FROM T519T WHERE SPRSL EQ SY-LANGU
AND SLABS EQ P0022-SLABS.
IF SY-SUBRC NE 0.
* SET PARAMETER ID 'TAB' FIELD '519T'. "VIFA16501
SET PARAMETER ID 'TAB' FIELD 'T519T'. "VIFA16501
MESSAGE E302 WITH 'T519T' SY-LANGU P0022-SLABS.
ENDIF.
ENDMODULE.
Для экрана же 2033 всё что есть для этого поля, это комментарий
Code:
* FIELD: P0022-SLABS.
Кто-нибудь уже сталкивался с такой проблемой? Писать в SAP чтобы исправляли багу? Не думаю что имеет смысл навешивать BADI-заплатки на стандартный функционал...