Kettle Transform updating customers with a accounttype (after they have been added.)
I am attempting to update (after a previouls etl customerload) my customers with an accounttype.
I basically extract the ID's I used to previously load and then map the results of a lookup to each id.
Also creating a new unique loadid to process.
So you dont need to open the transform to see.
I generate 3 values to each row...AccID (the primary loader ID) , ID (the client id), and AccountType
AccID is the row ID
ID is the ref
and AccountType is set via a JS var AccountType = "Normal"
my loader mappings are
AccountType mapped to: $ID<party.customerperson>type[0]
value: <lookup.customerAccountType>$value
The transform runs without kettle exceptions however...everyrow generates the following loader error.
2012/03/05 11:40:11 - OpenVPMS Loader.0 - Failed to process row ACC1066: Failed to retrieve object: <lookup.customerAccountType>Normal
I get what the error is saying I just cant workout why.
of course I was sure I had the lookup loaded into my system (screen shot to prove attached). You mentioned that lookups are cached on the first run, certainly I have seen the lag on the first run, are the lookups cached each time you open kettle, so If I run the transform again it uses the cache? I only ask because I noticed subsequent runs dont seem to have the lag. (mind you that could be a mysql thing as well)
Anyhow.
Re: Kettle Transform updating customers with a accounttype ...
You need to use the lookup code rather than the lookup name to get the lookup.
Lookup codes are typically uppercase, with any spaces replaced with underscores.
In your case, 'Normal' should be 'NORMAL'
-Tim
Re: Kettle Transform updating customers with a accounttype ...
Thanks for the fast reply Tim, I actually figured out we were searching CODE's not names and I did modify the value appropriately but it still failed with the same message, I suspect that its a installation issue though because it failing on all lookups just had this one fail as well..
2012/03/05 14:02:37 - OpenVPMS Loader.0 - Failed to process row ADD_P517: Failed to retrieve object: <lookup.contactPurpose>POSTAL
given that the lookup is part of the dataload setup and I confirmed it was present ..its got to be something else in my setup
Ill keep looking.
Re: Kettle Transform updating customers with a accounttype ...
Sorry - it should be:
<lookup.customerAccountType>code=$value
This instructs the plugin to fetch the lookup with type "lookup.customerAccountType" and code "$value".
The <lookup.customerAccountType>$value form tries to find a lookup with type "lookup.customerAccounType" and row id "$value". Here, row id refers to the identifier of the lookup in the legacy system being imported from.
If the lookup wasn't loaded by the Kettle plugin, then it won't have a row id, and therefore won't be found.
-Tim