• Home
  • About me
  • FALV
  • ALV Grid in the nutshell
    • Basic Information
    • Field catalog
  • Articles
    • Tricks
    • FALV (Fast ALV Grid)
    • ALV Grid in the nutshell
    • Tips
    • How to...
    • For beginners
    • Thoughts
  • By Topic
    • ALV
    • ALV OO
    • SALV
    • GOS
    • Selection screen
    • Purchase Requisitions
    • Purchase Orders
    • Attachments
    • Others
    • Characteristics
    • Sample Programs
    • ZIP
    • OLE
    • Mails
    • Routings
    • EWB
    • Excel
  • Keywords
  • RSS
  • Download
  • Home

Mass replace popup for ALV grid

Details
Łukasz Pęgiel
Tips
29 April 2014
Hits: 27878
Tags: GET_FRONTEND_FIELDCATALOG , GET_SELECTED_COLUMNS , RM_FREE_SESSION_CHECK , STARTING NEW TASK , REFRESH_TABLE_DISPLAY , CL_GUI_ALV_GRID , AT SELECTION-SCREEN OUTPUT , RS_SET_SELSCREEN_STATUS , RECEIVE RESULTS FROM FUNCTION , RS_REFRESH_FROM_SELECTOPTIONS , LVC_T_COL , LVC_T_FCAT
When using editable ALV mass replace function is needed very often, but when it comes to creating it you have to choose which from the not so perfect possibilities you should use. You can create a screen or selection-screen with all possible fields which can be used in the function (not good when you have a lot of editable fields), you can create dynamic program and submit it (not good as then you switch to the screen of generated) or you can create a FM to call selection-screen in separate task (disadvantage is that user can click on original window and hide your popup). I've used all of these possibilities but when you'd like to reuse them then third one (FM to call dynamic selection-screen in separate task) seems the best. 
 
First of all the question is why do we need separate task to call it? Well, when you call dynamic selection-screen (with parameters like (variable) ) for the first time the output is ok, but the second time you do it in the same runtime of transaction or program then the length, type and F4 help are just like for the field generated for the firs time. This is because the generated selection screen is kept in memory an called each time with same parameters, nevertheless the change of "variable". The way to omit it is to call this selection-screen in new task. This will force SAP to regenerate selection-screen each time.
Add a comment
Read more ...

GOS - How to add business documents at creation of object

Details
Łukasz Pęgiel
Tricks
25 April 2014
Hits: 62011
Tags: CL_GOS_SERVICE_TOOLS=>MOVE_LINKED_OBJECTS , CL_ALINK_CONNECTION=>FIND , CL_ALINK_CONNECTION=>INSERT , CL_ALINK_CONNECTION=>DELETE , CL_ALINK_CONNECTION=>UPDATE , CL_ALINK_CONNECTION , CL_GOS_SERVICE_TOOLS , CL_GOS_MANAGER
When you open standard transaction you may be surprised sometimes that although you're able to attach standard attachments while creating document, you're not able to attach business document at this time. It's because business documents needs to have specified an object to which it is linked and in case of GOS for standard transactions it's always called without object id (in creation mode). When you develop own transaction and you use GOS for standard or Z object then there is a possibility to omit that restriction, as during creation of GOS manager you can assign temporary object name to it. At save (or after save) you can move attachments and business documents from temporary object to final one. 
 
The question is what will happen when you'll attach business document to temporary object but you will not save the document at the end? The document itself will be kept so you have to be sure that it will be deleted next archiving run. 
 
I will show you an example on Purchase Requisition object which is used in Z-tcode.
Add a comment
Read more ...

GOS - Link Business Documents from PR to PO

Details
Łukasz Pęgiel
Tricks
25 April 2014
Hits: 21022
Tags: CL_ALINK_CONNECTION=>FIND , CL_ALINK_CONNECTION=>INSERT , CL_PO_HEADER_HANDLE_MM , CL_ALINK_CONNECTION , IF_PURCHASE_ORDER_MM , CL_PO_HEADER_HANDLE_MM->GET_GOS_MANAGER , ME_PROCESS_PO_CUST
In article Link Attachments of Purchase Requisition to Purchase Order I've shown how to link standard attachments from purchase requisition to purchase orders, but to have full set of options we also need a a method to link business documents of PR to PO. This is not so hard as we have in disposition class cl_alink_connection which allows to do such operations. Of course the time when you're copying the link depends on you, you can do it during posting of PO (as I do, to be sure that I will copy only this documents and attachments which are linked to PR's used in the PO ), you can do it after the PO is save with your some background job or you can try to insert the object directly to the GOS of purchase order.  I didn't do direct attachment to GOS of PO but as I mention in the comments of Attachments article you can connect to GOS from class CL_PO_HEADER_HANDLE_MM which contains method GET_GOS_MANAGER. You can do it for example in PROCESS_ITEM method of ME_PROCESS_PO_CUST . You'll need to get header object firstly (type ref to if_purchase_order_mm ) and then call GET_GOS_MANAGER method.
 
Anyway, I will present you the method which I used in POST method of ME_PROCESS_PO_CUST BADI. As I said, it's quite simple if you know class cl_alink_connection. Firstly we need to check if any business document is attached to PR, I will do it with method cl_alink_connection=>find. Then when we have list of all business documents we can insert link to it to PO with  cl_alink_connection=>insert.
Add a comment
Read more ...

EWB Components allocation to routing operation (multilevel BOM)

Details
Łukasz Pęgiel
How to...
18 April 2014
Hits: 47472
Tags: CP_CC_S_LOAD_COMPLEX_BY_TSK , CP_CC_S_LOAD_COMPLEX_BY_BOM , CP_CC_S_PROVIDE_ITM_BY_AS_PATH , CP_CC_S_PROVIDE_COM_BY_OPR , CP_CL_P_OPR_ALLOCATION_PROVIDE , CM_CL_P_COM_DELETE , CP_CC_S_SAVE , CP_CC_S_OPR_PROVIDE_BY_MTK , CP_CC_S_CREATE_COM
This topic was raised many times, I always found it's not possible to (or at least to hard to try) to update components allocation for routing operations. Fortunately I had to do it somehow and I manage to do it in two ways : 
1) with BDC (yeah I know, creepy but possible)
2) using EWB FM's basing on the SAP note 488765 - "Do it yourself EWB programming".
Today I will present program which is using EWB, in future I will post an example of doing this by BDC.
 
 
This program reads data from Excel file with proper structure (you can find Excel template in attachment). After reading data it collects all routings which needs to be updated to be sure that each routing is updated only once. Then the most important part is done in following way:
1) We need to load each routing and connected BOM to memory with CP_CC_S_LOAD_COMPLEX_BY_TSK and CP_CC_S_LOAD_COMPLEX_BY_BOM,
2) Next step is to get the BOM into internal table using CP_CC_S_PROVIDE_ITM_BY_AS_PATH.  BOM table contains also a explosion of sub-assemblies which are not phantoms which at the beginning seem to be useless, but after a while you'll notice that we need all levels of multilevel BOM in order to calculate Path (PLMZ-KANTE) and order level (PLMZ-STLST).  If you have to do components allocation for single level BOM then reworking the table is not needed, but in my example I did it as I needed to allocate components from multi-level BOM. You'll find here a form ITEM_CHECK which do the manipulation of the table. 
3) After it's done we need load operation data (CP_CC_S_PROVIDE_COM_BY_OPR) and current allocation of components (CP_CL_P_OPR_ALLOCATION_PROVIDE). We need to do it in order to delete current allocation.
4) Deletion is done with CM_CL_P_COM_DELETE and saved with CP_CC_S_SAVE. Deletion is committed as in other case there is no possibility to create new allocation.
5) Allocation is deleted, so we can now recreate it with new values. Firstly we need to reload again operation data to memory with CP_CC_S_OPR_PROVIDE_BY_MTK and then create allocation with  CP_CC_S_CREATE_COM. Again we need to save allocation with CP_CC_S_SAVE.
 
Bellow you'll find the code of the program. You can download also NUGG file for it!.
 
Program works in two steps, firstly it displays reading log, if it is ok you have to press first button on the toolbar  to create allocation.
Add a comment
Read more ...

ESDUS, ESRUO - MM settings table - Part 3/3

Details
Łukasz Pęgiel
Tricks
14 April 2014
Hits: 28019
Tags: ES_READ_USER_OBJECTS , ES_APPEND_USER_OBJECTS , ES_READ_USER_SETTINGS , ES_APPEND_USER_SETTINGS , ES_DELETE_USER_OBJECTS , ES_SAVE_USER_OBJECTS , ES_SAVE_USER_SETTINGS , ES_DELETE_USER_SETTINGS , ESDUS , ESRUO
As we got a short description of ESDUS and ESRUO and connected FMs in previous parts, then now it's time for examples. Let's start with scenarios which I described in first part
 
1. When you open one of the MM t-codes like ME22N, ME51N or MIGO you see that always you got on the screen one of the latest open document there. Sometimes not last but one of the lasts and you want to make it always last.
 
To be sure you get last document you have to select data from ESRUO table directly, sort it by timestamp and get last object. Then update setting of default document for transaction, in my example for ME52N/53N/54N.

data: fs_esruo type esruo.
data: ft_esruo type standard table of esruo.
data: f_active type esdus-active.
data: ft_esduscom type standard table of esduscom.  

select * into corresponding fields of table ft_esruo
  
from esruo
  
where uname eq sy-uname
  and   object_typ eq 'BUS2105'.
  
  
sort ft_esruo by timestamp descending.
  read table ft_esruo index 1 into fs_esruo.
  concatenate fs_esruo-object_id 'A' into f_active.

call function 'ES_READ_USER_SETTINGS'
  exporting
    iaction       = 'MEPO'
*   IUNAME        = IUNAME
*   IDB           = IDB
*   ILIKE         = ILIKE
  tables
    iesdus        = ft_esduscom
   
.

call function 'ES_DELETE_USER_SETTINGS'
 exporting
  iaction        = 'MEPO'
  ielement       = 'Application         Req_Process'
*  iactive        =
*  IUNAME          = IUNAME
*  isave           = 'X'
* TABLES
*   IESDUS          = IESDUS
 exceptions
   not_found       = 1
   others          = 2
          .
if sy-subrc eq 0.

endif.

call function 'ES_APPEND_USER_SETTINGS'
exporting
  iaction        = 'MEPO'
  ielement       = 'Application         Req_Process'
  iactive        = f_active
*   IUNAME         = IUNAME
  isave          = 'X'
* TABLES
*   IESDUS         = IESDUS
  .

Add a comment
Read more ...

ESDUS, ESRUO - MM settings table - Part 2/3

Details
Łukasz Pęgiel
Tricks
09 April 2014
Hits: 16358
Tags: ES_READ_USER_OBJECTS , ES_APPEND_USER_OBJECTS , ES_READ_USER_SETTINGS , ES_APPEND_USER_SETTINGS , ES_DELETE_USER_OBJECTS , ES_SAVE_USER_OBJECTS , ES_SAVE_USER_SETTINGS , ES_DELETE_USER_SETTINGS , ESDUS , ESRUO
ESRUO table and FM which takes care about reading/adding/deleting entries there was described in previous part ( ESDUS, ESRUO - MM settings table - Part 1/3 ), so now is the turn for ESDUS table and SETTINGS FMs.
 

ESDUS table keeps parameters mostly for MM transactions, here is the list of t-codes for which I found some entries inside ESDUS:

- IA05
- MB24
- MB25
- MB51
- MB52
- MB59
- MB5TD
- ME21N
- ME22N
- ME23N
- ME25
- ME2K
- ME32K
- ME3K
- ME51N
- ME52N
- ME53N
- ME54N
- ME55
- ME56
- ME57
- ME58
- ME5A
- ME5F
- ME5K
- ME5W
- ME80AN
- ME80FN
- ME80RN
- MIGO
- MIRO
- ML81N
- SA38
- SE38

As you see the list contains some important transactions and knowing about ESDUS can help a bit in the life of abaper.
Add a comment
Read more ...

ESDUS, ESRUO - MM settings table - Part 1/3

Details
Łukasz Pęgiel
Tricks
01 April 2014
Hits: 30428
Tags: ES_READ_USER_OBJECTS , ES_APPEND_USER_OBJECTS , ES_READ_USER_SETTINGS , ES_APPEND_USER_SETTINGS , ES_DELETE_USER_OBJECTS , ES_SAVE_USER_OBJECTS , ES_SAVE_USER_SETTINGS , ES_DELETE_USER_SETTINGS , ESDUS , ESRUO

Let's discus following scenarios with MM standard transactions:

  1. When you open one of the MM t-codes like ME22N, ME51N or MIGO you see that always you got on the screen one of the latest open document there. Sometimes not last but one of the lasts and you want to make it always last.

  2. You create MM documents using BAPI and you want that next time you open MM t-code which is used to display/edit this document then your document appears on the screen (of course if in the meantime user haven't created anything new)

  3. You have created your own transaction to handle standard process, like creation of purchase orders or purchase requisitions. This transaction is used only in some special occasion like only in case of account assignment category is equal to 'A'. In such case for all documents which are created by your Z-transaction you've set up in user-exit that when standard transaction is called, then you leave it to your Z-transaction. In this case often MM transactions remembers last opened document, which was created by Z-transaction and at each run it will leave to it, so you want to clear the info about last called document from standard t-code.

  4. You want to clear some default settings for the user (or set them) for standard t-code. This could be default value for some fields or toggle status of the section (for example header always expanded, items always collapsed. 

In all of this cases you'll want to look at tables:
  • ESRUO (MM: Recently Used Objects)
  • ESDUS (MM: Dynamic User Settings) 
and to function group MLSO which provides you few nice FM to handle entries in this tables: 
  • ES_READ_USER_OBJECTS
  • ES_APPEND_USER_OBJECTS
  • ES_DELETE_USER_OBJECTS
  • ES_SAVE_USER_OBJECTS
  • ES_READ_USER_SETTINGS
  • ES_APPEND_USER_SETTINGS
  • ES_SAVE_USER_SETTINGS
  • ES_DELETE_USER_SETTINGS
Add a comment
Read more ...

Enhanced MB51 Part 6 - ZMB51 program

Details
Łukasz Pęgiel
Tricks
28 March 2014
Hits: 24998
Tags: MB51 ENHANCEMENT , RM07DOCS , REUSE_ALV_FIELDCATALOG_MERGE , REUSE_ALV_GRID_DISPLAY , REUSE_ALV_VARIANT_F4 , SAPGUI_PROGRESS_INDICATOR , K_KKB_SELECTIONS_READ , GET_GLOBALS_FROM_SLVC_FULLSCR
We have all needed methods and implicit enhancement is also created so we can create a program to call MB51. We have to create a structure for ALV and include in it type t_list from our class which I've called  zab_mb51_call so you should be able to replace it with your own name fast. In my example I will add only few fields beside the one found in MB51, but you can choose as many as it's needed. 

types: begin of t_alv.
        include type t_list.
types: dispo like marc-dispo,
       ekgrp like marc-ekgrp,
       verid like blpk-verid,
       spart like mara-spart,
       bklas like mbew-bklas,
       rows type epsssrows,
       vendor_name type mepo_vendor,
       grtxt like t157e-grtxt,
       xabln like mkpf-xabln,
       bldat type mkpf-bldat,
      end of t_alv.

Selection-options which are the same as in MB51 should be coded with the same names so we can pass them to RM07DOCS by method call_mb51_static.
I used REUSE_ALV here just to be able to do it faster, but ALV OO can be used as well as SALV. If you copy the code bellow and you'll have problems with excel export, then you'll have ot remove it or install to your SAP abap2xlsx classes which I used in this function.
 
Program runs in following sequence:
  1. If one of the additional select-options is used then it does preselection and manipulates select-options passed to MB51
  2. Call of MB51
  3. Import of results and additional selection done on a base of the result table
  4. Output display
In attachments you'll find NUGG files for class and program.
Add a comment
Read more ...

Enhanced MB51 Part 5 - Export from MB51

Details
Łukasz Pęgiel
Tricks
28 March 2014
Hits: 9977
Tags: RM07DOCS , MB51 ENHANCEMENT , MB51 , EXPORT TO MEMORY ID
I can already call MB51 from previously created method but still I need to add an implicit enhancement into RM07DOCS so I'll be able to export results from MB51 and leave the program without displaying them. Enhancement must be done at the end of form process_list. 
 
 
I'll create a method to do the export inside MB51 with only one changing parameter, which will check if we're calling MB51 from our class and if yes then it will copy results of MB51 to memory and leave the program.

it_list type any table

Add a comment
Read more ...

Enhanced MB51 Part 4 - Call MB51

Details
Łukasz Pęgiel
Tricks
27 March 2014
Hits: 14809
Tags: MB51_NOLIST , MB51_FLAG , MB51 , RM07DOCS
I've got method to get selection screen parameters to table so I can call MB51 by submitting program RM07DOCS. Of course if I do that without any changes of parameters then I would get not this list which I want (ALV kind) and MB51 would display its results on screen. That's why I need to export to memory some flags, first two must be set to be able to achieve form process_list in RM07DOCS and to get the output table for ALV, last one is my own flag which I will use in implicit enhancement to check if I should proceed with my own code and close MB51 after I'll get the results.
  • export no_list from m_flag to memory id 'MB51_NOLIST'. 

  • export flag from m_flag to memory id  'MB51_FLAG'.

  • export flag from m_flag to memory id 'ZMB51_FULLLIST_EXPORT'.

After submitting MB51 I'm importing results to table mt_list which is used then to move data into corresponding fields of ct_list.
  • import export to mt_list from memory id 'ZMB51_FULLLIST_EXPORT'.
Add a comment
Read more ...

Enhanced MB51 Part 3 - Get selection parameters

Details
Łukasz Pęgiel
Tricks
27 March 2014
Hits: 8348
Tags: RS_REFRESH_FROM_SELECTOPTIONS , MB51 , RM07DOCS
As I have needed types I can start to create methods which I need. Firstly fast method the read select-option data from any program which will call our class. I will use here FM RS_REFRESH_FROM_SELECTOPTIONS . If you're thinking about it's restrictions to keep only 40 characters from screen parameters then please check your system as for some of the new versions this FM contains a table parameter of structure RSPARAMSL_255 which allows to store up to 255 characters.
 
Importing:

i_progname type sy-repid

Changing:

it_seltab type rsparams_tt

Implementation:

method get_selection_screen_criteria.

    call function 'RS_REFRESH_FROM_SELECTOPTIONS'     
    exporting
      curr_report     = i_progname
    
tables
      selection_table = it_seltab
    
exceptions
      not_found       = 1
      no_report       = 2
      others          = 3.
    case sy-subrc.
    when 0.
    when 1.
      "raise not_found.
    when 2.
      "raise no_report.
    when others.
      "raise other_error.
    endcase.

endmethod.

Add a comment
Read more ...

Enhanced MB51 Part 2 - Structure for data

Details
Łukasz Pęgiel
Tricks
27 March 2014
Hits: 13106
Tags: MB51 , MB51 ENHANCEMENT , RM07DOCS
I've decided which way should I go, so now time to do it. I need to do following things to get what I desired:
  • Create a function group or class to be able to reuse the solution in other programs also
  • Create implicit enhancement in MB51 to be able to export it's results and stop MB51 if it's called from outside
  • Create a program with selection screen fields from MB51 + my own desired additional filters. This program should call standard MB51 and display some additional fields in ALV Grid.
I prefer to create a class in which I will store all needed methods to call MB51 with selection-options filled and to get back the results. 
 
I will need a type for the structure which will be used as a base type to all copy / move functions from MB51 to class and program. Bellow you'll find a type t_list which contains most of the fields which are available in MB51 (structure list in RM07DOCS). Just after t_list you'll find type tt_list which is just table type for t_list.
Add a comment
Read more ...

Enhanced MB51 Part 1 - Goal and prerequisites

Details
Łukasz Pęgiel
Tricks
24 March 2014
Hits: 27894
Tags: MMIM_REP_CUST , MB51 , MB51 ENHANCEMENT , RM07DOCS
It think that some of you involved in MM or PP had already a request or need to add some fields to MB51 or to call it directly with ALV grid instead of old style view. I also had such request and it contained both needs - additional fields and direct display of ALV grid. So I started to dig and debug to see what is possible to do and these possibilities I found:
  1. Copy program RM07DOCS (MB51) to Z-one and to the changes there - but I don't like such solutions so I didn't want to do that way
     
  2. Create own program which selects data from MKPF and MSEG and display it like MB51 do - but this would be to time consuming to prepare same logic like in MB51 and in case of any changes in oryginal transaction I would need to adjust program again
     
  3. Do implicit enhancement in RM07DOCS to add missing fields to the field catalog and then fill them during the call of MB51 - this would solve the first part of the request but users will have to do additional two clicks to go to ALV grid which as you may know already is sometimes to much :) Nevertheless if someone of you would like to go this way then you should do two implicit enhancements in RM07DOCS:
    Add a comment
Read more ...

Reset rejection of Purchase Requisition

Details
Łukasz Pęgiel
How to...
24 March 2014
Hits: 18872
Tags: IF_PURCHASE_REQUISITION , IF_RELEASABLE_MM , MEPO_DOCUMENT , MEREQ_GET_FACTORY , IF_PURCHASE_REQ_FACTORY , IS_RESET_REJ_ALLOWED
As promised today I'll put code for a method to reset the rejection of the Purchase requisition. Most of the code is the same like in the check method, in fact even the code is repeated again so you can use this one without checking if reset of rejection can be done or not.
 
Importing:

I_BANFN TYPE EBAN-BANFN -> Purchase Requistion number

Changing:

C_FACTORY TYPE REF TO IF_PURCHASE_REQ_FACTORY -> Purchase requisition factory

Exporting:

E_RESET TYPE FLAG -> Reset was successful

Exceptions:

HEADER_COULDNT_BE_CREATED
ERROR_DURING_RESET
CANNOT_RESET

Add a comment
Read more ...

More Articles ...

  1. Other checks on purchase requisition state
  2. How to check if for purchase requisition rejection can be reset?
  3. Range to search in lower case fields
  4. Characteristic's own input screen - Part 8 - example of use
  5. Characteristic's own input screen - Part 7 - save characteristic value to database
  6. Characteristic's own input screen - Part 6 - move reference data to bapi structures
  7. Characteristic's own input screen - Part 5 - show characteristic's own update screen
  8. Characteristic's own input screen - Part 4 - Move screen values to reference data
  9. Characteristic's own input screen - Part 3 - Move reference data values to screen
  10. Characteristic's own input screen - Part 2 - Clear Initial Line
Page 7 of 11
  • Start
  • Prev
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • Next
  • End


Łukasz Pęgiel
ABAP STRUCTDESCR SET SELECTED ROWS ALV GRID FILL MDLB FROM EBAN PROCESS CUST LVC FCAT ZDEMO FALV06 - Grid Layout settings Mark field COPY TSK CTMS DDB VAL OBJECT RESET REL ALLOWED Delete Routing - piece of cake AT SELECTION-SCREEN OUTPUT RSBCS EXAMPLE EMAIL SAVE USER OBJECTS SBCS SEND F4IF START VALUE REQUEST GUI ALV GRID RSDBRUNT COC1 FEATURE CHECK Unlock yourself on the DEV system ALV Grid in the nutshell Field catalog - no sign OPR ALLOCATION PROVIDE GET GLOBALS SLVC FULLSCR CMD API FIELDCATALOG SE41 MB51 ENHANCEMENT DELETE ABAP HTML BINARY RELATION GTREAD LINKS BINRELS ADT ALV GRID IN THE NUTSHELL GOS MANAGER HTML VIEWER BAPI OBJCL CHANGE CHART ENGINE APPEND SETTINGS CALL TRANSFORMATION SAPGUI PROGRESS INDICATOR OUTPUTLEN SELECTION-SCREEN FUNCTION KEY Downloading Exchange Rates from NBP National Bank of Poland Field catalog - rollname BATTLESHIPS CVAPI DOC GETDETAIL Field catalog - fix column
  • Laserowe usuwanie blizn Tychy
  • Laserowe usuwanie zmarszczek Tychy
  • Salon Kosmetyczny Tychy
  • Trycholog Tychy
  • Wypadanie włosów Tychy
Tweets by abapblog

Eclipse Plugins for ABAP

ABAP Favorites

Drag to your running Eclipse* workspace. *Requires Eclipse Marketplace Client

ABAP ADT Extensions

Drag to your running Eclipse* workspace. *Requires Eclipse Marketplace Client

ABAP Quick Fixes

Drag to your running Eclipse* workspace. *Requires Eclipse Marketplace Client

 

Latest Articles

  • ABAP in Eclipse - Install, Configure, Use, and Enhance Your ADT
  • ALV Grid in the nutshell: Field catalog - col_id - ALV control: Column ID
  • ALV Grid in the nutshell: Field catalog - dfieldname – Fieldname for column group
  • ALV Grid in the nutshell: Field catalog - Hotspot - ALV control: SingleClick-sensitive
  • ALV Grid in the nutshell: Field catalog - sp_group - Group key
  • ALV Grid in the nutshell: Field catalog - domname - Domain name
  • ALV Grid in the nutshell: Field catalog - reprep - ALV control: Value is selection criterion for rep./rep.intf.
  • ALV Grid in the nutshell: Field catalog - reptext – Heading
  • ALV Grid in the nutshell: Field catalog - lowercase - Lowercase letters allowed/not allowed
  • ALV Grid in the nutshell: Field catalog - intlen - Internal Length in Bytes
  • Downloading Exchange Rates from NBP (National Bank of Poland)
  • Downloading Exchange Rates from Central Bank of Turkey
  • ABAP Extensions - Automatic Logon
  • ALV Grid in the nutshell: Field catalog - inttype - ABAP data type (C,D,N,...)
  • ALV Grid in the nutshell: Field catalog - datatype

Most Read

  • Create XLSX/MHTML file from internal table in background
  • Refresh ALV GRID and keep position and current cell
  • Create XLSX file from internal table in background v2
  • FALV (Fast ALV Grid)
  • ATC Pseudo Comments list
  • Call standard F4 search help with customized parameters
  • Dynamic GUI STATUS & TITLE with ABAP code
  • Create fieldcatalog from internal table
  • Link Attachments of Purchase Requisition to Purchase Order
  • GOS - How to add business documents at creation of object
  • Endless loop in BADI ME_PROCESS_PO_CUST
  • Create a nice looking chart with CL_GUI_CHART_ENGINE - Part 3 - Chart Data and render
  • How to access private or protected data and methods of CL_GUI_ALV_GRID
  • Subtotal lines of ALV GRID OO as content separator
  • Popup with multi-select ALV
feed-image Feed Entries

Latest Comments

ABAP code and articles provided on http://abapblog.com, if it is not statet otherwise, were created by Łukasz Pęgiel. You can use the code in your SAP instance for commercial and non-commercial use without any warranty from side of the author. You cannot sell the code as a full program or a part of it.
Replicating of the articles and code is prohibited unless the agreement of the author is given to you. 

Bootstrap is a front-end framework of Twitter, Inc. Code licensed under MIT License. Font Awesome font licensed under SIL OFL 1.1.