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;