One of the common issues that Eloqua users encounter while uploading files that contain contact data -- account data,data cards, is that the data uploaded to Eloqua does not over-write the data that exists in Eloqua for the uploaded contacts. This can happen for all contacts that the user attempts to update or partially -- certain columns would not update, or even certain fields for certain contact records would not update but the rest of the data uploaded updates successfully.
Eg: In Eloqua, you might have a contact record that might look like the following:
Email Address First Name Company
email@example.com Joe ABC
Then, you can have an excel sheet that would have
Email Address First Name Company
firstname.lastname@example.org John XYZ
After you have uploaded the file, you'd notice that either first name remained Joe -- did not get updated to John, or the company name remained ABC -- instead of XYZ, or both.
Why did this happen?
One of the common reasons why this happens is the "Data Priority Order" that the "Data Source" used for the upload has. I'll explain each one of them below:
1) Data Source: Any type of upload to Eloqua has to have a "Data Source" associated to it. Think of the data source as a gateway that would tell the application what type of data it should expect -- contact data, data cards, etc.., what method this data will be uploaded to Eloqua -- File upload, Remote File over SFTP, Autosynchs, etc.. and the Priority that the data that the uploaded data will have -- see 2 for more info on this.Data sources can be found under setup> integration> inbound. Notice the "All Data Sources" left pane that appears on the screen when you get there.
2) Data Priority Order: Each Data Source has to have a "Data Priority Order". Data Priority Orders control what data should over-write which data in Eloqua. Eloqua keeps track of the Data Source through which the data got uploaded to Eloqua. At the time you attempt to over-write that data with new data -- whether it be through manual upload, sftp transfer, autosynch, the application will compare the data priority order of the existing data vs the new data to determine whether it should keep the existing data or change it. Data with a higher data priority order will be the data that is kept in the application.
Data priority order can be found under setup>integration>inbound>management>data priority order.
The important distinction to be made here is that even though a data source and a data priority order can have the same name, they're still two completely different things -- as explained above.
Going back to the original issue, and if you, as an example, are uploading a csv file, what you see under the first step of the upload wizard is the data source NOT the data priority for that upload.
This means that if you choose a data source in the first step and you go through the upload wizard and the data does not upload, then chances are the data source does NOT have a high enough of a "Data priority" to over-write existing data - which would then have a higher data priority.
To fix this issue, you would need to fix the priority of the data source itself. You can do this by going to the data source itself, and you'll notice that there is a drop-down list called Priority. You can change the current priority to something higher in the list - the higher the item, the higher the priority.
Once you have changed the data priority of this data source to something higher than the data priority of the existing data, the uploaded data will overwrite the existing data- as long as there isn't other issues causing the update not to occur!!
1) Think of the data priority order list as numbers with the data priority order on top having number 1, and the one on the bottom having the lowest number -- 5, 10, however many priorities your list might have. It can be confusing that a data source of "General csv" has a priority of "General csv", thus it's easier to think of the priority list as a number list.
2) I would recommend not changing the order of the items in the data priority order list itself, but instead control the data priority of the data source itself through the priority select list as explained above. Changing the order of the items can cause existing data sources that are created by you or other users in the app not to act as expected, but if you only change the data priority for only your data source, you'll get the same result without affecting any other data sources.
3) It's important to know that the data source can have ANY NAME and does not have to have a name related to the type of file that's uploaded.
eg: If you're uploading a csv file, you do NOT have to use the "General csv" data source. What matters is the TYPE NOT THE NAME. As long as the transfer type of the data source is "File Upload", you can use it with ANY type of file that you're using -- csv, excel, etc. So, you can have a data source named "Amy" that you would use for csv or excel uploads.
An important and recommended conclusion from this is to setup a data source that has a meaningful name such as "file upload -- highest priority". If you setup this data source to have the highest data priority, then you're guaranteeing that the data uploaded through this data source will over-write ANY data you have in Eloqua. This is good because:
a) you no longer have to fiddle with any data sources or even priorities of data sources that you have in Eloqua. You know now that you have a DEDICATED data source that you can think of as "golden" source of data, and which will over-write any data any time you use it.
b) You can inform your Eloqua users about this data source and they can use it any time they want to over-write data in Eloqua
c) This data source could easily be avoided if you don't want existing data to be over-written in Eloqua instead of having to go back to the data source and fiddle with its priority.
4) Please note that data that comes to Eloqua through form submissions -- or manually typed data, will ALWAYS over-write any data that currently exists in Eloqua. Form submission data is NOT subject to data priority restrictions and will always over-write anything that exists in Eloqua. This makes sense because that contact data that you get from the form comes directly from the source itself -- your contact!
Hope this helps!