Deep Cloning of resultset object

Hi, Is it possinble? Deep Cloning of resultset object?
Resltset rs = pstmt.execute()
Anyway to assign rs2 = rs1
Because I am passing my resulset to a legacy application's method, that does a rs.close(). I need to use the same resultset later. JDK 1.4

Write a dynamic proxy to the ResultSet where theclose() method does >nothing.
What if the OP discovers that the app does a rs=null
as well?How can that affect your code? Presumably the ResultSet is passed as an argument to a legacy method so the legacy method might set it's local reference to null it will not affect the reference held by the caller of the method.
The op then runs thru hoops to get permission to
modify a line in legacy code and is too distressed to
post.He does not need to! You need to learn about Java argument passing.
Anyway, thanks for the classrom solution. but i cant
create another class file for extending rs.You have not presented any reason why not! This can be an inner class in the code you are writing and has no influence what so ever on the legacy application.
>
If you are too distressed by the posts here, you are
under no obligation to reply to every one. Anyway , i
found the postI replied because I had a viable solution to a problem you were having. Nothing you have said so far stops it being viable. Look at my posting history - I do not try to reply to everyone.
>
A Resultset is mainly a Java front end for adatabase
cursor (which exists on the database server). When
the ResultSet is closed, the cursor will be closed
too so, even if you could copy everything in the
ResultSet object, the handle for the cursor wouldno
longer be valid.
Which is why you use a Proxy so that you can control exactly what happens.
>>
To truely "deep copy" a resultset the depth would
have to extend accros the database connection to
cloning the cursor.I still don't see why you need to clone the ResultSet rather than use a proxy!
>
very much useful than the self pity expressed by
you.No self pity! I just expressed annoyance at the lack of feedback from you and many others.
No offence, none taken and none dealt.I still find it offensive when people don't bother with a simple acknowledgement. I don't ask many questions myself but when I do I make sure I track the responses and acknowledge those who try to help.
I still think you should re-think your solution but you are free to totally ignore my very simple solution. I expect you will ignore it so the best of luck.

Similar Messages

  • Deep Cloning problem

    I am having problems deep cloning a LinkedList object which contains serializable objects. I have tried using hand coded deep cloning and using the byteArray output and input streams.
    But nothing is working :(.
    My code currently looks like this:
    public LinkedList clones(LinkedList list){
       LinkedList deepCopy = new LinkedList();
       for(int x = 0; x < list.size(); x++){
          myClasstemp = new myClass((materials)list.get(x));
          deepCopy.add(new myClass(temp));
       return deepCopy;
    }cloning using just new myClass works when I am using individual objects, but when I try applying this to the new linkedlist, nothing happens. Is my error in the fact I am using .get? Or is it somewhere else in my code?
    My problem is that when I remove an object from the original LinkedList, the deepclone is changed as well.
    Message was edited by:
    DocterJ0208

    to be as detailed as possible, my problem is that I actually have 2 classes. One class is a structure object which contains basic properties like doubles and strings. And the other has doubles and strings as well and includes a LinkedList containing objects from the first class. To for an example, I have a student and School class where a School object contains a LinkedList holding all the students at the school.
    What I am trying to do is make a Cancel button. So, what I want is to make a copy of the original school, so if while editing the school, I decide I want to revert back to my original settings, I can by pressing the cancel button. So far, I can only accomplish this with the student class but not the School class. Does that make sense?

  • Problem in deep cloning

    Hai Friends,
    I am trying to use deep cloneing for copying objects and then setting the appropriate values to the properties of copied object. When we make deep clone copy, it is supposed to retain original property values. But in the example I tried, it shows only zeros. The source code and the output is given below. i seek your expertise and my advance thanks for any help to resolve my problem.
    * This class extends the class of Javas Point2D.Double
    import java.awt.geom.Point2D;
    import java.awt.Rectangle;
    import java.io.Serializable;
    import java.awt.Graphics2D;
    import javax.swing.JFrame;
    import java.awt.Graphics;
    import java.awt.Color;
    import java.awt.geom.AffineTransform;
    import java.util.ArrayList;
    import java.io.Serializable;
    import java.io.ObjectInputStream;
    import java.io.ByteArrayOutputStream;
    import java.io.ObjectOutputStream;
    import java.io.ByteArrayInputStream;
    import java.lang.ClassNotFoundException;
    import java.io.IOException;
    public class point2D extends Point2D.Double implements Cloneable, Serializable{
    // Properties
         Color drawColor =Color.red;
    * Constructor
    point2D(){ }
    point2D( double xx, double yy){ super(xx,yy); }
    public void setLocation( double xx, double yy){
         super.setLocation(xx,yy);}
    public void setDrawColor( Color drawColor){
         drawColor = this.drawColor;}
    * Draw a rectangle around through point.
    public Rectangle getPointRect(){
    int width = 4;
    return new Rectangle( (int)x-width/2,(int)y-width/2, width, width);
    * Check for a given point coinciding with point2D
    * location check is true, if it contains the point
    public boolean locationCheck( double x, double y){
         return getPointRect().contains((int)x,(int)y);
    * Draw method.
    public void draw( Graphics2D g2d ){
         g2d.setColor(drawColor);
    g2d.fill( getPointRect());
    public Object deepClone()
    try{
    ByteArrayOutputStream b = new ByteArrayOutputStream();
    ObjectOutputStream out = new ObjectOutputStream(b);
    out.writeObject(this);
    out.close();
    ByteArrayInputStream bIn = new ByteArrayInputStream(b.toByteArray());
    ObjectInputStream oi = new ObjectInputStream(bIn);
    oi.close();
    return oi.readObject();
    catch (IOException e)
    { System.out.println("exception:"+e.getMessage());
    e.printStackTrace();
    return null;
    catch( ClassNotFoundException cnfe){
    System.out.println("exception:"+ cnfe.getMessage());
    cnfe.printStackTrace();
    return null;}          
    public static void main( String[] args){
         point2D pp = new point2D();
         pp.setLocation( 100.,150.);
         System.out.println( pp.locationCheck(100.5, 149.5));
    System.out.println( pp.getX() + " " + pp.getY());
         point2D ppp = (point2D)pp.deepClone();
    System.out.println( ppp.getX() + " " + ppp.getY());
    The output:
    true
    100.0 150.0
    0.0 0.0

    Hai sztejkat,
    I tried with adding methods to save and restore the state of the non-serializable class and it works.
    What is the reason to implement deep clone in point2D - this class does not contain any references >except Color, which is an immutable class and can be safely shared by multiple objects. In this case the >shallow copy will work fine. In my opinion the method you have choosen to implement deep copy is one >of the worst possible, looking from performance point of view. Shallow copy makes a new reference but pointing to the same object. My intension of deep copying was to create a new object. However, I fully agree with you that for simple instances of Point2D.Double, it is better to create a new onject using " new" operator than deepcopying.
    With best regards,
    Chinnaswamy

  • Generic class for deep cloning

    How can I write generic class for deep cloning instead of implementing cloneable for each and every object

    Yes, probably you'd need to use reflection. Though, generic deep copy brings up some issues not readily resolvable at run-time, such as, for example, does the object you want to copy refer to a shared or synchronized resource, such as a db connection? If so, by making a new, say, DBConnection object, you then take up a db connection that you really don't need or want to take up (db conns being scarce in many I.T. shops that own a limited number of Oracle or SQL Server, etc. db conn. licenses). Also, many classes these days are getting written that use "obj = classname.newInstance()" (with their constructors made private so you can't use "new SomeObject()") instead of the more commonsense and traditional "obj = new SomeObject()". [Hey, can anyone explain why it might be preferable to use "classname.newInstance()" at times over "new SomeObject()"?  I can't to this day tell why it might be better or why some hacks have started doing this.]
    I am not saying either that you couldn't do it or that you shouldn't. In fact, if you wrote a really good generic deep copy class, it may very well suit your needs 95+% of the time. It'd be a great programming exercise that would likely result in something very useful to someone somewhere (yourself included), and would get you to really learn the reflect package, time generally well-spent. I also can see how it'd be a great exercise in writing recursive calls (if for example you'd like no limit to the depth of objects created within your deep-copied object). You may need to supply a few caveats for use, such as that there's no guarantee that objects within the object to be copied that don't have public constructors can be copied, and that objects that hold other objects that are limited in availablity due to their very natures, such as db connections, may not get fully copied. Another one may be that no object can be copied as long as a thread created and run from it is executing at the time the copy is done (because you couldn't guarantee the to-be-copied object instance's data or object reference state), or that perhaps in some cases, certain kinds of method-level (ie, what's officially called by Sun, "automatic") variables declared and used within, for example, blocks of code within methods, may not have their values copied correctly if they are not visible to the reflect pkg objects (though I'd have to look into that one myself to be sure it would be an issue).
    Doing a search on "deep copy" or "deep clone" on java.sun.com as well as on the 'net reveals surprisingly little except suggestions for using object serialization to do all the dirty work for you.
    I am surprised there isn't a kind of virtual working group trading ideas on the topic and trying collaboratively to come up with a good, solid generic deep copy class as a public service for all the Java brethren. Does anyone know of one? And if not, wanna start one?

  • Deep cloning

    Hi i need to know how can I make deep cloning of own created array which will store the same array as well as other objects like Integer class and then array at element of array will again store another array or some other objects and then again at any element store array can store objects or array . I need to know how should i make deep cloning recuresively . and how should i write hash code and equals method for that class . please help me. I m feeling fustrated

    As a supplementary issue on this subject I am interested how to choose between the Arrays and the
    ArrayList classes. This thread suggests that Arrays is more versatile, although I usually use an
    ArrayList. Should I review this practice?Sorry. You read the thread incorrectly. :-)
    Arrays and ArrayList are completely different. java.util.Arrays has static methods for dealing with arrays. java.util.ArrayList is like a resizable array. java.util.Collections has static methods that can be used on java.util.ArrayList. Read the APIs, and you will see the difference.

  • Two resultset objects

    IS it possible to define two resultset objects with two different queries inside the same DB class?java.sql.SQLException: Invalid state, the ResultSet object is closed.
         at net.sourceforge.jtds.jdbc.JtdsResultSet.checkOpen(JtdsResultSet.java:299)
         at net.sourceforge.jtds.jdbc.MSCursorResultSet.next(MSCursorResultSet.java:1123)
         at DB5.getDetails(Daily_Quote_Response_report.java:238)
         at Daily_Quote_Response_report.main(Daily_Quote_Response_report.java:74)
    java.util.List items = null;
            String query;
            String query2;
            try {
                query =
                       "select * from oqrep_except_resp_summary";
                query2 = "select * from oqrep_except_resp_detail";
                Statement state = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
                        ResultSet.CONCUR_READ_ONLY);
                ResultSet rs = state.executeQuery(query);
                ResultSet rs2 = state.executeQuery(query2);
              //cannot create two rs objects // ResultSet rs2 = state.executeQuery(query);
                items = new ArrayList();Edited by: bobz on 03-Dec-2009 11:16
    Edited by: bobz on 03-Dec-2009 11:16

    Note: This thread was originally posted in the [Java Programming|http://forums.sun.com/forum.jspa?forumID=31] forum, but moved to this forum for closer topic alignment.

  • Using all types of resultset Objects i need a single program

    i think all of u know that there are 8 types of resultset objects are there in jdbc technology i.e
    # next() - moves the cursor forward one row. Returns true if the cursor is now positioned on a row and false if the cursor is positioned after the last row.
    # previous() - moves the cursor backwards one row. Returns true if the cursor is now positioned on a row and false if the cursor is positioned before the first row.
    # first() - moves the cursor to the first row in the ResultSet object. Returns true if the cursor is now positioned on the first row and false if the ResultSet object
    does not contain any rows.
    # last() - moves the cursor to the last row in the ResultSet object. Returns true if the cursor is now positioned on the last row and false if the ResultSet object
    does not contain any rows.
    # beforeFirst() - positions the cursor at the start of the ResultSet object, before the first row. If the ResultSet object does not contain any rows, this method has
    no effect.
    # afterLast() - positions the cursor at the end of the ResultSet object, after the last row. If the ResultSet object does not contain any rows, this method has no effect.
    # relative(int rows) - moves the cursor relative to its current position.
    # absolute(int n) - positions the cursor on the n-th row of the ResultSet object.
    Using all these result set methods i need a sample program all these methods must be used in a single program itself

    BalajiEnntech123 wrote:
    i think all of u know that there are 8 types of resultset objects are there in jdbc technology i.e I don't know who "u" are but they're wrong if they think there are "8 types of resultset objects are there in jdbc technology".
    They'd be especially wrong to think that the methods you mention are "types of resultset objects".

  • Scrollable/Read_only  ResultSet objects

    I am trying to create an instance of a scrollable/read_only ResultSet object with the following code:
    Statement stmt = con.createStatement(
    ResultSet.TYPE_SCROLL_INSENSITIVE,
    ResultSet.CONCUR_READ_ONLY);
    ResultSet rs = stmt.executeQuery("SELECT * FROM ...");
    The Connection object has been made successfully but am getting an AbstractMethodError Exception at line 1.
    Can anyone please help me out here.
    Thank you.

    I don't believe the Oracle driver allows for
    read/only. I'll take a look at the Oracle website,
    and see if I can verify that.
    JoelSorry, I was wrong on this. From the Oracle JDBC documentation, it states that CONCUR_READ_ONLY is valid for the Oracle 8 and Oracle 9 drivers. Are you using classes12.zip or classes12.jar for your Oracle libraries?

  • Scrollable/Updateable ResultSet objects

    I am trying to create an instance of a scrollable/updateable ResultSet object with the following code:
    Statement stmt = con.createStatement(
    ResultSet.TYPE_SCROLL_INSENSITIVE,
    ResultSet.CONCUR_UPDATABLE);
    ResultSet rs = stmt.executeQuery("SELECT * FROM sch.a");
    The Connection object has been made successfully but am getting an AbstractMethodError Exception at line 1.
    Can anyone please help me out here.
    Thanks
    I am using JDK 1.3.1 and JDBC 2.0

    I use this and works fine for me....let me know how it goes...
    ResultSet resultSetMultCond = null;
    Statement getMultPartCond = null;
    String sqlMultCond = null;
    sqlMultCond = "SELECT #PART,#CONDS,COUNT(*) AS MCOUNT FROM MYLIB WHERE #PART = 'A123' GROUP BY #PART,#CONDS ORDER BY #PART";
    getMultPartCond = conn.createStatement(java.sql.ResultSet.TYPE_SCROLL_SENSITIVE,java.sql.ResultSet.CONCUR_UPDATABLE);
    resultSetMultCond = getMultPartCond.executeQuery(sqlMultCond);

  • Can i open more than one Resultset object

    hi in my program i have to retrive data from three table and the data from three
    table i have to use in another one
    i wanna know that can we open more than one ResultSet object within one
    try{
    }catch{] block ( i means ResultSet rs = st.excuteQuery(query) more than one time for different -different tables)
    or there is any other way to do this

    You can only have one active result set per statement at a time.
    Depending on the driver you are using you might be able to have more than one active statement (and result set) on one connection. Or not.
    Try catch has nothing to do with that.
    If you are nesting result sets then it is likely you should be using a join (SQL) which would then only require one result set.

  • Deep Cloning of Arrays

    Hello, I am stuck with this problem...
    I am trying to clone an Array object of type MajorCat. Each MajorCat contains another Array of type MinorCat.
    MajorCat[] contains n MajorCat
    MajorCat[0] contains MinorCat[], of length m
    I wanna clone MajorCat[], which will in turn clone MinorCat[] embedded within it.
    Tried the method given in Section "CloneDemo5" within:
    http://developer.java.sun.com/developer/JDCTechTips/2001/tt0306.html
    The result is strange, and I need a solution...
    Result:
    1) MajorCat[] after cloning gives another copy
    2) MinorCat[] after cloning gives another copy
    3) the orginal MajorCat[] remains the same Object
    4) BUT THE ORIGINAL MinorCat[] points to the Object at 2) !!!!!!!
    Please see this System.out:
    Original MAJORCAT starting off is [LMajorCat;@59ac7b [LMinorCat;@e2ae8   <--- 1)
    Minor Cat before cloning: [LMinorCat;@e2ae8
    Minor Cat after cloning:  [LMinorCat;@489bb6
    New MAJORCAT afterward is  [LMajorCat;@487a3a [LMinorCat;@489bb6
    Original MAJORCAT is   [LMajorCat;@59ac7b [LMinorCat;@489bb6
    Here is the code:
    MajorCat[] tempcat = (MajorCat[])(majorcat.clone());
    for ( int i=0; i<majorcat.length; i++ ) {
    if ( majorcat.minorcat != null ) {
    tempcat.minorcat = (MinorCat[])(majorcat.minorcat.clone());
    What have I done wrong? A million thanks in advance!!!!

    Hello, I put the overloading clone() method back into MajorCat and MinorCat. Again, they are never called...
    Here is the code:
    public class CatelogueSingleton extends ConnectionBase {
        protected MajorCat[] majorcat = null;
        public MajorCat[] getCatelogue() {
            if ( majorcat == null ) {
                renewAllObjects();
                System.out.println("majorcat erased!");
            MajorCat[] tempcat = (MajorCat[])(majorcat.clone());
            System.out.println("original object is   " + majorcat + " " + majorcat[0].minorcat + " " + majorcat[0].minorcat[0].itemgroup + " " + majorcat[0].minorcat[0].itemgroup[0].item);
    // clone each Object in majorcat[]
            for ( int i=0; i<majorcat.length; i++ ) {
                if ( majorcat.minorcat != null ) {
    tempcat[i].minorcat = (MinorCat[])(majorcat[i].minorcat.clone());
    for ( int j=0; j<majorcat[i].minorcat.length; j++ ) {
    if ( majorcat[i].minorcat[j].itemgroup != null ) {
    tempcat[i].minorcat[j].itemgroup = (ItemGroup[])(majorcat[i].minorcat[j].itemgroup.clone());
    for ( int k=0; k<majorcat[i].minorcat[j].itemgroup.length; k++ ) {
    if ( majorcat[i].minorcat[j].itemgroup[k].item != null ) {
    tempcat[i].minorcat[j].itemgroup[k].item = (Item[])(majorcat[i].minorcat[j].itemgroup[k].item.clone());
    System.out.println("cloned object is " + tempcat + " " + tempcat[0].minorcat);
    System.out.println("after cloning the original object is " + majorcat + " " + majorcat[0].minorcat);
    return tempcat;
    Here is the code for MajorCat...
    public class MajorCat extends ConnectionBase implements java.io.Serializable, Cloneable {
        public MinorCat[] minorcat = null;
        public Object clone() {
            try {
                System.out.println("Cloning majorcat");
                MajorCat aobj = (MajorCat)super.clone();
                aobj.minorcat = (MinorCat[])(this.minorcat.clone());
                return aobj;
            catch (CloneNotSupportedException e) {
                throw new InternalError(e.toString());
        public MajorCat() {
    }here is the code for MinorCat...
    public class MinorCat extends ConnectionBase  implements java.io.Serializable, Cloneable {
        public ItemGroup[] itemgroup = null;
        public Object clone() {
            try {
                MinorCat aobj = (MinorCat)super.clone();
                aobj.itemgroup = (ItemGroup[])(this.itemgroup.clone());
                return aobj;
            catch (CloneNotSupportedException e) {
                throw new InternalError(e.toString());
        public MinorCat() {
    }The result is:
    original object is [LMajorCat;@572085 [LMinorCat;@180b94
    cloned object is     [LMajorCat;@148656 [LMinorCat;@180b94
    after cloning the original object is  [LMajorCat;@572085 [LMinorCat;@180b94
    The original MinorCat within MajorCat now points to the new clone, and the clone() within MajorCat and MinorCat aren't called.... as there is no System.out statements.
    What have I done wrong in clone() within MajorCat and MinorCat?                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

  • How to set the fetch size for a ResultSet object?

    Connection con  = getConnection();
    Statement stmt = con.createConnection();
    ResultSet res = stmt.executeQuery("select * from table");
    //res.setFetchSize(?);
    while (res.next)
    res.get....
    }I do not know the number of rows .
    How can I set the fetch size for the ResultSet object?
    I try
    res.last();
    res.setFetchSize(res.getRow()/2);
    res.beforeFirst();
    while (res.next)
    res.get....
    }but it's so slow if there are 6000 rows.
    How can I set the fetch size for the ResultSet object more effectible?
    And what is the best number to set the fetch size?

    The fetch size defaults to a standard number. It is unlikely that it will be any faster if you set it unless you only plan to read a small number of rows.
    i.e. if you are going to read all the rows, you need to read all the rows no matter what.
    Unless the system has set the fetch size to 1 changing it will not be faster.
    Depending on the row length, reading in 6000 rows is going to take a long time. You could try using a cpu profiler to improve performance.
    Do you really need to read everything in every row?

  • Clarification regarding deep cloning/deep copy

    Hi,
    While performing deep copy of an object should all the subobject that the parent object constitute also constitute the clone method.
    For Eg:
    I have a class called Document and a class called Field. Document constitutes of List<Field> fields. Field class has a String fieldName as its member variable.
    I need to perform a deep copy of Document object. Should Field class also implement the clone method or can I create field objects in the documents clone method and fill these fields with values from the existing field list to form a new Document with these new fields.
    Or do I call clone() method on each field to get a new field object and
    add it to the new Document object that I am creating in the clone() method .
    //First approach
    public Document clone(){
    Document doc = new Document();
    List<Field> fields = doc.getFields()
    Field newField = null;
    for(Field f: fields){
        newField = new Field();
        newField.setName(f.getName());
       doc.addField(newField);
    return doc;
    //Second Approach
    public Document clone(){
    Document doc = new Document();
    List<Field> fields = doc.getFields()
    Field newField = null;
    for(Field f: fields){
        newField = f.clone()
       doc.addField(newField);
    return doc;
    }Please let me know which is a better approach and the standard coding
    practise.
    Thanks

    the second method is better, because it lets you the possibility to create a subclass of Field with a specific clone method, integrate some instances in a Document object; without changing the Document.clone method.

  • How to store a DB row (multiple columns) from ResultSet object to hm/ht

    I am trying to store a DB row (which is containing ~150+ columns) from ResultSet Object to HashMap/Hashtable using the below code. But I wonder is, this not working and even do not get any error.
    dataslotHashmap.put(rsmd.getColumnName(i+1),rs.getObject(i+1));
    where "rsmd" ResultSetMetaData Object and "rs" is ResultSet Object.
    Need advice please

    Code snippet for reference:
    rs=stmt.executeQuery("select * from ......
    rsmd=rs.getMetaData();
    rs.next();
    int noc=rsmd.getColumnCount();
    for(int i=0;i<noc;i+=1) {
    dataslotHashmap.put(rsmd.getColumnName(i+1),rs.getObject(i+1));

  • How to return ResultSet object from Bean to JSP

    I have a Java Bean, in it I have ResultSet Object in a method. Now I want to send this ResultSet Object to the JSP.

    very good advice, otherwise you will spread your sql exception handling over way too many places. Keep it centered, so you can be sure to close your connection, statement, resultset again. Otherwise your database and web application might all of a sudden stop responding.

Maybe you are looking for

  • Reading XML files into ABAP

    Hello folks, I've been struggling and I need to figure out how to read a field from an XML field into ABAP. I'm writing this method and I need to call this field from my XML file. Can you guys please give me suggestions? Please advise. I will appreci

  • CCM / AD intigration with Multiple domains

    Our corporation is made up of two different active directory domains. Is it possible to integrate call manager with both domains?

  • Removing print drivers from Leopard

    is it a)advisable and b)easy to remove unwanted printe drivers from Leopard's Library folder?

  • My System Preferences

    I trashed and empty-trashed a link to system preferences, and now am unable to access it...the previous "lightswitch" icon had a question mark on it and "disappeared into dust when i tried to move it. I can't open it from the little blue apple in the

  • User Exit for ML81N  at the time of save -- urgent

    hello all, I need to fill the field reference field in ML81N transaction with some value for this i need to find user exit i was able to find so many user exits for this transaction but i couldn't find the perfect user exit at the tiem of save, Any p