Reverse engineering - imp

hi,
I am currently working on a J2EE project, web service etc.. and now I am leaving the dept that i am working for. b4 i go i have to provide the logical diagrams (class diagrams etc etc) for the code that i have developed. specifically its an .ear file (enterprise application file running on websphere). I did not write comments etc as I didnt think the tool was going to become very big. but now it has.
is there a way in which i can do this faster? is there a program that will do this for me? is there any tool freely available on the web?
pls advise. I am working on Websphere application developer ver 4.0
thank you. Bhavna.

I am currently working on a J2EE project, web service
etc.. and now I am leaving the dept that i am working
for. b4 i go i have to provide the logical diagrams
(class diagrams etc etc) for the code that i have
developed. specifically its an .ear file (enterprise
application file running on websphere). I did not
write comments etc as I didnt think the tool was going
to become very big. but now it has.
I love developers like you. I always end up inheriting their codebases. My favorite was 10000 lines of C++ code with no whitespace, no formatting and no comments. Gotta hand it to the idiot contractor that wrote it--he got paid anyways.
Did you ever take any programming classes in college? Did they ever drill into you to comment your code? There was a reason for this. It's kind of like wearing a seatbelt. If you get in the habit of doing it, it becomes second nature.
Lesson #1: Always comment your code--as you write it. Even you won't remember what your were thinking when you wrote the code several months from now.
Lesson #2: Document your design decisions as you make them with UML diagrams. Never think "I'll get back to this later". You won't. In the offhand chance that you do (like in your present situation) you'll likely do a half assed job because you're in a hurry and trying to move on to other things.
In software development, follow the golden rule: leave the codebase and the documentation in the state that you'd like to find it if it got handed over to you.
There are some UML tools that will reverse your code and generate class diagrams but nothing can comment your code for you.

Similar Messages

  • Issue while Reverse Engineering the HFM Application

    Hi,
    We are in the process of integrating HFM (11.1.2.2.0) with ODI (11.1.1.6) for metadata upload from ODI to HFM, and, I am getting the following error while reverse engineering to the HFM application.
    org.apache.bsf.BSFException: exception from Jython:
    Traceback (most recent call last):
    File "<string>", line 38, in <module>
         at com.hyperion.odi.hfm.ODIHFMAppConnection.<init>(ODIHFMAppConnection.java:58)
         at com.hyperion.odi.hfm.ODIHFMAppReverser.connect(ODIHFMAppReverser.java:27)
         at com.hyperion.odi.common.ODIModelImporter.importModels(Unknown Source)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:597)
    com.hyperion.odi.common.ODIHAppException: com.hyperion.odi.common.ODIHAppException: Error occurred while loading driver.
         at org.apache.bsf.engines.jython.JythonEngine.exec(JythonEngine.java:146)
         at com.sunopsis.dwg.codeinterpretor.SnpScriptingInterpretor.execInBSFEngine(SnpScriptingInterpretor.java:322)
         at com.sunopsis.dwg.codeinterpretor.SnpScriptingInterpretor.exec(SnpScriptingInterpretor.java:170)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.scripting(SnpSessTaskSql.java:2472)
         at oracle.odi.runtime.agent.execution.cmd.ScriptingExecutor.execute(ScriptingExecutor.java:47)
         at oracle.odi.runtime.agent.execution.cmd.ScriptingExecutor.execute(ScriptingExecutor.java:1)
         at oracle.odi.runtime.agent.execution.TaskExecutionHandler.handleTask(TaskExecutionHandler.java:50)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.processTask(SnpSessTaskSql.java:2913)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTask(SnpSessTaskSql.java:2625)
         at com.sunopsis.dwg.dbobj.SnpSessStep.treatAttachedTasks(SnpSessStep.java:558)
         at com.sunopsis.dwg.dbobj.SnpSessStep.treatSessStep(SnpSessStep.java:464)
         at com.sunopsis.dwg.dbobj.SnpSession.treatSession(SnpSession.java:2093)
         at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor$2.doAction(StartSessRequestProcessor.java:366)
         at oracle.odi.core.persistence.dwgobject.DwgObjectTemplate.execute(DwgObjectTemplate.java:216)
         at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor.doProcessStartSessTask(StartSessRequestProcessor.java:300)
         at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor.access$0(StartSessRequestProcessor.java:292)
         at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor$StartSessTask.doExecute(StartSessRequestProcessor.java:855)
         at oracle.odi.runtime.agent.processor.task.AgentTask.execute(AgentTask.java:126)
         at oracle.odi.runtime.agent.support.DefaultAgentTaskExecutor$2.run(DefaultAgentTaskExecutor.java:82)
         at java.lang.Thread.run(Thread.java:662)
    Caused by: Traceback (most recent call last):
    File "<string>", line 38, in <module>
         at com.hyperion.odi.hfm.ODIHFMAppConnection.<init>(ODIHFMAppConnection.java:58)
         at com.hyperion.odi.hfm.ODIHFMAppReverser.connect(ODIHFMAppReverser.java:27)
         at com.hyperion.odi.common.ODIModelImporter.importModels(Unknown Source)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:597)
    com.hyperion.odi.common.ODIHAppException: com.hyperion.odi.common.ODIHAppException: Error occurred while loading driver.
         at org.python.core.PyException.fillInStackTrace(PyException.java:70)
         at java.lang.Throwable.<init>(Throwable.java:181)
         at java.lang.Exception.<init>(Exception.java:29)
         at java.lang.RuntimeException.<init>(RuntimeException.java:32)
         at org.python.core.PyException.<init>(PyException.java:46)
         at org.python.core.PyException.<init>(PyException.java:43)
         at org.python.core.Py.JavaError(Py.java:455)
         at org.python.core.Py.JavaError(Py.java:448)
         at org.python.core.PyReflectedFunction.__call__(PyReflectedFunction.java:177)
         at org.python.core.PyObject.__call__(PyObject.java:355)
         at org.python.core.PyMethod.__call__(PyMethod.java:215)
         at org.python.core.PyMethod.instancemethod___call__(PyMethod.java:221)
         at org.python.core.PyMethod.__call__(PyMethod.java:206)
         at org.python.core.PyObject.__call__(PyObject.java:381)
         at org.python.core.PyObject.__call__(PyObject.java:385)
         at org.python.pycode._pyx0.f$0(<string>:38)
         at org.python.pycode._pyx0.call_function(<string>)
         at org.python.core.PyTableCode.call(PyTableCode.java:165)
         at org.python.core.PyCode.call(PyCode.java:18)
         at org.python.core.Py.runCode(Py.java:1204)
         at org.python.core.Py.exec(Py.java:1248)
         at org.python.util.PythonInterpreter.exec(PythonInterpreter.java:172)
         at org.apache.bsf.engines.jython.JythonEngine.exec(JythonEngine.java:144)
         ... 19 more
    Caused by: com.hyperion.odi.common.ODIHAppException: Error occurred while loading driver.
         at com.hyperion.odi.hfm.ODIHFMAppConnection.<init>(ODIHFMAppConnection.java:58)
         at com.hyperion.odi.hfm.ODIHFMAppReverser.connect(ODIHFMAppReverser.java:27)
         at com.hyperion.odi.common.ODIModelImporter.importModels(Unknown Source)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:597)
         at org.python.core.PyReflectedFunction.__call__(PyReflectedFunction.java:175)
         ... 33 more
    Caused by: com.hyperion.odi.hfm.wrapper.HFMException: Error occurred while loading driver.
         at com.hyperion.odi.hfm.wrapper.HFMServer.<init>(HFMServer.java:29)
         at com.hyperion.odi.hfm.ODIHFMAppConnection.<init>(ODIHFMAppConnection.java:51)
         ... 40 more
    Caused by: com.hyperion.odi.hfm.wrapper.HFMException: C:\Oracle\Middleware\Oracle_ODI1\oracledi\agent\drivers\HFMDriver.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform
         at com.hyperion.odi.hfm.wrapper.HFMDriverJNI.getDriver(HFMDriverJNI.java:23)
         at com.hyperion.odi.hfm.wrapper.HFMServer.<init>(HFMServer.java:26)
         ... 41 more
    Can anyone please suggest a suitable solution for this?
    Thanks
    Abhi

    Hi,
    Under the readme eRPI : http://docs.oracle.com/cd/E17236_01/epm.1112/readme/erpi_1112200_readme.html
    I find this :
    ODI Setup Steps to Integrate with Financial Management
    To setup the ODI to integrate with Financial Management:
    Rename odiparams.bat located at <ODI_HOME>\oracledi\agent\bin to odiparams.bat.backup.
    The default installation location is C:\app\Oracle\product\11.1.1\Oracle_ODI_1.
    Download Oracle Data Integrator Companion CD 11.1.1.6.2.
    Unzip the contents of the Companion CD to the temp directory.
    Unzip oracledi-agent-standalone.zip.
    Copy the contents to: <ODI_HOME>.
    Make a backup of the HFMDriver.DLL.
    For the 32 bit operating system, copy HFMDriver32_11.1.2.2.dll as HFMDriver.DLL.
    For the 64bit operating system, copy HFMDriver64_11.1.2.2.dll as HFMDriver.DLL.
    Rename odiparams.bat.backup from Step 1 to odiparams.
    Edit the PATH to include: <ODI_HOME>\oracledi.sdk\lib
    Restart the ODI Agent.
    I try this procedure, but now, I have a new error :
    - Unable to connect on "myhfmserver" with "admin" user
    I think that, there is another step to do, because now HFM 11.1.2.2 use directly the "EPM Registry" (into Shared Services Schema) to retreive the HFM servers ou Clusters.
    But I don't find any information, how to setup this part into ODI.
    Or may be, we need to setup "Regedit Keys" into Windows registry like previous HFM release ?
    If you have any news, please inform me

  • Unable to generate Logical Model Diagrams through Reverse Engineering

    Hi,
    I am currently using SQL Developer Data Modeler Version-3.0.04.
    I have generated Logical Model Diagrams from Relational Model Diagrams through Reverse Engineering (Done by pressing an" engineer to Logical Model button" on top panel of sql developer) .I saved the DMD file (source file) once i had done generating the logical diagrams.Now if i reopen the DMD and open the logical diagram again I found that most of the tables had lost their relationships.So i tried to regenerate the Logical Model Diagram again from the same Relational Diagram but it is not being generated unless i create a new Relational Diagram.Is there a way to generate multiple Logical Diagrams for the same Relational Diagram rather than creating a new one for each Logical Diagram to be created.
    Regards .
    Thanks in advance.

    Any comments on this issue?. Please let us know.

  • Error in Reverse Engineering an XML file

    I am tring to set up ODI to read and XML file and post it to a DB.
    I am using Oracle Data Integrator 10.1.3.5
    I have set up the Connection in the Topology Manager and when I ran the Test it returned OK.
    I went to the Model tab in the Designer and tried to Reverse engineer the file. I followed the instruction int he User's Guide but I get an error:
    The Technology or the Driver used doesn not support Reverse Engineering. The User's guide says you can do it, but Designer tells me I can't.
    Has anyone received this error before and how can i get around it.
    I am using:
    com.sunopsis.jdbc.driver.xml.SnpsXmlDriver
    as the JDBC Driver. THat is the one used in the guide and example.
    JDBC URL:
    jdbc:snps:xml?f=c:\OraHome_1\Oracledi\MercuryGate\MGTransImpTemplatev1.0.1.xml&re=MercuryGate&ro=true&case_sens=true&s=MercGate
    Any help will be appreciated.

    Try the Oracle Data Integrator Forum
    Data Integrator
    Edited by: Johnreardon on 13-Jan-2011 05:34

  • Reverse-engineering excel files in ODI

    Hi,
    I am currently creating an ODBC Data Source to connect to MS Excel and then reverse-engineering the excel file.Do I need to create separate ODBC Data Source for each excel file or is there any other way to achieve this?
    Please suggest.
    Thanks in advance.

    hi Dev
    1. Have you defined the correct link between DSN and your Excel File the answer is yes
    2. Have you test the Connection in Topology ?yes and it's OK
    3. Also is your Excel file has an Extension of XLS ? yes
    4. When reversing have you check the required Technology - Microsoft Excel with required Logical Schema and context Yes i have Microsoft Excel with required Logical Schema and context
    and also try checking the Tables and System Tables for reversing .I' can't

  • Reverse engineering in Java Studio Enterprise 8.1

    I tried to do the reverse engineering in Java Studio Enterprise 8.1.
    The Reverse Engineering process launches which I can tell from the output log,
    but I didn't see any diagram generated. What could be the problem?
    Thanks!

    to see if the relationships are in the model, try to expand the class and interface nodes and they should have something like the following. If these are absent, there might be something in the reverse engineering process that lost the relationships.
    - package1
    - class1
    - Relationships
    - Implementation
    + interface1
    - package2
    - interface1
    - Relationships
    - Implementation
    + class1
    As for sequence diagram, not sure how you created it. If you just cdfs the classes, you should not see any message except for the lifelines that represent the classes. If you select an operation of a class to do cdfs or reverse engineer operation, the sequence diagram will be generated.

  • ANN: Reverse-engineering tool from Logic Explorers Inc.

    Logic Explorers Inc. announces the beginning of the beta program for the CodeLogic
    reverse-engineering and code analysis tool. CodeLogic is implemented as a plugin
    for JBuilder, JDeveloper, and the standalone application. Among the major features:
    - Analyses any Java source code
    - Fully automatic generation of interactive UML Class and Sequence (sic!) diagrams
    - Unique Execution Flow diagram
    - Unique Variables Backtrack diagrams
    - Graphical Code Navigator
    - Zoom and filters
    - Intelligent Diff utility
    - Knowledge Base
    To get more information, visit Logic Explorers Inc at
    http://www.logicexplorers.com

    I would go with the Forms-Builder itself. If you want to analyze the code and see what action is done at which point, its best to do this in the tool where you developed the application. (You also wouldn't analyze a .Net-application using Notepad ;) )

  • Reverse engineering sequence diagram with more than one level deep

    Hello,
    When I generate sequence diagram from a method with Java Studio Enterprise 8.1, it only shows the method called directly by this method.
    Can I also show the methods that are called by the other methods that the one I'm generating the diagram from?
    Thanks,
    Mike

    Hi Mike,
    Sorry for the delay. The whole team has been busy with JavaONE for the past week.
    We currently do not support reverse engineering of an operation to a sequence diagram more than one level deep. I opened an enhancement request for you:
    http://www.netbeans.org/issues/show_bug.cgi?id=103780
    The UML pack is now part of NetBeans. Check out these links for the latest info regarding UML:
    http://www.netbeans.org/products/uml/
    http://uml.netbeans.org/
    Thanks,
    George

  • Unable to Perform Reverse Engineering, of Hyperion Planning in ODI 11.1.1.6

    Dear Gurus and Experts.
    I'm trying to reverse engineer had made a model of the Hyperion Planning.
    After configuring the topology.
    Steps:
    A)
    Physical Architecture:
    machine.mycompany.com: 11333, user / pdw (here's Hyperion Planning)
    Physical Layout:
    Catalog Application - I wrote: myapphp
    Implementation and Application of Work - I wrote: myapphp
    1_doubt: I expected to be able to select the physical layout, the field catalog application, an application name that is in Hyperion Planning.
    But I saw that does not work well. I had to enter.
    is this right? or just this wrong in my settings?
    B)
    Logical Architecture:
    Context: Global
    Associated with LS_HP_myapp
    C)
    In Contexts:
    Global, contains the association.
    logical scheme: LS_HP_myapp for Physical Schema: myapphp
    D)
    In Designer.
    I want to reverse engineer;
    Criated a folder, added a model;
    name: mymodelhp, selected technology: hyperion planning
    logical schema: LS_HP_myapp
    em group of generic actions.
    Saved.
    E)
    And clicked on Reverse Engineering
    Then the error ODI: 20616 Failed Reverse Engineering Standard.
    details:
    ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    java.util.concurrent.ExecutionException: java.lang.IllegalArgumentException: Driver name cannot be empty
         at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:222)
         at java.util.concurrent.FutureTask.get(FutureTask.java:83)
         at com.sunopsis.graphical.tools.utils.swingworker.SwingWorker.get(SwingWorker.java:476)
         at com.sunopsis.graphical.frame.edit.EditFrameSnpModel$8.done(EditFrameSnpModel.java:2622)
         at com.sunopsis.graphical.tools.utils.swingworker.SwingWorker$4.run(SwingWorker.java:615)
         at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
         at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:646)
         at java.awt.EventQueue.access$000(EventQueue.java:84)
         at java.awt.EventQueue$1.run(EventQueue.java:607)
         at java.awt.EventQueue$1.run(EventQueue.java:605)
         at java.security.AccessController.doPrivileged(Native Method)
         at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
         at java.awt.EventQueue.dispatchEvent(EventQueue.java:616)
         at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
         at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
         at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:178)
         at java.awt.Dialog$1.run(Dialog.java:1044)
         at java.awt.Dialog$3.run(Dialog.java:1096)
         at java.security.AccessController.doPrivileged(Native Method)
         at java.awt.Dialog.show(Dialog.java:1094)
         at java.awt.Component.show(Component.java:1584)
         at java.awt.Component.setVisible(Component.java:1536)
         at java.awt.Window.setVisible(Window.java:841)
         at java.awt.Dialog.setVisible(Dialog.java:984)
         at oracle.bali.ewt.dialog.JEWTDialog.runDialog(JEWTDialog.java:395)
         at oracle.bali.ewt.dialog.JEWTDialog.runDialog(JEWTDialog.java:356)
         at oracle.ide.dialogs.ProgressBar.start(ProgressBar.java:352)
         at oracle.ide.dialogs.ProgressBar.start(ProgressBar.java:243)
         at oracle.ide.dialogs.ProgressBar.start(ProgressBar.java:215)
         at com.sunopsis.graphical.tools.utils.SnpsSwingUtilities.executeAndBlockGUI(SnpsSwingUtilities.java:181)
         at com.sunopsis.graphical.frame.edit.EditFrameSnpModel.jButtonReverse_ActionEvents(EditFrameSnpModel.java:2650)
         at com.sunopsis.graphical.frame.SnpsEditFrame$IvjEventHandler.actionPerformed(SnpsEditFrame.java:206)
         at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
         at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
         at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
         at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
         at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
         at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:273)
         at java.awt.Component.processMouseEvent(Component.java:6290)
         at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
         at java.awt.Component.processEvent(Component.java:6055)
         at java.awt.Container.processEvent(Container.java:2039)
         at java.awt.Component.dispatchEventImpl(Component.java:4653)
         at java.awt.Container.dispatchEventImpl(Container.java:2097)
         at java.awt.Component.dispatchEvent(Component.java:4481)
         at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4575)
         at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4236)
         at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4166)
         at java.awt.Container.dispatchEventImpl(Container.java:2083)
         at java.awt.Window.dispatchEventImpl(Window.java:2482)
         at java.awt.Component.dispatchEvent(Component.java:4481)
         at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:648)
         at java.awt.EventQueue.access$000(EventQueue.java:84)
         at java.awt.EventQueue$1.run(EventQueue.java:607)
         at java.awt.EventQueue$1.run(EventQueue.java:605)
         at java.security.AccessController.doPrivileged(Native Method)
         at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
         at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)
         at java.awt.EventQueue$2.run(EventQueue.java:621)
         at java.awt.EventQueue$2.run(EventQueue.java:619)
         at java.security.AccessController.doPrivileged(Native Method)
         at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
         at java.awt.EventQueue.dispatchEvent(EventQueue.java:618)
         at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
         at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
         at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
    Caused by: java.lang.IllegalArgumentException: Driver name cannot be empty
         at org.springframework.util.Assert.hasText(Assert.java:161)
         at com.sunopsis.sql.SnpsConnection.setDriverName(SnpsConnection.java:302)
         at com.sunopsis.dwg.dbobj.DwgConnectConnection.setDefaultConnectDefinition(DwgConnectConnection.java:380)
         at com.sunopsis.dwg.dbobj.DwgConnectConnection.<init>(DwgConnectConnection.java:274)
         at com.sunopsis.dwg.dbobj.DwgConnectConnection.<init>(DwgConnectConnection.java:288)
         at oracle.odi.core.datasource.dwgobject.support.DwgConnectConnectionCreatorImpl.createDwgConnectConnection(DwgConnectConnectionCreatorImpl.java:53)
         at com.sunopsis.dwg.reverse.Reverse.getLocalConnection(Reverse.java:1286)
         at com.sunopsis.dwg.reverse.Reverse.getLocalConnection(Reverse.java:1336)
         at com.sunopsis.dwg.reverse.Reverse.getLocalConnection(Reverse.java:1301)
         at com.sunopsis.dwg.reverse.Reverse.getMetaData(Reverse.java:1357)
         at com.sunopsis.graphical.frame.edit.EditFrameSnpModel$8.doInBackground(EditFrameSnpModel.java:2587)
         at com.sunopsis.graphical.tools.utils.swingworker.SwingWorker$1.call(SwingWorker.java:240)
         at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
         at java.util.concurrent.FutureTask.run(FutureTask.java:138)
         at com.sunopsis.graphical.tools.utils.swingworker.SwingWorker.run(SwingWorker.java:278)
         at oracle.ide.dialogs.ProgressBar.run(ProgressBar.java:655)
         at java.lang.Thread.run(Thread.java:662)
    ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++                                                            
    Any light please.
    thank you

    In the reverse engineer tab of the model you will need to select customized and select the knowledge module "RKM Hyperion Planning"
    Cheers
    John
    http://john-goodwin.blogspot.com/

  • Reverse Engineering a Model

    I am using SQL Data Modeller to reverse engineer an Oracle database to produce a diagram for a data model that was made a while back now. I created the diagram successfully and was very pleased with the results and the process.
    However, since creating that initial diagram the data model has again changed and I would like the recent changes to be reflected in the relational model I created in SQL Data Modeller.
    Is there an easy way to update the model? I click File > Import > Data Dictionary (which is the original method I used) I followed the steps and was presented with a list of changes and asked to merge into the model. This seemed fine. However the new tables were not added to the diagram and when I dragged them on to the diagram from the list of tables I was not shown the relationships?
    How can I easily added these new tables to the model?
    Thanks, Mike

    Check to see if the FKs between the tables you are referring to were captured in the reverses engineering. If they were, they would appear on the diagram when you drag in the new tables. If they were not captured, make sure they actually exisit in the database.
    I beleive that in order to capture a FK in the reverse engineering you must select both tables to be captured. If you only selected the "new" table, I do not think the FKs will come in but rather only the table structure, PK, and indexes on that table.

  • ODI 11g - SQL Server reverse engineering - no objects

    Hi,
    I'm using ODI 11g and I created the logical and physical schema and then a Model. When I reverse engineering it nothing appears under the model node. Is there any log that ODI provides, to check it? A very quick window appears and disappears so I'm not sure what's happening.
    Thank you

    Facing same problem, how you fixed it?
    Thanks in advance

  • After reverse engineering i have still the old deleted tables

    hi ,
    i dropped a table from database schema and go to ODI and run reverse engineering on my model which linked to the database schema through my logical schema, but the deleted table still exist in my model ??? i wish this dropped table automaticly deleted from my model..

    Hi,
    Deletion actual table will not reflect while reverse engineer.
    The Meta data has been taken into ODI. It has become an object of ODI.
    So you have to directly delete the data store to remove it from ODI.
    Hope it helps.
    Regards,
    Gatha

  • Newly added column not reversed by strand  reverse engineering

    Hi Guys,
    I have reverse engg a datastore from Oracle database and later I added one new columns in the same table at database level. Now when I am doing strand reverse Engineering from the model the newly added columns are not being reflected in ODI.
    please comment/advise.
    I want to do this through strand reverse Engineering.
    Thanks,
    Giri

    Appreciate if any one share suggestion/inputs on this issue

  • Designer 6i : Server Model Generation Error while reverse engineering

    Hi there,
    I am Creating a DB Model from exising database (Reverse
    Engineering ). When I am trying to generate capture design of
    Server Model. I am getting below errors and operation fails.
    --------------------------------------------- Error Message start
    Internal API error - ORA-20291: integrity constraint
    (FK_OTB_TO_OSP) violated - parent key not found
    ORA-06512: at "REP_USER.SDD_OTB_VAL", line 22
    ORA-04088: error during execution of
    trigger 'REP_USER.SDD_OTB_VAL'
    RME-00020: Internal API error - ORA-20291: integrity constraint
    (FK_OTB_TO_OSP) violated - parent key not found
    ORA-06512: at "REP_USER.SDD_OTB_VAL", line 22
    ORA-04088: error during execution of
    trigger 'REP_USER.SDD_OTB_VAL'
    CDR-01052: Tablespace HHNEWBUILD/HHNEWBUILD.USERS is referencing
    invalid Storage Definition (ref =
    2105528996887633452799620949781640613).
    RME-00011: Operation 'ins' on TABLESPACE has failed
    RME-00222: Failed to dispatch operation to Repository
    RME-00222: Failed to dispatch operation to Repository
    --------------------------------------------- Error Message End
    My init.ora is created according to Installation guide.
    Could anyone please help me with this ???
    Your earliest action would highly appreciated.
    Thanks & regards,
    Bhavesh Doshi

    1. Bounce the Repository's DB Instance. Usually an indication
    of RME errors.
    2. Goto RAU and perform all of your maintenance
    a. Compute Statistics
    b. View Objects and Recompile all 'INVALID' objects
    c. Clear temporary tables.
    3. If you are reverse engineering with DBA privileges then you
    are going to retrieve alot of uneccessary objects. Be explicit
    in your retrieval.
    Any questions? Arnold Angel, [email protected]

  • How to do reverse engineering to a sybase model?

    Hi,
    I´m new with sybase ase technology and i don´t now how to create a sybase model in ODI. I´m alredy created the data server and logical schema in topology manager but when i try to do the reverse engineering on designer module i can´t see the tables. What are the requirements for do this?
    Help me please!!!
    Regards

    Hi
    Pl. use Return Purchase Order process, transaction code ME21N
    At the item details, look for the Return columns and tick it.
    MIGO_GR - Goods Receipt for Return Purchase Order
    Movement type will be 161 to deduct the stock and 162 for reversal.
    During Goods Receipt for Return Purchase Order, you do not have to change the movement type from 101 to 161 as the system will automatically assign the movement type to 161 upon saving the postings.
    However, before saving, check if there is a tick in the Return Column to ensure that it is a return Purchase Order.
    you can also do the outbound delivery ..
    Outbound delivery with VL01n and do shipment with VT01N by referencing to the Out bound delivery.
    I hope this helps,
    if found usefull pl . award points
    Thanks
    Prasanna

Maybe you are looking for