---
title: "ksAttributeW - Структура параметров атрибута (Unicode)"
type: struct
api: [api7]
tags: [struct, api7, structksattributew]
sources:
  - structksattributew.html
---

*Структуры параметров и константы > Структуры параметров атрибутов *

Аналог данных параметров при использовании Automation - интерфейс ksAttributeParam.
| unsigned int | key1 | ключ (дополнительный идентификатор) для поиска атрибута |
| --- | --- | --- |
| unsigned int | key2 | ключ (дополнительный идентификатор) для поиска атрибута |
| unsigned int | key3 | ключ (дополнительный идентификатор) для поиска атрибута |
| unsigned int | key4 | ключ (дополнительный идентификатор) для поиска атрибута |
| unsigned char | *flagVisible | массив, определяющий для каждой колонки атрибута видимость или невидимость (0 - видимое поле, 1- невидимое поле) |
| void | *values | массив значений ячеек таблицы атрибутов (сначала все значения для первой строки, затем все значения для второй строки и т.д.) |
| unsigned int | valSize | размер массива значений ячеек |
| wchar_t | password[10] | пароль, если не пустая строка - защищает от несанкционированного изменения информации в атрибуте |
| unsigned char | *columnKeys | массив ключей колонок |
Примечание:
1. При создании атрибута, например, с помощью функции ksCreateAttr, ключам key1 - key4 могут быть присвоены нулевые значения. Если заданы ненулевые значения ключей или одного из ключей, эти значения могут быть использованы в дальнейшем как дополнительные идентификаторы для поиска атрибута с помощью итератора по атрибутам CreateAttrIterator. При присвоении значений ключам рекомендуется для ключей key1, key3 присваивать код, идентифицирующий разработчика, для ключа key2 - код атрибута, для ключа key4 - системный код. Значения параметра key4 от 0 до 1000 зарезервированы за OАО "АСКОН".
2. Значения ключей атрибута могут быть получены с помощью функции GetAttrKeysInfo.
3. Перед использованием каждого из указателей: flagVisible, values, columnKeys должен быть выделен буфер памяти, и его адрес присвоен соответствующей переменной из указанных.
4. При задании значений параметров flagVisible и columnKeys необходимо учитывать типы данных элементов атрибута. Колонка атрибута может содержать данные типа Запись. Запись может, в свою очередь, состоять из нескольких колонок. Массивы флагов и ключей должны содержать количество элементов, равное суммарному количеству колонок, включая колонки, содержащие данные типа Запись.
Например, если атрибут состоит из пяти колонок, то массив будет состоять из пяти элементов. Если в одной из колонок данные имеют тип Запись, которая содержит 2 колонки, то массив будет состоять из семи элементов. Флаг видимости колонки типа Запись позволяет управлять отображением всей колонки. Если колонка отображается (значение для нее равно 1), то флаги для каждой из колонок записи позволяют управлять ее отображением. Если колонка атрибута не отображается (значение для нее равно 0), то вне зависимости от значений флагов для колонок записи, колонка не будет отображаться.
5. При использовании ANSI следует использовать структуру параметров ksAttribute.
