Hello Mike,

Database Workbench won't enable the Commit/Rollback buttons on a plain 
SELECT,
because this will require you to use them for every SELECT you perform.

In the case of a SELECT-able Stored Procedure, this means it won't be able 
to detect
your procedure is also modifying data.

In the SQL Editor, you can actively start a transaction by yourself and the 
commit/rollback
buttons will always be enabled.

Hope this helps, if not, feel free to write to me personally.


With regards,

Martijn Tonies
Upscene Productions
http://www.upscene.com

Download Database Workbench for Oracle, MS SQL Server, Sybase SQL
Anywhere, MySQL, InterBase, NexusDB and Firebird!





I’m sorry I should have been a little bit more concise on what I’m doing.



I use Database Workbench v5 for all of my development needs.



Running the stored procedure setting the V_REPORT = 1 in Database Workbench, 
I do get a results set.  So far, so good.



However, if I set V_REPORT = 0 which should cause the UPDATE to be processed 
instead, I’m not able to commit as the “Commit” and “Rollback”  buttons are 
not enabled.



However, If I comment out the first portion (as shone below) leaving just 
the UPDATE clause it works fine and the  “Commit” and “Rollback”  buttons 
are not enabled.



/*

          IF (V_REPORT = 1) THEN

            SUSPEND;

          ELSE */

            UPDATE ACCT_CASE

               SET LEGAL_CASE_DATE = :ACCH_LEGAL_CASE_DATE

             WHERE ACCT_ID = :ACCT_ID

               AND CASE_ID = :CASE_ID;



Any ideas why?



Thanks,

Mike





From: [email protected] 
[mailto:[email protected]]
Sent: Tuesday, November 03, 2015 9:29 AM
To: [email protected]
Subject: ODP: [firebird-support] Why can't I have a SUSPEND or UPDATE in the 
same Stored Procedure?





hi,



you got an error or what?







regards,

Karol Bieniaszewski



-------- Oryginalna wiadomość --------
Od: "'stwizard' [email protected] [firebird-support]" 
<[email protected]>
Data: 03.11.2015 14:59 (GMT+01:00)
Do: [email protected]
Temat: [firebird-support] Why can't I have a SUSPEND or UPDATE in the same 
Stored Procedure?



Greetings All,



Firebird v 2.5.4



Many times I would like to run a report before I do an update.  Why can’t I 
allow for both in one stored procedure?  Look at the end of this stored 
procedure where I use V_REPORT.



Thanks,

Mike



SET TERM ^^ ;

CREATE PROCEDURE X_CHK_LEGAL_CASE_DATE (

  V_REPORT SmallInt)

returns (

  ACCT_ID Integer,

  CASE_ID SmallInt,

  LEGAL_CASE_DATE Date,

  CASE_LEGAL_CASE_DATE Date,

  ACCH_LEGAL_CASE_DATE Date,

  ACCH_NOTE VarChar(200))

AS

DECLARE VARIABLE iAcctCaseCourtID Integer;

begin

  FOR SELECT ACCT_CASE_COURT_ID,

             CAST(CREATE_DATE AS DATE),

             ACCT_ID,

             CASE_ID

        FROM ACCT_CASE_COURT

       WHERE STATUS_CODE = 'A'

    ORDER BY ACCT_ID, CASE_ID

        INTO :iAcctCaseCourtID, :LEGAL_CASE_DATE, :ACCT_ID, :CASE_ID DO

    BEGIN

      SELECT LEGAL_CASE_DATE

        FROM ACCT_CASE

       WHERE ACCT_ID = :ACCT_ID

         AND CASE_ID = :CASE_ID

        INTO :CASE_LEGAL_CASE_DATE;



      IF (CASE_LEGAL_CASE_DATE IS NULL) THEN

        BEGIN

          SELECT FIRST 1 CAST(CREATE_DATE AS DATE), NOTE

            FROM ACCT_CASE_COURT_HIST

           WHERE ACCT_CASE_COURT_ID = :iAcctCaseCourtID

           ORDER BY ACCT_CASE_COURT_HIST_ID

            INTO :ACCH_LEGAL_CASE_DATE, ACCH_NOTE;



          IF (V_REPORT = 1) THEN

            SUSPEND;

          ELSE

            UPDATE ACCT_CASE

               SET LEGAL_CASE_DATE = :ACCH_LEGAL_CASE_DATE

             WHERE ACCT_ID = :ACCT_ID

               AND CASE_ID = :CASE_ID;

        END

    END

end ^^

SET TERM ; ^^





[Non-text portions of this message have been removed]



------------------------------------
Posted by: "stwizard" <[email protected]>
------------------------------------

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Visit http://www.firebirdsql.org and click the Documentation item
on the main (top) menu.  Try FAQ and other links from the left-side menu 
there.

Also search the knowledgebases at 
http://www.ibphoenix.com/resources/documents/

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
------------------------------------

Yahoo Groups Links



Reply via email to