New to PL/SQL

From: Roga Danar <nospam_at_nospam.com>
Date: Mon, 26 Oct 1998 17:39:37 -0600
Message-ID: <36350838.178C8968_at_nospam.com>



Hi,

  I am having a little trouble with either my understanding or the interface or both.

  I am attempting to create an Oracle form with Oracle 7.3 on an WinNT platform which should call a DLL that I have created using Rational Apex Ada95.

  My PL/SQL routine can see the ORA_FFI routine but I place the routine in the database it can no longer see it.

  Also, when I run in the PL/SQL editor I get that the function I want to call does not exist when I try to register the function. The library appearently is found and is able to be registered.

  My procedure follows:

PROCEDURE dll_test IS

  DLL_Handle ora_ffi.libhandletype;
  up_handle ora_ffi.funchandletype;

  function ff_up (fhandle ora_ffi.funchandletype, i integer)

           return PLS_INTEGER;
  pragma interface(C, ff_up, up);

  function up (I pls_integer)

     return pls_integer is
  begin
    return (ff_up (up_handle, I));
  end;

BEGIN   text_io.put_line('Testing DLL invocation');

  dll_handle :=
    Ora_Ffi.Load_Library

      ('C:\Rational\Apex_Ada\base\ada\make_dll.ss\make_api.wrk\',
        'libmvs.dll');

  up_handle := ora_ffi.register_function   (dll_handle, 'up', ora_ffi.c_std);

 ora_ffi.register_parameter(up_handle,ora_ffi.c_int);

 ora_ffi.register_return(up_handle,ora_ffi.c_int);

 text_io.put_line ('Done!!');

END Received on Tue Oct 27 1998 - 00:39:37 CET

Original text of this message