Всем привет!
Есть вопрос:
При создании счет-фактуры в транзакции MIRO в позициях требуется указать код налога. Это поле является обязательным в данный момент, возможно ли сделать его не обязательным?
Цитата: Kostyan від Березень 10, 2011, 03:39:45 ПП
обязательным в данный момент, возможно ли сделать его не обязательным?
Ну счета, используемые в проводке, должны быть не релевантными налогу для начала...
Мы их сделали не релевантными, но все равно приходиться их вводить, НДС ставим 0. Но возможно ли сделать так (настроить) чтобы его ввод был не обязательным?
А настройку "spro-упр-контроль счетов логистики-ведение вариантов списков позиций" смотрели?
Своеобразная настройка, не уверен что получится (системы под рукой нет), но посмотреть стоит....
p.s. если не разберётесь как ее запустить - пишите, расскажу (как я писал - настройка своеобразная )
Спасибо за подсказку.
Посмотрел эту транзакцию,вроде разобрался с экранами и программами (нашел что нужно), но там и так не стоит галочка на против обязательного поля. Так что не знаю что еще можно сделать.
Давным-давно, когда миром правила 4.6, для FI писал программку, анализирующую статусы экранных полей при проводке документа тр. FB01. В конечном итоге всё сводилось к сравнению двух наборов данных из настроечных таблиц: статусов по КП и статусов по группе счетов. Трассировка (ST05) поможет определить таблицы, откуда тянутся статусы. Возможно отладить PBO-логику экрана с полем. Также возможно, что у вас похожий случай (http://www.sapnet.ru/viewtopic.php?p=9766#9766). Сердце ABAP-разработчика подсказывает, что дело в настройках. ;)
Вообще-то похоже никак, т.е. хотя бы нулевой код налога должен быть введен, потому как на данном подэкране есть следующий модуль обработки данных в поле налога (модуль LMR1MI25):
*---------------------------------------------------------------------*
* Module MWSKZ_CHECK *
*---------------------------------------------------------------------*
* Steuerkennzeichen prüfen *
*---------------------------------------------------------------------*
MODULE MWSKZ_CHECK.
DATA: MWSKZ LIKE DRSEG-MWSKZ.
Check akt_typ ne c_trtyp_a.
IF SY-DYNNR = 210.
CHECK DRSEG_CO-SELKZ NE SPACE.
MWSKZ = DRSEG_CO-MWSKZ.
IF MWSKZ IS INITIAL.
SET CURSOR FIELD 'DRSEG_CO-MWSKZ' LINE SY-STEPL.
MESSAGE E249.
* Bitte Steuerkennzeichen eingeben
ENDIF.
ELSE.
CHECK DRSEG-SELKZ NE SPACE.
DESCRIBE TABLE YDRSEG-CO LINES ANZAHL.
IF ANZAHL > 0 AND
( DRSEG-REUPD NE SPACE OR DRSEG-PSTYP = C_PSTYP_9 ).
EXIT.
ELSE.
*----- Brasilien ----------------------
If not drseg-mwskz is initial.
IF MWSKZ <> DRSEG-MWSKZ.
CALL FUNCTION 'J_1BSA_COMPONENT_ACTIVE'
EXPORTING
BUKRS = DRSEG-BUKRS
COMPONENT = 'BR'
EXCEPTIONS
COMPONENT_NOT_ACTIVE = 02.
if sy-subrc is initial.
CALL FUNCTION 'J_1B_NF_IV_SET_MWSKZ_CHANGED'
EXPORTING
I_RBLGP = drseg-rblgp
I_MWSKZ = drseg-mwskz.
*------------- LOCALIZATION of MM-SRV (note 940812) -------------START-*
IF NOT drseg-packno IS INITIAL.
* Check if tax code is service enabled
CALL FUNCTION 'J_1B_IV_SRV_DATA_CHECK'
EXPORTING
iv_check_field = 'mwskz_iv_item'
is_drseg = drseg
EXCEPTIONS
INVALID_TAX_CODE = 1.
IF sy-subrc = 1.
SET CURSOR FIELD 'DRSEG-MWSKZ' LINE SY-STEPL.
MESSAGE e001(j1b_srv) WITH drseg-mwskz.
ENDIF.
ENDIF.
*------------- LOCALIZATION of MM-SRV -----------------------------END-*
endif.
endif.
endif.
*--- Ende Brasilien ---------------------------
MWSKZ = DRSEG-MWSKZ.
ENDIF.
IF MWSKZ IS INITIAL.
SET CURSOR FIELD 'DRSEG-MWSKZ' LINE SY-STEPL.
MESSAGE E249.
* Bitte Steuerkennzeichen eingeben
ENDIF.
ENDIF.
CALL FUNCTION 'TAX_INDICATOR_CHECK'
EXPORTING
STEUERKENNZEICHEN = MWSKZ
STEUERSCHEMA = T007A-KALSM.
ENHANCEMENT-POINT MWSKZ_CHECK_01 SPOTS ES_SAPLMR1M.
ENDMODULE. "MWSKZ_CHECK
Из которого следует что если код налога пустой, то вызвать сообщение об ошибке: MESSAGE E249., причем вызвать сразу без всяких так проверок на отключение данного сообщения и т.д. так что вводите и дальше код налога по ставке 0%, по другому похоже никак... т.е. там хоть что-то да должно быть введено.