Why standard programs uses the OCCURS statement

Hi Experts,
instead of occurs we usually use STANDARD TABLE OF due to performance issue ,
but i noticed that stadard programs are using OCCURS statement only.
could u plz tell me why stadard programs are using OCCURS only.
Thanks.

Hi,
Occurs Statement created the internal table with header line. But Header Line is not supported in Oop's Concept. So it is better practice to create the table with TYPE/LIKE STANDARD TABLE OF statement without specifying Header line option in declaration.
Yes in most of the standard Programs OCCURS statement are used. This is because these are SAP standard and developed in older version of sap.

Similar Messages

  • Short  Dump in Standard program for the INSERT Statement

    Hi All,
    In the Transaction FPCJ, when I click on the Button Close Cash Desk, I ma getting a short Dump.
    The problem is in the Standard SAP program 'SAPLSUU1' and the include program is 'LSUU1F01'.
    The reason is the code is trying to insert duplicate entries into a Data base table. And SAP is suggesting for a SAp NOTE.
    The problem is when I am trying with the suggested dearch terms I get very large number of notes and I am unable
    to zero down any single note.
    If someone has worked on these or have any idea on the Note number, please share that with me.
    Thans in advance.
    Thanks & regards,
    Y Gautham

    Hi Nicole,
    Thanks a lot! It actually worked.
    Thanks & regards,
    Y Gautham

  • Using the Insert statement in a Java program without hardcoding the data

    hello.
    this is james mcfadden. i have developed a program called Demo.java, which is used with another program called QueryTableModel.java (a program that allows data to be viewed in a JTable). The Demo.java program displays a menu, connects to a database, allows the user to add data into the database and allows the user to view data that is already in the database. I have a problem with the Demo.java program. I have hardcoded the Insert statement in it. How do you use the Insert statement to put data into a database without hardcoding the data?
    import java.awt.*;//Contains all of the classes for creating user interfaces and for painting graphics and images
    import java.awt.event.*;//Provides interfaces and classes for dealing with different types of events fired by AWT components
    import javax.swing.*;//Provides a set of lightweight components that, to the maximum degree possible, work the same on all platforms
    import javax.swing.table.*;//Provides classes and interfaces for dealing with javax.swing.JTable
    import javax.swing.JOptionPane;//provides a class that makes it easy to pop up a standard dialog box that prompts users for a value or informs them of something
    import java.sql.*;//Provides the API for accessing and processing data stored in a data source using the Java programming language
    public class Demo extends JFrame{
       static String url = "jdbc:odbc:VideoLibrary";//a static variable that allows a connection to be made to a database called VideoLibrary
       static Statement stmt;//a static variable that allows a statement to be made once a connection is set up
       static Connection con;//a static interface that allows a connection to be made to a database
         //global variables
         JTextField hostField;//a class that allows a line of text to be changed
       JTextField queryField;//a class that allows a line of text to be changed
       QueryTableModel qtm;//a class that shows and changes regular two-dimensional tables of cells
       JComboBox comboBox;//a class that puts a button or editable field and a drop-down list together 
       public static void main(String args[]){     
          int choice=-1;//a variable of type int that is set to -1
              do{
             choice=getChoice();//invokes the method getChoice()
             if(choice!=0){
                getSelected(choice);//invokes the method getSelected(choice)
             }//end if
                   //if the user chooses 5, it will cause him or her to exit the system
          }while(choice!=5);//end do-while
          System.exit(0);//closes down the menu screen
       }//end main
       public static int getChoice(){
          String choice;//a variable of type string
          int ch;//a variable of type int
          choice = JOptionPane.showInputDialog(null,"1. Maintain product details\n"+"2. Maintain member details\n"+"3. Maintain rental details\n"+"4. View product, member and rental details\n"+"5. Log Off\n\n"+"Enter your choice");//asks the user for some input   
              ch = Integer.parseInt(choice);//a class that wraps a value of the primitive type int in an object     
              return ch;//a method that returns an integer value
       }//end getChoice
       public static void getSelected(int choice){   
              if(choice==1){
             maintainProductDetails();//invokes the method maintainProductDetails()
          }//end if
          if(choice==2){
             maintainMemberDetails();//invokes the method maintainMemberDetails()
          }//end if
              if(choice==3){
             maintainRentalDetails();//invokes the method maintainRentalDetails()
          }//end if
              if(choice==4){
                 Demo test = new Demo();//invokes the constructor Demo()
             test.setVisible(true);//shows the JTable component by marking it as visible
              }//end if
       }//end getSelected
       public static Connection getConnection(){
          try {
             Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");//used to create a JDBC connection using a database
          }//end try
              catch(java.lang.ClassNotFoundException e){//causes an exception to be thrown when an application tries to load in a class through its string name
             System.err.print("ClassNotFoundException: ");//displays an error message
             System.err.println(e.getMessage());//returns the exception that was raised if an error occurred while attempting to load the ClassNotFoundException class
          }//end catch
          try {
             con=DriverManager.getConnection(url,"","");//tries to create a connection with the database using the DriverManager class
          }//end try
              catch(SQLException ex) {
             System.err.println("SQLException: " + ex.getMessage());//returns an SQL error message
          }//end catch
          return con;
       }//end getConnection
       public static void maintainProductDetails(){
          Connection con = getConnection();//creates a connection with the database
          String  addProduct1, addProduct2, addProduct3, addProduct4, addProduct5, addProduct6, addProduct7, addProduct8, addProduct9, addProduct10;//string variables that represent information about the different types of product data that will be stored in the database
          addProduct1 = "insert into Product values (110001, 'The Killers - Sams Town', 5.00, 'G', 'CD', 2006)";
          addProduct2 = "insert into Product values (110002, 'Robbie Williams - Rudebox', 5.00, 'G', 'CD', 2006)";
          addProduct3 = "insert into Product values (110003, 'Razorlight - Razorlight', 5.00, 'G', 'CD', 2006)";
          addProduct4 = "insert into Product values (110004, 'My Chemical Romance - The Black Parade', 5.00, 'G', 'CD', 2006)";
          addProduct5 = "insert into Product values (110005, 'Snow Patrol - Eyes Open', 5.00, 'G', 'CD', 2006)";
          addProduct6 = "insert into Product values (110006, 'Scissor Sisters - Ta-Dah!', 5.00, 'G', 'CD', 2006)";
              addProduct7 = "insert into Product values (110007, 'Lovesounds - Justin Timberlake', 5.00, 'G', 'CD', 2006)";
          addProduct8 = "insert into Product values (110008, 'Director - We thrive on big cities', 5.00, 'G', 'CD', 2006)";
          addProduct9 = "insert into Product values (110009, 'Roxette - Roxette hits', 5.00, 'G', 'CD', 2006)";
          addProduct10 = "insert into Product values (110010, 'Pussy Cat Dolls - PCD', 5.00, 'G', 'CD', 2006)";
              try {
             stmt = con.createStatement();//Creates a Statement object for sending SQL statements to the database
                 //statements are allowed to be made once a connection is set up
                 stmt.executeUpdate(addProduct1);
             stmt.executeUpdate(addProduct2);
             stmt.executeUpdate(addProduct3);
             stmt.executeUpdate(addProduct4);
                   stmt.executeUpdate(addProduct5);
             stmt.executeUpdate(addProduct6);
                 stmt.executeUpdate(addProduct7);
             stmt.executeUpdate(addProduct8);
             stmt.executeUpdate(addProduct9);
             stmt.executeUpdate(addProduct10);
             stmt.close();//closes the Statement object
             con.close();//terminates the connection with the database
          }//end try
              catch(SQLException ex) {
             System.err.println("SQLException: " + ex.getMessage());//returns an SQL error message
          }//end catch
       }//end maintainProductDetails
       public static void maintainMemberDetails(){
          Connection con = getConnection();//creates a connection with the database
          String addMember1, addMember2, addMember3, addMember4, addMember5, addMember6, addMember7, addMember8, addMember9, addMember10;//string variables that represent information about the member data that will be stored in the database
          addMember1 = "insert into Member values (1234, 'Ann', 'Smyth', 'Upper Killult, Falcarragh, Co. Donegal', '(074)-9135210', '(087)-2030172', #5/11/85#, #5/12/06#)";
          addMember2 = "insert into Member values (2345, 'John', 'Murphy', 'Lower Killult, Falcarragh, Co. Donegal', '(074)-9135211', '(087)-2030173', #4/12/85#, #6/13/06#)";
          addMember3 = "insert into Member values (1324, 'James', 'McFadden', 'Lower Ardsbeg, Gortahork, Co. Donegal', '(074)-9165314', '(087)-2030171', #4/11/85#, #6/14/06#)";
          addMember4 = "insert into Member values (1235, 'Frankie', 'Ferry', 'Ardsmore, Gortahork, Co. Donegal', '(074)-9165325', '(087)-2031234', #6/13/60#, #6/15/06#)";
          addMember5 = "insert into Member values (1236, 'Daniel', 'McKimm', 'Ballyness, Falcarragh, Co. Donegal', '(074)-9135212', '(087)-2030184', #5/14/73#, #6/16/06#)";
          addMember6 = "insert into Member values (2346, 'Stephen', 'Doohan', 'Ballyness, Falcarragh, Co. Donegal', '(074)-9135213', '(087)-2030185', #6/13/85#, #5/13/06#)";
          addMember7 = "insert into Member values (2347, 'James', 'Ferry', 'Meenlaragh, Gortahork, Co.Donegal', '(074)-9165360', '(087)-2031345', #9/12/85#, #5/14/06#)";
          addMember8 = "insert into Member values (2348, 'Liam', 'Cannon', 'Derryconner, Gortahork, Co.Donegal', '(074)-9165324', '(087)-2031456', #4/11/86#, #5/15/06#)";
          addMember9 = "insert into Member values (2401, 'Ciaran', 'Ferry', 'Brinalack, Gweedore, Co.Donegal', '(074)-9176425', '(087)-2030282', #9/12/85#, #5/16/06#)";
          addMember10 = "insert into Member values (2402, 'Ciaran', 'McGee', 'Derrybeg, Gweedore, Co.Donegal', '(074)-9176536', '(087)-2030393', #9/14/85#, #5/18/06#)";
          try{
             stmt = con.createStatement();//Creates a Statement object for sending SQL statements to the database
                   //statements are allowed to be made once a connection is set up
                   stmt.executeUpdate(addMember1);
             stmt.executeUpdate(addMember2);
             stmt.executeUpdate(addMember3);
                   stmt.executeUpdate(addMember4);
                   stmt.executeUpdate(addMember5);
                   stmt.executeUpdate(addMember6);
                   stmt.executeUpdate(addMember7);
                   stmt.executeUpdate(addMember8);
                   stmt.executeUpdate(addMember9);
                   stmt.executeUpdate(addMember10);
             stmt.close();//closes the Statement object
             con.close();//terminates the connection with the database
          }//end try
              catch(SQLException ex) {
             System.err.println("SQLException: " + ex.getMessage());//returns an SQL error message
          }//end catch
       }//end maintainMemberDetails
         public static void maintainRentalDetails(){
          Connection con = getConnection();//creates a connection with the database
          String addRental1, addRental2, addRental3, addRental4, addRental5, addRental6, addRental7, addRental8, addRental9, addRental10;//string variables that represent information about the loan data that will be stored in the database
          addRental1 = "insert into Rental values (110001, 'The Killers - Sams Town', 1234, 'Ann', 'Smyth', #9/01/06#, #9/10/06#, 'Yes', 2.00)";
          addRental2 = "insert into Rental values (120001, 'Mission Impossible 3', 2345, 'John', 'Murphy', #9/02/06#, #9/09/06#, 'No', 0.00)";
          addRental3 = "insert into Rental values (130001, 'Need for Special Carbon', 1324, 'James', 'McFadden', #9/03/06#, #9/12/06#, 'Yes', 2.00)";
          addRental4 = "insert into Rental values (110002, 'Robbie Williams - Rudebox', 1235, 'Frankie', 'Ferry', #9/04/06#, #9/11/06#, 'No', 0.00)";
          addRental5 = "insert into Rental values (120015, 'Prime', 1236, 'Daniel', 'McKimm', #9/05/06#, #9/14/06#, 'Yes', 2.00)";
          addRental6 = "insert into Rental values (130015, 'FIFA 07', 2346, 'Stephen', 'Doohan', #9/06/06#, #9/13/06#, 'No', 0.00)";
          addRental7 = "insert into Rental values (110009, 'Roxette - Roxette hits', 2347, 'James', 'Ferry', #9/07/06#, #9/16/06#, 'Yes', 2.00)";
          addRental8 = "insert into Rental values (120003, 'The Break Up', 2348, 'Liam', 'Cannon', #9/08/06#, #9/15/06#, 'No', 0.00)";
          addRental9 = "insert into Rental values (130027, 'Gears of War', 2401, 'Ciaran', 'Ferry', #9/09/06#, #9/18/06#, 'Yes', 2.00)";
          addRental10 = "insert into Rental values (110021, 'Scooter - Mind the Gap', 2402, 'Ciaran', 'McGee', #9/10/06#, #9/17/06#, 'No', 0.00)";
          try{
             stmt = con.createStatement();//Creates a Statement object for sending SQL statements to the database
                   //statements are allowed to be made once a connection is set up
                   stmt.executeUpdate(addRental1);
             stmt.executeUpdate(addRental2);
             stmt.executeUpdate(addRental3);
                   stmt.executeUpdate(addRental4);
                   stmt.executeUpdate(addRental5);
                   stmt.executeUpdate(addRental6);
                   stmt.executeUpdate(addRental7);
                   stmt.executeUpdate(addRental8);
                   stmt.executeUpdate(addRental9);
                   stmt.executeUpdate(addRental10);
             stmt.close();//closes the Statement object
             con.close();//terminates the connection with the database
          }//end try
              catch(SQLException ex) {
             System.err.println("SQLException: " + ex.getMessage());//returns an SQL error message
          }//end catch
       }//end maintainRentalDetails
       public Demo(){//a constructor
          super("Demo Test Frame");//overrides the constructor
          setSize(350, 200);//Resizes this component so that it has width of 350 and height of 200 
          comboBox = new JComboBox();//invokes the class JComboBox
          comboBox.addItem("jdbc:odbc:VideoLibrary");//adds the specified item to the end of the scrolling list
          qtm = new QueryTableModel();//invokes the class QueryTableModel
          JTable table = new JTable(qtm);//a class that shows and changes regular two-dimensional tables of cells
          JScrollPane scrollpane = new JScrollPane(table);//a class that provides a scrollable view of a lightweight component
          JPanel p1 = new JPanel();//a class that puts the combo box and query field in a panel
          p1.setLayout(new GridLayout(3, 2));//Sets the layout manager for this container
          p1.add(comboBox);//Appends the specified component to the end of this container
          p1.add(new JLabel("Enter your query: "));//Appends the specified component to the end of this container
          p1.add(queryField = new JTextField());//Appends the specified component to the end of this container
          p1.add(new JLabel("Click here to send: "));//Appends the specified component to the end of this container
          JButton jb = new JButton("Search");//a class that is an implementation of a "push" button
          jb.addActionListener(new ActionListener(){//Adds an ActionListener to the button
             public void actionPerformed(ActionEvent e){
                qtm.setHostURL();//invokes the method setHostURL
                qtm.setQuery(queryField.getText().trim());//invokes the method setQuery; and returns the text that is presented by this text component and returns a copy of the string, with leading and trailing whitespaces omitted
          } );//end addActionListener
          p1.add(jb);//Appends the specified component to the end of this container
          getContentPane().add(p1, BorderLayout.NORTH);//Returns the content pane
          getContentPane().add(scrollpane, BorderLayout.CENTER);//Returns the content pane
       }//end Demo
    }//end class Demo
    import java.sql.*;//Provides the API for accessing and processing data stored in a data source using the Java programming language
    import java.io.*;//Provides for system input and output through data streams, serialization and the file system
    import java.util.Vector;//provides a class that implements a growable array of objects
    import javax.swing.*;//Provides a set of lightweight components that, to the maximum degree possible, work the same on all platforms
    import javax.swing.table.*;//Provides classes and interfaces for dealing with javax.swing.JTable
    public class QueryTableModel extends AbstractTableModel{
         Vector cache;//a class that constructs an empty vector so that its internal data array has size 10 and its standard capacity increment is zero 
         int colCount;//a variable that counts the number of columns in the three tables
         String[] headers;//a class that represents character strings and all string literals in this program are implemented as instances of the String class
         Connection db;//an interface that allows a connection to be made to a database
         Statement statement;//an interface that allows executes the given SQL statement, which returns a single ResultSet object
         String currentURL;//a variable that allows the URL to be displayed in a combo box
         public QueryTableModel(){//a constructor
              cache=new Vector();//constructs an empty vector so that its internal data array has size 10 and its standard capacity increment is zero
              try{
             Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");//used by opening a JDBC connection using an URL
              }//end try
              catch(Exception e){
                   System.out.println("problem loading the driver ");//an error message
              }//end catch
         }//end QueryTableModel
         public String getColumnName(int i){//Returns the designated column's name
            return headers;//returns the name of each column in the three table
         }//end getColumnName
         public int getColumnCount(){//Returns the number of columns in the column model
         return colCount;//returns the number of columns in the three tables
         }//end getColumnCount
         public int getRowCount(){//Returns the number of rows in this table's model
         return cache.size();//returns the number of components in the vector
         }//end getRowCount
         public Object getValueAt(int row, int col){//Returns the cell value at row and column
              return ((String[])cache.elementAt(row))[col];//Returns the component at the specified index
         }//end getValueAt
         public void setHostURL(){//sets the URL for the database
         String url = "jdbc:odbc:VideoLibrary";//a variable that allows a connection to be made to a database called VideoLibrary
         closeDB();//invokes the method closeDB()
              try{
    db=DriverManager.getConnection(url,"","");//tries to create a connection with the database using the DriverManager class
    statement=db.createStatement();//Creates a Statement object for sending SQL statements to the database
    }//end try
    catch(Exception e){
    System.out.println("Could not initialize the database.");//an error message
    e.printStackTrace();//a Throwable method that prints this throwable and it's backtrace to the standard error stream
    }//end catch
         }//end setHostURL
    public void setQuery(String q){//sets the kind of query that is to be sent to the database
              cache=new Vector();//constructs an empty vector so that its internal data array has size 10 and its standard capacity increment is zero
    String s="select * from Product";//a variable that causes all the data that is in the product table to be displayed in a JTable, which also means that all the data that is in both the member and rental tables can also be displayed in a JTable
              try{
                   ResultSet rs=statement.executeQuery(q);//an interface that is used to generate a database result set by executing a statement that queries the database
                   ResultSetMetaData meta=rs.getMetaData();//an interface that is used to get information about the types and properties of the columns in a ResultSet object
                   colCount=meta.getColumnCount();//Returns the number of columns in this ResultSet object
                   headers=new String[colCount];//gets the name of each column in the three tables
                   for(int h=1;h<=colCount;h++){
                        headers[h-1]=meta.getColumnName(h);//Get the designated column's name
                   }//end for
                   while(rs.next()){
                        String[] record=new String[colCount];//stores the name of each column in the three tables in memory
                        for(int i=0;i<colCount;i++){
                             record[i]=rs.getString(i+1);//Retrieves the value of the designated column in the current row of this ResultSet object as a String
                        }//end for
                        cache.addElement(record);//Adds the specified component to the end of this vector, increasing its size by one
                   }//end while
                   fireTableChanged(null);//Forwards the given notification event to all TableModelListeners that registered themselves as listeners for this table model
              }//end try
              catch(Exception e){
                   cache=new Vector();//constructs an empty vector so that its internal data array has size 10 and its standard capacity increment is zero
                   e.printStackTrace();//a Throwable method that prints this throwable and it's backtrace to the standard error stream
              }//end catch
         }//end setQuery
         public void initDB(String url){
              try{
                   db=DriverManager.getConnection(url);//tries to create a connection with the database using the DriverManager class
                   statement=db.createStatement();//Creates a Statement object for sending SQL statements to the database
              }//end try
              catch(Exception e){
                   System.out.println("Could not initialize the database.");//an error message
                   e.printStackTrace();//a Throwable method that prints this throwable and it's backtrace to the standard error stream
              }//end catch
         }//end initDB
         public void closeDB(){
              try{
                   if(statement!=null){
                   statement.close();//Releases this Statement object's database and JDBC resources immediately instead of waiting for this to happen when it is automatically closed
                   }//end if
                   if(db!=null){
                   db.close();//Releases this Connection object's database and JDBC resources immediately instead of waiting for them to be automatically released
                   }//end if
              }//end try
              catch(Exception e){
                   System.out.println("Could not close the current connection.");//an error message
                   e.printStackTrace();//a Throwable method that prints this throwable and it's backtrace to the standard error stream
              }//end catch
         }//end closeDB
    }//end class QueryTableModel

    here's an uncommented version of the code.
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import javax.swing.table.*;
    import javax.swing.JOptionPane;
    import java.sql.*;
    public class Demo extends JFrame{
       static String url = "jdbc:odbc:VideoLibrary";
       static Statement stmt;
       static Connection con;
       JTextField hostField;
       JTextField queryField;
       QueryTableModel qtm;
       JComboBox comboBox;
       public static void main(String args[]){
          int choice=-1;
          do{
             choice=getChoice();
             if(choice!=0){
                getSelected(choice);
          }while(choice!=5);
          System.exit(0);
       public static int getChoice(){
          String choice;
          int ch;
          choice = JOptionPane.showInputDialog(null,"1. Maintain product details\n"+"2. Maintain member details\n"+"3. Maintain rental details\n"+"4. View product, member and rental details\n"+"5. Log Off\n\n"+"Enter your choice"); 
          ch = Integer.parseInt(choice);    
          return ch;
       public static void getSelected(int choice){   
          if(choice==1){
             maintainProductDetails();
          if(choice==2){
             maintainMemberDetails();
          if(choice==3){
             maintainRentalDetails();
          if(choice==4){
             Demo test = new Demo();
             test.setVisible(true);
       public static Connection getConnection(){
          try {
             Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
          catch(java.lang.ClassNotFoundException e){
             System.err.print("ClassNotFoundException: ");
             System.err.println(e.getMessage());
          try {
             con=DriverManager.getConnection(url,"","");
          catch(SQLException ex) {
             System.err.println("SQLException: " + ex.getMessage());
          return con;
       public static void maintainProductDetails(){
          Connection con = getConnection();
          String  addProduct1, addProduct2, addProduct3, addProduct4, addProduct5, addProduct6, addProduct7, addProduct8, addProduct9, addProduct10;
          addProduct1 = "insert into Product values (110001, 'The Killers - Sams Town', 5.00, 'G', 'CD', 2006)";
          addProduct2 = "insert into Product values (110002, 'Robbie Williams - Rudebox', 5.00, 'G', 'CD', 2006)";
          addProduct3 = "insert into Product values (110003, 'Razorlight - Razorlight', 5.00, 'G', 'CD', 2006)";
          addProduct4 = "insert into Product values (110004, 'My Chemical Romance - The Black Parade', 5.00, 'G', 'CD', 2006)";
          addProduct5 = "insert into Product values (110005, 'Snow Patrol - Eyes Open', 5.00, 'G', 'CD', 2006)";
          addProduct6 = "insert into Product values (110006, 'Scissor Sisters - Ta-Dah!', 5.00, 'G', 'CD', 2006)";
          addProduct7 = "insert into Product values (110007, 'Lovesounds - Justin Timberlake', 5.00, 'G', 'CD', 2006)";
          addProduct8 = "insert into Product values (110008, 'Director - We thrive on big cities', 5.00, 'G', 'CD', 2006)";
          addProduct9 = "insert into Product values (110009, 'Roxette - Roxette hits', 5.00, 'G', 'CD', 2006)";
          addProduct10 = "insert into Product values (110010, '***** Cat Dolls - PCD', 5.00, 'G', 'CD', 2006)";
          try {
             stmt = con.createStatement();
             stmt.executeUpdate(addProduct1);
             stmt.executeUpdate(addProduct2);
             stmt.executeUpdate(addProduct3);
             stmt.executeUpdate(addProduct4);
             stmt.executeUpdate(addProduct5);
             stmt.executeUpdate(addProduct6);
             stmt.executeUpdate(addProduct7);
             stmt.executeUpdate(addProduct8);
             stmt.executeUpdate(addProduct9);
             stmt.executeUpdate(addProduct10);
             stmt.close();
             con.close();
          catch(SQLException ex) {
             System.err.println("SQLException: " + ex.getMessage());
       public static void maintainMemberDetails(){
          Connection con = getConnection();
          String addMember1, addMember2, addMember3, addMember4, addMember5, addMember6, addMember7, addMember8, addMember9, addMember10;
          addMember1 = "insert into Member values (1234, 'Ann', 'Smyth', 'Upper Killult, Falcarragh, Co. Donegal', '(074)-9135210', '(087)-2030172', #5/11/85#, #5/12/06#)";
          addMember2 = "insert into Member values (2345, 'John', 'Murphy', 'Lower Killult, Falcarragh, Co. Donegal', '(074)-9135211', '(087)-2030173', #4/12/85#, #6/13/06#)";
          addMember3 = "insert into Member values (1324, 'James', 'McFadden', 'Lower Ardsbeg, Gortahork, Co. Donegal', '(074)-9165314', '(087)-2030171', #4/11/85#, #6/14/06#)";
          addMember4 = "insert into Member values (1235, 'Frankie', 'Ferry', 'Ardsmore, Gortahork, Co. Donegal', '(074)-9165325', '(087)-2031234', #6/13/60#, #6/15/06#)";
          addMember5 = "insert into Member values (1236, 'Daniel', 'McKimm', 'Ballyness, Falcarragh, Co. Donegal', '(074)-9135212', '(087)-2030184', #5/14/73#, #6/16/06#)";
          addMember6 = "insert into Member values (2346, 'Stephen', 'Doohan', 'Ballyness, Falcarragh, Co. Donegal', '(074)-9135213', '(087)-2030185', #6/13/85#, #5/13/06#)";
          addMember7 = "insert into Member values (2347, 'James', 'Ferry', 'Meenlaragh, Gortahork, Co.Donegal', '(074)-9165360', '(087)-2031345', #9/12/85#, #5/14/06#)";
          addMember8 = "insert into Member values (2348, 'Liam', 'Cannon', 'Derryconner, Gortahork, Co.Donegal', '(074)-9165324', '(087)-2031456', #4/11/86#, #5/15/06#)";
          addMember9 = "insert into Member values (2401, 'Ciaran', 'Ferry', 'Brinalack, Gweedore, Co.Donegal', '(074)-9176425', '(087)-2030282', #9/12/85#, #5/16/06#)";
          addMember10 = "insert into Member values (2402, 'Ciaran', 'McGee', 'Derrybeg, Gweedore, Co.Donegal', '(074)-9176536', '(087)-2030393', #9/14/85#, #5/18/06#)";
          try{
             stmt = con.createStatement();
             stmt.executeUpdate(addMember1);
             stmt.executeUpdate(addMember2);
             stmt.executeUpdate(addMember3);
             stmt.executeUpdate(addMember4);
             stmt.executeUpdate(addMember5);
             stmt.executeUpdate(addMember6);
             stmt.executeUpdate(addMember7);
             stmt.executeUpdate(addMember8);
             stmt.executeUpdate(addMember9);
             stmt.executeUpdate(addMember10);
             stmt.close();
             con.close();
          catch(SQLException ex) {
             System.err.println("SQLException: " + ex.getMessage());
       public static void maintainRentalDetails(){
          Connection con = getConnection();
          String addRental1, addRental2, addRental3, addRental4, addRental5, addRental6, addRental7, addRental8, addRental9, addRental10;
          addRental1 = "insert into Rental values (110001, 'The Killers - Sams Town', 1234, 'Ann', 'Smyth', #9/01/06#, #9/10/06#, 'Yes', 2.00)";
          addRental2 = "insert into Rental values (120001, 'Mission Impossible 3', 2345, 'John', 'Murphy', #9/02/06#, #9/09/06#, 'No', 0.00)";
          addRental3 = "insert into Rental values (130001, 'Need for Special Carbon', 1324, 'James', 'McFadden', #9/03/06#, #9/12/06#, 'Yes', 2.00)";
          addRental4 = "insert into Rental values (110002, 'Robbie Williams - Rudebox', 1235, 'Frankie', 'Ferry', #9/04/06#, #9/11/06#, 'No', 0.00)";
          addRental5 = "insert into Rental values (120015, 'Prime', 1236, 'Daniel', 'McKimm', #9/05/06#, #9/14/06#, 'Yes', 2.00)";
          addRental6 = "insert into Rental values (130015, 'FIFA 07', 2346, 'Stephen', 'Doohan', #9/06/06#, #9/13/06#, 'No', 0.00)";
          addRental7 = "insert into Rental values (110009, 'Roxette - Roxette hits', 2347, 'James', 'Ferry', #9/07/06#, #9/16/06#, 'Yes', 2.00)";
          addRental8 = "insert into Rental values (120003, 'The Break Up', 2348, 'Liam', 'Cannon', #9/08/06#, #9/15/06#, 'No', 0.00)";
          addRental9 = "insert into Rental values (130027, 'Gears of War', 2401, 'Ciaran', 'Ferry', #9/09/06#, #9/18/06#, 'Yes', 2.00)";
          addRental10 = "insert into Rental values (110021, 'Scooter - Mind the Gap', 2402, 'Ciaran', 'McGee', #9/10/06#, #9/17/06#, 'No', 0.00)";
          try{
             stmt = con.createStatement();
             stmt.executeUpdate(addRental1);
             stmt.executeUpdate(addRental2);
             stmt.executeUpdate(addRental3);
             stmt.executeUpdate(addRental4);
             stmt.executeUpdate(addRental5);
             stmt.executeUpdate(addRental6);
             stmt.executeUpdate(addRental7);
             stmt.executeUpdate(addRental8);
             stmt.executeUpdate(addRental9);
             stmt.executeUpdate(addRental10);
             stmt.close();
             con.close();
          catch(SQLException ex) {
             System.err.println("SQLException: " + ex.getMessage());
       public Demo(){
          super("Demo Test Frame");
          setSize(350, 200);
          comboBox = new JComboBox();
          comboBox.addItem("jdbc:odbc:VideoLibrary");
          qtm = new QueryTableModel();
          JTable table = new JTable(qtm);
          JScrollPane scrollpane = new JScrollPane(table);
          JPanel p1 = new JPanel();
          p1.setLayout(new GridLayout(3, 2));
          p1.add(comboBox);
          p1.add(new JLabel("Enter your query: "));
          p1.add(queryField = new JTextField());
          p1.add(new JLabel("Click here to send: "));
          JButton jb = new JButton("Search");
          jb.addActionListener(new ActionListener(){
             public void actionPerformed(ActionEvent e){
                qtm.setHostURL();
                qtm.setQuery(queryField.getText().trim());
          p1.add(jb);
          getContentPane().add(p1, BorderLayout.NORTH);
          getContentPane().add(scrollpane, BorderLayout.CENTER);
    import java.sql.*;
    import java.io.*;
    import java.util.Vector;
    import javax.swing.*;
    import javax.swing.table.*;
    public class QueryTableModel extends AbstractTableModel{
         Vector cache; 
         int colCount;
         String[] headers;
         Connection db;
         Statement statement;
         String currentURL;
         public QueryTableModel(){
              cache=new Vector();
              try{
             Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
              catch(Exception e){
                   System.out.println("problem loading the driver ");
         public String getColumnName(int i){
            return headers;
         public int getColumnCount(){
         return colCount;
         public int getRowCount(){
         return cache.size();
         public Object getValueAt(int row, int col){
              return ((String[])cache.elementAt(row))[col];
         public void setHostURL(){
         String url = "jdbc:odbc:VideoLibrary";
         closeDB();
              try{
    db=DriverManager.getConnection(url,"","");
    statement=db.createStatement();
    catch(Exception e){
    System.out.println("Could not initialize the database.");
    e.printStackTrace();
    public void setQuery(String q){
              cache=new Vector();
    String s="select * from Product";
              try{
                   ResultSet rs=statement.executeQuery(q);
                   ResultSetMetaData meta=rs.getMetaData();
                   colCount=meta.getColumnCount();
                   headers=new String[colCount];
                   for(int h=1;h<=colCount;h++){
                        headers[h-1]=meta.getColumnName(h);
                   while(rs.next()){
                        String[] record=new String[colCount];
                        for(int i=0;i<colCount;i++){
                             record[i]=rs.getString(i+1);
                        cache.addElement(record);
                   fireTableChanged(null);
              catch(Exception e){
                   cache=new Vector();
                   e.printStackTrace();
         public void initDB(String url){
              try{
                   db=DriverManager.getConnection(url);
                   statement=db.createStatement();
              catch(Exception e){
                   System.out.println("Could not initialize the database.");
                   e.printStackTrace();
         public void closeDB(){
              try{
                   if(statement!=null){
                   statement.close();
                   if(db!=null){
                   db.close();
              catch(Exception e){
                   System.out.println("Could not close the current connection.");
                   e.printStackTrace();

  • How  and where does SAP standard programs update the master tables...

    Hello there,
    How  and where does SAP standard programs update the master tables...
    to be precise.. if a (any) transaction occurs  the programs behind it holds the data in temporary structures.
    where and when does it get updated in the master table.
    can anyone tell me how it happens?
    I Know that from the where used list one can find the corresponding table but most of the time it wont suffice
    I am expecting a proper answer.
    Santosh B

    Hello Santosh,
    you need to do some self-reading on the following topic
    Updates in the SAP System (BC-CST-UP)
    http://help.sap.com/saphelp_47x200/helpdata/en/e5/de86e135cd11d3acb00000e83539c3/frameset.htm
    Regards,
    Siddhesh

  • Hi, why do we use the break and continue structure?

    Hi, I was wondering why do we use the break and continue structure in some program such as:
    for ( int i = 1; i <= 10; i++ ) {
    if ( i == 5 )
    break;
    So, now why do we use those codes, instead of achiving the same results by not using the if structure.
    I am new in java so I can be totaly wrong that is why my question come to you guys.
    I will appriciate if you let me understand more.

    I may not completely understand your question, but - imagine the following scenario:
    // Looking for some value in a long, unsorted list
    Object target = null;
    int index = -1;
    for (int i = 0; i < list.size(); i++) {
        Object curObject = list.get(i);
        if (curObject.equals(source)) {
            target = source;
            index = i;
    if (target != null){
        System.out.println("Found it at " + index);
    }You will always run through the entire long list, even if the thing you are looking for is the first thing in the list. By inserting a break statement as:
    // Looking for some value in a long, unsorted list
    Object target = null;
    int index = -1;
    for (int i = 0; i < list.size(); i++) {
        Object curObject = list.get(i);
        if (curObject.equals(source)) {
            target = source;
            index = i;
            break;
    if (target != null){
        System.out.println("Found it at " + index);
    }You can skip whatever's left in the list.
    As for continue, yes, I suppose you could use a big if, but that can get burdensome - you end up with code like:
    for (int i = 0; i < list.size(); i++) {
        Object curObject = list.get(i);
        // you want to do the rest only if some condition holds
        if (someCondition) {
            // do some stuff -
            // And you end up with lots of code
            // all in this if statement thing
            // which is ok, I suppose
            // but harder to read, in my opinion, than the
            // alternative
    }instead of
    for (int i = 0; i < list.size(); i++) {
        Object curObject = list.get(i);
        // you want to do the rest only if some condition holds
        if (!someCondition) {
            continue;
        // do some stuff -
        // And you end up with lots of code
        // all outside of any if statement thing
        // which is easier to read, in my opinion, than the
        // alternative
    }Hope that helped
    Lee

  • Standard program on good received statement

    Hi all,
    can anyone tell me any standard program on good received statement .

    Hi
    check this code
    report zmmgnrep0001
           line-count 58
           line-size 234
           no standard page heading
           message-id zpp.
    TABLES *********************************
    tables : mseg,
             mkpf,
             bkpf,
             ekbe,
             bseg,
             rseg,
             rbkp.
    DATA DECLARATION ****************************
    *data xekbe like ekbe occurs 0 with header line.
    *data zxekbe like ekbe occurs 0 with header line.
    *data :mirodoc like ekbe-belnr,
         mbudat like ekbe-budat.
    data xekbe like ekbe occurs 0 with header line.
    data zxrbkp like rbkp occurs 0 with header line.
    data zrseg like rseg  occurs 0 with header line.
    data :mirodoc like rseg-belnr,
          mbudat like rbkp-budat.
    data : begin of icheck occurs 0,
             checkdoc like rseg-belnr,
           end of icheck.
    data: begin of itab occurs 0,
            mblnr  like mkpf-mblnr,
            mjahr  like mkpf-mjahr,
            budat  like mkpf-budat,
            bldat  like mkpf-bldat,
            xblnr  like mkpf-xblnr,
            zeile  like mseg-zeile,
            bwart  like mseg-bwart,
            ebeln  like mseg-ebeln,
            ebelp  like mseg-ebelp,
            lifnr  like mseg-lifnr,
            lfbnr  like mseg-lfbnr,
            lfbja  like mseg-lfbja,
            lfpos  like mseg-lfpos,
            belnr  like bkpf-belnr,
            bxblnr like bkpf-xblnr,
            bbudat like bkpf-budat,
            wrbtr  like bseg-wrbtr,
            dmbtr  like bseg-dmbtr,
            kursf  like bkpf-kursf,
            grri   like bseg-hkont,
            accn   like bkpf-belnr,
           mirodoc like ekbe-belnr,
           mbudat  like ekbe-budat,
            mirodoc like rseg-belnr,
            mbudat  like rbkp-budat,
          end of itab.
    data : xmseg like mseg occurs 0 with header line,
           xmkpf like mkpf occurs 0 with header line.
    Modifed  by Raja Robinson,TTIL pune *****************************
    data: counter(10),
          counter1(10),
          flag,
          belnr like bkpf-belnr,
          xblnr like bkpf-xblnr,
          budat like bkpf-budat,
          totlc like bseg-dmbtr,
          totfc like bseg-wrbtr,
          kursf like bkpf-kursf,
          grri like bseg-hkont,
          nilcount(5).
    data: begin of hdg occurs 10,
            f1          type c   value '|',
            line(232),
            f2          type c   value '|',
          end of hdg.
    SELECTION SCREEN ****************************
    selection-screen begin of block input with frame.
    select-options: pos_date for mkpf-budat,
                    mat_no   for mseg-matnr,
                    mv_type  for mseg-bwart,
                    vend_cd  for mseg-lifnr,
                    po_no    for mseg-ebeln,
                    hkont    for bseg-hkont.
    selection-screen end of block input.
    BEGIN OF CODE ******************************
    BEGIN OF MAIN CODE ***************************
    start-of-selection.
      perform initialization.
      perform get_data_for_input.
      perform filter_data.
      perform getmirodata.
      perform format_data.
      perform print_data.
    *&      Form  INITIALIZATION
          text
    -->  p1        text
    <--  p2        text
    form initialization.
    endform.                               " INITIALIZATION
    *&      Form  GET_DATA_FOR_INPUT
          text
    -->  p1        text
    <--  p2        text
    form get_data_for_input.
      select a~mblnr                       " Material Document (GRN No.)
             a~mjahr                       " Material Document Year
             a~budat                       " Material Document Posting Date
             a~bldat                       " Material Document Date
             a~xblnr       " Reference Document (Invoice No.)
             b~zeile                       " Material Document Item No.
             b~bwart       " Movement Type (101 - GR Iss., 102 - GR Reverse)
             b~ebeln                       " Purchase Order
             b~ebelp                       " Purchase Order Line Number
             b~lifnr                       " Vendor Code
             b~lfbnr " Reference Document No(Contains 101 No in case of 102)
             b~lfbja                       " Reference Document Year
             b~lfpos                       " Reference Document Item No.
             into corresponding fields of table itab
             from mkpf as a
             inner join mseg as b
             on  amblnr = bmblnr
             and amjahr = bmjahr
             where a~budat in pos_date
             and   b~bwart in mv_type
             and   b~ebeln in po_no
             and   b~matnr in mat_no
             and   b~lifnr in vend_cd.
      if sy-subrc <> 0.
        message e000(zpp) with 'No Data Found for the Input Criteria.'.
      endif.
    endform.                               " GET_DATA_FOR_INPUT
    *&      Form  GETMIRODATA
    form getmirodata.
    select * from rseg into table zrseg for all entries in itab
                  where  ebeln = itab-ebeln
                     and ebelp = itab-ebelp.
    select * from rbkp into table zxrbkp for all entries in zrseg
                   where  belnr = zrseg-belnr.
    endform.
    *&      Form  FILTER_DATA
          text
    -->  p1        text
    <--  p2        text
    form filter_data.
      sort itab by lifnr mblnr ebeln.
      loop at itab.
        if itab-bwart = '102'.
          delete itab where mblnr = itab-lfbnr
                      and   mjahr = itab-lfbja
                      and   zeile = itab-lfpos.
          delete itab.
        endif.
      endloop.
    endform.                               " FILTER_DATA
    *&      Form  FORMAT_DATA
          text
    -->  p1        text
    <--  p2        text
    form format_data.
      loop at itab.
        clear : ekbe,bkpf.
    *select * from ekbe
                into corresponding fields of table zxekbe
               where ebeln = itab-ebeln   "xmseg-ebeln
               and   ebelp = itab-ebelp   "xmseg-ebelp
               and   bewtp  in ('R', 'Q').
        select * from ekbe
                 into corresponding fields of table xekbe
                where ebeln = itab-ebeln   "xmseg-ebeln
                and   ebelp = itab-ebelp   "xmseg-ebelp
                and   lfbnr = itab-mblnr   "xmseg-mblnr
                and   lfgja = itab-mjahr   "xmseg-mjahr
                and   lfpos = itab-zeile   "xmseg-zeile
                and   bewtp in ('E', 'R').
        if sy-subrc = 0.
          loop at xekbe.
            case xekbe-bewtp.
              when 'E'.
                select single * from bkpf
                               where bukrs = 'GMI'
                              and   belnr like '%'
                              and   gjahr like '%'
                               and   bstat = space
                               and   xblnr = xekbe-xblnr
                               and   blart = 'WE'.
                              and   budat = xekbe-budat
                              and   bldat = xekbe-bldat and  blart = 'WE'.
                itab-wrbtr = xekbe-wrbtr.
                itab-dmbtr = xekbe-dmbtr.
                itab-kursf = bkpf-kursf.
                itab-accn = bkpf-belnr.
              when 'R'.
                select single * from bkpf
                               where bukrs = 'GMI'
                               and   belnr = xekbe-belnr
                               and   gjahr = xekbe-gjahr.
                move bkpf-belnr to itab-belnr.
                move bkpf-xblnr to itab-bxblnr.
                move bkpf-budat to itab-bbudat.
            endcase.
            select single * from bseg where bukrs = bkpf-bukrs and gjahr =
            bkpf-gjahr and belnr = bkpf-belnr and buzid = 'W'.
            itab-grri = bseg-hkont.
            clear bkpf.
          endloop.
        endif.
      read table zrseg with key  ebeln = itab-ebeln
                                 ebelp = itab-ebelp.
               on change of zrseg-belnr.
              if not icheck[] is initial.
              read table icheck with key checkdoc = zrseg-belnr.
                if sy-subrc <> 0.
                icheck-checkdoc = zrseg-belnr.
                 append icheck.
               move zrseg-belnr to itab-mirodoc.
               read table zxrbkp with key belnr = zrseg-belnr.
               if zxrbkp-budat >= itab-budat.
                  move zxrbkp-budat to itab-mbudat.
                endif.
               endif.
             else.
              move zrseg-belnr to itab-mirodoc.
               icheck-checkdoc = zrseg-belnr.
                 append icheck.
                endif.
                read table zxrbkp with key belnr = zrseg-belnr.
               if zxrbkp-budat >= itab-budat.
                  move zxrbkp-budat to itab-mbudat.
                endif.
               endon.
    read table zxekbe with key ebeln = itab-ebeln
                                       ebelp = itab-ebelp.
              move zxekbe-belnr to itab-mirodoc.
              move zxekbe-budat to itab-mbudat.
           clear: zxekbe.
    ********- SZ398R on 22.04.2008
        modify itab.
      endloop.
      sort itab by mblnr.
      counter = 0.
    endform.                               " FORMAT_DATA
    *&      Form  PRINT_DATA
          text
    -->  p1        text
    <--  p2        text
    form print_data.
      if hkont <> ''.
        delete  itab where not  grri in hkont.
      endif.
      loop at itab.
        clear flag.
        mirodoc = itab-mirodoc.
        mbudat  = itab-mbudat.
        on change of itab-mblnr.
          counter = counter + 1.
          write:/0(12)  itab-lifnr,        " to out-line+0(12).
                 13(10) itab-mblnr,        " to out-line+13(10).
                 24(10) itab-budat,        " to out-line+24(10).
                 36(16) itab-xblnr,        " to out-line+36(16).
                 53(10) itab-bldat,        " to out-line+53(10).
                 64(10) itab-ebeln,        " to out-line+64(10),
                 160(12) itab-accn,
                180(15) itab-grri.
          flag = 1.
        endon.
        if belnr = '   '.
          belnr = itab-belnr.
          xblnr = itab-bxblnr.
          budat = itab-bbudat.
          kursf = itab-kursf.
        endif.
        totlc = totlc + itab-dmbtr.
        totfc = totfc + itab-wrbtr.
        counter1 = counter1 + 1.
        at end of mblnr.
          if belnr = '   '.
            belnr = 'Nil'.
            nilcount = nilcount + 1.
          endif.
          write: 75(16)  totlc no-zero,
                 92(16)  totfc no-zero,
                 109(8)  kursf no-zero,
                 118(10) belnr,
                 129(16) xblnr,
                 146(10) budat,
                 198 mirodoc,
                 215 mbudat.
               CLEAR:mirodoc,mbudat  .
          clear: totlc, totfc, belnr, xblnr, budat.
        endat.
      endloop.
      uline.
      write : / counter, 'GRNs Selected'.
    write : / counter1, 'records selected.'.
      write : / nilcount, 'GRNs have no JV attached'.
      write : 69 '***END OF REPORT*****'.
    endform.                               " PRINT_DATA
    TOP OF PAGE *******************************
    top-of-page.
      uline.
      clear hdg-line.
      write : 'General Motors India Confidential' to hdg-line+90.
      write : hdg color col_heading intensified.
      clear hdg-line.
      write : 'Report : ZMM4' to hdg-line+1.
      write : hdg color col_heading intensified.
      clear hdg-line.
      write : 'Date   :' to hdg-line+10.
      write : sy-datum to hdg-line+20.
      write : sy-uzeit to hdg-line+39.
      write : 'Requested By :' to hdg-line+55.
      write : sy-uname to hdg-line+70.
      write : hdg color col_heading intensified.
      clear hdg-line.
      write :  'Goods Receiving Report' to hdg-line+45,
               'Page No.     : '    to hdg-line+75,
               sy-pagno             to hdg-line+91(3).
      write : hdg color col_heading intensified off.
      uline.
      clear hdg-line.
      write :/0(12)   'Vendor',            "          to hdg-line+0,
              13(10)  'GRN No.',           "          to hdg-line+13,
              24(10)  'GRN Date',          "          to hdg-line+24,
              36(16)  'Invoice No.',       "          to hdg-line+36,
              53(10)  'Inv. Dt.',          "          to hdg-line+53,
              64(10)  'PO No.',            "          to hdg-line+64,
              75(16)  'Amount in LC' right-justified, " to hdg-line+153,
              92(16)  'Amount in FC' right-justified, " to hdg-line+179,
              109(8)  'Exchg Rt' right-justified,     " to hdg-line+167,
              118(10) 'JV No.',            "          to hdg-line+193,
              129(16) 'JV.Reference',      "          to hdg-line+204,
              146(10) 'Post.date',         "          to hdg-line+221.
              160     'Account No',
              180     'Acc Post',
             198     'MIRO Document',
             215     'MIRO Post'.
    END OF CODE *******************************
    thanks
    sitaram

  • Why do programs change the volume of main channels?

    Why do programs modify the volume of the system themselves and not just of their own "channel" similar to in windows? The only programs I found that do this are quakelive and the flash plugin.
    The fact these programs do do this means it it possible, so why is it not the standard?
    It is quite annoying to have to raise the volume of my system just because I turned down the sound in mplayer or mp3blaster or some other application. Is there any easy fix for this?

    lucke wrote:
    josh000 wrote:I don't want to draw comparisons, but windows and mac have had this basic ability for at least the last 10 years.
    Didn't system per-app volume control, akin to the one provided by pulseaudio, appear only in Vista?
    For whatever it is worth, I use pulseaudio only for that functionality.
    No, Vista included separate mixers for each application.
    Programs have had independent volume control since 95, and quite possible since 3.1
    You could make a movie player have lower volume than say, a game or song playing, while having one volume control for the system. In vista beyond you have separate volume controls for each application, regardless of if the application allows it or not.

  • Why do we use CRAETE DATA statement ?

    Hi,
    Why do we use CREATE DATA statement ? is it only for optimisation  ?
    thanks.
    Edited by: B on Jan 27, 2009 4:13 PM

    >
    B wrote:
    > Hi, thank you for the answers. The reply by Sonia Baboo was not copy paste from abap help. whereas the one from Niki was.
    >
    >
    >  i have rewarded points. the answers were very helpful
    >
    > thanks
    > B
    It was copy and paste from SAP Help.  http://help.sap.com/saphelp_nw70/helpdata/EN/16/0dce040cf711d3b9360000e8353423/content.htm

  • How do I use the CASE statement  in the where clause?

    Hello Everyone,
    I have 2 queries that do what I need to do but I am trying to learn how to use the CASE statement.
    I have tried to combine these 2 into one query using a case statement but don't get the results I need.
    Could use some help on how to use the case syntax to get the results needed.
    thanks a lot
    select segment_name,
    product_type,
    count (distinct account_id)
    FROM NL_ACCT
    where
    ind = 'N'
    and
    EM_ind = 'N'
    and product_type in ('TAX','PAY')
    and acct_open_dt between (cast('2006-01-17' as date)) and (cast('2006-01-17' as date) + 60)
    GROUP BY 1,2
    order by product_type
    select segment_name,
    product_type,
    count (distinct account_id)
    FROM NL_ACCT
    where
    ind = 'N'
    and
    EM_ind = 'N'
    and product_type not in ('TAX','PAY')
    and acct_open_dt between (cast('2006-01-17' as date)) and (cast('2006-01-17' as date) + 30)
    group by 1,2
    order by product_type

    Something like:
    SELECT segment_name, product_type,
           SUM(CASE WHEN account_id IN ('TAX','PAY') and
                         acct_open_dt BETWEEN TO_DATE('2006-01-17', 'yyyy-mm-dd') and
                               TO_DATE('2006-01-17', 'yyyy-mm-dd') + 60 THEN 1
                    ELSE 0 END) tax_pay,
           SUM(CASE WHEN account_id NOT IN ('TAX','PAY') and
                         acct_open_dt BETWEEN TO_DATE('2006-01-17', 'yyyy-mm-dd') and
                               TO_DATE('2006-01-17', 'yyyy-mm-dd') + 30 THEN 1
                    ELSE 0 END) not_tax_pay
    FROM NL_ACCT
    WHERE ind = 'N' and
          em_ind = 'N' and
          acct_open_dt BETWEEN TO_DATE('2006-01-17', 'yyyy-mm-dd') and
                               TO_DATE('2006-01-17', 'yyyy-mm-dd') + 60
    GROUP BY segment_name, product_type
    ORDER BY product_typeNote: You cannor GROUP BY 1,2, you need to explicitly name the columns to group by.
    HTH
    John

  • How to use the Include Statement in the BADI

    Dear All,
            I am trying to implement the BADI. So i need to use the Include in the BADI.
    How to use the Include statement in the BADI. I cant able to use it in the Public, Private and protected statement.
    Where should i mention that,,,,
    Thanks
    Yogesh

    Hi Sharat,
      Thanks for your reply.
    I need to use the BADI HRWPC_PCR_APPR_FORM. In which the values are available in the Container. So if i need to use the container values then i need to use that include <cntain>.
    Is there any possible ways to make it.
    Thanks
    Yogesh

  • I;m no longer able to use the Penn State ANGEL system (I teach on line) for my email and intead get messages about "script" problems.

    Question
    I'm no longer able to use the Penn State ANGEL system (I teach on line) for my email and instead get messages about "script" problems

    I have asked a moderator to provide assistance, they will post an invite on this thread.
    They are the only BT employees on this forum, and are a UK based team of people, who take personal ownership of your problem.
    Once you get a reply, make sure that you are logged into the forum, then click on their name, you will see a screen like this. Click on the link as shown below.
    Please do not send them a personal message, as they may not be on duty for a long time, and your message will not be tracked properly.
    For your own security, do not post any personal details, on this forum. That includes any tracking number you are give.
    They will respond either by phone or e-mail within 5-6 working days.
    Please use the tracked e-mail, to reply, not via the forum. Thanks
    This is the form you should see when you click on the link. If you do not see this form, then you have selected the wrong link.
    When you submit the form, you will receive an enquiry number, so please keep a note of it
    There are some useful help pages here, for BT Broadband customers only, on my personal website.
    BT Broadband customers - help with broadband, WiFi, networking, e-mail and phones.

  • How do I buy a song from the UK store if I use the United States store?

    I use the United States store and I noticed that one of my favorite bands, Busted, has some songs I want but they are in the UK store. I tried to buy them but it said I couldn't. Is there anyway to get these songs?

    *i can go into any country and purchace anything with an american credit card*
    And you will pay and VAT/duty/customs that were levied on that item when it was brought into that country.
    And you may have to pay VAT/duty/customs when you leave that country with that item.
    Besides, certain items available in one country on one label, may be on a different label in another country.

  • Can we write in Italic font on to the screen by using the WRITE Statement

    Hello Abappers,
    Can we write in Italic font on to the screen by using the WRITE Statement.
    Please reply.
    Regards,
    Rahul

    Hi Rahul,
    >Sandeep Wrote:
    If you have the codepage for Italian language installed in your machine , you can write the same.
    The OP is asking about italic font not about the language.
    You need to upload font files ITALICI.TTF. Go to SE73 . Click on Install True type font and upload the italic file on to your system.
    Check Font Attribute Italic
    We already have help files on this. Refer:
    [Using TrueType Fonts|http://help.sap.com/saphelp_nw70/helpdata/en/36/5b3438fd263402e10000009b38f8cf/content.htm]
    I don't have idea on write statement in ABAP reports. Hope it cannot be.
    Edited by: K.Manas on Dec 30, 2010 6:08 AM

  • Running abap programs using the macros

    In our DP implementation we have faced several issues in the extraction of the data from the demand planning to one of the legacy system. We have written the ABAP program and would be using the read planning book bapi. I wanted to run the ABAP program using the macro could some one please let me know what is the structure of the macro builder that is used to fire the ABAP program. this is being fired from the macros as some comparison is to be done to run the macro.

    Hi,
    Some more information on macro function
    REPORT_SUBMIT()
    REPORT_SUBMIT( 'program_name' ;  <'job_name'> ; <'job_number'>; <'newmode'>) causes the specified program to be executed. Use the optional arguments, job name and job number, if you wish the program to run in the background. If you set the argument 'newmode', the results are displayed in a new window.
    Hope this will helps you.
    Regards,
    Sunitha.

  • Cannot eject the start-up disk from my PowerBook G4 (laptop). Can anyone help me? My screen is blank too, that's why I'm using the start-up disk. MacBook Pro (17-inch 2.4 GHz), Mac OS X (10.7.4)

    Cannot eject the start-up disk from my PowerBook G4 (laptop). Can anyone help me? My screen is blank too, that's why I'm using the start-up disk.
    MacBook Pro (17-inch 2.4 GHz), Mac OS X (10.7.4)

    Try holding down the trackpad button while starting up the PowerBook.  Holding down mouse button during start up ejects the disc in the optical drive, so I'm guessing it would work the same with the button the the trackpad.

Maybe you are looking for