Wednesday, December 24, 2014

Hide Button or Icon in the ABAP Report



Below is the code snippet

Function  :  'RS_SET_SELSCREEN_STATUS' .


FORM remove_dynamic_sel .
  DATAt_exclude TYPE STANDARD TABLE OF sypfkey.
  APPEND 'DYNS' TO t_exclude.

  "DYNS is the dynamic selection screen function code.

  CALL FUNCTION 'RS_SET_SELSCREEN_STATUS'
    EXPORTING
      p_status  sy-pfkey
    TABLES
      p_exclude t_exclude.
ENDFORM.  

Sunday, November 30, 2014

Using Field Symbols


Field Symbols

1. Based on normal programming view. Field symbols will act like pointer.

2. Increased program performance.

Basic Used of Field Symbol






Wednesday, October 29, 2014

Dowload SAPScript Layout Code



Sometimes we need to backup or export our SAPScript code, below is the step


1. Run program RSTXSCRP througn SE38

2. Key in the FORM name, and click run button

3. Save the form with .txt extension, save the form in the desktop.

4. Now you have the SAPScript code in the txt mode




Monday, September 29, 2014

Changing Customer Master Data for Payment Term

There are situation that you need to edit the Customer Master Data in SAP.

In this situation, we want to edit the payment term in of the customer under Company Data.

Basically before you are trying to use any BAPI that changing the data, run the BAPI that get the detail from the system. As for this I'm using BAPI_CUSTOMER_GETDETAIL1.


In this BAPI you will need to enter the appropriate data to get the detail of the Customer.

Then you will get the data of that specific customer
Based on the data that you receive follow that and fill up in the BAPI_CUSTOMER_CHANGEFROMDATA1.
IMPORTANT to change the data, you need to fill up in PI_PERSONALDATA field LASTNAME, CITY, COUNTRY, COUNTRYISO, LANGUP, LANGUP_ISO, CURRENCY, CURRENCY_ISO.

And the field that you need to change (in this case we changing Payment Term). Fill up the first PI_OPT_PERSONALDATA. In that table you just need to fill up the field that you want to change (Payment Term) and also table below it PI_OPT_PERSONALDATAX.

Then fill up the SALESORG, DIVISION, DIVISION_CHANNEL and CUSTOMER No.. Then run it.
If the return is 000, then you BAPI is execute with no error and now you can check using tcode XD03.

Have Fun...!! :)



Sunday, September 7, 2014

Checking if Internal table got specific value



Reading/Checking internal table for specific value.

Below is code is best way to check whether the internal table having the value based on the key.


 READ TABLE my_items WITH KEY model im_item
             TRANSPORTING NO FIELDS.
  l_index sy-tabix.
  IF sy-subrc NE 0.
    RAISE failure.
  ENDIF


 TRANSPORTING NO FIELDS addition make its optimize way to make the program run faster perhaps.



Wednesday, April 23, 2014

How to Add Customized Filed (KOB1) Actual Cost Line Items SAP Notes 325546



This guide or how to is following SAP Note 325546.



Assumption: 

1. Enhancement on existing SMOD - COOMEP0
2. Using CI_RKPOS
3. Add ZZAUGBL (Clearing Document) customized field.

Steps:

1. Add the customized field in the CI_RKPOS structure.
2. Data Element should follow AUGBL field from BSEG.



3. Enhance the user exit EXIT_SAPLKAEP_001 (ZXKAEPU01)
4. Add line of code to read the data from table to be populated in customized field

IF i_rep_object 'OR'.
  
SELECT SINGLE  augdt augbl FROM bseg
    
INTO (cs_record-zzaugdt,cs_record-zzaugbl)
    
WHERE bukrs cs_record-bukrs
          
AND belnr cs_record-refbn
          
AND gjahr  cs_record-gjahr.
*        buzei =

  
SELECT SINGLE xblnr FROM bkpf INTO cs_record-zzxblnr
      
WHERE bukrs cs_record-bukrs AND belnr cs_record-refbn
      
AND gjahr cs_record-gjahr.
ENDIF.

5. Open SM34 to edit the view table V_TKALV.

6. Choose "Field Catalog Information"  and in change mode, add New Entries. For this customized field refer below figure.

Field Structure : KAEP_COAC
Field Name: ZZAUGBL
Field Group: 'K' - for customized field



7. Run back the program the customized should appear in the layout selection.



Tuesday, January 28, 2014

How to Find Print Program ( Sapscript )



Check table T001F and key in the program name.  The Sapscript name will be at column Form



Monday, January 27, 2014

BASIS - PRD SLOW



Below is some of the tcode i'm used to check the health of the system


SM66 Global Work Process Overview

Check SM66, to look all server status. Look for any process which took too long (TIME) to run. If proses time more than 500ms it can be considered 'slow'.



SM50 Process Over view – Client Based
To view and kill proves for single server


S37 – Background Job
View and kill active job which taken too long to process, usually report 


SM58 Transactional RFC
Look for any active RFC connection which might cause the SLOWNESS.




*will add more