One Star

Populating lookup fields in Salesforce

I'm a new Talend user and trying to set up jobs to push MS SQL data into Salesforce. I'm trying to populate the Account object in Salesforce, but I get the following error message:
Exception: Owner ID: owner cannot be blank
If I try to populate the Owner ID field with my email address (which is also my Salesforce user name), I get the following:
java.lang.Exception: Owner ID: id value of incorrect type:
What is the process for populating these related fields in standard Salesforce objects?
2 REPLIES
One Star

Re: Populating lookup fields in Salesforce

I'm working on a job that pushes data from an MS SQL view into Salesforce, and I'm encountering a confusing data conversion error.
Two of the columns in the MS SQL view have a data type of "int". In the Talend schema for the view, the DB Type for both columns is "INT". The Type for one of the columns is "int"; for the other, it is "Integer"
In the target Salesforce object, the fields have types of Number(4,0) and Number(6,0). In the Talend Schema for the object, the Type for both fields is "Double"
The mapping between the fields is correct and direct; there are no formulas or other data transformations in the mapping.
When I run the job, I'm shown a warning dialog with the following two warnings:
Type mismatch: cannot convert from int to Double
Type mismatch: cannot convert from Integer to Double
If I click "Continue", the job fails with the following message:
Exception in thread "main" java.lang.Error: Unresolved compilation problems:
Type mismatch: cannot convert from int to Double
Type mismatch: cannot convert from Integer to Double
I don't understand why it wouldn't be possible to do this conversion implicitly and without loss of precision. I also don't can't find anything in the documentation about how to do an explicit conversion from int/Integer to Double.
Seven Stars

Re: Populating lookup fields in Salesforce

Because there are too many possible combinations, which would add too much processing overhead to cater for them all implicitly. You should look at the Java docs for all your field manipulation questions.
Double.valueOf(your variable)