RE: (forte-users) SQL Array Insert

Unfortunately that carries a tremendous overhead. Each request is a seperate
message and forte generates alot of behind the scenes prepares for the sql.
---------------------- Forwarded by Amos G. Radford on 10/27/2000 02:34 PM
"Amin, Kamran" <kamran.aminlendware.com> on 10/27/2000 02:33:07 PM
To: Amos G. RadfordBankofAmerica
cc:
Class: Internal Use Only
Subject: RE: (forte-users) SQL Array Insert
User a for loop and call update for each row in the array.
For Loop
Update
set
1=test[1]
end for
ka
-----Original Message-----
From: Amos.G.Radfordbankofamerica.com
[mailto:Amos.G.Radfordbankofamerica.com]
Sent: Friday, October 27, 2000 12:07 PM
To: forte-userslists.xpedior.com
Subject: (forte-users) SQL Array Insert
I have run into a strange problem that I never really run into
before. If I want to save an array of items into a table in TOOL
SQL, how can I do it if the column names in the table are different
than the column names in the class. In the past we always had
the luxury of the column names being the same.
For the archives, go to: http://lists.xpedior.com/forte-users and use
the login: forte and the password: archive. To unsubscribe, send in a new
email the word: 'Unsubscribe' to: forte-users-requestlists.xpedior.com

Madhu,
Do the following:
1. create prepare statement
e.g
stmHnd : DBStatementHandle;
inputData : DBDataset = new;
stmType : integer;
stmHnd = DBSesObj.prepare('insert into
table_name myCOl1, myCol2, myCol3
values(:myCol1Value, :myCol2Value, :myCol3Value)',
inputData,stmType);
2. Populate the input DBDataset.
e.g
// assign the maximum value
inputData = myArrObj.items;
// assign the values
for i in 1 to myArrObj.items do
inputdata.currentRow = i;
inputdata.setvalue(':myCol1Value',
myArrObj.attr1);
inputdata.setvalue(':myCol2Value',
myArrObj[i].attr2);
inputdata.setvalue(':myCol3Value',
myArrObj[i].attr3);
end for;
3. execute the statement:
e.g .
DBSesObj.execute(stmHnd, inputData);
4. release the handle
DBSesObj.RemoveStatement(stmHnd);
Hope this helps,
Babu
--- "Epari, Madhusudhan" <meparioxhp.com> wrote:
Babu,
I'm not clear on how dynamic sql statement would
access the database only
one time for inserting an array of records in to the
table. Could you tell
how's it done?
thanks in advance,
Madhu
-----Original Message-----
From: Babu Raj [mailto:ibcsmartboyyahoo.com]
Sent: Friday, October 27, 2000 8:02 PM
To: Amos.G.Radfordbankofamerica.com;
forte-userslists.xpedior.com
Subject: RE: (forte-users) SQL Array Insert
Amos,
Why don't you use, Dyanmic SQL statement,
where
you need to prepare only one SQL Statement, and
populate input place holder, which is much simpler
and
you need to access the database only one time(which
is
efficient operation). This is useful, especially,
when
you want to update. But for your inforamtion, Forte
internally inserts, one by one row, even if u call
Static SQl statement, with array of record. Os its
advisable to use Dyanmic SQL statement.
Hope this helps,
Babu
--- Amos.G.Radfordbankofamerica.com wrote:
Unfortunately that carries a tremendous overhead.
Each request is a seperate
message and forte generates alot of behind the
scenes prepares for the sql.
---------------------- Forwarded by Amos G.Radford
on 10/27/2000 02:34 PM
"Amin, Kamran" <kamran.aminlendware.com> on
10/27/2000 02:33:07 PM
To: Amos G. RadfordBankofAmerica
cc:
Class: Internal Use Only
Subject: RE: (forte-users) SQL Array Insert
User a for loop and call update for each row inthe
array.
For Loop
Update
set
1=test[1]
end for
ka
-----Original Message-----
From: Amos.G.Radfordbankofamerica.com
[mailto:Amos.G.Radfordbankofamerica.com]
Sent: Friday, October 27, 2000 12:07 PM
To: forte-userslists.xpedior.com
Subject: (forte-users) SQL Array Insert
I have run into a strange problem that I never
really run into
before. If I want to save an array of items intoa
table in TOOL
SQL, how can I do it if the column names in the
table are different
than the column names in the class. In the pastwe
always had
the luxury of the column names being the same.
For the archives, go to:
http://lists.xpedior.com/forte-users and use
the login: forte and the password: archive. To
unsubscribe, send in a new
email the word: 'Unsubscribe' to:
forte-users-requestlists.xpedior.com
For the archives, go to:
http://lists.xpedior.com/forte-users and use
the login: forte and the password: archive. To
unsubscribe, send in a new
email the word: 'Unsubscribe' to:
forte-users-requestlists.xpedior.com
For the archives, go to:
http://lists.xpedior.com/forte-users and use
the login: forte and the password: archive. To
unsubscribe, send in a new
email the word: 'Unsubscribe' to:forte-users-requestlists.xpedior.com

Similar Messages

  • ABAP/4 Open SQL array insert results in duplicate databaserecordsfor pk13

    Hi Experts, when I am working with pk13n tranaction iam getting an error message stating that update was terminated by user. when i am checking with st22 it gives the following message. please give the solution , iam sending the code as well.
    An exception occurred that is explained in detail below.
    The exception, which is assigned to class 'CX_SY_OPEN_SQL_DB', was not caught
    in
    procedure "SAVE_DATA" "(FORM)", nor was it propagated by a RAISING clause.
    Since the caller of the procedure could not have anticipated that the
    exception would occur, the current program is terminated.
    The reason for the exception is:
    If you use an ABAP/4 Open SQL array insert to insert a record in
    the database and that record already exists with the same key,
    this results in a termination.
    (With an ABAP/4 Open SQL single record insert in the same error
    situation, processing does not terminate, but SY-SUBRC is set to 4.) please find the below code please give the solution for this error message.
    1 *eject
    2 *----
    3 *   Verbuchen der Daten                                           *
    4 *----
    5 FORM SAVE_DATA.
    6
    7   DATA: lf_menge LIKE ekpo-menge VALUE 0,                   "717464
    8         lf_netwr LIKE ekpo-netwr VALUE 0.
    9
    10 * Einteilungen löschen --> Array Delete aus Tabelle DEKET
    11   DESCRIBE TABLE DEKET LINES SY-TFILL.
    12   IF SY-TFILL GT 0.
    13     DELETE EKET FROM TABLE DEKET.
    14     IF SY-SUBRC NE 0.
    15       MESSAGE A865.
    16     ENDIF.
    17     EKET_DELETE = EKET_DELETE + SY-DBCNT.
    18     REFRESH: DEKET.
    19     CLEAR  : DEKET.
    20   ENDIF.
    21
    22 * Einteilungen hinzufügen --> Array Insert aus Tabelle IEKET
    23   DESCRIBE TABLE IEKET LINES SY-TFILL.
    24   IF SY-TFILL GT 0.
    >>     INSERT EKET FROM TABLE IEKET.
    26     IF SY-SUBRC NE 0.
    27       MESSAGE A864.
    28     ENDIF.
    29     EKET_INSERT = EKET_INSERT + SY-DBCNT.
    30     REFRESH: IEKET.
    31     CLEAR  : IEKET.
    32   ENDIF.
    33
    34 * Check whether the qty in EKPO-MENGE is correct: note 717464
    35   SELECT SUM( menge ) FROM eket INTO lf_menge
    36                       WHERE ebeln = ekpo-ebeln
    37                       AND   ebelp = ekpo-ebelp.
    38   IF sy-subrc = 0 AND ekpo-menge <> lf_menge.
    39     IF ekpo-ktmng <> 0.
    40       refe1 = ekpo-zwert * lf_menge / ekpo-ktmng.
    41     ELSE.
    42       refe1 = ekpo-zwert * lf_menge / 1000.
    43     ENDIF.
    44     IF refe1 > maxwert.

    Hi,
    Well I don't know why you have duplicates, this is a functionnal issue. But you get the dump due the the message number 864 that triggers the abend... Changing the message type to 'E', 'S' or 'I' will prevent the dump but I guess this message has a good reason to be
    Kr,
    Manu.

  • The ABAP/4 Open SQL array insert results in duplic

    Hi All,
        During monitoring of our SAP SRM system in SM58 transaction we have received the below error. Please advise on this.
    The ABAP/4 Open SQL array insert results in duplic
    SM58 for Wf-BATCH user
    SRM/MM: FM SPPF_PROCESS
    thanks and regards
    mohammed

    What action did you performed?

  • The ABAP/4 Open SQL array insert results in duplicate database records

    Hi,
    Iam getting following error :
    The ABAP/4 Open SQL array insert results in duplicate database records.
    Error in ABAP application program.
    The current ABAP program "SAPLV60U" had to be terminated because one of the
    statements could not be executed.
    This is probably due to an error in the ABAP program.
    " Information on where terminated
    The termination occurred in the ABAP program "SAPLV60U" in "VBUK_BEARBEITEN".
    The main program was "SAPMSSY4 ".
    The termination occurred in line 503 of the source code of the (Include)
    program "LV60UF0V"
    of the source code of program "LV60UF0V" (when calling the editor 5030).
    Processing was terminated because the exception "CX_SY_OPEN_SQL_DB" occurred in
    the
    procedure "VBUK_BEARBEITEN" "(FORM)" but was not handled locally, not declared
    in the
    RAISING clause of the procedure.
    The procedure is in the program "SAPLV60U ". Its source code starts in line 469
    of the (Include) program "LV60UF0V "."
    Please assist how to proceed further ..
    Many thanks
    Mujeeb.

    Sorry, THe correct note is 402221.
    Description from the note
    << Please do not post SAP notes - they are copyrighed material >>
    Edited by: Rob Burbank on Feb 22, 2009 3:46 PM

  • The ABAP/4 Open SQL array insert results in duplicate Record in database

    Hi All,
    I am trying to transfer 4 plants from R/3 to APO. The IM contains only these 4 plants. However a queue gets generated in APO saying 'The ABAP/4 Open SQL array insert results in duplicate record in database'. I checked for table /SAPAPO/LOC, /SAPAPO/LOCMAP & /SAPAPO/LOCT for duplicate entry but the entry is not found.
    Can anybody guide me how to resolve this issue?
    Thanks in advance
    Sandeep Patil

    Hi Sandeep,
              Now try to delete ur location before activating the IM again.
    Use the program /SAPAPO/DELETE_LOCATIONS to delete locations.
    Note :
    1. Set the deletion flag (in /SAPAPO/LOC : Location -> Deletion Flag)
    2. Remove all the dependencies (like transportation lane, Model ........ )
    Check now and let me know.
    Regards,
    Siva.
    null

  • He ABAP/4 Open SQL array insert results in duplicate database records

    Dear Gurus,
    II am getting a dump when I run MD02/ MD03. (t- code to run MRP)
    Below is the message system is showing:
    Please help
    Thanks in Advance
    Best Regards
    Adhish
    Short text
    The ABAP/4 Open SQL array insert results in duplicate database records.
    What happened?
    Error in the ABAP Application Program
    The current ABAP program "SAPLM61U" had to be terminated because it has
    come across a statement that unfortunately cannot be executed.
    Error analysis
    An exception occurred that is explained in detail below.
    The exception, which is assigned to class 'CX_SY_OPEN_SQL_DB', was not caught
    in
    procedure "INSERT_MDSBI_IN_MDSB" "(FORM)", nor was it propagated by a RAISING
    clause.
    Since the caller of the procedure could not have anticipated that the
    exception would occur, the current program is terminated.
    The reason for the exception is:
    If you use an ABAP/4 Open SQL array insert to insert a record in
    the database and that record already exists with the same key,
    this results in a termination.
    (With an ABAP/4 Open SQL single record insert in the same error
    situation, processing does not terminate, but SY-SUBRC is set to 4.)
    1 *----
    2 * ARRAY-INSERT auf MDSB
    3 *----
    4 FORM INSERT_MDSBI_IN_MDSB.
    INSERT MDSB6 FROM TABLE MDSBI.
    7 ADD SY-DBCNT TO STATS-RESBI. "statistics
    8 ENDFORM.

    Hi,
    There must be inconsistency in the number range. This happens when the current number in the number range for dependent requirements is lower than the highest number in the database table of the dependent requirements RESB.
    Please check the current number in transaction OMI2. Here in the interval you can see the current number. Then please check the highest number in table RESB. If the current number in OMI2 is lower than the highest number in table RESB then this should be the reason for the dump.
    Check and revert. If that's not the case we'll look into other possibilities.
    In mean time check for SAP Note 138108.

  • ABAP/4 Open SQL array insert results in duplicate database records in SM58

    Hi Everyone,
    I am testing a file to idoc scenario in my Quality system. When I passed the input file, the mapping executed successfully and there are no entries in SMQ2 but still the idoc wasn't created in the ECC system. When I have checked in TRFC, I am getting the error  ABAP/4 Open SQL array insert results in duplicate database records for IDOC_INBOUND_AYNCHRONOUS function module. I thought this is a data issue and I have tested with a fresh data which was never used for testing in Quality but even then I am getting the same error.Kindly advise.
    Thanks,
    Laawanya

    use FM idoc_status_write_to_database to change the IDoc status from 03 to 30 and then  run WE14 or  RSEOUT00 to change the status back to 03
    resending idoc from status 03 ...is a data duplicatino issue on receiving side...why do u need to do that ?
    Use WE19 tcode to debug
    In we19
    1)U can choose your Idoc number in existing Idoc textbox
    2)Press execute
    3)u will display ur Idoc struct
    4)Dbl click on any field then u can modify its content
    5)PressStd Outbound Processing Btn to process modified Idoc
    Thats it

  • Error: The ABAP/4 Open SQL array insert results in duplic in EWM

    Hi Friends,
    During outbound process in EWM, my completed EWM delivery gets stuck in SMQ1 with error "The ABAP/4 Open SQL array insert results in duplic". I performed following checks and found all the ok. Please help me with your insights.
    - Checked the Master data Products, Business Partners,are CIFed properly. Yes they are done properly.
    - Checked if inbound is stuck in same way. But its not.
    - Checked if there is any enhancement stopping in ECC. There is some enhancement in Document_save in ECC outbound delivery which I got it commented. Still the problem is same.
    Please suggest what could be the root cause.
    Thanks
    Trivedi

    Hi Rushikesh,
    I checked all Number ranges (O/D in EWM and ECC, HU and Batches). All are ok. I tried taking help of ABAPer to see if any Run time errors occuring but no use.
    Regards,
    Trivedi

  • RE: (forte-users) Forte not letting go of Oracle connections+ RE: (fort

    The bug was just reported yesterday so they might not have it available to
    the public for a while. I am guessing this bug has been around since 3.M.?
    and its very easy to verify it if its happening in your environment. Also I
    have been talking to other user that are not using Oracle (Sybase instead)
    who are also seen the same problem. I think this is a problem across all
    database because there is some fundamental event or process that is not
    taking place to close database connections. But just to be safe verify it
    in your test environment before moving to 3.5. To verify if its happening
    in your Forte version just create a small application that connects to the
    database and run it in debug mode. Log into the database and then stop the
    debug session. The connection will still be open. This will also occur
    when you use the running man or in a deployed application.
    ka
    -----Original Message-----
    From: Labeaux Schiek [mailto:DHSV017dhs.state.il.us]
    Sent: Thursday, March 01, 2001 7:21 AM
    To: kamran.aminlendware.com; Forte-userslists.xpedior.com
    Subject: RE: (forte-users) Forte not letting go of Oracle connections +
    RE: (forte-users) SQL Server Maximum DB Processes already allocated.
    Hi Kamran,
    I just looked up bug # 54610 in Cyber Support and it is not there yet, so a
    question.
    In your opinion, does this effect all databases? We are using DB2 and
    considering going to 3.5 . Are we going to see the same problems you have
    had with Oracle?
    -thanks
    -labeaux
    "Amin, Kamran" <kamran.aminlendware.com> 02/28/01 05:28PM >>>Update on my problem. Well now its everybody's problem. Forte has
    conformed the bug. Bug number 54610 for your reference.
    thanks to everybody for the help..
    ka
    For the archives, go to: http://lists.xpedior.com/forte-users and use
    the login: forte and the password: archive. To unsubscribe, send in a new
    email the word: 'Unsubscribe' to: forte-users-requestlists.xpedior.com

    The bug was just reported yesterday so they might not have it available to
    the public for a while. I am guessing this bug has been around since 3.M.?
    and its very easy to verify it if its happening in your environment. Also I
    have been talking to other user that are not using Oracle (Sybase instead)
    who are also seen the same problem. I think this is a problem across all
    database because there is some fundamental event or process that is not
    taking place to close database connections. But just to be safe verify it
    in your test environment before moving to 3.5. To verify if its happening
    in your Forte version just create a small application that connects to the
    database and run it in debug mode. Log into the database and then stop the
    debug session. The connection will still be open. This will also occur
    when you use the running man or in a deployed application.
    ka
    -----Original Message-----
    From: Labeaux Schiek [mailto:DHSV017dhs.state.il.us]
    Sent: Thursday, March 01, 2001 7:21 AM
    To: kamran.aminlendware.com; Forte-userslists.xpedior.com
    Subject: RE: (forte-users) Forte not letting go of Oracle connections +
    RE: (forte-users) SQL Server Maximum DB Processes already allocated.
    Hi Kamran,
    I just looked up bug # 54610 in Cyber Support and it is not there yet, so a
    question.
    In your opinion, does this effect all databases? We are using DB2 and
    considering going to 3.5 . Are we going to see the same problems you have
    had with Oracle?
    -thanks
    -labeaux
    "Amin, Kamran" <kamran.aminlendware.com> 02/28/01 05:28PM >>>Update on my problem. Well now its everybody's problem. Forte has
    conformed the bug. Bug number 54610 for your reference.
    thanks to everybody for the help..
    ka
    For the archives, go to: http://lists.xpedior.com/forte-users and use
    the login: forte and the password: archive. To unsubscribe, send in a new
    email the word: 'Unsubscribe' to: forte-users-requestlists.xpedior.com

  • Re: [(forte-users) Need help w/SQL to Informix using anarray in WHERE c

    Bob.
    That syntax isn't know Forte, used Dynamic SQL and coding
    it dynamically. And the SQL statement exceed 255 bytes, divide in 2 or more
    sentences (NameListCity1, NameListCity2, NalmeListCountry1, ...)
    Try with:
    NameListCity = 'city1','city2','city3'...
    NalmeListCountry = 'country1','country2','country3',...
    WHERE
    city in (:NameListCity) and
    country_code in (:NameListCountry)
    Bye.
    "Briggs, Bob" <Bob.Briggsmarriott.com> wrote:
    I'm trying to invoke a query to Informix to select rows that match any of
    the city / country pairs that exist in an array that is passed into the
    method. The SQL itself seems to be OK however it appears that Forte is
    having a problem in parsing the Select statement when it gets to the WHERE
    clause. The resulting exception shows the SQL string formatted properly up
    to the WHERE clause which ends like "WHERE city". Does anyone know of a way
    to make this type of query work in a single invocation? I'm trying not to
    issue multiple queries as would be the case if I used Dynamic SQL and coding
    it dynamically with multiple OR statements is not really an option since the
    overall length of the SQL statement cannot exceed 256 bytes. I have included
    an example of the code below, any insight would be greatly appreciated.
    SQL SELECT address1 tnAddress, city tnCity, state tnState, zipcode
    tnZipcode,
    hotel_code tnHotel_Code, name tnHotelName, product_code
    tnProduct_code, loc_type tnLoc_Type,
    phone tnPhone, country_code tnCountry
    INTO
    :po_aboLocator
    FROM
    Hotel
    WHERE
    city in :pi_aboNickNameList[*].sCityName and
    country_code in :pi_aboNickNameList[*].sCountryCode
    ON SESSION getDBSession();
    Thank you very much,
    Bob
    For the archives, go to: http://lists.xpedior.com/forte-users and use
    the login: forte and the password: archive. To unsubscribe, send in a new
    email the word: 'Unsubscribe' to: forte-users-requestlists.xpedior.com

    Bob.
    That syntax isn't know Forte, used Dynamic SQL and coding
    it dynamically. And the SQL statement exceed 255 bytes, divide in 2 or more
    sentences (NameListCity1, NameListCity2, NalmeListCountry1, ...)
    Try with:
    NameListCity = 'city1','city2','city3'...
    NalmeListCountry = 'country1','country2','country3',...
    WHERE
    city in (:NameListCity) and
    country_code in (:NameListCountry)
    Bye.
    "Briggs, Bob" <Bob.Briggsmarriott.com> wrote:
    I'm trying to invoke a query to Informix to select rows that match any of
    the city / country pairs that exist in an array that is passed into the
    method. The SQL itself seems to be OK however it appears that Forte is
    having a problem in parsing the Select statement when it gets to the WHERE
    clause. The resulting exception shows the SQL string formatted properly up
    to the WHERE clause which ends like "WHERE city". Does anyone know of a way
    to make this type of query work in a single invocation? I'm trying not to
    issue multiple queries as would be the case if I used Dynamic SQL and coding
    it dynamically with multiple OR statements is not really an option since the
    overall length of the SQL statement cannot exceed 256 bytes. I have included
    an example of the code below, any insight would be greatly appreciated.
    SQL SELECT address1 tnAddress, city tnCity, state tnState, zipcode
    tnZipcode,
    hotel_code tnHotel_Code, name tnHotelName, product_code
    tnProduct_code, loc_type tnLoc_Type,
    phone tnPhone, country_code tnCountry
    INTO
    :po_aboLocator
    FROM
    Hotel
    WHERE
    city in :pi_aboNickNameList[*].sCityName and
    country_code in :pi_aboNickNameList[*].sCountryCode
    ON SESSION getDBSession();
    Thank you very much,
    Bob
    For the archives, go to: http://lists.xpedior.com/forte-users and use
    the login: forte and the password: archive. To unsubscribe, send in a new
    email the word: 'Unsubscribe' to: forte-users-requestlists.xpedior.com

  • RE: (forte-users) Hash tables vs 'sparse' arrays

    The main difference is that the Array class does not have any method for
    locating the object you are looking for, while the hash table has it (using
    a object of type HashFunc).
    If you are going to retrieve sequentially every element from the array then
    it may be better choice, but if you do not know which element you will need
    to retrieve then the hash table is much better choice.
    Hope this helps
    Dimitar
    -----Original Message-----
    From: Duncan Kinnear
    To: kamranaminyahoo.com
    Sent: 4/16/00 5:17 PM
    Subject: (forte-users) Hash tables vs 'sparse' arrays
    Can someone tell me what the differences would be between a hash
    table and an array with 'randomly' filled entries (e.g. with entries at
    positions 1, 37, 342 and 1003).
    Would the array take up 'space' for the entries that are empty? Would
    the array be faster?
    Any comments greatly appreciated.
    Cheers,
    Duncan Kinnear,
    McCarthy and Associates, Email:
    duncanMcCarthy.co.nz
    PO Box 764, McLean Towers, Phone: +64 6 834 3360
    Shakespeare Road, Napier, New Zealand. Fax: +64 6 834 3369
    Providing Integrated Software to the Meat Processing Industry for over
    10 years
    For the archives, go to: http://lists.xpedior.com/forte-users and use
    the login: forte and the password: archive. To unsubscribe, send in a
    new
    email the word: 'Unsubscribe' to: forte-users-requestlists.xpedior.com

    The main difference is that the Array class does not have any method for
    locating the object you are looking for, while the hash table has it (using
    a object of type HashFunc).
    If you are going to retrieve sequentially every element from the array then
    it may be better choice, but if you do not know which element you will need
    to retrieve then the hash table is much better choice.
    Hope this helps
    Dimitar
    -----Original Message-----
    From: Duncan Kinnear
    To: kamranaminyahoo.com
    Sent: 4/16/00 5:17 PM
    Subject: (forte-users) Hash tables vs 'sparse' arrays
    Can someone tell me what the differences would be between a hash
    table and an array with 'randomly' filled entries (e.g. with entries at
    positions 1, 37, 342 and 1003).
    Would the array take up 'space' for the entries that are empty? Would
    the array be faster?
    Any comments greatly appreciated.
    Cheers,
    Duncan Kinnear,
    McCarthy and Associates, Email:
    duncanMcCarthy.co.nz
    PO Box 764, McLean Towers, Phone: +64 6 834 3360
    Shakespeare Road, Napier, New Zealand. Fax: +64 6 834 3369
    Providing Integrated Software to the Meat Processing Industry for over
    10 years
    For the archives, go to: http://lists.xpedior.com/forte-users and use
    the login: forte and the password: archive. To unsubscribe, send in a
    new
    email the word: 'Unsubscribe' to: forte-users-requestlists.xpedior.com

  • RE: (forte-users) Hi All....very urgent...Forte doesn'thandle La rge ar

    Okay, here's my three cents worth,
    Are you using Forte "Keep Alive" settings? If yes, you may simply have a
    time-out.
    While a partition is waiting for a reply from a database, it blocks and
    won't respond
    to anything, including pings to check if it's still alive. So, if the query
    takes longer to
    complete than the time-out period of the communication manager, then you
    will
    loose the connection to the partition.
    -----Original Message-----
    From: Aberdour George [SMTP:george.aberdourdet.nsw.edu.au]
    Sent: Sunday, February 13, 2000 11:39 AM
    To: 'Babu Raj'; kamranaminyahoo.com
    Subject: RE: (forte-users) Hi All....very urgent...Forte doesn't
    handle La rge array properly
    Hi,
    This sounds almost identical to a problem we have experienced.
    If it is the same problem it is because you have compiled a back-end
    load-balanced partition, but NOT the router that manages it.
    With such a configuration, attempts to send greater than a few thousand
    rows
    will fail - and it doesn't seem to matter what you set -fm to.
    You don't see the problem running distributed from your workspace because
    everything is interpreted.
    So just compile the router and try again.
    Hope this helps.
    George Aberdour
    (George.Aberdourdet.nsw.edu.au)
    -----Original Message-----
    From: Babu Raj [mailto:ibcsmartboyyahoo.com]
    Sent: Saturday, 12 February 2000 7:24
    To: kamranaminyahoo.com
    Subject: (forte-users) Hi All....very urgent...Forte doesn't handle
    Large array properly
    Hi All,
    Have anyone experienced problem of retrieving
    more than 1500 records from the database table, into
    the object.
    I use dynamic SQL statement, and populating Array
    object from the DBDataSet. When it runs from my
    workspace distributed, it works fine. But, when I make
    deployment, and install on the test bed, I face
    Network connection failure from the client machine. It
    looks like, server read the data from the Database,
    and while packaging it, to send it across to the
    client, server seems to run out ouf memory or couldn't
    maintain the connection with the client. I tried to
    set -fm flag on that partition, and separately setting
    FORTE_GC_SPECIAL too, but still no luck.
    we have increased, the rollback segment size on
    Oracle too, but still no luck.
    Appreciate, your suggestions, if you can,
    Thank you,
    Babu
    For the archives, go to: http://lists.xpedior.com/forte-users and use
    the login: forte and the password: archive. To unsubscribe, send in a new
    email the word: 'Unsubscribe' to: forte-users-requestlists.xpedior.com
    For the archives, go to: http://lists.xpedior.com/forte-users and use
    the login: forte and the password: archive. To unsubscribe, send in a new
    email the word: 'Unsubscribe' to: forte-users-requestlists.xpedior.com

    Okay, here's my three cents worth,
    Are you using Forte "Keep Alive" settings? If yes, you may simply have a
    time-out.
    While a partition is waiting for a reply from a database, it blocks and
    won't respond
    to anything, including pings to check if it's still alive. So, if the query
    takes longer to
    complete than the time-out period of the communication manager, then you
    will
    loose the connection to the partition.
    -----Original Message-----
    From: Aberdour George [SMTP:george.aberdourdet.nsw.edu.au]
    Sent: Sunday, February 13, 2000 11:39 AM
    To: 'Babu Raj'; kamranaminyahoo.com
    Subject: RE: (forte-users) Hi All....very urgent...Forte doesn't
    handle La rge array properly
    Hi,
    This sounds almost identical to a problem we have experienced.
    If it is the same problem it is because you have compiled a back-end
    load-balanced partition, but NOT the router that manages it.
    With such a configuration, attempts to send greater than a few thousand
    rows
    will fail - and it doesn't seem to matter what you set -fm to.
    You don't see the problem running distributed from your workspace because
    everything is interpreted.
    So just compile the router and try again.
    Hope this helps.
    George Aberdour
    (George.Aberdourdet.nsw.edu.au)
    -----Original Message-----
    From: Babu Raj [mailto:ibcsmartboyyahoo.com]
    Sent: Saturday, 12 February 2000 7:24
    To: kamranaminyahoo.com
    Subject: (forte-users) Hi All....very urgent...Forte doesn't handle
    Large array properly
    Hi All,
    Have anyone experienced problem of retrieving
    more than 1500 records from the database table, into
    the object.
    I use dynamic SQL statement, and populating Array
    object from the DBDataSet. When it runs from my
    workspace distributed, it works fine. But, when I make
    deployment, and install on the test bed, I face
    Network connection failure from the client machine. It
    looks like, server read the data from the Database,
    and while packaging it, to send it across to the
    client, server seems to run out ouf memory or couldn't
    maintain the connection with the client. I tried to
    set -fm flag on that partition, and separately setting
    FORTE_GC_SPECIAL too, but still no luck.
    we have increased, the rollback segment size on
    Oracle too, but still no luck.
    Appreciate, your suggestions, if you can,
    Thank you,
    Babu
    For the archives, go to: http://lists.xpedior.com/forte-users and use
    the login: forte and the password: archive. To unsubscribe, send in a new
    email the word: 'Unsubscribe' to: forte-users-requestlists.xpedior.com
    For the archives, go to: http://lists.xpedior.com/forte-users and use
    the login: forte and the password: archive. To unsubscribe, send in a new
    email the word: 'Unsubscribe' to: forte-users-requestlists.xpedior.com

  • Re: (forte-users) RV: (forte-users) DecimalNullable &ArrayField

    Jorge,
    Here are couple of steps you may want to double-check:
    1. Set the desired scale (for e.g., say scale = 10) on the window's
    attribute (may be in Init() method).
    2. May be you want to mask the input to the DataField (for e.g., say Input
    Mask = Float)
    Make sure you don't overwrite the attribute (the object itself) with
    another object with a different scale.
    3. If what you see on the window is what does not get to the database, then
    you may want to verify parameter passing.
    4. More importantly, make sure the DecimalNullable object in the SQL has
    the same scale as that on the window.
    Hope this helps.
    Jagadish
    "Jorge
    Bellido" To: <forte-userslists.xpedior.com>
    <jorge.bellid cc:
    oeam.es> Fax to:
    Subject: (forte-users) RV: (forte-users)
    03/13/2001 DecimalNullable & ArrayField
    10:23
    Another example,
    If I have saved the data 55446.023, when I go to the window and I write
    0. then the data saved is 0.046
    Regards,
    Jorge.
    ----- Original Message -----
    From: Jorge Bellido
    To: forte-userslists.xpedior.com
    Sent: Tuesday, March 13, 2001 12:01 PM
    Subject: (forte-users) DecimalNullable & ArrayField
    Hello!
    I am very grateful to you for solutions given to me some days ago. I
    decided manage DecimalNullable, but now I have a problem:
    I have one ArrayField (called MyList") in a Window, with Mapped Type "
    Array of MyClass". "MyClass" has one attribute called Cost" with
    type DecimalNullable and in the Init I have "Cost = new ( scale = 10 );".
    In the Window the ArrayField have a DataField called "Cost" with
    MappedType DecimalNullable, and Input Mask Float.
    Well, when I go to this Window, for example is showed "23.12345". If I
    select this number with the mouse and I write for example "8", with the
    debugger I see that MyList.Cost is "8.0". If I continue writting one
    comma, with the debugger I see that MyList.Cost is "8.02345", and I don't
    know why Forte write the decimals of the old number, but only when I write
    the comma. If I write "8.2" the result is OK.
    Anybody knows some solution?
    Thank you very much,
    Jorge.

    Hi Jean-Paul,
    As described in the Technote 10981 some Forte programs (Nodemanager and
    router) handle correct the high-file descriptor-use problem. It is possible
    that Forte interpreter do it correct too.
    Zenon
    -----Original Message-----
    From: Jean-Paul Gabrielli [SMTP:Jean-Paul.Gabriellisema.fr]
    Sent: Monday, September 25, 2000 12:11 PM
    To: Adamek, Zenon
    Cc: Forte-userslists.xpedior.com
    Subject: RE: (forte-users) [UNIX] "Too many open files" 3.0.M2
    question
    Actually, the stuff works in interpreted mode.
    It's only when having the server partition compiled that this happen.
    j-p
    -----Message d'origine-----
    De: Adamek, Zenon [mailto:ZAdamekpurolator.com]
    Date: lundi 25 septembre 2000 17:13
    &Agrave;: 'Jean-Paul.Gabriellisema.fr'
    Cc: Forte-userslists.xpedior.com
    Objet: RE: (forte-users) [UNIX] "Too many open files" 3.0.M2 question
    see Technote 10981
    -----Original Message-----
    From: Jean-Paul Gabrielli [SMTP:Jean-Paul.Gabriellisema.fr]
    Sent: Monday, September 25, 2000 11:02 AM
    To: zeForte-users
    Subject: (forte-users) [UNIX] "Too many open files" 3.0.M2 question
    Hi,
    running a server partition that reads a configuration file,
    and apparently doen't close it after, I have that exception:
    SYSTEM ERROR: System Error: Too many open files, opening '....'with mode
    'r'
    Class: qqos_FileResourceException
    1) Is there such a limit, or does this rely only on the OS one ?
    2) How is this error not trapped, as I only got itinteractively, whereas
    my server log does a exception trap/segmentation fault,
    thanlks
    j-p
    For the archives, go to: http://lists.xpedior.com/forte-users and use
    the login: forte and the password: archive. To unsubscribe,send in a new
    email the word: 'Unsubscribe' to:
    forte-users-requestlists.xpedior.com
    >
    For the archives, go to: http://lists.xpedior.com/forte-users and use
    the login: forte and the password: archive. To unsubscribe, send in a new
    email the word: 'Unsubscribe' to: forte-users-requestlists.xpedior.com

  • RE: (forte-users) dynamic select & maxrowsparameter

    I thing this code should help:
    ** Accepts command string for dynamic query and **
    ** an empty array of BC to which the results **
    ** should be appended. Returns the filled BC **
    ** array. **
    l_dynamicStatement : DBStatementHandle;
    l_inputDescriptor : DBDataSet;
    l_outputDescriptor : DBDataSet;
    l_outputData : DBDataSet;
    l_intStatementType : integer;
    l_intRowType : integer;
    l_intNumRows : integer;
    l_intRowCount : integer = 0;
    l_result : BusinessClass = new;
    BEGIN
    -- Prepare SQL statement for query given command string
    l_dynamicStatement = self.GetDBSession().Prepare(
    commandString = p_strSql,
    inputDataSet = l_inputDescriptor,
    cmdType = l_intStatementType);
    -- Open Cursor
    l_intRowType = GetDBSession().OpenCursor(
    statementHandle = l_dynamicStatement,
    inputDataSet = l_inputDescriptor,
    resultDataSet = l_outputDescriptor);
    -- Fetch first row
    l_intNumrows = GetDBSession().FetchCursor(
    statementHandle = l_dynamicStatement,
    resultDataSet = l_outputData);
    WHILE l_intNumRows > 0 DO -- If prev fetch returned a row
    -- Increment count of rows fetched
    l_intRowCount = l_intRowCount + 1;
    -- Check for excessive number of rows retrieved
    -- Then it checks if you want to throw a exception or
    -- just exit and return the result set.
    IF l_introwCount > p_intMaxRow THEN
    IF p_bThrowExcept THEN
    -- Shut the cursor down and remove prepared
    statement
    GetDBSession().CloseCursor(l_dynamicStatement);
    GetDBSession().RemoveStatement(l_dynamicStatement);
    // Raise exception
    -- Have to put code
    ELSE
    EXIT;
    END IF;
    END IF;
    -- Parse result from DBDataSet to subclass
    -- of BusinessClass
    l_result = parseResult(l_outputData);
    // Add row to array
    p_aryBC.AppendRow(l_result.Clone(deep=TRUE));
    // Fetch next row
    l_intNumrows = GetDBSession().FetchCursor(
    statementHandle = l_dynamicStatement,
    resultDataSet = l_outputData);
    END WHILE;
    -- Shut the cursor down and remove prepared statement
    GetDBSession().CloseCursor(l_dynamicStatement);
    GetDBSession().RemoveStatement(l_dynamicStatement);
    EXCEPTION
    when e: GenericException do
    GetDBSession().CloseCursor(l_dynamicStatement);
    GetDBSession().RemoveStatement(l_dynamicStatement);
    raise e;
    END;
    return p_aryBC;
    ka
    Kamran Amin
    Framework, Inc.
    303 South Broadway
    Tarrytown, NY 10591
    (914) 631-2322x121
    [email protected]
    http://www.frameworkinc.com/
    -----Original Message-----
    From: Matthew Middleton [mailto:[email protected]]
    Sent: Thursday, December 09, 1999 11:15 PM
    To: Will Chris
    Cc: [email protected]
    Subject: RE: (forte-users) dynamic select & maxrows parameter
    Think there's a mis-understanding. The maxrows I refer to is not SQL but a
    forte method parameter as in the following:
    dynStatement = self.DefaultDBSession.Prepare(commandString = sqlStatement
    ,inputDataSet = inputDescriptor
    ,cmdType = commandType);
    rowType = self.DefaultDBSession.Select(statementHandle = dynStatement
    ,inputDataSet = inputDescriptor
    ,resultDataSet = outputDescriptor
    ,maxrows = 100);
    the variable sqlStatement holds the "dynamic" select string.
    If I don't set maxrows I get a runtime error, as mentioned, it is running
    against Oracle.
    At 14:47 10/12/99 +1100, you wrote:
    We use Oracle and Rdb and we have dynamic and non-dynamic SQL. No
    combination of
    these demand a max rows clause.
    For example the following query works on both databases :
    lvLanguageCodesList : Array of LanguageCodes = new();
    begin transaction
    sql select Language_Code LanguageCode,
    Language_Nm LanguageNm,
    System_Control_YN SystemControlYN,
    Other_Language_YN OtherLanguageYN
    into :lvLanguageCodesList
    from SRD_LANGUAGE_CODES
    order by Language_Nm
    on session StudentRegistryDBSession;
    end transaction;
    if lvLanguageCodesList.items = 0 then
    return Nil;
    else
    return lvLanguageCodesList;
    end if;
    Indeed if we wanted to use max rows its a bit of a pain in the bum because
    Oracle and
    Rdb use different syntax to define the row limit. So our dynamic SQL
    'builder class'
    has to detect the database flavour and configure max rows accordingly(where
    we want to use
    it).
    I can only guess that the error you are getting is not assoicated to therow
    limit or is caused because of the database you are using ?
    Regards,
    Chris Will, Sydney, Australia
    -----Original Message-----
    From: Matthew Middleton [mailto:[email protected]]
    Sent: Friday, 10 December 1999 14:33
    To: [email protected]
    Subject: (forte-users) dynamic select & maxrows parameter
    the help for DBSession.Select method says that the maxrows
    parameter is not
    required. Leaving it out does not give a compile error.
    However at runtime
    an error is got saying maxrows must be > 0.
    I am using a method that accepts a where clause as a
    parameter and am not
    really interested in what the number of rows will be.
    Should I be?
    Does anyone have any knowledge they can share on this one.
    Thanks.
    Regards,
    Matthew Middleton Ph: +61 2 9239 4972
    Oryx Software Consultant Fax: +61 2 9239 4900
    Lawpoint Pty. Ltd. E-mail [email protected]
    For the archives, go to: http://lists.sageit.com/forte-users and use
    the login: forte and the password: archive. To unsubscribe,
    send in a new
    email the word: 'Unsubscribe' to: [email protected]
    For the archives, go to: http://lists.sageit.com/forte-users and use
    the login: forte and the password: archive. To unsubscribe, send in a new
    email the word: 'Unsubscribe' to: [email protected]
    Regards,
    Matthew Middleton Ph: +61 2 9239 4972
    Oryx Software Consultant Fax: +61 2 9239 4900
    Lawpoint Pty. Ltd. E-mail [email protected]
    For the archives, go to: http://lists.sageit.com/forte-users and use
    the login: forte and the password: archive. To unsubscribe, send in a new
    email the word: 'Unsubscribe' to: [email protected]

    I thing this code should help:
    ** Accepts command string for dynamic query and **
    ** an empty array of BC to which the results **
    ** should be appended. Returns the filled BC **
    ** array. **
    l_dynamicStatement : DBStatementHandle;
    l_inputDescriptor : DBDataSet;
    l_outputDescriptor : DBDataSet;
    l_outputData : DBDataSet;
    l_intStatementType : integer;
    l_intRowType : integer;
    l_intNumRows : integer;
    l_intRowCount : integer = 0;
    l_result : BusinessClass = new;
    BEGIN
    -- Prepare SQL statement for query given command string
    l_dynamicStatement = self.GetDBSession().Prepare(
    commandString = p_strSql,
    inputDataSet = l_inputDescriptor,
    cmdType = l_intStatementType);
    -- Open Cursor
    l_intRowType = GetDBSession().OpenCursor(
    statementHandle = l_dynamicStatement,
    inputDataSet = l_inputDescriptor,
    resultDataSet = l_outputDescriptor);
    -- Fetch first row
    l_intNumrows = GetDBSession().FetchCursor(
    statementHandle = l_dynamicStatement,
    resultDataSet = l_outputData);
    WHILE l_intNumRows > 0 DO -- If prev fetch returned a row
    -- Increment count of rows fetched
    l_intRowCount = l_intRowCount + 1;
    -- Check for excessive number of rows retrieved
    -- Then it checks if you want to throw a exception or
    -- just exit and return the result set.
    IF l_introwCount > p_intMaxRow THEN
    IF p_bThrowExcept THEN
    -- Shut the cursor down and remove prepared
    statement
    GetDBSession().CloseCursor(l_dynamicStatement);
    GetDBSession().RemoveStatement(l_dynamicStatement);
    // Raise exception
    -- Have to put code
    ELSE
    EXIT;
    END IF;
    END IF;
    -- Parse result from DBDataSet to subclass
    -- of BusinessClass
    l_result = parseResult(l_outputData);
    // Add row to array
    p_aryBC.AppendRow(l_result.Clone(deep=TRUE));
    // Fetch next row
    l_intNumrows = GetDBSession().FetchCursor(
    statementHandle = l_dynamicStatement,
    resultDataSet = l_outputData);
    END WHILE;
    -- Shut the cursor down and remove prepared statement
    GetDBSession().CloseCursor(l_dynamicStatement);
    GetDBSession().RemoveStatement(l_dynamicStatement);
    EXCEPTION
    when e: GenericException do
    GetDBSession().CloseCursor(l_dynamicStatement);
    GetDBSession().RemoveStatement(l_dynamicStatement);
    raise e;
    END;
    return p_aryBC;
    ka
    Kamran Amin
    Framework, Inc.
    303 South Broadway
    Tarrytown, NY 10591
    (914) 631-2322x121
    [email protected]
    http://www.frameworkinc.com/
    -----Original Message-----
    From: Matthew Middleton [mailto:[email protected]]
    Sent: Thursday, December 09, 1999 11:15 PM
    To: Will Chris
    Cc: [email protected]
    Subject: RE: (forte-users) dynamic select & maxrows parameter
    Think there's a mis-understanding. The maxrows I refer to is not SQL but a
    forte method parameter as in the following:
    dynStatement = self.DefaultDBSession.Prepare(commandString = sqlStatement
    ,inputDataSet = inputDescriptor
    ,cmdType = commandType);
    rowType = self.DefaultDBSession.Select(statementHandle = dynStatement
    ,inputDataSet = inputDescriptor
    ,resultDataSet = outputDescriptor
    ,maxrows = 100);
    the variable sqlStatement holds the "dynamic" select string.
    If I don't set maxrows I get a runtime error, as mentioned, it is running
    against Oracle.
    At 14:47 10/12/99 +1100, you wrote:
    We use Oracle and Rdb and we have dynamic and non-dynamic SQL. No
    combination of
    these demand a max rows clause.
    For example the following query works on both databases :
    lvLanguageCodesList : Array of LanguageCodes = new();
    begin transaction
    sql select Language_Code LanguageCode,
    Language_Nm LanguageNm,
    System_Control_YN SystemControlYN,
    Other_Language_YN OtherLanguageYN
    into :lvLanguageCodesList
    from SRD_LANGUAGE_CODES
    order by Language_Nm
    on session StudentRegistryDBSession;
    end transaction;
    if lvLanguageCodesList.items = 0 then
    return Nil;
    else
    return lvLanguageCodesList;
    end if;
    Indeed if we wanted to use max rows its a bit of a pain in the bum because
    Oracle and
    Rdb use different syntax to define the row limit. So our dynamic SQL
    'builder class'
    has to detect the database flavour and configure max rows accordingly(where
    we want to use
    it).
    I can only guess that the error you are getting is not assoicated to therow
    limit or is caused because of the database you are using ?
    Regards,
    Chris Will, Sydney, Australia
    -----Original Message-----
    From: Matthew Middleton [mailto:[email protected]]
    Sent: Friday, 10 December 1999 14:33
    To: [email protected]
    Subject: (forte-users) dynamic select & maxrows parameter
    the help for DBSession.Select method says that the maxrows
    parameter is not
    required. Leaving it out does not give a compile error.
    However at runtime
    an error is got saying maxrows must be > 0.
    I am using a method that accepts a where clause as a
    parameter and am not
    really interested in what the number of rows will be.
    Should I be?
    Does anyone have any knowledge they can share on this one.
    Thanks.
    Regards,
    Matthew Middleton Ph: +61 2 9239 4972
    Oryx Software Consultant Fax: +61 2 9239 4900
    Lawpoint Pty. Ltd. E-mail [email protected]
    For the archives, go to: http://lists.sageit.com/forte-users and use
    the login: forte and the password: archive. To unsubscribe,
    send in a new
    email the word: 'Unsubscribe' to: [email protected]
    For the archives, go to: http://lists.sageit.com/forte-users and use
    the login: forte and the password: archive. To unsubscribe, send in a new
    email the word: 'Unsubscribe' to: [email protected]
    Regards,
    Matthew Middleton Ph: +61 2 9239 4972
    Oryx Software Consultant Fax: +61 2 9239 4900
    Lawpoint Pty. Ltd. E-mail [email protected]
    For the archives, go to: http://lists.sageit.com/forte-users and use
    the login: forte and the password: archive. To unsubscribe, send in a new
    email the word: 'Unsubscribe' to: [email protected]

  • OpenSQLException - The SQL statement "INSERT INTO "KMC_SUB_RCPT"...

    Hallo,
    We have the problem that subscriptions cannot be sent. In defaultTrace I have found following entry:
    #1.5 #32B150008004002400001641000710B80004539FE52B4274#1217846116565#com.sapportals.wcm.repository.service.subscription.wcm.SubscriptionsOpenSQL#sap.com/irj#com.sapportals.wcm.repository.service.subscription.wcm.SubscriptionsOpenSQL#LI01736#118449##iscp63.isc.aok.de_LFP_399377450#LI01736#03186780621111ddb4c432b150008004#SAPEngine_Application_Thread[impl:3]_10##0#0#Fatal##Plain###Cannot unsubscribe user. Context: ResourceContext: user=LI01736, creationTime=1217846116420, locale=de. User: LI01736. ID: 50cdd784-51ac-2810-2393-ea9709f50de3. Recipient: com.sapportals.wcm.util.channels.wcm.Recipient@ce9b7f70. Step: Executing SQL INSERT. . Trying to rollback transaction.#
    #1.5 #32B150008004002400001643000710B80004539FE52B989A#1217846116586#com.sap.sql.jdbc.common.StatementAnalyzerImpl#sap.com/irj#com.sap.sql.jdbc.common.StatementAnalyzerImpl#LI01736#118449##iscp63.isc.aok.de_LFP_399377450#LI01736#03186780621111ddb4c432b150008004#SAPEngine_Application_Thread[impl:3]_10##0#0#Error#1#/System/Database/sql/jdbc/common#Java#com.sap.sql_0019##Exception of type com.sap.sql.log.OpenSQLException caught: The SQL statement "INSERT INTO "KMC_SUB_RCPT" ("ID","RECIPIENT","RCPTTYPE","UNSUBSCRIBED") VALUES ('50cdd784-51ac-2810-2393-ea9709f50de3','LI01736','0','X')" contains the semantics error[s]: - 1:27 - the column >>ID<< is undefined in the current scope
    [EXCEPTION]
    #3#com.sap.sql.log.OpenSQLException#The SQL statement "INSERT INTO "KMC_SUB_RCPT" ("ID","RECIPIENT","RCPTTYPE","UNSUBSCRIBED") VALUES ('50cdd784-51ac-2810-2393-ea9709f50de3','LI01736','0','X')" contains the semantics error[s]: - 1:27 - the column >>ID<< is undefined in the current scope
    #com.sap.sql.log.OpenSQLException: The SQL statement "INSERT INTO "KMC_SUB_RCPT" ("ID","RECIPIENT","RCPTTYPE","UNSUBSCRIBED") VALUES ('50cdd784-51ac-2810-2393-ea9709f50de3','LI01736','0','X')" contains the semantics error[s]: - 1:27 - the column >>ID<< is undefined in the current scope
         at com.sap.sql.jdbc.common.StatementAnalyzerImpl.check(StatementAnalyzerImpl.java:38)
         at com.sap.sql.jdbc.common.StatementAnalyzerImpl.preprepareStatement(StatementAnalyzerImpl.java:101)
         at com.sap.sql.jdbc.common.StatementAnalyzerImpl.preprepareStatement(StatementAnalyzerImpl.java:87)
         at com.sap.sql.jdbc.common.CommonStatementImpl.executeUpdate(CommonStatementImpl.java:159)
         at com.sap.engine.services.dbpool.wrappers.StatementWrapper.executeUpdate(StatementWrapper.java:162)
         at com.sapportals.wcm.repository.service.subscription.wcm.SubscriptionsOpenSQL$SqlCommand.executeUpdate(SubscriptionsOpenSQL.java:3834)
         at com.sapportals.wcm.repository.service.subscription.wcm.SubscriptionsOpenSQL.unsubscribe(SubscriptionsOpenSQL.java:2127)
         at com.sapportals.wcm.repository.service.subscription.wcm.SubscriptionManager.unsubscribe(SubscriptionManager.java:3226)
         at com.sapportals.wcm.repository.service.subscription.wcm.SubscriptionManager.unsubscribe(SubscriptionManager.java:3205)
         at com.sapportals.wcm.repository.service.subscription.wcm.ActionInboxItemProducer.executeItemAction(ActionInboxItemProducer.java:222)
         at com.sapportals.wcm.service.actioninbox.wcm.ActionInboxService.executeItemAction(ActionInboxService.java:610)
         at com.sapportals.wcm.service.actioninbox.wcm.ActionInboxService.executeItemActions(ActionInboxService.java:1221)
         at com.sapportals.wcm.control.actioninbox.ActionInboxDetailsControl.onClick(ActionInboxDetailsControl.java:396)
    Any Idea?
    Regards,
    Gerhard

    Statement statement = connection.createStatement();
    //createing a statement object
    String query= "INSERT INTO table......"
    output.append("\nSending query:" + connection.nativeSQL(query));
    int result = statement.executeUpdate(query);//updates database wit record
    if (result==1)
    output.append("\ninsertation successfull");
    JOptionPane.showMessageDialog(null,"Insertation successfull ",
    JOptionPane.INFORMATION_MESSAGE);
    else
    output.append("\ninsertation unsuccessfull");
    JOptionPane.showMessageDialog(null,"Insertation unsuccessfull",
    JOptionPane.WARNING_MESSAGE);
    statement.close();
    have left out the trys and catches and some other bits and pieces that i dont think ud need its the bare bones but it might help or at least give u an idea. have used this code before to do something similar.

Maybe you are looking for

  • Can I have more than one apple ID on my iTunes?

    Can I have two iphones on itunes with different apple id's on same computer??

  • Remote managment Exchange 2013 SP1 from C# code using Power-Shell.

    Hello, Sorry if I am describing something wrong, but it is first time I am using Microsoft development forum. I am trying to built library that will manage Exchange remotely using  C# code (VS 2012) and Power-Shell ver.4.0. My workstation and the act

  • Excise inv

    HI, While creating Excise Invoice for factory sales system showing error that ---Document number 2000  100000298  2008 was already assigned.So system terminating of processing.Please give me the solution for this,Urgent. Thanks, Rash.

  • Can I install Adobe Reader on Windows 7?

    I am going nuts trying to get this on my computer.   I need to print a set sail pass for our upcoming cruise.   and I need HELP!

  • QT 7.5.5 - 99% CPU usage

    have an Acer Aspire 3000. running Windows home XP, SP3. Mobile AMD Sempron 3000+ prcessor, 1.8 GHz, 448 RAM. When I run QT 7.5.5 *(not pro)* I get 99% CPU usage (thats just running in idle not playing anything). Interestingly, When I don't have Inter