[rt-users] I forgot how to do this

Mathew Snyder theillien at yahoo.com
Thu Aug 9 09:49:29 EDT 2007


Mathew Snyder wrote:
> I need to get a list of all of the values for one particular custom field.  I
> had a script which did this after about a week or two of banging my head against
> my desk.  However, I no longer have this script and am left banging my head
> again as I've forgotten how to gather this list up.
> 
> I've tried using CustomFieldValue, CustomFieldValues, CustomField and
> CustomFields.  I can't for the life of me figure out how to do this.  Can
> someone point me in the right direction?
> 

This is what I'm working with:
#!/usr/bin/perl

use warnings;
use strict;
use lib '/usr/local/rt3/lib';
use lib '/usr/local/rt3/local/lib';
use RT;
use RT::Users;

RT::LoadConfig(); ## Loading RT config
RT::Init(); ## Initialise RT

my $cf_name = "Environment";
my @envs;

my $cf = RT::CustomFieldValues->new(RT::SystemUser);
$cf->LimitToCustomField($cf_name);

while (my $cfval = $cf->Next() ){
   print $cfval->Name . "\n";
};

Using Data::Dumper I have the following output:
$VAR1 = bless( {
                 '_open_parens' => {},
                 'alias_count' => 0,
                 'where_clause' => '',
                 'order_by' => [
                                 {
                                   'ORDER' => 'ASC',
                                   'FIELD' => 'SortOrder',
                                   'ALIAS' => 'main'
                                 },
                                 {
                                   'ORDER' => 'ASC',
                                   'FIELD' => 'Name',
                                   'ALIAS' => 'main'
                                 },
                                 {
                                   'ORDER' => 'ASC',
                                   'FIELD' => 'id',
                                   'ALIAS' => 'main'
                                 }
                               ],
                 'table' => 'CustomFieldValues',
                 'tables' => '',
                 'is_limited' => 1,
                 'order' => '',
                 'user' => bless( {
                                    '_Class' => 'RT::CurrentUser',
                                    '_SB_Record_Primary_RecordCache_key' => 'id=1',
                                    'table' => 'Users',
                                    'values' => {
                                                  'creator' => '1',
                                                  'comments' => 'Do not delete
or modify this user. It is integral to RT\'s internal database structures',
                                                  'state' => undef,
                                                  'webencoding' => undef,
                                                  'realname' => 'The RT System
itself',
                                                  'password' => '*NO-PASSWORD*',
                                                  'authsystem' => undef,
                                                  'homephone' => undef,
                                                  'id' => '1',
                                                  'timezone' => undef,
                                                  'lang' => undef,
                                                  'name' => 'RT_System',
                                                  'contactinfosystem' => undef,
                                                  'zip' => undef,
                                                  'emailencoding' => undef,
                                                  'lastupdated' => '2004-05-06
17:46:38',
                                                  'signature' => undef,
                                                  'externalauthid' => undef,
                                                  'address1' => undef,
                                                  'workphone' => undef,
                                                  'emailaddress' => undef,
                                                  'freeformcontactinfo' => undef,
                                                  'city' => undef,
                                                  'gecos' => undef,
                                                  'organization' => undef,
                                                  'country' => undef,
                                                  'mobilephone' => undef,
                                                  'nickname' => undef,
                                                  'externalcontactinfoid' => undef,
                                                  'address2' => undef,
                                                  'created' => '2004-05-06
17:46:38',
                                                  'pgpkey' => undef,
                                                  'pagerphone' => undef,
                                                  'lastupdatedby' => '0'
                                                },
                                    'fetched' => {
                                                   'creator' => 1,
                                                   'comments' => 1,
                                                   'state' => 1,
                                                   'webencoding' => 1,
                                                   'realname' => 1,
                                                   'password' => 1,
                                                   'authsystem' => 1,
                                                   'homephone' => 1,
                                                   'id' => 1,
                                                   'timezone' => 1,
                                                   'lang' => 1,
                                                   'name' => 1,
                                                   'contactinfosystem' => 1,
                                                   'zip' => 1,
                                                   'emailencoding' => 1,
                                                   'signature' => 1,
                                                   'lastupdated' => 1,
                                                   'externalauthid' => 1,
                                                   'address1' => 1,
                                                   'workphone' => 1,
                                                   'emailaddress' => 1,
                                                   'freeformcontactinfo' => 1,
                                                   'city' => 1,
                                                   'gecos' => 1,
                                                   'organization' => 1,
                                                   'country' => 1,
                                                   'mobilephone' => 1,
                                                   'nickname' => 1,
                                                   'externalcontactinfoid' => 1,
                                                   'address2' => 1,
                                                   'created' => 1,
                                                   'pgpkey' => 1,
                                                   'lastupdatedby' => 1,
                                                   'pagerphone' => 1
                                                 }
                                  }, 'RT::CurrentUser' ),
                 'limit_clause' => '',
                 'DBIxHandle' => bless( {
                                          'dsn' => 'dbi:mysql:dbname=rt3_devel',
                                          'DisconnectHandleOnDestroy' => undef,
                                          'StatementLog' => []
                                        }, 'RT::Handle' ),
                 'restrictions' => {
                                     'main.CustomField' => [
                                                             {
                                                               'value' =>
'\'Environment\'',
                                                               'op' => '=',
                                                               'field' =>
'main.CustomField'
                                                             }
                                                           ]
                                   },
                 'primary_key' => 'id',
                 'auxillary_tables' => '',
                 'must_redo_search' => 1,
                 'itemscount' => 0,
                 'show_rows' => 0,
                 'aliases' => [],
                 'first_row' => 0
               }, 'RT::CustomFieldValues' );

I don't quite get this though.  Why won't it print out the values held in the CF?

Mathew



More information about the rt-users mailing list