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

Помогите с кодом! user_exit



 
Post new topic   Reply to topic    Russian ABAP Developer's Club Forum Index -> ABAP
View previous topic :: View next topic  
Author Message
kolobok
Участник
Участник



Joined: 03 Sep 2012
Posts: 29

PostPosted: Mon Oct 01, 2012 1:05 pm    Post subject: Помогите с кодом! user_exit Reply with quote

Мне нужна ваша помощь. Помогите пожалуйста.
User_exit.
В одном столбце содержатся данные, которые между собой надо прооперировать: умножить, разделить и пр.
то есть:
1 строка: 2
2 строка: 767
3 строка: 700
И вот типа нужно 2*767-700. Грубо говоря.
Я переписываю данные с каждых строк в структуры P1 like GLU2. аналогично для других строк.
То есть в каждой структуре содержатся данные по соответственным строкам. В структуре Р1 - по строке 1. И все бы ничего. Можно типа Р1-HSL001*HSL002-HSL003. Но мне нужно сделать это для каждого HSLXXX. Для каждого периода.
Запускаю
Code:
DO 16 TIMES VARYING T_MSL FROM P1-MSL001 NEXT P1-MSL002
              VARYING T_MSL FROM P2-MSL001 NEXT P2-MSL002
              VARYING T2_MSL FROM P3-MSL001 NEXT P3-MSL002
              VARYING T3_HSL FROM P4-HSL001 NEXT P4-HSL002
              VARYING R_HSL FROM R-HSL001 NEXT R-HSL002
              VARYING SNTAX FROM NTAX-HSL001 NEXT NTAX-HSL002.

B дальше работаю с T_MSL, T_MSL ...
Code:
SNTAX = - MIN * ( T_MSL - T1_MSL - T2_MSL ) / T_MSL .
  ENDDO.

а еще выборку делаю селектом в структуру Р1 (до всех этих операций):
Code:
SELECT HSL01 HSL02 HSL03 HSL04 HSL05
         HSL06 HSL07 HSL08 HSL09 HSL10
         HSL11 HSL12 HSL13 HSL14 HSL15
         HSL16 FROM ZTAXREGT INTO  NTAX
    WHERE RTAXOBJ = 'EXP03-070-05'
endselect.

Так вот. Через отладку поняла, что данные из ZTAXREGT просто напросто не записываются в Р1. Как быть?
Embarassed Embarassed Embarassed Embarassed
Back to top
View user's profile Send private message
Dmitriy
Аналитик
Аналитик


Age: 47
Joined: 14 Nov 2008
Posts: 300
Location: Russia

PostPosted: Mon Oct 01, 2012 8:32 pm    Post subject: Reply with quote

Quote:
а еще выборку делаю селектом в структуру Р1 (до всех этих операций):

Передайте данные из структуры NTAX (в которую вы выбираете данные) в P1, или сразу же в последнюю сделайте.

P.S. Лучше ещё SELECT - ENDSELECT заменить на выборку во внутреннюю таблицу с последующей её обработкой, будет быстрее работать.

_________________
ABAP/4 You
Back to top
View user's profile Send private message
kolobok
Участник
Участник



Joined: 03 Sep 2012
Posts: 29

PostPosted: Tue Oct 02, 2012 8:54 am    Post subject: Reply with quote

Dmitriy wrote:

Передайте данные из структуры NTAX (в которую вы выбираете данные) в P1, или сразу же в последнюю сделайте.


Дело в том, что NTAX - итоговая структура, в которую будет вписана сумма по периодам. Я ее вообще убрала, если честно) И сразу сумму записала в R_HSL.
Но проблема в том, что при сведении у меня суммы записываются в GLU2. А вот селекты и прога в принципе не работает).

Quote:

P.S. Лучше ещё SELECT - ENDSELECT заменить на выборку во внутреннюю таблицу с последующей её обработкой, будет быстрее работать.

Предлагаете сделать из ztaxregt выборку в itab?
Back to top
View user's profile Send private message
Shvetz
Специалист
Специалист



Joined: 05 Oct 2007
Posts: 53

PostPosted: Tue Oct 02, 2012 4:34 pm    Post subject: Reply with quote

Раз 8 прочитал - ничего не понял
Back to top
View user's profile Send private message
Dmitriy
Аналитик
Аналитик


Age: 47
Joined: 14 Nov 2008
Posts: 300
Location: Russia

PostPosted: Tue Oct 02, 2012 8:49 pm    Post subject: Reply with quote

Ещё раз, вернёмся к P1. Вы должны после (или "внутри") выборки просто передать все нужные данные в структуру Р1. А уже далее в отладчике смотреть SY-SUBRC после выборки, если не 0, то данных нет.
Quote:
а еще выборку делаю селектом в структуру Р1 (до всех этих операций):
Code:
SELECT HSL01 HSL02 HSL03 HSL04 HSL05
         HSL06 HSL07 HSL08 HSL09 HSL10
         HSL11 HSL12 HSL13 HSL14 HSL15
         HSL16 FROM ZTAXREGT INTO  NTAX
    WHERE RTAXOBJ = 'EXP03-070-05'
endselect.

Если ничего не работает, позовите уже профессионального абапера, или выложите полный код сюда.

_________________
ABAP/4 You
Back to top
View user's profile Send private message
Mania4e11o
Участник
Участник


Age: 34
Joined: 12 Dec 2011
Posts: 47
Location: Рязань

PostPosted: Tue Oct 02, 2012 11:33 pm    Post subject: Reply with quote

Ну или хотя бы название экзита напишите.
Back to top
View user's profile Send private message Blog
kolobok
Участник
Участник



Joined: 03 Sep 2012
Posts: 29

PostPosted: Wed Oct 03, 2012 9:27 am    Post subject: Reply with quote

Ребяяяятаааа! Зарааааботааааало!! Very Happy
Всем спасибо за помощь и поддержку)
Code:

 COUNTER = COUNTER + 001.
      UNPACK COUNTER TO COUNTER(3).
      CONCATENATE V_HSL_NAME(8) COUNTER  INTO V_HSL_NAME.
      ASSIGN (V_HSL_NAME) TO <FS_HSL>.
      IF GLU1-RTAXOBJ = 'EXP03-070-05'.
        <FS_HSL> =  - MIN * ( T_MSL - T1_MSL - T2_MSL ) / T_MSL .

Коллеги помогли)
надо было добавить вот это)
ну и Р1 like rtaxobj делать.
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.