Data requirements for profile and transaction files
Profile and transaction files have a specified format.
Format requirements
Flat files must have the following format.
- One header that contains the names of the fields in the file. The names must exactly match the names defined in the data source to which the connector is mapped..
- The first field must be the audience ID.
- All record lines must use the pipe (vertical line: |) delimiter between fields, but not before the first field in the line or after the last field in the line.
- A pair of delimiters next to one another indicates the absence of data for the field positioned between those two delimiters. If the first field of the record contains no data, then the line begins with the first delimiter, and if the last field contains no data, then the line ends with the last delimiter.
- The delimiter must not be used within data fields.
Date field requirement
For transaction files only, one field must be a timestamp field, expressed in milliseconds.
Audience ID field requirement
One field in all data sources must be an ID field used for an audience level, and this must be the first field in each record in the file.
Sort order requirement
The records in a flat file must be sorted by audience ID first, then by transaction timestamp.
Additional considerations
Note the following considerations.
- Opportunity Detect cannot match fields with NULL values when performing comparisons. You must substitute either a single printable character or a character string for the NULL values if you want to use NULL as a condition in comparisons.
- Date fields must be in system-readable date format even if you want those dates to be empty (NULL). You can represent NULL dates as either very old dates or very future dates .
- The date format in date fields must match the date format that is associated with the date locale used in the file connector.
- In distributed environment, all runtime servers must be able to access the profile and transaction files.
Transaction and profile file examples
Note: The following examples are formatted with constant widths for readability. Actual
transaction and profile files must not use constant widths.
Here is an example of a simple transaction file.
ID |NAME |CALLED_NUMBER|CALL_LENGTH|TRAN_DATE_TIME
001234|David |732-123-4567 |15 |2012-02-10 09:12:33
001234|David |732-111-5555 |48 |2012-02-10 10:11:50
002941|Jeremiah|732-777-8888 |40 |2012-02-10 11:22:44
005555|Anthony |732-333-4444 |27 |2012-02-10 03:01:02
005555|Anthony |732-32-8945 |121 |2012-02-10 10:12:30
005555|Anthony |973-597-0022 |2 |2012-02-10 19:00:21
006789|Tom |732-111-2222 |4 |2012-02-10 06:54:01
Here is an example of a simple profile file.
ID |AGE|ZIP
001234|25 |11111
002941|55 |22222
005555|31 |33333
006789|60 |44444
100382|18 |55555