Текущее время: Вт, июл 15 2025, 03:06

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 11 ] 
Автор Сообщение
 Заголовок сообщения: Изменение параметра экрана
СообщениеДобавлено: Пн, июн 05 2006, 11:53 
Гость
У меня есть локальная таблица в которой я храню членов комиссиий для различных списаний. В программе ввода данных в эту таблицу поля с таб№ и ФИО заполняются автоматически из таблицы. А вот при изменении таб№ и ФИО вручную (например нужно изменить комиссию) исправления не сохраняются т.е. экран не обновляется.
Как побороть эту ситуацию?


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, июн 05 2006, 13:11 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Чт, июн 16 2005, 10:29
Сообщения: 336
Откуда: Минск->Москва
Пол: Мужской
Не очень понятно, что у вас не обновляется... некие данные выбранные из вашей таблицы и потом измененные, либо данные при ведении таблицы. Таблицу вашу стоит вести как справочник, через ракурс ведения, тогда если проблема в обновлениях ее - решиться...


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:   Тема решена
СообщениеДобавлено: Пн, июн 05 2006, 14:08 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Пт, июн 02 2006, 14:22
Сообщения: 138
Откуда: г.Новомичуринск
Пол: Мужской
Попробуй посмотреть как изменяются твои данные в отладчике. Может просто у тебя как обычно бывает не присваивается заново новые параметры!

_________________
Не ломайте то что уже есть.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, июн 05 2006, 15:42 
Гость
IVA_GRES В отладчике данные изменяются для первой группы параметров нормально. Но как только переходит на второй первый параметр восстанавливает первоначальное значение.

ОН У меня в таблице одно из ключевых поле склад. К этому складу существуют члены комиссии. Когда я ввожу первый раз склад, автоматически из таблицы в параметры подтягиваются члены комиссии. Я изменяю одного члена комиссии (ввожу таб№ и из таб PA001 вытягиваю ФИО). На экране нет изменений остается старое значение.


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, июн 05 2006, 15:53 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Пт, июн 02 2006, 14:22
Сообщения: 138
Откуда: г.Новомичуринск
Пол: Мужской
Пришли кусок кода.
Попробуем посмотреть.

_________________
Не ломайте то что уже есть.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, июн 05 2006, 16:27 
Гость
Код:
SELECTION-SCREEN BEGIN OF BLOCK BL1 WITH FRAME TITLE TEXT-001.
SELECTION-SCREEN SKIP.
PARAMETERS: lgort1 like T001L-LGORT OBLIGATORY.
PARAMETERS: type1 like zkoe_comis-type default 'ТМЦ'.
PARAMETERS: stell1 like zkoe_comis-stell.
PARAMETERS: pernr1 like ZKOE_COMIS-pernr.
PARAMETERS: name1 like name.
SELECTION-SCREEN SKIP.
SELECTION-SCREEN END OF BLOCK BL1.

SELECTION-SCREEN BEGIN OF BLOCK BL2 WITH FRAME TITLE TEXT-002.
SELECTION-SCREEN SKIP.
PARAMETERS: stell2 like zkoe_comis-stell.
PARAMETERS: pernr2 like ZKOE_COMIS-pernr.
PARAMETERS: name2 like name.
SELECTION-SCREEN SKIP.
SELECTION-SCREEN END OF BLOCK BL2.

INITIALIZATION.

AT SELECTION-SCREEN on lgort1.
pernr_now = 0.
select * from zkoe_comis where lgort = lgort1.
if zkoe_comis-num = 1.
pernr_now = 1.
type1 = zkoe_comis-type.
stell1 = zkoe_comis-stell.
pernr1 = ZKOE_COMIS-pernr.
CONCATENATE zkoe_comis-NACHN zkoe_comis-VORNA
zkoe_comis-MIDNM into name1 SEPARATED BY ' '.
elseif zkoe_comis-num = 2.
pernr_now = 1.
stell2 = zkoe_comis-stell.
pernr2 = ZKOE_COMIS-pernr.
CONCATENATE zkoe_comis-NACHN zkoe_comis-VORNA
zkoe_comis-MIDNM into name2 SEPARATED BY ' '.
endif.
endselect.

START-OF-SELECTION.

**запись в таблицу***

AT SELECTION-SCREEN on pernr1. *name1-111*
if pernr_now = 0.
clear name1.
select single ename into name1 from pa0001
where pernr = pernr1.*name1-222(поменяли)*
endif.

AT SELECTION-SCREEN on pernr2.*name1-111(не изменилось)*
if pernr_now = 0.
clear name2.
select single ename into name2 from pa0001
where pernr = pernr2.
endif.


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, июн 05 2006, 16:41 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Пт, июн 02 2006, 14:22
Сообщения: 138
Откуда: г.Новомичуринск
Пол: Мужской
Так у тебя всё происходит на экр. 1000 ? как я понял по коду?
Извени если вдрук назойлевые вопросы. Нужно вникнуть в суть.

_________________
Не ломайте то что уже есть.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, июн 05 2006, 17:09 
Гость
Вообще-то я экран не создавал. Но видно стоит по умолчанию.


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, июн 05 2006, 17:17 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Пт, июн 02 2006, 14:22
Сообщения: 138
Откуда: г.Новомичуринск
Пол: Мужской
Попробуй изменить таблицу screen.
Тогда всё будет ОК!

_________________
Не ломайте то что уже есть.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, июн 06 2006, 07:24 
Специалист
Специалист

Зарегистрирован:
Чт, авг 19 2004, 07:31
Сообщения: 234
Откуда: Нижнекамск
я конечно мало что понял из всего написанного
но по моему в данном случае в событиях
AT SELECTION-SCREEN on pernr1.
и
AT SELECTION-SCREEN on pernr2.

надо использовать функциональный модуль
CALL FUNCTION 'DYNP_VALUES_UPDATE'
EXPORTING
dyname = sy-cprog
dynumb = sy-dynnr
TABLES
dynpfields = tab_update
EXCEPTIONS
OTHERS = 8.

соответственно заполнив tab_update


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, июн 06 2006, 08:35 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Чт, июн 16 2005, 10:29
Сообщения: 336
Откуда: Минск->Москва
Пол: Мужской
Эту функцию можно и не пользовать. Тут вся загвоздка в том что AT SELECTION-SCREEN on pernr1.
и
AT SELECTION-SCREEN on pernr2.
вызываются всегда вне зависимости от обрабатываемого поля. Решения два:
1. Использовать AT SELECTION-SCREEN ON VALUE-REQUEST FOR pernr1. и AT SELECTION-SCREEN ON VALUE-REQUEST FOR pernr2.
И там использовать свои средства поиска для обновления.
2. Использовать только один стэйтмент AT SELECTION-SCREEN.
В нем обновлять все поля каждый раз, тогда ваша проблема решиться.
Если это все для ведения вашей таблицы, то советы следующие:
- Использовать ракурсы ведения, se54 и заполнение через sm30.
- Хранить в своем справочнике только персональный номер, остальные данные по ссылке из PA*.


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

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


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

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


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

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