Access SAP Tables from Java Program

Hi All,
We have a requirement to integrate attendance portal(which is done in java) with SAP.
Our problem is how to access SAP tables from a Java program?
Database is Sybase.
Please suggest us a good solution.
Thanks in advance...

Did you go through Sap Help?
Calling BAPIs from Java - BAPI User Guide CA-BFA) - SAP Library
Regards,
Philip.

Similar Messages

  • Access SAP BW from Java

    Hello,
    I need to build a Java web application that can collect and display data from various SAP BWs.
    Write operations are not required. What is the easiest way to do that?
    I found that SAP Open Hub Service lets you extract the data to a CSV file or a relational table.
    Assuming I go the way of creating a relational table, the following questions arise:
    - Where are those tables stored? Still within SAP BW or in an external relational DBMS (e.g. an Oracle database)?
    - How can I access those tables from within my Java code (just through a standard JDBC driver)?
    - Who initiates the population of those tables?
    - Can I trigger the extraction at a given time from within my java code?
    - If so, can I hand in filter critera, so that the table is populated only with data that matches my filter, or do I need to extract all data to the relational table and then filter at the next step?
    - Can I have a timer in the SAP BW that creates the table on a certain schedule (e.g. once per day)?
    What other (easier) options are there to achieve this task?
    Thanks,
    MARK
    Edited by: M. Arnold on Aug 17, 2010 9:50 AM

    Mark,
    What you can look at are :
    1. Use a JDBC connector to connect to the database directly - this has some obvious disadvantages because the data would have to be linked with the SID tables , text tables and Dimension tables for cubes which makes the process extremely cumbersome
    2. Use Openhub to extract to a relational table and access the same - possible , but you have two steps in between - openhub to update table and then access the table while maintaining data consistency - this might become a maintenance nightmare once you heavily use this concept
    3. Use web services - there are standard web services like query_view_data and rfc_read_tale which you can use - these web services are SOAP based and you should be able to use the same in your JAVA application
    4. Use the BI JAVA SDK to connect to the backend through an API supported by SAP - this would be easy to use - the SDk should be available on SCN or on the support marketplace and you shoiuld be able to use the same quite easily
    5. Use JCO and build the application using NWDS where you have native connectivity to SAP BW using JCO
    6. Use Web Dynpro JAVA to develop your application where you should be able to access the necessary APIs wherever required.
    Edited by: Arun Varadarajan on Aug 17, 2010 8:15 PM

  • Insert into SAP table from external program

    Hi Gurus,
    I need to perform an insert of several records into a couple of SAP tables from an external program.
    Do you know of an RFC (if it is remote enabled the better) that allows me to specify the table and records to perfom an insert?
    Many thanks
    Mauricio Pego

    I don't know ABAP and wanted to avoid writing my own function if one standard exists.
    My requirement stands like this, I have a few z tables that need to populate from my C# application by use of the .Net connector.
    I haven't found a BAPI or RFC that allows me to add records to any table, but I don't know all the RFCs.
    May be one of you passed throu this already.
    Mauricio

  • Accessing SAP Tables from a Java application

    Hi,
    I know, the forum is called "Web Application Server" but because it's Java question I hope to get answers here.
    I have a small stand-alone Java application that needs to access (read-only) all records from a SAP table. Is there a possibility to do this without writing a BAPI before?
    thanks a lot
    Paul

    Hi Paul,
    You can use JCo to call the standard remote-enabled function RFC_READ_TABLE. There is one annoyance involved with this function, though: each row of data returned is packed into a single string, so you must either specify a delimiter and use e.g. String.split(...) to parse out the column values or use the returned metadata to extract each value based on position and length attributes of the column.
    Another option (although this is usually not allowed in a productive environment) is to establish a direct JDBC connection to the database, thus bypassing the ABAP application layer entirely.
    Regards,
    Thorsten

  • How to access system calls from java program?

    i am having a doubt regarding accessing system calls from a Java program like accessing unix system calls from a c program.

    Runtime.getRuntime().exec("line command here");
    example:
    Runtime.getRuntime().exec("ls -la");

  • MS Access Date problem (from Java program)

    I have written an app. in Java that reads & writes data from a MS Access database.
    I am trying to write an insert class which will add a row of data to one of my database tables - which contains Date fields.
    My problem is that I can update the text fields, but not Date fields - every time I try my program throws an exception:
    java.sql.SQLException: [Microsoft][ODBC Microsoft Access Driver] Syntax error in INSERT INTO statement
    My simplified code reads as:
    try {
    Statement insertStatement = databaseConnection.createStatement();
    String query = "INSERT INTO myTable(jobId, employeeId, date) VALUES('11', '1', " + "'13/11/2006'" + ");";
    insertStatement.execute(query);
    } //close, etc. etc.
    If I remove the date info from the query, the program executes successfully. I appreciate my problem might be related to the formatting of the date in Access, and if not a 'proper' Java question I give my apologies.
    I have attempted several formats of the date with no success or variation in the exception.
    I am, however, completely stuck and would appreciate any and all help given.
    Regards and thanks
    David

    I have amended my code to use a preparedStatement, but on execution I have the same problem.
    My code is as follows:
    PreparedStatement pstmt = null;
    try {
    String query = "INSERT INTO myTable (jobId, employeeId, date) VALUES(?, ?, ?);";
    pstmt = databaseConnection.prepareStatement(query);
    pstmt.setString(1, "11");
    pstmt.setString(2, "1");
    java.sql.Date sqlDate = getCurrentJavaSqlDate();
    pstmt.setDate(3, sqlDate);
    // execute query, and return number of rows created
    int rowCount = pstmt.executeUpdate();
    System.out.println("rowCount=" + rowCount);
    pstmt.close();
    catch, etc. etc.
    Any ideas or help most welcome
    Regards
    David

  • Can we access PI tables from WebDynpro Java via PI 7.1?

    Hi Experts
    Is it possible to fetch PI Tables (to display monitoring and alerts as dashboard on portal) from Java Stack. I got some javadocs API SAP Netweaver for PI 7.1 but i don't know how far it can help me in solving my purpose of fetching and displaying the PI monitoring data on Portal.
    https://www.sdn.sap.com/irj/sdn/javadocs
    Please advise if J2EE access to PI Tables is possible or RFC is the suggested solution to fetch PI Monitoring data.
    Thanks
    Neha

    Hi Neha,
    You can access PI tables from Webdynpro Java application using RFC or Webservices. Create RFC or Webservices which will fetch data from the PI tables.Create the required JCO's and the Webdynpro java application which uses the Adaptive RFC model or Adaptive Webservice Model to connect to the ECC system.
    I found a document that speaks about fetching data from SXMB_MONI Standard Table https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/b050ff4f-84c3-2b10-3d99-8f9c44f57a17
    Hope this is useful.
    Regards,
    Seema Rane.

  • JMS: can I access SAP messages from extenal Java

    - Can I access SAP Messages from an external (non-SAP) java program?
    - Do I use JNDI or can I call using a jar file from my java invocation?
    - Do I have to define a queue (or does SAP JMS have queues)
    - What port do I use?
    Thanks

    Hi John,
    > - Can I access SAP Messages from an external
    > (non-SAP) java program?
    >
    Yes, you can use the JMS provider on the Web AS from a standalone java program.
    > - Do I use JNDI or can I call using a jar file from
    > my java invocation?
    You connect your remote java client to the server by getting an InitialContext. The you lookup the JMS resources (such as Topic- or Queue ConnectionFactory, etc.) from the JNDI. You can have a look at <a href="http://help.sap.com/saphelp_nw04/helpdata/en/25/bf8f44540c469abc19fb6ac3ac7885/frameset.htm">this</a> page for more info.
    >
    > - Do I have to define a queue (or does SAP JMS have
    > queues)
    >
    The JMS Provider on the Web AS provides default connection factories that you can use to create a topic ot queue. The lookup strings you have to use are
    jmsfactory/default/TopicConnectionFactory
    for topics and
    jmsfactory/default/QueueConnectionFactory
    for queues.
    > - What port do I use?
    >
    You use the P4 port (50004 by default for instance number 00) when obtaining the InitialContext with this code:
    java.util.Properties properties = new Properties();
    // set the properties of the connection
    properties.put("Context.INITIAL_CONTEXT_FACTORY", "com.sap.engine.services.jndi.InitialContextFactoryImpl");
    properties.put(Context.PROVIDER_URL, "<Server_Host>:<p4_port>");
    properties.put("Context.SECURITY_PRINCIPAL", "Administrator");
    properties.put("Context SECURITY_CREDENTIALS", "admin_password");
    // start initial context with the properties specified
    InitialContext context = new InitialContext(properties);
    Hope that helps!

  • How to access database file on CDROM from Java Programe??

    Hello friends,
    I am making online exam application.
    I want my question database to be reside on CDROM.
    but i am not getting any idea how to make DSN or static path that resolute the path that i have mentioned for CDROM.
    basically i want to know how to access CDROM from Java Programe????
    Thanks in advance
    Navik Pathak

    Once you mounted the CDROM (something maybe as /media/cdrom) as a file system (or assigned a drive letter to it like D: or F: or whatever), the files are accessible normally.

  • Access ABAP Table using Java (NWDS/JCO)

    All,
    I am trying to setup a jco connection from java program through NWDS to ECC abap table.
    However I am getting the following error in NWDS:
    Exception in thread "main" java.lang.ExceptionInInitializerError: JCO.classInitialize(): Could not load middleware layer 'com.sap.mw.jco.rfc.MiddlewareRFC'
    JCO.nativeInit(): Could not initialize dynamic link library sapjcorfc [C:\Program Files\Java\jdk1.6.0_45\bin\sapjcorfc.dll: Access is denied]. java.library.path [C:\Program Files\Java\jdk1.6.0_45\bin;.]
    and a parity error on my system:
    "Parity blocked an attempt by javaw.exe to run sapjcorfc.dll because the file is not approved.  If you require access to this file, please contact your system administrator.  Scroll down for diagnostic data."
    Here is the Java code...per the SAP website:
    package com.sap.pi.updateAbapSxmbAdminParams;
    import com.sap.mw.jco.*;
    public class ReadPiAbapTables {
      private static JCO.Client theConnection;
      private static IRepository theRepository;
      public static void main(String[] args) {
       createConnection();
       retrieveRepository(); 
       try {
        JCO.Function function = getFunction("RFC_READ_TABLE");
        JCO.ParameterList listParams = function.getImportParameterList();
        listParams.setValue("BSAUTHORS", "QUERY_TABLE");
        theConnection.execute(function);
        JCO.Table tableList = function.getTableParameterList().getTable("SXMSCONFVLV");
        if (tableList.getNumRows() > 0) {
         do {
          for (JCO.FieldIterator fI = tableList.fields();
          fI.hasMoreElements();)
           JCO.Field tabField = fI.nextField();
           System.out.println(tabField.getName()
             + ":t" +
             tabField.getString());
          System.out.println("n");
         while (tableList.nextRow() == true);
       catch (Exception ex) {
        ex.printStackTrace();
      private static void createConnection() {
       try {
        theConnection = JCO.createClient("aaa", "aaa", "aaa", "aa", "aa", "aa");
        theConnection.connect();
       catch (Exception ex) {
        System.out.println("Failed to connect to SAP system");
      private static void retrieveRepository() {
       try {
        theRepository = new JCO.Repository("saprep", theConnection);
       catch (Exception ex)
        System.out.println("failed to retrieve repository");
      public static JCO.Function getFunction(String name) {
       try {
        return theRepository.getFunctionTemplate(name.toUpperCase()).getFunction();
       catch (Exception ex) {
        ex.printStackTrace();
       return null;

    Hi Vicky,
    You need authorization to the S_TABU_DIS object, talk with the ABAP basis team about this to find the more restrictive role.
    It's not a good idea to use the RFC_READ_TABLE, for the wide permissions needed. You could think to develop a Z RFC for this.  You can check pros/cons in this document: http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/a83ec690-0201-0010-14ac-bd1d75e24a7d?overridelayout=t…
    Regards.

  • Accessing ECC tables from XSLT mapping

    Hi All,
    I have requirement where I need to access a SAP table from PI XSLT mapping.
    Pls provide inputs on how to achieve it.
    Thanks,
    Navneeth K.

    Hello,
    You can refer to this document found in SAP Help
    http://help.sap.com/saphelp_nw04/helpdata/en/55/7ef3003fc411d6b1f700508b5d5211/frameset.htm
    And a sample blog
    /people/pooja.pandey/blog/2005/06/27/xslt-mapping-with-java-enhancement-for-beginners
    In your case, the idea is to call a java class inside the xslt mapping. So to access the ECC table, you can use a Java Mapping Class so that it would be easier to implement an RFC lookup.
    Hope this helps,
    Mark

  • 1)unexpected Exception:page fault accessing tag table 2)java.rmi.MarshalException:Unexpected Exception page fault accessing page table

    i am trying to call WCF service by using Jsr 172 method
    but i got the two error
    1)unexpected Exceptionage fault accessing tag table
    2)java.rmi.MarshalException:Unexpected Exception page fault accessing page table
    does anybody knows about how to solve this error.
    Plz help me
    thanks in advance!!!!!!!!!!!
      My Code is:-----
    package com.rim.sample.webservicedemo;
    import java.rmi.RemoteException;
    import net.rim.device.api.ui.Field;
    import net.rim.device.api.ui.FieldChangeListener;
    import net.rim.device.api.ui.UiApplication;
    import net.rim.device.api.ui.component.ButtonField;
    import net.rim.device.api.ui.component.Dialog;
    import net.rim.device.api.ui.container.MainScreen;
    public class webservice extends UiApplication
        public webservice()
            pushScreen(new myscreen());
        public static void main(String[] args)
            webservice t=new webservice();
            t.enterEventDispatcher();
    final class myscreen extends MainScreen implements FieldChangeListener
        //taking this program from :-http://blog.bayestech.com/?p=78
         public myscreen()
             setTitle("HI");
             ButtonField g=new ButtonField("OK",ButtonField.CONSUME_CLICK);
             g.setChangeListener(this);
             add(g);
        public void fieldChanged(Field field, int context)
            try
                testServiceCall();
            catch (RemoteException e)
                Dialog.alert(e.getMessage());
                Dialog.alert(e.toString());
         public void testServiceCall() throws RemoteException
                TestService_Stub service = new TestService_Stub();
                //String  message = service.helloWorld();
               // Dialog.alert(message);
              // String  message2=service.echoName("ankush,nilesh,chetan,ravi");
                //Dialog.alert(message+"  second message  "+message2);
                // Object addition_output=service.addition(7,2);
                 //Dialog.alert("your addition is" +  String.valueOf(addition_output));
                 String  login_message = service.logOn_method("abcdefg","aaaaa");
                 Dialog.alert("login successfully");
                 Dialog.alert(login_message);
    //////////////TestService_Stub class file///////////////////////
    package com.rim.sample.webservicedemo;
    import java.rmi.RemoteException;
    import javax.xml.rpc.JAXRPCException;
    import javax.xml.namespace.QName;
    import javax.microedition.xml.rpc.Operation;
    import javax.microedition.xml.rpc.Type;
    import javax.microedition.xml.rpc.ComplexType;
    import javax.microedition.xml.rpc.Element;
    import net.rim.device.api.ui.component.Dialog;
    public class TestService_Stub implements TestService,javax.xml.rpc.Stub
        ///calling web services by using jsr-172 method
        //website link :- http://blog.bayestech.com/?p=78
        private String[] _propertyNames;
        private Object[] _propertyValues;
      //  private Object[] _propertyValues1;
        public TestService_Stub()
            _propertyNames = new String[] { ENDPOINT_ADDRESS_PROPERTY };
           // _propertyValues = new Object[] { "http://test.bayestech.com/Services/TestService.asmx" };
          // _propertyValues = new Object[] { "http://soft21/testWCF/Service.svc" };
            _propertyValues = new Object[] { "< url name >" };
     protected void _prepOperation(Operation op)
            for (int i = 0; i < _propertyNames.length; ++i)
                op.setProperty(_propertyNames[i], _propertyValues[i].toString());
     public String logOn_method(String usr_name,String password_name ) throws java.rmi.RemoteException
          Object inputObject[] = new Object[]
                  usr_name,
                  password_name
          Operation op = Operation.newInstance( _qname_operation_logOn, _type_logOn, _type_logOnResponse );
          _prepOperation( op );
          op.setProperty( Operation.SOAPACTION_URI_PROPERTY, "<soap action name >" );
          Object resultObj;
          try
              resultObj = op.invoke( inputObject );
              Dialog.alert((String)resultObj);
          catch( JAXRPCException e )
              Throwable cause = e.getLinkedCause();
              if( cause instanceof java.rmi.RemoteException )
                  throw (java.rmi.RemoteException) cause;
              Dialog.alert(e.getMessage());
              throw e;
          return (String )((Object[])resultObj)[0];
     protected static final QName _qname_operation_logOn = new QName( "<soap action name>", "logOn" );
        protected static final QName _qname_logOnResponse = new QName( "<soap action name>", "logOnResponse" );
        protected static final QName _qname_logOn = new QName( "<soap action name>", "logOn" );
        protected static final Element _type_logOn;
        protected static final Element _type_logOnResponse;
        static
     _type_logOn = new Element( _qname_logOn, _complexType( new Element[] {
                 new Element( new QName( "<soap action name>", "usr_name" ), Type.STRING, 0, 1, false ),
                 new Element( new QName( "<soap action name>", "password_name" ), Type.STRING, 0, 1, false )}), 1, 1, false );
            _type_logOnResponse = new Element( _qname_logOnResponse, _complexType( new Element[] {
                  new Element( new QName( "<soap action name>", "logResult" ), Type.INT, 0, 1, false )}), 1, 1, false );
        private static ComplexType _complexType( Element[] elements )
            ComplexType result = new ComplexType();
            result.elements = elements;
            return result;
        public void _setProperty(String name, Object value) {
            // TODO Auto-generated method stub
        public Object _getProperty(String name) {
            // TODO Auto-generated method stub
            return null;
        public String echoName(String name) throws RemoteException {
            // TODO Auto-generated method stub
            return null;
        public String helloWorld() throws RemoteException {
            // TODO Auto-generated method stub
            return null;
    i am trying to call WCF service by using Jsr 172 method
    but i got the two error
    1)unexpected Exceptionage fault accessing tag table
    2)java.rmi.MarshalException:Unexpected Exception page fault accessing page table
    does anybody knows about how to solve this error.
    Plz help me
    thanks in advance!!!!!!!!!!!
      My Code is:-----
    package com.rim.sample.webservicedemo;
    import java.rmi.RemoteException;
    import net.rim.device.api.ui.Field;
    import net.rim.device.api.ui.FieldChangeListener;
    import net.rim.device.api.ui.UiApplication;
    import net.rim.device.api.ui.component.ButtonField;
    import net.rim.device.api.ui.component.Dialog;
    import net.rim.device.api.ui.container.MainScreen;
    public class webservice extends UiApplication
        public webservice()
            pushScreen(new myscreen());
        public static void main(String[] args)
            webservice t=new webservice();
            t.enterEventDispatcher();
    final class myscreen extends MainScreen implements FieldChangeListener
        //taking this program from :-http://blog.bayestech.com/?p=78
         public myscreen()
             setTitle("HI");
             ButtonField g=new ButtonField("OK",ButtonField.CONSUME_CLICK);
             g.setChangeListener(this);
             add(g);
        public void fieldChanged(Field field, int context)
            try
                testServiceCall();
            catch (RemoteException e)
                Dialog.alert(e.getMessage());
                Dialog.alert(e.toString());
         public void testServiceCall() throws RemoteException
                TestService_Stub service = new TestService_Stub();
                //String  message = service.helloWorld();
               // Dialog.alert(message);
              // String  message2=service.echoName("ankush,nilesh,chetan,ravi");
                //Dialog.alert(message+"  second message  "+message2);
                // Object addition_output=service.addition(7,2);
                 //Dialog.alert("your addition is" +  String.valueOf(addition_output));
                 String  login_message = service.logOn_method("abcdefg","aaaaa");
                 Dialog.alert("login successfully");
                 Dialog.alert(login_message);
    //////////////TestService_Stub class file///////////////////////
    package com.rim.sample.webservicedemo;
    import java.rmi.RemoteException;
    import javax.xml.rpc.JAXRPCException;
    import javax.xml.namespace.QName;
    import javax.microedition.xml.rpc.Operation;
    import javax.microedition.xml.rpc.Type;
    import javax.microedition.xml.rpc.ComplexType;
    import javax.microedition.xml.rpc.Element;
    import net.rim.device.api.ui.component.Dialog;
    public class TestService_Stub implements TestService,javax.xml.rpc.Stub
        ///calling web services by using jsr-172 method
        //website link :- http://blog.bayestech.com/?p=78
        private String[] _propertyNames;
        private Object[] _propertyValues;
      //  private Object[] _propertyValues1;
        public TestService_Stub()
            _propertyNames = new String[] { ENDPOINT_ADDRESS_PROPERTY };
           // _propertyValues = new Object[] { "http://test.bayestech.com/Services/TestService.asmx" };
          // _propertyValues = new Object[] { "http://soft21/testWCF/Service.svc" };
            _propertyValues = new Object[] { "< url name >" };
     protected void _prepOperation(Operation op)
            for (int i = 0; i < _propertyNames.length; ++i)
                op.setProperty(_propertyNames[i], _propertyValues[i].toString());
     public String logOn_method(String usr_name,String password_name ) throws java.rmi.RemoteException
          Object inputObject[] = new Object[]
                  usr_name,
                  password_name
          Operation op = Operation.newInstance( _qname_operation_logOn, _type_logOn, _type_logOnResponse );
          _prepOperation( op );
          op.setProperty( Operation.SOAPACTION_URI_PROPERTY, "<soap action name >" );
          Object resultObj;
          try
              resultObj = op.invoke( inputObject );
              Dialog.alert((String)resultObj);
          catch( JAXRPCException e )
              Throwable cause = e.getLinkedCause();
              if( cause instanceof java.rmi.RemoteException )
                  throw (java.rmi.RemoteException) cause;
              Dialog.alert(e.getMessage());
              throw e;
          return (String )((Object[])resultObj)[0];
     protected static final QName _qname_operation_logOn = new QName( "<soap action name>", "logOn" );
        protected static final QName _qname_logOnResponse = new QName( "<soap action name>", "logOnResponse" );
        protected static final QName _qname_logOn = new QName( "<soap action name>", "logOn" );
        protected static final Element _type_logOn;
        protected static final Element _type_logOnResponse;
        static
     _type_logOn = new Element( _qname_logOn, _complexType( new Element[] {
                 new Element( new QName( "<soap action name>", "usr_name" ), Type.STRING, 0, 1, false ),
                 new Element( new QName( "<soap action name>", "password_name" ), Type.STRING, 0, 1, false )}), 1, 1, false );
            _type_logOnResponse = new Element( _qname_logOnResponse, _complexType( new Element[] {
                  new Element( new QName( "<soap action name>", "logResult" ), Type.INT, 0, 1, false )}), 1, 1, false );
        private static ComplexType _complexType( Element[] elements )
            ComplexType result = new ComplexType();
            result.elements = elements;
            return result;
        public void _setProperty(String name, Object value) {
            // TODO Auto-generated method stub
        public Object _getProperty(String name) {
            // TODO Auto-generated method stub
            return null;
        public String echoName(String name) throws RemoteException {
            // TODO Auto-generated method stub
            return null;
        public String helloWorld() throws RemoteException {
            // TODO Auto-generated method stub
            return null;

    Vishnu,
    I'm working on Ludwig's testcase.
    Ludwig's testcase is based on read-only View Objects.
    Is it also the case in your application ?
    I was unable to reproduce with VOs based on EOs.
    With read-only VOs, you can avoid the ArrayIndexOutOfBoundsException by setting the "Key Attribute" property for the PK of the Master VO.
    See the ADF Developer's Guide, topic "7.9.3 What You May Need to Know About Enabling View Object Key Management for Read-Only View Objects"
    URL: http://download-uk.oracle.com/docs/html/B25947_01/bcvoeo009.htm#BABJEEFA
    Regards,
    Didier.

  • How to Access Maintenance View from a program

    Hi Experts,
    I have created a maintenance view for a table. i want to insert data's into the table through the maintenance view. I don't know how to access the view, how to insert data into the Maintenance view. Please suggest me how to access the view from the program.
    with regards,
    James...
    Valuable answers will be rewarded...

    Hi,
    What is the need to search for a program.
    Use transaction SM30 or SE16 to create or maintain entries in the table.
    e.g. if the Maintenance view is created on table A, then Goto transaction SM30 or SE16 and give the table name as A and proceed. This will automatically take u to the maintenance view on tha table A.
    Regards,
    Himanshu

  • Accessing dictionary tables from dynpro?

    Hi all
    As far as i know, there are 4 approches to access dictionary tables from webdynpro.
    -entity bean
    -sqlj
    -jdbc
    what are the advantages and disadvantages for all above?
    and which one to go for?

    Hi swathi
    See the persistence API--Adv and Disadvantages what ever you mentioned come under the persistence API
    Relational Persistence
    =================
    SQL-based coding: expressive!
    SQLJ: for static SQL, checked at design time,
    recommended
    JDBC: for dynamic SQL, can be combined with SQLJ
    =======================
    Object-relational Persistence
    ======================
    SQL-free! Portable!
    JDO: light-weight object persistence, Java-like dynamic
    query language
    EJB CMP: part of J2EE standard, relatively heavy-weight,SQL-like static query language
    Regards,
    Venkata Kalyan Karanam

  • How to View Tables from java side from NWDS/NWDI?

    HI All,
    I want to view the following tables from java side
    CRM_ISA_ADDRESS
    CRM_ISA_BASKETS
    CRM_ISA_BUSPARTNER
    CRM_ISA_EXTCONFIG
    CRM_ISA_EXTDATHEAD
    CRM_ISA_EXTDATITEM
    CRM_ISA_ITEMS
    CRM_ISA_OBJECTID
    CRM_ISA_SHIPTOS
    CRM_ISA_TEXTS
    How can I view them using NWDS/NWDI?
    Which DC has this tables?
    Could you please help me with the procedure to view them?
    Thanks and Regards,
    Gauri

    Hi All,
    crm/isa/isacoreddic and crm/isa/shopddic in SAP-CRMDIC are having these tables.
    Thanks and Regards,
    Gauri

Maybe you are looking for