[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