rs_datarow_for_writetext

Provides an image of the data row associated with a text, unitext, or image column updated with the Transact-SQL writetext command, with the Client-Library function ct_send_data, or with the DB-Library™ functions dbwritetext and dbmoretext.

Examples

Usage

  • Replication Server executes rs_datarow_for_writetext before updated text, unitext, or image data is sent to the replicate data server. rs_datarow_for_writetext provides the values of primary key columns and searchable columns from the row so that subscriptions can be processed and data can be transferred to the replicate database.

  • rs_datarow_for_writetext accesses the values of all columns in the row except for text, unitext, and image columns. To retrieve information about text, unitext, or image columns, include the text_status modifier in the function string. The values returned by text_status are described in the "text_status values for text, unitext, and image data" table..

  • The rs_datarow_for_writetext function has replication definition scope.

  • Replication Server generates an rs_datarow_for_writetext function string for rs_sqlserver_function_class and rs_default_function_class when you create a replication definition.

  • If you use a user-created base function-string class, you must create a rs_datarow_for_writetext function string for each replication definition that includes text, unitext, and image columns.

  • Create or customize a rs_datarow_for_writetext function string at the Replication Server where you created the replication definition.

  • The default generated function string for rs_sqlserver_function_class and rs_default_function_class does not execute commands in the replicate database, since the row image contains no modified data.

  • You can create a new rs_datarow_for_writetext function string to collect the values of the primary key to pass to a gateway. The old and new modifiers both provide access to a column’s value.

  • The text_status modifier retrieves the status of the text, unitext, or image column. text_status values for text, unitext, and image data lists the possible values for the text_status modifier.

text_status Values for text, unitext, and image Data

Value

Description

0x0001

The column has a null text pointer. There are no modifications to text, unitext, or image columns.

0x0002

Modifications were made at the primary database, which caused a text pointer allocation. Replication Server executes the rs_textptr_init function to allocate a text pointer.

0x0004

The current data value follows. Replication Server executes the rs_writetext function to modify the text, unitext, or image data at the replicate database.

0x0008

The text, unitext, or image column is not replicated. No commands are required in the replicate database because the data did not change value and the text, unitext, or image column has a replicate_if_changed status.

0x0010

The text, unitext, or image column contains a null value after an operation at the primary database. For example, after a text pointer has been allocated, there may be data values in a text or image column and an application at the primary database sets them to null. Replication Server truncates the text, unitext, or image column in the replicate database by setting the values to null if the text_status is not 0x0008.

Related reference
rs_get_textptr
rs_textptr_init
rs_writetext