RT-Assets-Import-CSV surprises

Hi All,

Still trying out new things :slight_smile:
Found another thing which I think is a shortcut in the documentation.
Quoting one of the examples:
Set( $AssetsImportUniqueCF, ‘Service Tag’ );
Set( %AssetsImportFieldMapping,
# ‘RT custom field name’ => ‘CSV field name’
‘Service Tag’ => ‘serviceTag’,
‘Location’ => ‘building’,
‘Serial #’ => ‘serialNo’,
‘Catalog’ => 'Hardware’,
);

As I see it both Location and Serial # are Asset CustomFields and not
one of the basic fields like id,Name,Description. Using this as an
example I tried to import our UPS Catalog which looks like the following:
id,Name,Description,Status,Type,UPS Batt replaced,UPS Firmware
revision,UPS Serial Number
553,wag-ups1,APC SmartUPS
3000,production,BackupPower,2005-08-17,666.6.l,JS0534006874

With the following config part it will import the assets but not the
last 3 columns which are the CF’s of this type.

Set( $AssetsImportUniqueCF, undef );
Set( %AssetsImportFieldMapping,
# ‘RT custom field name’ => ‘CSV field name’
‘id’ => ‘id’,
‘Name’ => ‘Name’,
‘Description’ => ‘Description’,
‘Catalog’ =>'BackupPower’,
‘UPS Batt replaced’ => ‘UPS Batt replaced’,
‘UPS Firmware revision’ => ‘UPS Firmware revision’,
‘UPS Serial Number’ => ‘UPS Serial Number’,
);

Looking at the output of debug shows that it sees the last 3 columns but
it doesn’t do anything with it. Putting some prints in CSV.pm and
looking at the code I found out that the config should read:

Set( $AssetsImportUniqueCF, undef );
Set( %AssetsImportFieldMapping,
# ‘RT custom field name’ => ‘CSV field name’
‘id’ => ‘id’,
‘Name’ => ‘Name’,
‘Description’ => ‘Description’,
‘Catalog’ =>'BackupPower’,
‘CF.UPS Batt replaced’ => ‘UPS Batt replaced’,
‘CF.UPS Firmware revision’ => ‘UPS Firmware revision’,
‘CF.UPS Serial Number’ => ‘UPS Serial Number’,
);

Running the importer with --update will indeed now update the last 3
columns.

Nowhere in the docs it is mentioned that you need to put CF. in front of
CustomFields.

Joop

Still trying out new things :slight_smile:
Found another thing which I think is a shortcut in the documentation.
[snip]
Nowhere in the docs it is mentioned that you need to put CF. in front of
CustomFields.

Thanks for the catch. I’ve just released version 1.1 which fixes this.

  • Alex