Data requirements for profile and batch transaction files
Profile and batch transaction files have a specified format.
Format requirements
Batch 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 Batch file connector is mapped.
- The first field must be the audience ID.
- The file must have UNIX style newline characters.
- All record lines must use a delimiter between fields, but not before the first field in the line
or after the last field in the line.
The following delimiters are allowed.
- pipe (vertical line: |)
- comma
- semi-colon
- tab
- 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 batch transaction files only, one field must be a timestamp field, expressed in seconds.
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 batch 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.
Batch transaction and profile file examples
Note: The following examples are formatted with constant widths for readability. Actual batch
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