msgpropname

Description

Extracts and returns the property name from a <msgheader> and <msgproperties> document. The result is a null value if the value of the integer parameter is less than one or greater than the number of properties in msg_doc.

Syntax

msgpropname_call ::= msgpropname(integer[ ,msg_doc]), )
	msg_doc ::= basic_character_expression
	prop_name::= basic_character_expression

Parameters

integer

is the index of the value.

msgpropname_call

makes the request to use the msgpropname function.

msg_doc

is the <msgheader> or <msgproperties> XML document. A basic_character_expression. If msg_doc is not specified, the current value of @@msgprpoperties is used.

prop_name

is the property name from which you want to extract a value or type. A basic_character_expression.

Examples

Example 1

Assumes that a call from msgrecv returns a message with a single property named trade_name and value of “Acme Maintenance” (“Quick & Safe”). The value of the @@msgproperties global variable is then:

<?xml version='1.0' encoding='UTF-8' standalone='yes' ?>
     <msgproperties
         trade_name='Acme Maintenance (&quot;Quick &amp; Safe&quot;)'>
     </msgproperties>

The ampersand and the quotation marks surrounding the phrase Quick & Safe are replaced with the XML entities &quot; and &amp;, as required by XML convention.

Example 2

Returns a null value, because the ninth property does not exist:

select msgpropname(9, @@msgproperties)