GET_OBJECT_NAME

Valido per

Estrai e Replicat

Descrizione

Utilizzare la funzione GET_OBJECT_NAME per recuperare il nome completamente qualificato di un oggetto di origine o di destinazione associato al record in fase di elaborazione. Questa funzione è una tabella valida e altri oggetti in un'operazione DML o DDL.

Per restituire solo una parte del nome dell'oggetto, vedere:

GET_OBJECT_NAME_ONLY GET_SCHEMA_NAME_ONLY GET_CATALOG_NAME_ONLY

I nomi degli oggetti di database vengono restituiti esattamente come sono definiti nel database di hosting, inclusa la lettera maiuscola.

Sintassi

#include "usrdecs.h"
short result_code;
env_value_def env_value;
ERCALLBACK (GET_OBJECT_NAME, &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;

Input

<buffer>

Puntatore a un buffer per accettare il nome dell'oggetto restituito. Il nome è nullo.

<max_length>

Lunghezza massima del buffer allocato per accettare il nome dell'oggetto. Viene restituito come stringa terminata NULL.

<source_or_target>

Una delle seguenti opzioni indica se restituire il nome dell'oggetto di origine o di destinazione.

EXIT_FN_SOURCE_VAL
EXIT_FN_TARGET_VAL

Output

<buffer>

Il nome dell'oggetto completamente qualificato con terminazione nulla, ad esempio schema.object o catalog.schema.object, a seconda della piattaforma di database.

Se la sessione dei caratteri dell'uscita utente viene impostata con SET_SESSION_CHARSET su un valore diverso dal set di caratteri predefinito del sistema operativo, come definito in ULIB_CS_DEFAULT nel file ucharset.h, il nome dell'oggetto viene interpretato nel set di caratteri della sessione.

lunghezza effettiva

Lunghezza stringa del nome oggetto restituito. La lunghezza effettiva non include il terminatore nullo. La lunghezza effettiva è 0 se l'oggetto è una tabella.

<value_truncated>

Flag (0 o 1) che indica se il valore è stato troncato o meno. La troncatura si verifica se la lunghezza del nome dell'oggetto più il terminatore nullo supera la lunghezza massima del buffer.

Valori restituiti

EXIT_FN_RET_INVALID_COLUMN
EXIT_FN_RET_INVALID_CONTEXT
EXIT_FN_RET_INVALID_PARAM
EXIT_FN_RET_OK