Tranfer data from a jdialog to a frame!

Hello, everybody?!That is my doubt!!There's a jtable inside a jdialog, when a row was selected, and the "enter" key was pressed, i'd like to send the data to a frame (main).How could i create that?Thanks!!

here's something rough - just sets the selection as the label's text. modify for the row data
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.table.*;
class Testing
  JLabel selection = new JLabel("Selected Value = ");
  public void buildGUI()
    JButton btn = new JButton("Get Selection");
    final JFrame f = new JFrame();
    f.getContentPane().add(selection,BorderLayout.NORTH);
    f.getContentPane().add(btn,BorderLayout.SOUTH);
    f.setSize(200,80);
    f.setLocationRelativeTo(null);
    f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    f.setVisible(true);
    btn.addActionListener(new ActionListener(){
      public void actionPerformed(ActionEvent ae){
        final JDialog d = new JDialog();
        Object[] cols = {"A","B","C"};
        Object[][] data = {{1,2,3},{4,5,6},{7,8,9},{10,11,12},{13,14,15}};
        final JTable table = new JTable(data,cols){
          public boolean isCellEditable(int row, int col){
            return false;
        JScrollPane sp = new JScrollPane(table);
        sp.setPreferredSize(new Dimension(100,100));
        d.setModal(true);
        d.setDefaultCloseOperation(JDialog.DO_NOTHING_ON_CLOSE);
        d.getContentPane().add(sp);
        d.pack();
        d.setLocationRelativeTo(f);
        Action enterAction = new AbstractAction(){
          public void actionPerformed(ActionEvent ae){
            selection.setText("Selected Value = " +
            table.getValueAt(table.getSelectedRow(),table.getSelectedColumn()));
            d.dispose();
        InputMap im = table.getInputMap(JTable.WHEN_FOCUSED);
        KeyStroke enter = KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, 0);
        im.put(enter, "enter");
        table.getActionMap().put(im.get(enter), enterAction);
        d.setVisible(true);
  public static void main(String[] args)
    SwingUtilities.invokeLater(new Runnable(){
      public void run(){
        new Testing().buildGUI();
}

Similar Messages

  • Returning data from child jdialog...problem

    Hello
    I have a parent form which calls a jdialog. I need to return data from the jdialog.
    So i have this class which contains the varaibles i want to set.
    public class ProtocolRecordType {
    public int num;
    public String name;
    I from my main i call this class and method. Now i seem to be able to set object values to try and do a pass by reference in teh constructor, but if i use the same variable in a method it says unresolved symbol. Most of the code was generated with netbeans ide.
    Can anybody explain this to me ?
    Thanks
    public class ProtocolsDialog extends javax.swing.JDialog {
    / Creates new form ProtocolsDialog */
    public ProtocolsDialog(java.awt.Frame parent, boolean modal, ProtocolRecordType protocol ) {
    super(parent, modal);
    initComponents();
    System.out.println("done constructor");
    // public int y=0;
    protocol.name="protoname"; <==========setting it here works, i can print this out when it returns to parent frame.
    private void Protocol1ActionPerformed(java.awt.event.ActionEvent evt) {
    // TODO add your handling code here:
    //protocol.name="aaaa";
    // ProtocolRecordType.name="";
    System.out.println("proto1 selected");
    protocol.name=("xxxtest"); +<=================this says cannot find symbol protocol.name+
    }

    Check out tjacobs.ui.dialogs.ParamDialog and tjacobs.ui.ex.SetupPane in TUS for two easy ways to do this

  • Passing data from a panel to a frame / disposing of a frame from in a panel

    Hello, I have recently created a program where all windows are made of seperate frames, now, to make the whole thing a bit more appealing and professional looking, i'd like to make 1 main frame, and load my content panels into this 1 frame. Problem i'm having with this is passing data from the loaded in panel to the main frame, so the main frame can hide one panel to load another with data inserted in the first panel. OR another solution to my problem would be a way to dispose of a frame, but from within the seperate panel class. I have searched the www for a solution, but haven't found one so far, so, any suggestions or references to some info about this kind of issue? Any pointer is greatly appreciated

    kennethdm wrote:
    EDIT: I took a look at the cardlayout, and, although i see its relevance to my question, it still leaves me with the question how exactly i will pass data the user inputs into the first panel, to the second panel. The second panel is built by the info which is provided in the first panel.Stop thinking of them as Panels and start thinking of them as OOP objects that have data that must be shared. It's often a matter of using getters and setters and sometimes requiring a sprinkling of the Observer design pattern.

  • I have macbook pro 13.3 inch ..mac os lion 10.7.5   i want to tranfer data from macbook to external hard disk  without loosing data which in already in extrnl drive

    i want to take back up of my macbook . so i have external hard disk around 1 tb and already have 230 used ...when i transfer manually with out time machine ....because i want to tranfer into windows .....so how to change ntfs into fat32 without loosing data in external harddisk ?

    You don't have to change NTFS to FAT.
    Just install Paragon NTFS and you'll be able to transfer your data to your external HDD even if it is NTFS.

  • Passing data from one frame to another frame

    hello all, i am having a problem with passing data from one frame from another. I have a main frame when you click on connect button it display the second frame(class) that has 2 text fields and 2 buttons. When i click on connect it check if the data is correct. If the data is correct i want that frame to close and pass the data back to main frame. How can i do that.
    thank you

    hello all, i am having a problem with passing data
    from one frame from another. I have a main frame when
    you click on connect button it display the second
    frame(class) that has 2 text fields and 2 buttons.
    When i click on connect it check if the data is
    correct. If the data is correct i want that frame to
    close and pass the data back to main frame. How can
    i do that.
    thank you
    the original problem sounded like an ideal opportunity to use Modal Dialog. if you want one frame to display another to get user input then you need to stop the method in the main frame from executing until you recieve a valid input.
    you can use your own class and keep all of the components that you have in the connect frame but you would have to extend JDialog instead of JFrame.
    there is a way around it!
    if you must use JFrame for both, then you need to have access to the main frame in the connect frame, maybe pass the pointer to the constructor??
    anyway, when the connect frame is done with its duties, you have to use the pointer to call another method in the main frame that will continue the process. otherwise main frame doesn't know when connect frame is done and by that time, the method in main frame that instantiated the connect frame has long since died.
    also, it allows things to happen in the other window that you may not want to happen until the connect frame is done
    typically users of software start clicking around on things and you could have three or four connect frames going at the same time
    it's really best to use a Modal Dialog, it really can look just like a JFrame!!!!!!!!!!!!!!

  • JDialog - gettting data from j

    hi!
    I have created class(say A) extending JInternaFrame and also I have created a class (Say B) extending JDialog. I am trying to call an instance(IB) of B from an instance(A) of A. I am setting the modal to true in the B. when I enter some data in IB I have to pass the data to IA. I could not do this. Can anyone please let me know where I am going wrong in the logical flow? I have tried using the "JDialog(Dialog owner, String title, boolean modal) " constructor as well but this gives a class caste exception.
    Below is the code...
    =========
    class A
    private void getDialogData(){
    IA dmnsnInfo = new IA(strScrnFlag,
    strFactType,
    strDmnsnTypeId,
    hshDmnsnIdName,
    "",this);
    // I need the data of the IB to be accessed here.
    ======
    Constructor of 'B' which extends JDialog . I've tried using both the constructors of JDialog
    public IB(Frame owner, String title, boolean modal) //this gives class caste exception
    //public BaseDialog()
    super(owner, "title", true);
    // super.setModal(modal);
    Please let me know where I am going wrong..
    Thanks,
    Sachin Parandker

    In general the way to retrieve data from dialogs is to put the data into fields within the dialog. Then you retrieve them after the dialog is disposed. Note though that the use of JDialog is not recommended in a MDI (Internal Frames) context. Though it basically works JDialogs are too modal, they lock out other window activity.
    So you do something like (using JDialog).
    class MyDialog extends JDialog {
      String resultsString = null;
      public MyDialog(Frame dlgFrame) {
        super(dlgFrame, "A Title", true);
        JButton ok = new JButton("OK");
        ok.addActionListener(new ActionListener() {
         public void actionPerformed(ActionEvent e) {
           resultsString = editField.getText();
           dispose();
    public void doDialog(Frame parent) {
      MyDialog new MyDialog(parent);
      dlg.show();
      // doesn't get here until dialog is closed
      if(dlg.resultString != null) {
         theValue = dlg.resultString;
         } else {
    .. dialog was cancelled
    }You can use a JInternalFrame as a "thread modal" dialogue which suspends just the thread that calls it, rather than the whole GUI. After the invoking code invokes show() it should wait() on some convenient object.
    Then overide the dispose method of the JInternalFrame so that (having called super.dispose(), it notifies the object in question and ends the wait. However it's crucial that you don't do this from the AWT event dispatching thread (which is likely to happen if it's run directly from an event).

  • Data from a frame to another (bis)

    Hi,
    I have a first Frame DataPanelCli, when I use the button "Rechercher" in the class ButtonPanelCli, I find the informations of my company in the class FindRecCli. After when I use the button "STRUCTURE", I use the JFrame StructRecCli BUT I CAN NOT show the data coming from my first Frame.
    Here is the programme, could you please help me.
    regards.
    Thierry
    import java.util.*;
    import java.sql.*;
    import java.io.*;
    import java.awt.event.*;
    import java.awt.*;
    import java.awt.Container;
    import javax.swing.*;
    import javax.swing.table.*;
    import java.text.*;
    import java.lang.String;
    public class AppClient extends JFrame {
         private DataPanelCli screenvarcli;
         private JTextArea msgout;
         private Connection dbconn;
         public AppClient() {
              //titre fen�tre
              super( " APPLICATION CLIENT");
              // set up GUI environment
              Container p = getContentPane();
              screenvarcli = new DataPanelCli();
              msgout = new JTextArea( 8, 40);
              p.setLayout( new FlowLayout() );
              p.add( new JScrollPane(screenvarcli) );
              p.add( new JScrollPane(msgout) );
              // DB Connection
              try {
                   String url = "jdbc:odbc:Access";
                   Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
                   // Cr�ation d'une liaison
                   dbconn = DriverManager.getConnection(url, "dba", "sql" );
                   msgout.append("Connection successful !\n");
              catch (ClassNotFoundException cnfex) {
                   cnfex.printStackTrace();
                   msgout.append("Connection unsuccessful\n" +
                        cnfex.toString());
              catch (SQLException sqlex) {
                   sqlex.printStackTrace();
                   msgout.append("Connection unsuccessful\n" +
                        sqlex.toString());
              catch (Exception excp) {
                   excp.printStackTrace();
                   msgout.append(excp.toString());
              // Complete GUI
              ButtonPanelCli controls = new
              ButtonPanelCli(dbconn, screenvarcli, msgout);
              p.add(controls);
    //          RadioButtons rb = new RadioButtons(dbconn, screenvarcli, msgout);
    //          p.add(rb);
              setSize(500,475);
              show();
         public static void main( String args[]) {
              AppClient cli = new AppClient();
              cli.addWindowListener(
                   new WindowAdapter() {
                        public void windowClosing(WindowEvent e) {
                             System.exit(0);
    class DataPanelCli extends JPanel {
         JTextField ICCliFact, INSociete,
              ILAdresseA, ICPostal, ILLocalite, ICPays;
         JLabel LCCliFact, LNSociete,
              LLAdresseA, LCPostal, LLLocalite, LCPays;
         public DataPanelCli() {
              //Label Panel
              JPanel labelPanelCli = new JPanel();
              labelPanelCli.setLayout( new GridLayout(6, 1));
              LNSociete = new JLabel( "Nom ", 0);
              labelPanelCli.add(LNSociete);
              LCCliFact = new JLabel( "Num�ro Client", 0);
              labelPanelCli.add(LCCliFact);
              LLAdresseA = new JLabel( "Adresse ", 0);
              labelPanelCli.add(LLAdresseA);
              LCPostal = new JLabel( "Code Postal ", 0);
              labelPanelCli.add(LCPostal);
              LLLocalite = new JLabel( "Localite ", 0);
              labelPanelCli.add(LLLocalite);
              LCPays = new JLabel( "Pays ", 0);
              labelPanelCli.add(LCPays);
              //TextField Panel
              JPanel screenvarcliPanel = new JPanel();
              screenvarcliPanel.setLayout( new GridLayout(6, 1));
              INSociete = new JTextField("Enter Name - click RECHERCHER", 20);
              screenvarcliPanel.add(INSociete);
              ICCliFact = new JTextField( 20);
              screenvarcliPanel.add(ICCliFact);
              ILAdresseA = new JTextField( 20);
              screenvarcliPanel.add(ILAdresseA);
              ICPostal = new JTextField( 20);
              screenvarcliPanel.add(ICPostal);
              ILLocalite = new JTextField( 20);
              screenvarcliPanel.add(ILLocalite);
              ICPays = new JTextField( 20);
              screenvarcliPanel.add(ICPays);
              // Accessibility Section - relate labels and text fields
              // for use by assistive technologies
              LNSociete.setLabelFor( INSociete);
              LLAdresseA.setLabelFor( ILAdresseA);
              LCPostal.setLabelFor( ICPostal);
              LLLocalite.setLabelFor( ILLocalite);
              LCPays.setLabelFor( ICPays);
              setLayout( new GridLayout( 1, 2));
              add( labelPanelCli);
              add( screenvarcliPanel);
    class ButtonPanelCli extends JPanel {
         public ButtonPanelCli( Connection dbc, DataPanelCli scv, JTextArea msg ) {
              setLayout( new GridLayout( 2 ,0 ));
              JButton findcli = new JButton( "Rechercher" );
              findcli.addActionListener( new FindRecCli( dbc, scv, msg ));
              add( findcli );
              JButton addcli = new JButton( "Ajouter" );
              addcli.addActionListener( new AddRecCli( dbc, scv, msg ));
              add( addcli );
              JButton clearcli = new JButton( "Clear" );
              clearcli.addActionListener( new ClearScreenCli( scv ));
              add( clearcli );
              JButton printcli = new JButton( "Impression" );
    //          printcli.addActionListener( new PrintRecCli( dbc, scv, msg ));
              add( printcli );
              JButton structcli = new JButton( "STRUCTURE" );
              structcli.addActionListener( new StructRecCli( dbc, scv, msg ));
              add( structcli );
              JButton commerccli = new JButton( "COMMERCIAL" );
    //          commerccli.addActionListener( new CommercRecCli( dbc, scv, msg ));
              add( commerccli );
              JButton financli = new JButton( "FINANCIER" );
    //          financli.addActionListener( new FinanRecCli( dbc, scv, msg ));
              add( financli );
    class ClearScreenCli implements ActionListener {
         private DataPanelCli screenvarcli;
         public ClearScreenCli( DataPanelCli scv ) {
              screenvarcli = scv;
         public void actionPerformed( ActionEvent e ) {
              screenvarcli.ICCliFact.setText( "" );
              screenvarcli.INSociete.setText( "" );
              screenvarcli.ILAdresseA.setText( "" );
              screenvarcli.ICPostal.setText( "" );
              screenvarcli.ILLocalite.setText( "" );
              screenvarcli.ICPays.setText( "" );
    // Recherche Ajout Maj record
    // FIND NUMERO CLIENT
    class FindRecCli implements ActionListener {
         private DataPanelCli screenvarcli;
         private JTextArea msgout;
         private Connection dbconn;
         public FindRecCli( Connection dbc, DataPanelCli scv, JTextArea msg ) {
              dbconn = dbc;
              screenvarcli = scv;
              msgout = msg;
         public void actionPerformed( ActionEvent e ) {
              try {
                   String rechnom = new String();
                   rechnom = screenvarcli.INSociete.getText();
              if ( !rechnom.equals( "" )) {
                   Statement statement = dbconn.createStatement();
                   String query = "SELECT * " +
                        "FROM Cli_fact, Adresse " +
                        "WHERE Cli_fact.n_societe_c = '" + rechnom + "' " +
                        "AND c_adresse = c_cli_fact " +
                        "AND c_type_adr = '02'";
    //                    "WHERE n_societe_c = '" +
    //                    rechnom + "' ";
                   msgout.append( "\nSending query " +
                   dbconn.nativeSQL( query ) + "\n" );
                   ResultSet rs = statement.executeQuery( query );
                   display( rs );
                   statement.close();
              else
                   screenvarcli.INSociete.setText( "Entrer le NOM de Soci�t� ");
              catch ( SQLException sqlex ) {
                   msgout.append( sqlex.toString() + sqlex.getMessage() );
         // Display results of query
         public void display( ResultSet rs ) {
              try {
                   rs.next();
                   int recordNumber = rs.getInt( 1);
                   if ( recordNumber != 0 ) {
                        screenvarcli.ICCliFact.setText( String.valueOf(recordNumber) );
                        screenvarcli.INSociete.setText( rs.getString(2));
                        screenvarcli.ILAdresseA.setText( rs.getString(35));
                        screenvarcli.ILLocalite.setText( rs.getString(32));
                        screenvarcli.ICPostal.setText( rs.getString(31));
                        screenvarcli.ICPays.setText( rs.getString(33));
                        msgout.append( "\n Enregistrements trouv�s!!!!!!!\n" );
                   else
                        msgout.append( "\nPas d'enregistrements trouv�s\n" );
              catch ( SQLException sqlex ) {
                   msgout.append( "\n*** Nom de Soci�t� pas dans la data Base ***\n" );
    // ADD CLIENT
    class AddRecCli implements ActionListener {
         private DataPanelCli screenvarcli;
         private JTextArea msgout;
         private Connection dbconn;
         public AddRecCli( Connection dbc, DataPanelCli scv, JTextArea msg ) {
              dbconn = dbc;
              screenvarcli = scv;
              msgout = msg;
         public void actionPerformed( ActionEvent e ) {
              try {
              Statement statement = dbconn.createStatement();
              String rechnom = new String();
              rechnom = screenvarcli.INSociete.getText();
              if ( !rechnom.equals( "" )) {
                   String query = "INSERT INTO cli_fact (" +
                   "n_societe_c) VALUES ('" +
                   screenvarcli.INSociete.getText() + "')";
                   msgout.append( "\nSending query " +
                   dbconn.nativeSQL( query ) + "\n" );
                   int result = statement.executeUpdate( query );
                   if ( result == 1 ) {
                   // read just inserted rec to obtain c_cli_fact field
                   // needed to place STRUCTURE COMMERCIAL FINANCIER
                   msgout.append( "\nInsertion r�ussie\n" );
                   try {
                   query = "SELECT * FROM cli_fact WHERE n_societe_c='" +
                        rechnom + "'";
                   ResultSet rs = statement.executeQuery( query );
                   rs.next();
                   screenvarcli.ICCliFact.setText(String.valueOf(rs.getInt(1)));
                   catch ( SQLException sqlex ) {
                   msgout.append( sqlex.toString() );
              else {
                   msgout.append( "\nInsertion NON r�ussie\n" );
                   screenvarcli.INSociete.setText( "" );
              else
              msgout.append( "\nEntrer au moins le non de soci�t� puis press NOUVEAU\n" );
              statement.close();
              catch ( SQLException sqlex ) {
              msgout.append( sqlex.toString() );
              screenvarcli.INSociete.setText("Nom de soci�t� existe d�j� -- reenter");
    // STRUCTURE
    //class StructRecCli extends JFrame implements ActionListener {
    class StructRecCli implements ActionListener {
         private DataPanelCli screenvarcli;
         private JTextArea msgout;
         private Connection dbconn;
         private boolean firsttime = true;
         public StructRecCli( Connection dbc, DataPanelCli scv, JTextArea msg ) {
              super( " APPLICATION CLIENT STUCTURE " );
              dbconn = dbc;
              screenvarcli = scv;
              msgout = msg;
         public void actionPerformed( ActionEvent e) {
              if (firsttime) {
                   Container cnt = getContentPane();
                   cnt.setLayout( new FlowLayout() );
                   StruCliBox ob = new StruCliBox();
                   cnt.add( ob );
         screenvarcli.INSociete.getText();
                   ButtonPanelStr controls = new
                   ButtonPanelStr(dbconn, screenvarcli, msgout);
                   cnt.add(controls);
                   setSize(500, 475);
                   firsttime = false;
              show();
    class StruCliBox extends JPanel {
         JTextField ICCliFact, INSociete,
              ILAdresseA, ICPostal, ILLocalite, ICPays;
         JLabel LCCliFact, LNSociete,
              LLAdresseA, LCPostal, LLLocalite, LCPays;
         public StruCliBox() {
              //Label Panel
              JPanel s = new JPanel();
              s.setLayout( new GridLayout(6, 1));
              LNSociete = new JLabel( "Nom ", 0);
              s.add(LNSociete);
              LCCliFact = new JLabel( "Num�ro Client", 0);
              s.add(LCCliFact);
              LLAdresseA = new JLabel( "Adresse ", 0);
              s.add(LLAdresseA);
              LCPostal = new JLabel( "Code Postal ", 0);
              s.add(LCPostal);
              LLLocalite = new JLabel( "Localite ", 0);
              s.add(LLLocalite);
              LCPays = new JLabel( "Pays ", 0);
              s.add(LCPays);
              //TextField Panel
              JPanel screenvarcliPanel = new JPanel();
              screenvarcliPanel.setLayout( new GridLayout(6, 1));
              INSociete = new JTextField( 20);
              screenvarcliPanel.add(INSociete);
    //          String rechnom = new String();
    //          screenvarcli.INSociete.getText();
              ICCliFact = new JTextField( 20);
              screenvarcliPanel.add(ICCliFact);
              ILAdresseA = new JTextField( 20);
              screenvarcliPanel.add(ILAdresseA);
              ICPostal = new JTextField( 20);
              screenvarcliPanel.add(ICPostal);
              ILLocalite = new JTextField( 20);
              screenvarcliPanel.add(ILLocalite);
              ICPays = new JTextField( 20);
              screenvarcliPanel.add(ICPays);
              // Accessibility Section - relate labels and text fields
              // for use by assistive technologies
    //          LNSociete.setLabelFor( INSociete);
              LLAdresseA.setLabelFor( ILAdresseA);
              LCPostal.setLabelFor( ICPostal);
              LLLocalite.setLabelFor( ILLocalite);
              LCPays.setLabelFor( ICPays);
              setLayout( new GridLayout( 1, 2));
              add( s);
              add( screenvarcliPanel);
    //          setLayout(new FlowLayout() );
    //          add(s);     
    class ButtonPanelStr extends JPanel {
         public ButtonPanelStr( Connection dbc, DataPanelCli scv, JTextArea msg ) {
              setLayout( new GridLayout( 1 ,0 ));
              JButton addstr = new JButton("Ajouter");
    //          addstr.addActionListener( new AddStructure( dbconn, screenvarcli, msgout, ob));
              add( addstr );
              JButton majstr = new JButton("Mise � jour");
    //          majstr.addActionListener( new MajStructure( dbconn, screenvarcli, msgout, ob));
              add( majstr );
              JButton clestr = new JButton("Clear");
    //          clestr.addActionListener( new CleStructure( dbconn, screenvarcli, msgout, ob));
              add( clestr );
              JButton prnstr = new JButton("Impression");
    //          prnstr.addActionListener( new PrnStructure( dbconn, screenvarcli, msgout, ob));
              add( prnstr );
         // Fermeture de l'application
    //     protected void processWindowEvent(WindowEvent e) {
    //          if (e.getID() == WindowEvent.WINDOW_CLOSING) {
    //               System.exit(0);

    To get data from one frame to another, either create one frame with a reference to the other one so it can discover the data in it, or create a static variable in one of your classes that both frames can access

  • Use data from a frame to another

    Hi,
    I would like use the data from my first frame in DataPanelCli in my second frame StruCliBox.
    BUT when I writte text in my first frame, and I use the button structcli in the ButtonPanelCli, it is always blank in my second frame.
    What have I to do.
    regards.
    Thierry
    import java.util.*;
    import java.sql.*;
    import java.io.*;
    import java.awt.event.*;
    import java.awt.*;
    import java.awt.Container;
    import javax.swing.*;
    import javax.swing.table.*;
    import java.text.*;
    import java.lang.String;
    public class AppClient extends JFrame {
         private DataPanelCli screenvarcli;
         public AppClient() {
              //titre fen�tre
              super( " APPLICATION CLIENT");
              // set up GUI environment
              Container p = getContentPane();
              screenvarcli = new DataPanelCli();
              p.setLayout( new FlowLayout() );
              p.add( new JScrollPane(screenvarcli) );
              // Complete GUI
              ButtonPanelCli controls = new ButtonPanelCli( screenvarcli);
              p.add(controls);
              setSize(500,475);
              show();
         public static void main( String args[]) {
              AppClient cli = new AppClient();
              cli.addWindowListener(
                   new WindowAdapter() {
                        public void windowClosing(WindowEvent e) {
                             System.exit(0);
    class DataPanelCli extends JPanel {
         JTextField ICCliFact, INSociete;
         JLabel LCCliFact, LNSociete;
         public DataPanelCli() {
              //Label Panel
              JPanel labelPanelCli = new JPanel();
              labelPanelCli.setLayout( new GridLayout(2, 1));
              LNSociete = new JLabel( "Nom ", 0);
              labelPanelCli.add(LNSociete);
              LCCliFact = new JLabel( "Num�ro Client", 0);
              labelPanelCli.add(LCCliFact);
              //TextField Panel
              JPanel screenvarcli = new JPanel();
              screenvarcli.setLayout( new GridLayout(2, 1));
              INSociete = new JTextField("Enter Name - click RECHERCHER", 20);
              screenvarcli.add(INSociete);
              ICCliFact = new JTextField( 20);
              screenvarcli.add(ICCliFact);
              // Accessibility Section - relate labels and text fields
              // for use by assistive technologies
              LNSociete.setLabelFor( INSociete);
              setLayout( new GridLayout( 1, 2));
              add( labelPanelCli);
              add( screenvarcli);
    class ButtonPanelCli extends JPanel {
         public ButtonPanelCli( DataPanelCli scv ) {
              setLayout( new GridLayout( 2 ,0 ));
              JButton clearcli = new JButton( "Clear" );
              clearcli.addActionListener( new ClearScreenCli( scv ));
              add( clearcli );
              JButton structcli = new JButton( "STRUCTURE" );
              structcli.addActionListener( new StructRecCli( scv));
              add( structcli );
    class ClearScreenCli implements ActionListener {
         private DataPanelCli screenvarcli;
         public ClearScreenCli( DataPanelCli scv ) {
              screenvarcli = scv;
         public void actionPerformed( ActionEvent e ) {
              screenvarcli.ICCliFact.setText( "" );
              screenvarcli.INSociete.setText( "" );
    // STRUCTURE
    class StructRecCli extends JFrame implements ActionListener {
         private DataPanelCli screenvarcli;
         private boolean firsttime = true;
         public StructRecCli( DataPanelCli scv) {
              super( " APPLICATION CLIENT STUCTURE " );
              screenvarcli = scv;
         public void actionPerformed( ActionEvent e) {
              if (firsttime) {
                   Container cnt = getContentPane();
                   cnt.setLayout( new FlowLayout() );
                   StruCliBox ob = new StruCliBox();
                   cnt.add( ob );
    //     screenvarcli.INSociete.getText();
                   ButtonPanelStr controls = new
                   ButtonPanelStr( screenvarcli);
                   cnt.add(controls);
                   setSize(500, 475);
                   firsttime = false;
              show();
    class StruCliBox extends JPanel {
         JTextField ICCliFact, INSociete;
         JLabel LCCliFact, LNSociete;
         public StruCliBox() {
              //Label Panel
              JPanel s = new JPanel();
              s.setLayout( new GridLayout(2, 1));
              LNSociete = new JLabel( "Nom ", 0);
              s.add(LNSociete);
              LCCliFact = new JLabel( "Num�ro Client", 0);
              s.add(LCCliFact);
              //TextField Panel
              JPanel screenvarcli = new JPanel();
              screenvarcli.setLayout( new GridLayout(2, 1));
              INSociete = new JTextField( 20);
              screenvarcli.add(INSociete);
    //          String rechnom = new String();
    //          screenvarcli.INSociete.getText();
              ICCliFact = new JTextField( 20);
              screenvarcli.add(ICCliFact);
              LNSociete.setLabelFor( INSociete);
              setLayout( new GridLayout( 1, 2));
              add( s);
              add( screenvarcli);
    class ButtonPanelStr extends JPanel {
         public ButtonPanelStr( DataPanelCli scv) {
              setLayout( new GridLayout( 1 ,0 ));
              JButton addstr = new JButton("Ajouter");
    //          addstr.addActionListener( new AddStructure( dbconn, screenvarcli, msgout, ob));
              add( addstr );
              JButton majstr = new JButton("Mise � jour");
    //          majstr.addActionListener( new MajStructure( dbconn, screenvarcli, msgout, ob));
              add( majstr );
              JButton clestr = new JButton("Clear");
    //          clestr.addActionListener( new CleStructure( dbconn, screenvarcli, msgout, ob));
              add( clestr );
              JButton prnstr = new JButton("Impression");
    //          prnstr.addActionListener( new PrnStructure( dbconn, screenvarcli, msgout, ob));
              add( prnstr );
         // Fermeture de l'application
    //     protected void processWindowEvent(WindowEvent e) {
    //          if (e.getID() == WindowEvent.WINDOW_CLOSING) {
    //               System.exit(0);

    a Q&D, note the static DataPanelCli's ICCliFact.
    class DataPanelCli extends JPanel {
    static JTextField ICCliFact, INSociete;
    class StruCliBox extends JPanel {
    ICCliFact = new JTextField( 20);ICCliFact.setText( DataPanelCli.ICCliFact.getText() );

  • I want to tranfer all my data from my old macbook to new macbook air

    i want to tranfer all my data from my old macbook to new macbook air

    How to use Migration Assistant to transfer files from another Mac
    Migration Assistant tips and tricks
    MacBook Air- Use Internet Sharing to optimize data migration
    You should use the Setup Assistant when it appears after you first turn on your new computer. But if that's not convenient then use Migration Assistant after you've setup the new computer.

  • Down load data from frames on the webpage

    Hi all,
    i have a scenario like, down load data from a web page.
    i am able to make http requests using httpclient easily, i am receiving correct response also(i can say this as i get the same when i use browser for the same request, i checked page view source and confirmed that i got right response)
    my data on the web page are in FRAMES , now when i do the request using the browser , i can view my data on the web page by selecting that particular frame , and view source of that particular frame)
    if need to read the data using java program how can i navigate to that particular frame
    the below is sample response when i make request to web page using http client
    <link rel=STYLESHEET href="Detail.css" type="text/css">
    <script language="JavaScript">
         var jsp_path="";
         var sfrw_servlet="Servlet";
         var sfrw_report_view_servlet="Servlet1";
         var sfrw_report_download_servlet="Servlet2";
    </script>
    <html>
    <head>
    <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <title> Website</title>
    <script language="JavaScript" src="NavigationScripts.js"></script>
    </head>
               <FRAMESET ROWS="120,*" COLS="*" FRAMEBORDER="NO" BORDER="0" FRAMESPACING="0">
                    <!-- COGNIZANT MODIFY END 09/05/2007 -->
                <FRAME NAME="Branding" SCROLLING="NO" NORESIZE SRC="Branding.jsp?navigationState=DEFAULT" >
              <FRAMESET COLS="10,975,*" FRAMEBORDER="NO" BORDER="0" FRAMESPACING="10" ROWS="*">
                   <FRAME NAME="Navigation" NORESIZE SCROLLING="NO" src="Blank.jsp">               
                        <FRAMESET  ROWS="37,*" FRAMEBORDER="NO" BORDER="0" FRAMESPACING="0" ROWS="*">
                             <FRAME NAME="Header" NORESIZE SCROLLING="NO" src="Blank.jsp">
                             <FRAME NAME="Detail" NORESIZE SCROLLING="AUTO" src="SearchAll.jsp">                         
                        </FRAMESET>
                   <FRAME NAME="Navigation1" NORESIZE SCROLLING="NO" src="Blank.jsp">               
              </FRAMESET>
    </FRAMESET>
    </HTML>actually i am not sure which frame of above response holds my data, lets suppose frame Detail holds my data , how can i get data from the frame
    any help?
    Edited by: LoveOpensource on Mar 28, 2008 5:39 AM

    try FM KCD_EXCEL_OLE_TO_INT_CONVERT
    data itab type table of KCDE_cells with header line.
    CALL FUNCTION 'KCD_EXCEL_OLE_TO_INT_CONVERT'
      EXPORTING
        filename                      = 'C:\test.xls'
        i_begin_col                   = 1
        i_begin_row                   = 1
        i_end_col                     = 3
        i_end_row                     = 3
      tables
        intern                        = itab
    EXCEPTIONS
       INCONSISTENT_PARAMETERS       = 1
       UPLOAD_OLE                    = 2
       OTHERS                        = 3
    IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    loop at itab.
    write :/ itab-row, itab-col, itab-value.
    endloop.
    rgds,
    PJ

  • How to migrate data from one database to another for a specific time frame

    Hi
    This is the scenario:
    We have 2 databases:
    PTT : THis has data from march 11 to March 19 that was created when the production was down due to a crash
    PROD : THis was recovered after March 19. Hence has no data created between March 11 and March 19
    How do I transfer this data from March 11 to March 19 from PTT to PROD so that Production can be up to date asap.
    Please let meknow the methods to get this done
    Regards
    Gayathri

    Hi,
    You could use EXP/IMP to move the data from PTT to PROD. But, you should be careful with sequences, modification to the same data.....
    eg Customer Address was updated between Mar 11 - 19, again the same customers was updated after 19 Mar, under this situation if you load the data from PTT you would be wrongly updating the data.....
    You have to study well and apply changes...........

  • How can transfer data from a dialog to another panel?

    Will anyone help me?Thanks.
    In our project,When the user need to fill some data into the textfield in a panel,he can simplify this action by click a button,when the button is clicked,then a dialog which contains a table of all the imformation of all customers will show,then the user can select one customer's information from the table,after click a button such as "OK",the selected information will show in corresponding textfiled in another panel.Because the dialog and the panel are two
    different object,so how can I transfer the data selected from the dialog to the panel and show the updated information timely??

    try this program. it exchanges some data between s adialog and a frame.
    akz
    * @version 1.20 01 Sep 1998
    * @author Cay Horstmann
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    public class DataExchangeTest extends JFrame
    implements ActionListener
    {  public DataExchangeTest()
    {  setTitle("DataExchangeTest");
    setSize(300, 300);
    JMenuBar mbar = new JMenuBar();
    setJMenuBar(mbar);
    JMenu fileMenu = new JMenu("File");
    mbar.add(fileMenu);
    connectItem = new JMenuItem("Connect");
    connectItem.addActionListener(this);
    fileMenu.add(connectItem);
    exitItem = new JMenuItem("Exit");
    exitItem.addActionListener(this);
    fileMenu.add(exitItem);
    public void actionPerformed(ActionEvent evt)
    {  Object source = evt.getSource();
    if (source == connectItem)
    {  ConnectInfo transfer= new ConnectInfo("yourname", "pw");
    if (dialog == null)
    dialog = new ConnectDialog(this);
    if (dialog.showDialog(transfer))
    {  String uname = transfer.username;
    String pwd = transfer.password;
    Container contentPane = getContentPane();
    contentPane.add(new JLabel("username=" + uname + ", password=" + pwd),"South");
    validate();
    else if(source == exitItem)
    System.exit(0);
    public static void main(String[] args)
    {  JFrame f = new DataExchangeTest();
    f.show();
    private ConnectDialog dialog = null;
    private JMenuItem connectItem;
    private JMenuItem exitItem;
    class ConnectInfo
    {  public String username;
    public String password;
    public ConnectInfo(String u, String p)
    { username = u; password = p; }
    class ConnectDialog extends JDialog implements ActionListener
    {  public ConnectDialog(JFrame parent)
    {  super(parent, "Connect", true);
    Container contentPane = getContentPane();
    JPanel p1 = new JPanel();
    p1.setLayout(new GridLayout(2, 2));
    p1.add(new JLabel("User name:"));
    p1.add(username = new JTextField(""));
    p1.add(new JLabel("Password:"));
    p1.add(password = new JPasswordField(""));
    contentPane.add("Center", p1);
    Panel p2 = new Panel();
    okButton = addButton(p2, "Ok");
    cancelButton = addButton(p2, "Cancel");
    contentPane.add("South", p2);
    setSize(240, 120);
         //custom method to create and buttons to a container
    JButton addButton(Container c, String name)
    {  JButton button = new JButton(name);
    button.addActionListener(this);
    c.add(button);
    return button;
    public void actionPerformed(ActionEvent evt)
    {  Object source = evt.getSource();
    if(source == okButton)
    {  ok = true;
    setVisible(false);
    else if (source == cancelButton)
    setVisible(false);
    public boolean showDialog(ConnectInfo transfer)
    {  username.setText(transfer.username);
    password.setText(transfer.password);
    ok = false;
    show();
    if (ok)
    {  transfer.username = username.getText();
    transfer.password = password.getText();
    return ok;
    private JTextField username;
    private JTextField password;
    private boolean ok;
    private JButton okButton;
    private JButton cancelButton;

  • Transfering data from a dialog to the parent

    I have an app that calls a dialog from the pull down menu.
    private void jMenuItem1ActionPerformed(java.awt.event.ActionEvent evt) {
        ConnectionBox dialog = new ConnectionBox(new javax.swing.JFrame(), true);
        JFrame mainFrame = DBToolsApp.getApplication().getMainFrame();
        dialog.setLocationRelativeTo(mainFrame);
        dialog.setVisible(true);
    }On that dialog I have several text fields. I want to set some strings in the parent app with the values returned form the text fields on the dialog.
    Does anyone know of an example of how to return data from the dialog back to the parent app?
    Thanks!

    It appears that you are using NetBeans and making a Java Desktop Application. And the code you have given should be in the FrameView which should be named DBToolsView in your case, isn't it?
    So, this is what I usually do:
    1- Frame view has the string fields along with their getters or setters (which you already have).
    2- Make constructor in the dialog which accepts the frame view object also in addition to frame. Also, make a FrameView field in the dialog (in your case it is ConnectionBox)
    3- The dialog should also have OK and Cancel buttons.
    4- On clicking OK set the string in frame view using the frame view reference and various setters and dispose the dialog.
    5- On Cancel just dispose the dialog.
    So, your action performed method in frame view would look like:
    private void jMenuItem1ActionPerformed(java.awt.event.ActionEvent evt) {
        JFrame mainFrame = DBToolsApp.getApplication().getMainFrame();
        ConnectionBox dialog = new ConnectionBox(this, mainFrame, true);
        dialog.setLocationRelativeTo(mainFrame);
        dialog.setVisible(true);
    }The ConnectionBox class should look like this:
    class ConnectionBox extends JDialog
          FrameView view;
          public ConnectionBox (FrameView view, Frame parent, boolean modal){
                super(parent, modal);
                this.view=view;
                initComponents(); // for NetBeans VE
         private okActionPerformed(){
                view.setString1(jtextField1.getText());
                view.setString2(jtextField2.getText());
                // and so on
                dispose();
        private cancelActionPerformed(){
                dispose();
    // other methods..... VE generated code, etc.
    }// end classAlso you could have used JOptionPane if you had to set single string, see this , but I don't know how we can return multiple strings using JOptionPane, though it must be possible because showInputDialog returns Object. Anyway, I don't know about option pane much.
    But the method given in this reply would perhaps work for you, and I find it the easiest.
    Thanks!
    Remark: I was really bored.....the reason for this long reply for simple question ;-)

  • Removing Data from a Database using JList

    Hi,
    I have the following JList with a "Remove" button.
    I have managed to populate the JList with entries from the DataBase but now i am having problems removing the data from the data base using the JList.
    What i am trying to achieve is, when an entry is selected from the JList and the "Remove" button is hit, the entry should be removed from the JList and from the database.
    How do i do this, please help..
    import java.awt.*;
    import java.awt.event.*;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;
    import javax.swing.*;
    public class RemoveD extends JDialog {
        private JList list;
        private JButton removeButton;
        private JScrollPane scrollPane;
        private Connection conn = null;
        private Statement stat = null;
        private ResultSet rs = null;
        String names = new String();
        private DefaultListModel listModel = new DefaultListModel();
        public RemoveD(Frame parent, boolean modal) {
            super(parent, modal);
            initComponents();
        private void initComponents() {
            try {
                Class.forName("com.mysql.jdbc.Driver");
            } catch (ClassNotFoundException ex) {
                ex.printStackTrace();
            try {
                String userID = "";
                String psw = "";
                String url;
                url = "jdbc:mysql://localhost:3306/mqnames";
                conn = DriverManager.getConnection(url, userID, psw);
                stat = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
                        ResultSet.CONCUR_READ_ONLY);
                rs = stat.executeQuery("SELECT queueName FROM queuenametable");
                int j = 0;
                while (rs.next()) {
                    names = rs.getString(1);
                    System.out.println("rs: " + names);
                    listModel.addElement(names);
                }//end of While
                stat.close();
                conn.close();
            } catch (SQLException ex) {
                ex.printStackTrace();
            scrollPane = new JScrollPane();
            list = new JList(listModel);
            list.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
            removeButton = new JButton();
            setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
            getContentPane().setLayout(new GridLayout(2, 0));
            scrollPane.setViewportView(list);
            getContentPane().add(scrollPane);
            removeButton.setText("Remove");
            removeButton.addActionListener(new ActionListener() {
                public void actionPerformed(ActionEvent evt) {
                    removeButtonActionPerformed(evt);
            getContentPane().add(removeButton);
            pack();
        private void removeButtonActionPerformed(ActionEvent evt) {
        public static void main(String args[]) {
            EventQueue.invokeLater(new Runnable() {
                public void run() {
                    RemoveD dialog = new RemoveD(new JFrame(), true);
                    dialog.addWindowListener(new WindowAdapter() {
                        public void windowClosing(WindowEvent e) {
                            System.exit(0);
                    dialog.setVisible(true);
    }

    Ask a specific question. Do you know how to get the selected item in the list? Do you know how to write a delete query in SQL?

  • Upload data from excel to Ztable with statistics

    Hi,
    I have a requirement to upload data from excel sheet to ztable .
    Here i need tp provide the user with the execution statistics like
    1.Number of records read from the Excel spread-sheet
    2. Number records processed successfully
    3. Number records with Error
    4. Name and location of Error Log-file (text-file format)
    5. Name and location of the file containing error records (Excel spread-sheet format)
    I would appreciate if any of you have code written for the same

    See the below example code to upload from xl file to sap
    REPORT ZLWMI151_UPLOAD no standard page heading
                           line-size 100 line-count 60.
    *tables : zbatch_cross_ref.
    data : begin of t_text occurs 0,
           werks(4) type c,
           cmatnr(15) type c,
           srlno(12) type n,
           matnr(7) type n,
           charg(10) type n,
           end of t_text.
    data: begin of t_zbatch occurs 0,
          werks like zbatch_cross_ref-werks,
          cmatnr like zbatch_cross_ref-cmatnr,
          srlno like zbatch_cross_ref-srlno,
          matnr like zbatch_cross_ref-matnr,
          charg like zbatch_cross_ref-charg,
          end of t_zbatch.
    data : g_repid like sy-repid,
           g_line like sy-index,
           g_line1 like sy-index,
           $v_start_col         type i value '1',
           $v_start_row         type i value '2',
           $v_end_col           type i value '256',
           $v_end_row           type i value '65536',
           gd_currentrow type i.
    data: itab like alsmex_tabline occurs 0 with header line.
    data : t_final like zbatch_cross_ref occurs 0 with header line.
    selection-screen : begin of block blk with frame title text.
    parameters : p_file like rlgrap-filename obligatory.
    selection-screen : end of block blk.
    initialization.
      g_repid = sy-repid.
    at selection-screen on value-request for p_file.
      CALL FUNCTION 'F4_FILENAME'
           EXPORTING
                PROGRAM_NAME = g_repid
           IMPORTING
                FILE_NAME    = p_file.
    start-of-selection.
    Uploading the data into Internal Table
      perform upload_data.
      perform modify_table.
    top-of-page.
      CALL FUNCTION 'Z_HEADER'
      EXPORTING
        FLEX_TEXT1       =
        FLEX_TEXT2       =
        FLEX_TEXT3       =
    *&      Form  upload_data
          text
    FORM upload_data.
      CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE'
           EXPORTING
                FILENAME                = p_file
                I_BEGIN_COL             = $v_start_col
                I_BEGIN_ROW             = $v_start_row
                I_END_COL               = $v_end_col
                I_END_ROW               = $v_end_row
           TABLES
                INTERN                  = itab
           EXCEPTIONS
                INCONSISTENT_PARAMETERS = 1
                UPLOAD_OLE              = 2
                OTHERS                  = 3.
      IF SY-SUBRC <> 0.
        write:/10 'File '.
      ENDIF.
      if sy-subrc eq 0.
        read table itab index 1.
        gd_currentrow = itab-row.
        loop at itab.
          if itab-row ne gd_currentrow.
            append t_text.
            clear t_text.
            gd_currentrow = itab-row.
          endif.
          case itab-col.
            when '0001'.
              t_text-werks = itab-value.
            when '0002'.
              t_text-cmatnr = itab-value.
            when '0003'.
              t_text-srlno = itab-value.
            when '0004'.
              t_text-matnr = itab-value.
            when '0005'.
              t_text-charg = itab-value.
          endcase.
        endloop.
      endif.
      append t_text.
    ENDFORM.                    " upload_data
    *&      Form  modify_table
          Modify the table ZBATCH_CROSS_REF
    FORM modify_table.
      loop at t_text.
        t_final-werks = t_text-werks.
        t_final-cmatnr = t_text-cmatnr.
        t_final-srlno = t_text-srlno.
        t_final-matnr = t_text-matnr.
        t_final-charg = t_text-charg.
        t_final-erdat = sy-datum.
        t_final-erzet = sy-uzeit.
        t_final-ernam = sy-uname.
        t_final-rstat = 'U'.
        append t_final.
        clear t_final.
      endloop.
      delete t_final where werks = ''.
      describe table t_final lines g_line.
      sort t_final by werks cmatnr srlno.
    Deleting the Duplicate Records
      perform select_data.
      describe table t_final lines g_line1.
      modify zbatch_cross_ref from table t_final.
      if sy-subrc ne 0.
        write:/ 'Updation failed'.
      else.
        Skip 1.
        Write:/12 'Updation has been Completed Sucessfully'.
        skip 1.
        Write:/12 'Records in file ',42 g_line .
        write:/12 'Updated records in Table',42 g_line1.
      endif.
      delete from zbatch_cross_ref where werks = ''.
    ENDFORM.                    " modify_table
    *&      Form  select_data
          Deleting the duplicate records
    FORM select_data.
      select werks
             cmatnr
             srlno from zbatch_cross_ref
             into table t_zbatch for all entries in t_final
             where werks = t_final-werks
             and  cmatnr = t_final-cmatnr
             and srlno = t_final-srlno.
      sort t_zbatch by werks cmatnr srlno.
      loop at t_zbatch.
        read table t_final with key werks = t_zbatch-werks
                                    cmatnr = t_zbatch-cmatnr
                                    srlno = t_zbatch-srlno.
        if sy-subrc eq 0.
          delete table t_final .
        endif.
        clear: t_zbatch,
               t_final.
      endloop.
    ENDFORM.                    " select_data
    Reward Points if it is helpful
    Thanks
    Seshu

Maybe you are looking for

  • Error -1074364412 (NI-IMAQ,IEEE1394)

    I don't know what happen to this error display. I use the IEEE-1394 camera(AVT Marlin F-033B) with NI-Imaq for IEEE1394 The grab method is "triggered async grab" In the inspection mode, I push the inpect start button, then Code is called that example

  • [svn] 2513: -integrate vellum build 124

    Revision: 2513 Author: [email protected] Date: 2008-07-16 12:31:47 -0700 (Wed, 16 Jul 2008) Log Message: -integrate vellum build 124 -integrate flash player d544 -update TextArea.as and TextView.as to work with vellum API Modified Paths: flex/sdk/tru

  • Jnlp file called multiple times

    We're trying to pass HTTP parameters to our JNLP file (which is created by a .jsp file). When we run webstart from the command line (or a a web page), it seems like the JNLP file gets called multiple times. The first time our parameters are there, af

  • Can I use Elgato VHS Video Capture with my Macbook pro?

    Can I use Elgato VHS Video Capture with my Macbook Pro? It comes with a CD on which is the software. My Macbook pro does not have a CD drive. how do i get the software?

  • Easy Doc Management can support chinese in user interface language?

    Hi,SAP Experts. When I login DMS by Easy Doc Mgmt I have inputted the ZH language,but after login,still don't display chinese menu. My OS is WinXP Pro,chinese edition. Anybody can tell me what cause it,how solve it?