GET_RECORD_TYPE

Valid For

Extract and Replicat

Description

Use the GET_RECORD_TYPE function to retrieve the type of record being processed. The record can be a SQL record. The record type is important when manipulating the record buffer, because each record type has a different format.

Syntax

#include "usrdecs.h"
short result_code;
record_def record;
ERCALLBACK (GET_RECORD_TYPE, &record, &result_code);

Buffer

typedef struct
{
char *table_name;
char *buffer;
long length;
char before_after_ind;
short io_type;
short record_type;
short transaction_ind;
int64_t timestamp;
exit_ts_str io_datetime;
short mapped;
short source_or_target;
/* Version 2 CALLBACK_STRUCT_VERSION   */
char requesting_before_after_ind;
} record_def;

Input

source_or_target

One of the following indicating whether or not to return the record type for the source or target data record.

EXIT_FN_SOURCE_VAL
EXIT_FN_TARGET_VAL

Output

record_type

The returned record type.

EXIT_REC_TYPE_SQL

Return Values

EXIT_FN_RET_INVALID_CONTEXT
EXIT_FN_RET_INVALID_PARAM
EXIT_FN_RET_OK