Skip to main content

Colecciones

Todas las colecciones del modelo de objetos admiten los siguientes métodos: En lugar del método Item, puede acceder a los elementos de una colección mediante paréntesis o corchetes. La sintaxis disponible depende del lenguaje: Por ejemplo, use Items( 1 ).Text = "Hello" o Items[ 1 ].Text = "Hello". Todas las colecciones funcionan con construcciones for each y similares.

Campos repetitivos y tablas

Todos los campos de documento, excepto las tablas, pueden ser repetitivos. En la estructura del documento, cada campo repetitivo está representado por un campo prototipo especial. Este campo prototipo tiene una colección Items no vacía. Un campo prototipo no tiene elementos secundarios ni valor. Solo almacena las iteraciones del campo. Los campos secundarios y los valores de los campos solo existen en las instancias del campo, a las que puede acceder mediante el método Items del objeto IField. Las tablas siempre tienen la colección Rows (Rows es sinónimo de Items). La colección Rows contiene únicamente las filas de la tabla, cuyas celdas puede acceder mediante el método Children de las filas.

Rutas de campos

Los métodos Field, HasField e IndexedItemValue del objeto IDocument reciben como parámetros las rutas de los campos del formulario. La siguiente forma de Backus-Naur (BNF) define la sintaxis de las rutas:
Aquí, Field_name indica los nombres de los campos del documento tal como se definen en la Definición de Document, y Field_iteration_number es el número de iteración del campo recurrente (el número de fila en las tablas), comenzando por 0. La ruta puede ser completa o relativa. Una ruta completa comienza con el nombre de la sección del documento. Una ruta relativa comienza con el nombre del elemento secundario del grupo. Por ejemplo, para hacer referencia a la tercera fila de la columna Total de la tabla Table, ubicada en la sección Section, escriba "Section\Table[2]\Total". Puede construir este nombre completo con el método FullName del objeto IField.