SAP R/3 форум ABAP консультантов
Russian ABAP Developer's Club

Home - FAQ - Search - Memberlist - Usergroups - Profile - Log in to check your private messages - Register - Log in - English
Blogs - Weblogs News

как сделать Null значение



 
Post new topic   Reply to topic    Russian ABAP Developer's Club Forum Index -> ABAP
View previous topic :: View next topic  
Author Message
Crystal_Ra
Старший специалист
Старший специалист



Joined: 12 Mar 2008
Posts: 108
Location: Белгород

PostPosted: Wed May 14, 2008 8:12 pm    Post subject: как сделать Null значение Reply with quote

Вопрос такой,
необходимо выгрузить файлик в DBF в котором поле Type I может принимать значение Null.

как это реализовать в 4.6 ???

Clear Var With Null.

Дает в итоге 0 значение, как это решить?

_________________
(SAP) Система нипель... выпускает лучше, чем впускает!

Crystal_Ra
Back to top
View user's profile Send private message
vga
Мастер
Мастер


Age: 150
Joined: 04 Oct 2007
Posts: 1218
Location: Санкт-Петербург

PostPosted: Wed May 14, 2008 8:25 pm    Post subject: Reply with quote

какой функцией выгружаете?
Back to top
View user's profile Send private message Blog Visit poster's website
Crystal_Ra
Старший специалист
Старший специалист



Joined: 12 Mar 2008
Posts: 108
Location: Белгород

PostPosted: Wed May 14, 2008 8:52 pm    Post subject: Reply with quote

пробовал WS_DOWNLOAD
_________________
(SAP) Система нипель... выпускает лучше, чем впускает!

Crystal_Ra
Back to top
View user's profile Send private message
vga
Мастер
Мастер


Age: 150
Joined: 04 Oct 2007
Posts: 1218
Location: Санкт-Петербург

PostPosted: Thu May 15, 2008 11:13 am    Post subject: Reply with quote

Как вариант, скопировать WS_DOWNLOAD в ZWS_DOWNLOAD и внести исправления. Если правильно полял, поле должно быть пустым, а не содержать слово NULL?
В месте, где идет заполение A2DBF, можете проверить тип поля и удалить ноль, оставив поле пустым. Попробовал так сделать под отладчиком, в выходном dbf 0 исчез.
Code:
        LOOP AT PRC_TEMP_A2DBF.
           APPEND PRC_TEMP_A2DBF TO A2DBF.
        ENDLOOP.
Back to top
View user's profile Send private message Blog Visit poster's website
chaka
Участник
Участник



Joined: 14 May 2008
Posts: 8

PostPosted: Tue May 20, 2008 2:38 pm    Post subject: Reply with quote

vga wrote:
Как вариант, скопировать WS_DOWNLOAD в ZWS_DOWNLOAD и внести исправления.

Просто ведь скопировать функцию не выйдет т.к. она содержит еще данные в инклюдах её группы функций. Я взял просто скопировал и как результат ничего не вышло - просто не компилируется. При копировании всей группы функций (GPAP), только с одной нужной WS_DOWNLOAD тоже возникает ошибка CONV_NUMBER вроде бы. Sad
Вопрос: как скопировать?
К сожалению никогда не работал с объектами и методами в абапе и возникает вопрос - при попытке трассировки (т.е. кнопка Отладка) в WS_DOWNLOAD не удается просмотреть выполнение кода функционального модуля. Происходит:
Code:

METHOD CLASS_CONSTRUCTOR .
...

и т.д. Дальше заходит во все встречающиеся фукциии в WS_DOWNLOAD, а последовательность выполнения самого кода проследить не удается. Есть ли возможность?
Back to top
View user's profile Send private message
vga
Мастер
Мастер


Age: 150
Joined: 04 Oct 2007
Posts: 1218
Location: Санкт-Петербург

PostPosted: Tue May 20, 2008 3:48 pm    Post subject: Reply with quote

Попробовал для проверки. Потребовалось скопировать полностью содержимое инклюда LGRAPFGL в конец нового ФМ ZWS_DOWNLOAD
и TOP инклюд LGRAPTOP в глобальные данные Z функциональной группы.
Плюс указать мессаг класс FUNCTION-POOL ZGRAP MESSAGE-ID PC.

Больше никаких телодвижений.

Чтобы ws_download отлаживался, нужно в отладчике установить галочку System debugging
Back to top
View user's profile Send private message Blog Visit poster's website
chaka
Участник
Участник



Joined: 14 May 2008
Posts: 8

PostPosted: Tue May 20, 2008 5:56 pm    Post subject: Reply with quote

Большое спасибо. Все работает. Very Happy
Back to top
View user's profile Send private message
vga
Мастер
Мастер


Age: 150
Joined: 04 Oct 2007
Posts: 1218
Location: Санкт-Петербург

PostPosted: Wed May 21, 2008 5:41 pm    Post subject: Reply with quote

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
Back to top
View user's profile Send private message Blog Visit poster's website
chaka
Участник
Участник



Joined: 14 May 2008
Posts: 8

PostPosted: Thu May 22, 2008 11:05 am    Post subject: Reply with quote

Спасибо. Я в потом так и сделал, сам скопировал, вот только не все нужные ф.м. не хватало парочку. Там действительно глобальные переменные. Потом взял все скопом скопировал в свою группу функций и заработало Very Happy
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Russian ABAP Developer's Club Forum Index -> ABAP All times are GMT + 4 Hours
Page 1 of 1

 
Jump to:  
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.