How can I use TOraPakage with C++ Builder?

Discussion of open issues, suggestions and bugs regarding ODAC (Oracle Data Access Components) for Delphi, C++Builder, Lazarus (and FPC)
Post Reply
HoHoMaN

How can I use TOraPakage with C++ Builder?

Post by HoHoMaN » Sun 03 Apr 2005 13:16

Hi All

Is there any TOraPackage examples with C++ Builder v6.0?
I cannot find any examples to show usage for TOraPackage with C++ Builder.
I succeded to get result with one parameter, but I failed to get results with two paramemters.

Please help me.

Alex
Posts: 655
Joined: Mon 08 Nov 2004 08:39

Post by Alex » Mon 04 Apr 2005 16:15

I give you a short hint, if you need more detailed example pls. inform us by e_mail to ODAC support address.
Assume we have the next package:

Code: Select all

CREATE PACKAGE TEST_PACKAGE IS
  PROCEDURE OUT_PARAMS_PROC
  (
    id_p IN NUMBER,
    varchar_p OUT VARCHAR2,
    int_p OUT NUMBER
  );
END TEST_PACKAGE;

CREATE PACKAGE BODY TEST_PACKAGE as
PROCEDURE OUT_PARAMS_PROC
  (
    id_p IN NUMBER,
    varchar_p OUT VARCHAR2,
    int_p OUT NUMBER
  )
  IS
  BEGIN
    varchar_p := 'TEXT DATA';
    int_p := id_p;
  END;
END;
then to use it with TOraPackage we need to place on the form and setup TOraSession component also place TMemo, TButton, TOraPackage components and use the following code :

Code: Select all

void __fastcall TForm1::Button1Click(TObject *Sender)
{
Variant ParamName(String("id_p"));
Variant Params[2];
Params[0] = ParamName; //VType must be varString
Params[1] = 10;
OraPackage1->Session = OraSession1;
OraPackage1->PackageName = "TEST_PACKAGE";
OraPackage1->ExecProcEx("OUT_PARAMS_PROC", Params, 1);
//Read out params
Memo1->Lines->Add(OraPackage1->Params->ParamByName("varchar_p")->AsString);
Memo1->Lines->Add(OraPackage1->Params->ParamByName("int_p")->AsString);
}

Post Reply