GET_BASE_OBJECT_NAME_ONLY

Válido para

Extraer y Replicat

Descripción

Utilice la función GET_BASE_OBJECT_NAME_ONLY para recuperar el nombre no cualificado (sin el catálogo, contenedor o esquema) del objeto base de un objeto de origen o de destino asociado al registro que se está procesando. Esta función es válida para tablas y otros objetos en una operación DDL.

Para devolver el nombre completo de un objeto base, consulte lo siguiente:

GET_OBJECT_NAME

Para devolver solo el esquema del objeto base, consulte lo siguiente:

GET_BASE_SCHEMA_NAME_ONLY

Los nombres de objetos de base de datos se devuelven exactamente como se definen en la base de datos de alojamiento, incluidas las mayúsculas y minúsculas.

Sintaxis

#include "usrdecs.h"
short result_code;
env_value_def env_value;
ERCALLBACK (GET_BASE_OBJECT_NAME_ONLY, &env_value, &result_code);

Buffer

typedef struct
{
char *buffer;
long max_length;
long actual_length;
short value_truncated;
short index;
short source_or_target;
} env_value_def;

Entrada

<buffer>

Un puntero a un buffer para aceptar el nombre de objeto devuelto. El nombre es nulo.

<max_length>

Longitud máxima del buffer asignado para aceptar el nombre del objeto. Se devuelve como una cadena terminada NULL.

<source_or_target>

Una de las siguientes indicaciones indica si se debe devolver el nombre del objeto de origen o de destino.

EXIT_FN_SOURCE_VAL
EXIT_FN_TARGET_VAL

Salida

<buffer>

Nombre de objeto totalmente cualificado y con terminación nula, por ejemplo, schema.object o catalog.schema.object, según la plataforma de base de datos.

Si la sesión de caracteres de la salida de usuario se define con SET_SESSION_CHARSET en un valor que no sea el juego de caracteres por defecto del sistema operativo, como se define en ULIB_CS_DEFAULT en el archivo ucharset.h, el nombre del objeto se interpreta en el juego de caracteres de la sesión.

longitud real

Longitud de cadena del nombre de objeto devuelto. La longitud real no incluye el terminador nulo. La longitud real es 0 si el objeto es una tabla.

<value_truncated>

Indicador (0 o 1) que indica si el valor se ha truncado o no. El truncamiento se produce si la longitud del nombre del objeto más el terminador nulo supera la longitud máxima del buffer.

Valores devueltos

EXIT_FN_RET_INVALID_COLUMN
EXIT_FN_RET_INVALID_CONTEXT
EXIT_FN_RET_INVALID_PARAM
EXIT_FN_RET_OK