ABAP Prog'ing

Gurus,
  I want to write Transformation/Update routines in ABAP,
  for that i would like to learn ABAP which is enough to
  write the routines but not every aspect of ABAP
  language. Could someone please suggest a good book or
  send material on ABAP.
  I appreciate your help in advance...
Thanks All,
Novice
Message was edited by: Novice

hai check this,
www.sapgenie.com
www.sapdomain.com
www.sap-img.com
and check in the book...
Interlli group material, where in one chapter u will get the ur info. though content is less , it is useful..
u can get what is what??
Regards
Ramakrishna S

Similar Messages

  • HOW TO IMPROVE THE PERFORMANCEOF THE ABAP PROG

    HI ... CAN I IMPROVE OF THE PROG
                                          WHAT ARE STEPS CAN I TAKE.
                                          HOW CAN I CHECK THE PERFORMANCE

    Hi Srinu
    Some of my favs at SDN,
    SAP Network Blog: Welcome to the Performance Forum!
    /people/joerg.nalik/blog/2005/08/04/welcome-to-the-performance-forum
    SAP Network Blog: Analyzing performance problems on a production system
    /people/markus.kohler/blog/2006/09/14/analyzing-performance-problems-on-a-production-system
    SAP Network Blog: Performance improvement hints: date, time, timestamps
    /people/harry.dietz/blog/2005/10/11/performance-improvement-hints-date-time-timestamps
    SAP Network Blog: Performance of Nested Loops
    /people/rob.burbank/blog/2006/02/07/performance-of-nested-loops
    SAP Network Blog: Performance improvement hints 4: loop at itab where...
    /people/harry.dietz/blog/2005/11/03/performance-improvement-hints-4-loop-at-itab-where
    SAP Network Blog: Query Performance, Pareto, Goldratt's TOC & Me
    /people/vikash.agrawal/blog/2006/11/15/query-performance-pareto-goldratt146s-toc-me
    SAP Network Blog: Query Performance – Is "Aggregates" the way out for me?
    /people/vikash.agrawal/blog/2006/04/17/query-performance-150-is-aggregates-the-way-out-for-me
    SAP Network Blog: Performance Tuning - an overlooked activity
    /people/hema.rao/blog/2006/09/25/performance-tuning--an-overlooked-activity
    SAP Network Blog: Performance improvement hints 3: internal table - fill and read
    /people/harry.dietz/blog/2005/10/28/performance-improvement-hints-3-internal-table--fill-and-read
    SAP Network Blog: When Old Data Affects Performance. And When Not.
    /people/helmut.stefani/blog/2006/02/13/when-old-data-affects-performance-and-when-not
    SAP Network Blog: Getting Through the Maze of Query Performance Improvement–a Quantitative Approach
    /people/vikash.agrawal/blog/2006/10/19/getting-through-the-maze-of-query-performance-improvement150a-quantitative-approach
    SAP Network Blog: Using Field Symbols in Loop Statements - Performance Boost?
    /people/rich.heilman2/blog/2006/03/07/using-field-symbols-in-loop-statements--performance-boost
    SAP Network Blog: Query Optimization
    /people/prakash.darji/blog/2006/01/26/query-optimization
    SAP Network Blog: Internal table - fill and read: how to measure
    /people/harry.dietz/blog/2005/12/12/internal-table--fill-and-read-how-to-measure
    SAP Network Blog: Query Creation Checklist
    /people/prakash.darji/blog/2006/01/27/query-creation-checklist
    SAP Network Blog: Simple ABAP Benchmark
    /people/sergio.ferrari2/blog/2006/01/18/simple-abap-benchmark
    SAP Network Blog: The power of the "Code Inspector"
    /people/community.user/blog/2006/11/30/the-power-of-the-147code-inspector148
    SAP Network Blog: Parallel Processing in ABAP
    /people/naresh.pai/blog/2005/06/16/parallel-processing-in-abap
    SAP Network Blog:
    /people/nitzan.levi/blog/2004/10/03/code-review-150-it146s-a-kind-of-magic
    SAP Network Blog: Writing Optimized query-Basic
    /people/puru.govind/blog/2006/09/21/writing-optimized-query-basic
    SDN WIKI
    https://wiki.sdn.sap.com/wiki/display/HOME/ABAPPerformanceand+Tuning
    Regards
    Kathirvel

  • GETWA_NOT_ASSIGNED error while running abap prog in process chain

    Hi.
    I am getting a runtime error GETWA_NOT_ASSIGNED while running an ABAP program in process chain.
    But when i execute pro in SE38 , it's not giving any error.
    Please any one can suggets what will be error.

    Hi,
      i also used to get error for a program executed through process chain but when it is executed in se38 it used to work... that is because my program try to access a application server folder and reads the file from there... the authorisation to this is not proper through process chain ..... once authorisation to the folder was given properly .. i am able to run...
      Such things can happen in your case also... Try to analyse the dump in st22.... what happened ...
    Regards
    vamsi

  • Creating MS- Access data base from the Internal tables data of an ABAP Prog

    Hi,
    I have a requirement where I have to create Access tables from the Internal tables of ABAP program.
    The tables are like Project systems Header data, WBS elements data, Netwrok data, Activity data, Milestone data and Project revunes. I will have the internal tables for these. I want to transfer these tables data into MS-Access tables onto Users desktop.
    Please adivce me how to do this.
    Thanks,
    Prabhakar

    HI,
    I am trying to create a DB table in the access but I am not successful. The following is the format of the table needs to be created from the ABAP program.
    I have created a table with the following format in MS-Access with the name tblHeader. Is it neccessary to create a DB table ( MS-Access) in advance or by using the FM  STRUCTURE_EXPORT_ TO_MSACCESS  we need to create a structure in MS-Access?
    False tblHeader
    Field Name Type Length
    ProjectDef Text 255
    ProjectDes Text 255
    Created Text 50
    Change Text 50
    RespPerson Text 255
    Profile Text 255
    Plant Text 255
    ObjNo Text 255
    OverheadKey Text 255
    I have created a Z table ZTAB1 with the same format from the SAP fields.
    MS-Access Table name : tblHeader
    ABAP program Internal table : t_tblheader
    Z table Name : ZTAB1.
    First I am trying to create a structure in MS-Access with the following FM.
    CALL FUNCTION 'STRUCTURE_EXPORT_ TO_MSACCESS'
    EXPORTING
    dbname = 'D:\test\db2'
    LANGU = SY-LANGU
    dest = 'PS_ACCESS_1'
    TABLES
    tabname = ttblheader
    EXCEPTIONS
    system_failure = 1
    comm_failure = 2
    OTHERS = 3
    Table ttblheader type is DFIES and I am filling the table with only one record and one field i.e TABNAME and the value is ZTAB1.
    The source code of the FM is using another FM
    CALL FUNCTION 'MSACCESS_STRUCT_ EXPORT_RFC' DESTINATION DEST
    Here I am getting the Error message Object required. I can't able to create a table structure in MS-Access.
    Next I am going to Use the FM
    'TABLE_EXPORT_ TO_MSACCESS'
    and it will create the records in the MS-access table.
    CALL FUNCTION 'TABLE_EXPORT_ TO_MSACCESS'
    EXPORTING
    dbname = 'D:\test\db2'
    langu = sy-langu
    dest = 'PS_ACCESS_2'
    tabname = 'ZTAB1'
    reftable = 'tblheader'
    FLG_NO_DOWNLOAD = ' '
    FLG_APPEND = ' '
    FLG_POPUP = ' '
    TABLES
    dtab = t_tblheader
    here t_tblheader is the internal table.
    Reftable = tblheader is the table which i have created in advance. ( not by using the First FM)
    In this FM i am getting a error message : Unable to connect to Database D:\test\db2.
    Please help me how to create the MS-Access database.

  • Making a call to a Business Connector Flow Service from within an ABAP prog

    Hello,
    I am trying to make a change to one of the flow services within BUsiness COnnector.
    The way the system is currently set up is that the flow service is called from within an ABAP program via an RFC call.
    A remote FM exists in SAP and this is called by the program and there is a corresponding flo service within Business Connector.
    I have basically copied an existing flow service which works fine and made a few minor tweaks. Within SAP, I have copied the remote FM and again made a few minor tweaks.
    However, when I run the program, it short dumps at the point whee my remote FM is called with th following message :-
    "Unknown Partner and Message Type. Sender: xxxx Receiver: xxxx MsgType:  "
    I am not a Business Connector expert and I guess I am missing a ste but I'm not sure what it is.
    Can anyone advise?
    Thanks,
    Ruby

    Hello,
    I am trying to make a change to one of the flow services within BUsiness COnnector.
    The way the system is currently set up is that the flow service is called from within an ABAP program via an RFC call.
    A remote FM exists in SAP and this is called by the program and there is a corresponding flo service within Business Connector.
    I have basically copied an existing flow service which works fine and made a few minor tweaks. Within SAP, I have copied the remote FM and again made a few minor tweaks.
    However, when I run the program, it short dumps at the point whee my remote FM is called with th following message :-
    "Unknown Partner and Message Type. Sender: xxxx Receiver: xxxx MsgType:  "
    I am not a Business Connector expert and I guess I am missing a ste but I'm not sure what it is.
    Can anyone advise?
    Thanks,
    Ruby

  • Using nested Joins in abap prog

    Hi All,
    please help me  out in using nested joins in abap progrmaming. I dont know about joins in abap.specially in case of outer join.
      I have 5 internal tables.. mara ,marc, mvke,mbew,ampl. am using  a  select query with certain fields from all these tables.
      I need to disply  all the materials  of  a mara for  a particular date irrespective of  the values in fields of  other tables.
            Even if that materail is not present in other table for certain condtion ,that material  should get displyed with all other fields  showing null value..

    Hi RK,
    the  code am using is of the same way...but my problem was with the joins..in the  select query  am using nested join combining inner  and outer join.. but i could  not able to display all the materials  of mara of a particular date..
    The code looks like this..
    SELECT <some fields.......>
    INTO  TABLE i_materials
          FROM  ( marc AS b
          INNER JOIN mara AS a ON amatnr = bmatnr
          INNER JOIN mvke AS c ON cmatnr = amatnr
          INNER JOIN ampl AS g ON gbmatn = amatnr
          LEFT OUTER JOIN mbew AS d ON dmatnr = bmatnr
                                   AND dbwkey = bwerks )
      WHERE a~matnr  IN s_matnr AND .................
    Else
    SELECT <some fields.......>
    INTO  TABLE i_materials
          FROM  ( marc AS b
          INNER JOIN mara AS a ON amatnr = bmatnr
          INNER JOIN mvke AS c ON cmatnr = amatnr
          INNER JOIN ampl AS g ON gbmatn = amatnr
          LEFT OUTER JOIN mbew AS d ON dmatnr = bmatnr
                                   AND dbwkey = bwerks )
       FOR ALL ENTRIES IN i_mara
         WHERE a~matnr = i_mara-matnr AND ............

  • ABAP prog with Call Transaction  to SU01 will not add roles in a CUA client

    I am modifying a current ABAP program that works in a non-CUA client to hopefully execute in a CUA client.  This program performs a Call Transaction to tcode SU01 and adds roles to an existing user.  I used tcode SHDB to identify the new BDC commands needed for CUA when using tcode SU01.  When executing the program in the CUA client  it does not save the roles to the user.  There is no error message or abnormal termination.
    When I assign the role to the same user that's referenced in my program directly with tcode SU01 it works fine.  Its just when I run the ABAP program the role assigment is not retained.  I opened a Customer Message with SAP and they referenced OSS Note 93802 and said this was a consulting question.  My program is not abending as referenced in Note 93802, it just does not add the role.
    Has anyone been able to get this to work in a CUA client?

    Hi,
    it should be fairly simple to create a new ABAP using the BAPI's related to business object USER. Call BAPI_USER_CREATE1 to create the users, and BAPI_USER_LOCACTGROUPS_ASSIGN to assign roles in a CUA environment. It should go something like this:
    [read file with user data into internal table wt_users]
    [read file with role assignments into internal table wt_roles]
    Loop at wt_users into wa_user.
      [create LOGINDATA, ADDRESS and other structures for user in BAPI below, based on the data in wa_user]
      call 'BAPI_USER_CREATE1'
      exporting
        username                      = [the user name from input file]
      NAME_IN                       =
        logondata                     = [structure for logondata]
        password                      = [initial password value]
      DEFAULTS                      =
        address                       = [address structure created above]
        [etc.]
      if sy-subrc eq 0.
    Assign roles for the user
    clear wt_activitygroups. refresh wt_activitygroups.
    loop at wt_roles into wa_roles where username = wa_user-username.
        [build an internal table, wt_activitygroups, for system/role assignments for the user]
    endloop.
        call BAPI_USER_LOCACTGROUPS_ASSIGN
          exporting
            username                      = [the users name]
          tables
            activitygroups           = wt_activitygroups
            return                       = wt_return.
    Endloop.
    Ideally, you would have two input files: one with the user data (one record per user), and another one containing the data for the BAPI_USER_LOCACTGROUPS_ASSIGN (on the format USERNAME, SYSTEM, ROLENAME); one entry per line. You'd loop at the first table, containing the user data, then create the user, then loop at all entries in the system/role assignment file for the same username, building an internal table of role assignemnts; then call the second BAPI (provided there were any role assignments to assign for that user!)
    Hope this makes sense. It's not rocket science really; you can omit most of the parameters of BAPI_USER_CREATE1, and the second BAPI is even simpler. You could consider validating the input data by checking entries in table USRSYSACT, which contains all valid system/role assignments as seen from the CUA system (this table gets updated every time you do a "text compare" from within SU01.
    Regards,
    Trond

  • How to call BAPI in a ABAP prog

    Hi All
    I have a concern regarding the usuage of BAPI in the ABAP program.
    i have successfully created a BAPI and i have implemented a method as well using ADD API Method button.
    Now after doin all the things in SWO1.
    I wanted to know how to call this BAPI method in se38.
    CAn anyone throw some light on this ?
    Regards
    Gaurav

    Hi,
    try this
    *& Report ZKAR_MATMAS_BAPI
    *& This program demonstrates how easy it is to create Material master
    *& data using BAPI_MATERIAL_SAVEDATA
    *& The program also generates a report post-execution displaying errors
    *& as well as successful uploads
    REPORT ZKAR_MATMAS_BAPI.
    * TABLES
    * FLAGS *
    DATA: F_STOP. " Flag used to stop processing
    * DATA DECLARATIONS *
    DATA : V_EMPTY TYPE I, " No. of empty records
    V_TOTAL TYPE I. " Total no. of records.
    * STRUCTURES & INTERNAL TABLES
    *BAPI structures
    DATA: BAPI_HEAD LIKE BAPIMATHEAD, " Header Segment with Control Information
    BAPI_MAKT LIKE BAPI_MAKT, " Material Description
    BAPI_MARA1 LIKE BAPI_MARA, " Client Data
    BAPI_MARAX LIKE BAPI_MARAX, " Checkbox Structure for BAPI_MARA
    BAPI_MARC1 LIKE BAPI_MARC, " Plant View
    BAPI_MARCX LIKE BAPI_MARCX, " Checkbox Structure for BAPI_MARC
    BAPI_MBEW1 LIKE BAPI_MBEW, " Accounting View
    BAPI_MBEWX LIKE BAPI_MBEWX, " Checkbox Structure for BAPI_MBEW
    BAPI_RETURN LIKE BAPIRET2. " Return Parameter
    *--- Internal table to hold excel file data
    DATA: IT_INTERN TYPE ALSMEX_TABLINE OCCURS 0 WITH HEADER LINE.
    *--- Internal table to hold Matetrial descriptions
    DATA: BEGIN OF IT_MAKT OCCURS 100.
            INCLUDE STRUCTURE BAPI_MAKT.
    DATA: END OF IT_MAKT.
    *--- Internal to hold the records in the text file
    DATA : BEGIN OF IT_DATA OCCURS 100,
                WERKS(4), " Plant
                MTART(4), " Material type
                MATNR(18), " Material number
                MATKL(9) , " Material group
                MBRSH(1), " Industry sector
                MEINS(3), " Base unit of measure
                GEWEI(3), " Weight Unit
                SPART(2), " Division
                EKGRP(3), " Purchasing group
                VPRSV(1), " Price control indicator
                STPRS(12), " Standard price
                PEINH(3), " Price unit
                SPRAS(2), " Language key
                MAKTX(40), " Material description
                END OF IT_DATA.
    * SELECTION SCREEN. *
    SELECTION-SCREEN BEGIN OF BLOCK SCR1 WITH FRAME TITLE TEXT-111.
    PARAMETER : P_FILE TYPE RLGRAP-FILENAME OBLIGATORY DEFAULT " Input File
    'C:\Material_master.XLS'.
    PARAMETER : P_MAX(4) OBLIGATORY DEFAULT '100'. " no.of recs in a session
    PARAMETERS: P_HEADER TYPE I DEFAULT 0. " Header Lines
    PARAMETERS: P_BEGCOL TYPE I DEFAULT 1 NO-DISPLAY,
    P_BEGROW TYPE I DEFAULT 1 NO-DISPLAY,
    P_ENDCOL TYPE I DEFAULT 100 NO-DISPLAY,
    P_ENDROW TYPE I DEFAULT 32000 NO-DISPLAY.
    SELECTION-SCREEN END OF BLOCK SCR1.
    * AT SELECTION-SCREEN *
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILE.
    *--- Validating file
      PERFORM VALIDATE_FILE USING P_FILE.
    * START-OF-SELECTION
    START-OF-SELECTION.
    *--- Perform to convert the Excel data into an internal table
      PERFORM CONVERT_XLS_ITAB.
      IF NOT IT_DATA[] IS INITIAL.
    *--- Perform to delete Header lines
        PERFORM DELETE_HEADER_EMPTY_RECS.
      ENDIF.
    * END OF SELECTION. *
    END-OF-SELECTION.
    *--- Perform to upload Material Master data
      PERFORM UPLOAD_MATMAS.
    * Form : validate_input_file
    * Description : To provide F4 help for file if read from PC
    FORM VALIDATE_FILE USING F_FILE TYPE RLGRAP-FILENAME.
      CALL FUNCTION 'KD_GET_FILENAME_ON_F4'
        CHANGING
          FILE_NAME     = F_FILE
        EXCEPTIONS
          MASK_TOO_LONG = 1
          OTHERS        = 2.
      IF SY-SUBRC <> 0.
        MESSAGE S010(ZLKPL_MSGCLASS). " 'Error in getting filename'.
      ENDIF.
    ENDFORM. " validate_input_file
    *& Form CONVER_XLS_ITAB
    * text
    FORM CONVERT_XLS_ITAB.
      CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE'
        EXPORTING
          FILENAME    = P_FILE
          I_BEGIN_COL = P_BEGCOL
          I_BEGIN_ROW = P_BEGROW
          I_END_COL   = P_ENDCOL
          I_END_ROW   = P_ENDROW
        TABLES
          INTERN      = IT_INTERN.
      IF SY-SUBRC <> 0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    * WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    *--- Perform to move the data into an internal data
      PERFORM MOVE_DATA.
    ENDFORM. " CONVERT_XLS_ITAB
    *& Form MOVE_DATA
    * text
    FORM MOVE_DATA.
      DATA : LV_INDEX TYPE I.
      FIELD-SYMBOLS <FS>.
    *--- Sorting the internal table
      SORT IT_INTERN BY ROW COL.
      CLEAR IT_INTERN.
      LOOP AT IT_INTERN.
        MOVE IT_INTERN-COL TO LV_INDEX.
    *--- Assigning the each record to an internal table row
        ASSIGN COMPONENT LV_INDEX OF STRUCTURE IT_DATA TO <FS>.
    *--- Asigning the field value to a field symbol
        MOVE IT_INTERN-VALUE TO <FS>.
        AT END OF ROW.
          APPEND IT_DATA.
          CLEAR IT_DATA.
        ENDAT.
      ENDLOOP.
    ENDFORM. " MOVE_DATA
    *& Form DELETE_HEADER_EMPTY_RECS
    * To delete the Header and empty records
    FORM DELETE_HEADER_EMPTY_RECS.
      DATA: LV_TABIX LIKE SY-TABIX.
      IF NOT P_HEADER IS INITIAL.
        LOOP AT IT_DATA.
          IF P_HEADER > 0 AND NOT IT_DATA IS INITIAL.
            DELETE IT_DATA FROM 1 TO P_HEADER.
    * P_HEADER = 0.
            EXIT.
          ENDIF.
        ENDLOOP.
      ENDIF.
      CLEAR IT_DATA.
    *--- To delete the empty lines from internal table
      LOOP AT IT_DATA.
        LV_TABIX = SY-TABIX.
        IF IT_DATA IS INITIAL.
          V_EMPTY = V_EMPTY + 1.
          DELETE IT_DATA INDEX LV_TABIX..
        ENDIF.
      ENDLOOP.
      CLEAR IT_DATA.
    *--- Total no of recs in file
      DESCRIBE TABLE IT_DATA LINES V_TOTAL.
      IF V_TOTAL = 0.
        MESSAGE I013(ZLKPL_MSGCLASS). " No records in the file
        F_STOP = 'X'.
        STOP.
      ENDIF.
    ENDFORM. " DELETE_HEADER_EMPTY_RECS
    *& Form UPLOAD_MATMAS
    * to upload Material Master data
    FORM UPLOAD_MATMAS .
      LOOP AT IT_DATA.
    * Header
        UNPACK IT_DATA-MATNR TO IT_DATA-MATNR.
        BAPI_HEAD-MATERIAL = IT_DATA-MATNR.
        BAPI_HEAD-IND_SECTOR = IT_DATA-MBRSH.
        BAPI_HEAD-MATL_TYPE = IT_DATA-MTART.
        BAPI_HEAD-BASIC_VIEW = 'X'.
        BAPI_HEAD-PURCHASE_VIEW = 'X'.
        BAPI_HEAD-ACCOUNT_VIEW = 'X'.
    * Material Description
        REFRESH IT_MAKT.
        IT_MAKT-LANGU = IT_DATA-SPRAS.
        IT_MAKT-MATL_DESC = IT_DATA-MAKTX.
        APPEND IT_MAKT.
    * Client Data - Basic
        BAPI_MARA1-MATL_GROUP = IT_DATA-MATKL.
        BAPI_MARA1-BASE_UOM = IT_DATA-MEINS.
        BAPI_MARA1-UNIT_OF_WT = IT_DATA-GEWEI.
        BAPI_MARA1-DIVISION = IT_DATA-SPART.
        BAPI_MARAX-MATL_GROUP = 'X'.
        BAPI_MARAX-BASE_UOM = 'X'.
        BAPI_MARAX-UNIT_OF_WT = 'X'.
        BAPI_MARAX-DIVISION = 'X'.
    * Plant - Purchasing
        BAPI_MARC1-PLANT = IT_DATA-WERKS.
        BAPI_MARC1-PUR_GROUP = IT_DATA-EKGRP.
        BAPI_MARCX-PLANT = IT_DATA-WERKS.
        BAPI_MARCX-PUR_GROUP = 'X'.
    * Accounting
        BAPI_MBEW1-VAL_AREA = IT_DATA-WERKS.
        BAPI_MBEW1-PRICE_CTRL = IT_DATA-VPRSV.
        BAPI_MBEW1-STD_PRICE = IT_DATA-STPRS.
        BAPI_MBEW1-PRICE_UNIT = IT_DATA-PEINH.
        BAPI_MBEWX-VAL_AREA = IT_DATA-WERKS.
        BAPI_MBEWX-PRICE_CTRL = 'X'.
        BAPI_MBEWX-STD_PRICE = 'X'.
        BAPI_MBEWX-PRICE_UNIT = 'X'.
    *--- BAPI to create material
        CALL FUNCTION 'BAPI_MATERIAL_SAVEDATA'
        EXPORTING
        HEADDATA = BAPI_HEAD
        CLIENTDATA = BAPI_MARA1
        CLIENTDATAX = BAPI_MARAX
        PLANTDATA = BAPI_MARC1
        PLANTDATAX = BAPI_MARCX
    * FORECASTPARAMETERS =
    * FORECASTPARAMETERSX =
    * PLANNINGDATA =
    * PLANNINGDATAX =
    * STORAGELOCATIONDATA =
    * STORAGELOCATIONDATAX =
    * VALUATIONDATA = BAPI_MBEW1
    * VALUATIONDATAX = BAPI_MBEWX
    * WAREHOUSENUMBERDATA =
    * WAREHOUSENUMBERDATAX =
    * SALESDATA = BAPI_MVKE1
    * SALESDATAX = BAPI_MVKEX
    * STORAGETYPEDATA =
    * STORAGETYPEDATAX =
        IMPORTING
        RETURN = BAPI_RETURN
        TABLES
        MATERIALDESCRIPTION = IT_MAKT
    * UNITSOFMEASURE =
    * UNITSOFMEASUREX =
    * INTERNATIONALARTNOS =
    * MATERIALLONGTEXT =
    * TAXCLASSIFICATIONS =
    * RETURNMESSAGES =
    * PRTDATA =
    * PRTDATAX =
    * EXTENSIONIN =
    * EXTENSIONINX =
        IF BAPI_RETURN-TYPE = 'E'.
          WRITE:/ 'Error:' ,BAPI_RETURN-MESSAGE ,'for material:' ,IT_DATA-MATNR.
        ELSEIF BAPI_RETURN-TYPE = 'S'.
          WRITE: 'Successfully created material' ,IT_DATA-MATNR.
        ENDIF.
      ENDLOOP.
    ENDFORM. " UPLOAD_MATMAS
    Regards,
    V.Balaji
    Reward if Usefull...

  • Bex Broadcasting:how to send BI report result to non BI users via abap prog

    Hi guru,
    We have 100 employees who must receive BI Report result by email via Bex broadcasting .
    We don't want to fill in the broadcast setting manually but via an abap program that will execute the boradcasting.
    Can you help me finding a program that can perform this task ?
    Thanks in adavnce

    Hi....
    You can use ABAP program RSRD_BORADCAST_STARTER with the variant value set to Broadcaster Technical Name.
    for more info : [Bex Broadcast creation user - best or common practice;
    Regards,
    Chintan

  • GETWA_NOT_ASSIGNED error while running abap prog

    Hi.
    I am getting a runtime error GETWA_NOT_ASSIGNED while running an ABAP program in process chain.
    But when i execute pro in SE38 , it's not giving any error.
    Please any one can suggets what will be error.

    Hello, could you please send more detailed information or copy the whole dump in the thread?
    Thanks,
    Walter Oliveira.

  • ABAP prog - to Post IDOCs after checking status of BAPI?

    Hi,
    There are <b>IDOCs in status 64</b>(ready to transmitted to application) in ECC R/3 server. Now I need to post these IDOCs <b>only if the corresponding partner data exists</b>. I have a <b>BAPI</b> to check this condition. How do I achieve this ? Can we write a ABAP program ? Please suggest.
    Thanks,
    mk

    Hi,
    You don't need to write custom program to post the IDoc.
    Perhaps you can submit/call standard program RBDAPP01 to post IDoc with status 64 after BAPI check when condition met.
    Regards,
    Ferry Lianto

  • Abap Prog Scenario

    Dear,
    Need Help regarding ...  Abap program ...
    What We are try to do is " our vendor will email us to some email address.
    Email will contain some parameters in pre-defined format. Now.
    Program will take those parameters and then execute the Report according to given parameters in email and send back report to that Vendor.
    I am beginner in ABAP . need help regarding this issue. any Ideas? Suggestion recommendation ?
    Regards

    Hi!!!
    Thanks for ur prompt helps. Actually instead of OBJECTID I was passing the Obj-key and not the OBJECTID. This was creating problem. But still dont know why it was creating the prob.
    Anyways THANKS A LOT.
    Regards,
    Sudipto.

  • Replace unix file and abap prog triggers

    Hi All,
    I had an ABAP program which is scheduled to reads a file at a unix directory.
    But instead my program should get triggered when there is a Change to the existing file or a new file comes in in the unix directory.Is there any way to trigger?
    Please provide your valuable suggestions , points will be granted for sure.
    Thanks
    Suman

    Suman,
    One approach would be to just regularly scan for your config file being modified
    (just stat() and check st_mtime in unix) with date and timestamp... How often you want to check is up to you, but I wouldn't think more than once per minute would be necessary, unless you have some need to make changes instantly or something...
    Another approach would be to use dnotify/inotify to have the kernel notify you when
    the file changes...
    Hope this helps
    Cheers
    Senthil

  • Strange Problem ABAP Prog.

    Hi,
    Very strange problem. I have the program below;
    When I run it , I would expect ls_business_object-Value
    to have the contents of header , but it does not, when I look at it in the debugger. It adds the element, but there is nothing in value.
    Can't really understand why. I've done this with many other programs without any problem. Thanks.
    REPORT test.           
    data:
          ls_business_object     TYPE swcont,
          lt_business_object     TYPE TABLE OF swcont,
          HEADER  type BAPISDHD1,
    HEADER-REFOBJTYPE     = ''.
    HEADER-DOC_TYPE       = 'TA'.
    HEADER-SALES_ORG      = '1000'.
    HEADER-DISTR_CHAN     = '10'.
    *l_ORDER_HEADER_IN-DIVISION       = '00'.
    HEADER-PURCH_NO_C     = '1234567'.
    HEADER-PURCH_DATE     = '20050531'.
    Pack into  swcont
    ls_business_object-element       = 'HEADER'.
    ls_business_object-Value = HEADER.
    APPEND ls_business_object TO lt_business_object.

    Hi,
    In that lt_business_object,it is having 255 char for value.
    So I suggest you to do
    concatenate
    HEADER-REFOBJTYPE
    HEADER-DOC_TYPE
    HEADER-SALES_ORG
    HEADER-DISTR_CHAN
    HEADER-PURCH_NO_C
    HEADER-PURCH_DATE
    into
    ls_business_object-Value.
    instead of
    ls_business_object-Value = HEADER.
    Then
    APPEND ls_business_object TO lt_business_object.

  • How to know if iam in tcode  creation or modif  inside abap  prog ?

    hello ,
    i  want  to  know if there  is any things  that can  help  me to know  if  iam  in tcode  of creation (ME21N) o  modification (ME22N/ME23N) for  PO,  without using  sy-tcode inside a program of smartforms edition.
    thanks ,
    karim

    >
    karim sefiani sefiani wrote:
    > hello ,
    >  
    > i  want  to  know if there  is any things  that can  help  me to know  if  iam  in tcode  of creation (ME21N) o  modification (ME22N/ME23N) for  PO,  without using  sy-tcode inside a program of smartforms edition.
    >
    >  thanks ,
    > karim
    Please check the value of the variable T180-TRTYP
    T180-TRTYP = H - Create - ME21N
    T180-TRTYP = V - Change - ME22N
    generally 'A' in case of display transactions, however the table T180 shows the value 'V' in case of ME23N also, kindly check

Maybe you are looking for