ODAC 10.1.3. Access Violation at TOraArray.ItemExists[0]

Discussion of open issues, suggestions and bugs regarding ODAC (Oracle Data Access Components) for Delphi, C++Builder, Lazarus (and FPC)
Post Reply
prosoft
Posts: 2
Joined: Thu 02 Nov 2017 06:38

ODAC 10.1.3. Access Violation at TOraArray.ItemExists[0]

Post by prosoft » Thu 02 Nov 2017 06:51

Oracle 12.2
ODAC 10.1.3
Database script:

Code: Select all

create or replace type vetc$businessMember_t as object(
  entity_guid varchar2(48 char),
  enterprise_guid varchar2(48 char),
  globalId varchar2(48 char)
)
/
create or replace type vetc$consignment_t as object (
       id varchar2(48 char),
       partof varchar2(48 char),
       productType number,
       batchId vetc$identifier_lst
)
/
create or replace type vetc$consignment_lst as varray(255) of vetc$consignment_t;
/
CREATE OR REPLACE TYPE VETC$IDENTIFIER_LST AS VARRAY (255) OF VARCHAR2(255 char);
/
create or replace type vetc$delivery_t as object (
    deliveryDate date,
    consignor vetc$businessMember_t,
    consignee vetc$businessMember_t,
    consignment vetc$consignment_lst
)
/

Code: Select all

Qry := TOraQuery.Create(nil);
Qry.Session := OraSess;
Qry.SQL.Text := 'select * from table(pkg.getObject(:p1))';
Qry.ParamByName('p1').AsInteger := 100;
Qry.Open;

Delivery := TOraObject(Qry.GetObject('delivery')); // Ok
Consignor := Delivery.AttrAsObject['consignor']; // Ok
ShowMessage(Consignor.AttrAsString['entity_guid']); // Ok
Consignment := Deliver.AttrAsArray['consignment']; // Ok
if Consignment.ItemExists[0] then // [color=#FF4000]Access Violation[/color]
////
What's wrong?

MaximG
Devart Team
Posts: 1822
Joined: Mon 06 Jul 2015 11:34

Re: ODAC 10.1.3. Access Violation at TOraArray.ItemExists[0]

Post by MaximG » Thu 02 Nov 2017 14:08

Thank you for the information. We will investigate this behavior. We will inform you about the results shortly.

Post Reply