namespace eval ::xo::db::sql {}
::nsf::object::alloc ::xo::db::Class ::xo::db::sql::workflow {set :__default_metaclass ::xotcl::Class
set :__default_superclass ::xotcl::Object
set :abstract_p f
set :auto_save false
set :name_method {}
set :object_type ::xo::db::sql::workflow
set :security_inherit_p t
set :sql_package_name workflow
set :supertype acs_object
set :with_table true}
::xo::db::sql::workflow proc add_trans_attribute_map {{-dbn {}} -workflow_key:required -transition_key:required -attribute_id:required -sort_order:required} {
foreach var [list WORKFLOW_KEY TRANSITION_KEY ATTRIBUTE_ID SORT_ORDER] {
set varname [string tolower $var]
if {[info exists $varname]} {
set $var [set $varname]
set _$var :$var
} else {
set _$var null
}
}
set sql "
select workflow__add_trans_attribute_map($_WORKFLOW_KEY, $_TRANSITION_KEY, $_ATTRIBUTE_ID, $_SORT_ORDER)
"
db_with_handle -dbn $dbn db {
return [ ns_set value [ns_pg_bind 0or1row $db $sql] 0 ]
}
}
::xo::db::sql::workflow proc delete_arc {{-dbn {}} -workflow_key:required -transition_key:required -place_key:required -direction:required} {
foreach var [list WORKFLOW_KEY TRANSITION_KEY PLACE_KEY DIRECTION] {
set varname [string tolower $var]
if {[info exists $varname]} {
set $var [set $varname]
set _$var :$var
} else {
set _$var null
}
}
set sql "
select workflow__delete_arc($_WORKFLOW_KEY, $_TRANSITION_KEY, $_PLACE_KEY, $_DIRECTION)
"
db_with_handle -dbn $dbn db {
return [ ns_set value [ns_pg_bind 0or1row $db $sql] 0 ]
}
}
::xo::db::sql::workflow proc simple_p {{-dbn {}} -workflow_key:required} {
foreach var [list WORKFLOW_KEY] {
set varname [string tolower $var]
if {[info exists $varname]} {
set $var [set $varname]
set _$var :$var
} else {
set _$var null
}
}
set sql "
select workflow__simple_p($_WORKFLOW_KEY)
"
db_with_handle -dbn $dbn db {
return [ ns_set value [ns_pg_bind 0or1row $db $sql] 0 ]
}
}
::xo::db::sql::workflow proc new {{-dbn {}} -short_name:required -pretty_name:required -package_key:required -object_id:required -object_type:required -creation_user:required -creation_ip:required -context_id:required -childof} {
foreach var [list SHORT_NAME PRETTY_NAME PACKAGE_KEY OBJECT_ID OBJECT_TYPE CREATION_USER CREATION_IP CONTEXT_ID] {
set varname [string tolower $var]
if {[info exists $varname]} {
set $var [set $varname]
set _$var :$var
} else {
set _$var null
}
}
set sql "
select workflow__new($_SHORT_NAME, $_PRETTY_NAME, $_PACKAGE_KEY, $_OBJECT_ID, $_OBJECT_TYPE, $_CREATION_USER, $_CREATION_IP, $_CONTEXT_ID)
"
db_with_handle -dbn $dbn db {
return [ ns_set value [ns_pg_bind 0or1row $db $sql] 0 ]
}
}
::xo::db::sql::workflow proc add_role {{-dbn {}} -workflow_key:required -role_key:required -role_name:required -sort_order:required} {
foreach var [list WORKFLOW_KEY ROLE_KEY ROLE_NAME SORT_ORDER] {
set varname [string tolower $var]
if {[info exists $varname]} {
set $var [set $varname]
set _$var :$var
} else {
set _$var null
}
}
set sql "
select workflow__add_role($_WORKFLOW_KEY, $_ROLE_KEY, $_ROLE_NAME, $_SORT_ORDER)
"
db_with_handle -dbn $dbn db {
return [ ns_set value [ns_pg_bind 0or1row $db $sql] 0 ]
}
}
::xo::db::sql::workflow proc delete {{-dbn {}} -delete_workflow_id:required} {
foreach var [list DELETE_WORKFLOW_ID] {
set varname [string tolower $var]
if {[info exists $varname]} {
set $var [set $varname]
set _$var :$var
} else {
set _$var null
}
}
set sql "
select workflow__delete($_DELETE_WORKFLOW_ID)
"
db_with_handle -dbn $dbn db {
return [ ns_set value [ns_pg_bind 0or1row $db $sql] 0 ]
}
}
::xo::db::sql::workflow proc add_transition {{-dbn {}} -workflow_key:required -transition_key:required -transition_name:required -role_key:required -sort_order:required {-trigger_type user}} {
foreach var [list WORKFLOW_KEY TRANSITION_KEY TRANSITION_NAME ROLE_KEY SORT_ORDER TRIGGER_TYPE] {
set varname [string tolower $var]
if {[info exists $varname]} {
set $var [set $varname]
set _$var :$var
} else {
set _$var null
}
}
set sql "
select workflow__add_transition($_WORKFLOW_KEY, $_TRANSITION_KEY, $_TRANSITION_NAME, $_ROLE_KEY, $_SORT_ORDER, $_TRIGGER_TYPE)
"
db_with_handle -dbn $dbn db {
return [ ns_set value [ns_pg_bind 0or1row $db $sql] 0 ]
}
}
::xo::db::sql::workflow proc move_role_up {{-dbn {}} -workflow_key:required -role_key:required} {
foreach var [list WORKFLOW_KEY ROLE_KEY] {
set varname [string tolower $var]
if {[info exists $varname]} {
set $var [set $varname]
set _$var :$var
} else {
set _$var null
}
}
set sql "
select workflow__move_role_up($_WORKFLOW_KEY, $_ROLE_KEY)
"
db_with_handle -dbn $dbn db {
return [ ns_set value [ns_pg_bind 0or1row $db $sql] 0 ]
}
}
::xo::db::sql::workflow proc delete_trans_role_assign_map {{-dbn {}} -workflow_key:required -transition_key:required -assign_role_key:required} {
foreach var [list WORKFLOW_KEY TRANSITION_KEY ASSIGN_ROLE_KEY] {
set varname [string tolower $var]
if {[info exists $varname]} {
set $var [set $varname]
set _$var :$var
} else {
set _$var null
}
}
set sql "
select workflow__delete_trans_role_assign_map($_WORKFLOW_KEY, $_TRANSITION_KEY, $_ASSIGN_ROLE_KEY)
"
db_with_handle -dbn $dbn db {
return [ ns_set value [ns_pg_bind 0or1row $db $sql] 0 ]
}
}
::xo::db::sql::workflow proc add_arc {{-dbn {}} -workflow_key:required -from_place_key:required -to_transition_key:required} {
foreach var [list WORKFLOW_KEY FROM_PLACE_KEY TO_TRANSITION_KEY] {
set varname [string tolower $var]
if {[info exists $varname]} {
set $var [set $varname]
set _$var :$var
} else {
set _$var null
}
}
set sql "
select workflow__add_arc($_WORKFLOW_KEY, $_FROM_PLACE_KEY, $_TO_TRANSITION_KEY)
"
db_with_handle -dbn $dbn db {
return [ ns_set value [ns_pg_bind 0or1row $db $sql] 0 ]
}
}
::xo::db::sql::workflow proc delete_place {{-dbn {}} -workflow_key:required -place_key:required} {
foreach var [list WORKFLOW_KEY PLACE_KEY] {
set varname [string tolower $var]
if {[info exists $varname]} {
set $var [set $varname]
set _$var :$var
} else {
set _$var null
}
}
set sql "
select workflow__delete_place($_WORKFLOW_KEY, $_PLACE_KEY)
"
db_with_handle -dbn $dbn db {
return [ ns_set value [ns_pg_bind 0or1row $db $sql] 0 ]
}
}
::xo::db::sql::workflow proc move_role_down {{-dbn {}} -workflow_key:required -role_key:required} {
foreach var [list WORKFLOW_KEY ROLE_KEY] {
set varname [string tolower $var]
if {[info exists $varname]} {
set $var [set $varname]
set _$var :$var
} else {
set _$var null
}
}
set sql "
select workflow__move_role_down($_WORKFLOW_KEY, $_ROLE_KEY)
"
db_with_handle -dbn $dbn db {
return [ ns_set value [ns_pg_bind 0or1row $db $sql] 0 ]
}
}
::xo::db::sql::workflow proc drop_attribute {{-dbn {}} -workflow_key:required -attribute_name:required} {
foreach var [list WORKFLOW_KEY ATTRIBUTE_NAME] {
set varname [string tolower $var]
if {[info exists $varname]} {
set $var [set $varname]
set _$var :$var
} else {
set _$var null
}
}
set sql "
select workflow__drop_attribute($_WORKFLOW_KEY, $_ATTRIBUTE_NAME)
"
db_with_handle -dbn $dbn db {
return [ ns_set value [ns_pg_bind 0or1row $db $sql] 0 ]
}
}
::xo::db::sql::workflow proc delete_cases {{-dbn {}} -workflow_key:required} {
foreach var [list WORKFLOW_KEY] {
set varname [string tolower $var]
if {[info exists $varname]} {
set $var [set $varname]
set _$var :$var
} else {
set _$var null
}
}
set sql "
select workflow__delete_cases($_WORKFLOW_KEY)
"
db_with_handle -dbn $dbn db {
return [ ns_set value [ns_pg_bind 0or1row $db $sql] 0 ]
}
}
::xo::db::sql::workflow proc delete_trans_attribute_map {{-dbn {}} -workflow_key:required -transition_key:required -attribute_id:required} {
foreach var [list WORKFLOW_KEY TRANSITION_KEY ATTRIBUTE_ID] {
set varname [string tolower $var]
if {[info exists $varname]} {
set $var [set $varname]
set _$var :$var
} else {
set _$var null
}
}
set sql "
select workflow__delete_trans_attribute_map($_WORKFLOW_KEY, $_TRANSITION_KEY, $_ATTRIBUTE_ID)
"
db_with_handle -dbn $dbn db {
return [ ns_set value [ns_pg_bind 0or1row $db $sql] 0 ]
}
}
::xo::db::sql::workflow proc add_trans_role_assign_map {{-dbn {}} -workflow_key:required -transition_key:required -assign_role_key:required} {
foreach var [list WORKFLOW_KEY TRANSITION_KEY ASSIGN_ROLE_KEY] {
set varname [string tolower $var]
if {[info exists $varname]} {
set $var [set $varname]
set _$var :$var
} else {
set _$var null
}
}
set sql "
select workflow__add_trans_role_assign_map($_WORKFLOW_KEY, $_TRANSITION_KEY, $_ASSIGN_ROLE_KEY)
"
db_with_handle -dbn $dbn db {
return [ ns_set value [ns_pg_bind 0or1row $db $sql] 0 ]
}
}
::xo::db::sql::workflow proc delete_role {{-dbn {}} -workflow_key:required -role_key:required} {
foreach var [list WORKFLOW_KEY ROLE_KEY] {
set varname [string tolower $var]
if {[info exists $varname]} {
set $var [set $varname]
set _$var :$var
} else {
set _$var null
}
}
set sql "
select workflow__delete_role($_WORKFLOW_KEY, $_ROLE_KEY)
"
db_with_handle -dbn $dbn db {
return [ ns_set value [ns_pg_bind 0or1row $db $sql] 0 ]
}
}
::xo::db::sql::workflow proc add_place {{-dbn {}} -workflow_key:required -place_key:required -place_name:required -sort_order:required} {
foreach var [list WORKFLOW_KEY PLACE_KEY PLACE_NAME SORT_ORDER] {
set varname [string tolower $var]
if {[info exists $varname]} {
set $var [set $varname]
set _$var :$var
} else {
set _$var null
}
}
set sql "
select workflow__add_place($_WORKFLOW_KEY, $_PLACE_KEY, $_PLACE_NAME, $_SORT_ORDER)
"
db_with_handle -dbn $dbn db {
return [ ns_set value [ns_pg_bind 0or1row $db $sql] 0 ]
}
}
::xo::db::sql::workflow proc delete_transition {{-dbn {}} -workflow_key:required -transition_key:required} {
foreach var [list WORKFLOW_KEY TRANSITION_KEY] {
set varname [string tolower $var]
if {[info exists $varname]} {
set $var [set $varname]
set _$var :$var
} else {
set _$var null
}
}
set sql "
select workflow__delete_transition($_WORKFLOW_KEY, $_TRANSITION_KEY)
"
db_with_handle -dbn $dbn db {
return [ ns_set value [ns_pg_bind 0or1row $db $sql] 0 ]
}
}
::xo::db::sql::workflow proc create_workflow {{-dbn {}} -workflow_key:required -pretty_name:required -pretty_plural -description -table_name:required {-id_column case_id}} {
foreach var [list WORKFLOW_KEY PRETTY_NAME PRETTY_PLURAL DESCRIPTION TABLE_NAME ID_COLUMN] {
set varname [string tolower $var]
if {[info exists $varname]} {
set $var [set $varname]
set _$var :$var
} else {
set _$var null
}
}
set sql "
select workflow__create_workflow($_WORKFLOW_KEY, $_PRETTY_NAME, $_PRETTY_PLURAL, $_DESCRIPTION, $_TABLE_NAME, $_ID_COLUMN)
"
db_with_handle -dbn $dbn db {
return [ ns_set value [ns_pg_bind 0or1row $db $sql] 0 ]
}
}
::xo::db::sql::workflow proc create_attribute {{-dbn {}} -workflow_key:required -attribute_name:required -datatype:required -pretty_name:required -pretty_plural -table_name -column_name -default_value {-min_n_values 1} {-max_n_values 1} -sort_order {-storage generic}} {
foreach var [list WORKFLOW_KEY ATTRIBUTE_NAME DATATYPE PRETTY_NAME PRETTY_PLURAL TABLE_NAME COLUMN_NAME DEFAULT_VALUE MIN_N_VALUES MAX_N_VALUES SORT_ORDER STORAGE] {
set varname [string tolower $var]
if {[info exists $varname]} {
set $var [set $varname]
set _$var :$var
} else {
set _$var null
}
}
set sql "
select workflow__create_attribute($_WORKFLOW_KEY, $_ATTRIBUTE_NAME, $_DATATYPE, $_PRETTY_NAME, $_PRETTY_PLURAL, $_TABLE_NAME, $_COLUMN_NAME, $_DEFAULT_VALUE, $_MIN_N_VALUES, $_MAX_N_VALUES, $_SORT_ORDER, $_STORAGE)
"
db_with_handle -dbn $dbn db {
return [ ns_set value [ns_pg_bind 0or1row $db $sql] 0 ]
}
}
::xo::db::sql::workflow proc drop_workflow {{-dbn {}} -workflow_key:required} {
foreach var [list WORKFLOW_KEY] {
set varname [string tolower $var]
if {[info exists $varname]} {
set $var [set $varname]
set _$var :$var
} else {
set _$var null
}
}
set sql "
select workflow__drop_workflow($_WORKFLOW_KEY)
"
db_with_handle -dbn $dbn db {
return [ ns_set value [ns_pg_bind 0or1row $db $sql] 0 ]
}
}