Inserting data with more than 255 characters in to MSACCESS through JDBC

Hi All,
I have developed a product using servlets,JDBC,HTML.The backend is MS access database.
I have to provide an option for the user to key in more than 255 characters of data in the textarea & then store it in the access database.But i read that access ODBC driver has a limit of 255 characters.Is this correct.
I tried changing the Datatype of the field from text to Memo field in MS ACCESS.But when i insert the data using setString method of the PreparedStatement ,it's giving the following SQL exception:SQLException caught:[Microsoft][ODBC Microsoft Access Driver]String data, right truncated (null)
How do i let an user key in more than 255 characters.Can somebody help me on this please ASAP as this is a very crucial issue which i need to solve by tomorrow.
Thanks in Advance
GCR

hi rashmi,
HOw bout using CLOB facility to store such large strings?? try it.
Cheers,
-Jer

Similar Messages

  • Excel 2007 to Sql server table. Column with more than 255 characters.

    Hi there,
    I am facing a problem while converting data from Excel 2007 to SQL server 2005 table. I am using BIDS 2005.I have an excel file where one particular column has more than 255 characters. I use OLEDB connection for excel file as there is no driver for Excel
    2007 in BIDS2005. I am using Microsoft Office 12.0 Access Database Engine OLE DB Provider for Excel file.
    Next, I changed advanced properties for the column to DT_NTEXT. But when I am getting errors on execution. They are:
    [OLE DB Source [1949]] Error: SSIS Error Code DTS_E_OLEDBERROR.  An OLE DB error has occurred. Error code: 0x80040E21.
    [OLE DB Source [1949]] Error: Failed to retrieve long data for column "action".
    [OLE DB Source [1949]] Error: There was an error with output column "action" (2046) on output "OLE DB Source Output" (1959). The column status returned was: "DBSTATUS_UNAVAILABLE".
    [OLE DB Source [1949]] Error: SSIS Error Code DTS_E_INDUCEDTRANSFORMFAILUREONERROR.  The "output column "action" (2046)" failed because error code 0xC0209071 occurred, and the error row disposition on "output column "action"
    (2046)" specifies failure on error. An error occurred on the specified object of the specified component.  There may be error messages posted before this with more information about the failure.
    Please advise on how can I deal with columns having more than 255 characters in Excel file.
    Thanks!

    Here is what your connection string should look like for excel source
    Provider
    =Microsoft.Jet.OLEDB.4.0;Data
    Source=c:\temp\test.xls;Extended
    Properties="EXCEL 8.0;HDR=YES";
    http://sqlworkday.blogspot.com/

  • SQL Loader fails to process string columns with more than 255 characters

    Hi all,
    I am using LKM file to sqlldr(oracle) to load data from flat file to oracle. I am aware of the fact that if you don't specify length of the input character data, sqlldr uses default of 255 characters. But, in my source datastore I have specified the column length to be 1000, but sqlldr still fails to process records with more that 255 characters.
    Any idea how to change this behavior of sqlldr?
    Appreciate your response.
    Akshata

    You can change the step "Generate CTL File"
    and replace the section:
              } else {
              // The source column is a STRING => no options to add
                   format = "";
              };with
              } else {
              // The source column is a STRING => add char(length) for length greater than 255
                   taille = new Integer(colPrecision).intValue();
                   if (taille > 254)
                   format = "CHAR("+colPrecision+")";
                   else
                   format ="";
              };

  • ALV Cell with more than 255 characters.

    Hello Guru's,
    I need to display a longtext in ALV with other details. I am using READ_TEXT to get the Longtext and appending it to Internal table field, which i have defined as a string. I have debugged the code and it is containing around 450 characters. But, when i am trying to display using "REUSE_ALV_GRID_DISPLAY" it is only displaying 255 characters.
    Please suggest a solution.
    Thanks,
    Sudhir.

    Sap provides a set of ALV (ABAP LIST VIEWER) function modules which can be put into use to embellish the output of a report. This set of ALV functions is used to enhance the readability and functionality of any report output. Cases arise in sap when the output of a report contains columns extending more than 255 characters in length.
    In such cases, this set of ALV functions can help choose selected columns and arrange the different columns from a report output and also save different variants for report display. This is a very efficient tool for dynamically sorting and arranging the columns from a report output.
    The report output can contain up to 90 columns in the display with the wide array of display options.
    The commonly used ALV functions used for this purpose are;
    1. REUSE_ALV_VARIANT_DEFAULT_GET
    2. REUSE_ALV_VARIANT_F4
    3. REUSE_ALV_VARIANT_EXISTENCE
    4. REUSE_ALV_EVENTS_GET
    5. REUSE_ALV_COMMENTARY_WRITE
    6. REUSE_ALV_FIELDCATALOG_MERGE
    7. REUSE_ALV_LIST_DISPLAY
    8. REUSE_ALV_GRID_DISPLAY
    9. REUSE_ALV_POPUP_TO_SELECT

  • Send excel attachment with more than 255 characters in the internal table

    Hi,
    I need to send an attachment in the form of spreadsheet.
    But the internal table that is being used for sending attachment in mails can have only 255 characters in one row.
    Whereas my spreadsheet requires a greater width than 255 characters .

    Hi,
    I need to send an attachment in the form of spreadsheet.
    But the internal table that is being used for sending attachment in mails can have only 255 characters in one row.
    Whereas my spreadsheet requires a greater width than 255 characters .

  • Adding field with more than 255 characters to table VBAP

    Hi experts,
    i am with a requirment to add field model number to VBAP table.
    but the length of the field permitted is 255 char. basically model number comprises of all the characterstics fo material explained, so naturally its lenght will be long....sap do not allow me to enter string as data type for the field.
    what should i do
    thaks in advance
    Edited by: Thomas Zloch on Mar 1, 2012

    Hi, exactly. Since you are trying to write a data longer than 255, try this solution:
    variable_string type string.
    var_clear type string.
    strlen type i.
    count type i.
    strlen = strlen(variable_string).
    if strlen > 132.
    Do.
    count = count + 1.
    TLINE-TDLINE = variable_string(132).
    if count = 1.
    TLINE-TDFORMAT = '*'
    else.
    TLINE-TDFORMAT = space.
    ENDIF.
    append tline.
    MOVE variable_string+132 to var_clear.
    clear variable_string.
    MOVE var_clear to variable_string.
    if variable_string = space.
    EXIT.
    ENDDO.
    *now your VBAP-ZCUSTFIELD
    concatenate sy-datum sy-uzeit vbap-vbeln vbap-posnr to VBAP-ZCUSTFIELD.
    input in SAVE_TEXT Function module.
    The next time youre running it, just use the value in VBAP-ZCUSTFIELD. and run READ_TEXT FM
    As much as you want to extend one field to 255 characters, it is impossible. Unless you have to fill in several fields and cut your >255 character data.

  • WCF-WebHttp Variable mapping with more than 255 Characters

    Hi all,
    I am using WCF-WebHttp send-receive port to query data from SalesForce. I have query as promoted property and it is mapped with {query} variable in Http Method and URL mapping. It works perfectly when my query has less than 256 characters (promoted property
    character limit), but I have to use longer queries. URL does not allow variable concatination which means I can't use multiple promoted properties. Please suggest a solution.
    If this answers your question please mark as answer. If this post is helpful, please vote as helpful by clicking the upward arrow mark next to my reply.

    Hi,
    You can review the suggestion made on the
    post. Might help.
    Rachit
    Please mark as answer or vote as helpful if my reply does

  • Anyone knows how to send a attach with more than 255 characters in 4.6c ?

    Hi everyone,
    i´m tring to send a email with attach , my problem is that i have a itab with 2500 characters per line,
    and the FM 'SO_NEW_DOCUMENT_ATT_SEND_API1'  have the structure SOLISTI1 thats supports only 255 char. i tried to converto to PDF and XLS ,but when i open the attach only appers the first 255 char in each line only. any ideia for that issue?
    Thanks,
    Shimada
    Edited by: Fernando Shimada on May 5, 2009 8:28 PM

    here is part of my code that i tried:
    first: i write the lines of my itab and after did that
      CALL FUNCTION 'SAVE_LIST'
           EXPORTING
                list_index = '0'
           TABLES
                listobject = list_object.
      CALL FUNCTION 'LIST_TO_ASCI'
           TABLES
                listasci           = list_asci
                listobject         = list_object
           EXCEPTIONS
                empty_list         = 1
                list_index_invalid = 2
                OTHERS             = 3.
      APPEND LINES OF t_saida TO t_objbin.
      DESCRIBE TABLE t_objbin LINES v_lines_ane.
    second: do a alv report and tried to convert to pdf ,but the pdf have the same problem
      CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
           EXPORTING
                i_callback_program = sy-cprog
                it_fieldcat        = t_fieldcat[]
                is_layout          = w_layout
                is_print           = wa_pr
           TABLES
                t_outtab           = t_alv
           EXCEPTIONS
                program_error      = 1
                OTHERS             = 2.
      IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
      w_sp =  sy-msgv1.
      CALL FUNCTION 'CONVERT_ABAPSPOOLJOB_2_PDF'
           EXPORTING
                src_spoolid              = w_sp
                no_dialog                = ' '
                dst_device               = 'LOCL'
          IMPORTING
               pdf_bytecount            =
                TABLES
                pdf                      = t_pdf
           EXCEPTIONS
                err_no_abap_spooljob     = 1
                err_no_spooljob          = 2
                err_no_permission        = 3
                err_conv_not_possible    = 4
                err_bad_destdevice       = 5
                user_cancelled           = 6
                err_spoolerror           = 7
                err_temseerror           = 8
                err_btcjob_open_failed   = 9
                err_btcjob_submit_failed = 10
                err_btcjob_close_failed  = 11
                OTHERS                   = 12.
      CHECK sy-subrc = 0.
    Transfer the 132-long strings to 255-long strings
      LOOP AT t_pdf.
        TRANSLATE t_pdf USING '~'.
        CONCATENATE gd_buffer t_pdf INTO gd_buffer.
      ENDLOOP.
      TRANSLATE gd_buffer USING '~'.
      DO.
        t_objbin = gd_buffer.
        APPEND  t_objbin.
        SHIFT gd_buffer LEFT BY 255 PLACES.
        IF gd_buffer IS INITIAL.
          EXIT.
        ENDIF.
      ENDDO.
    Create Message Body Title and Description
      t_objtxt-line = 'teste'.
      APPEND t_objtxt.
      DESCRIBE TABLE t_objtxt LINES v_lines_txt.
      READ TABLE t_objtxt INDEX v_lines_txt.
      wa_doc_chng-obj_name = 'smartform'.
      wa_doc_chng-expiry_dat = sy-datum + 2.
      wa_doc_chng-obj_descr = 'smartform'.
      wa_doc_chng-sensitivty = 'F'.
      wa_doc_chng-doc_size = v_lines_txt * 255.
    Main Text
      CLEAR t_objpack-transf_bin.
      t_objpack-head_start = 1.
      t_objpack-head_num   = 0.
      t_objpack-body_start = 1.
      t_objpack-body_num   = v_lines_txt.
      t_objpack-doc_type = 'RAW'.
      APPEND t_objpack.
    Anexos
      t_objpack-transf_bin = 'X'.
      t_objpack-head_start = 1.
      t_objpack-head_num = 0.
      t_objpack-body_start = 1.
      DESCRIBE TABLE t_objbin LINES v_lines_bin.
      READ TABLE t_objbin INDEX v_lines_bin.
      t_objpack-doc_size  = v_lines_bin * 255 .
      t_objpack-body_num  = v_lines_bin.
      t_objpack-doc_type  = 'PDF'.
      t_objpack-obj_name  = 'smart'.
      t_objpack-obj_descr = 'test'.
      APPEND t_objpack.
      CLEAR t_reclist.
      t_reclist-receiver = Email.
      t_reclist-rec_type = 'U'.
      APPEND t_reclist.
      CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
           EXPORTING
                document_data              = wa_doc_chng
                put_in_outbox              = 'X'
                commit_work                = 'X'
           TABLES
                packing_list               = t_objpack
                object_header              = t_objhead
                contents_bin               = t_objbin
                contents_txt               = t_objtxt
                receivers                  = t_reclist
           EXCEPTIONS
                too_many_receivers         = 1
                document_not_sent          = 2
                document_type_not_exist    = 3
                operation_no_authorization = 4
                parameter_error            = 5
                x_error                    = 6
                enqueue_error              = 7
                OTHERS                     = 8.
      IF sy-subrc <> 0.
        WRITE:/ 'Error When Sending the File', sy-subrc.
      ELSE.
        WRITE:/ 'Mail sent'.
      ENDIF.

  • Upload Excel file to itab with more than 255 chars

    I want to upload an excel file to internal table with more than 255 characters in one of the field. However it restricts the upload to only 255 characters. Currently I am using the code
      CALL FUNCTION 'TEXT_CONVERT_XLS_TO_SAP'
      EXPORTING
    i_field_seperator = 'X'
    i_line_header = 'X'
         i_tab_raw_data = wa_tab_raw_data
         i_filename = p_file
      TABLES
         i_tab_converted_data = <fs_table>
      EXCEPTIONS
         conversion_failed = 1
         OTHERS = 2.
    where <Fs_table> is a dynamic structure in which one column is defined as string. We cannot use FM ALSM_EXCEL_TO_INTERNAL_TABLE as it has a restriction of only 50 characters and I dont want to create a Zstruture in the system.

    It wont work for excel file type.However, with FM Gui_Upload and use a text tab-delimited file we can upload long text.
    Here is the code.
    CALL FUNCTION 'GUI_UPLOAD'
        EXPORTING
          filename                = p_files
          filetype                = 'ASC'
          has_field_separator     = 'X'
        TABLES
          data_tab                = <fs_table>
        EXCEPTIONS
          file_open_error         = 1
          file_read_error         = 2
          no_batch                = 3
          gui_refuse_filetransfer = 4
          invalid_type            = 5
          no_authority            = 6
          unknown_error           = 7
          bad_data_format         = 8
          header_not_allowed      = 9
          separator_not_allowed   = 10
          header_too_long         = 11
          unknown_dp_error        = 12
          access_denied           = 13
          dp_out_of_memory        = 14
          disk_full               = 15
          dp_timeout              = 16
          OTHERS                  = 17.

  • More than 255 characters required in excel send as attachment in mail.

    Hi Experts,
    I have a requirement to send displayed list in an ALV report as attachment in excel through mail. I have used FM SO_DOCUMENT_SEND_API1. Now the problem is my excel data in more than 255 characters in a line. It is about 400 characters.But it is taking upto 255 characters in the internal table which is passed to parameter contents_bin . This is because the internal table is of type SOLISTI1. But the excel should hold atleast 400 characters as per my requirement. How to overcome this issue ? Please suggest me...
    Regards,
    SURYA

    Say your records are exactly 400 length (I am saying 400 for sake of simplifying things, in reality record lengths can be variable and have to be calculated using STRLEN)
    You will cut the first record at 255 length and put it in first row. You will put next 145 characters in 2nd row, followed by newline characters (hex 0D and 0A) at positions 146 & 147 (which indicates end of record for excel, so that it puts next record in a new excel row).
    The second record will start from 148th character in second row till 255, that is 108 characters and will extend into 3rd row till 400 - 108 = 292th character followed by newline characters (hex 0D and 0A) at postions 293 & 294, followed by contents of 3rd record and so on and so forth.
    If you records are of variable length you can also think of always blank padding them to create a record of such a fixed length that always your records are lesser than that and fit into it. This will leave some blank spaces at the end of each record in excel, which may be fine.

  • Unable to read more than 255 characters in a string data type.

    Hello,
    I am using Crystal Reports version 11.5.8.826 to generate reports from databases such as MS-Excel & BaaN.
    In Excel, there are records which carry string lengths of more than 255 characters. All though the fields are getting displayed in the report, the data being displayed gets truncated once it reaches a length of 255 characters.
    Kindly provide me with a solution this problem.
    Regards

    Hello Manish,
    I know that older versions of Crystal (Crystal 10 and older ) had a limitation of only 256 Characters for a string value.  You should be able to use this code to get what  you need. 
    We were successfully able to print out the Declaration of Independence through a Crystal report using something very similiar to this.
    u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2013
    Shared StringVar Array strings;
    Shared NumberVar arrayMax := 1;
    Shared NumberVar maxLength := 250;
    Shared BooleanVar firstTime := true;
    Redim strings[arrayMax];
    strings[1] := u201Cu201D;
    u2018done!u2019
    u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2013
    Here is my main loop that I used in the group header:
    u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2013
    WhilePrintingRecords;
    Shared StringVar Array strings;
    Shared NumberVar arrayMax;
    Shared NumberVar maxLength;
    Shared BooleanVar firstTime;
    Local StringVar enteredString;
    Local NumberVar lenStr;
    Local NumberVar lenArr;
    Local NumberVar lenLeft;
    enteredString := [Field Name];
    enteredString := IIF(firstTime,enteredString, u201C, u201D & enteredString);
    firstTime := false;
    lenStr := Length(enteredString);
    lenArr := Length(strings[arrayMax]);
    lenLeft := maxLength u2013 lenArr;
    if (lenLeft >= lenStr) then
    strings[arrayMax] := strings[arrayMax] & enteredString;
    u201D
    else
    strings[arrayMax] := strings[arrayMax] & left(enteredString, lenLeft);
    arrayMax := arrayMax + 1;
    redim preserve strings[arrayMax];
    strings[arrayMax] := u201Cu201D;
    strings[arrayMax] := strings[arrayMax] & right(enteredString, lenStr u2013 lenLeft);
    u201D
    u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2013
    and then to display the different sets in the text area. I would have one of these for every element I need displayed and change the display number variable.
    u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2013
    Shared StringVar Array strings;
    Shared NumberVar arrayMax;
    Local NumberVar displayNumber := [element in array];
    if(arrayMax >= displayNumber) then
    strings[displayNumber];
    else
    u201D;
    u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2014u2013
    I like this version better because the array is completely dynamic. It can be as big or as small as it needs to be.  There is always room for optimizations.  But hopefully this will get you started on the right path.
    Jenny

  • More than 255 characters in background

    HI,
    My report width is 275 which is displaying when run in front ground. but when run in background it truncates after the 255 characters.
    We have created a format using 'SPAD' of width 300, area is showing but the data is not showing after 255.
    I have mention line-size 275 in report, i tried this without mentioning line-size but the result is same. it gets truncates after 255, empty area is showing after 255 if we use width 300 format...
    Thanks

    Hi,
    After creation of the new format, run the job with the new format ie. attach the new format to your printer, and run the job.
    Now take the spool number and put it as a parameters to the following program .
    Hope it work fine.
    Rewards points if useful.
    Here is the code: 
    Display spool list > 255 columns 
    This is a SAP utility report to allow display of 
    spool request lists with more than 255 columns in 
    releases 4.6B and 4.6C (4.6D kernel must be used) 
    REPORT ZRSPOSHOWLIST LINE-SIZE 80. 
    PARAMETERS: RQIDENT LIKE TSP01-RQIDENT, 
    FIRSTL TYPE I DEFAULT 0, 
    LASTL TYPE I DEFAULT 0. 
    global data from LSPOXTOP 
    DATA: RC(10) TYPE C, 
    ERRMSG(100) TYPE C, 
    STATUS LIKE SY-SUBRC, 
    DSN_TYPE(8) TYPE C. 
    DATA: BEGIN OF DATA_SET_LINE, 
    DATA_LENGTH(5), 
    PRECOL(1), 
    DATA_LINE(1000), 
    DATA_LINE(5000), "MODAB 
    END OF DATA_SET_LINE, 
    DATA_SET_LENGTH(5) TYPE C. 
    TABLES: TSP01, TST05, TSPOPTIONS. 
    DATA: TEMSE_NAME LIKE TST01-DNAME, 
    TEMSE_CLIENT LIKE TST01-DCLIENT, 
    TEMSE_HANDLE LIKE RSTSTYPE-HANDLE, 
    TEMSE_PART LIKE TST01-DPART, 
    TEMSE_OBJTYP LIKE TST01-DTYPE, 
    TEMSE_RECTYP LIKE RSTSTYPE-RECTYP, 
    TEMSE_CHARCO LIKE TST01-DCHARCOD. 
    DATA: IS_OTF. 
    global data from LSPOCTOP 
    DATA: BEGIN OF SPOC 
    , escape 
    , prtctrl 
    , FIRST_BYTES(4) " collection of the first bytes of the 
    " escape sequences, which I am searching for. 
    , PRTCTRL_START_LENGTH TYPE I 
    , PRTCTRL_TOTAL_LENGTH TYPE I 
    , PRTCTRL_START(10) 
    , SYMBOL_LOW_START(10) 
    , SYMBOL_HGH_START(10) 
    , SYMBOL_START_LENGTH TYPE I 
    , ICON_START(10) 
    , ICON_START_LENGTH TYPE I 
    , ICON_SEL TYPE I VALUE 1 
    , FRAME_START(10) 
    , FRAME_START_LENGTH TYPE I 
    , END OF SPOC. 
    FIELD-SYMBOLS:  TYPE C 
    copied from RSPO_DISPLAY_ABAP_SPOOLJOB 
    DATA: BUFFER LIKE DATA_SET_LINE OCCURS 1000. 
    TABLES: TSP02L. 
    SELECT SINGLE * FROM TSP01 WHERE RQIDENT = RQIDENT. 
    IF SY-SUBRC <> 0. 
    WRITE: / 'Spool request does not exist:'(001), RQIDENT. 
    EXIT. 
    ENDIF. 
    CALL FUNCTION 'RSPO_CHECK_JOB_PERMISSION' 
    EXPORTING 
    ACCESS = 'DISP' 
    SPOOLREQ = TSP01 
    EXCEPTIONS 
    NO_PERMISSION = 1 
    OTHERS = 2. 
    IF SY-SUBRC <> 0. 
    WRITE: / 'No authorization to display'(002). 
    EXIT. 
    ENDIF. 
    PERFORM READ_DATA TABLES BUFFER 
    USING TSP01 FIRSTL LASTL. 
    IF SY-SUBRC <> 0. 
    WRITE: / 'Error reading spoolo request'(003). 
    EXIT. 
    ENDIF. 
    IF IS_OTF = 'X'. 
    WRITE: / 'This spool request is not an ABAP list'(004). 
    EXIT. 
    ENDIF. 
    PERFORM DISPLAY_DATA TABLES BUFFER USING TSP01-RQPAPER TSP01-RQIDENT. 
    FORM GET_SPOOL_LINE. 
    DO. 
    IF TEMSE_RECTYP+1(1) = 'Y'. 
    CALL 'C_RSTS_READ' 
    ID 'HANDLE' FIELD TEMSE_HANDLE 
    ID 'BUFF' FIELD DATA_SET_LINE 
    ID 'BUFFLG' FIELD 1006 
    ID 'BUFFLG' FIELD 5006 "MODAB 
    ID 'ALLINE' FIELD 'X' 
    ID 'BINARY' FIELD ' ' 
    ID 'SHOWLG' FIELD 'X' 
    ID 'RC' FIELD RC 
    ID 'ERRMSG' FIELD ERRMSG. 
    STATUS = SY-SUBRC. 
    ELSE. 
    CALL 'C_RSTS_READ' 
    ID 'HANDLE' FIELD TEMSE_HANDLE 
    ID 'BUFF' FIELD DATA_SET_LINE+1 
    ID 'BUFFLG' FIELD 1005 
    ID 'BUFFLG' FIELD 5005 "MODAB 
    ID 'ALLINE' FIELD 'X' 
    ID 'BINARY' FIELD ' ' 
    ID 'SHOWLG' FIELD 'X' 
    ID 'RC' FIELD RC 
    ID 'ERRMSG' FIELD ERRMSG. 
    STATUS = SY-SUBRC. 
    DATA_SET_LINE(5) = DATA_SET_LINE+1(5). 
    DATA_SET_LINE-PRECOL = ' '. 
    ADD 1 TO DATA_SET_LINE-DATA_LENGTH. 
    ENDIF. 
    STATUS = SY-SUBRC. 
    IF STATUS <> 6. " EOF, error condition, or got data 
    EXIT. 
    ENDIF. 
    end of this part, try to open next part 
    ADD 1 TO TEMSE_PART. 
    CALL 'C_RSTS_CLOSE' 
    ID 'HANDLE' FIELD TEMSE_HANDLE 
    ID 'RC' FIELD RC 
    ID 'ERRMSG' FIELD ERRMSG. 
    STATUS = SY-SUBRC. 
    IF STATUS = 0. 
    CALL FUNCTION 'RSTS_GET_ATTRIBUTES' 
    EXPORTING 
    AUTHORITY = 'SP01' 
    CLIENT = TEMSE_CLIENT "hjl 
    NAME = TEMSE_NAME 
    PART = TEMSE_PART 
    IMPORTING 
    CHARCO = TEMSE_CHARCO 
    CREATER = 
    CREDATE = 
    DELDATE = 
    MAX_CREDATE = 
    MAX_DELDATE = 
    NON_UNIQ = 
    NOOF_PARTS = 
    RECTYP = TEMSE_RECTYP 
    SIZE = 
    STOTYP = 
    type = 
    OBJTYPE = TEMSE_OBJTYP 
    EXCEPTIONS 
    FB_ERROR = 1 
    FB_RSTS_OTHER = 2 
    NO_OBJECT = 3 
    NO_PERMISSION = 4 
    OTHERS = 5. 
    STATUS = SY-SUBRC. 
    ENDIF. 
    IF STATUS = 0. 
    CALL 'C_RSTS_OPEN_READ' 
    ID 'HANDLE' FIELD TEMSE_HANDLE 
    ID 'CLIENT' FIELD TEMSE_CLIENT "hjl 
    ID 'NAME' FIELD TEMSE_NAME 
    ID 'PART' FIELD TEMSE_PART 
    ID 'TYPE' FIELD TEMSE_OBJTYP 
    ID 'CONV' FIELD ' ' 
    ID 'ALLINE' FIELD 'X' 
    ID 'BINARY' FIELD ' ' 
    ID 'RECTYP' FIELD TEMSE_RECTYP 
    ID 'CHARCO' FIELD TEMSE_CHARCO 
    ID 'PROM' FIELD 'I' 
    ID 'RC' FIELD RC 
    ID 'ERRMSG' FIELD ERRMSG. 
    STATUS = SY-SUBRC. 
    ENDIF. 
    ENDDO. 
    IF STATUS = 4. 
    STATUS = 12. "EOF 
    ENDIF. 
    IF STATUS = 8. 
    STATUS = 40. "Line too long 
    ENDIF. 
    DATA_SET_LENGTH = DATA_SET_LINE-DATA_LENGTH. 
    ENDFORM. 
    FORM READ_DATA TABLES BUFFER 
    USING TSP01 LIKE TSP01 VALUE(FIRST) TYPE I 
    VALUE(LAST) TYPE I. 
    DATA: LINES TYPE I. 
    REFRESH BUFFER. 
    CLEAR IS_OTF. 
    TEMSE_CLIENT = TSP01-RQCLIENT. 
    TEMSE_NAME = TSP01-RQO1NAME. 
    TEMSE_PART = 1. 
    CALL FUNCTION 'RSTS_GET_ATTRIBUTES' 
    EXPORTING 
    AUTHORITY = 'SP01' 
    CLIENT = TEMSE_CLIENT 
    NAME = TEMSE_NAME 
    PART = TEMSE_PART 
    IMPORTING 
    CHARCO = TEMSE_CHARCO 
    CREATER = 
    CREDATE = 
    DELDATE = 
    MAX_CREDATE = 
    MAX_DELDATE = 
    NON_UNIQ = 
    NOOF_PARTS = 
    RECTYP = TEMSE_RECTYP 
    SIZE = 
    STOTYP = 
    type = 
    OBJTYPE = TEMSE_OBJTYP 
    EXCEPTIONS 
    FB_ERROR = 1 
    FB_RSTS_OTHER = 2 
    NO_OBJECT = 3 
    NO_PERMISSION = 4 
    OTHERS = 5. 
    IF SY-SUBRC = 0. 
    IF TEMSE_OBJTYP(3) = 'OTF'. 
    IS_OTF = 'X'. 
    ENDIF. 
    ELSE. 
    EXIT. 
    ENDIF. 
    CLEAR TEMSE_HANDLE. 
    CALL 'C_RSTS_OPEN_READ' 
    ID 'HANDLE' FIELD TEMSE_HANDLE 
    ID 'CLIENT' FIELD TEMSE_CLIENT "hjl 
    ID 'NAME' FIELD TEMSE_NAME 
    ID 'PART' FIELD TEMSE_PART 
    ID 'TYPE' FIELD TEMSE_OBJTYP 
    ID 'CONV' FIELD ' ' 
    ID 'ALLINE' FIELD 'X' 
    ID 'BINARY' FIELD ' ' 
    ID 'RECTYP' FIELD TEMSE_RECTYP 
    ID 'CHARCO' FIELD TEMSE_CHARCO 
    ID 'PROM' FIELD 'I' 
    ID 'RC' FIELD RC 
    ID 'ERRMSG' FIELD ERRMSG. 
    STATUS = SY-SUBRC. 
    IF STATUS = 0. 
    DO. 
    PERFORM GET_SPOOL_LINE. 
    IF STATUS <> 0 AND STATUS <> 40 AND STATUS <> 12. 
    PERFORM CLOSE_JOB. 
    EXIT. 
    ENDIF. 
    IF STATUS <> 12. " 12 = End 
    IF NOT ( DATA_SET_LENGTH IS INITIAL ). 
    DATA_SET_LINE-DATA_LENGTH = DATA_SET_LENGTH - 1. 
    ENDIF. 
    ADD 1 TO LINES. 
    IF LINES >= FIRST. 
    APPEND DATA_SET_LINE TO BUFFER. 
    ENDIF. 
    IF ( NOT LAST IS INITIAL ) AND ( LINES >= LAST ). 
    EXIT. 
    ENDIF. 
    ELSE. 
    IF LINES = 0. 
    PERFORM CLOSE_JOB. 
    EXIT. 
    ENDIF. 
    IF LINES < FIRST . 
    PERFORM CLOSE_JOB. 
    EXIT. 
    ENDIF. 
    EXIT. 
    ENDIF. 
    ENDDO. 
    PERFORM CLOSE_JOB. 
    ENDIF. 
    ENDFORM. 
    FORM CLOSE_JOB * 
    FORM CLOSE_JOB. 
    IF STATUS <> 0 AND STATUS <> 12. 
    CALL 'C_RSTS_CLOSE' 
    ID 'HANDLE' FIELD TEMSE_HANDLE 
    ID 'RC' FIELD RC 
    ID 'ERRMSG' FIELD ERRMSG. 
    MESSAGE E112(PO) WITH STATUS RC ERRMSG RAISING READ_ERROR. 
    ENDIF. 
    CALL 'C_RSTS_CLOSE' 
    ID 'HANDLE' FIELD TEMSE_HANDLE 
    ID 'RC' FIELD RC 
    ID 'ERRMSG' FIELD ERRMSG. 
    STATUS = SY-SUBRC. 
    IF STATUS <> 0. 
    MESSAGE E112(PO) WITH STATUS RC ERRMSG RAISING READ_ERROR. 
    ENDIF. 
    ENDFORM. 
    FORM DISPLAY_DATA TABLES BUFFER USING RQPAPER LIKE TSP01-RQPAPER
    RQID LIKE TSP01-RQIDENT. 
    DATA: LINE_LENGTH TYPE I, GCOL TYPE I, GLINES TYPE I, 
    LINE_LENGTH2 LIKE RSTSTYPE-LINELENGTH, 
    V, V2. 
    CALL FUNCTION 'RSPO_SPOOLDATA_WRITE_INIT'. 
    PERFORM SPOOLDATA_WRITE_INIT. "MODAB 
    select single * from tspoptions where spoption = 'REALWIDTH'. 
    if sy-subrc = 0. 
    V = 'X'. 
    endif. 
    select single * from tspoptions where spoption = 'REALHEIGHT'. 
    if sy-subrc = 0. 
    V2 = 'X'. 
    endif. 
    IF NOT V IS INITIAL OR NOT V2 IS INITIAL. 
    GCOL = 0. 
    GLINES = 0. 
    SELECT SINGLE * FROM TSP02L WHERE PJIDENT = RQID 
    AND PJNUMMER = 0. 
    IF SY-SUBRC = 0. 
    GCOL = TSP02L-COLUMNS. 
    GLINES = TSP02L-LINES. 
    ELSE. 
    CALL FUNCTION 'RSPO_GET_SIZE_OF_LAYOUT' 
    EXPORTING 
    LAYOUT = RQPAPER 
    IMPORTING 
    ANSWER = 
    COLUMNS = GCOL 
    LINES = GLINES 
    PFORMAT = 
    ENDIF. 
    ENDIF. 
    IF GCOL < 80 OR V IS INITIAL. 
    GCOL = 255. 
    ENDIF. 
    IF GLINES < 5 OR V2 IS INITIAL. 
    GLINES = 0. 
    ENDIF. 
    IF GCOL >= 1024. "MODAB 
    GCOL = 1023. 
    ENDIF. 
    NEW-PAGE NO-HEADING NO-TITLE LINE-SIZE GCOL 
    LINE-COUNT GLINES. " make a wide list 
    SET BLANK LINES ON. 
    LOOP AT BUFFER. 
    DATA_SET_LINE = BUFFER. 
    IF DATA_SET_LINE-PRECOL = 'P'. 
    IF DATA_SET_LINE(1) = ' '. " Echter Vorschub ?" 
    NEW-PAGE. 
    ENDIF. 
    CONTINUE. 
    ENDIF. 
    Zeilenlänge berechnen, falls unbekannt. 
    IF DATA_SET_LINE-DATA_LENGTH IS INITIAL. 
    LINE_LENGTH = STRLEN( DATA_SET_LINE-DATA_LINE ). 
    ELSE. 
    LINE_LENGTH = DATA_SET_LINE-DATA_LENGTH. 
    ENDIF. 
    IF LINE_LENGTH > 0. 
    LINE_LENGTH2 = LINE_LENGTH. 
    PERFORM SPOOLDATA_WRITE USING DATA_SET_LINE-DATA_LINE "MODAB 
    LINE_LENGTH2 
    1. 
    ELSE. 
    " Leerzeile 
    SKIP. 
    ENDIF. 
    ENDLOOP. 
    ENDFORM. 
    copied from RSPO_SPOOLDATA_WRITE 
    FORM SPOOLDATA_WRITE USING VALUE(SPOOL_DATA) 
    VALUE(DATA_LENGTH) LIKE RSTSTYPE-LINELENGTH 
    VALUE(START_POS) LIKE SY-COLNO. 
    function globals 
    DATA: LPOS LIKE SY-COLNO 
    , REST_LEN TYPE I 
    , AREA_LEN TYPE I 
    , NEXT_HOT TYPE I " offset of next special character 
    , COLS TYPE I " columns used by special character 
    , BYTES TYPE I " bytes used by special character 
    , HOT2 
    , HOT3 
    , HOT4 
    , HOT5 
    , HOT6 
    , HOT7 
    , BEGIN OF ESCAPE_TRICK 
    , X1(1) TYPE X 
    , END OF ESCAPE_TRICK 
    , THE_PRTCTRL(5) TYPE C 
    Because of a problem within the ABAP listprocessing, I shall 
    never output the same icon side by side with the same color 
    and without a gap. 
    As I don't know the data, I will use two different variables 
    alternatively. 
    , ICON_ID1 LIKE ICONS-L4 
    , ICON_ID2 LIKE ICONS-L4. 
    FIELD-SYMBOLS:  
    IF START_POS < 2. 
    write at / ' ' no-gap. 
    NEW-LINE. 
    LPOS = 1. 
    ELSE. 
    LPOS = START_POS. 
    ENDIF. 
    REST_LEN = STRLEN( SPOOL_DATA ). 
    DESCRIBE FIELD SPOOL_DATA LENGTH AREA_LEN. 
    IF DATA_LENGTH = 0. 
    " fine. 
    ELSEIF DATA_LENGTH . 
    MODAB
    PERFORM WRITE_BIGFIELD USING  
    NEXT_HOT 
    LPOS. 
    WRITE AT LPOS <PLAIN_TEXT> NO-GAP. 
    ADD NEXT_HOT TO LPOS. 
    SUBTRACT NEXT_HOT FROM REST_LEN. 
    ASSIGN +6(1). 
    ELSE. 
    HOT7 = '?'. 
    ENDIF. 
    ELSE. 
    HOT6 = '?'. 
    ENDIF. 
    ELSE. 
    HOT5 = '?'. 
    ENDIF. 
    IF HOT5 = SPACE. 
    IF HOT6 = SPACE. 
    IF HOT7 = SPACE. 
    IF SPOC-ICON_SEL = 1. 
    WRITE AT LPOS(4) ICON_ID1 AS ICON. 
    write at lpos icon_id1 as icon no-gap. 
    ELSE. 
    WRITE AT LPOS(4) ICON_ID2 AS ICON. 
    write at lpos icon_id2 as icon no-gap. 
    ENDIF. 
    COLS = 4. 
    BYTES = 7. 
    ELSE. 
    IF SPOC-ICON_SEL = 1. 
    WRITE AT LPOS(3) ICON_ID1 AS ICON. 
    write at lpos icon_id1 as icon no-gap. 
    ELSE. 
    WRITE AT LPOS(3) ICON_ID2 AS ICON. 
    write at lpos icon_id2 as icon no-gap. 
    ENDIF. 
    COLS = 3. 
    BYTES = 6. 
    ENDIF. 
    ELSE. 
    IF SPOC-ICON_SEL = 1. 
    WRITE AT LPOS(2) ICON_ID1 AS ICON. 
    write at lpos icon_id1 as icon no-gap. 
    ELSE. 
    WRITE AT LPOS(2) ICON_ID2 AS ICON. 
    write at lpos icon_id2 as icon no-gap. 
    ENDIF. 
    COLS = 2. 
    BYTES = 5. 
    ENDIF. 
    ELSE. 
    "rite at lpos(1) icon_id as icon. 
    WRITE AT LPOS(1) '#' NO-GAP. " Not enough space for any icon. 
    COLS = 1. 
    BYTES = 4. 
    ENDIF. 
    ENDIF. 
    IF . 
    ELSE. 
    EXIT. 
    ENDIF. 
    ENDWHILE. 
    MODAB 
    IF REST_LEN > 0. 
    ASSIGN . 
    SPOC-FIRST_BYTES+0(1) = SPOC-PRTCTRL_START(1). 
    SPOC-FIRST_BYTES+1(1) = SPOC-FRAME_START(1). 
    SPOC-FIRST_BYTES+2(1) = SPOC-ICON_START(1). 
    SPOC-FIRST_BYTES+3(1) = SPOC-SYMBOL_LOW_START(1). 
    ENDFORM.

  • More than 255 Characters in 2D barcode

    Hi All,
    We are not able to print more than 255 characters in a 2D barcode which
    is used in a label using a smartform.
    We did Checked note 497380 but cant use SO10 as its a dynamic data.
    Any pointers would be extremely useful.
    Regards,
    Swati

    CALL METHOD lr_service_manager->retrieve
            EXPORTING
              iv_bo_name       = 'cPro_Project' "lv_bo_name "cPro_Project
    *      iv_bo_name      = cl_dpr_api_co=>sc_bo_cprojects "
              iv_bo_node_name =  'Longtext.Root' "lv_bo_node_name "Longtext.Root
              it_keys         = lt_ltext_key
              iv_edit_mode    = '0' "iv_edit_mode "0
            IMPORTING
              et_data         = lt_longtext_mast
              et_failed_keys  = lt_ltext_key_fail.
          READ TABLE lt_longtext_mast INTO ls_longtext_mast INDEX 1.
          MOVE ls_longtext_mast-longtext TO ls_action_item-zz_description.
    This is how i get the text with format (line feeds).
    zz_description is type string.
    My table is on a page, wrapped in a subform. and zz_description is type text field.
    Yes, i maintained "allow multiple lines" and did not limit length somehow.
    The problem arises in portal, pressing the preview button of a zform. providing a string <255 characters of length, everything works fine.
    Edited by: Florian Royer on Feb 11, 2010 3:10 PM

  • Row chaining in table with more than 255 columns

    Hi,
    I have a table with 1000 columns.
    I saw the following citation: "Any table with more then 255 columns will have chained
    rows (we break really wide tables up)."
    If I insert a row populated with only the first 3 columns (the others are null), is a row chaining occurred?
    I tried to insert a row described above and no row chaining occurred.
    As I understand, a row chaining occurs in a table with 1000 columns only when the populated data increases
    the block size OR when more than 255 columns are populated. Am I right?
    Thanks
    dyahav

    user10952094 wrote:
    Hi,
    I have a table with 1000 columns.
    I saw the following citation: "Any table with more then 255 columns will have chained
    rows (we break really wide tables up)."
    If I insert a row populated with only the first 3 columns (the others are null), is a row chaining occurred?
    I tried to insert a row described above and no row chaining occurred.
    As I understand, a row chaining occurs in a table with 1000 columns only when the populated data increases
    the block size OR when more than 255 columns are populated. Am I right?
    Thanks
    dyahavYesterday, I stated this on the forum "Tables with more than 255 columns will always have chained rows." My statement needs clarification. It was based on the following:
    http://download.oracle.com/docs/cd/B28359_01/server.111/b28318/schema.htm#i4383
    "Oracle Database can only store 255 columns in a row piece. Thus, if you insert a row into a table that has 1000 columns, then the database creates 4 row pieces, typically chained over multiple blocks."
    And this paraphrase from "Practical Oracle 8i":
    V$SYSSTAT will show increasing values for CONTINUED ROW FETCH as table rows are read for tables containing more than 255 columns.
    Related information may also be found here:
    http://download.oracle.com/docs/cd/B10501_01/server.920/a96524/c11schem.htm
    "When a table has more than 255 columns, rows that have data after the 255th column are likely to be chained within the same block. This is called intra-block chaining. A chained row's pieces are chained together using the rowids of the pieces. With intra-block chaining, users receive all the data in the same block. If the row fits in the block, users do not see an effect in I/O performance, because no extra I/O operation is required to retrieve the rest of the row."
    http://download.oracle.com/docs/html/B14340_01/data.htm
    "For a table with several columns, the key question to consider is the (average) row length, not the number of columns. Having more than 255 columns in a table built with a smaller block size typically results in intrablock chaining.
    Oracle stores multiple row pieces in the same block, but the overhead to maintain the column information is minimal as long as all row pieces fit in a single data block. If the rows don't fit in a single data block, you may consider using a larger database block size (or use multiple block sizes in the same database). "
    Why not a test case?
    Create a test table named T4 with 1000 columns.
    With the table created, insert 1,000 rows into the table, populating the first 257 columns each with a random 3 byte string which should result in an average row length of about 771 bytes.
    SPOOL C:\TESTME.TXT
    SELECT
      SN.NAME,
      MS.VALUE
    FROM
      V$MYSTAT MS,
      V$STATNAME SN
    WHERE
      SN.NAME = 'table fetch continued row'
      AND SN.STATISTIC#=MS.STATISTIC#;
    INSERT INTO T4 (
    COL1,
    COL2,
    COL3,
    COL255,
    COL256,
    COL257)
    SELECT
    DBMS_RANDOM.STRING('A',3),
    DBMS_RANDOM.STRING('A',3),
    DBMS_RANDOM.STRING('A',3),
    DBMS_RANDOM.STRING('A',3)
    FROM
      DUAL
    CONNECT BY
      LEVEL<=1000;
    SELECT
      SN.NAME,
      MS.VALUE
    FROM
      V$MYSTAT MS,
      V$STATNAME SN
    WHERE
      SN.NAME = 'table fetch continued row'
      AND SN.STATISTIC#=MS.STATISTIC#;
    SET AUTOTRACE TRACEONLY STATISTICS
    SELECT
    FROM
      T4;
    SET AUTOTRACE OFF
    SELECT
      SN.NAME,
      SN.STATISTIC#,
      MS.VALUE
    FROM
      V$MYSTAT MS,
      V$STATNAME SN
    WHERE
      SN.NAME = 'table fetch continued row'
      AND SN.STATISTIC#=MS.STATISTIC#;
    SPOOL OFFWhat are the results of the above?
    Before the insert:
    NAME                      VALUE                                                
    table fetch continue        166
    After the insert:
    NAME                      VALUE                                                
    table fetch continue        166                                                
    After the select:
    NAME                 STATISTIC#      VALUE                                     
    table fetch continue        252        332  Another test, this time with an average row length of about 12 bytes:
    DELETE FROM T4;
    COMMIT;
    SPOOL C:\TESTME2.TXT
    SELECT
      SN.NAME,
      MS.VALUE
    FROM
      V$MYSTAT MS,
      V$STATNAME SN
    WHERE
      SN.NAME = 'table fetch continued row'
      AND SN.STATISTIC#=MS.STATISTIC#;
    INSERT INTO T4 (
      COL1,
      COL256,
      COL257,
      COL999)
    SELECT
    DBMS_RANDOM.STRING('A',3),
    DBMS_RANDOM.STRING('A',3),
    DBMS_RANDOM.STRING('A',3),
    DBMS_RANDOM.STRING('A',3)
    FROM
      DUAL
    CONNECT BY
      LEVEL<=100000;
    SELECT
      SN.NAME,
      MS.VALUE
    FROM
      V$MYSTAT MS,
      V$STATNAME SN
    WHERE
      SN.NAME = 'table fetch continued row'
      AND SN.STATISTIC#=MS.STATISTIC#;
    SET AUTOTRACE TRACEONLY STATISTICS
    SELECT
    FROM
      T4;
    SET AUTOTRACE OFF
    SELECT
      SN.NAME,
      SN.STATISTIC#,
      MS.VALUE
    FROM
      V$MYSTAT MS,
      V$STATNAME SN
    WHERE
      SN.NAME = 'table fetch continued row'
      AND SN.STATISTIC#=MS.STATISTIC#;
    SPOOL OFFWith 100,000 rows each containing about 12 bytes, what should the 'table fetch continued row' statistic show?
    Before the insert:
    NAME                      VALUE                                                
    table fetch continue        332 
    After the insert:
    NAME                      VALUE                                                
    table fetch continue        332
    After the select:
    NAME                 STATISTIC#      VALUE                                     
    table fetch continue        252      33695The final test only inserts data into the first 4 columns:
    DELETE FROM T4;
    COMMIT;
    SPOOL C:\TESTME3.TXT
    SELECT
      SN.NAME,
      MS.VALUE
    FROM
      V$MYSTAT MS,
      V$STATNAME SN
    WHERE
      SN.NAME = 'table fetch continued row'
      AND SN.STATISTIC#=MS.STATISTIC#;
    INSERT INTO T4 (
      COL1,
      COL2,
      COL3,
      COL4)
    SELECT
    DBMS_RANDOM.STRING('A',3),
    DBMS_RANDOM.STRING('A',3),
    DBMS_RANDOM.STRING('A',3),
    DBMS_RANDOM.STRING('A',3)
    FROM
      DUAL
    CONNECT BY
      LEVEL<=100000;
    SELECT
      SN.NAME,
      MS.VALUE
    FROM
      V$MYSTAT MS,
      V$STATNAME SN
    WHERE
      SN.NAME = 'table fetch continued row'
      AND SN.STATISTIC#=MS.STATISTIC#;
    SET AUTOTRACE TRACEONLY STATISTICS
    SELECT
    FROM
      T4;
    SET AUTOTRACE OFF
    SELECT
      SN.NAME,
      SN.STATISTIC#,
      MS.VALUE
    FROM
      V$MYSTAT MS,
      V$STATNAME SN
    WHERE
      SN.NAME = 'table fetch continued row'
      AND SN.STATISTIC#=MS.STATISTIC#;
    SPOOL OFFWhat should the 'table fetch continued row' show?
    Before the insert:
    NAME                      VALUE                                                
    table fetch continue      33695
    After the insert:
    NAME                      VALUE                                                
    table fetch continue      33695
    After the select:
    NAME                 STATISTIC#      VALUE                                     
    table fetch continue        252      33695 My statement "Tables with more than 255 columns will always have chained rows." needs to be clarified:
    "Tables with more than 255 columns will always have chained rows +(row pieces)+ if a column beyond column 255 is used, but the 'table fetch continued row' statistic +may+ only increase in value if the remaining row pieces are found in a different block."
    Charles Hooper
    IT Manager/Oracle DBA
    K&M Machine-Fabricating, Inc.
    Edited by: Charles Hooper on Aug 5, 2009 9:52 AM
    Paraphrase misspelled the view name "V$SYSSTAT", corrected a couple minor typos, and changed "will" to "may" in the closing paragraph as this appears to be the behavior based on the test case.

  • More than 255 characters need to be populated in text file of destination.

    Dear experts,
    i am having following scenario in which i am sending the file to a destination system through RFC connection which is having more than 255 characters, But it is not allowing me to enter more than 255
    The code i have written is mentioned below,
    lv_string = '///++++#####$$&&^%$%@$$@@(&@&@#%@&%#464(@)))(@&@&&@*&@)@(&@@%&%&@&@*@&@&&*@&*****^&&*&%$%$$#$##@#$@%%&&*******(((((((((((((((&!@#$$%%%&&(()))_(**&&&&&^^^^%%%%$$$$###'.
    itab-l_string = lv_string.
    CONCATENATE itab-l_string itab-l_string itab-l_string into itab-l_string.
    CONDENSE itab-l_string.
    Append Itab.
    call function 'RFC_REMOTE_FILE'
        DESTINATION 'BJRFC'
        EXPORTING
        FILE = 'D:\tmp\test_ster3.txt'
        WRITE = 'X'
    *FILETYPE = ''
        TABLES
        FILEDATA = itab
        exceptions
        system_failure = 1 message dg_ermsg
        communication_failure = 2 message dg_ermsg.
    Can anybody suggest me how to fetch the requireoutput.

    Dear alex,
    With this output the the following cases appearing in system,
    1) rfc connection is getting failed due to excess length, no file generated
    2)Some times o/p file getting generated with 0KB, i mean there is no data in the output.
    Once agian i am putting the code here
    Kindl suggest
    *& Report  Z_ZIC_ZI001
    REPORT  Z_ZIC_ZI001 line-SIZE 250.
    Data : lv_string type string,
           dg_ermsg TYPE char120.
    Types : begin of ty_itab,
          l_string(2050) type c,
           l_string type string,
          end of ty_itab.
    data : itab type ty_itab occurs 0 with HEADER LINE.
    lv_string = 'I am having following scenario in which i am sending the file to a destination system through RFC connection which is having more than 255 characters, But it is not allowing to enter more than 255 XXXXXXXXXXXXXXFFAFFAGAGAGAGAGG'.
    CONCATENATE  lv_string lv_string lv_string into lv_string.
    CONDENSE lv_string.
    *while strlen( lv_string ) > 255.
        itab-l_string = lv_string+0(255).
        append itab.
        lv_string = lv_string+255.
    *endwhile.
    itab-l_string = lv_string.
    append itab.
    call function 'RFC_REMOTE_FILE'
        DESTINATION 'BJRFC'
        EXPORTING
        FILE = 'D:\tmp\test_ster5.txt'
        WRITE = 'X'
    *FILETYPE = ''
        TABLES
        FILEDATA = itab
        exceptions
        system_failure = 1 message dg_ermsg
        communication_failure = 2 message dg_ermsg.
    if sy-subrc = 0.
    write : 'success'.
    else .
       write : dg_ermsg.
    endif.

Maybe you are looking for

  • Java 8 64 bit on Windows with NSS for FIPS 140 compliance

    I have asked this question on Stackoverflow but I am beginning to think that this may be a better forum to ask. According to JEP 131, Java 8 should provide a PKCS#11 Crypto provider for 64 bit Windows:  https://blogs.oracle.com/mullan/entry/jep_131_p

  • Adobe Acrobat 9 Citrix Streaming

    Application launches but the following error appears when using the application for less than a minute. Licensing for this product has stopped working. You cannot use this product at this time. You must repair the problem by uninstalling and then rei

  • My apple tv just blew up!  What is with that?

    I was changing radio stations on my Apple TV using the regular Apple TV remote when I heard a pop and parts of the Apple TV were falling off the shelf!  What happened and why?  Will Apple replace it or do I have to buy a new one?  I believe it is pas

  • Kindle samples not showing up, new apps not showing up

    Lately, Kindle sample books are not transferring to my iphone, though they did until recently. Any new app attempts are not showing up either.

  • Why can't I run Microsoft AutoUpate 2.3.4 on my Mac os 10.7.4

    The Microsoft update prompted to to update the Microsoft AutoUpdate 2.3.4.  When i tried to proceed, it keep showing "Downloading" but nothing happen!  I tried so many times, but still can't perform the updating process.  Anyone knows what is happeni