Re: Change password from Oracle Forms 4.0

From: C.J.Jardine <cj10_at_ucs.cam.ac.uk>
Date: Fri, 22 Apr 1994 10:58:47
Message-ID: <cj10.9.000AFB21_at_ucs.cam.ac.uk>


In article <radams.5.000FB3D3_at_msgate.mdhc.mdc.com> radams_at_msgate.mdhc.mdc.com (Ron Adams) writes:
>From: radams_at_msgate.mdhc.mdc.com (Ron Adams)
>Subject: Change password from Oracle Forms 4.0
>Date: Wed, 20 Apr 1994 14:42:02 GMT
 

>We'd like to deploy client/server applications using Forms, Reports, Graphics.
>The client is on Windows, the servers are on various platforms.
 

>Question: Is there a method in Forms to support a user changing their own
>password without having to deploy SQL*Plus?

The problems are as follows:

  1. ALTER USER xx IDENTIFIED BY yyy si a DDL statement. It therefore has implicitly commits. For this reason, you can't issue this statement in the session which Forms is using (as only Forms should commit).
  2. You can't get much joy out of using HOST to have something else (such as SLS*Plus) change the password, because HOST's return code handling is defective, so you can't know whether the command worked or not.

These considerations drove me to write an OCI user exit (using Visual C++). This exit accepts a username, a password and a number of DDL statements packed into a single character string. It establishes a new connection using the username/password, and obeys the DLL statements. If everything works, it returns 0. If anything fails, it displays a message box with the oracle error message in it, and then returns 1.

This is all horidly non-portable, but I can't find a portable way of doing it!

    Charles Jardine

       University of Cambridge (UK) Computing Service. Received on Fri Apr 22 1994 - 10:58:47 CEST

Original text of this message