Текущее время: Вс, июл 20 2025, 20:04

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 11 ] 
Автор Сообщение
 Заголовок сообщения: Запрет изменения поля позиции в ME2xN
СообщениеДобавлено: Вт, окт 25 2005, 16:29 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Вт, авг 17 2004, 08:55
Сообщения: 331
Откуда: Украина, г.Мариуполь
Пол: Мужской
Запрет изменения поля позиции в ME2xN, или Как белое сделать серым :)
Суть в том, что необходимо в позиции PO, если введен обычный материал (т.е., позиция явл. стандартной - тип позиции и тип контировки пустые), то надо заблокировать поле "Краткий текст" (MEPO1211-TXZ01) от изменений. Использую BAdI ME_PROCESS_PO_CUST, метод PROCESS_ITEM. Соотв. эту операцию желательно сделать в нем...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, окт 26 2005, 07:34 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, авг 24 2004, 07:19
Сообщения: 3952
Откуда: ECC 6.0, South Kazakhstan
Не знаю как в 4.7, но в ECC 5.0 в BADI ME_PROCESS_PO_CUST есть соответствующие для этого методы:

FIELDSELECTION_HEADER*
FIELDSELECTION_ITEM*


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, окт 26 2005, 08:36 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Вт, авг 17 2004, 08:55
Сообщения: 331
Откуда: Украина, г.Мариуполь
Пол: Мужской
В методе FIELDSELECTION_ITEM след. пар-ры:
IM_HEADER
IM_ITEM
CH_FIELDSELECTION
Это меня устраивает, но я туда не попадаю. По крайней мере, в новой позиции бряк не срабатывает, и я не могу заблокировать поле.
У метода FIELDSELECTION_ITEM_REFKEYS пар-ры:
IM_ITEM
CH_KEY0
CH_KEY1
CH_KEY2
CH_KEY3
CH_KEY4
CH_KEY5
CH_KEY6
При этом CH_KEY0-CH_KEY4 содержат всегда одинаковые значения (под отладкой, для новой позиции). К тому же, совсем не понятно, каким образом в этом методе блокировать поле от изменений... :(


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, окт 26 2005, 11:02 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Вт, авг 17 2004, 08:55
Сообщения: 331
Откуда: Украина, г.Мариуполь
Пол: Мужской
Кроме того, судя по структуре MMPUR_FS и группе типов MMMFD, становится непонятным, какие custom fields имеются в виду... Случайно, не те, что добавляются на пользовательский экран? Потому что в MMPUR_FS нет названия поля, есть только этот самый идентификатор custom field"а, поэтому неизвестно, как заблокировать конкретное поле, название к-рого я знаю... :oops:


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, окт 26 2005, 11:09 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, авг 24 2004, 07:19
Сообщения: 3952
Откуда: ECC 6.0, South Kazakhstan
RoadRunner написал:
В методе FIELDSELECTION_ITEM след. пар-ры:
IM_HEADER
IM_ITEM
CH_FIELDSELECTION
Это меня устраивает, но я туда не попадаю. По крайней мере, в новой позиции бряк не срабатывает, и я не могу заблокировать поле.


... аналогично (может что-то не так делаем? :roll: )

RoadRunner написал:
У метода FIELDSELECTION_ITEM_REFKEYS пар-ры:
IM_ITEM
CH_KEY0
CH_KEY1
CH_KEY2
CH_KEY3
CH_KEY4
CH_KEY5
CH_KEY6
При этом CH_KEY0-CH_KEY4 содержат всегда одинаковые значения (под отладкой, для новой позиции). К тому же, совсем не понятно, каким образом в этом методе блокировать поле от изменений... :(


здесь по всей видимости надо делать так: получаем ссылку на объект-позицию (im_item), подходящим методом этого объекта получаем данные по позиции, анализируем и варьируя ключами CH_KEY* переопределяем код выбора полей (который настраивается в SPRO)


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, окт 26 2005, 11:19 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Вт, авг 17 2004, 08:55
Сообщения: 331
Откуда: Украина, г.Мариуполь
Пол: Мужской
OlegDm написал(а):
...подходящим методом этого объекта получаем данные по позиции, анализируем...
Это все без проблем - с методами объекта позиции я немного разобрался.
OlegDm написал(а):
...и, варьируя ключами CH_KEY*, переопределяем код выбора полей (который настраивается в SPRO)
А вот это непонятно. Можно подробней? Хотя бы, где в ИМГ это искать?

З.Ы. Может, где-то можно найти доку по этому бади? Хотелось бы - надоело методом тыка... и отладчика...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, окт 26 2005, 11:32 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, авг 24 2004, 07:19
Сообщения: 3952
Откуда: ECC 6.0, South Kazakhstan
я так понял CH_KEY* - это ключи выбора полей, которые определяются выбор полей для заказа на поставку.

Как настраивается выбор полей:

1. Для вида заказа определяется код выбора полей (SPRO-MM-Закупки-Заказ-Настройка видов документов) (по умолчанию NBF)

2. Ну и само определение выбора полей (обязат., необязат., просмотр) -SPRO-MM-Закупки-Заказ-Определение структуры экрана.

3. Определение полей необходимо повторить для кода выбора ME21N и кода определенного в 1 пункте - NBF

В случае с БАДИ, мне кажется, нужно создать еще один код выбора полей ( скажем ZNBF ) где закрыть поле краткий текст; и в БАДИ заменить его значением соответствующий CH_KEY* ключ.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, окт 26 2005, 13:33 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Вт, авг 17 2004, 08:55
Сообщения: 331
Откуда: Украина, г.Мариуполь
Пол: Мужской
В отладчике из 7 ключей значения имеют только первые 4:
CH_KEY0 ME21N Заказ на поставку
CH_KEY1 AKTV Изменение
CH_KEY2 NBF Заказ на поставку
CH_KEY3 PT0F Стандартная позиция/ЗкзПостав
Я вот и думаю: может, скопировать стандартную настройку PT0F в свою, да и прописывать ее 5-м ключом? А в ней сделать поле текста материала только для просмотра...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, окт 26 2005, 13:51 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Вт, авг 17 2004, 08:55
Сообщения: 331
Откуда: Украина, г.Мариуполь
Пол: Мужской
ЙЙЙЙЕЗЗЗЗЗЗ! 8) Получилось. Спасибощи ограмаднейшие!
Причем, чтобы не напортить в непредвиденных случаях, заменяю CH_KEY3 на ZPT0F (свой вариант). Только теперь возникает след. проблема. Если нажать ентер, то, когда материал вписан, автоматически подтягивается текст. Этот же метод вызывается для малейших изменений данных позиции. Поэтому, если вписать текст, а затем мтрл, и нажать ентер, то метод в самом первом же вызове заблокирует поле, и оно автоматом не изменится. Как отследить эту ситуацию, чтобы самому текст не искать и не вписывать?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, окт 26 2005, 14:21 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, авг 24 2004, 07:19
Сообщения: 3952
Откуда: ECC 6.0, South Kazakhstan
а может тебе лучше сделать так (наоборот): в варианте NBF поле текст закрыть (т.е. по умолчанию текст будет только для вывода), а в экзите, если материал не введен, его открывать (замещая код выбора полей) - т.е. не закрывать, а открывать поле текст.

Но знаешь, к твоей задаче можно подойти по другому: создать разные виды заказов на закупку для различных целей. Т.е. вид заказа для закупа материалов, вид заказа для услуг, и т.д.
Тогда все можно будет разрулить только настройкой в ММ (поскольку код выбора полей привязывается к виду заказа).


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, окт 26 2005, 14:34 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Вт, авг 17 2004, 08:55
Сообщения: 331
Откуда: Украина, г.Мариуполь
Пол: Мужской
OlegDm написал(а):
создать разные виды заказов на закупку для различных целей. Т.е. вид заказа для закупа материалов, вид заказа для услуг, и т.д.

Это уже сделано. У нас несколько другая разбивка - договора снабжения, разовые, комиссии, аренды и т.д... Т.е., получается, вид документа не позволяет сделать однозначный вариант layout'a :(
OlegDm написал(а):
а может тебе лучше сделать так (наоборот): в варианте NBF поле текст закрыть...
Это интересно. Надо подумать. Но проблему с автоматическим заполнением текстов это не решит - иначе при программном изменении варианта layout'a (как я сейчас сделал) текст заполнялся бы.


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

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


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

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

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