EZCATALOG.AttributeVoc

Интерфейс позволяющий просмотреть или изменить данные справочника значений атрибута .

procedure Append(const aNumber, aName: WideString);

Добавляет новую запись в справочник с кодом aNumber и наименованием aName.

procedure Modify(const aNumber, aName: WideString);

Изменяет значение записи в справочнике найденной методом FindByNumber.

procedure Delete;

Удаляет запись в справочнике, найденную методом FindByNumber.

function FindByNumber(const aNumber: WideString) OleVariant;

Поиск значения по номеру aNumber. Возвращает значение больше 0, если нашлось совпадение или 0 если значение не найдено. В случае успешного поиска получить значение можно методом GetName

procedure Clear;

Удаляет все записи в справочнике

function GetName : OleVariant;

Возвращает найденное значение

function GetNumber : OleVariant;

Возвращает код найденного значения.

Пример работы со справочником атрибута:

Получение ссылки на справочник атрибута с именем “FATT_STR_5”, добавление нескольких значений.

procedure AttributeVocExample(eDBpath,eDataPath : String);

var

ProductCatalog : OLEVariant;

AttrSetup, AttrVoc : OLEVariant;

i : integer;

begin

ProductCatalog := CreateOleObject('EZCATALOG.ProductCatalog');

if (ProductCatalog.Connect(eDBpath,eDataPath, '') = 1) then

try

AttrSetup := ProductCatalog.GetAttrSetup;

if not VarIsNull(AttrSetup) then

begin

for i := 0 to AttrSetup.Count-1 do

if AttrSetup.GetFieldName(i) = 'FATT_STR_5' then

begin

AttrVoc := AttrSetup.GetVoc(i);

Break;

end;

end;

if not VarIsNull(AttrVoc) then

begin

AttrVoc.Clear;

AttrVoc.Append('006','Пример значения 6');

AttrVoc.Append('029', 'Пример значения 29');

AttrVoc.Append('010', 'Пример значения 10');

end;

finally

ProductCatalog.Disconnect;

end;

end