Текущее время: Чт, июл 24 2025, 11:07

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


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


Вопросы по ППМ (MRP) - сюда.
Вопросы по классификации - сюда.
Вопросы по входящим поставкам - сюда.



Начать новую тему Ответить на тему  [ Сообщений: 11 ] 
Автор Сообщение
 Заголовок сообщения: Изменение полей в заказе на поставку после деблокирования
СообщениеДобавлено: Вт, май 22 2012, 11:17 
Ассистент
Ассистент

Зарегистрирован:
Пт, авг 19 2011, 08:19
Сообщения: 25
Добрый день!

Есть такая задача - после деблокирования заказа на поставку необходимо, чтобы поле "Дата поставки" становилось закрытым от изменений.
подскажите, пожалуйста, как это реализовать?

заранее спасибо


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Изменение полей в заказе на поставку после деблокирования
СообщениеДобавлено: Вт, май 22 2012, 12:45 
Модератор
Модератор
Аватара пользователя

Зарегистрирован:
Чт, май 19 2005, 12:34
Сообщения: 1941
Откуда: НК
Пол: Мужской
BAdI ME_PROCESS_PO_CUST, метод FIELDSELECTION_ITEM

_________________
Eritis sicut Deus, scientes bonum et malum...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Изменение полей в заказе на поставку после деблокирования
СообщениеДобавлено: Вт, май 22 2012, 12:55 
Ассистент
Ассистент

Зарегистрирован:
Пт, авг 19 2011, 08:19
Сообщения: 25
спасибо. значит, стандартными настройками никак...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Изменение полей в заказе на поставку после деблокирования
СообщениеДобавлено: Ср, май 23 2012, 14:51 
Младший специалист
Младший специалист

Зарегистрирован:
Чт, фев 04 2010, 15:46
Сообщения: 80
Добрый день. Появилась похожая задача. К сожалению данный BADI только для полей клиента, а вот для стандартных полей он не подходит. Может кто знает другой BADI или какой другой инструмент?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Изменение полей в заказе на поставку после деблокирования
СообщениеДобавлено: Чт, май 24 2012, 08:47 
Модератор
Модератор
Аватара пользователя

Зарегистрирован:
Чт, май 19 2005, 12:34
Сообщения: 1941
Откуда: НК
Пол: Мужской
тогда FIELDSELECTION_ITEM_REFKEYS
вы погуглите, на SDN даже примеры внедрения есть

_________________
Eritis sicut Deus, scientes bonum et malum...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Изменение полей в заказе на поставку после деблокирования
СообщениеДобавлено: Чт, май 24 2012, 12:30 
Младший специалист
Младший специалист

Зарегистрирован:
Чт, фев 04 2010, 15:46
Сообщения: 80
Дело не в методе, а в BADI. ME_PROCESS_PO_CUST только для работы с полями, созданными дополнительно. Поэтому в CH_FIELDSELECTION попадают только пользовательские поля. Зато можно использовать ME_PROCESS_PO, хотя он только и для внутр. использования. Но если очень надо... :wink:
Однако, не все получилось. На экране просмотра позиций поле удалось закрыть для редактирования. А вот на экране подробного просмотра позиции закрыть пока не получилось. Хотя значение metafield для них одно и то же


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Изменение полей в заказе на поставку после деблокирования
СообщениеДобавлено: Чт, май 24 2012, 15:54 
Модератор
Модератор
Аватара пользователя

Зарегистрирован:
Чт, май 19 2005, 12:34
Сообщения: 1941
Откуда: НК
Пол: Мужской
anton_bs написал(а):
ME_PROCESS_PO_CUST только для работы с полями, созданными дополнительно

ересь.
давно и успешно используем этот BAdI для работы

_________________
Eritis sicut Deus, scientes bonum et malum...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Изменение полей в заказе на поставку после деблокирования
СообщениеДобавлено: Чт, май 24 2012, 16:01 
Младший специалист
Младший специалист

Зарегистрирован:
Чт, фев 04 2010, 15:46
Сообщения: 80
Это я сам видел. Вот кусок кода, перед вызовом метода FIELDSELECTION_ITEM в ФМ MEPOBADI_FS_ITEM:
Code:
  if not l_instance_cust is initial.
* firewall
    loop at ch_fieldselection assigning <fs1> where metafield ge mmmfd_cust_01.
      insert <fs1> into table lt_fieldselection.
    endloop.
    if sy-subrc is initial.
      call method l_instance_cust->fieldselection_item
        exporting
          im_header         = im_header
          im_item           = im_item
        changing
          ch_fieldselection = lt_fieldselection.
...

Из которого видно, что в ME_PROCESS_PO_CUST будут обрабатываться только поля пользователя...

Можете сами попробовать изменить опции поля, например даты поставки, в BADI ME_PROCESS_PO_CUST. Я думаю ничего у вас не выйдет.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Изменение полей в заказе на поставку после деблокирования
СообщениеДобавлено: Чт, май 24 2012, 16:17 
Модератор
Модератор
Аватара пользователя

Зарегистрирован:
Чт, май 19 2005, 12:34
Сообщения: 1941
Откуда: НК
Пол: Мужской
Code:
METHOD if_ex_me_process_po_cust~fieldselection_item_refkeys.
  DATA: header TYPE REF TO if_purchase_order_mm
            ,ls_mepoheader TYPE mepoheader
            .
  header = im_item->get_header( ).
  ls_mepoheader = header->get_data( ).
  IF ls_mepoheader-frgrl = ''.
    ch_key6 = 'ZZZZ'. "ключ кода выбора полей
  ENDIF.
ENDMETHOD.

_________________
Eritis sicut Deus, scientes bonum et malum...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Изменение полей в заказе на поставку после деблокирования
СообщениеДобавлено: Чт, май 24 2012, 16:53 
Младший специалист
Младший специалист

Зарегистрирован:
Чт, фев 04 2010, 15:46
Сообщения: 80
Да, дествительно так можно.
Но все равно почему-то поле стало серым только на экране просмотра позиций, а на экране подробной инфы позиции оно осталось доступно для измененеия.
Изображение


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Изменение полей в заказе на поставку после деблокирования
СообщениеДобавлено: Пт, май 25 2012, 08:38 
Модератор
Модератор
Аватара пользователя

Зарегистрирован:
Чт, май 19 2005, 12:34
Сообщения: 1941
Откуда: НК
Пол: Мужской
в общем-то я код для примера привел.

в заказе дата не как в заявках ставится, напрямую в позиции. она из графика поставок тянется.
я бы в PROCESS_ITEM или PROCESS_SCHEDULE, если FRGRL = '', при любом изменении meposchedule-eeind выдавал сообщение, что нельзя менять и делал SET_DATA, ставя старое значение назад.
или даже в CHECK можно проверять и выдавать сообщение об ошибке.
собственно вариантов уйма. нужно только знание возможностей данного BAdI.

_________________
Eritis sicut Deus, scientes bonum et malum...


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

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


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

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


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

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