Текущее время: Вс, авг 03 2025, 22:03

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 9 ] 
Автор Сообщение
 Заголовок сообщения: Динамическое изменение свойств полей в пакете услуг
СообщениеДобавлено: Ср, июл 16 2008, 14:09 
Гуру-модератор
Гуру-модератор
Аватара пользователя

Зарегистрирован:
Вт, май 17 2005, 13:35
Сообщения: 4871
Откуда: Москва
Пол: Мужской
Всем доброго дня!
Есть стандартный экран с таблицей пакета услуг (я его открываю в PS). В принципе, в спро есть настройка, которая позволяет рулить видимостью и доступностью для ввода полей на этом экране.

Но мне нужно динамически изменять доступность для ввода поля "цена брутто" (ESLL-TBTWR) в зависимости от определенных условий.

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

_________________
Удача - результат нашего желания (© А. Нортон)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, июл 17 2008, 13:08 
Гуру-модератор
Гуру-модератор
Аватара пользователя

Зарегистрирован:
Вт, май 17 2005, 13:35
Сообщения: 4871
Откуда: Москва
Пол: Мужской
Более конкретный вопрос.
Есть табличка на экране, объявленная как
Code:
CONTROLS: TC_VIEW TYPE TABLEVIEW USING SCREEN 0400.



Как сделать так, чтобы в одном и том же столбце в первой строке поле было серым, а во втрой строке - доступным для ввода?

_________________
Удача - результат нашего желания (© А. Нортон)


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

Зарегистрирован:
Вт, авг 17 2004, 12:44
Сообщения: 305
Откуда: Жайрем -> Астана
Привет!
А где находится этот экран? В какой программе?

А делается это в простом случае примерно так:
в PBO этого экрана есть блок инициализации экранной таблицы
Code:
LOOP WITH CONTROL TC_VIEW ...
  MODULE fields_attr .
  ...
ENDLOOP.

где
Code:
MODULE  fields_attr OUTPUT .
  perform fields_attr .
ENDMODULE .

FORM fields_attr .
  LOOP AT screen .
    IF screen-name = 'ESLL-TBTWR' and еще_что_то .
      screen-input = '1' .
    ELSE .
      screen-input = '0' .
    ENDIF .
    MODIFY screen .
  ENDLOOP .
ENDFORM .


Последний раз редактировалось flipper Чт, июл 17 2008, 14:12, всего редактировалось 1 раз.

Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, июл 17 2008, 14:03 
Гуру-модератор
Гуру-модератор
Аватара пользователя

Зарегистрирован:
Вт, май 17 2005, 13:35
Сообщения: 4871
Откуда: Москва
Пол: Мужской
Привет, в SAPLMLSP.

Но сейчас у меня вопрос более простой - предположим, что я объявлю табличный контрол в своей z-программе, например копии DEMO_DYNPRO_TABCONT_LOOP_AT.

Есть ли в этом случае возможность управлять доступностью поля для ввода на уровне конкретных ячеек таблицы, а не на уровне столбцов?

_________________
Удача - результат нашего желания (© А. Нортон)


Последний раз редактировалось LKU Чт, июл 17 2008, 14:04, всего редактировалось 1 раз.

Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, июл 17 2008, 14:04 
Директор
Директор

Зарегистрирован:
Пт, окт 07 2005, 09:10
Сообщения: 752
Откуда: 4.6C
Пол: Мужской
Если вопрос модификации стандарта решен, то что-то подобное обсуждалось вот здесь:
http://sapboard.ru/forum/viewtopic.php?p=147098


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, июл 17 2008, 14:29 
Гуру-модератор
Гуру-модератор
Аватара пользователя

Зарегистрирован:
Вт, май 17 2005, 13:35
Сообщения: 4871
Откуда: Москва
Пол: Мужской
Aval, спасибо.
Из эксита у меня получается сделать ассигн '(SAPLMLSP)TC_VIEW-COLS' и дальше работать со столбцами таблицы.

Но мне что-то не приходит в голову, как сделать аналог с ассигнами вот для этого:
Code:
loop at   g_MDRV_itab
       into g_MDRV_wa
       with control MDRV
       cursor MDRV-current_line.


Так что, похоже, проблема модификации стандарта не решена :(

_________________
Удача - результат нашего желания (© А. Нортон)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, июл 17 2008, 14:48 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Вт, авг 17 2004, 12:44
Сообщения: 305
Откуда: Жайрем -> Астана
Aval опередил пока редактировал :wink:

изменение атрибутов в TC_VIEW-COLS если я не ошибаюсь ничего не даст, там находятся исходные атрибуты

если версия системы позволяет, то можно попробовать вставить точку расширения в конец подпрограммы MODIFY_SCREEN_PRICE в инклуде LMLSPF7J и написать примерно такое:
Code:
IF screen-name = 'ESLL-TBTWR' and ваше_условие_для_серого_поля .
    screen-input = '0' .
ENDIF .


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, июл 17 2008, 14:48 
Директор
Директор

Зарегистрирован:
Пт, окт 07 2005, 09:10
Сообщения: 752
Откуда: 4.6C
Пол: Мужской
Похоже только модификация, если не будет другого решения.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, июл 17 2008, 14:59 
Гуру-модератор
Гуру-модератор
Аватара пользователя

Зарегистрирован:
Вт, май 17 2005, 13:35
Сообщения: 4871
Откуда: Москва
Пол: Мужской
Изменение атрибутов в TC_VIEW-COLS как раз работает - столбец в целом мне удалось сделать серым. Но задача стоит делать это на уровне полей.
Версия 4.7, модификации стандартного кода на проекте не допускаются.
Похоже, глушняк.


Я могу выдавать сообщение об ошибке после того, как пользователь попробует изменить цену, но уж больно ненаглядно получается :(

_________________
Удача - результат нашего желания (© А. Нортон)


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

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


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

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


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

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