Получение OID или ID объекта через ActiveX в Delphi из InterSystems Cache - PullRequest
0 голосов
/ 27 октября 2010

У меня есть следующий код в кнопке на форме, но я хочу получить значение OID или ID сохраненного объекта, чтобы я мог загрузить его позже.

procedure TFormMain.ButtonNewClick(Sender: TObject);
var
  Employee: Variant;
  OId: Variant;
begin
  Employee := Factory.New('Sample.Employee', True);
  if VarIsNull(Employee) or VarIsClear(Employee) then
  begin
    ShowMessage('Could not create Employee!');
    Exit;
  end;

  Employee.Name := 'Foo Bar';
  Employee.SSN := '616-27-7814';

  Employee.Sys_Save;

  OId := Employee.Sys_getOID; <- This doesn't exist

  Employee.Sys_Close;
  Employee := NULL;
end;

Документацияпоказывает функции вроде GetId, но они требуют, чтобы вы передавали OID, но я не вижу функции для этого, и просто .OID и т. д. не работают, у меня такое ощущение, что во всех руководствах показаны примеры загрузки по OIDили удостоверение, что мне не хватает чего-то довольно простого.

Любые указатели были бы очень полезны.

Спасибо, Брюс

Ответы [ 2 ]

1 голос
/ 28 октября 2010

Вы пробовали Employee.Oid или Employee.Sys_Oid?

0 голосов
/ 27 октября 2010

Читая документацию для объектов ActiveX InterSystem Cache, я не вижу способа получить OID из Sample.Employee объекта.

...