bug_tracker::bug::update (public)

 bug_tracker::bug::update -bug_id bug_id [ -user_id user_id ] \
    [ -creation_ip creation_ip ] -array array

Defined in packages/bug-tracker/tcl/bug-procs.tcl

Update a bug in the DB. Usually, you'll want to use bug_tracker::bug::edit because that one sends out notifications, etc.

Switches:
-bug_id
(required)
-user_id
(optional)
-creation_ip
(optional)
-array
(required)
Returns:
bug_id The same bug_id passed in, just for convenience.
See Also:

Partial Call Graph (max 5 caller/called nodes):
%3 ad_conn ad_conn (public) bug_tracker::bug::cache_flush bug_tracker::bug::cache_flush (public) bug_tracker::bug::get bug_tracker::bug::get (public) db_exec_plsql db_exec_plsql (public) bug_tracker::bug::update bug_tracker::bug::update bug_tracker::bug::update->ad_conn bug_tracker::bug::update->bug_tracker::bug::cache_flush bug_tracker::bug::update->bug_tracker::bug::get bug_tracker::bug::update->db_exec_plsql

Testcases:
No testcase defined.
Source code:
    upvar $array row

    if { $user_id eq "" } {
        set user_id [ad_conn user_id]
    }

    get -bug_id $bug_id -array new_row

    foreach column [array names row] {
        set new_row($column$row($column)
    }
    set new_row(creation_user) $user_id
    set new_row(creation_ip) $creation_ip

    foreach name [array names new_row] {
        set $name $new_row($name)
    }
    set revision_id [db_exec_plsql update_bug {}]

    cache_flush -bug_id $bug_id

    return $bug_id
Generic XQL file:
packages/bug-tracker/tcl/bug-procs.xql

PostgreSQL XQL file:
<fullquery name="bug_tracker::bug::update.update_bug">
    <querytext>
        select bt_bug_revision__new (
            null,
            :bug_id,
            :component_id,
            :found_in_version,
            :fix_for_version,
            :fixed_in_version,
            :resolution,
            :user_agent,
            :summary,
            now(),
            :creation_user,
            :creation_ip
        );
    </querytext>
</fullquery>
packages/bug-tracker/tcl/bug-procs-postgresql.xql

Oracle XQL file:
<fullquery name="bug_tracker::bug::update.update_bug">
    <querytext>
        begin
            :1 := bt_bug_revision.new (
                bug_revision_id =>  null,
                bug_id =>           :bug_id,
                component_id =>     :component_id,
                found_in_version => :found_in_version,
                fix_for_version =>  :fix_for_version,
                fixed_in_version => :fixed_in_version,
                resolution =>       :resolution,
                user_agent =>       :user_agent,
                summary =>          :summary,
                creation_date =>    sysdate,
                creation_user =>    :creation_user,
                creation_ip =>      :creation_ip
            );
        end;
     </querytext>
</fullquery>
packages/bug-tracker/tcl/bug-procs-oracle.xql

[ hide source ] | [ make this the default ]
Show another procedure: