Текущее время: Вс, июл 27 2025, 08:46

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 9 ] 
Автор Сообщение
 Заголовок сообщения: изменение кода в классе vs изменение кода в простой программе
СообщениеДобавлено: Ср, июл 20 2011, 09:36 
Специалист
Специалист

Зарегистрирован:
Чт, сен 30 2010, 08:57
Сообщения: 125
Коллеги, добрый день!
Не подскажете, в чём глюк?
Меняю код в программе, где делаю простой вывод текста. Сохраняю, актвирую. Изменения отображаются.
Меняю код в классе. Тоже простой вывод текста. Сохраняю, активирую. Ноль изменений. Класс создавался копированием из другого. Уже и выходил из системы, всех выкидывал под этим логином тоже. Ноль результата.
может чего ещё надо сделать?


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: изменение кода в классе vs изменение кода в простой программе
СообщениеДобавлено: Ср, июл 20 2011, 15:06 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
sapo написал(а):
Коллеги, добрый день!
Не подскажете, в чём глюк?
Меняю код в программе, где делаю простой вывод текста. Сохраняю, актвирую. Изменения отображаются.
Меняю код в классе. Тоже простой вывод текста. Сохраняю, активирую. Ноль изменений. Класс создавался копированием из другого. Уже и выходил из системы, всех выкидывал под этим логином тоже. Ноль результата.
может чего ещё надо сделать?

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


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: изменение кода в классе vs изменение кода в простой программе
СообщениеДобавлено: Чт, июл 21 2011, 08:59 
Специалист
Специалист

Зарегистрирован:
Чт, сен 30 2010, 08:57
Сообщения: 125
Besa написал:
sapo написал(а):
Коллеги, добрый день!
Не подскажете, в чём глюк?
Меняю код в программе, где делаю простой вывод текста. Сохраняю, актвирую. Изменения отображаются.
Меняю код в классе. Тоже простой вывод текста. Сохраняю, активирую. Ноль изменений. Класс создавался копированием из другого. Уже и выходил из системы, всех выкидывал под этим логином тоже. Ноль результата.
может чего ещё надо сделать?

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

да тут загвоздка с тестом. класс вызывается независимо (обработка входящей почты), то есть не нажатием кнопки пользователем.
Code:
METHOD IF_INBOUND_EXIT_BCS~CREATE_INSTANCE.
  IF unique_instance IS INITIAL.
    CREATE OBJECT unique_instance.
  ENDIF.
  ro_ref = unique_instance.
ENDMETHOD.


дебаггер тут не запустить (мне сказали тут наши базис-специалисты). так что просто посылаю пысьмо, оно даёт мне результат такой какой необходим (в смысле тот, ради которого всё и затевалось). ответ приходит назад. а менялось лишь вот что:

было:

Code:
CONCATENATE 'System Status for:'(s01)
                    sy-sysid
                    INTO l_subject
                    SEPARATED BY space.


стало:

Code:
CONCATENATE 'System Status for тест:'(s01) sy-sysid 'тест'
                    INTO l_subject
                    SEPARATED BY space.


В итоге всё равно приходит так как "было", а не "стало".

Есть другая программа, отсылающая почту, но это не класс. Там "было" и "стало" вопросов не вызывают.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: изменение кода в классе vs изменение кода в простой программе
СообщениеДобавлено: Чт, июл 21 2011, 09:05 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3080
Откуда: Москва
А как объявлена переменная l_subject в классе?

_________________
С уважением,
Удав.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: изменение кода в классе vs изменение кода в простой программе
СообщениеДобавлено: Чт, июл 21 2011, 09:22 
Старший специалист
Старший специалист

Зарегистрирован:
Пн, авг 28 2006, 11:24
Сообщения: 292
Пол: Мужской
sapo написал(а):
Класс создавался копированием из другого.

А вы настроили, чтобы в качестве обработки использовался этот новый класс?


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: изменение кода в классе vs изменение кода в простой программе
СообщениеДобавлено: Чт, июл 21 2011, 10:47 
Специалист
Специалист

Зарегистрирован:
Чт, сен 30 2010, 08:57
Сообщения: 125
Удав написал(а):
А как объявлена переменная l_subject в классе?


Code:
l_subject      TYPE so_obj_des,


потом

IP_SUBJECT = l_subject

IP_SUBJECT type SO_OBJ_DES

потом

Code:
lo_reply_doc = cl_document_bcs=>create_document(
                        i_type = 'HTM'
                        i_text = it_content
                        i_subject = ip_subject ).


Последний раз редактировалось sapo Чт, июл 21 2011, 12:19, всего редактировалось 2 раз(а).

Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: изменение кода в классе vs изменение кода в простой программе
СообщениеДобавлено: Чт, июл 21 2011, 10:51 
Специалист
Специалист

Зарегистрирован:
Чт, сен 30 2010, 08:57
Сообщения: 125
Rokhay написал:
sapo написал(а):
Класс создавался копированием из другого.

А вы настроили, чтобы в качестве обработки использовался этот новый класс?

Да. Но уже создал 4 штуки и подключал, НО работает всё равно по-старому.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: изменение кода в классе vs изменение кода в простой программе  Тема решена
СообщениеДобавлено: Чт, июл 21 2011, 20:23 
Специалист
Специалист

Зарегистрирован:
Чт, сен 30 2010, 08:57
Сообщения: 125
Спасибо всем за участие. Разобрались. Дело было в названии ссылочного типа. Когда создаётся инстанция указывался ссылочный тип. При копировании он оставался старым. Если его поменять на новый, то всё будет как необходимо.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: изменение кода в классе vs изменение кода в простой программе
СообщениеДобавлено: Вт, авг 09 2011, 17:06 
Менеджер
Менеджер

Зарегистрирован:
Чт, янв 20 2005, 08:34
Сообщения: 573
Пол: Мужской
sapo написал(а):
дебаггер тут не запустить (мне сказали тут наши базис-специалисты).


Ошибаются ваши базис-специалисты.

Вот здесь прямо можно код изменить:
Code:
METHOD IF_INBOUND_EXIT_BCS~CREATE_INSTANCE.
  IF unique_instance IS INITIAL.
    CREATE OBJECT unique_instance.
  ENDIF.
  ro_ref = unique_instance.
ENDMETHOD.


добавив свой:

Code:
DATA lv_subrc TYPE sy-subrc.
DO.
  IF lv_subrc IS NOT INITIAL.
    EXIT.
  ENDIF.
ENDDO.


Далее:
Послать почту.
Запустить SM50.
Перевести процесс в режим отладки (меню Программа.Режим -> Программа -> Отладка).
Для выхода из цикла изменить значение переменной lv_subrc.

_________________
Волю в кулак, мышцы в узду, работай себе и не ахай!


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

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


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

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


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

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