How to display which exception Is Raised?

Hi
Experts.
I am trying to connect my webDynpro with oracle.
I had already included Jar at both places.
now I want to display in exception that which error is coming?
I had already written <b> ex.printStackTrace();  </b>
but it is not working.
Code Is given Below.
Connection conn=null;
          try
          wdComponentAPI.getMessageManager().reportException("after 0",false);
          Class.forName("oracle.jdbc.driver.OracleDriver");
          wdComponentAPI.getMessageManager().reportException("after 1st",false);
          DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
          wdComponentAPI.getMessageManager().reportException("after 2nd",false);
          conn =DriverManager.getConnection ("jdbc:oracle:thin:@Server IP:1521:adaniinframs","scott", "tiger");
          wdComponentAPI.getMessageManager().reportException("after 3",false);
          Statement stmt=conn.createStatement();
          wdComponentAPI.getMessageManager().reportException("after 4",false);
          ResultSet rs=stmt.executeQuery("select ename from emp where empno=7369"); // select statment
          wdComponentAPI.getMessageManager().reportException("after 5",false);
          while(rs.next())
          wdComponentAPI.getMessageManager().reportException("after 6",false);
          IPrivateDatabaseConnectView.INodeEmpElement a = wdContext.createNodeEmpElement();
          a.setEmpName(rs.getString(1));
          a.setEmpJob(rs.getString(2));
          wdContext.nodeNodeEmp().addElement(a);
          catch(Exception ex)
                ex.printStackTrace();
          finally
           try
          conn.close(); // closing the connection
          catch(Exception e)
          ex.printStackTrace();
Regards
Sunny.

I don't think the user may see anything if you execute e.printStackTrace(); so what you have to do is report an exception with the text of the stack trace:
IWDMessageManager manager = wdComponentApi().getMessageManager();
StringWriter sw = new StringWriter();
PrintWriter pw = new PrintWriter(sw);
e.printStackTrace(pw);
String message = sw.toString();
manager.reportException("Excepcition raised: " + message, false);
With this you will report the whole stack trace. If you want to get only the cause you will have to parse the message string. e.getMessage() should do this for you but if doesn't return anything quite often.

Similar Messages

  • How to find which exception it is?

    Actually I have a one method
    Where Iam trying to connect to .NET Webservice. So that time different exceptions may occur.
    Possibility of Exceptions i am not able to judge. So I am using Exception to handle all the exceptions during runtime. Suppose UnknwonHostException occurred, i want to do one operation. Some other unknown exceptions i want to perform different operations.
    try
    // Connecting to .NET Webservice
    // Calling the webservice methods
    catch(Exception e)
    // here how can I handle it
    }

    Assuming it's really not possible to know the exact types of RuntimeException, you could check explicitly for the type of the caught exception using instanceof. Once you know the type is e.g. UnknwonHostException, you can cast it and handle it as you want.
    If you have many types the code will get ugly as you'll have a lot of ifs but this is probably the best way to go in this case.
    try {
        // Connecting to .NET Webservice
        // Calling the webservice methods
    } catch(Exception e) {
        // here how can I handle it
        if (e instanceof UnknwonHostException)
            handleUnknwonHostException( (UnknwonHostException)e);
    }

  • PL SQL with multiple inserts, how to continue after exception is raised

    Hi,
    I have a simple PL SQL function with various inserts. ex:
    Insert Into "DI01"."DUA_DIM_UNITE_ADMIN" (Ide_Unite_Admin_Sk, Num_Unite_Admin, Des_Unite_Admin) Values ('-1', '00000000', 'Défaut');
    INSERT INTO "DI01"."DUA_DIM_UNITE_ADMIN" (IDE_UNITE_ADMIN_SK, NUM_UNITE_ADMIN, DES_UNITE_ADMIN) VALUES ('-2', 'S. O.', 'Sans Objet');
    Insert Into "DI01"."DCU_DIM_CATGR_UNSPS" (Ide_Catgr_Sk, Num_Code, Des_Code, Num_Catgr, Des_C.........
    I want to be able to run the function multiple times, and have all the inserts executed everytime, even if I get a ORA-00001 unique constraint (string.string) violated error in on of the inserts. That means that if I get an error in the first insert, I want the function to continue running and executing the consecutive inserts.
    I though of including each insert in a different block, like:
    BEGIN
    Insert......
    When Exception then null;
    END;
    BEGIN
    Insert......
    When Exception then null;
    END;
    But I have at least 50 inserts, so the final code becomes huge.
    Another solution is to use merge inseat of insert, but the code seems too complex for such a simple task.
    Is there any other solution for this that I am not seeing?
    Thank you for your time,
    Joao Moreira

    You can use DML error logging approach or FORALL SAVE EXCEPTIONS.
    Since you didn't mention the version I assume you are using 11g.
    Below is the sample code for DML error logging mechanism
    SQL> select * from v$version;
    BANNER                                                                         
    Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production   
    PL/SQL Release 11.2.0.3.0 - Production                                         
    CORE 11.2.0.3.0 Production                                                     
    TNS for Linux: Version 11.2.0.3.0 - Production                                 
    NLSRTL Version 11.2.0.3.0 - Production                                        
    SQL> DROP TABLE tableA;
    Table dropped.
    SQL> DROP TABLE Err$_tableA;
    Table dropped.
    SQL>
    SQL> CREATE TABLE tableA
      2  (
      3     col1   NUMBER PRIMARY KEY,
      4     col2   NUMBER,
      5     col3   VARCHAR2 (10)
      6  );
    Table created.
    SQL>
    SQL> -- Create error log table
    SQL>
    SQL> BEGIN
      2     DBMS_ERRLOG.create_error_log (dml_table_name => 'TABLEA');
      3  END;
      4  /
    PL/SQL procedure successfully completed.
    SQL>
    SQL> BEGIN
      2     FOR i IN (SELECT 1 AS col1 FROM DUAL
      3               UNION ALL
      4               SELECT 1 FROM DUAL)
      5     LOOP
      6        INSERT INTO tableA (col1)
      7             VALUES (i.col1)
      8                LOG ERRORS INTO Err$_tableA REJECT LIMIT UNLIMITED;
      9     END LOOP;
    10 
    11     COMMIT;
    12  END;
    13  /
    PL/SQL procedure successfully completed.
    SQL> column column_name format a30
    SQL> set linesize 300
    SQL> select * from tableA;
    SQL> select * from err$_tablea;
    Thanks,
    GPU

  • How to display which folders a photo has been assigned to

    If you select a photo in an Event and want to know which folders you've previously added that photo to, can you tell? I've looked at the iPhoto shortcuts page and don't see anything there. In Address Book, if you want to know which Groups a contact has been assigned to, you highlight the Contact and press Command-Option. But that doesn't work in iPhoto.

    This sure would be a handy feature! iTunes has it so that you can easily tell which playlists a song is in. It would be convenient for iPhoto as well.

  • How to display output parameters in storedprocedures in front end?

    hi all ,thank you for all the support.
    Now i want your help .Here below i have given the general format of stored procedure we are using in our application . In procedure we are catching the exception and assigning to an output variable P_STATUS .
    If any exception occurs ,How we display this caught exception from front end that means how we display the exception in front end .We are using VB.NET and VS 2005 and Oracle 9i for development.
    CREATE OR REPLACE PROCEDURE SELECTINTERVALS
    P_MINVAL INTEGER,
    P_MAXVAL INTEGER,
    P_INTERVAL     INTEGER,
    P_USERID VARCHAR2,
    P_STATUS OUT VARCHAR2
    AS
    BEGIN
              SELECT STATEMENT or INSERT STATEMENT     
    EXCEPTION
              WHEN OTHERS THEN
              ROLLBACK;
              P_STATUS:=SQLERRM;
    END;
    If anybody knows, please help me
    thanks & regards

    Both methods are wrong. Returning error/exit codes for the reasons I've stated above.
    As for handling the exception... If you want to propagate the exception, then DO NOT CHANGE IT INTO A MEANINGLESS USER EXCEPTION!
    This is useless:
    WHEN OTHERS THEN
    ROLLBACK;
    P_STATUS:=SQLERRM;
    RAISE_APPLICATION_ERROR(-20011, SQLERRM);
    Why it is meaningless? Because the caller now has to parse the error message to determine just what the actual root exception was... as the root exception number has been replaced with a meaningless number.
    This is meaningful and (almost) correct:
    [pre]
    when OTHERS then
    rollback;
    raise; -- re-raise the exception
    PS. It makes better sense to trap the actual exception like no data found, duplicate PK violations, etc... it seldom makes sense to trap all other exceptions and then do something like a rollback.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

  • How to display error message raised by stored procedure in ADF Faces ?

    Hi all,
    From my jspx page, I call a stored procedure wrapped by a custom service method in apps module.
    Based on certain condition in the stored procedure, e.g : NO DATA FOUND EXCEPTION, I raised a custom error from the stored procedure :
    RAISE_APPLICATION_ERROR(-20001, 'ERROR : No Data Tobe Processed !') ;
    The question is : How to display that error nicely in the jspx page ?
    Below is my backing beans code to call the stored procedure :
    public String okButton1_action() {
    try {
    SalesAM service =
    (SalesAM)JSFUtils.resolveExpression("#{data.SalesAMDataControl.dataProvider}");
    createdInvoices = service.processInvoice(
         soFr.getValue().toString().toUpperCase(),
         soTo.getValue().toString().toUpperCase(), .....     
    currDateTime, "O") ;
    } catch (JboException e) {
    System.out.println("There is error raised by stored proc..!");
    System.out.println(e.toString());
    Thank you for your help,
    xtanto

    You can add a message to the page in the following way:
    FacesMessage mess = new FacesMessage(FacesMessage.SEVERITY_ERROR, "title", e.getMessage());
    FacesContext.getCurrentInstance().addMessage(null, mess);

  • How to display or generate PDF417 barcode dynamically in PDF form? I am using Acrobat XI Professional and there is a Bar Code Field in the same through which I generated the same. But I want to generate the same dynamically.

    How to display or generate PDF417 barcode dynamically in PDF form? I am using Acrobat XI Professional and there is a Bar Code Field in the same through which I generated the same. But I want to generate the same dynamically.

    What do you mean by dynamically? When yo set up a 2D bar code field you specify which field name/value pairs you want to include, along with other parameters. But be aware that they won't work with Reader unless you Reader-enable the document with LiveCycle Reader Extensions and include the bar code usage right. It will work with Acrobat Standard/Pro.

  • How to display the form of time statement, which was created in trans. PE50

    Hi to all!
    I have created the salary statement with the PE50 and I want the form to be displayed in the ESS.
    How to display this form?
    Thank.

    Dear Siddharth,
    I am getting this error for Time Statement here also we have used PE50 to create time statement for r/3 purpose, Which would be feasible one to work with for getting the display of Time Statement.
    Form TH_TIME_ST does not exist
    com.sap.pcuigp.xssfpm.java.FPMRuntimeException: Form TH_TIME_ST does not exist
         at java.lang.Throwable.<init>(Throwable.java:194)
         at java.lang.Error.<init>(Error.java:49)
         at com.sap.pcuigp.xssfpm.java.FPMRuntimeException.<init>(FPMRuntimeException.java:34)
         at com.sap.pcuigp.xssfpm.java.MessageManager.raiseException(MessageManager.java:112)
         at com.sap.pcuigp.xssfpm.java.MessageManager.raiseException(MessageManager.java:122)
         at com.sap.xss.hr.rep.fcrfw.FcRepFramework.reportBapiRet2Error(FcRepFramework.java:525)
         at com.sap.xss.hr.rep.fcrfw.FcRepFramework.callRfcExecAction(FcRepFramework.java:357)
         at com.sap.xss.hr.rep.fcrfw.FcRepFramework.initModel(FcRepFramework.java:292)
         at com.sap.xss.hr.rep.fcrfw.wdp.InternalFcRepFramework.initModel(InternalFcRepFramework.java:256)
         at com.sap.xss.hr.rep.fcrfw.FcRepFrameworkInterface.initModel(FcRepFrameworkInterface.java:136)
         at com.sap.xss.hr.rep.fcrfw.wdp.InternalFcRepFrameworkInterface.initModel(InternalFcRepFrameworkInterface.java:198)
         at com.sap.xss.hr.rep.fcrfw.wdp.InternalFcRepFrameworkInterface$External.initModel(InternalFcRepFrameworkInterface.java:258)
         at com.sap.xss.hr.tim.per.selection.VcTimPerSelection.onInit(VcTimPerSelection.java:238)
         at com.sap.xss.hr.tim.per.selection.wdp.InternalVcTimPerSelection.onInit(InternalVcTimPerSelection.java:246)
         at com.sap.xss.hr.tim.per.selection.VcTimPerSelectionInterface.onInit(VcTimPerSelectionInterface.java:162)
         at com.sap.xss.hr.tim.per.selection.wdp.InternalVcTimPerSelectionInterface.onInit(InternalVcTimPerSelectionInterface.java:144)
         at com.sap.xss.hr.tim.per.selection.wdp.InternalVcTimPerSelectionInterface$External.onInit(InternalVcTimPerSelectionInterface.java:220)
         at com.sap.pcuigp.xssfpm.wd.FPMComponent.doProcessEvent(FPMComponent.java:467)
         at com.sap.pcuigp.xssfpm.wd.FPMComponent.doEventLoop(FPMComponent.java:438)
         at com.sap.pcuigp.xssfpm.wd.FPMComponent.wdDoInit(FPMComponent.java:196)
         at com.sap.pcuigp.xssfpm.wd.wdp.InternalFPMComponent.wdDoInit(InternalFPMComponent.java:110)
         at com.sap.tc.webdynpro.progmodel.generation.DelegatingComponent.doInit(DelegatingComponent.java:108)
         at com.sap.tc.webdynpro.progmodel.controller.Controller.initController(Controller.java:215)
         at com.sap.tc.webdynpro.progmodel.controller.Controller.init(Controller.java:199)
         at com.sap.tc.webdynpro.clientserver.cal.ClientComponent.init(ClientComponent.java:359)
         at com.sap.tc.webdynpro.clientserver.cal.ClientApplication.init(ClientApplication.java:362)
         at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.initApplication(ApplicationSession.java:755)
         at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.doProcessing(ApplicationSession.java:278)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessingPortal(ClientSession.java:722)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessing(ClientSession.java:623)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doProcessing(ClientSession.java:215)
         at com.sap.tc.webdynpro.clientserver.session.RequestManager.doProcessing(RequestManager.java:113)
         at com.sap.tc.webdynpro.clientserver.session.core.ApplicationHandle.doProcessing(ApplicationHandle.java:70)
         at com.sap.tc.webdynpro.portal.pb.impl.AbstractApplicationProxy.sendDataAndProcessActionInternal(AbstractApplicationProxy.java:818)
         at com.sap.tc.webdynpro.portal.pb.impl.AbstractApplicationProxy.create(AbstractApplicationProxy.java:220)
         at com.sap.portal.pb.PageBuilder.updateApplications(PageBuilder.java:1265)
         at com.sap.portal.pb.PageBuilder.createPage(PageBuilder.java:355)
         at com.sap.portal.pb.PageBuilder.init(PageBuilder.java:548)
         at com.sap.portal.pb.PageBuilder.wdDoRefresh(PageBuilder.java:592)
         at com.sap.portal.pb.PageBuilder$1.doPhase(PageBuilder.java:864)
         at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.processPhaseListener(WindowPhaseModel.java:750)
         at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.doPortalDispatch(WindowPhaseModel.java:715)
         at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.processRequest(WindowPhaseModel.java:113)
         at com.sap.tc.webdynpro.clientserver.window.WebDynproWindow.processRequest(WebDynproWindow.java:335)
         at com.sap.tc.webdynpro.clientserver.cal.AbstractClient.executeTasks(AbstractClient.java:107)
         at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.doProcessing(ApplicationSession.java:278)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessing(ClientSession.java:623)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doProcessing(ClientSession.java:215)
         at com.sap.tc.webdynpro.clientserver.session.RequestManager.doProcessing(RequestManager.java:113)
         at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doContent(DispatcherServlet.java:60)
         at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doPost(DispatcherServlet.java:53)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:733)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:332)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:0)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:386)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:335)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:963)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:249)
         at com.sap.engine.services.httpserver.server.Client.handle(Client.java:0)
         at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:92)
         at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:30)
         at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:35)
         at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
         at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:101)
         at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:172)
    Appreciate your help on this.
    Regs,
    Raj

  • How to display the PK which is it alreday database sequence in a text field

    hi alllllllllllllll how to display the PK which is it alreday database sequence in a text field in form instance???

    2 ways,
    1) select the item in your SQL query and call it item_display - then you can treat it as a normal item with no impact on the database.
    2) Set the item to a display only item.
    Hope this helps,
    Russell

  • How to display an Image which is on Panel behind JScrollPane - Please Help

    Hiii All,
    How to display an Image which is on Panel behind JScrollPane. I have set the setOpaque() method of JScrollPane to false still when i run the program the JScrollPane is set as Opaque.. Can some one please help me in this...
    Thanks,
    Piush

    you need to set both
    scrollPane.setOpaque(false);
    scrollPane.getViewport().setOpaque(false);

  • How to display the image which in KM folder using url iview

    Hi Friends
    How to display the image, which is under KM folder structur using the url iview.
    i trying using url iview url as  \document\testfolder\abc.jpg as url for the iview.
    but its now working .. so please help me how to slove this problem
    If is not the correct way then please suggest me best way to achive this.
    Thanks
    Mukesh

    Hi Mukesh,
    I think this may work,
    1, Create a HTML Layout.
        You can put your image wherever  u want with HTML Codes.
        Check this, [Article|https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/3915a890-0201-0010-4981-ad7b18146f81] & [Help|http://help.sap.com/saphelp_nw04/helpdata/en/cc/00c93e9b2c3d67e10000000a114084/frameset.htm]
        With this, u can use the standard KM commands also.
    2, U need to use KM Navigation iView for this rather than KM Doc iView.
    3, In the Nav iView, u can use &rndLayoutSet=nameOfUrHTMLLayout to force the view with this new layout.
    Regards
    BP

  • [svn:osmf:] 15505: Fix image smoothing, which had been broken as a result of some changes to how the display object of an ImageElement is exposed .

    Revision: 15505
    Revision: 15505
    Author:   [email protected]
    Date:     2010-04-16 09:29:26 -0700 (Fri, 16 Apr 2010)
    Log Message:
    Fix image smoothing, which had been broken as a result of some changes to how the display object of an ImageElement is exposed.  Add integration test.
    Modified Paths:
        osmf/trunk/framework/OSMF/org/osmf/elements/ImageElement.as
        osmf/trunk/framework/OSMFIntegrationTest/org/osmf/elements/TestImageElementIntegration.as

    That's a comment in the file. It has no effect at all.

  • How to display dates on which the field of an infotype is changed

    there are two fields   in an infotype and both the fields are changed on different dates then how to display those dates on which the two fields are changed

    Hi ankit,
    If you want the change log for one infotype with one two fields, then write one custom program with following logic. If you want the log for multiple infotypes for multiple fileds then you have to use that program 'RPUAUD00'. Read the documentation of the program to check how to use it.
    select * from pa0000 into table it_pa0000
                                   where pernr = v_pernr.
    sort it_pa0000 by begda descending.
    loop at it_pa0000 into wa_pa0000.
    write your own logic to compare the previous record PERSG with current record PERSG.
    if this doesnt match then get the Changed DATE from AEDTM field.
    wa_pa0000-AEDTM = changed date.
    Else.
    continue with loop.
    exit.
    endloop.
    regards,
    Shrinivas

  • How to display a view which contain interactive form in an external window

    Anyone know how to display a view which contain interactive form in an external window?
    I managed to display the view in an internal window with the following code:
    IWDWindowInfo windowInfo = (IWDWindowInfo)wdComponentAPI.getComponentInfo().findInWindows("PdfReportWin");
    IWDWindow window = wdComponentAPI.getWindowManager().createWindow( windowInfo, true);
    For external window, I tried this method : wdComponentAPI.getWindowManager().createExternalWindow(String URL, String title, boolean modal) but there are no parameter for view name?
    Maybe this is not the correct way, really appreaciate if anyone can help.

    Hi,
                U need to the following
               1.Create another window
               2.Create a view in it tat contains Interacive form element.
               3. call this window dynamically thru the first window by creating a context element of IWDWindow  type
    The code may help:
      IWDWindowInfo windowInfo =(IWDWindowInfo) wdComponentAPI.getComponentInfo().findInWindows("SearchEmpwind");
          IWDWindow window = wdThis.wdGetAPI().getComponent().getWindowManager().createWindow(windowInfo, true);
          window.setWindowPosition(WDWindowPos.CENTER);
          window.setWindowSize(400, 250);
          window.open();
          wdContext.currentContextElement().setEmpSearchWind(window);
    Regards
    Ishita

  • How to display an image, which is stored in a database?

    Hi All,
    I would like to display an image with Web Dynpro.
    I already know how to display an image which is stored in the path src/mimes/Components/...
    But does anybody knows, how to display an image which is stored in a database (e.g. MaxDB)as a datatype of binary?
    Thanks in advance!
    Regards,
    Silvia

    Hallo John,
    yes, you can use the Image UI element.
    Further you have to create a String for the URL. Implement like as follows:
    IWDCachedWebResource cachedResource = null;
    String imgUrl = null;
    WDAttributeInfo attInfo = wdContext.getNodeInfo().getAttribute(IPrivateXYView.IXYElement.PIC_DB);
    IWDModifiableBinaryType binaryType =
                   (IWDModifiableBinaryType) attInfo.getModifiableSimpleType();
    binaryType.setMimeType(WDWebResourceType.JPG_IMAGE);//Example *.jpg
    WDWebResourceType type = binaryType.getMimeType();
    byte[] file = wdContext.currentXYElement().getPicDB();
    if (file != null)
    cachedResource = WDWebResource.getWebResource(file, type);
    try
    imgUrl = cachedResource.getURL();
    catch (WDURLException e)
    IWDMessageManager msgMgr = wdComponentAPI.getMessageManager();
                        msgMgr.reportException(e.getLocalizedMessage(), true);
    I hope it will help you.
    Regards,
    Silvia

Maybe you are looking for