French translation in source code with emphasis(accents)

La traduction en francais du code source avec des accents pose probleme.

Sample, when you create states effects and you read mxml code you can find this :
protected function Application_creationComplete():void
var état:String = currentState;
if ( état == 'intro' ) {
currentState='login_page';
you are "état" not "etat" and you can have error between encoding mode.

Similar Messages

  • Dynamic-side Box? Can't read source code with java

    Hi all,
    I am trying to read a source code of a web page with a java program. I can connect to the page and read a part of the source code without any problems however after a while when it comes to a part where mozilla and opera identifies as "dynamic-side box" my java program fails to read the source code and stops reading the rest of the page.
    Here is the part of the output I get from mozilla:
    <body id="city">
              <script type="text/javascript" src="/js/wz_tooltip.js"></script>
              <div id="container">
                   <div id="container2">
                        <div id="header">
                             <h1>Ikariam</h1>
                             <h2>Antik �a&#287;&#305; Ya&#351;a!</h2>
                        </div>
    <div id="breadcrumbs"><h3>Bulundu&#287;un nokta:</h3><a href="?view=worldmap_iso&islandX=78&islandY=80" title="D�nya haritas&#305;na d�n"><img src="skin/layout/icon-world.gif" alt="D�nya" /></a> > <a href="?view=island&id=2444" class="island" title="Adaya d�n">Sterios[78:80]</a> > <span class="city">ProPolis</span></div><!-- -------------------------------------------------------------------------------------
         ///////////////////////////// dynamic side-boxes. //////////////////////////////////
         //////////////////////////////////////////////////////////////////////////////////// -->
         <div id="information" class="dynamic">
              <h3 class="header">Info</h3>
              <div class="content">And here is the corresponding part in java console output:
    <div id="breadcrumbs">
        <h3>Bulundu&#287;un nokta:</h3>
         <span class="textLabel">Hata!</span>
    </div>
    <div id="information" class="dynamic"></div>
    <div id="mainview">
        <div class="buildingDescription">
            <h1>Hata!</h1>
        </div>
        <div class="contentBox01h">
            <h3 class="header"><span class="textLabel">Hata mesaj&#305;</span></h3>
            <div class="content">
                <ul class="h�bsch">
    <li><a href="http://ikariam.net"></a></li>            </ul>
            </div><!-- end #content -->
            <div class="footer"></div>
        </div><!-- end #contentbox -->
    </div><!-- end #mainview -->Is there a way to skip this dynamic-side boxes in java. Because I need to read an information that is located at the near end of the source code however since it stops when it hits to a dynamic-side box I can't.
    Thanks in advance, regards...

    Hi,
    That is what I was trying in deed! I was trying with a Scanner but I also tried with the link you have given. That also failed. Somehow java stops reading the source when it hits "dynamic-side box". However there has to be a way to skip this. If mozilla can do that, I know that java also can. I wonder how....
    Cheers...

  • How can I make my source code with jar file?

    I use JDK1.6.0. I can open a class file from rt.jar and get its source code. Does this because open source JDK? I wander how I can make my jar file with source code.

    CeciNEstPasUnProgrammeur wrote:
    youhaodiyi wrote:
    But why I can read source code from rt.jar? I found there are only class files in it.I say it's highly likely that you can't and your IDE's settings rather automatically refer to the src.zip file in the JDK's directory.I see. That's true. I use eclipse as the source code reader. It may refer to the source code zip file automatically.
    Thanks all.

  • How can I print source code with connecting lines on control structures?

    Anyone know of any programs that will format source code printouts and print connecting lines from the start to the end of control structures (such as: if--"end if", while-"end while" etc.)?

    Indentations and comments do help read source code. However, when you have a large program with many levels of nesting of control structures the readability of the code (even with indentations) becomes very difficult.

  • Replace source code with destination code

    Hi,
    How to replace a program in source system with the program in production system technically?
    Thanks in advance...

    hi,
    Using Version Management you can do that.
    Use menupath...
    Utilies->Vesion->Version Management.
    Check the lastet request whcih exist in the Production sytem using Remote Comparsion Button
    After know the Request number Select the request number in the source system and press retrive.

  • How to set a reason for locked account throught source code with the API

    Hi all,
    I need to set the lock reason of an user account. When we lock a user account at identity management, the system shows us a text edit and keep that lock reason on the account data tab. I need to simulate that, anybody could help me with this?
    Slds,
    MC

    Hi Mariana,
    you can use the below code snippet to lock and maintain the lock reason.
                  IUserAccountFactory uaFactory= UMFactory.getUserAccountFactory();
                  IUserAccount userAccount=uaFactory.getUserAccountByLogonId("user_hr");
                  IUserAccount mutableUserAccount=uaFactory.getMutableUserAccount(userAccount.getUniqueID());
                  mutableUserAccount.setLocked(true,IUserAccount.LOCKED_BY_ADMIN);
                  mutableUserAccount.commit();
    Thanks
    Prashant

  • Upload and Download ABAP Source Code

    This is a program that I have had kicking around for a couple of years in various incarnations.
    Source Code Listing
    Report: ZKBPROGS *
    Function : Up/Download ABAP reports complete with texts *
    - this program does not update TRDIR with the *
    TRDIR entries that are in the program uploaded. Instead, *
    current users stats are used. *
    - this program allows selection of reports from a list or *
    a single report can be tuped in and uploaded *
    - this program also updates TADIR so that a development class*
    is assigned to the program *
    - this program checks to see if the program already has a *
    TRDIR entry, and if it does, warns the user *
    - this program will save/restore the program documenation too*
    REPORT ZKBPROGS
    NO STANDARD PAGE HEADING
    LINE-SIZE 255.
    Declare Database Objects *
    tables:
    DOKIL,
    TRDIR.
    Constants*
    CONSTANTS:
    MC_TRDIR_IDENTIFIER(72) TYPE C VALUE '%&%& RDIR',
    MC_REPORT_IDENTIFIER(72) TYPE C VALUE '%&%& REPO',
    MC_TEXT_IDENTIFIER(72) TYPE C VALUE '%&%& TEXP',
    MC_THEAD_IDENTIFIER(72) TYPE C VALUE '%&%& HEAD',
    MC_DOC_IDENTIFIER(72) TYPE C VALUE '%&%& DOKL',
    MC_TRDIR_SHORT(4) TYPE C VALUE 'RDIR',
    MC_REPORT_SHORT(4) TYPE C VALUE 'REPO',
    MC_TEXT_SHORT(4) TYPE C VALUE 'TEXP',
    MC_THEAD_SHORT(4) TYPE C VALUE 'HEAD',
    MC_DOC_SHORT(4) TYPE C VALUE 'DOKP'.
    Declare Module level data structures *
    DATA: BEGIN OF MTAB_PROGRAM_SOURCE OCCURS 0,
    LINE(72) TYPE C,
    END OF MTAB_PROGRAM_SOURCE.
    DATA: MTAB_PROGRAM_TRDIR LIKE TRDIR OCCURS 0 WITH HEADER LINE.
    DATA: MTAB_PROGRAM_TEXTS LIKE TEXTPOOL OCCURS 0 WITH HEADER LINE.
    DATA: MSTR_THEAD LIKE THEAD.
    DATA: BEGIN OF MTAB_PROGRAM_FILE OCCURS 0,
    LINE(275) TYPE C,
    END OF MTAB_PROGRAM_FILE.
    DATA: BEGIN OF MTAB_DIRECTORY OCCURS 0,
    NAME LIKE TRDIR-NAME,
    DESC(72) TYPE C,
    SAVENAME LIKE RLGRAP-FILENAME,
    END OF MTAB_DIRECTORY.
    DATA: BEGIN OF MTAB_PROGRAM_DOCUMENTATION OCCURS 0,
    LINE(255) TYPE C,
    END OF MTAB_PROGRAM_DOCUMENTATION.
    Selection Screen *
    *-- Options for upload/download of programs
    SELECTION-SCREEN BEGIN OF BLOCK FRM_OPTIONS WITH FRAME TITLE TEXT-UDL.
    PARAMETERS:
    RB_DOWN RADIOBUTTON GROUP UDL DEFAULT 'X'. " Download reports
    SELECTION-SCREEN BEGIN OF BLOCK FRM_TRDIR WITH FRAME TITLE TEXT-DIR.
    SELECT-OPTIONS:
    S_NAME FOR TRDIR-NAME, " Program Name
    S_SUBC FOR TRDIR-SUBC " Program Type
    DEFAULT 'F' OPTION EQ SIGN E," Exclude Functions by default
    S_CNAM FOR TRDIR-CNAM " Created by
    DEFAULT SY-UNAME,
    S_UNAM FOR TRDIR-UNAM, " Last Changed by
    S_CDAT FOR TRDIR-CDAT, " Creation date
    S_UDAT FOR TRDIR-UDAT. " Last update date
    SELECTION-SCREEN END OF BLOCK FRM_TRDIR.
    *-- Options for uploading programs
    PARAMETERS:
    RB_UP RADIOBUTTON GROUP UDL. " Upload reports
    SELECTION-SCREEN BEGIN OF BLOCK FRM_UPLOAD WITH FRAME TITLE TEXT-UPL.
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 1(29) TEXT-SNG.
    PARAMETERS:
    RB_FILE RADIOBUTTON GROUP HOW DEFAULT 'X'.
    SELECTION-SCREEN COMMENT 33(42) TEXT-FNA.
    SELECTION-SCREEN END OF LINE.
    PARAMETERS:
    RB_LIST RADIOBUTTON GROUP HOW.
    SELECTION-SCREEN END OF BLOCK FRM_UPLOAD.
    SELECTION-SCREEN END OF BLOCK FRM_OPTIONS.
    *-- Options for up/downloading programs
    SELECTION-SCREEN BEGIN OF BLOCK FRM_FILEN WITH FRAME TITLE TEXT-FIL.
    PARAMETERS:
    RB_DOS RADIOBUTTON GROUP FIL DEFAULT 'X', " Save to local
    RB_UNIX RADIOBUTTON GROUP FIL, " Save to UNIX
    P_PATH LIKE RLGRAP-FILENAME " Path to save files to
    DEFAULT 'c:\temp\'.
    SELECTION-SCREEN END OF BLOCK FRM_FILEN.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_NAME-LOW.
    CALL FUNCTION 'F4_PROGRAM'
    EXPORTING
    OBJECT = S_NAME-LOW
    SUPPRESS_SELECTION = 'X'
    IMPORTING
    RESULT = S_NAME-LOW
    EXCEPTIONS
    OTHERS = 1.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_NAME-HIGH.
    CALL FUNCTION 'F4_PROGRAM'
    EXPORTING
    OBJECT = S_NAME-HIGH
    SUPPRESS_SELECTION = 'X'
    IMPORTING
    RESULT = S_NAME-HIGH
    EXCEPTIONS
    OTHERS = 1.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_UNAM-LOW.
    PERFORM GET_NAME USING 'S_UNAM-LOW'
    CHANGING S_UNAM-LOW.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_UNAM-HIGH.
    PERFORM GET_NAME USING 'S_UNAM-HIGH'
    CHANGING S_UNAM-HIGH.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_CNAM-LOW.
    PERFORM GET_NAME USING 'S_CNAM-LOW'
    CHANGING S_CNAM-LOW.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_CNAM-HIGH.
    PERFORM GET_NAME USING 'S_CNAM-HIGH'
    CHANGING S_CNAM-HIGH.
    TOP-OF-PAGE.
    IF RB_LIST = 'X'.
    FORMAT COLOR COL_HEADING.
    NEW-LINE.
    WRITE: AT 3 TEXT-H01,
    AT 15 TEXT-H03.
    FORMAT COLOR OFF.
    ENDIF.
    AT LINE-SELECTION.
    CHECK RB_LIST = 'X'. " only do in list mode
    READ LINE SY-CUROW FIELD VALUE MTAB_DIRECTORY-SAVENAME.
    *-- Read file into an internal table
    PERFORM READ_REPORT_FROM_DISK TABLES MTAB_PROGRAM_FILE
    USING MTAB_DIRECTORY-SAVENAME.
    *-- Split table into TADIR entry, report lines, and report text
    PERFORM SPLIT_INCOMING_FILE TABLES MTAB_PROGRAM_FILE
    MTAB_PROGRAM_SOURCE
    MTAB_PROGRAM_TEXTS
    MTAB_PROGRAM_DOCUMENTATION
    CHANGING TRDIR
    MSTR_THEAD.
    *-- Save all of the data
    PERFORM INSERT_NEW_REPORT TABLES MTAB_PROGRAM_SOURCE
    MTAB_PROGRAM_TEXTS
    MTAB_PROGRAM_DOCUMENTATION
    USING TRDIR
    MSTR_THEAD.
    Start of processing *
    START-OF-SELECTION.
    FORMAT COLOR COL_NORMAL.
    IF RB_DOWN = 'X'.
    PERFORM DOWNLOAD_REPORTS.
    ELSEIF RB_UP = 'X'.
    PERFORM UPLOAD_REPORTS.
    ENDIF.
    END-OF-SELECTION.
    IF RB_DOWN = 'X'.
    CONCATENATE P_PATH
    'directory.txt'
    INTO P_PATH.
    PERFORM SAVE_TABLE_TO_FILE TABLES MTAB_DIRECTORY
    USING P_PATH.
    ENDIF.
    FORM UPLOAD_REPORTS *
    FORM UPLOAD_REPORTS.
    *-- Can upload a reports entered in selection criteria or
    *-- select from a list. List can be from index.txt in same directory
    *-- (created by the download) or by reading the first line of each file
    *-- in the directory.
    IF RB_FILE = 'X'. " Upload single program from a file
    *-- Read file into an internal table
    PERFORM READ_REPORT_FROM_DISK TABLES MTAB_PROGRAM_FILE
    USING P_PATH.
    *-- Split table into TADIR entry, report lines, and report text
    PERFORM SPLIT_INCOMING_FILE TABLES MTAB_PROGRAM_FILE
    MTAB_PROGRAM_SOURCE
    MTAB_PROGRAM_TEXTS
    MTAB_PROGRAM_DOCUMENTATION
    CHANGING TRDIR
    MSTR_THEAD.
    *-- Save all of the data
    PERFORM INSERT_NEW_REPORT TABLES MTAB_PROGRAM_SOURCE
    MTAB_PROGRAM_TEXTS
    MTAB_PROGRAM_DOCUMENTATION
    USING TRDIR
    MSTR_THEAD.
    ELSEIF RB_LIST = 'X'. " Show list for user to choose from
    *-- get list of report names/descriptions from directory text
    CONCATENATE P_PATH
    'directory.txt'
    INTO P_PATH.
    PERFORM READ_REPORT_FROM_DISK TABLES MTAB_DIRECTORY
    USING P_PATH.
    SORT MTAB_DIRECTORY.
    *-- Write out list of report names/descriptions
    LOOP AT MTAB_DIRECTORY.
    WRITE:
    / MTAB_DIRECTORY-NAME UNDER TEXT-H01,
    MTAB_DIRECTORY-DESC UNDER TEXT-H03,
    MTAB_DIRECTORY-SAVENAME.
    ENDLOOP.
    *-- Process user selections for reports to upload.
    ENDIF.
    ENDFORM. " upload_reports
    FORM DOWNLOAD_REPORTS *
    From the user selections, get all programs that meet the *
    criteria, and save them in ftab_program_directory. *
    Also save the report to disk. *
    FORM DOWNLOAD_REPORTS.
    DATA:
    LC_FULL_FILENAME LIKE RLGRAP-FILENAME.
    *-- The table is put into an internal table because the program will
    *-- abend if multiple transfers to a dataset occur within a SELECT/
    *-- ENDSELCT (tested on 3.1H)
    SELECT * FROM TRDIR
    INTO TABLE MTAB_PROGRAM_TRDIR
    WHERE NAME IN S_NAME
    AND SUBC IN S_SUBC
    AND CNAM IN S_CNAM
    AND UNAM IN S_UNAM
    AND CDAT IN S_CDAT
    AND UDAT IN S_UDAT.
    LOOP AT MTAB_PROGRAM_TRDIR.
    *-- Clear out text and source code tables
    CLEAR:
    MTAB_PROGRAM_FILE,
    MTAB_PROGRAM_SOURCE,
    MTAB_PROGRAM_TEXTS,
    MTAB_PROGRAM_DOCUMENTATION.
    REFRESH:
    MTAB_PROGRAM_FILE,
    MTAB_PROGRAM_SOURCE,
    MTAB_PROGRAM_TEXTS,
    MTAB_PROGRAM_DOCUMENTATION.
    *-- Get the report
    READ REPORT MTAB_PROGRAM_TRDIR-NAME INTO MTAB_PROGRAM_SOURCE.
    *-- Get the text for the report
    READ TEXTPOOL MTAB_PROGRAM_TRDIR-NAME INTO MTAB_PROGRAM_TEXTS.
    *-- Get the documentation for the report
    CLEAR DOKIL.
    SELECT * UP TO 1 ROWS FROM DOKIL
    WHERE ID = 'RE'
    AND OBJECT = MTAB_PROGRAM_TRDIR-NAME
    AND LANGU = SY-LANGU
    AND TYP = 'E'
    ORDER BY VERSION DESCENDING.
    ENDSELECT.
    *-- Documentation exists for this object
    IF SY-SUBRC = 0.
    CALL FUNCTION 'DOCU_READ'
    EXPORTING
    ID = DOKIL-ID
    LANGU = DOKIL-LANGU
    OBJECT = DOKIL-OBJECT
    TYP = DOKIL-TYP
    VERSION = DOKIL-VERSION
    IMPORTING
    HEAD = MSTR_THEAD
    TABLES
    LINE = MTAB_PROGRAM_DOCUMENTATION
    EXCEPTIONS
    OTHERS = 1.
    ENDIF.
    *-- Put the report code and texts into a single file
    *-- Put the identifier line in so that the start of the TRDIR line
    *-- is marked
    CONCATENATE MC_TRDIR_IDENTIFIER
    MTAB_PROGRAM_TRDIR-NAME
    INTO MTAB_PROGRAM_FILE-LINE.
    APPEND MTAB_PROGRAM_FILE.
    *-- Add the TRDIR line
    MTAB_PROGRAM_FILE-LINE = MTAB_PROGRAM_TRDIR.
    APPEND MTAB_PROGRAM_FILE.
    *-- Put the identifier line in so that the start of the report code
    *-- is marked
    CONCATENATE MC_REPORT_IDENTIFIER
    MTAB_PROGRAM_TRDIR-NAME
    INTO MTAB_PROGRAM_FILE-LINE.
    APPEND MTAB_PROGRAM_FILE.
    *-- Add the report code
    LOOP AT MTAB_PROGRAM_SOURCE.
    MTAB_PROGRAM_FILE = MTAB_PROGRAM_SOURCE.
    APPEND MTAB_PROGRAM_FILE.
    ENDLOOP.
    *-- Put the identifier line in so that the start of the report text
    *-- is marked
    CONCATENATE MC_TEXT_IDENTIFIER
    MTAB_PROGRAM_TRDIR-NAME
    INTO MTAB_PROGRAM_FILE-LINE.
    APPEND MTAB_PROGRAM_FILE.
    *-- Add the report texts
    LOOP AT MTAB_PROGRAM_TEXTS.
    MTAB_PROGRAM_FILE = MTAB_PROGRAM_TEXTS.
    APPEND MTAB_PROGRAM_FILE.
    ENDLOOP.
    *-- Put the identifier line in so that the start of the THEAD record
    *-- is marked
    CONCATENATE MC_THEAD_IDENTIFIER
    MTAB_PROGRAM_TRDIR-NAME
    INTO MTAB_PROGRAM_FILE-LINE.
    APPEND MTAB_PROGRAM_FILE.
    MTAB_PROGRAM_FILE = MSTR_THEAD.
    APPEND MTAB_PROGRAM_FILE.
    *-- Put the identifier line in so that the start of the report
    *-- documentation is marked
    CONCATENATE MC_DOC_IDENTIFIER
    MTAB_PROGRAM_TRDIR-NAME
    INTO MTAB_PROGRAM_FILE-LINE.
    APPEND MTAB_PROGRAM_FILE.
    *-- Add the report documentation
    LOOP AT MTAB_PROGRAM_DOCUMENTATION.
    MTAB_PROGRAM_FILE = MTAB_PROGRAM_DOCUMENTATION.
    APPEND MTAB_PROGRAM_FILE.
    ENDLOOP.
    *-- Make the fully pathed filename that report will be saved to
    CONCATENATE P_PATH
    MTAB_PROGRAM_TRDIR-NAME
    '.txt'
    INTO LC_FULL_FILENAME.
    PERFORM SAVE_TABLE_TO_FILE TABLES MTAB_PROGRAM_FILE
    USING LC_FULL_FILENAME.
    *-- Write out message with Program Name/Description
    READ TABLE MTAB_PROGRAM_TEXTS WITH KEY ID = 'R'.
    IF SY-SUBRC = 0.
    MTAB_DIRECTORY-NAME = MTAB_PROGRAM_TRDIR-NAME.
    MTAB_DIRECTORY-DESC = MTAB_PROGRAM_TEXTS-ENTRY.
    MTAB_DIRECTORY-SAVENAME = LC_FULL_FILENAME.
    APPEND MTAB_DIRECTORY.
    WRITE: / MTAB_PROGRAM_TRDIR-NAME,
    MTAB_PROGRAM_TEXTS-ENTRY(65) COLOR COL_HEADING.
    ELSE.
    MTAB_DIRECTORY-NAME = MTAB_PROGRAM_TRDIR-NAME.
    MTAB_DIRECTORY-DESC = 'No description available'.
    MTAB_DIRECTORY-SAVENAME = LC_FULL_FILENAME.
    APPEND MTAB_DIRECTORY.
    WRITE: / MTAB_PROGRAM_TRDIR-NAME.
    ENDIF.
    ENDLOOP.
    ENDFORM. " BUILD_PROGRAM_DIRECTORY
    FORM SAVE_TABLE_TO_FILE *
    --> FTAB_TABLE *
    --> F_FILENAME *
    FORM SAVE_TABLE_TO_FILE TABLES FTAB_TABLE
    USING F_FILENAME.
    IF RB_DOS = 'X'. " Save file to presentation server
    CALL FUNCTION 'WS_DOWNLOAD'
    EXPORTING
    FILENAME = F_FILENAME
    FILETYPE = 'ASC'
    TABLES
    DATA_TAB = FTAB_TABLE
    EXCEPTIONS
    OTHERS = 4.
    IF SY-SUBRC NE 0.
    WRITE: / 'Error opening dataset' COLOR COL_NEGATIVE,
    F_FILENAME COLOR COL_NEGATIVE.
    ENDIF.
    ELSE. " Save file to application server
    OPEN DATASET F_FILENAME FOR OUTPUT IN TEXT MODE.
    IF SY-SUBRC = 0.
    LOOP AT FTAB_TABLE.
    TRANSFER FTAB_TABLE TO F_FILENAME.
    IF SY-SUBRC NE 0.
    WRITE: / 'Error writing record to file;' COLOR COL_NEGATIVE,
    F_FILENAME COLOR COL_NEGATIVE.
    ENDIF.
    ENDLOOP.
    ELSE.
    WRITE: / 'Error opening dataset' COLOR COL_NEGATIVE,
    F_FILENAME COLOR COL_NEGATIVE.
    ENDIF.
    ENDIF. " End RB_DOS
    ENDFORM. " SAVE_PROGRAM
    FORM READ_REPORT_FROM_DISK *
    Read report into internal table. Can read from local or *
    remote computer *
    FORM READ_REPORT_FROM_DISK TABLES FTAB_TABLE
    USING F_FILENAME.
    DATA:
    LC_MESSAGE(128) TYPE C.
    CLEAR FTAB_TABLE.
    REFRESH FTAB_TABLE.
    IF RB_DOS = 'X'.
    TRANSLATE F_FILENAME USING '/\'. " correct slash for Dos PC file
    CALL FUNCTION 'WS_UPLOAD'
    EXPORTING
    FILENAME = F_FILENAME
    FILETYPE = 'ASC'
    TABLES
    DATA_TAB = FTAB_TABLE
    EXCEPTIONS
    CONVERSION_ERROR = 1
    FILE_OPEN_ERROR = 2
    FILE_READ_ERROR = 3
    INVALID_TABLE_WIDTH = 4
    INVALID_TYPE = 5
    NO_BATCH = 6
    UNKNOWN_ERROR = 7
    OTHERS = 8.
    IF SY-SUBRC >< 0.
    WRITE: / 'Error reading file from local PC' COLOR COL_NEGATIVE.
    ENDIF.
    ELSEIF RB_UNIX = 'X'.
    TRANSLATE F_FILENAME USING '\/'. " correct slash for unix
    OPEN DATASET F_FILENAME FOR INPUT MESSAGE LC_MESSAGE IN TEXT MODE.
    IF SY-SUBRC = 0.
    DO.
    READ DATASET F_FILENAME INTO FTAB_TABLE.
    IF SY-SUBRC = 0.
    APPEND FTAB_TABLE.
    ELSE.
    EXIT.
    ENDIF.
    ENDDO.
    CLOSE DATASET F_FILENAME.
    ELSE.
    WRITE: / 'Error reading file from remote computer'
    COLOR COL_NEGATIVE,
    / LC_MESSAGE,
    / F_FILENAME.
    SY-SUBRC = 4.
    ENDIF.
    ENDIF.
    ENDFORM. " READ_REPORT_FROM_DISK
    FORM SPLIT_INCOMING_FILE *
    --> FTAB_PROGRAM_FILE *
    --> FTAB_PROGRAM_SOURCE *
    --> ` *
    --> FTAB_PROGRAM_TEXTS *
    FORM SPLIT_INCOMING_FILE TABLES FTAB_PROGRAM_FILE
    STRUCTURE MTAB_PROGRAM_FILE
    FTAB_PROGRAM_SOURCE
    STRUCTURE MTAB_PROGRAM_SOURCE
    FTAB_PROGRAM_TEXTS
    STRUCTURE MTAB_PROGRAM_TEXTS
    FTAB_PROGRAM_DOCUMENTATION
    STRUCTURE MTAB_PROGRAM_DOCUMENTATION
    CHANGING FSTR_TRDIR
    FSTR_THEAD.
    DATA:
    LC_DATATYPE(4) TYPE C, " Type of data, REPO, TEXP, RDIR
    LC_PROGRAM_FILE LIKE MTAB_PROGRAM_FILE.
    LOOP AT FTAB_PROGRAM_FILE.
    LC_PROGRAM_FILE = FTAB_PROGRAM_FILE.
    CASE LC_PROGRAM_FILE(9).
    WHEN MC_TRDIR_IDENTIFIER.
    LC_DATATYPE = MC_TRDIR_SHORT.
    WHEN MC_REPORT_IDENTIFIER.
    LC_DATATYPE = MC_REPORT_SHORT.
    WHEN MC_TEXT_IDENTIFIER.
    LC_DATATYPE = MC_TEXT_SHORT.
    WHEN MC_DOC_IDENTIFIER.
    LC_DATATYPE = MC_DOC_SHORT.
    WHEN MC_THEAD_IDENTIFIER.
    LC_DATATYPE = MC_THEAD_SHORT.
    WHEN OTHERS. " Actual contents of report, trdir, or text
    CASE LC_DATATYPE.
    WHEN MC_TRDIR_SHORT.
    FSTR_TRDIR = FTAB_PROGRAM_FILE.
    WHEN MC_REPORT_SHORT.
    FTAB_PROGRAM_SOURCE = FTAB_PROGRAM_FILE.
    APPEND FTAB_PROGRAM_SOURCE.
    WHEN MC_TEXT_SHORT.
    FTAB_PROGRAM_TEXTS = FTAB_PROGRAM_FILE.
    APPEND FTAB_PROGRAM_TEXTS.
    WHEN MC_THEAD_SHORT.
    FSTR_THEAD = FTAB_PROGRAM_FILE.
    WHEN MC_DOC_SHORT.
    FTAB_PROGRAM_DOCUMENTATION = FTAB_PROGRAM_FILE.
    APPEND FTAB_PROGRAM_DOCUMENTATION.
    ENDCASE.
    ENDCASE.
    ENDLOOP.
    ENDFORM. " SPLIT_INCOMING_FILE
    FORM INSERT_NEW_REPORT*
    --> FTAB_PROGRAM_SOURCE *
    --> FTAB_PROGRAM_TEXTS *
    --> F_TRDIR *
    FORM INSERT_NEW_REPORT TABLES FTAB_PROGRAM_SOURCE
    STRUCTURE MTAB_PROGRAM_SOURCE
    FTAB_PROGRAM_TEXTS
    STRUCTURE MTAB_PROGRAM_TEXTS
    FTAB_PROGRAM_DOCUMENTATION
    STRUCTURE MTAB_PROGRAM_DOCUMENTATION
    USING FSTR_TRDIR LIKE TRDIR
    FSTR_THEAD LIKE MSTR_THEAD.
    DATA:
    LC_OBJ_NAME LIKE E071-OBJ_NAME,
    LC_LINE2(40) TYPE C,
    LC_ANSWER(1) TYPE C.
    *-- read trdir to see if the report already exists, if it does, prompt
    *-- user to overwrite or abort.
    SELECT SINGLE * FROM TRDIR WHERE NAME = FSTR_TRDIR-NAME.
    IF SY-SUBRC = 0. " Already exists
    CONCATENATE 'want to overwrite report'
    FSTR_TRDIR-NAME
    INTO LC_LINE2 SEPARATED BY SPACE.
    CONCATENATE LC_LINE2
    INTO LC_LINE2.
    CALL FUNCTION 'POPUP_TO_CONFIRM_STEP'
    EXPORTING
    DEFAULTOPTION = 'N'
    TEXTLINE1 = 'The selected report already exists, do you'
    TEXTLINE2 = LC_LINE2
    TITEL = 'Report already exists'
    CANCEL_DISPLAY = SPACE
    IMPORTING
    ANSWER = LC_ANSWER
    EXCEPTIONS
    OTHERS = 1.
    ELSE.
    LC_ANSWER = 'J'.
    ENDIF.
    IF LC_ANSWER = 'J'.
    *-- Create the TADIR entry. (TRDIR entry created by INSERT REPORT)
    LC_OBJ_NAME = TRDIR-NAME.
    CALL FUNCTION 'TR_TADIR_POPUP_ENTRY_E071'
    EXPORTING
    WI_E071_PGMID = 'R3TR'
    WI_E071_OBJECT = 'PROG'
    WI_E071_OBJ_NAME = LC_OBJ_NAME
    WI_TADIR_DEVCLASS = '$TMP'
    EXCEPTIONS
    EXIT = 3
    OTHERS = 4.
    IF SY-SUBRC = 0.
    *-- Create Report
    INSERT REPORT FSTR_TRDIR-NAME FROM FTAB_PROGRAM_SOURCE.
    *-- Create Texts
    INSERT TEXTPOOL FSTR_TRDIR-NAME FROM FTAB_PROGRAM_TEXTS
    LANGUAGE SY-LANGU.
    *-- Save Documentation
    CALL FUNCTION 'DOCU_UPDATE'
    EXPORTING
    HEAD = FSTR_THEAD
    STATE = 'A'
    TYP = 'E'
    VERSION = '1'
    TABLES
    LINE = FTAB_PROGRAM_DOCUMENTATION
    EXCEPTIONS
    OTHERS = 1.
    ELSE.
    WRITE: / 'Error updating the TADIR entry' COLOR COL_NEGATIVE,
    'Program' COLOR COL_NEGATIVE INTENSIFIED OFF,
    FSTR_TRDIR-NAME, 'was not loaded into SAP.'
    COLOR COL_NEGATIVE INTENSIFIED OFF.
    ENDIF.
    ELSE.
    WRITE: / FSTR_TRDIR-NAME COLOR COL_NEGATIVE,
    'was not uploaded into SAP. Action cancelled by user'
    COLOR COL_NEGATIVE INTENSIFIED OFF.
    ENDIF.
    ENDFORM. " INSERT_NEW_REPORT
    FORM GET_NAME *
    --> VALUE(F_FIELD) *
    --> F_NAME *
    FORM GET_NAME USING VALUE(F_FIELD)
    CHANGING F_NAME.
    DATA: LTAB_FIELDS LIKE DYNPREAD OCCURS 0 WITH HEADER LINE,
    LC_PROG LIKE D020S-PROG,
    LC_DNUM LIKE D020S-DNUM.
    TRANSLATE F_FIELD TO UPPER CASE.
    refresh ltab_fields.
    LTAB_FIELDS-FIELDNAME = F_FIELD.
    append ltab_fields.
    LC_PROG = SY-REPID .
    LC_DNUM = SY-DYNNR .
    CALL FUNCTION 'DYNP_VALUES_READ'
    EXPORTING
    DYNAME = LC_PROG
    DYNUMB = LC_DNUM
    TABLES
    dynpfields = ltab_fields
    EXCEPTIONS
    OTHERS = 01.
    read table ltab_fields index 1.
    IF SY-SUBRC EQ 0.
    F_NAME = LTAB_FIELDS-FIELDVALUE.
    refresh ltab_fields.
    ENDIF.
    CALL FUNCTION 'F4_USER'
    EXPORTING
    OBJECT = F_NAME
    IMPORTING
    RESULT = F_NAME.
    ENDFORM. " GET_NAME
    Program Texts
    DIR File Download Options (File Selection)
    FIL File Options
    FNA Enter filename below (under File Options)
    H01 Prog Name
    H03 Program Description
    SNG Upload a single file
    UDL Upload to SAP/Download from SAP
    UPL File Upload Options
    R Backup/Restore program source code with texts
    P_PATH Path to save programs to
    RB_DOS Files on local computer
    RB_DOWN Download Programs
    RB_FILE Upload a single file
    RB_LIST Select program(s) from a list
    RB_UNIX Files on remote computer
    RB_UP Upload Programs to SAP
    S_CDAT Date Created
    S_CNAM Created by UserID
    S_NAME Program Name
    S_SUBC Program Type
    S_UDAT Date Changed
    S_UNAM Last Changed by UserID

    Hi
    you can use SAPLink for this
    http://code.google.com/p/saplink/
    Abhi

  • Saving source code

    Hi Experts,
    is there any possibility to save the source code with 1 step? (E.g. main program in one file, includes in another file(s), etc...)
    So I would like to save the main program and every subroutines that belongs to it into one or different TXT files "with 1 click"!
    Thx in advance.

    I think you need to write a small utility for this
    report  zaRs
       no standard page heading
       line-size  95 .
    perform f_get_pgm.
      if not i_include[] is initial.
        clear v_index.
        loop at i_include into wa_include
          clear   : i_pgm.
          refresh : i_pgm.
          read report wa_include-txt into i_pgm.
          if sy-subrc eq 0.
          v_date = sy-datum.
          v_time = sy-uzeit.
          concatenate 'C:Backup_' v_date '_' v_time into v_file.
          call function 'WS_DOWNLOAD'
            exporting
              filename = v_file
              filetype = 'ASC'
              mode     = 'A'
            tables
              data_tab = i_pgm.
         endif.
        endloop.
      endif.
    form f_get_pgm.
      call function 'RFC_READ_REPORT'
        exporting
          program = p_rname
        tables
          qtab    = i_pgm.
      describe table i_pgm lines v_lines1.
      wa_include-txt = p_rname.
      append wa_include to i_include.
      if not i_pgm[] is initial.
        clear v_index.
        loop at i_pgm into wa_pgm.
          v_index = sy-tabix.
          translate wa_pgm to upper case.
          split wa_pgm-txt at '"' into wa_pgm-txt v_comment.
          if wa_pgm-txt(1) ne '*' and
              wa_pgm-txt cs 'INCLUDE'.
            replace '.' with space into wa_pgm-txt.
            condense wa_pgm-txt .
            split wa_pgm-txt at space into v_comment v_comment1.
            move v_comment1 to wa_include.
            append wa_include to i_include.
          endif.
        endloop.
      else.
        message i001 with text-001.
      endif.
      clear v_index.
      if not i_include[] is initial.
        loop at i_include into wa_include.
          v_index = sy-tabix.
          select obj_name from tadir
                                 into tadir-obj_name
                                 up to 1 rows
                                 where obj_name eq  wa_include-txt
                                 and   pgmid    eq 'R3TR'
                                 and   object   eq 'PROG'.
          endselect.
          if sy-subrc ne 0.
            delete i_include index v_index.
          endif.
        endloop.
      endif.
    endform.                    " f_get_pgm

  • How to Upload Program Source Code

    Hello,
    i have a program which downloads the source code into text files.
    I need to create all these into another server.
    so i need a program to upload these programs.
    Any idea how to it? Thanks in advance.
    Thanks&Regards,
    Sayanna Damerla

    Try this custom code:
    Upload and Download ABAP Source Code
    Source Code Listing
    Report: ZKBPROGS             *
    Function   : Up/Download ABAP reports complete with texts            *
            - this program does not update TRDIR with the                *
              TRDIR entries that are in the program uploaded.  Instead,  *
              current users stats are used.          *
            - this program allows selection of reports from a list or    *
              a single report can be tuped in and uploaded               *
            - this program also updates TADIR so that a development class*
              is assigned to the program             *
            - this program checks to see if the program already has a    *
              TRDIR entry, and if it does, warns the user                *
            - this program will save/restore the program documenation too*
    REPORT ZKBPROGS
           NO STANDARD PAGE HEADING
           LINE-SIZE  255.
    Declare Database Objects     *
    tables:
      DOKIL,
      TRDIR.
    Constants*
    CONSTANTS:
      MC_TRDIR_IDENTIFIER(72)  TYPE C VALUE '%&%& RDIR',
      MC_REPORT_IDENTIFIER(72) TYPE C VALUE '%&%& REPO',
      MC_TEXT_IDENTIFIER(72)   TYPE C VALUE '%&%& TEXP',
      MC_THEAD_IDENTIFIER(72)  TYPE C VALUE '%&%& HEAD',
      MC_DOC_IDENTIFIER(72)    TYPE C VALUE '%&%& DOKL',
      MC_TRDIR_SHORT(4)        TYPE C VALUE 'RDIR',
      MC_REPORT_SHORT(4)       TYPE C VALUE 'REPO',
      MC_TEXT_SHORT(4)         TYPE C VALUE 'TEXP',
      MC_THEAD_SHORT(4)        TYPE C VALUE 'HEAD',
      MC_DOC_SHORT(4)          TYPE C VALUE 'DOKP'.
    Declare Module level data structures             *
    DATA: BEGIN OF MTAB_PROGRAM_SOURCE OCCURS 0,
            LINE(72) TYPE C,
          END OF MTAB_PROGRAM_SOURCE.
    DATA: MTAB_PROGRAM_TRDIR LIKE TRDIR OCCURS 0 WITH HEADER LINE.
    DATA: MTAB_PROGRAM_TEXTS LIKE TEXTPOOL OCCURS 0 WITH HEADER LINE.
    DATA: MSTR_THEAD LIKE THEAD.
    DATA: BEGIN OF MTAB_PROGRAM_FILE OCCURS 0,
            LINE(275) TYPE C,
          END OF MTAB_PROGRAM_FILE.
    DATA: BEGIN OF MTAB_DIRECTORY OCCURS 0,
            NAME LIKE TRDIR-NAME,
            DESC(72) TYPE C,
            SAVENAME LIKE RLGRAP-FILENAME,
          END OF MTAB_DIRECTORY.
    DATA: BEGIN OF MTAB_PROGRAM_DOCUMENTATION OCCURS 0,
            LINE(255) TYPE C,
          END OF MTAB_PROGRAM_DOCUMENTATION.
    Selection Screen             *
    *-- Options for upload/download of programs
    SELECTION-SCREEN BEGIN OF BLOCK FRM_OPTIONS WITH FRAME TITLE TEXT-UDL.
    PARAMETERS:
      RB_DOWN RADIOBUTTON GROUP UDL DEFAULT 'X'.       " Download reports
    SELECTION-SCREEN BEGIN OF BLOCK FRM_TRDIR WITH FRAME TITLE TEXT-DIR.
    SELECT-OPTIONS:
      S_NAME  FOR TRDIR-NAME,              " Program Name
      S_SUBC  FOR TRDIR-SUBC               " Program Type
              DEFAULT 'F' OPTION EQ SIGN E," Exclude Functions by default
      S_CNAM  FOR TRDIR-CNAM               " Created by
              DEFAULT SY-UNAME,
      S_UNAM  FOR TRDIR-UNAM,              " Last Changed by
      S_CDAT  FOR TRDIR-CDAT,              " Creation date
      S_UDAT  FOR TRDIR-UDAT.              " Last update date
    SELECTION-SCREEN END OF BLOCK FRM_TRDIR.
    *-- Options for uploading programs
    PARAMETERS:
      RB_UP   RADIOBUTTON GROUP UDL.       " Upload reports
    SELECTION-SCREEN BEGIN OF BLOCK FRM_UPLOAD WITH FRAME TITLE TEXT-UPL.
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 1(29) TEXT-SNG.
    PARAMETERS:
      RB_FILE RADIOBUTTON GROUP HOW DEFAULT 'X'.
    SELECTION-SCREEN COMMENT 33(42) TEXT-FNA.
    SELECTION-SCREEN END OF LINE.
    PARAMETERS:
      RB_LIST RADIOBUTTON GROUP HOW.
    SELECTION-SCREEN END OF BLOCK FRM_UPLOAD.
    SELECTION-SCREEN END OF BLOCK FRM_OPTIONS.
    *-- Options for up/downloading programs
    SELECTION-SCREEN BEGIN OF BLOCK FRM_FILEN WITH FRAME TITLE TEXT-FIL.
    PARAMETERS:
      RB_DOS  RADIOBUTTON GROUP FIL DEFAULT 'X', " Save to local
      RB_UNIX RADIOBUTTON GROUP FIL,       " Save to UNIX
      P_PATH  LIKE RLGRAP-FILENAME         " Path to save files to
            DEFAULT 'c:\temp\'.
    SELECTION-SCREEN END OF BLOCK FRM_FILEN.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_NAME-LOW.
      CALL FUNCTION 'F4_PROGRAM'
           EXPORTING
                OBJECT             = S_NAME-LOW
                SUPPRESS_SELECTION = 'X'
           IMPORTING
                RESULT             = S_NAME-LOW
           EXCEPTIONS
                OTHERS             = 1.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_NAME-HIGH.
      CALL FUNCTION 'F4_PROGRAM'
           EXPORTING
                OBJECT             = S_NAME-HIGH
                SUPPRESS_SELECTION = 'X'
           IMPORTING
                RESULT             = S_NAME-HIGH
           EXCEPTIONS
                OTHERS             = 1.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_UNAM-LOW.
      PERFORM GET_NAME USING 'S_UNAM-LOW'
                    CHANGING S_UNAM-LOW.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_UNAM-HIGH.
      PERFORM GET_NAME USING 'S_UNAM-HIGH'
                    CHANGING S_UNAM-HIGH.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_CNAM-LOW.
      PERFORM GET_NAME USING 'S_CNAM-LOW'
                    CHANGING S_CNAM-LOW.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_CNAM-HIGH.
      PERFORM GET_NAME USING 'S_CNAM-HIGH'
                    CHANGING S_CNAM-HIGH.
    TOP-OF-PAGE.
      IF RB_LIST = 'X'.
        FORMAT COLOR COL_HEADING.
        NEW-LINE.
        WRITE: AT 3 TEXT-H01,
               AT 15 TEXT-H03.
        FORMAT COLOR OFF.
      ENDIF.
    AT LINE-SELECTION.
      CHECK RB_LIST = 'X'.                 " only do in list mode
      READ LINE SY-CUROW FIELD VALUE MTAB_DIRECTORY-SAVENAME.
    *-- Read file into an internal table
      PERFORM READ_REPORT_FROM_DISK TABLES MTAB_PROGRAM_FILE
                USING  MTAB_DIRECTORY-SAVENAME.
    *-- Split table into TADIR entry, report lines, and report text
      PERFORM SPLIT_INCOMING_FILE TABLES MTAB_PROGRAM_FILE
                     MTAB_PROGRAM_SOURCE
                     MTAB_PROGRAM_TEXTS
                     MTAB_PROGRAM_DOCUMENTATION
            CHANGING TRDIR
                     MSTR_THEAD.
    *-- Save all of the data
      PERFORM INSERT_NEW_REPORT TABLES MTAB_PROGRAM_SOURCE
                   MTAB_PROGRAM_TEXTS
                   MTAB_PROGRAM_DOCUMENTATION
            USING  TRDIR
                   MSTR_THEAD.
    Start of processing          *
    START-OF-SELECTION.
      FORMAT COLOR COL_NORMAL.
      IF RB_DOWN = 'X'.
        PERFORM DOWNLOAD_REPORTS.
      ELSEIF RB_UP = 'X'.
        PERFORM UPLOAD_REPORTS.
      ENDIF.
    END-OF-SELECTION.
      IF RB_DOWN = 'X'.
        CONCATENATE P_PATH
                    'directory.txt'
          INTO P_PATH.
        PERFORM SAVE_TABLE_TO_FILE TABLES MTAB_DIRECTORY
               USING  P_PATH.
      ENDIF.
          FORM UPLOAD_REPORTS   *
    FORM UPLOAD_REPORTS.
    *-- Can upload a reports entered in selection criteria or
    *-- select from a list.  List can be from index.txt in same directory
    *-- (created by the download) or by reading the first line of each file
    *-- in the directory.
      IF RB_FILE = 'X'. " Upload single program from a file
    *-- Read file into an internal table
        PERFORM READ_REPORT_FROM_DISK TABLES MTAB_PROGRAM_FILE
                  USING  P_PATH.
    *-- Split table into TADIR entry, report lines, and report text
        PERFORM SPLIT_INCOMING_FILE TABLES MTAB_PROGRAM_FILE
                       MTAB_PROGRAM_SOURCE
                       MTAB_PROGRAM_TEXTS
                       MTAB_PROGRAM_DOCUMENTATION
              CHANGING TRDIR
                       MSTR_THEAD.
    *-- Save all of the data
        PERFORM INSERT_NEW_REPORT TABLES MTAB_PROGRAM_SOURCE
                     MTAB_PROGRAM_TEXTS
                     MTAB_PROGRAM_DOCUMENTATION
              USING  TRDIR
                     MSTR_THEAD.
      ELSEIF RB_LIST = 'X'. " Show list for user to choose from
    *-- get list of report names/descriptions from directory text
        CONCATENATE P_PATH
                    'directory.txt'
        INTO P_PATH.
        PERFORM READ_REPORT_FROM_DISK TABLES MTAB_DIRECTORY
                  USING  P_PATH.
        SORT MTAB_DIRECTORY.
    *-- Write out list of report names/descriptions
        LOOP AT MTAB_DIRECTORY.
          WRITE:
            / MTAB_DIRECTORY-NAME UNDER TEXT-H01,
              MTAB_DIRECTORY-DESC UNDER TEXT-H03,
              MTAB_DIRECTORY-SAVENAME.
        ENDLOOP.
    *-- Process user selections for reports to upload.
      ENDIF.
    ENDFORM.           " upload_reports
          FORM DOWNLOAD_REPORTS *
          From the user selections, get all programs that meet the      *
          criteria, and save them in ftab_program_directory.            *
          Also save the report to disk.             *
    FORM DOWNLOAD_REPORTS.
      DATA:
        LC_FULL_FILENAME LIKE RLGRAP-FILENAME.
    *-- The table is put into an internal table because the program will
    *-- abend if multiple transfers to a dataset occur within a SELECT/
    *-- ENDSELCT (tested on 3.1H)
      SELECT * FROM  TRDIR
             INTO TABLE MTAB_PROGRAM_TRDIR
             WHERE  NAME  IN S_NAME
             AND    SUBC  IN S_SUBC
             AND    CNAM  IN S_CNAM
             AND    UNAM  IN S_UNAM
             AND    CDAT  IN S_CDAT
             AND    UDAT  IN S_UDAT.
      LOOP AT MTAB_PROGRAM_TRDIR.
    *-- Clear out text and source code tables
        CLEAR:
          MTAB_PROGRAM_FILE,
          MTAB_PROGRAM_SOURCE,
          MTAB_PROGRAM_TEXTS,
          MTAB_PROGRAM_DOCUMENTATION.
        REFRESH:
          MTAB_PROGRAM_FILE,
          MTAB_PROGRAM_SOURCE,
          MTAB_PROGRAM_TEXTS,
          MTAB_PROGRAM_DOCUMENTATION.
    *-- Get the report
        READ REPORT MTAB_PROGRAM_TRDIR-NAME INTO MTAB_PROGRAM_SOURCE.
    *-- Get the text for the report
        READ TEXTPOOL MTAB_PROGRAM_TRDIR-NAME INTO MTAB_PROGRAM_TEXTS.
    *-- Get the documentation for the report
        CLEAR DOKIL.
        SELECT * UP TO 1 ROWS FROM DOKIL
               WHERE  ID          = 'RE'
               AND    OBJECT      = MTAB_PROGRAM_TRDIR-NAME
               AND    LANGU       = SY-LANGU
               AND    TYP         = 'E'
               ORDER BY VERSION DESCENDING.
        ENDSELECT.
    *-- Documentation exists for this object
        IF SY-SUBRC = 0.
          CALL FUNCTION 'DOCU_READ'
               EXPORTING
                    ID      = DOKIL-ID
                    LANGU   = DOKIL-LANGU
                    OBJECT  = DOKIL-OBJECT
                    TYP     = DOKIL-TYP
                    VERSION = DOKIL-VERSION
               IMPORTING
                    HEAD    = MSTR_THEAD
               TABLES
                    LINE    = MTAB_PROGRAM_DOCUMENTATION
               EXCEPTIONS
                    OTHERS  = 1.
        ENDIF.
    *-- Put the report code and texts into a single file
    *-- Put the identifier line in so that the start of the TRDIR line
    *-- is marked
        CONCATENATE MC_TRDIR_IDENTIFIER
        MTAB_PROGRAM_TRDIR-NAME
        INTO MTAB_PROGRAM_FILE-LINE.
        APPEND MTAB_PROGRAM_FILE.
    *-- Add the TRDIR line
        MTAB_PROGRAM_FILE-LINE = MTAB_PROGRAM_TRDIR.
        APPEND MTAB_PROGRAM_FILE.
    *-- Put the identifier line in so that the start of the report code
    *-- is marked
        CONCATENATE MC_REPORT_IDENTIFIER
                    MTAB_PROGRAM_TRDIR-NAME
          INTO MTAB_PROGRAM_FILE-LINE.
        APPEND MTAB_PROGRAM_FILE.
    *-- Add the report code
        LOOP AT MTAB_PROGRAM_SOURCE.
          MTAB_PROGRAM_FILE = MTAB_PROGRAM_SOURCE.
          APPEND MTAB_PROGRAM_FILE.
        ENDLOOP.
    *-- Put the identifier line in so that the start of the report text
    *-- is marked
        CONCATENATE MC_TEXT_IDENTIFIER
                    MTAB_PROGRAM_TRDIR-NAME
          INTO MTAB_PROGRAM_FILE-LINE.
        APPEND MTAB_PROGRAM_FILE.
    *-- Add the report texts
        LOOP AT MTAB_PROGRAM_TEXTS.
          MTAB_PROGRAM_FILE = MTAB_PROGRAM_TEXTS.
          APPEND MTAB_PROGRAM_FILE.
        ENDLOOP.
    *-- Put the identifier line in so that the start of the THEAD record
    *-- is marked
        CONCATENATE MC_THEAD_IDENTIFIER
                    MTAB_PROGRAM_TRDIR-NAME
          INTO MTAB_PROGRAM_FILE-LINE.
        APPEND MTAB_PROGRAM_FILE.
        MTAB_PROGRAM_FILE = MSTR_THEAD.
        APPEND MTAB_PROGRAM_FILE.
    *-- Put the identifier line in so that the start of the report
    *-- documentation is marked
        CONCATENATE MC_DOC_IDENTIFIER
                    MTAB_PROGRAM_TRDIR-NAME
          INTO MTAB_PROGRAM_FILE-LINE.
        APPEND MTAB_PROGRAM_FILE.
    *-- Add the report documentation
        LOOP AT MTAB_PROGRAM_DOCUMENTATION.
          MTAB_PROGRAM_FILE = MTAB_PROGRAM_DOCUMENTATION.
          APPEND MTAB_PROGRAM_FILE.
        ENDLOOP.
    *-- Make the fully pathed filename that report will be saved to
        CONCATENATE P_PATH
                    MTAB_PROGRAM_TRDIR-NAME
                    '.txt'
          INTO LC_FULL_FILENAME.
        PERFORM SAVE_TABLE_TO_FILE TABLES MTAB_PROGRAM_FILE
               USING  LC_FULL_FILENAME.
    *-- Write out message with Program Name/Description
        READ TABLE MTAB_PROGRAM_TEXTS WITH KEY ID = 'R'.
        IF SY-SUBRC = 0.
          MTAB_DIRECTORY-NAME = MTAB_PROGRAM_TRDIR-NAME.
          MTAB_DIRECTORY-DESC = MTAB_PROGRAM_TEXTS-ENTRY.
          MTAB_DIRECTORY-SAVENAME = LC_FULL_FILENAME.
          APPEND MTAB_DIRECTORY.
          WRITE: / MTAB_PROGRAM_TRDIR-NAME,
                   MTAB_PROGRAM_TEXTS-ENTRY(65) COLOR COL_HEADING.
        ELSE.
          MTAB_DIRECTORY-NAME = MTAB_PROGRAM_TRDIR-NAME.
          MTAB_DIRECTORY-DESC = 'No description available'.
          MTAB_DIRECTORY-SAVENAME = LC_FULL_FILENAME.
          APPEND MTAB_DIRECTORY.
          WRITE: / MTAB_PROGRAM_TRDIR-NAME.
        ENDIF.
      ENDLOOP.
    ENDFORM.           " BUILD_PROGRAM_DIRECTORY
          FORM SAVE_TABLE_TO_FILE                   *
    -->  FTAB_TABLE            *
    -->  F_FILENAME            *
    FORM SAVE_TABLE_TO_FILE TABLES FTAB_TABLE
        USING  F_FILENAME.
      IF RB_DOS = 'X'.                  " Save file to presentation server
        CALL FUNCTION 'WS_DOWNLOAD'
             EXPORTING
                  FILENAME = F_FILENAME
                  FILETYPE = 'ASC'
             TABLES
                  DATA_TAB = FTAB_TABLE
             EXCEPTIONS
                  OTHERS   = 4.
        IF SY-SUBRC NE 0.
          WRITE: / 'Error opening dataset' COLOR COL_NEGATIVE,
                   F_FILENAME COLOR COL_NEGATIVE.
        ENDIF.
      ELSE.            " Save file to application server
        OPEN DATASET F_FILENAME FOR OUTPUT IN TEXT MODE.
        IF SY-SUBRC = 0.
          LOOP AT FTAB_TABLE.
            TRANSFER FTAB_TABLE TO F_FILENAME.
            IF SY-SUBRC NE 0.
              WRITE: / 'Error writing record to file;' COLOR COL_NEGATIVE,
                       F_FILENAME COLOR COL_NEGATIVE.
            ENDIF.
          ENDLOOP.
        ELSE.
          WRITE: / 'Error opening dataset' COLOR COL_NEGATIVE,
                   F_FILENAME COLOR COL_NEGATIVE.
        ENDIF.
      ENDIF.           " End RB_DOS
    ENDFORM.           " SAVE_PROGRAM
          FORM READ_REPORT_FROM_DISK                *
          Read report into internal table.  Can read from local or      *
          remote computer       *
    FORM READ_REPORT_FROM_DISK TABLES FTAB_TABLE
           USING  F_FILENAME.
      DATA:
         LC_MESSAGE(128) TYPE C.
      CLEAR   FTAB_TABLE.
      REFRESH FTAB_TABLE.
      IF RB_DOS = 'X'.
        TRANSLATE F_FILENAME USING '/\'.   " correct slash for Dos PC file
        CALL FUNCTION 'WS_UPLOAD'
             EXPORTING
                  FILENAME            = F_FILENAME
                  FILETYPE            = 'ASC'
             TABLES
                  DATA_TAB            = FTAB_TABLE
             EXCEPTIONS
                  CONVERSION_ERROR    = 1
                  FILE_OPEN_ERROR     = 2
                  FILE_READ_ERROR     = 3
                  INVALID_TABLE_WIDTH = 4
                  INVALID_TYPE        = 5
                  NO_BATCH            = 6
                  UNKNOWN_ERROR       = 7
                  OTHERS              = 8.
        IF SY-SUBRC >< 0.
          WRITE: / 'Error reading file from local PC' COLOR COL_NEGATIVE.
        ENDIF.
      ELSEIF RB_UNIX = 'X'.
        TRANSLATE F_FILENAME USING '\/'.   " correct slash for unix
        OPEN DATASET F_FILENAME FOR INPUT MESSAGE LC_MESSAGE IN TEXT MODE.
        IF SY-SUBRC = 0.
          DO.
            READ DATASET F_FILENAME INTO FTAB_TABLE.
            IF SY-SUBRC = 0.
              APPEND FTAB_TABLE.
            ELSE.
              EXIT.
            ENDIF.
          ENDDO.
          CLOSE DATASET F_FILENAME.
        ELSE.
          WRITE: / 'Error reading file from remote computer'
      COLOR COL_NEGATIVE,
                 / LC_MESSAGE,
                 / F_FILENAME.
          SY-SUBRC = 4.
        ENDIF.
      ENDIF.
    ENDFORM.           " READ_REPORT_FROM_DISK
          FORM SPLIT_INCOMING_FILE                  *
    -->  FTAB_PROGRAM_FILE     *
    -->  FTAB_PROGRAM_SOURCE   *
    -->  ` *
    -->  FTAB_PROGRAM_TEXTS    *
    FORM SPLIT_INCOMING_FILE TABLES FTAB_PROGRAM_FILE
                     STRUCTURE MTAB_PROGRAM_FILE
                FTAB_PROGRAM_SOURCE
                     STRUCTURE MTAB_PROGRAM_SOURCE
                FTAB_PROGRAM_TEXTS
                     STRUCTURE MTAB_PROGRAM_TEXTS
                FTAB_PROGRAM_DOCUMENTATION
                    STRUCTURE MTAB_PROGRAM_DOCUMENTATION
       CHANGING FSTR_TRDIR
                FSTR_THEAD.
      DATA:
        LC_DATATYPE(4) TYPE C,             " Type of data, REPO, TEXP, RDIR
        LC_PROGRAM_FILE LIKE MTAB_PROGRAM_FILE.
      LOOP AT FTAB_PROGRAM_FILE.
        LC_PROGRAM_FILE = FTAB_PROGRAM_FILE.
        CASE LC_PROGRAM_FILE(9).
          WHEN MC_TRDIR_IDENTIFIER.
            LC_DATATYPE = MC_TRDIR_SHORT.
          WHEN MC_REPORT_IDENTIFIER.
            LC_DATATYPE = MC_REPORT_SHORT.
          WHEN MC_TEXT_IDENTIFIER.
            LC_DATATYPE = MC_TEXT_SHORT.
          WHEN MC_DOC_IDENTIFIER.
            LC_DATATYPE = MC_DOC_SHORT.
          WHEN MC_THEAD_IDENTIFIER.
            LC_DATATYPE = MC_THEAD_SHORT.
          WHEN OTHERS. " Actual contents of report, trdir, or text
            CASE LC_DATATYPE.
              WHEN MC_TRDIR_SHORT.
                FSTR_TRDIR = FTAB_PROGRAM_FILE.
              WHEN MC_REPORT_SHORT.
                FTAB_PROGRAM_SOURCE = FTAB_PROGRAM_FILE.
                APPEND FTAB_PROGRAM_SOURCE.
              WHEN MC_TEXT_SHORT.
                FTAB_PROGRAM_TEXTS = FTAB_PROGRAM_FILE.
                APPEND FTAB_PROGRAM_TEXTS.
              WHEN MC_THEAD_SHORT.
                FSTR_THEAD = FTAB_PROGRAM_FILE.
              WHEN MC_DOC_SHORT.
                FTAB_PROGRAM_DOCUMENTATION = FTAB_PROGRAM_FILE.
                APPEND FTAB_PROGRAM_DOCUMENTATION.
            ENDCASE.
        ENDCASE.
      ENDLOOP.
    ENDFORM.           " SPLIT_INCOMING_FILE
          FORM INSERT_NEW_REPORT*
    -->  FTAB_PROGRAM_SOURCE   *
    -->  FTAB_PROGRAM_TEXTS    *
    -->  F_TRDIR               *
    FORM INSERT_NEW_REPORT TABLES FTAB_PROGRAM_SOURCE
                  STRUCTURE MTAB_PROGRAM_SOURCE
              FTAB_PROGRAM_TEXTS
                   STRUCTURE MTAB_PROGRAM_TEXTS
              FTAB_PROGRAM_DOCUMENTATION
                   STRUCTURE MTAB_PROGRAM_DOCUMENTATION
       USING  FSTR_TRDIR LIKE TRDIR
              FSTR_THEAD LIKE MSTR_THEAD.
      DATA:
        LC_OBJ_NAME LIKE E071-OBJ_NAME,
        LC_LINE2(40)     TYPE C,
        LC_ANSWER(1)     TYPE C.
    *-- read trdir to see if the report already exists, if it does, prompt
    *-- user to overwrite or abort.
      SELECT SINGLE * FROM TRDIR WHERE NAME = FSTR_TRDIR-NAME.
      IF SY-SUBRC = 0. " Already exists
        CONCATENATE 'want to overwrite report'
                    FSTR_TRDIR-NAME
          INTO LC_LINE2 SEPARATED BY SPACE.
        CONCATENATE LC_LINE2
          INTO LC_LINE2.
        CALL FUNCTION 'POPUP_TO_CONFIRM_STEP'
             EXPORTING
                  DEFAULTOPTION  = 'N'
                  TEXTLINE1   = 'The selected report already exists, do you'
                  TEXTLINE2      = LC_LINE2
                  TITEL          = 'Report already exists'
                  CANCEL_DISPLAY = SPACE
             IMPORTING
                  ANSWER         = LC_ANSWER
             EXCEPTIONS
                  OTHERS         = 1.
      ELSE.
        LC_ANSWER = 'J'.
      ENDIF.
      IF LC_ANSWER = 'J'.
    *-- Create the TADIR entry.  (TRDIR entry created by INSERT REPORT)
        LC_OBJ_NAME = TRDIR-NAME.
        CALL FUNCTION 'TR_TADIR_POPUP_ENTRY_E071'
             EXPORTING
                  WI_E071_PGMID     = 'R3TR'
                  WI_E071_OBJECT    = 'PROG'
                  WI_E071_OBJ_NAME  = LC_OBJ_NAME
                  WI_TADIR_DEVCLASS = '$TMP'
             EXCEPTIONS
                  EXIT              = 3
                  OTHERS            = 4.
        IF SY-SUBRC = 0.
    *-- Create Report
          INSERT REPORT FSTR_TRDIR-NAME FROM FTAB_PROGRAM_SOURCE.
    *-- Create Texts
          INSERT TEXTPOOL FSTR_TRDIR-NAME FROM FTAB_PROGRAM_TEXTS
                 LANGUAGE SY-LANGU.
    *-- Save Documentation
          CALL FUNCTION 'DOCU_UPDATE'
               EXPORTING
                    HEAD    = FSTR_THEAD
                    STATE   = 'A'
                    TYP     = 'E'
                    VERSION = '1'
               TABLES
                    LINE    = FTAB_PROGRAM_DOCUMENTATION
               EXCEPTIONS
                    OTHERS  = 1.
        ELSE.
          WRITE: / 'Error updating the TADIR entry' COLOR COL_NEGATIVE,
                   'Program' COLOR COL_NEGATIVE INTENSIFIED OFF,
                   FSTR_TRDIR-NAME, 'was not loaded into SAP.'
                      COLOR COL_NEGATIVE INTENSIFIED OFF.
        ENDIF.
      ELSE.
        WRITE: / FSTR_TRDIR-NAME COLOR COL_NEGATIVE,
                 'was not uploaded into SAP.  Action cancelled by user'
                     COLOR COL_NEGATIVE INTENSIFIED OFF.
      ENDIF.
    ENDFORM.           " INSERT_NEW_REPORT
          FORM GET_NAME         *
    -->  VALUE(F_FIELD)        *
    -->  F_NAME                *
    FORM GET_NAME USING VALUE(F_FIELD)
               CHANGING F_NAME.
      DATA: LTAB_FIELDS LIKE DYNPREAD OCCURS 0 WITH HEADER LINE,
            LC_PROG LIKE D020S-PROG,
            LC_DNUM LIKE D020S-DNUM.
      TRANSLATE F_FIELD TO UPPER CASE.
      refresh ltab_fields.
      LTAB_FIELDS-FIELDNAME = F_FIELD.
      append ltab_fields.
      LC_PROG =  SY-REPID .
      LC_DNUM =  SY-DYNNR .
      CALL FUNCTION 'DYNP_VALUES_READ'
           EXPORTING
                DYNAME     = LC_PROG
                DYNUMB     = LC_DNUM
           TABLES
                dynpfields = ltab_fields
           EXCEPTIONS
                OTHERS     = 01.
      read table ltab_fields index 1.
      IF SY-SUBRC EQ 0.
        F_NAME = LTAB_FIELDS-FIELDVALUE.
        refresh ltab_fields.
      ENDIF.
      CALL FUNCTION 'F4_USER'
           EXPORTING
                OBJECT = F_NAME
           IMPORTING
                RESULT = F_NAME.
    ENDFORM.           " GET_NAME
    Program Texts
    DIR             File Download Options (File Selection)
    FIL             File Options     
    FNA             Enter filename below (under File Options)
    H01             Prog Name
    H03             Program Description
    SNG             Upload a single file
    UDL             Upload to SAP/Download from SAP
    UPL             File Upload Options
    R               Backup/Restore program source code with texts
    P_PATH          Path to save programs to
    RB_DOS          Files on local computer
    RB_DOWN         Download Programs
    RB_FILE         Upload a single file
    RB_LIST         Select program(s) from a list          
    RB_UNIX         Files on remote computer               
    RB_UP           Upload Programs to SAP                 
    S_CDAT          Date Created       
    S_CNAM          Created by UserID  
    S_NAME          Program Name       
    S_SUBC          Program Type       
    S_UDAT          Date Changed       
    S_UNAM          Last Changed by UserID     
    Regards,
    Joy.

  • How to include source code in web dynpro java deployment

    Hi,
    We dont have NWDI.
    We are creating ear files out of web dynpro applications packaging them as sca files and deploying them in server.
    But the source  code is not included in ear.
    How to include source code with your ear/sca , so that when anyone downloads the sca file later, they are build the Project in the studio.
    How would they typically download? Do they require NWDI ,
    Right now we dont have NWDI in place, but we want to do is parcel the applications such that the source code should be available at a later time for download.
    This is possible with .par files , but what about web dynpro?
    Thanks,
    Deb

    If you are not using NWDI use the _comp file.

  • Looking for Source Codes

    hi everyone!
    I am looking for source codes with the following characteristics:
    - significant data processing (like fft or image processing algorithms)
    - use of just a few classes and/or packages (it must not use awt or swing)
    - code is not so big (200 lines of code at most)
    - program is multithreaded (it is not necessary)
    If anyone could help me, I would appreciate a lot.
    Thanks.

    Building a portfolio are we?

  • Procedural ABAP refactoring or mass source code replacement

    I am trying to change hard coded values from multiple source codes with respective constant names. Is there a tool to find and replace them according to a rules table. I wouldn't mind even if this tool was not in SAP (eg. Eclipse).
    Thank you in advance,
    Michalis.

    Dear Thomas,
    thank you for your prompt response.
    My idea was (and is) that since the ABAP compiler is embedded in Netweaver, it would be smart to get the compiler functionality together with regular expressions declaration in order to do what unix like systems do for years, replace strings with other strings. The program you suggest is well known for finding literals (substrings) in source, but when it does you never know what is the role of the literal on the source code line (in the particular code statement).
    Of course I agree with you regarding the term refactoring, that a human eye is needed, if I was to do real source code pattern recognition and replacement, but my driving need is more simple and way far from that (at least for now).
    Please keep me posted in case you have any news on the subject.

  • Source code as output

    hello everybody,
    This is my post to this forum.
    My question is "How to print the soource code as output"? Is there any method to echo the same code as output?
    Thanks in advance.

    What about this?Well, that requires that you have to source of the
    class in the current directory. I think (but I might
    be wrong) that the OP wants to write a class which
    prints itself without using the source.
    Kaj...but if the OP has control over the source itself it's better to get hold of the source as a resource instead of a file. Simply bundle the source code with your classes on the classpath. Or better yet, put it in your jar.
    I think the jdk/demo/jfc/SwingSet2 demo does something like this when showing each example's source under the "Source Code" tabs...
    Example:
    package example;
    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.io.PrintStream;
    public class Source {
        public static void print(Class clazz, PrintStream printStream)
                throws IOException {
            // convert from "example.Source" to "/example/Source.java"
            String resourceName =
                "/" + clazz.getName().replaceAll("\\.", "/") + ".java";
            InputStream inputStream = clazz.getResourceAsStream(resourceName);
            if (inputStream == null) {
                printStream.println("no source found for class " + clazz.getName());
            } else {
                BufferedReader reader =
                    new BufferedReader(new InputStreamReader(inputStream));
                String line;
                while ((line = reader.readLine()) != null) {
                    printStream.println(line);
        public static void main(String[] args) throws IOException {
            // example usage: print the source of class Source on System.out
            Source.print(Source.class, System.out);
    }Regards,
    Arvid

  • Editing Source Code

    I'm working with 10.4.6 and Safari 2.0.3. Just learning HTML and doing some basic tutorials. I wrote the code using MS Word and everything went fine. The next part of the tutorial was to edit, using view source code. According to the lesson, one should be able to make changes there and then save and refresh, but I'm not able to make any changes. I checked to see if it was because the item was read only or locked, but that was not the case. Does it have something to do with Word? I did a search, but only came up with things referencing iweb. Any help is appreciated.

    You can't edit source code with Safari. Use TextEdit or any text editor. Some other browsers might also have the capability to do this, I don't know.

  • Generated source code translated to French is truncated

    My demo app incorporates English-to-French translation.
    The English page looks fine. http://i47.tinypic.com/21bf8.jpg
    The French page has html artifacts in the footer. http://i49.tinypic.com/99q542.jpg
    The generated English source looks like this. http://i48.tinypic.com/2w65piq.jpg
    The French looks like this. http://i49.tinypic.com/2cy1ukn.jpg
    Any idea what I can do to ensure all the source code gets generated?
    Thanks,
    -Ken

    Hello,
    When you create simple type, if you select check box from Enumeration Tab, it will create .java file. You can see that .java file in the <Project Name>\gen_ddic\<com.test.components>.
    You can get enumeration data from iterator()  method. You can find all the methods in that class.
    Regards,
    Sridhar

Maybe you are looking for

  • New Airport Network - issues with some specific features

    Hello, I have just changed my wifi system for an Airport Network, with one AirPort Extreme and 2 AirPort Express. The goal was to extend the wifi network to the entire house. Everything is fine, all my computers are able to connect to the network and

  • Problem while Error Handling thru BAPI_PO_CREATE1

    Hi, currently im facing problem while generating error thru BAPI_PO_CREATE1 im calling bapi two times thru loop iteration, as my data is faulty , so for 1st iteration im getting 3 error in it_return structure. now in 2nd iteration im getting (3+3) re

  • Exception when deploying CD example

    Hi I am trying to deploy CD example. Using db2 as backend. I am following exactly as the tutorial said but when i copy cd.jar into deploy directory i get this error ========================================================= org.jboss.deployment.Deploy

  • "Make Link"  What is it for in Safari?

    Highlight the URL in Safari Toolbar (and Camino) and right click on the selection and the second item in the contextual menu is "Make Link" How is this used and what's it for? It does not appear to be documented? G4 MDD, 17" Pb   Mac OS X (10.4.5)  

  • Tab placed next to the current one...

    hey, in mozilla its by default- when you click "open in new tab" the new tab is just next to the current one, while in safari its on the end of ALL tabs that you have open. how to change that?? b