Forum OpenACS Q&A: Response to How to create a group?

Collapse
Posted by C. R. Oldham on
<p>
OK, here's what I think I've discovered so far:
</p>
<pre>
Object Type                Group Type
Created Date              Created Date for group
Creation IP Address        IP of person creating group
Last Modified On          Last modified date for group
Modifying IP Address      IP of person modifying last
Creation user              User ID of user creating group
Context ID                ?? I picked 0 because I did not
                          want this group to inherit permissions
                          from any other group
Email Address              Email address of group (?)
URL                        URL for group
Group name                Name of group
---
Now these I think (from looking at the code) look like fields for creating the relation between this group and some other group.
Object Type                Object type of group relation
                          (I picked "membership_rel")
Created Date              ?
Creation IP Address        ?
Last Modified On          ?
Modifying IP Address      ?
Creation user              I picked my userid
Context ID                0 again.
</pre>
<p>
So I successfully create a group (so I think), but when I go back to the group admin screen and click on the group I get
</p>
<pre>
ora8.c:3930:ora_tcl_command: error in `OCIStmtExecute ()': ORA-00904: invalid column name

SQL:

        select *
          from (SELECT groups.group_id,
      groups.group_id as object_id,
      groups.object_type,
      groups.creation_date,
      groups.creation_ip,
      groups.last_modified,
      groups.modifying_ip,
      groups.creation_user,
      groups.context_id,
      groups.email,
      groups !>>>!url,
      groups.group_name
  FROM groups
)
        where object_id = :object_id


    while executing
"ns_ora select nsdb0 {

        select *
          from (SELECT groups.group_id,
      groups.group_id as object_id,
      groups.object_type,..."
    ("uplevel" body line 1)
    invoked from within
"uplevel $ulevel [list ns_ora $type $db $sql] $args"
    invoked from within
"db_exec select $db $full_statement_name $sql"
    invoked from within
"set selection [db_exec select $db $full_statement_name $sql]"
    ("uplevel" body line 2)
    invoked from within
"uplevel 1 $code_block "
    invoked from within
"db_with_handle db {
    set selection [db_exec select $db $full_statement_name $sql]

    set counter 0
    while { [db_getrow $db $selection] } {
        incr co..."
    (procedure "db_foreach" line 35)
    invoked from within
"db_foreach attribute_select "
        select *
          from ($package_object_view)
        where object_id = :object_id
    " {
        foreach key $at..."
    (procedure "attribute::multirow" line 25)
    invoked from within
"attribute::multirow  -start_with group  -datasource_name attributes  -object_type $group_type  $group_id"
    ("uplevel" body line 57)
    invoked from within
"uplevel {
          # /packages/acs-subsite/www/admin/groups/one.tcl

ad_page_contract {
    View one group.

    @author Michael Bryzek (mailto:mbryzek@arsdigi...";
    (procedure "code::tcl::/home/cro/wd/ncacasi/packages/acs-subsite/www/adm..." line 2)
    invoked from within
"code::tcl::$__adp_stub"
    invoked from within
"if { [file exists $__adp_stub.tcl] } {

      # ensure that data source preparation procedure exists and is up-to-date
      adp_init tcl $__adp_stub
..."
    ("uplevel" body line 3)
    invoked from within
"uplevel {

    if { [file exists $__adp_stub.tcl] } {

      # ensure that data source preparation procedure exists and is up-to-date
      adp_init t..."
    (procedure "adp_prepare" line 3)
    invoked from within
"adp_prepare "
    (procedure "template::adp_parse" line 30)
    invoked from within
"template::adp_parse [file root [ad_conn file]] {}"
    (procedure "adp_parse_ad_conn_file" line 7)
    invoked from within
"$handler"
    ("uplevel" body line 2)
    invoked from within
"uplevel $code"
    invoked from within
"ad_try {
    $handler
      } ad_script_abort val {
    # do nothing
      }"
    invoked from within
"rp_serve_concrete_file [ad_conn file]"
    (procedure "rp_serve_abstract_file" line 60)
    invoked from within
"rp_serve_abstract_file "$root/$path""
    ("uplevel" body line 2)
    invoked from within
"uplevel $code"
    invoked from within
"ad_try {
    rp_serve_abstract_file "$root/$path"
    set tcl_url2file([ad_conn url]) [ad_conn file]
    set tcl_url2path_info([ad_conn url]) [ad_conn path_inf..."
</pre>

<p>
I'm so confused.  Suggestions appreciated.
</p>
<pre>