I think I already know the answer but I am going to ask anyway. Is there a way to globally disable or disassociate all LOV’s in a Universe without doing it object by object.
Why you ask? We use a third party software (a type of Business views for Oracle applications) and when a user selects show LOV, it lauches a select distinct on that column running the view wide open with no conditions and this can take hours to complete. Users will cancel out of there local process and leave the phantom process running on the DB. Although users have been informed about not using LOVs in these Universes, it continues to happen more and more frequently. Because of this I would like to disable all LOV’s in the Oracle App Universes but there are literally thousands of objects.
True, but not a supported solution. Jeffrey, are you able to use a SDK solution? I will write up a short VBA routine that can disable all LOVs via the Designer SDK, and it would be a supported solution.
I’ll go ahead and post the solution, in case it would be useful to someone later on. {Jeffrey, let your conscience be your guide}
Step 1: Open the VB Editor (Alt-F11) from a VBA host app (I used Excel)
Step 2: Set a reference to the Designer SDK (Tools, References…, choose BusObj Designer)
Step 3: Insert a module (Insert, Module)
Step 4: Copy the following into the module
Sub NoLOVsPlease()
Dim DesApp As Designer.Application
Dim Univ As Designer.Universe
Set DesApp = New Designer.Application
DesApp.Visible = True
'use one of the following two lines as appropriate
Call DesApp.LoginAs 'for v5 / v6
'Call DesApp.LoginDialog 'for XI
Set Univ = DesApp.Universes.Open
Call TurnOffLOVs(Univ.Classes)
End Sub
Sub TurnOffLOVs(Clss As Designer.Classes)
Dim Cls As Designer.Class
Dim Obj As Designer.Object
For Each Cls In Clss
For Each Obj In Cls.Objects
Obj.HasListOfValues = False
Next Obj
If Cls.Classes.Count > 0 Then
Call TurnOffLOVs(Cls.Classes)
End If
Next Cls
End Sub
Step 5: Run the NoLOVsPlease procedure (Alt-F8 from Excel)
Step 6: Log in to Designer when prompted
Step 7: Open the desired universe when prompted
Step 8: In Designer, review that the LOVs are now disabled, and save the universe (I love saying that )
In the supervisor module you can prevent users to working with LOVs, and can do the same in the Repository (on EXPORTED universes only). Otherwise, go with the D-Mans code.
Hi Dwayne Hoffpauir,
I was trying to Disable the LOV’s in the Universe by following your procedure.
But I am getting an error (attached) I am new to use macros so please let me know how to fix this problem.
Hi Dwayne Hoffpauir,
Thank you for quick response.
I did tried as you suggest but I am getting new error now.
I am getting the same error as Hailieu got.
Attached screen shot shows the errors both before and after doing the
" .LoginAs to .LoginDialog" change for XI R2.
Please let us know how to work with that.
Thanks once again for your reponse.
GNK_BO. error.doc (25.0 KB)
Thanks for your response I missed you just by 3mins timing before I could see your post.
But anyways I tried by the change you suggested and its working now.