Текущее время: Ср, июл 16 2025, 11:52

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


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

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


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

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