Age: 170 Joined: 04 Oct 2007 Posts: 1218 Location: Санкт-Петербург
Posted: Thu May 15, 2008 11:13 am Post subject:
Как вариант, скопировать WS_DOWNLOAD в ZWS_DOWNLOAD и внести исправления. Если правильно полял, поле должно быть пустым, а не содержать слово NULL?
В месте, где идет заполение A2DBF, можете проверить тип поля и удалить ноль, оставив поле пустым. Попробовал так сделать под отладчиком, в выходном dbf 0 исчез.
Code:
LOOP AT PRC_TEMP_A2DBF.
APPEND PRC_TEMP_A2DBF TO A2DBF.
ENDLOOP.
Как вариант, скопировать WS_DOWNLOAD в ZWS_DOWNLOAD и внести исправления.
Просто ведь скопировать функцию не выйдет т.к. она содержит еще данные в инклюдах её группы функций. Я взял просто скопировал и как результат ничего не вышло - просто не компилируется. При копировании всей группы функций (GPAP), только с одной нужной WS_DOWNLOAD тоже возникает ошибка CONV_NUMBER вроде бы.
Вопрос: как скопировать?
К сожалению никогда не работал с объектами и методами в абапе и возникает вопрос - при попытке трассировки (т.е. кнопка Отладка) в WS_DOWNLOAD не удается просмотреть выполнение кода функционального модуля. Происходит:
Code:
METHOD CLASS_CONSTRUCTOR .
...
и т.д. Дальше заходит во все встречающиеся фукциии в WS_DOWNLOAD, а последовательность выполнения самого кода проследить не удается. Есть ли возможность?
Age: 170 Joined: 04 Oct 2007 Posts: 1218 Location: Санкт-Петербург
Posted: Tue May 20, 2008 3:48 pm Post subject:
Попробовал для проверки. Потребовалось скопировать полностью содержимое инклюда LGRAPFGL в конец нового ФМ ZWS_DOWNLOAD
и TOP инклюд LGRAPTOP в глобальные данные Z функциональной группы.
Плюс указать мессаг класс FUNCTION-POOL ZGRAP MESSAGE-ID PC.
Больше никаких телодвижений.
Чтобы ws_download отлаживался, нужно в отладчике установить галочку System debugging
Age: 170 Joined: 04 Oct 2007 Posts: 1218 Location: Санкт-Петербург
Posted: Wed May 21, 2008 5:41 pm Post subject:
Chaka wrote:
Привет. Слушай я опять по поводу NULL поля. Уже замучался с ним Все получилось когда я в отладчике удалил значение, действительно создан был файл с пустым полем. Это хорошо. Начал копировать WS_DOWNLOAD в ZWS_DOWNLOAD, вроде все скопировалось, инклюды и мессаги , откопмпилил. Но при выполнении вылетает дамп ошибка в инулюде LZGRAPFGL. При вызове функции
WHEN 'R'. "// Receive
CALL FUNCTION 'GRAPH_RECEIVE'. "<<<<<<<<<<<<
TEXT = ORG_RBUFF.
Ошибка следующая: CONVT_NO_NUMBER.
Unable to interpret 0 as a number.
В коде функции. Причем у меня точная копия(как мне кажется) WS_DOWNLOAD, где вызов этой функции выполняется нормально.
Если просто в se37 этот функц. модуль GRAPH_RECEIVE выполнить, то та же ошибка. Можешь посмотреть? Скажи пожалуйста свое мнение по этому поводу.
Привет! Делай так.
1) Скопируй функциональную группу GRAP в ZGRAP
2) Когда выдаст список всех функций, которые надо перенести, выбери все. Прямо в списке, к каждой функции добавь спереди Z.
К сожалению выборочно скопировать функции не получится, потому что в интерфейсе параметры объявлены как глобальные и используются перекрестно.
3) Сначала активируй инклюды:
SAPLZGRAP
LZGRAPFGL,
потом все остальные.
4) В ZWS_DOWNLOAD замени все вызовы 'GRAPH_RECEIVE' на
'ZGRAPH_RECEIVE'.
Такие же замены сделай внутри FORM GR_SEND
'GRAPH_RECEIVE' на 'ZGRAPH_RECEIVE'.
'GRAPH_GET_RECVTAB' на 'ZGRAPH_GET_RECVTAB'
5) Из функциональной группы можете удалить ф. модули, в атрибутах которых не стоит галка у опции Global.
Вообщем, после всех махинаций остались
ZDOWNLOAD
ZGRAPH_GET_RECVTAB
ZGRAPH_RECEIVE
ZSEND_GRAPH_TAB
ZUPLOAD
ZWS_DOWNLOAD
ZWS_UPLOAD
Спасибо. Я в потом так и сделал, сам скопировал, вот только не все нужные ф.м. не хватало парочку. Там действительно глобальные переменные. Потом взял все скопом скопировал в свою группу функций и заработало
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum You cannot attach files in this forum You can download files in this forum
All product names are trademarks of their respective companies. SAPNET.RU websites are in no way affiliated with SAP AG. SAP, SAP R/3, R/3 software, mySAP, ABAP, BAPI, xApps, SAP NetWeaver and any other are registered trademarks of SAP AG. Every effort is made to ensure content integrity. Use information on this site at your own risk.