Execute ABAP Code Inspector from Outside of SAP

Hi all...
For reporting purpose, I would like to use ABAP Code Inspector (transaction SCI) for generating output as a file, it should call from outside of SAP through RFC function module and generate the list (output) as flat file (or XML), does anyone have been done with similar work like this? I wonder if you could share your experience with me...
thanks in advance,
yayan irianto.

I managed to set up the variant, however found a problem.
I used "Search ABAP Statement Patterns" under "Search Functs" and set the pattern like followings.
SELECT + INTO *
SELECT SINGLE + INTO *
However following statements were detected.
SELECT * INTO TABLE IT_DRAW FROM DRAW.
SELECT MANDT INTO TABLE IT_DRAW FROM DRAW.
SELECT SINGLE * INTO TABLE IT_DRAW FROM DRAW.
SELECT SINGLE MANDT INTO TABLE IT_DRAW FROM DRAW.
It's because + means one ABAP token in the code inspector.
Is there anyway to find only "SELECT SINGLE *" and "SELECT *" ?

Similar Messages

  • How to execute the InDesign Javascript from outside in MAC

    Hi All,
    I need to execute the InDesign Javascript from outside in MAC machine.
    Anyone can help me.
    Thanks in advance.
    Regards,
    Ramkumar

    If you just want to imitate double clicking a file, use execute() method, e.g.:
    var myJavaScriptFile = new File("~/Desktop/Test.jsx");
    myJavaScriptFile.execute();
    At the top of your .jsx file type #target indesign to make the script run in InDesign.
    And I want to add to what Harbs said in the previous post: when you use do script command, you can also send parameters and get back values. See DoScriptParameters and DoScriptReturnValues sample scripts from InDesign CS3 Guide Scripts for details.

  • Abap code inspector (tx : SCI) to detect certain patterns

    Hello Experts,
    I want to use SAP Code Inspector to detect common problematic ABAP codes for all developed programs.
    But, I don't know how to make the check variant for detecting follwoing three patterns.
    SELECT * FROM
    SELECT * INTO
    SELECT SINGLE * INTO
    I guess I can use "Search for ABAP tokens" or "Search for ABAP statements paterns". But, It did'nt work because ' * ' represents any sequence of characters in the code inspector.
    Anyone can help me?

    I managed to set up the variant, however found a problem.
    I used "Search ABAP Statement Patterns" under "Search Functs" and set the pattern like followings.
    SELECT + INTO *
    SELECT SINGLE + INTO *
    However following statements were detected.
    SELECT * INTO TABLE IT_DRAW FROM DRAW.
    SELECT MANDT INTO TABLE IT_DRAW FROM DRAW.
    SELECT SINGLE * INTO TABLE IT_DRAW FROM DRAW.
    SELECT SINGLE MANDT INTO TABLE IT_DRAW FROM DRAW.
    It's because + means one ABAP token in the code inspector.
    Is there anyway to find only "SELECT SINGLE *" and "SELECT *" ?

  • ABAP Code Inspector & Security

    All:
    I am currently looking into the Code Inspector that is built into SAP that allows developers to run test/checks on their code related to performance, syntax, and as noted "security". I am trying to track down what exactly the "security" is being checked. I am running tests on my internal SAP systems to see how it acts, but I wanted to get any feedback from the security community on a few things
    1) What "security" checks does the Code Inspector actual check for?
    2) Is there an location with updated documentation from SAP (not dated 2002) which speaks to the security componet, not just mentioned it?
    3) Any useful use-cases within the security community that your organization/clients are using?
    Thanks,
    Matt Urban

    Hi,
    if you display a check variant in SCI there is info linked to each node (icon with I). For example calling C-routine is a security risk. Also dynamic statements are good example of security risk. You need to validate input properly before executing dynamic statement. Not sure about documentation but documentation available in SCI seems OK to me.
    On one project we used SCI to check any custom development (not only security). It helped us to increase quality of custom development. Especially, with less skilled developers.
    Cheers

  • Execute ABAP code in Start Routine only once

    I have ABAP code in a start routine that I only want to execute once. Is there a way to tell this is first execution of the start routine?
    Also can I find out these value in the start routine ABAP:
    1. How many data packets there are?
    2. What data packet I am processing?
    Regards,
    Mike...

    Hi,
    I've just setup a little test:
    TRules, Start Routine Global Decl:
    DATA: GVI TYPE I, GVN(5) TYPE N.
    Start Routine:
    IF GVI IS INITIAL.
    GVI = 1.
    ELSE.
    ADD 1 TO GVI.
    ENDIF.
    MOVE GVI TO GVN.
    This is basically counting the times the start routine is executed and populating the var GVN; I am posting GVN in a char ZTESTGV in the target cube. I am posting as well the datapakID in my cube.
    I have loaded two requests (each 4 packets)
    the first one first to PSA and then from the PSA to the target: this is Serially using one single process. Here's the result in the cube:
    Request________________________________DATAPAKID_____ZTESTGV
    REQU_8B5ASGQNYYNIV1OJN68HFH1SR____________1____________1
    REQU_8B5ASGQNYYNIV1OJN68HFH1SR____________2____________2
    REQU_8B5ASGQNYYNIV1OJN68HFH1SR____________3____________3
    REQU_8B5ASGQNYYNIV1OJN68HFH1SR____________4____________4
    In this case the global variable is persistent accross packets.
    the second request is loaded in paralell: this is, multiple processes are executed at the time. Here's the result in the cube:
    Request________________________________DATAPAKID_____ZTESTGV
    REQU_14QVH21BSVH44FAJW94BD7N2H____________1____________1
    REQU_14QVH21BSVH44FAJW94BD7N2H____________2____________1
    REQU_14QVH21BSVH44FAJW94BD7N2H____________3____________1
    REQU_14QVH21BSVH44FAJW94BD7N2H____________4____________1
    In this case the global variable is always1 !!
    This is logic since several a process cannot access the internal memory used by another one...
    Conclusion; the global variable will work only if the load is serial...
    hope this helps...
    Olivier.

  • IF condition to execute ABAP code; VBAK-VSBED; VBPA-KUNNR; XVBPA/YVBPA

    Hi All!
    I need some help. I have to change the MV45AFZZ, the FORM USEREXIT_MOVE_FIELD_TO_VBAK. The user exit should write the VBAK-VSBED (shipping condition) from the KNVV-VSBED for the VBPA-KUNNR, PARVW=WE (the ship-to-party partner). The user exit should also permit the modification of VBAK-VSBED directly from VA01 or VA02 (even if the ship-to-party remain the same).
    I write down the ABAP code but I need to write a condition in order to execute the modification of VBAK-VSBED:
    1. in VA01, for the first time;
    2. in VA01 and VA02 if I change the ship-to-party partner.
    Now, if I want to change VBAK-VSBED without modifying the ship-to-party, I can not. The user exit overwrite the VBAK-VSBED for the ship-to-party.
    The code is:
    READ TABLE xvbpa WITH KEY parvw = 'WE' .
    IF SY-SUBRC = 0.
      SELECT SINGLE * FROM knvv WHERE kunnr EQ xvbpa-kunnr and
                                      vkorg EQ xvbak-vkorg and
                                      vtweg EQ xvbak-vtweg and
                                      spart EQ xvbak-spart .
      vbak-vsbed  = knvv-vsbed.
    ENDIF.
    Any help will be appreciate.
    Florina C.

    Hi,
    try this example:
    *Table YVBPA should always be filled, when executing VA02, but if it is not, you
    *can simple select the Sales Partner from VBPA(in va02 scenario it would be in *DB aldready)
    if sy-tcode = 'VA01'.
      READ TABLE xvbpa WITH KEY parvw = 'WE' .
      IF SY-SUBRC = 0.
        SELECT SINGLE * FROM knvv
        WHERE kunnr EQ xvbpa-kunnr  and
           vkorg EQ xvbak-vkorg and
           vtweg EQ xvbak-vtweg and
           spart EQ xvbak-spart .
           vbak-vsbed = knvv-vsbed.
      ENDIF.
    else if tcode = 'VA02'.
      if YVBPA[] is initial.
          select single * from vbpa
          where vbeln = vbak-vbeln and parvw = 'WE'.
          if sy-subrc = 0.
                 partner_before_change = vbpa-kunnr.
          endif.
      else.
          READ TABLE yvbpa WITH KEY parvw = 'WE' .
          if sy-subrc = 0.
             partner_before_change = yvbpa-kunnr.
          endif.
      endif.
      READ TABLE xvbpa WITH KEY parvw = 'WE' .
      IF SY-SUBRC = 0 and
         xvbpa-kunnr <> partner_before_change.
         SELECT SINGLE * FROM knvv
         WHERE kunnr EQ xvbpa-kunnr and
               vkorg EQ xvbak-vkorg and
               vtweg EQ xvbak-vtweg and
               spart EQ xvbak-spart .
         vbak-vsbed = knvv-vsbed.
       endif.
    endif.
    Best Regards,

  • Urgent, how to insert un Idoc (already created)  from outside of SAP

    Hi to all,
    I would like to know how to insert an Idoc (alresdy created) from outside of a SAP environnement into SAP.
    I know via the code we20 we could insert an Idoc into SAP, does someone have a file PDF to explique how to do it step by step plz?
    or could you reply it in details step by step?
    caz we are doing a project and we know almost nothing about it, but we need the information urgent.
    Tks in advance

    Hi,
    i think you have missed some of the some of the columns having NOT NULL constraint.ex:Who Columns..
    Please check the same in the table..
    Thanks
    Bharat

  • How to change Variant in Code inspector from Global to local.

    Hi,
    I have created my own variant,object set and inspection through T-code SCI and this has been created only for my id.
    Now when i go to SE38 and run Code Inspector i want the CI to use my variant instead of the Global DEFAULT variant.
    Kindly tell me how can i change from DEFAULt to my Local Variant.
    Many Thanks.

    Hi,
    abap_learner_das wrote:
    > Now when i go to SE38 and run Code Inspector i want the CI to use my variant instead of the Global DEFAULT variant.
    in that case you have to create a variant called "DEFAULT" as your local one. That variant will be used in SE38.
    In SE38 you can only use the DEFAULT variant. either the global one (if your user does not have a local one named DEFAULT) or the local one of your user.
    HTH,
    Hermann

  • ABAP Code Inspector

    Is there a way to confine the checks performed by Code Inspector to my
    program only?
    My program invokes much SAP-supplied code in the form of includes.  And
    the code inspector covers this code as well.  I am interested in seeing the
    results for my code only.

    Hello Gregory,
    Using the INCLUDE statement makes any coding part of the program for the compiler and most checks within the Code Inspector.
    Best Pratice is not to use/offer INCLUDES for reuse. If fury old code makes the inclusion mandatory then wrapping it in a resuse component. e.g. a function group is the next best solution.
    Best Regards
      Klaus

  • Execute java code taken from a properties file

    I have a requirement to store some java code in the Properties file & use the code inside the program later. Is there a way I can execute this code after I get it from the .properties file which is retrieved using the ResourceBundle?
    Example:
    File: system.properties
    Item_list=blocksBean.menu(QueryValue,request.getContextPath())
    Inside my Java program I'm using this..
    theBody=codesBean.replaceAll(theBody, "%%menu%%",ResourceBundle.getBundle("system").getString("Item_list"), true);
    instead of
    theBody=codesBean.replaceAll(theBody, "%%menu%%",blocksBean.menu(QueryValue,request.getContextPath()), true);
    This doesn't work because ResourceBundle.getBundle("... returns the value.. which is a string "blocksBean.menu(QueryValue,request.getContextPath())". But what I need is it has to be executed..
    blocksBean.menu() returns a string value of html code fetched from the dartabase.
    Is there a way I can execute blocksBean.menu() which is retrieved from the .properties file.. If anyone has done it / have an idea on this.. please e-mail me [email protected]
    I need something like an eval() in javaScript..
    Thanks in advance
    -ashok

    These boys might have something that will help you:
    http://www.beanshell.org/
    Good luck
    Lee

  • Using Code Inspector to search over SAP Packages

    Hallo Guru,
    I'm looking for a way to retrieve a message class number 127 "Initialization error" of message class C1 of a Package called CT.
    So, usually with Code Inspector we can search over our client Packages.
    But how I'm gone use code inspector to retrieve the different instances of code where my message number 127 is called.
    The Problem that I'm getting this error when I call the BAPI_CHARACT_CHANGE located in the Function Group CTBP
    And I don't know why I'm getting this?
    Please reply me, if you have difficulty to understand what I wrote.
    Also, please reply, if you really know how to solve the Problem.
    Thanks In Advance.
    Regards,
    Kais

    Hello,
    you can use program RS_ABAP_SOURCE_SCAN to scan sources for the message number. If you search for '127' in objects of package CT, you get a match: Include LCTMVF32, line 39.
    Hope this answers your question.
    Regards,
    David

  • Execute ABAP code from within SAPScript code

    http://www.sapdevelopment.co.uk/sapscript/sapscript_executeabap.htm

    Hi
    Do u have any question??? or are you trying to give suggestion???
    If u have query how to call a report in script here is ur answer
    The Form :
    /:PERFORM CDE_CENT IN PROGRAM ZKRPMM_PERFORM_Z1MEDRUCK
    /:USING &EKKO-EBELN&
    /:CHANGING &CDECENT&
    /:ENDPERFORM
    The report :
    ZKRPMM_PERFORM_Z1MEDRUCK.
    DATA : BEGIN OF it_input_table OCCURS 10.
    INCLUDE STRUCTURE itcsy.
    DATA : END OF it_input_table.
    * déclaration de la table output_table contenant les
    variables exportées
    DATA : BEGIN OF it_output_table OCCURS 0.
    INCLUDE STRUCTURE itcsy.
    DATA : END OF it_output_table.
    DATA : w_ebeln LIKE ekko-ebeln,
    * w_vbeln LIKE vbak-vbeln,
    w_zcdffa LIKE vbak-zcdffa.
    * FORM CDE_CENT
    FORM cde_cent TABLES input output.
    it_input_table[] = input[].
    it_output_table[] = output[].
    READ TABLE it_input_table INDEX 1.
    MOVE it_input_table-value TO w_ebeln.
    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
    EXPORTING
    input = w_ebeln
    IMPORTING
    output = w_ebeln.
    SELECT SINGLE zcdffa FROM ekko
    INTO w_zcdffa
    WHERE ebeln = w_ebeln.
    it_output_table-name = 'CDECENT'.
    MOVE w_zcdffa TO it_output_table-value.
    MODIFY it_output_table INDEX 1.
    output[] = it_output_table[].
    ENDFORM.
    Reward all helpfull anwers
    Regards
    Pavan

  • Can we give  SAP ABAP CERTIFICATION exam from other than SAP TECHED

    Dear,
           I busy with my project if i won't get chance to attend the SAP TECHED can i  give SAP ABAP ASSOCIATE LEVEL CERTIFICATION in any other way . i possible please tell me fee and process to attend the exam .

    >
    Jurjen Heeck wrote:
    > Oh, and have your keyboard fixed. Your CAPS LOCK gets stuck everytime you type SAP
    >
    lol... laughing my guts out.
    pk

  • Using abap code data from internal table to XML file create

    Hi ALL,
    i am using methods
      L_VALUE = GS_DOCUMENT-U_MITARBEITER.
      L_RC = L_ELEMENT_FLIGHTS->SET_ATTRIBUTE( NAME = 'U_Mitarbeiter' VALUE = L_VALUE ).
      CLEAR: L_VALUE,
             L_RC.
      L_VALUE = GS_DOCUMENT-VORNAME .
      L_RC = L_ELEMENT_FLIGHTS->SET_ATTRIBUTE( NAME = 'Vorname' VALUE = L_VALUE ).
         ENDLOOP.
      LOOP AT GS_DOCUMENT-GI_TIMETABLE INTO GS_TIMETABLE.
        L_ELEMENT_AIRLINE  = L_DOCUMENT->CREATE_SIMPLE_ELEMENT(
            NAME = 'Timetable'
            PARENT = L_ELEMENT_FLIGHTS  ).
          Create attribute 'code' of node 'airline'
        L_VALUE = GS_TIMETABLE-BEGINNUHRZEIT.
        L_RC = L_ELEMENT_AIRLINE->SET_ATTRIBUTE( NAME = 'Beginnuhrzeit' VALUE = L_VALUE ).
        L_VALUE = GS_TIMETABLE-BEMERKUNGEN.
        L_RC = L_ELEMENT_AIRLINE->SET_ATTRIBUTE( NAME = 'Bemerkungen' VALUE = L_VALUE ).
        L_VALUE = GS_TIMETABLE-ENDEUHRZEIT  .
        L_RC = L_ELEMENT_AIRLINE->SET_ATTRIBUTE( NAME = 'Endeuhrzeit' VALUE = L_VALUE ).
        L_VALUE = GS_TIMETABLE-BUCHUNGSDATUM.
        L_RC = L_ELEMENT_AIRLINE->SET_ATTRIBUTE( NAME = 'Buchungsdatum' VALUE = L_VALUE ).
      ENDLOOP.
      Creating a stream factory
      L_STREAMFACTORY = L_IXML->CREATE_STREAM_FACTORY( ).
      Connect internal XML table to stream factory
      L_OSTREAM = L_STREAMFACTORY->CREATE_OSTREAM_ITABLE( TABLE = L_XML_TABLE ).
      Rendering the document
      L_RENDERER = L_IXML->CREATE_RENDERER( OSTREAM  = L_OSTREAM
                                            DOCUMENT = L_DOCUMENT ).
      L_RC = L_RENDERER->RENDER( ).
      Saving the XML document
      L_XML_SIZE = L_OSTREAM->GET_NUM_WRITTEN_RAW( ).
    i am geting the output,
    line1
    <?xml version="1.0"?><Head Document="002_TMA1_KW1_SAP.XML" Innenauftragsnummer="008004000800" Kalenderwoche="17" MonatJahr="04/2008" Name="" Personalnummer="91003139" Projektnummer="1400000700" Regionalstelle="B" U_Entleiher="1" U_Mitarbeiter="1" Vorname=
    line 2
    Ricky"><Timetable Beginnuhrzeit="08:00" Bemerkungen="" Endeuhrzeit="16:30" Buchungsdatum="21.04.2008"/><Timetable Beginnuhrzeit="08:00" Bemerkungen="" Endeuhrzeit="16:30" Buchungsdatum="22.04.2008"/><Timetable Beginnuhrzeit="08:00" Bemerkungen="" Endeuhrz
    line 3
    it="16:30" Buchungsdatum="23.04.2008"/><Timetable Beginnuhrzeit="08:00" Bemerkungen="" Endeuhrzeit="16:30" Buchungsdatum="24.04.2008"/><Timetable Beginnuhrzeit="08:00" Bemerkungen="" Endeuhrzeit="16:30" Buchungsdatum="25.04.2008"/></Head>
    but i want this type line by line
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <Document Dokumentnummer="001_TMA7_KW2_MAN" Dokumenttyp="TN_HE" Innenauftragsnummer="8004750104" Kalenderwoche="15" MonatJahr="04/2008" Name="Banana" Personalnummer="166326" Projektnummer="1400000203" Regionalstelle="RV1" U_Entleiher="1" U_Mitarbeiter="1" Vorname="Sepp">
    <TimeTable Beginnuhrzeit="08:00" Bemerkungen="" Buchungsdatum="07.04.2008" Endeuhrzeit="16:00"/>
    <TimeTable Beginnuhrzeit="08:00" Bemerkungen="" Buchungsdatum="08.04.2008" Endeuhrzeit="16:00"/>
    <TimeTable Beginnuhrzeit="08:00" Bemerkungen="" Buchungsdatum="09.04.2008" Endeuhrzeit="16:30"/>
    <TimeTable Beginnuhrzeit="08:00" Bemerkungen="" Buchungsdatum="10.04.2008" Endeuhrzeit="16:30"/>
    <TimeTable Beginnuhrzeit="08:00" Bemerkungen="" Buchungsdatum="11.04.2008" Endeuhrzeit=""/>
    </Document>
    for line breaking, please give me solution
    Regards,
    Santha

    Hi,
    Please give me more inforamtion, how to use this
    CLASS cl_abap_char_utilities DEFINITION LOAD.
    cl_abap_char_utilities=>newline
    Regards,
    Santha

  • Execute APEX stored procedure from outside APEX

    I am looking at developing an application in APEX, but there needs to be a batch component that I would like to call from our corporation's scheduler. Is there a way for me to call an APEX stored procedure from a 3rd party scheduling software?
    We use this method on all other oracle databases here, but are new to using APEX.
    Thank you,
    Trevor

    This applicaiton is for the internal administration of an External database.
    So there is an external web application that will have a user sign in, and request some transactions. These requests need to be brought inside our firewall to the APEX tables, where our admin staff will access the requests via this internal administrative applicaiton. It will tie into our Customer Information System, giving our staff all the data they need in one application. Requested transactions, and customer information. Once processed, the status of each transaction will be pushed back out to the external database for our customers to view.
    The transfer of data, along with some other logic, is written in PL/SQL stored procs. To keep within our devlopement guidleines, I would like to kick them off using our existing scheduler. That way I only have one internal database to worry about.

Maybe you are looking for

  • How can I print out specific purchase history from the itunes store?

    Hello, I am having issues with ringtones,  and requested several refunds.  I went into my "ACCOUNT", selected "PURCHASE HISTORY", found the entries that showed my purchase and subsequent refunds but I can't seem to PRINT it.  When I go to the menu "F

  • Issue in GP

    Hello Guru's, We're implementing LWE's in our client and we are stuck with an issue in GP's We have created a custom Web Dynpro ABAP application for creating/modifying/deleting 378 record (Adjustment Reason) and the application is working fine. For i

  • Webutil and different versions of Java Plug-in

    Hi Guys! Our 10g Forms work fine on Java Update 7, but applet doesn't start up if we use Java Updates 10 and up. Oracle Support says that starting Update 10 it is a complete rewrite from SUN and they advise us to stay with Update 7. But we have other

  • Purchased 'eCommerce Template' but not able to edit most of it in Dreamweaver?

    I bought a .PHP eCommerce Template for Dreamweaver. I open it up and I can only edit the body of the template, the navigation (including some stupid advertising banners) are 'greyed' out and I can't edit them. What do I need to remove in the code to

  • Auto Increment Not Working - SQL Identity field

    I am new to Visual Basic & SQL server but have some experience in Access & VBA. But this is a steep learning curve! I am banging my head against a wall with a problem.. All of my tables in this database are in the dataset. The main one being tblItems