Posted: Wed Dec 19, 2012 1:11 pm Post subject: Вопрос по селекционному экрану
Задача такая: есть программа для выгрузки данных в excel, нужно через селекционный экран организовать передачу номера документа в программу, и посмотреть результат в excel.
Для передачи номера использую:
Code:
DATA wa_ebeln TYPE ekpo.
SELECT-OPTIONS pa_ebeln FOR wa_ebeln-ebeln NO INTERVALS
NO-EXTENSION.
При нажатии кнопки выполнить ( F8 ) возникает следующее сообщение:
Укажите либо номер адреса, либо идент. номер адреса (handle).
Подскажите с чем это может быть связано, и как бороться?
Но вывод в excel отдельно от селекционного экрана работает, значит нужно наладить их взаимодействие, я правильно понимаю?
Я понимаю какой номер адреса, либо идент. номер адреса (handle) просит прога.
Age: 48 Joined: 25 Jan 2008 Posts: 580 Location: Москва
Posted: Wed Dec 19, 2012 2:57 pm Post subject: Re: Вопрос по селекционному экрану
polkon wrote:
При нажатии кнопки выполнить ( F8 ) возникает следующее сообщение:
Укажите либо номер адреса, либо идент. номер адреса (handle).
Подскажите с чем это может быть связано, и как бороться?
1.Перед нажатием кнопки F8 наберите в окне команд "/h"
2.Нажите F8, после этого в отладчике посмотрите, где выдается сообщение. _________________ С уважением,
Удав.
TYPES: BEGIN OF specification,
place_number TYPE ekpo-ebelp,
product_code TYPE ekpo-matnr,
product_name TYPE makt-maktx,
quantity TYPE ekpo-menge,
unit TYPE ekpo-meins,
price TYPE ekpo-netpr,
total TYPE ekpo-netwr,
currency TYPE ekko-waers,
date TYPE eket-eindt,
END OF specification.
TYPES: BEGIN OF specification2,
seller type char100,
buyer type char100,
delivery_place type char100,
supplier_code TYPE ekko-llief,
preorder_number type ekko-angnr,
confirmation_number type ekko-ihrez,
order_data type ekko-aedat,
curr type ekko-waers,
total_price type ekpo-netwr,
nds type ekpo-netwr,
END OF specification2.
TYPES specification_table TYPE TABLE OF specification.
DATA: gs_specification_table TYPE specification2.
DATA: gv_werks TYPE werks_d.
DATA:
main_table TYPE specification OCCURS 300,
main_table2 TYPE specification2 OCCURS 300,
gs_temp_ekko TYPE ekko,
temp_ekpo TYPE ekpo,
temp_lfa1_adrnr TYPE lfa1-adrnr,
temp_addr1_sel TYPE addr1_sel,
temp_addr1_val TYPE addr1_val,
temp_t001_adrnr TYPE t001-adrnr,
temp_t001w_adrnr TYPE t001w-adrnr.
DATA wa_ebeln TYPE ekpo.
PARAMETERS pa_ebeln(10) TYPE c OBLIGATORY.
START-OF-SELECTION.
Parameters:
Review as checkbox default 'X',
Print as checkbox.
SELECT SINGLE *
FROM ekko
INTO gs_temp_ekko
WHERE ebeln = pa_ebeln.
SELECT SINGLE adrnr
FROM lfa1
INTO temp_addr1_sel-addrnumber
WHERE lifnr = gs_temp_ekko-lifnr.
Здесь ошибка, но не могу понять в чем:
Code:
**---------------------------------------------------------------------------------------------------*
** Поставщик
** Отладчик выдает ошибку при работе с этим ФМ
**---------------------------------------------------------------------------------------------------*
* CALL FUNCTION 'ADDR_GET'
* EXPORTING
* address_selection = temp_addr1_sel
* IMPORTING
* address_value = temp_addr1_val.
*
* CONCATENATE gs_temp_ekko-lifnr temp_addr1_val-name1 temp_addr1_val-name2
* temp_addr1_val-name3 temp_addr1_val-name4 INTO gs_specification_table-seller SEPARATED BY space.
**---------------------------------------------------------------------------------------------------*
Age: 48 Joined: 25 Jan 2008 Posts: 580 Location: Москва
Posted: Thu Dec 20, 2012 2:47 pm Post subject:
После любых операторов SELECT необходимо проверять код возврата - переменную SY-SUBRC.
Посмотрите транзакцию ABAPDOCU, раздел "ABAP: доступы к БД - Open SQL - Считывание данных" для примера. _________________ С уважением,
Удав.
TYPES: BEGIN OF specification,
place_number TYPE ekpo-ebelp,
product_code TYPE ekpo-matnr,
product_name TYPE makt-maktx,
quantity TYPE ekpo-menge,
unit TYPE ekpo-meins,
price TYPE ekpo-netpr,
total TYPE ekpo-netwr,
currency TYPE ekko-waers,
date TYPE eket-eindt,
END OF specification.
TYPES: BEGIN OF specification2,
seller type char100,
buyer type char100,
delivery_place type char100,
supplier_code TYPE ekko-llief,
preorder_number type ekko-angnr,
confirmation_number type ekko-ihrez,
order_data type ekko-aedat,
curr type ekko-waers,
total_price type ekpo-netwr,
nds type ekpo-netwr,
END OF specification2.
TYPES specification_table TYPE TABLE OF specification.
DATA: gs_specification_table TYPE specification2.
DATA: gv_werks TYPE werks_d.
DATA:
main_table TYPE specification OCCURS 300,
main_table2 TYPE specification2 OCCURS 300,
gs_temp_ekko TYPE ekko,
temp_ekpo TYPE ekpo,
temp_lfa1_adrnr TYPE lfa1-adrnr,
temp_addr1_sel TYPE addr1_sel,
temp_addr1_val TYPE addr1_val,
temp_t001_adrnr TYPE t001-adrnr,
temp_t001w_adrnr TYPE t001w-adrnr.
DATA wa_ebeln TYPE ekpo.
PARAMETERS pa_ebeln(10) TYPE c OBLIGATORY.
START-OF-SELECTION.
Parameters:
Review as checkbox default 'X',
Print as checkbox.
SELECT SINGLE *
FROM ekko
INTO gs_temp_ekko
WHERE ebeln = pa_ebeln.
SELECT SINGLE adrnr
FROM lfa1
INTO temp_addr1_sel-addrnumber
WHERE lifnr = gs_temp_ekko-lifnr.
Здесь ошибка, но не могу понять в чем:
Code:
**---------------------------------------------------------------------------------------------------*
** Поставщик
** Отладчик выдает ошибку при работе с этим ФМ
**---------------------------------------------------------------------------------------------------*
* CALL FUNCTION 'ADDR_GET'
* EXPORTING
* address_selection = temp_addr1_sel
* IMPORTING
* address_value = temp_addr1_val.
*
* CONCATENATE gs_temp_ekko-lifnr temp_addr1_val-name1 temp_addr1_val-name2
* temp_addr1_val-name3 temp_addr1_val-name4 INTO gs_specification_table-seller SEPARATED BY space.
**---------------------------------------------------------------------------------------------------*
Делайте проверку после селектов и будете знать выбралось что то или нет ну и проверяйте чему равны те или иные переменные, вполне возможно что у вас еще при считывании поля LIFNR из таблицы EKKO пустое.
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.