Текущее время: Пн, июл 21 2025, 23:18

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 11 ] 
Автор Сообщение
 Заголовок сообщения: Проблема с замещениями в FI
СообщениеДобавлено: Вт, апр 10 2007, 10:31 
Ассистент
Ассистент

Зарегистрирован:
Пт, дек 01 2006, 18:49
Сообщения: 28
Скопировал как положено rggbs000 в zrggbs000, запустил предварительную программу генерации АБАП-кода.
Описал в OBBH замещение поля bseg-zbd1t в зависимости от некоторого условия. Указал, что замещение будет выполнять exit U930. Описал его в zrggbs000 как

FORM get_exit_titles TABLES etab.
....

exits-name = 'U930'.
exits-param = c_exit_param_none.
exits-title = text-930.
APPEND exits.
....

Вставил точку прерывания -

FORM u930.
bseg-zbd1t = '5'.

break user01.

ENDFORM.

В результате на точке останова прога выполняется,
но значение bseg-zbd1t не меняется.
Что за ерунда? Где ошибка? В чем недочет?

Спасибо.


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

Зарегистрирован:
Пт, июл 01 2005, 13:23
Сообщения: 303
Откуда: Питер
Пол: Мужской
Так попробуй:
Замешение на поле создай.
Сбрось для поля флажок в таблице GB01 чтобы оно было доступно для замещения.

Code:
exits-name  = 'zf10'.
  exits-param = c_exit_param_field.
  exits-title = text-200.             "Cons. transaction type
  APPEND exits.                       "from xref1/2

FORM zf10 USING zbd1t type bseg-zbd1t .
...
zbd1t = '5'.
Endform.



Последний раз редактировалось Preatos Вт, апр 10 2007, 11:04, всего редактировалось 1 раз.

Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Увы, так тоже ничего!
СообщениеДобавлено: Вт, апр 10 2007, 11:03 
Ассистент
Ассистент

Зарегистрирован:
Пт, дек 01 2006, 18:49
Сообщения: 28
Сделал так -

FORM ZF930 USING zbd1t TYPE bseg-zbd1t .

zbd1t = '5'.
bseg-zbd1t = '5'.
break user01.
ENDFORM.

А bseg-zbd1t не меняется. Ничего не понимаю! Ведь должно произойти замещение?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Увы, так тоже ничего!
СообщениеДобавлено: Вт, апр 10 2007, 11:07 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Пт, июл 01 2005, 13:23
Сообщения: 303
Откуда: Питер
Пол: Мужской
Peter написал(а):
Сделал так -

FORM ZF930 USING zbd1t TYPE bseg-zbd1t .

zbd1t = '5'.
bseg-zbd1t = '5'.
break user01.
ENDFORM.

А bseg-zbd1t не меняется. Ничего не понимаю! Ведь должно произойти замещение?


а вот это написал сверху в описании формы?:
Цитата:
exits-param = c_exit_param_field.


Пересоздай замещение! Сделай замещение по полю своему.
Новое создай. И в конце желательно перегенерировать замещение с помощью проги: RGUGBR00


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Да, указал, что на вход идет параметр - но увы.....
СообщениеДобавлено: Вт, апр 10 2007, 11:12 
Ассистент
Ассистент

Зарегистрирован:
Пт, дек 01 2006, 18:49
Сообщения: 28
Попробую все переделать и перегенерить.
О результатах доложу!

Спасибо.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Ерунда какая-то
СообщениеДобавлено: Вт, апр 10 2007, 14:34 
Ассистент
Ассистент

Зарегистрирован:
Пт, дек 01 2006, 18:49
Сообщения: 28
Все перегенерил, при моделировании замещения данные в структурt bseg меняются! А при запуске в рабочем режиме - ничего не происходит! -((((


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, апр 10 2007, 15:00 
Специалист
Специалист

Зарегистрирован:
Чт, ноя 23 2006, 17:37
Сообщения: 197
Откуда: Москва
Пол: Мужской
Может, подойти к вопросу еще глобальнее? :)

Code:
form get_exit_titles tables etab.

  data: begin of exits occurs 50,
          name(5)   type c,
          param     like c_exit_param_none,
          title(60) type c,
        end of exits.
...

  exits-name  = 'U100'.
  exits-param = c_exit_param_class.
  exits-title = text-100.           
  append exits.
...
  refresh etab.
  loop at exits.
    etab = exits.
    append etab.
  endloop.

endform.                    "get_exit_titles

form u100 using bool_data type gb002_015.
...
  loop at bool_data-bseg into bseg.
    bseg-zbd1t = '5'.
    modify bool_data-bseg from bseg index sy-tabix
            transporting zbd1t.
  endloop.
...
endform.     


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Хм,
СообщениеДобавлено: Вт, апр 10 2007, 15:56 
Ассистент
Ассистент

Зарегистрирован:
Пт, дек 01 2006, 18:49
Сообщения: 28
так вообще в дамп вываливается .....((


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Хм,
СообщениеДобавлено: Вт, апр 10 2007, 16:03 
Специалист
Специалист

Зарегистрирован:
Чт, ноя 23 2006, 17:37
Сообщения: 197
Откуда: Москва
Пол: Мужской
Peter написал(а):
так вообще в дамп вываливается .....((


Оппа :shock: а причины?
Проходит ли исходный текст подпрограммы?
Если нет, на какой строке стпотыкается?

Да, естественно, всё надо перегенерить, т.к. в вызывающей программе, наверняка, остался старый синтаксис вызова подпрограммы.


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

Зарегистрирован:
Пт, июл 01 2005, 13:23
Сообщения: 303
Откуда: Питер
Пол: Мужской
Paul_80 написал:
Может, подойти к вопросу еще глобальнее? :)

Code:
form get_exit_titles tables etab.

  data: begin of exits occurs 50,
          name(5)   type c,
          param     like c_exit_param_none,
          title(60) type c,
        end of exits.
...

  exits-name  = 'U100'.
  exits-param = c_exit_param_class.
  exits-title = text-100.           
  append exits.
...
  refresh etab.
  loop at exits.
    etab = exits.
    append etab.
  endloop.

endform.                    "get_exit_titles

form u100 using bool_data type gb002_015.
...
  loop at bool_data-bseg into bseg.
    bseg-zbd1t = '5'.
    modify bool_data-bseg from bseg index sy-tabix
            transporting zbd1t.
  endloop.
...
endform.     


Ну это актуально при замещении на всём документе! То что я привёл, для позиции работает! Моменты замещения разные! Сделайте так как я сказал, всё должно работать!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, апр 10 2007, 17:26 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пн, янв 24 2005, 16:22
Сообщения: 749
Пол: Мужской
При проблемах в замещениях есть главное правило, которое гласит: "Перегенерация!".
Была ситуация, когда в разных системах одно замещение добавлял (с программой), так в одной работало, но в отладчик не мог провалиться, а во второй работал отладчик, но замена не происходила. В обеих все было решено после двух шагов: (1) выход и вход в систему и (2) перегенерация модуля, пересоздание индекса навигации, перегенерация замещения (через исправление и сохранение).

_________________
Счастье есть!


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

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


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

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


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

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