---
title: "ksSetAttrValue - Установить значение атрибута"
type: guide
api: [api7]
tags: [guide, api7, kssetattrvalue]
sources:
  - kssetattrvalue.html
---

*API экспортных функций > Функции работы с прикладной библиотекой  > Функции работы с атрибутами *

Аналог данной функции при использовании Automation - метод ksAttributeObject::ksSetAttrValue.
Синтаксис:
```
int ksSetAttrValue(reference pAttr,
unsigned int rowNumb,
unsigned int columnNumb,
unsigned char *flagVisible,
unsigned char *columnKeys,
void *value,
unsigned int size,
char *password);
Входные параметры:
pAttr    - указатель на атрибут,
rowNumb    - номер строки,
columnNumb    - номер колонки,
flagVisible    - указатель на массив флагов видимости ячеек строки,
columnKeys    - ключ поля колонки (одно значение, если не запись и массив значений, если запись),
value    - указатель на область памяти, откуда копируется значение ячейки,
size    - размер выделенной под value памяти,
password    - пароль атрибута.
Возвращаемое значение:
1    - в случае удачного завершения,
0    - в случае неудачи.
```
Примечание:
1. Указатель на атрибут reference pAttr может быть получен следующими способами:
– с помощью функций итератора CreateAttrIterator, MoveAttrIterator,
– с помощью функций создания атрибутов ksCreateAttr или выбора атрибутов ChoiceAttr.
2. Перед использованием указателя flagVisible должен быть выделен буфер памяти, и его адрес присвоен переменной flagVisible.
3. Перед использованием указателя value должен быть выделен буфер памяти, например, char buffer[MAX_TEXT_LENGTH], и его адрес присвоен переменной value.
4. При использовании Unicode следует использовать функцию ksSetAttrValueW.
5. Тип данных, которые находятся в области памяти с указателем value, описывается структурой параметров ColumnInfo для каждой колонки атрибута.
