Length of record 2000,after 991 char remaining data appears in next line

Length of the record is 2000,but after 991 character the remaining data is placed in next line.the file is received in mail as attachment.
mail informations - MIME setting available is 1.0 version and encoding is 7 bit
File is opend and reads a line, while writing using utl_smtp.write_data writes 991 character and places a new line character chr(13) || chr(10).
problem is in utl_smtp.write_data
Can any one help ,who faced this issue and got rectified
Edited by: 796208 on Sep 22, 2010 4:51 AM

I still do not see a problem using attachments with long lines and mixing that with a mail body using long lines.
SQL> declare
  2          type TStrings is table of varchar2(1000);
  3 
  4          smtpSender      varchar2(100)   := '[email protected]';
  5          smtpRecipient   varchar2(100)   := '[email protected]';
  6          mailSubject     varchar2(100)   := 'Sample Mail';
  7          mimeBoundary    varchar2(100)   := 'CutHere';
  8          smtpConn        UTL_SMTP.connection;
  9 
10  BEGIN
11          smtpConn := UTL_SMTP.open_connection( 'mail.domain.com', 25);
12 
13          UTL_SMTP.helo( smtpConn, '[email protected]' );
14          UTL_SMTP.mail( smtpConn, smtpSender );
15          UTL_SMTP.rcpt( smtpConn, smtpRecipient );
16 
17          -- start sending mail body using the data command
18          UTL_SMTP.open_data( smtpConn );
19 
20          -- write header
21          UTL_SMTP.write_data( smtpConn, 'MIME-Version: 1.0'||utl_tcp.CRLF );
22          UTL_SMTP.write_data( smtpConn, 'Content-Type: multipart/related; type="text/plain"; boundary="'||
23                                  mimeBoundary||'"'|| utl_tcp.CRLF );
24          UTL_SMTP.write_data( smtpConn, 'From: '||smtpSender||utl_tcp.CRLF );
25          UTL_SMTP.write_data( smtpConn, 'To: '||smtpRecipient||utl_tcp.CRLF );
26          UTL_SMTP.write_data( smtpConn, 'Subject: '||mailSubject||utl_tcp.CRLF );
27 
28          -- empty line between header and rest of mail body
29          UTL_SMTP.write_data( smtpConn, utl_tcp.CRLF );
30          UTL_SMTP.write_data( smtpConn, 'This is a multi-part message in MIME format.'|| utl_tcp.CRLF );
31          UTL_SMTP.write_data( smtpConn, utl_tcp.CRLF );
32 
33          -- now write the mail body
34          UTL_SMTP.write_data( smtpConn, '--'||mimeBoundary || utl_tcp.CRLF );
35          UTL_SMTP.write_data( smtpConn, 'Content-Type: text/plain; charset="us-ascii"'|| utl_tcp.CRLF );
36          UTL_SMTP.write_data( smtpConn, 'Content-Transfer-Encoding: quoted-printable'|| utl_tcp.CRLF );
37          UTL_SMTP.write_data( smtpConn, utl_tcp.CRLF );
38          UTL_SMTP.write_data( smtpConn, 'start of mail message:'|| utl_tcp.CRLF );
39          UTL_SMTP.write_data( smtpConn, lpad('x',1000,'1') );
40          UTL_SMTP.write_data( smtpConn, lpad('x',1000,'2') );
41          UTL_SMTP.write_data( smtpConn, lpad('x',1000,'3') );
42          UTL_SMTP.write_data( smtpConn, utl_tcp.CRLF );
43          UTL_SMTP.write_data( smtpConn, 'end of mail message' );
44          UTL_SMTP.write_data( smtpConn, utl_tcp.CRLF );
45 
46          -- add an attachhment
47          UTL_SMTP.write_data( smtpConn, '--'||mimeBoundary || utl_tcp.CRLF );
48          UTL_SMTP.write_data( smtpConn, 'Content-Type: text/csv'|| utl_tcp.CRLF );
49          UTL_SMTP.write_data( smtpConn, 'Content-Disposition: attachment; filename="test.csv"'|| utl_tcp.CRLF );
50          UTL_SMTP.write_data( smtpConn, utl_tcp.CRLF );
51          UTL_SMTP.write_data( smtpConn, lpad('x',1000,'1')|| ',' );
52          UTL_SMTP.write_data( smtpConn, lpad('x',1000,'2')|| ',' );
53          UTL_SMTP.write_data( smtpConn, lpad('x',1000,'3')|| utl_tcp.CRLF );
54          UTL_SMTP.write_data( smtpConn, utl_tcp.CRLF );
55 
56          -- close the data command
57          UTL_SMTP.close_data( smtpConn );
58 
59          -- terminate connection
60          UTL_SMTP.quit( smtpConn );
61  end;
62  /
PL/SQL procedure successfully completed.
SQL> The mail shows correctly in my mail reader - both body and attachment contains lines that exceed a the 998(?) character limit you said results in a CRLF to be inserted.
Make sure you know how your SMTP server deals with longs lines ito RFC compliance. Use telnet, from the Oracle db server platform, and connect to the SMTP server and manually send an e-mail with long lines. Determine what the end-result is (viewing raw mail contents) in the mail reader.
Or post a (easily executed) test case here that demonstrates the specific problem.

Similar Messages

  • My mini i pad 2 retina display screen is not work correctly after two days of buying appear some gray line on screen un furtunately i live in iran and i havnot access to any i pad store please guide me

    My mini i pad 2 retina display screen is not work correctly after two days of buying appear some gray line on screen un furtunately i live in iran and i havnot access to any i pad store please guide me

    Try this  - Reset the iPad by holding down on the Sleep and Home buttons at the same time for about 10-15 seconds until the Apple Logo appears - ignore the red slider - let go of the buttons. (This is equivalent to rebooting your computer.) No data/files will be erased. http://support.apple.com/kb/ht1430
     Cheers, Tom

  • Conditionally disabling record updation after query

    Dear members
    I've a single record block and I wanna conditionaly disable records updation after query has fetched data. Problem is that if I disable the record updation in Post-Query trigger then it checks the condition for the very first fetched record and it the condition is true, then Updation is disabled for all the fetched records, even if the next records dont meet the condition. I'm using forms-10g. Can u give a better solution??? thanx.

    you have to use SET_ITEM_INSTANCE_PROPERTY to modify only one record:
    BEGIN
        IF ... <your_condition> THEN
            SET_ITEM_INSTANCE_PROPERTY('YOUR_BLOCK.YOUR_ITEM1', UPDATE_ALLOWED, PROPERTY_FALSE);
        ELSE
            SET_ITEM_INSTANCE_PROPERTY('YOUR_BLOCK.YOUR_ITEM1', UPDATE_ALLOWED, PROPERTY_TRUE);
        END IF;
    END;

  • Quicktime Error (-2000) after sending AppleProRes 422 clips to Shake

    Hi there, I have been using FCP (7.02) and Shake (4.11) infrequently, mainly the smooth cam node with clips from my DV Camcorder. My new Full HD camcorder is recording AVCHD video which is transformed into Apple ProRes 422 when logged and transferred to FCP. After sending these sequences or clips to Shake, the node turns red and the clips don't show. In Shake's console appears an message related to the imported file which says <quicktime error (-2000)>.
    Is there any way to solve this problem and does anyone know what causes it?

    For what it's worth, QuickTime error -2000 means "Could not resolve data ref." Ordinarily I would assume that you were using reference movies but this clearly isn't the case.
    It would seem that Final Cut Pro is formatting the movie clips in a way that Shake doesn't recognize so it might be worth recompressing in QuickTime or Compressor to see if that solves the issue.

  • Which system field returns the number of records returned after a select?

    Which system field returns the number of records returned after a select?
    a) sy-index
    b) sy-recno
    c) sy-lncnt
    d) sy-dbcnt
    e) sy-tabix

    Hi,
       SY-DBCNT
    Regards,
    Prashant

  • QI Info record created after PO....

    Dear ALl,
    QI info record created after PO for the material. SO i wan to know whether system will give error in this case?
    Regards,
    Kaushal Rai

    Dear Shyamal,
    There is no ponit of date. Its correct that PO will not be created for that material which is having procurement key active.
    PO created before or after QI record doesn't matter. Only thing QI info record should be there at the time of creation of PO.
    But i don't know why in PO still I am getting the same error even after creation QI record. Material, Vendor, Plant, PR all are same.
    Regards,
    Kaushal Rai

  • Powershot SX510 HS automatically stops recording video after 10 - 15 minutes into the recording.

    Powershot SX510 HS automatically stops recording video after 10 - 15 minutes on continuous recording. Is there a way to turn this off? I would like to record videos until either I press the stop recording button, or the battery gets low. I have turned off all the power saving setting, at least I think I have.
    Solved!
    Go to Solution.

    The camera has some recording limitations as all the Canon models do. Below is how you can extend your recording times to a max of about 1 hour but there is a 4BG limit regardless so once it hits 4GB the recording stops and has to be restarted.
    Also the memory card needs to be at least a Class 6 rating or the recording will stop sooner regardless of the clip size.
    This is from page 161 of your manual

  • Is it possible to charge Ipod5G in Windows 2000 after ejecting from Itunes?

    Is it possible to charge Ipod5G in Windows 2000 after ejecting from Itunes? but keeping it connected? I'm using a fairly powerful and new computer at work...loaded with Win2K (2000), and for some reason it doesnt want to charge once I've ejected it from Itunes.
    My home computer with Windows XP works fine with this, I can eject, but keep it connected so it charges while i watch videos, or listen to music.
    Can anyone help?
    also...the computer at work does have USB 2, and can charge properly...but only if the ipods screen says "DO NOT DISCONNECT"
    Thanks folks!

    I have the same problem and the cause is with Windows 2000. My pc has USB 2.0 and no hardware problems either with the computer, ipod or cables. Basically Windows seems to be shutting down the power for the USB port as soon as Itunes completes its update every time. So the ipod gets a charge for a minute or two and that's it.
    I have just been using another pc for the charge which is annoying - haven't found a solution yet although fiddling with the settings so that itunes is only started up manually may be a good workaround.
    Other people have had the same problem in Win 2k with other models -
    http://forums.ipodlounge.com/archive/topic/108867-1.html

  • Mac OS X 10.6.8 desktop goes black 10 secs after booting, can remain apparently asleep for 15 mins. I can't prompt it to wake, until recently it would wake when peripheral were added (earphones). What is wrong, and how can this be fixed?

    Mac OS X 10.6.8 statup problem: desktop goes black 10 secs after booting, can remain apparently asleep for 15 mins. I can't prompt it to wake, until recently it would wake when peripheral were added (earphones). What is wrong, and how can this be fixed?

    You need to fresh install 10.6, programs fresh form original sources and return only vetted files (no TM migrations) from a regular storage drive
    But this when erasing the drive use the Security Option: Zero All Data before installing 10.6
    What has happened your data got corrupted and it's corrupted on the TM drive too.
    So the Zero will map off bad sectors on your drive, the 10.6 install will be fresh, the programs will be fresh and only files will be returned, you'll find out in short order which ones they are.
    Reducing bad sectors effect on hard drives
    How to erase and install Snow Leopard 10.6
    Once you are back up, then consider making a option key bootable clone.
    Most commonly used backup methods explained

  • Hi-I have an old Adobe Audition 1.5 and I used to be able to hear as I was recording. After updating computer and reloading Adobe Audition 1.5, can no longer hear as recording but only on playback. Please advise.

    Hi-I have an old Adobe Audition 1.5 and I used to be able to hear as I was recording. After updating computer and reloading Adobe Audition 1.5, can no longer hear as recording but only on playback. Please advise.

    All the monitoring is done through your sound device, not Audition. When you updated your PC, the sound device playback settings would have been reset. One of them includes input socket monitoring, and it's this that you need to reinstate. Since we don't know what sound device you are using, that's as much as we can tell you, except that if it's an internal device, you'll need to open the volume control options and alter it there. This varies between OS versions though...

  • BB bold 9791 video recording stops after 1:58 hrs

    I tried using sd card which is 32GB even though the recording stops after recording for 1:58 hours for each video and it displays a message something like  "no space available to record video". How to record continuously untill the memory is full.
    Thanks and regards,
    Ghouse 

    bbblogger wrote:
    Dear team.,
    1) Just for the record, It was the original blackberry charger. 
    2) The pic is removed from my blog. 
    3) I have been a loyal customer  and I don't have any reason to waste my time unless I have proof. I have a business to run. 
    4) WHY HAS BLACKBERRY SERVICE BEEN HOLDING MY PHONE FOR 2.5 years if there's is no fault on the phone? 
    5) Redington is being very responsible with service. Everyone in the coutry know that. Don't pass on the blame. 
    Blackberry is responsible for their products and defects. 
    6) Do you really think it's ok if 1 or 2 customers got electrocted? you can just pass the blame? 
    thanks. 
    Concerned news channel is looking into it this matter. 
    2) So the picture was fake? Not you, but of someone else you found on the internet?
    1. If any post helps you please click the below the post(s) that helped you.
    2. Please resolve your thread by marking the post "Solution?" which solved it for you!
    3. Install free BlackBerry Protect today for backups of contacts and data.
    4. Guide to Unlocking your BlackBerry & Unlock Codes
    Join our BBM Channels (Beta)
    BlackBerry Support Forums Channel
    PIN: C0001B7B4   Display/Scan Bar Code
    Knowledge Base Updates
    PIN: C0005A9AA   Display/Scan Bar Code

  • Start recording video AFTER touch block has been activated - is it possible?

    So I'm in the camera app, I've enabled touch block. But i can only take pictures, either with the hardware camera button or the volume rockers. How do i engage the video recording function AFTER touch block has been activated?

    That seems strange since i can take pictures after having enabled touch block. As it is now i have to edit out the first seconds if I want to film underwater. Very unnecessary

  • LSMW recording with XK02 to enter Bank details after the current bank data

    Hi
    I am using LSMW with Recording method to populate the Bank details of XK02. Here i need to get the number of Bank details using LFBK table because user need to enter the loaded Bank data as a new line each time. Please let me know in which place can i enter this Select statement to get the number of records and how can get this in LSMW.
    Please let me know this.
    Basani.

    Hi Friend,
    The table control can be handle by the index recording, you need to record it with the index number in the braces with the record counter.
    If you want to enter multiple entries into table control you need to go with report approach. you can't handle it in the LSMW.
    Better to go with any BAPI or IDOC approach for the same.
    the dummy recording for table control is as follows for your reference:-
    *Second Screen
        PERFORM z_bdc_dynpro      USING 'SAPMV10A' '0200'.
        PERFORM z_bdc_field       USING 'BDC_CURSOR'
                                      'MV10A-MATNR(01)'.
        PERFORM z_bdc_field       USING 'BDC_OKCODE'
                                      '/00'.
    First Material number
        PERFORM z_bdc_field       USING 'MV10A-MATNR(01)' <-------This is the table control index and the counter needs to be handle in report itself.
                                    wa_cmir-matnr.
        PERFORM z_bdc_dynpro      USING 'SAPMV10A' '0200'.
        PERFORM z_bdc_field       USING 'BDC_CURSOR'
                                      'MAAPV-ARKTX(01)'.
        PERFORM z_bdc_field       USING 'BDC_OKCODE'
                                      '=SELE'.
    Customer material
        PERFORM z_bdc_field       USING 'MV10A-KDMAT(01)'
                                    wa_cmir-kdmat.
        PERFORM z_bdc_dynpro      USING 'SAPMV10A' '0300'.
        PERFORM z_bdc_field       USING 'BDC_CURSOR'
                                      'MV10A-VWPOS'.
        PERFORM z_bdc_field       USING 'BDC_OKCODE'
                                      'BACK'.
    Regards;
    Dhirendra

  • Date of video recording missing after "Log and Transfer"?

    Hello, I am importing AVCHD video from Sony HDR-SR10. The clip item properties have not imported the dates when the video was recorded. It just has a date of Last Modified.
    Is it hidden anywhere or can I add it to the file/clip?

    Hi
    OR - there is a Paper and Clip solution - Tedious but working.
    (At least with old SD-video from miniDV tape Cameras)
    A Double import/Capture is needed
    a. via FireWire - the full quality video (without meta data)
    b. analog out from Camera (set to show Date & Time) - to an A/D box and import
    this
    (alt way Camera to a VHS/VCR then back to or via Camera to Mac)
    Now put High quality sequence on track 1 and analog copy on track 2
    crop analog copy on track 2 to show Date & Time Only.
    Yours Bengt W

  • After call commit sql , data can not flush to disk

    I use berkey db which support sql . It's version is db-5.1.19.
    1, Open a database.
    2. Create a table.
    3. exec "begin;" sql
    4. exec sql which is insert record into table
    5. exec "commit;" sql
    6. copy database file (SourceDB_912_1.db and SourceDB_912_1.db-journal) to Local Disk of D, then use a tool of dbsql to open the database.
    7. use select sql to check data, there is no record in table.
    1
    sqlite3 * m_pDB;
    int nRet = sqlite3_open_v2(strDBName.c_str(), & m_pDB,SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE,NULL);
    2
    string strSQL="CREATE TABLE [TBLClientAccount] ( [ClientId] CHAR (36), [AccountId] CHAR (36) );";
    char * errors;
    nRet = sqlite3_exec(m_pDB, strSQL.c_str(), NULL, NULL, &errors);
    3
    nRet = sqlite3_exec(m_pDB, "begin;", NULL, NULL, &errors);
    4
    nRet = sqlite3_exec(m_pDB, "INSERT INTO TBLClientAccount (ClientId,AccountId) VALUES('dd','ddd'); ", NULL, NULL, &errors);
    5
    nRet = sqlite3_exec(m_pDB, "commit;", NULL, NULL, &errors);
    Edited by: 887973 on Sep 27, 2011 11:15 PM

    Hi,
    Here is a simple test case program I used based on your description:
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    #include "sqlite3.h"
    int error_handler(sqlite3*);
    int main()
         sqlite3 *m_pDB;
         const char *strDBName = "C:/SRs/OTN Core 2290838 - after call commit sql , data can not flush to disk/SourceDB_912_1.db";
         char * errors;
         sqlite3_open_v2(strDBName, &m_pDB, SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE, NULL);
         error_handler(m_pDB);
         sqlite3_exec(m_pDB, "CREATE TABLE [TBLClientAccount] ( [ClientId] CHAR (36), [AccountId] CHAR (36) );", NULL, NULL, &errors);
         error_handler(m_pDB);
         sqlite3_exec(m_pDB, "begin;", NULL, NULL, &errors);
         error_handler(m_pDB);
         sqlite3_exec(m_pDB, "INSERT INTO TBLClientAccount (ClientId,AccountId) VALUES('dd','ddd'); ", NULL, NULL, &errors);
         error_handler(m_pDB);
         sqlite3_exec(m_pDB, "commit;", NULL, NULL, &errors);
         error_handler(m_pDB);
         //sqlite3_close(m_pDB);
         //error_handler(m_pDB);
    int error_handler(sqlite3 *db)
         int err_code = sqlite3_errcode(db);
         switch(err_code) {
         case SQLITE_OK:
         case SQLITE_DONE:
         case SQLITE_ROW:
              break;
         default:
              fprintf(stderr, "ERROR: %s. ERRCODE: %d.\n", sqlite3_errmsg(db), err_code);
              exit(err_code);
         return err_code;
    }Than I copied the SourceDB_912_1.db database and the SourceDB_912_1.db-journal directory containing the environment files (region files, log files) to D:\, opened the database using the "dbsql" command line tool, and queried the table; the data is there:
    D:\bdbsql-dir>ls -al
    -rw-rw-rw-   1 acostach 0 32768 2011-10-12 12:51 SourceDB_912_1.db
    drw-rw-rw-   2 acostach 0     0 2011-10-12 12:51 SourceDB_912_1.db-journal
    D:\bdbsql-dir>C:\BerkeleyDB\db-5.1.19\build_windows\Win32\Debug\dbsql SourceDB_912_1.db
    Berkeley DB 11g Release 2, library version 11.2.5.1.19: (August 27, 2010)
    Enter ".help" for instructions
    Enter SQL statements terminated with a ";"
    dbsql> .tables
    TBLClientAccount
    dbsql> .schema TBLClientAccount
    CREATE TABLE [TBLClientAccount] ( [ClientId] CHAR (36), [AccountId] CHAR (36) );
    dbsql> select * from TBLClientAccount;
    dd|dddI do not see where the issue is. The data can be successfully retrieved, it is present in the database.
    Could you try putting in the sqlite3_close() call and see if you still get the error?
    Did you remove the __db.* files from the SourceDB_912_1.db-journal directory?
    Did you use PRAGMA synchronous, and if so, what is the value you set?
    If this is still an issue for you, please describe in more detail the exact steps needed to get this reproduced and provide a simple stand-alone test case program that reproduces it.
    Regards,
    Andrei

Maybe you are looking for