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

Часовой пояс: 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 часа


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

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


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

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