Quantcast
Channel: SCN : All Content - ABAP Development
Viewing all 8332 articles
Browse latest View live

Check for raised event

$
0
0

Hello everybody.

 

I want to create a formula that uses different input profiles. The data is received from different service providers at dates that are not fixed exactly.

 

So, the idea is to raise a different event for each input file from within the download process. The function module than has to check for the event and select the appropriate input profile:

 

CASE event.

     WHEN 'A'.

       WRITE:/ 'Event A has been raised'.

     WHEN 'B'.

       WRITE 'Event B has been raised'.

   ENDCASE.

 

I tried reading the table 'BTCEVTHISTORY' using the BAPI ' BAPI_XBP_BTC_EVTHISTORY_GET'. However, the table doesn't contain any entries - allthough from within SM37 I can see the event.

 

I would appreciate any helpful suggestions...


GUI_DOWNLOAD with apostrophes

$
0
0

Hi,

I want to download an excel file but I have a problem with some texts:

 

The texts conclude apostrophes (' and ") but in the downloaded file many of the apostrophes don't exist.

How can I download an excel file in which no apostrophes are removed? Maybe with an particular codepage?

Regards Patrick

SAP Tables

$
0
0

Hi All,

I want to know the concept of Tables in SAP in simple language (for Layman) and there relation with each other, could anybody help?

ALV Report

$
0
0

Hi Gurus,

 

   In my report I want to fix some columns fixed when we scroll the horizontal scroll bar. How can I set the columns as fixed when the scroll bar is moved? I have used the fieldcatalog of type LVC_T_FCAT.

 

Points will be awarded

 

Regards

SC

Field symbol dynamically filling variable

$
0
0

Dear All,

I'm doing little experiments on field symbols , I got stuck at a point. It may be a small thing but I'm not clicking it.

scenario is  -

 

Data str1 type string,

         str2 type string.

field-symbols <fs1>,<fs2>.

do 2 times.

count = count + 1.

text1 = count.

 

CONCATENATE 'STR' text1 into text1.   " now value in TEXT1 is STR1.

condense text1.

ASSIGN TEXT1 to  <fs1>. " Now value of fs1 is STR1 (Which is a variable defined in the beging)

 

 

text2 = 'HELLO'.

 

ASSIGN TEXT2to  <fs2>. " Assinging value of text2 to <FS2>


ASSIGN <fs2> to <fs1>. " here I'm trying to assign value of fs2 which is 'HELLO' to the variable STR1, STR1 is already assigned to <FS1>



write :   \ SRT1,

          \   STR2.

 

desired O/P.

 

HELLO

HELLO

 

endloop.

Syntax error in Function Group, but no syntax error in Function Module

$
0
0

Hello Experts,

 

I encountered a function group (which I will call - ZFG) and this function group has only one function module - which I will call ZFM.

 

Now, when I go to the function group (ZFG) and do a Ctrl+F2 syntax check, I get errors and all the error messages point to the function module - ZFM. The error messages point to the first executable line of the source code of ZFM and says that it is not accessible. The second error message points to the last statement of ZFM, which is ENDFUNCTION and says ENDFUNCTION has got no open control structure starting with FUNCTION (even though the statement FUNCTION is present).

 

The surprising thing is, when I come to the function module (ZFM), and do Ctrl+F2 syntax check...SAP says - "ZFM is syntactically correct".

 

Why do I get such conflicting syntax check results?

 

I am writing a code that does syntax checks for various objects programatically. So ultimately, should my program conclude that ZFM has got syntax errors or should it conclude that it is syntactically correct?. At present, the logic that I've written in my program concludes that ZFM has got syntax errors.

Field symbol, dynamically passing value to variable

$
0
0

Dear All,

I'm doing little experiments on field symbols , I got stuck at a point. It may be a small thing but I'm not clicking it.

scenario is  -

 

_________________________________________________________________________

* Please don't consider my code , it may wrong, Kindly try to understand what I want to achieve.  

_______________________________________ _________________________________

Data str1 type string,

         str2 type string,

          text1 type string,

          text2 type string.

field-symbols <fs1>,<fs2>.

do 2 times.

count = count + 1.

text1 = count.

 

CONCATENATE 'STR' text1 into text1.   " now value in TEXT1 is STR1.

condense text1.

ASSIGN TEXT1 to  <fs1>. " Now value of <fs1> is STR1 (Which is a variable defined in the beging)

 

 

text2 = 'HELLO'.

 

ASSIGN TEXT2to  <fs2>. " Assinging value of text2 to <FS2>


ASSIGN <fs2> to <fs1>. " here I'm trying to assign value of <fs2> which is 'HELLO' to the variable STR1, STR1 is already assigned to <FS1>

                                       


write :   /  SRT1,

              /   STR2.

 

Desired O/P.

 

HELLO

HELLO

 

So basically my requirement is -

I have to fill 2 variable str1 and str2, which I want to fill on cont  = 1 and count =  2 respectively. This I can achieve by using case statement.

but in real scenario I have more than 15 variable. So I want to use field symbol.

I want to fill value of text2 in to the variale which is assign to <FS1> .

(currently I'm having - > Text2 = HELLO , <FS1> = STR1

I want ----- STR1  = TEXT2

means ---> STR1  = 'HELLO').

Is it possible or not. Otherwise I'll go with case statement.

Purchase Order

$
0
0

Hello Everybody,

 

I have created a purchase order.

 

I have created the structures of the tables of required fields.


I have written the code in SE38.


The design is made in SMARTFORMS t-code.


Every thing is syntactically correct. But I am not getting the expected output when I enter the 'ebeln' value.


thanks in advance.

 

With regards

Aditya


Vofm abap routine about

$
0
0

Hi,

 

I created new condotion type ZMHX and formulas / condotion base value number 977

but i creating condotion XKWERT value not change. Why can it be ?

rsm2.PNG

 

Condotion type procedure;

rsm1.PNG

Abap requirements 977 code;

 

FORM KOBED_977.


   sy-subrc = 4.

   if komp-kposn ne 0.

     check: komp-prsfd = 'X'.

     check: komp-kznep = space.

     if not komt1-bergl is initial.

       check: komt1-bergl = komp-bergl.

     endif.

   endif.

 

     check: komk-vsart = '01'.

   sy-subrc = 0.

 

ENDFORM.


FORM KOBEV_977.

 

sy-subrc = 0.

 

ENDFORM.

 

formulas / condotion base value code;


FORM FRM_KOND_BASIS_977.

 

DATA : zg_xkomv LIKE xkomv OCCURS 1 WITH HEADER LINE,

           palet_toplam LIKE komv-kbetr.

 

   palet_toplam = komk-zzpalet + komk-zzpalet2.

 

xkwert = palet_toplam * 1000.

 

ENDFORM.

RF Screen developments

$
0
0

This is regarding Radio frequency screens.

 

 

   Custom control, table control is not supported in RF screen development.

 

 

Currently, the screen was developed using custom control but it is not displaying in RF device hence we need to replace with input field/text field for displaying multiple lines of text

 

 

1) Currently values are coming from READ_TEXT ...how to populate this values in  multiple text/input field one after the other.

 

2) if i use a push button then how can input values change based on pressing push button values coming from read_text.

 

 

Kindly suggest the best possible solutions

sap-ABAP-MM-PO Re-Trigger

$
0
0

Hi All,

 

we are having a requirement , where the PurchaseOrder should re trigger when ever any changes are made to any fields of the PO , please suggest and help in the process if any document is available , please provide the link ....

 

thanks

Raj

RF - multiple input fields, action on ENTER

$
0
0

Hi experts,

 

have a RF dialog with 2 input fields (for material number and SSCC code).

 

Now I want to tirgger action every time I press enter button, doesn't matter in which field I am and if field 1 is filled or not.

 

At the moment (I think this is standard) action is only triggered when I'm in the last field?

 

Is this possible?

 

Thanks

Michael

BAPI / FM to update B_LAGER of EQBS

$
0
0

Hi,

 

I need to update B_LAGER field of EQBS table through IQ02. Is there any FM or BAPI to update the same.

 

Regards,

Bharti Jain

Get variable name from abap report

$
0
0

Hello

 

I have the next scenario:

- i have a GUI structure that contains some fields. These fields have to be saved in the db, but the data elements in the table have different names.Therefore i have to do a mapping between the gui field and the db field. For this i need the variable name from the gui in order to search for the gui field in the table . This has to be done dynamically.

 

For ex:

i need a method that does the next:

 

data: ls_matnr type mara.

 

call method obj->get_var_name(

          exporting

               field = ls_mara-matnr

          importing

               name = lv_var           )

 

write lv_result.

Result should be in this case "LS_MARA-MATNR"

 

 

Thank you

Need to upload and download variants of RFC

$
0
0

Hi All,

 

I need to download all the variants of RFC and then upload it again to same RFC. The upload is required after system refresh.

 

How can I achieve this.

 

Regards,

Bharti Jain


SAP saved same object/s in 2 different TRs!

$
0
0

Hello,

 

We have a custom class and working fine, well, now

 

A)  First ABAPer created 2 new methods in it hence his/her TR's entries are as below

 

Class Definition (ABAP objects) LIMU CLSD - ZCL_MY_CLASS

Private header - LIMU CPRI - ZCL_MY_CLASS

Public header - LIMU CPUB - ZCL_MY_CLASS

Method - METH - ZCL_MY_CLASS METHOD_1

Method - METH - ZCL_MY_CLASS METHOD_2

 

B) Second developer created 2 more new methods in it hence his/her TR's entries are same as above (but with METHOD_3 and METHOD_4), pl. let us know

 

1) Does CLASS DEFINATION and PUBLIC/PRIVATE headers saves for every time when ever a new method is created, hence here we are seeing two times them in A's TR and B's TR?

 

2) If so, now in this week, we want to move the Second developer's TR only, I mean, we don't want to send the first developer's TR in this week, probably we will sent it in next year, if so, is it OK/Safe?

 

3) If not safe, then pl. let us know better/safe practice

 

Thank you

ALV second selection about

$
0
0

Hi,

i use CALL METHOD O_GRID2->GET_SELECTED_ROWS but second alv selected  I_ROWINDEX[] is intial.

why this reason happing ?

1select.PNG

2select.PNG

 

*&---------------------------------------------------------------------*

*& Report  ZPLANLAMAEKRANI

*& Planma Ekranı ALV'yi iki ekranda göstermek REF : ZSD_ICL_P004

*&---------------------------------------------------------------------*

*& Mustafa Hamit

*& Bilgisayar Öğretmeni

*&---------------------------------------------------------------------*

 

REPORT  ZPLANLAMAEKRANI.

 

TABLES : LIKP.

 

DATA IT_LIKP TYPE STANDARD TABLE OF LIKP,

         IT_LIKP2 TYPE STANDARD TABLE OF LIKP,

         IT_LIKP3 TYPE STANDARD TABLE OF LIKP,

         WA_LIKP LIKE LINE OF IT_LIKP,

         STABLE TYPE LVC_S_STBL,

         I_FIELDLIKP TYPE STANDARD TABLE OF LVC_S_FCAT,"Field catalog

         GS_LAYOUT TYPE LVC_S_LAYO,

         W_VARIANT TYPE DISVARIANT,

         O_DOCKING TYPE REF TO CL_GUI_CUSTOM_CONTAINER,"Docking Container

         O_GRID TYPE REF TO CL_GUI_ALV_GRID,"Grid.

         O_DOCKING2 TYPE REF TO CL_GUI_CUSTOM_CONTAINER,"Docking Container

         O_GRID2 TYPE REF TO CL_GUI_ALV_GRID,"Grid.

         O_DOCKING3 TYPE REF TO CL_GUI_CUSTOM_CONTAINER,"Docking Container

         O_GRID3 TYPE REF TO CL_GUI_ALV_GRID,"Grid.

         I_ROWINDEX TYPE LVC_T_ROW,

         SELROWS_LINE LIKE LINE OF I_ROWINDEX.

 

DATA : BEGIN OF GT_LIKP OCCURS 0,

           VBELN LIKE LIKP-VBELN,"Teslimat No

           NTGEW LIKE LIKP-NTGEW,"Net Ağırlık

        END OF GT_LIKP.

 

DATA : BEGIN OF GT_LIKP2 OCCURS 0,

           VBELN LIKE LIKP-VBELN,"Teslimat No

           NTGEW LIKE LIKP-NTGEW,"Net Ağırlık

        END OF GT_LIKP2.

 

SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE BASLIK.

SELECT-OPTIONS SO_VBELN FOR LIKP-VBELN.

SELECTION-SCREEN END OF BLOCK B1.

*---- CLASS ALV ----*

*&---------------------------------------------------------------------*

*&  Include           ZPLANLAMAEKRAN_CLASS

*&---------------------------------------------------------------------*

 

CLASS LCL_EVENTHANDLER DEFINITION.

 

   PUBLIC SECTION.

     CLASS-METHODS:

       HANDLE_DATA_CHANGED FOR EVENT DATA_CHANGED OF CL_GUI_ALV_GRID

         IMPORTING

           ER_DATA_CHANGED

           E_ONF4

           E_ONF4_BEFORE

           E_ONF4_AFTER

           E_UCOMM

           SENDER.

 

ENDCLASS.                    "lcl_eventhandler DEFINITION

 

*----------------------------------------------------------------------*

*       CLASS lcl_eventhandler IMPLEMENTATION

*----------------------------------------------------------------------*

*

*----------------------------------------------------------------------*

CLASS LCL_EVENTHANDLER IMPLEMENTATION.

 

   METHOD HANDLE_DATA_CHANGED.

*   define local data

     DATA: LD_ANSWER(1TYPE C.

     " Triggers PAI -> required for list refresh

     CALL METHOD CL_GUI_CFW=>SET_NEW_OK_CODE

       EXPORTING

         NEW_CODE = 'REFRESH'

*        IMPORTING

*          rc       =

         .

   ENDMETHOD.                    "handle_data_changed

 

ENDCLASS.                    "LCL_EVENTHANDLER IMPLEMENTATION

*---- FORMLAR ----*

 

*&---------------------------------------------------------------------*

*&  Include           ZPLANLAMAEKRAN_FORMS

*&---------------------------------------------------------------------*

 

FORM GRID_YENILE.

 

   IF O_GRID IS NOT INITIAL .

     CALL METHOD O_GRID->REFRESH_TABLE_DISPLAY

       EXPORTING

         IS_STABLE = STABLE.

   ENDIF .

 

   IF O_GRID2 IS NOT INITIAL .

     CALL METHOD O_GRID->REFRESH_TABLE_DISPLAY

       EXPORTING

         IS_STABLE = STABLE.

   ENDIF .

 

   IF O_GRID3 IS NOT INITIAL .

     CALL METHOD O_GRID->REFRESH_TABLE_DISPLAY

       EXPORTING

         IS_STABLE = STABLE.

   ENDIF .

 

ENDFORM.                    "grid_yenile

 

*&---------------------------------------------------------------------*

*&      Form  CON1_olustur

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

FORM CON1_OLUSTUR.

 

   CREATE OBJECT O_DOCKING

     EXPORTING

       CONTAINER_NAME              = 'CON1' " Screen 1500 custom kontrol adı verilir...

     EXCEPTIONS

       CNTL_ERROR                  = 1

       CNTL_SYSTEM_ERROR           = 2

       CREATE_ERROR                = 3

       LIFETIME_ERROR              = 4

       LIFETIME_DYNPRO_DYNPRO_LINK = 5

       OTHERS                      = 6.

 

   IF SY-SUBRC EQ 0.

 

     CREATE OBJECT O_GRID

       EXPORTING

         I_PARENT          = O_DOCKING

       EXCEPTIONS

         ERROR_CNTL_CREATE = 1

         ERROR_CNTL_INIT   = 2

         ERROR_CNTL_LINK   = 3

         ERROR_DP_CREATE   = 4

         OTHERS            = 5.

 

 

     IF SY-SUBRC EQ 0.

       CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'

         EXPORTING

           I_STRUCTURE_NAME       = 'LIKP'

         CHANGING

           CT_FIELDCAT            = I_FIELDLIKP

         EXCEPTIONS

           INCONSISTENT_INTERFACE = 1

           PROGRAM_ERROR          = 2

           OTHERS                 = 3.

 

       IF SY-SUBRC EQ 0.

         W_VARIANT-REPORT = SY-REPID.

         "GS_LAYOUT-SEL_MODE = 'A'. " ALV seçim aktif olsun...

         GS_LAYOUT-ZEBRA = 'X'. " Zebra Görünümlü ALV olsun...

 

         CALL METHOD O_GRID->SET_TABLE_FOR_FIRST_DISPLAY

           EXPORTING

             IS_VARIANT                    = W_VARIANT

             I_SAVE                        = 'X'

             IS_LAYOUT                     = GS_LAYOUT

           CHANGING

             IT_OUTTAB                     = IT_LIKP

             IT_FIELDCATALOG               = I_FIELDLIKP

           EXCEPTIONS

             INVALID_PARAMETER_COMBINATION = 1

             PROGRAM_ERROR                 = 2

             TOO_MANY_LINES                = 3

             OTHERS                        = 4.

 

*----------------ALV Çoklu Seçme Açılıyor.......---------------*****

*        CALL METHOD O_GRID->SET_READY_FOR_INPUT

*          EXPORTING

*            I_READY_FOR_INPUT = 1.

*

*        CALL METHOD O_GRID->REGISTER_EDIT_EVENT

*          EXPORTING

*            I_EVENT_ID = CL_GUI_ALV_GRID=>MC_EVT_ENTER.

*

*        CALL METHOD O_GRID->REGISTER_EDIT_EVENT

*          EXPORTING

*            I_EVENT_ID = CL_GUI_ALV_GRID=>MC_EVT_MODIFIED.

*----------------ALV Çoklu Seçme Açılıyor.......---------------*****

 

       ENDIF.

 

     ENDIF.

 

   ENDIF.

ENDFORM.                    "CON1_olustur

 

*&---------------------------------------------------------------------*

*&      Form  CON2_OLUSTUR

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

FORM CON2_OLUSTUR.

 

   IT_LIKP2[] = IT_LIKP.

 

   CLEAR : WA_LIKP,IT_LIKP3.

*********bakkkkkkkkk

   LOOP AT GT_LIKP2.

     READ TABLE IT_LIKP INTO WA_LIKP WITH KEY VBELN = GT_LIKP2-VBELN.

     IF SY-SUBRC EQ 0.

       DELETE IT_LIKP2 WHERE VBELN = GT_LIKP2-VBELN.

 

       CALL METHOD O_GRID2->FREE.

 

       "PERFORM GRID_OLUSTUR USING O_GRID2 O_DOCKING2 IT_LIKP2.

 

       CREATE OBJECT O_GRID2

         EXPORTING

           I_PARENT          = O_DOCKING2

         EXCEPTIONS

           ERROR_CNTL_CREATE = 1

           ERROR_CNTL_INIT   = 2

           ERROR_CNTL_LINK   = 3

           ERROR_DP_CREATE   = 4

           OTHERS            = 5.

 

       SET HANDLER LCL_EVENTHANDLER=>HANDLE_DATA_CHANGED FOR O_GRID2.

 

       CALL METHOD O_GRID2->REGISTER_EDIT_EVENT

         EXPORTING

           I_EVENT_ID = CL_GUI_ALV_GRID=>MC_EVT_ENTER.

 

       CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'

         EXPORTING

           I_STRUCTURE_NAME       = 'LIKP'

         CHANGING

           CT_FIELDCAT            = I_FIELDLIKP

         EXCEPTIONS

           INCONSISTENT_INTERFACE = 1

           PROGRAM_ERROR          = 2

           OTHERS                 = 3.

 

       W_VARIANT-REPORT = SY-REPID.

       GS_LAYOUT-SEL_MODE = 'A'. " ALV seçim aktif olsun...

       GS_LAYOUT-ZEBRA = 'X'. " Zebra Görünümlü ALV olsun...

 

       CALL METHOD O_GRID2->SET_TABLE_FOR_FIRST_DISPLAY

         EXPORTING

           IS_VARIANT                    = W_VARIANT

           I_SAVE                        = 'X'

           IS_LAYOUT                     = GS_LAYOUT

         CHANGING

           IT_OUTTAB                     = IT_LIKP2

           IT_FIELDCATALOG               = I_FIELDLIKP

         EXCEPTIONS

           INVALID_PARAMETER_COMBINATION = 1

           PROGRAM_ERROR                 = 2

           TOO_MANY_LINES                = 3

           OTHERS                        = 4.

 

       CALL METHOD O_DOCKING2->LINK

         EXPORTING

           REPID                       = SYST-REPID

           DYNNR                       = '2000'

*      CONTAINER                   =

         EXCEPTIONS

           OTHERS                      = 4.

 

     ENDIF.

   ENDLOOP.

*********bakkkkkkkkk

 

   CREATE OBJECT O_DOCKING2

     EXPORTING

       CONTAINER_NAME              = 'CON2' " Screen 2000 custom kontrol adı verilir...

     EXCEPTIONS

       CNTL_ERROR                  = 1

       CNTL_SYSTEM_ERROR           = 2

       CREATE_ERROR                = 3

       LIFETIME_ERROR              = 4

       LIFETIME_DYNPRO_DYNPRO_LINK = 5

       OTHERS                      = 6.

 

   IF SY-SUBRC EQ 0.

 

     CREATE OBJECT O_GRID2

       EXPORTING

         I_PARENT          = O_DOCKING2

       EXCEPTIONS

         ERROR_CNTL_CREATE = 1

         ERROR_CNTL_INIT   = 2

         ERROR_CNTL_LINK   = 3

         ERROR_DP_CREATE   = 4

         OTHERS            = 5.

 

     SET HANDLER LCL_EVENTHANDLER=>HANDLE_DATA_CHANGED FOR O_GRID2.

 

     CALL METHOD O_GRID2->REGISTER_EDIT_EVENT

       EXPORTING

         I_EVENT_ID = CL_GUI_ALV_GRID=>MC_EVT_ENTER.

 

     IF SY-SUBRC EQ 0.

       CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'

         EXPORTING

           I_STRUCTURE_NAME       = 'LIKP'

         CHANGING

           CT_FIELDCAT            = I_FIELDLIKP

         EXCEPTIONS

           INCONSISTENT_INTERFACE = 1

           PROGRAM_ERROR          = 2

           OTHERS                 = 3.

 

       IF SY-SUBRC EQ 0.

         W_VARIANT-REPORT = SY-REPID.

         GS_LAYOUT-SEL_MODE = 'A'. " ALV seçim aktif olsun...

         GS_LAYOUT-ZEBRA = 'X'. " Zebra Görünümlü ALV olsun...

 

         CALL METHOD O_GRID2->SET_TABLE_FOR_FIRST_DISPLAY

           EXPORTING

             IS_VARIANT                    = W_VARIANT

             I_SAVE                        = 'X'

             IS_LAYOUT                     = GS_LAYOUT

           CHANGING

             IT_OUTTAB                     = IT_LIKP2

             IT_FIELDCATALOG               = I_FIELDLIKP

           EXCEPTIONS

             INVALID_PARAMETER_COMBINATION = 1

             PROGRAM_ERROR                 = 2

             TOO_MANY_LINES                = 3

             OTHERS                        = 4.

 

         PERFORM GRID_YENILE.

 

*----------------ALV Çoklu Seçme Açılıyor.......---------------*****

*        CALL METHOD O_GRID2->SET_READY_FOR_INPUT

*          EXPORTING

*            I_READY_FOR_INPUT = 1.

*

*        CALL METHOD O_GRID2->REGISTER_EDIT_EVENT

*          EXPORTING

*            I_EVENT_ID = CL_GUI_ALV_GRID=>MC_EVT_MODIFIED.

*----------------ALV Çoklu Seçme Açılıyor.......---------------*****

 

       ENDIF.

 

     ENDIF.

 

   ENDIF.

ENDFORM.                    "CON1_olustur

 

*&---------------------------------------------------------------------*

*&      Form  CON3_OLUSTUR

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

FORM CON3_OLUSTUR.

 

   CLEAR : WA_LIKP,IT_LIKP3.

*********bakkkkkkkkk

   LOOP AT GT_LIKP2.

     READ TABLE IT_LIKP INTO WA_LIKP WITH KEY VBELN = GT_LIKP2-VBELN.

     IF SY-SUBRC EQ 0.

       APPEND WA_LIKP TO IT_LIKP3.

 

       CALL METHOD O_GRID3->FREE.

 

       "PERFORM GRID_OLUSTUR USING O_GRID3 O_DOCKING3 IT_LIKP3.

 

       CREATE OBJECT O_GRID3

         EXPORTING

           I_PARENT          = O_DOCKING3

         EXCEPTIONS

           ERROR_CNTL_CREATE = 1

           ERROR_CNTL_INIT   = 2

           ERROR_CNTL_LINK   = 3

           ERROR_DP_CREATE   = 4

           OTHERS            = 5.

 

       CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'

         EXPORTING

           I_STRUCTURE_NAME       = 'LIKP'

         CHANGING

           CT_FIELDCAT            = I_FIELDLIKP

         EXCEPTIONS

           INCONSISTENT_INTERFACE = 1

           PROGRAM_ERROR          = 2

           OTHERS                 = 3.

 

       W_VARIANT-REPORT = SY-REPID.

       GS_LAYOUT-SEL_MODE = 'A'. " ALV seçim aktif olsun...

       GS_LAYOUT-ZEBRA = 'X'. " Zebra Görünümlü ALV olsun...

 

       CALL METHOD O_GRID3->SET_TABLE_FOR_FIRST_DISPLAY

         EXPORTING

           IS_VARIANT                    = W_VARIANT

           I_SAVE                        = 'X'

           IS_LAYOUT                     = GS_LAYOUT

         CHANGING

           IT_OUTTAB                     = IT_LIKP3

           IT_FIELDCATALOG               = I_FIELDLIKP

         EXCEPTIONS

           INVALID_PARAMETER_COMBINATION = 1

           PROGRAM_ERROR                 = 2

           TOO_MANY_LINES                = 3

           OTHERS                        = 4.

 

     ENDIF.

   ENDLOOP.

*********bakkkkkkkkk

 

   CREATE OBJECT O_DOCKING3

     EXPORTING

       CONTAINER_NAME              = 'CON3' " Screen 3000 custom kontrol adı verilir...

     EXCEPTIONS

       CNTL_ERROR                  = 1

       CNTL_SYSTEM_ERROR           = 2

       CREATE_ERROR                = 3

       LIFETIME_ERROR              = 4

       LIFETIME_DYNPRO_DYNPRO_LINK = 5

       OTHERS                      = 6.

 

   IF SY-SUBRC EQ 0.

 

     CREATE OBJECT O_GRID3

       EXPORTING

         I_PARENT          = O_DOCKING3

       EXCEPTIONS

         ERROR_CNTL_CREATE = 1

         ERROR_CNTL_INIT   = 2

         ERROR_CNTL_LINK   = 3

         ERROR_DP_CREATE   = 4

         OTHERS            = 5.

 

 

     IF SY-SUBRC EQ 0.

       CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'

         EXPORTING

           I_STRUCTURE_NAME       = 'LIKP'

         CHANGING

           CT_FIELDCAT            = I_FIELDLIKP

         EXCEPTIONS

           INCONSISTENT_INTERFACE = 1

           PROGRAM_ERROR          = 2

           OTHERS                 = 3.

 

       IF SY-SUBRC EQ 0.

         W_VARIANT-REPORT = SY-REPID.

         GS_LAYOUT-SEL_MODE = 'A'. " ALV seçim aktif olsun...

         GS_LAYOUT-ZEBRA = 'X'. " Zebra Görünümlü ALV olsun...

 

         CALL METHOD O_GRID3->SET_TABLE_FOR_FIRST_DISPLAY

           EXPORTING

             IS_VARIANT                    = W_VARIANT

             I_SAVE                        = 'X'

             IS_LAYOUT                     = GS_LAYOUT

           CHANGING

             IT_OUTTAB                     = IT_LIKP3

             IT_FIELDCATALOG               = I_FIELDLIKP

           EXCEPTIONS

             INVALID_PARAMETER_COMBINATION = 1

             PROGRAM_ERROR                 = 2

             TOO_MANY_LINES                = 3

             OTHERS                        = 4.

 

         PERFORM GRID_YENILE.

 

*----------------ALV Çoklu Seçme Açılıyor.......---------------*****

*        CALL METHOD O_GRID3->SET_READY_FOR_INPUT

*          EXPORTING

*            I_READY_FOR_INPUT = 1.

*

*        CALL METHOD O_GRID3->REGISTER_EDIT_EVENT

*          EXPORTING

*            I_EVENT_ID = CL_GUI_ALV_GRID=>MC_EVT_ENTER.

*

*        CALL METHOD O_GRID3->REGISTER_EDIT_EVENT

*          EXPORTING

*            I_EVENT_ID = CL_GUI_ALV_GRID=>MC_EVT_MODIFIED.

*

*        CALL METHOD O_GRID3->CHECK_CHANGED_DATA.

*----------------ALV Çoklu Seçme Açılıyor.......---------------*****

 

       ENDIF.

 

     ENDIF.

 

   ENDIF.

ENDFORM.                    "CON1_olustur

 

*&---------------------------------------------------------------------*

*&      Form  grid_sec_oku

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

FORM GRID_SEC_OKU.

 

   CLEAR GT_LIKP2.

 

   CALL METHOD O_GRID2->GET_SELECTED_ROWS

     IMPORTING

       ET_INDEX_ROWS = I_ROWINDEX.

 

   IF I_ROWINDEX[] IS NOT INITIAL .

     LOOP AT I_ROWINDEX INTO SELROWS_LINE.

       READ TABLE GT_LIKP INDEX SELROWS_LINE-INDEX.

       IF SY-SUBRC EQ 0.

         MOVE-CORRESPONDING GT_LIKP TO GT_LIKP2.

         APPEND GT_LIKP2.

       ENDIF.

     ENDLOOP.

   ENDIF.

 

PERFORM GRID_YENILE.

 

ENDFORM.                    "grid_sec_oku

 

*&---------------------------------------------------------------------*

*&      Form  grid_olustur

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

*      -->O_DOCKING  text

*      -->O_GRID     text

*----------------------------------------------------------------------*

FORM GRID_OLUSTUR USING O_GRID TYPE REF TO CL_GUI_ALV_GRID

                         O_DOCKING TYPE REF TO CL_GUI_CUSTOM_CONTAINER

                         IT_LIKP TYPE STANDARD TABLE OF LIKP.

   CREATE OBJECT O_GRID

     EXPORTING

       I_PARENT          = O_DOCKING

     EXCEPTIONS

       ERROR_CNTL_CREATE = 1

       ERROR_CNTL_INIT   = 2

       ERROR_CNTL_LINK   = 3

       ERROR_DP_CREATE   = 4

       OTHERS            = 5.

 

   CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'

     EXPORTING

       I_STRUCTURE_NAME       = 'LIKP'

     CHANGING

       CT_FIELDCAT            = I_FIELDLIKP

     EXCEPTIONS

       INCONSISTENT_INTERFACE = 1

       PROGRAM_ERROR          = 2

       OTHERS                 = 3.

 

   W_VARIANT-REPORT = SY-REPID.

   GS_LAYOUT-SEL_MODE = 'A'. " ALV seçim aktif olsun...

   GS_LAYOUT-ZEBRA = 'X'. " Zebra Görünümlü ALV olsun...

 

   CALL METHOD O_GRID->SET_TABLE_FOR_FIRST_DISPLAY

     EXPORTING

       IS_VARIANT                    = W_VARIANT

       I_SAVE                        = 'X'

       IS_LAYOUT                     = GS_LAYOUT

     CHANGING

       IT_OUTTAB                     = IT_LIKP

       IT_FIELDCATALOG               = I_FIELDLIKP

     EXCEPTIONS

       INVALID_PARAMETER_COMBINATION = 1

       PROGRAM_ERROR                 = 2

       TOO_MANY_LINES                = 3

       OTHERS                        = 4.

 

ENDFORM.                    "grid_olustur

 

 

*------------------------------------------------------------------------------------------------*

INITIALIZATION.

   BASLIK = 'Teslimat Seç - Kamyonlaştır.'.

*------------------------------------------------------------------------------------------------*

AT SELECTION-SCREEN OUTPUT.

 

*------------------------------------------------------------------------------------------------*

AT SELECTION-SCREEN.

   IF SO_VBELN IS INITIAL.

     MESSAGE 'Teslimat no girilmedi...' TYPE 'E'.

   ENDIF.

 

*------------------------------------------------------------------------------------------------*

START-OF-SELECTION.

   SELECT * FROM LIKP INTO TABLE IT_LIKP WHERE VBELN IN SO_VBELN.

   IF SY-SUBRC NE 0.

     MESSAGE 'Teslimat Seçilemedi' TYPE 'I'.

   ENDIF.

*------------------------------------------------------------------------------------------------*

END-OF-SELECTION.

   CALL SCREEN 1500.

*------------------------------------------------------------------------------------------------*

 

 

*&---------------------------------------------------------------------*

*&      Module  STATUS_1500  OUTPUT

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

MODULE STATUS_1500 OUTPUT.

   SET PF-STATUS 'ZMUSTI'.

   SET TITLEBAR 'Mustafa Hamit'.

 

   PERFORM CON1_OLUSTUR.

 

   CLEAR LIKP-NTGEW.

 

   LOOP AT IT_LIKP INTO WA_LIKP.

*GT_LIKP doldur ve toplam tonaj bul.....

     GT_LIKP-VBELN = WA_LIKP-VBELN.

     GT_LIKP-NTGEW = WA_LIKP-NTGEW.

     LIKP-NTGEW = LIKP-NTGEW + WA_LIKP-NTGEW.

*GT_LIKP doldur ve toplam tonaj bul.....

     APPEND GT_LIKP.

 

   ENDLOOP.

 

 

ENDMODULE.                 " STATUS_1500  OUTPUT

*&---------------------------------------------------------------------*

*&      Module  USER_COMMAND_1500  INPUT

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

MODULE USER_COMMAND_1500 INPUT.

 

O_GRID->CHECK_CHANGED_DATA( ).

 

   CASE SY-UCOMM.

     WHEN 'CANCEL' OR 'EXIT'.

       LEAVE PROGRAM.

     WHEN 'BACK'.

       LEAVE TO SCREEN 0.

     WHEN 'KAMYON'.

       CALL SCREEN 2000.

   ENDCASE.

 

ENDMODULE.                 " USER_COMMAND_1500  INPUT

*&---------------------------------------------------------------------*

*&      Module  STATUS_2000  OUTPUT

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

MODULE STATUS_2000 OUTPUT.

   SET PF-STATUS 'ZMUSTI2'.

   SET TITLEBAR 'Mustafa Hamit'.

   PERFORM CON2_OLUSTUR.

   PERFORM CON3_OLUSTUR.

   PERFORM GRID_YENILE.

ENDMODULE.                 " STATUS_2000  OUTPUT

*&---------------------------------------------------------------------*

*&      Module  USER_COMMAND_2000  INPUT

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

MODULE USER_COMMAND_2000 INPUT.

 

O_GRID2->CHECK_CHANGED_DATA( ).

O_GRID3->CHECK_CHANGED_DATA( ).

 

   CASE SY-UCOMM.

     WHEN 'CANCEL' OR 'EXIT'.

       LEAVE PROGRAM.

     WHEN 'BACK'.

       LEAVE TO SCREEN 1500.

*      SET SCREEN 1500.

*      LEAVE SCREEN.

     WHEN 'SAG'.

       PERFORM GRID_SEC_OKU.

     WHEN 'SOL'.

   ENDCASE.

ENDMODULE.                 " USER_COMMAND_2000  INPUT

How to View archived renumeration data

$
0
0

Hi All,

 

We archived all the payroll results before 2010, now our client have a requirement to view the archived remuneration statement program data, My archived object is "pa_calc" i have tried to make customized program to get the archived data but couldn't succeed,Does any one have an idea how to view archived remuneration statements data?


We can view the payroll data from PC_PAYRESULT transaction code but customer needs to view archived remuneration statements data?

 

Please help as I have already searched google but didn't find any solution.

User exits ZXPADU01 ZXPADU02 not triggering

$
0
0

I am trying to implement authorization check check if user tries to display/change certain PERNR numbers PA20/PA30.

So requirement is simple:

- user enters PERNR in question

- selects IT 0002

-  clicks on Display ICON or Overview icon

- and user exit should now gets triggered where my authorization check will do its magic

 

I was of impression that user exits ZXPADU01 ZXPADU02 would be the place to do this but apparently I was wrong.

I put my break point at beginning of CASE innnn-infty. My break point does not get triggered when I select DISPLAY icon in PA20 tcode session. Even in PA30 tcode session display dose not trigger break point only SAVE option does trigger.

Any idea on how to tackle this problem.

 

thanks

Sorting issue

$
0
0

Hi experts,

                     Iam a facing a issue with soting i.e iam sorted my internal table with three field in development system it is working fine but in quality it is not sorting.

 

Please give me the suggestions on this

 

Regards,

Venkat.

Viewing all 8332 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>