Keep track of reference of a row added to Jtable

Hello All,
I need to keep track of reference of a row which is being added in JTable.
Let suppose that I adds a row in JTable based on an object (instantiated of a class say FileUploader class). Now I adds a row whenever FileUploader class is being instantiated. The FileUploader Class is responsible to upload a file.
1) Now suppose that there are 100 rows (of course based on 100 object of FileUploader class).
2) User can remove single or multiple row (by means of cancel the process of upload or clear the row in the JTable for which file has successfully uploaded).
3) I need to update a particular cell of JTable based on the status of a particular object of class FileUploader.
One way of doing this is by using for loop on whole table to find out the corresponding row (based on some key taken from table). But this will make the application very slow.
So, to do this, I need to have the reference of the row when it is being added in the JTable.
How can I make it working? Please suggest.
Thank you

You are right that iterating over 100 times is not slow. But what will happen if there are 10000 rows.
I am new to JTable. In my application, when user drag and drop some files / folder, a row is being added in the JTable to show the status of process (pending, ProgressBar, Completed or Error in one cell based on the current status of file / folder ) along with some more info in other cell ( like fileName, FromDir, ToDir, Size, and a hyperlink type text for action - clear, cancel, retry).
Now FileUploader is an class which is responsible for uploading (it has a method upload() in it which is called by a daemon thread).
So to update a particular cell (in which pending / ProgressBar/ etc is shown), I need to find the particular row which is showing the status of a file / folder.
How can I do it (without iterating over these no. of times again and again).
Is there any better approach to do this.

Similar Messages

  • Keeping track of multiple tables

    I'm creating multiple tables by resuing the same JTable object and merely changing and the tablemodel associated with it. The number of tables I have are based on the number of data tables I have.
    Right now I have an Mouselistener attached to my tables to register which rows and columns have been clicked on. My question is, how do I keep track of which table the row and column come from? Any suggestions?
    Thanks in advance.

    I won't do a lecture on Java object and reference here.
    If a single JTable keeps changing its model or model data, it's simply no problem.
    Are you going to do that?
    However,
    JTable t0, t1, t2, t3, ... ;
    t0 = new JTable(model0);
    t1 = t2 = t3 = ... = t0;
    /* and, somewhere else ... */
    t1.setModel(model1);
    /* again elsewhere */
    t2.setModel(model2);
    .....This is certainly a disaster.
    how do I keep track of which table the row and column come from?Define a custom class for object for managing table meta data. And use a Collection or a Map
    for storing them. Or, simple set of meta data can be stored in your table model object that
    extends DefaultTableModel. Don't extend AbstractTableModel -- that is often unnecessary
    and often can be a futile, bogging and nightmarish effort. Keep yourself away from it.

  • Store a reference to a row from JTable

    Hello everyone!
    Me and my school mates are working on a project for a peer to peer application for the school. For file sending we wrote a class that extends Thread. We have a JTable to represent the downloading files. If the mentioned class for sending a file is created, I want to store into it's instance a reference to a row from the JTable. So I can always edit the cell in the tables row that represents the progress of downloading. Until now we were accessing the proper tables row over the rows index. But if we delete some rows from the table (we wand to remove finished downloads), the indexes get mixed up.
    I know that .NET has a class that represents a single row in the table. I would like to store the instance of a row in my class that downloads the file in my Java project.
    Thanks for further help!
    Regards.

    I know that .NET has a class that represents a single row in the table.
    I would like to store the instance of a row in my class that downloads the file in my Java project.You need to create a custom TableModel that stores an Object containing the row information.
    Here is a basic shell to get you started:
    http://forum.java.sun.com/thread.jspa?forumID=57&threadID=610618
    You will need to add method to add/remove rows from the model. You will then need to search the TableModel to find the Object in order to determined which row to update.

  • How to add and remove rows and keep track of it

    hi all,
    i hv an issue
    im developing a page which will hv remove and add buttons for 3 categories
    on clicking it it should add r remove HTML table rows respective to which category button is pressed. and also i should track the number of rows added or deleted for a particular category.
    Is it possible with JSP
    a sample code wil also help me a lot
    thanks in advance

    i could not under how ur page structure is but i will try to tell what i used in such a situation where u have to add or remove some elements from the page based on wht the user chooses.
    I put buttons linking to the same page with a variable containing the row id in the url (http://something.com?id=10')
    while displaying the records i will be iterating througnh the data row by row and displaying the text in the table.
    but when i find a row id equal to the rowid passed i display it in another format with a form and text boxes to edit the data and a submit button to submit the data
    like...........
    while (rs.next())
         if(rs.getString("recid").trim().equalsIgnoreCase(request.getParameter("recid").trim()))
    %>
         <form name="form2" method="post" onsubmit="javascript:return ValidateForm(form2)" action="camp_update_msg_a.jsp">
         <tr class="colstyle3">
              <td width="5%" valign="middle"><%= rs.getString("questionno").trim() %></td><td><TEXTAREA NAME="question" COLS=35 ROWS=4 ><%= rs.getString("question").trim() %></TEXTAREA></td><td><TEXTAREA NAME="answer" COLS=15 ROWS=4 ><%= rs.getString("answerno").trim() %></TEXTAREA></td>
              <td><INPUT id="submit1" type="submit" value="Submit"></td><td><a href="camp_del_msg.jsp?campid=<%=request.getParameter(campid").trim() %">&recid=<%= rs.getString("recid") %>">Delete</a></td>
         </tr>
         </form>
    <%           }
    else
         { %>
         <tr class="colstyle3">
              <td width="5%" valign="middle"><%= rs.getString("questionno").trim() %></td><td><%= rs.getString("question").trim() %></td><td><%= rs.getString("answerno").trim() %></td>
              <td><a href="camp_edit_msg.jsp?campid=<%=request.getParameter("campid").trim() %>&recid=<%= rs.getString("recid") %>">Edit</a></td><td><a href="camp_del_msg.jsp?campid=<%=request.getParameter("campid").trim() %>&recid=<%= rs.getString("recid") %>">Delete</a></td>
         </tr>
    <%
    I think this information is helpful to u.......
    Good luck.............</a>

  • How do I keep track of stats and subscriptions of my podcast? Mine was just added today.

    My podcast, The Big Seance Podcast, was just added to iTunes today. Other than keeping track of stats through my host (Libsyn), how can I keep track of subscriptions, ratings, and downloads through itunes? Thanks!

    Hi Patrick,
    You will not get any stats from Apple / iTunes.  You need to get that info from your libsyn account.
    If you want to see the number of people consuming via iTunes or the Podcasts App (AppleCoreMedia) - you will need to have the advanced stats - App 400 or greater level account in Libsyn.
    That is the only way to get the info you are looking for.
    Regards,
    Rob W

  • Keeping track of rows already selected

    Hi.  I'm somewhat a T-SQL noob.  The answer to my question may be obvious, but I just want to see if I have any options.  I need to scan a table for rows where a column contains a certain value, and then send an email
    to notify users of the resultset.  I'll run that scan say hourly. The table I'm scanning is in a vendor-owned database that I can't modify.  So I guess I need to keep track of previously selected rows so I don't keep notifying
    users of the same resultset, and store those in a persistent table in a separate utility database.  Right so far?  Thanks for helping me get started.

    Ok, so what you'll want to do then is just select rows that have been edited in the last hour:
    SELECT *
    FROM myTable
    WHERE last_updated_on >= DATEADD(HOUR,-1,CURRENT_TIMESTAMP)
    And you'll only get the rows that have been updated in the last hour :)
    Don't forget to mark helpful posts, and answers. It helps others to find relevant posts to the same question.

  • Adding a counter that keeps track of the total number of times a loop has run, even if LabVIEW has been restarted.

    Hi all,
    I am writing a VI for measuring data and inserting it into a database. The measurements are controlled by a loop that runs once every minute. I want to give each measurement a unique id number and store this too in the database.
    To do this, I want to add a counter to this loop so that I can count the number of times the loop has executed in total. This is, even if the VI, LabVIEW or even th PC is restarted, I want the counter to keep track of the number of executions. If say, the loope executes two times and then the VI is stopped and restarted, I want the following number on the counter to be three.
    Does anyone have an idea about how to do this? I am gratefule for any help!
    Clara
    Message Edited by Clara G on 05-11-2010 08:21 AM
    Solved!
    Go to Solution.

    Not allowed to give away code but I can describe one of my "Totalizers" used to keep track of how much stuff has passed through a fliter so we know when to change it.
    THe Total izer is implemented as an Action Engine.
    It has three actions (methods)
    1) Init - Opens an ini file and reads the last values read and cahces these in shift registers. It also inits a timer so we now how long since the last file I/O.
    2) Update - Uses the data passed by the caller to update the totals. It also checks how long since the last save and if more than one minute it writes to the ini file (forced write).
    3) Read - returns the totals for display and evealuating if a an alarm should be triggered to change the filter.
    Note:
    THe pre-LV 8.6 version of the ini file exposed methods to allow writing to the file. The new ini functions do not expose that functionality and require closing the file.
    Ben
    Ben Rayner
    I am currently active on.. MainStream Preppers
    Rayner's Ridge is under construction

  • Need help with spreadsheet to keep track of personal spending.

    I am trying to make a spreadsheet where I can enter what I spend at the end of each day, so I can keep track of where my money goes. I probably would have a separate spreadsheet for each month. I have a series of categories (groceries, booze, gas, movies, restaurants, etc.) I would like to be able to add a little description to each number to be even more specific than just what the category is (restaruant name, utlity name, etc). That way I can keep my categories a little less specific and have less of them. I notice that when I just add text after the number in a cell, that cell's numeric value is no longer calculated in the "TOTALS" for each column.
    Is there a way to attach a text description to each numeric entry and still have the numeric value be calculated in formulas? If not, is there a way to attach a text description to each cell that is not in the cell itself? Like you click on a cell and a separate description window pops up or something? Or I am open to other suggestions if someone has made a similar spreadsheet for the purpose of tracking person spending.
    Thanks for any advice,
    Keith

    Hi Keith,
    You could make a table with a simpler appearance by modeling it on the checking register. Other than editing the pop-up menus to contain your categories, you'd need only two or three simple changes.
    The Transactions table in this template has six columns, A through F. All formulas in this table are in column F, and calculate the running balance shown for each row.
    But you want only a total for each category, not a running balance. You don't need this column, or its formulas.
    Click on any cell to show the column reference tabs.
    Click on the tab for column F to select that column.
    Go to the Table menu and choose Delete Column.
    Column A of this table contains information regarding the means of payment for each transaction. If you want to record this, keep the column, if not, delete it, as was done with Column F. To delete this column, you'll first have to undo the merge of cells A1 and B1, using the Table Inspector, or delete Row 1 in the same manner as column F was deleted. (Note that cell row references below assume Row 1 has NOT been deleted.)
    Column C contains a set of pop-up menus containing the categories used for transactions. Except for "Deposit" (which you're not intending to include) and "Credit Card" (which is more a payment method than an expense category), these may be the general categories you are looking for. If not, you'll need to edit them, using the Cell Inspector. Click on cell C3, open the Inspector, and choose the Cell button ( 42 ) to open the editor.
    I would edit Deposit, replacing it with a single space (as close to 'blank' as you can get using the Inspector) to use as the default setting for rows with no entries as yet. To do the edit, double click on "Deposit" in the list in the Inspector to select the whole word. Press the space bar once to replace the word with a single space.
    Edit the other categories to fit your needs, using the same method.
    To add a new category to the end of the list, click the + button. To completely remove a category, click on that category, then click the - button.
    When you have the category menu list set to include all your categories, set the menu in C3 to the 'blank' item, then put the mouse pointer on the Fill handle (the small circle at the bottom right corner of the Selection rectangle marking the selected cell (C3). When the pointer changes to a black + sign, press the mouse button and drag down to the bottom of column C. (as you do this, you will notice the amounts in the Account Categories table change and the pie chart adjust to those changes.Here's the template after deleting columns F and A of the Transactions table, deleting the "Beginning Balance label from what's now D1, and editing the pop-up menu cells to replace Deposit with a space, Credit Card with XXX, and add a new category, Travel.
    Note that I have moved the category column to the left of the description column. Not a necessary move, but one that makes sense to me. To make the move:
    Select any cell to show the column and row reference tabs.
    Click the reference tab for column C (Categories) to select the column.
    Click again and drag the column down and left. When a thick blue line appears between columns A and B, release the mouse button to drop the column into its new location. Numbers will adjust the formulas in Account categories to match the new position of the Category column.
    I've also replaced Credit Card in the Account Categories table with XXX, but have not yet added the new Travel category.
    To add that category to both the table and the pie chart, select the Food, Gas, or XXX cell, then press option-down arrow to add a new row below that cell. Type travel in the new column A cell, making sure that you spell it exactly as is spelled in the pop-up menus. When you confirm that entry, the total for travel will be immediately calculated in the column B cell, and its wedge will appear on the pie chart, and in the legend for that chart:
    At this point you might want to change the names of the two tables and the chart. This is done by double clicking the name of each item in the Sheets list, and typing in the new name. The names will automatically update above the tables and chart in the document.
    Once your table and chart are working, you're ready to delete the dummy data from the Date, Description and Amount columns, and to set the Category pop-ups to the 'blank' entry. When you've done that, Save your file as a Template.
    Open a new document from the template each month to record that month's expenses. If you need more rows for transactions, click on any cell to show the row control handle at the bottom left of the table. Drag the handle downward to add new rows to the table. The pop-up cells in the Category column will automatically fill into the new rows, and the formulas in the Account categories table will adjust to include the new rows.
    Regards,
    Barry

  • Keeping track of checkmarks

    I am using Numbers '09 to keep track of customer interactions, each interaction is a row, and using a column of checkmarks that I check only in the event that further work on an account is required at a later time. Each sheet contains a table for each day of the month, and so they can get rather long to wade through looking for forgotten checkmarks. I was wanting to know if there is a way to keep a table at the top of my sheets which would span the entire sheet and ONLY display rows with a checkmark next to them, and so once the checkmark is removed it disappears from this particular table. Possible? Make sense?

    you can use the reorganize panel to filter based on the checkboxes:
    Set up but NOT filtering
    Set up AND filtering:
    You can simplify the set up by adding a single column that determines whether aby checkboaxes are cheked like:
    F2=COUNTIF(B2:E2, "=TRUE")
    select F2 and fill down, then use this as your filter column.  You can even hide the column if you want

  • How to keep track of all the classes/methods/properties created in a long script

    Hi,
    I'm curious to know what method people use to keep track of all the classes, methods, and properties you've created when writing a longer script.
    For quick scripts, this isn't a problem. But for long scripts it can get quite difficult to keep track of all the objects one has created, and all their methods and properties, and overloaded constructors, etc.
    ESTK is great, and it's the IDE I use for InDesign scripting, if only because of it's powerful debugging options.
    But it doesn't provide any way of keeping track of this stuff. No proper Intellisense as in Visual Studio.
    I'd be interested to hear how people solve this issue.

    Hi Ariel,
    Not sure it is relevant to your question but I have an old snippet that collects and displays ExtendScript references using $.list(). This may help to track some object relationships.
    // WARNING: this is just a WIP -- Not tested in all platforms and versions
    $.scanRefs = function scanRefs(/*0|1*/showAll)
        var s = $.list(),
            p = (!showAll) && s.indexOf('[toplevel]'),
            a = ((!showAll) ? s.substr(0,10+p) : s).split(/[\r\n]+/),
            n = a.length,
            // --- Address:1     L:2  Rf:3   Pp:4  Type:5  Name:6
            re = /^([0-9a-z]{8}) (.) +(\d+) +(\d+) (.{10}) (.{1,17})/,
            reTrim = / +$/,
            i, t, k, m,
            refBy, type, name, tag, rest, rfCount, props, j,
            o = {},
            TYPES = {'Function':"FCT", 'Object':"OBJ", 'Array':"ARR", 'RegExp':"REG"};
        for( i=2, refBy=0 ; i < n ; ++i )
            s=a[i];
            while( s && m=s.match(re) )
                k = '&'+m[1].toUpperCase();
                rfCount = parseInt(m[4],10);
                rest = s.substr(m[0].length);
                type = m[5].replace(reTrim,'');
                name = m[6].replace(reTrim,'');
                if( 0x5B==rest.charCodeAt(0) )
                    p = rest.indexOf(']');
                    tag = rest.substr(0,1+p);
                    rest = rest.substr(1+p);
                else
                    tag = '';
                if( 0x20==rest.charCodeAt(0) )
                    rest=rest.substr(1);
                if( p=!(rest.indexOf("referenced by:")) )
                    rest = rest.substr(14);
                o[k] || (o[k] = {
                    locked:        +('L'==m[2]),
                    rfCount:    parseInt(m[3],10),
                    ppCount:    rfCount,
                    type:        TYPES[type]||type,
                    name:        name,
                    tag:        tag,
                    from:        [],
                    order:        -1,
                if( 0 < refBy )
                    if( p || !rest ){ throw "Unable to parse references." }
                    props = rest.split(' ');
                    refBy -= (j=props.length);
                    while( j-- ) t.from.push([k,props[j]]);
                    (props.length=0)||(props=null);
                    rest = '';
                else
                    refBy = rfCount;
                    if( p != !!refBy )
                        if( p ){ throw "Unable to parse references."; }
                        refBy = 0;
                    (t = o[k]).order = n - i;
                (m.length=0)||(m=null);
                s = rest;
        a.length=i=0;
        for( k in o )
            if( !o.hasOwnProperty(k) ) continue;
            a[i++] = k;
        a.sort( function(x,y){return o[x].order-o[y].order;} );
        //a.sort( function(x,y){return parseInt(x.substr(1),16)-parseInt(y.substr(1),16);} );
        var u,
            pngLock = "\x89PNG\r\n\x1A\n\x00\x00\x00\rIHDR\x00\x00\x00\x0E\x00\x00\x00\x0E\b\x06\x00\x00\x00\x1FH-\xD1\x00\x00\x00\tpHYs\x00\x00\x0B\x13\x00\x00\x0B\x13\x01\x00\x9A\x9C\x18\x00\x00\x01VIDAT(\xCF\xA5\x91\xB1j\xC2P\x14\x86\x93\xD6\x94\x98\xA4\xB5\xA5\x85\x0E-R\xAF\xA5\xB8\xF4\x1D\xAA\xEF\x10_B\x9C\xDD\x0B]\xA4o`C\xE9$B\x1C\xCD\x10\x10C6\x05q\td\xA9%\x83d2\x83O\xF0\xF7\xDCp#i\xB5\x1D\xDA\xC0\xC7\xB97\xE7|\xF7\xDC\xCB\x91\x00H\x7FA\xFA\xB7\x98\xFF\xAA\xD5\xEA\x0B\x855\xC1\x13k\xDA\xBF\xEA\x9A\xA6\x9C\x18\xC6\xC1\xB6\xE8\xBBHE\x16\x85w\xC6\xD8\xE3\x91\xA2\xDCQ|\xA2\xFD\x07\xC57\xADXT\x8B\xAAz\xB8#\x8A\x13\xD7\xBC\xD8\xD0\xB4kC\xD7\x19q\xCB*\x95g\xFA\x9FP\xD7\x0B\x8A\n!oE.\xB5Z-\xEC\xA3\xD9l\xA2\xFEP\x07\x1D\xC8;\x18D!/\x16x\x91\xEF\xFBX.\x97\xD8l6H\x92$]O\xA7S\x8CF#\x887\x9F\x13j^T\xB9\xD8\xE9t0\x99L\x10\xC71V\xAB\x15\x82 \xC0\xD0\x1E\xA2\xDDng\xE2\x15q\x9C\x175.:\x8E\x83\xC5b\x81(\x8A \xCB2\xE6\xF39\\\u00D7E\xBF\xDF\xCF\xC4\x1B\xE24/\x1A\\\u00ECv\xBB\xF0<\x0Fa\x18\xA2\xD1h`<\x1E\xC3\xB2,\x98\xA6\x99\x89\x8C8\xDB\x11\x07\x83AzU\xDEu6\x9B\xA5\xA2m\xDB\xE8\xF5z?\x8B4\xC3,\xF9\x1B_E1\x9F\x12Q&j\xC4\xFD\x1Ej\"_\xCA\x8B\x051\xA3K\x91d{(\x8B\xBC\xFE\t\xC1TI!\xE3L\x03\x7F\x00\x00\x00\x00IEND\xAEB`\x82",
            pngNop = "\x89PNG\r\n\x1A\n\x00\x00\x00\rIHDR\x00\x00\x00\x0E\x00\x00\x00\x0E\b\x03\x00\x00\x00(\x96\xDD\xE3\x00\x00\x00\x03PLTE\x00\x00\x00\xA7z=\xDA\x00\x00\x00\x01tRNS\x00@\xE6\xD8f\x00\x00\x00\x15IDATx\xDA\xDD\xC1\x01\x01\x00\x00\x00\x80\x90\xFE\xAF\xF6#\xDA\x01\x00\xD2\x00\x01\xCC \x10\x14\x00\x00\x00\x00IEND\xAEB`\x82",
            w = new Window('dialog', " ExtendScript Memory"),
            p1 = w.add('panel', u, "References"),
            lRefs = p1.add('listbox', u, "",
                numberOfColumns: 4,
                showHeaders: true,
                columnTitles: ["Address", "Type", "Name", "Refs"],
                columnWidths: [90,60,120,36],
            g = w.add('group'),
            pFrom = g.add('panel', u, "From"),
            lFrom = pFrom.add('listbox', u, "",
                numberOfColumns: 4,
                showHeaders: true,
                columnTitles: ["Address", "Type", "Name", "Property"],
                columnWidths: [90,60,120, 120],
            pTo = g.add('panel', u, "To"),
            lTo = pTo.add('listbox', u, "",
                numberOfColumns: 4,
                showHeaders: true,
                columnTitles: ["Property", "Address", "Type", "Name"],
                columnWidths: [120,90,60, 120],
        g.orientation = 'column';
        w.orientation = 'row';
        w.alignChildren = ['left','top'];
        lRefs.maximumSize = lRefs.minimumSize = [330,450];
        lFrom.maximumSize = lFrom.minimumSize = [420,120];
        lTo.maximumSize = lTo.minimumSize = [420,220];
        lRefs.onChange = function()
            lFrom.removeAll();
            lTo.removeAll();
            lFrom.parent.text = "From";
            lTo.parent.text = "To";
            if( !this.selection ) return;
            var key = '&'+this.selection.text,
                t = o[key],
                from = t.from,
                i = from.length,
                k;
            lFrom.parent.text = "["+key.substr(1)+"] is reachable from " + t.ppCount + (1<t.ppCount ? " properties" : " property");
            if( t.ppCount && !i )
                with( lFrom.add('item', '--------') )
                    image = pngNop;
                    subItems[0].text = '';
                    subItems[1].text = '<UNKNOWN REFERRER>';
                    subItems[2].text = '';
            while( i-- )
                k = from[i][0];
                t = o[k];
                with( lFrom.add('item', k.substr(1)) )
                    image = t.locked ? pngLock : pngNop;
                    subItems[0].text = t.type;
                    subItems[1].text = t.name + ' ' + t.tag;
                    subItems[2].text = from[i][1];
            for( k in o )
                if( !o.hasOwnProperty(k) ) continue;
                t = o[k];
                from = o[k].from;
                i = from.length;
                while( i-- )
                    if( from[i][0]!=key ) continue;
                    with( lTo.add('item', from[i][1]) )
                        image = pngNop;
                        subItems[0].text = k.substr(1);
                        subItems[1].text = t.type;
                        subItems[2].text = t.name + ' ' + t.tag;
            lTo.parent.text = "["+key.substr(1)+"]'s properties had access to " + lTo.items.length + " addr.";
            from = t = null;
        for( i=0, n=a.length ; i < n ; ++i )
            t = o[k=a[i]];
            with( lRefs.add('item', k.substr(1)) )
                image = t.locked ? pngLock : pngNop;
                subItems[0].text = t.type;
                subItems[1].text = t.name + ' ' + t.tag;
                subItems[2].text = t.ppCount + '/' + t.rfCount;
        w.show ();
    // TEST
    var t;
    var f = function MyFunc()
        (function MyInnerFunc(){})();
    $.scanRefs(1);
    @+
    Marc

  • Why do my songs and audio books keep getting erased when I add a new book?  Now some books will not play and the iPod does not keep track of where I was when I pause a book, leave for music and then go back!

    About a month ago I added some new audio books to my iPod Classic and then after disconnecting, I discovered EVERYTHING had been erased. 
    I had to restore through my iTunes but then I could not load my music back on.
    I uninstalled / reinstalled iTunes and completely reformated the iPod drive.
    I successfully got my music and books back on but then added a new book two days ago only to discover everything got erased AGAIN!!!
    Of course, my 1 Year Warranty was up about a week before the first incident.....
    I formatted the iPod again, uninstalled / reinstalled iTunes (it was freezing during sync) and downloaded all my music and books again.
    Now I have several books that will not play (they play on iTunes and they played on the iPod before all these events) and the iPod does not keep track of where I was in a book when I have to stop and go to something else.
    Does anyone know what is going on with this thing???  I have a 5th Gen Video and in all the years I've had it, I've NEVER had problems like this! 
    Does anyone have any ideas on what I can do to get my iPod Classic up and running properly again?
    Thanks.

    When iTunes/iPod sync process failed due to timeout, the iPod, has only the initilaised  filesytem structure at the start of the Sync.
    The timeout failure could be due to
    Bad hardisk - do the iPod disk diagnostic, refer to this excellent post by tt2
    Slow USB port or resource - Dont use any USB hub, disconnect all other USB devices while syncing
    Timeout due to Antivirus or other plugins - disconnect from Internet and stop the Antivirus or monitoribng software if you are syncing.
    Preferably stop doing other things while syncing this ancient device, which the latest iTunes designer, think will soon be extinct.
    Have a nice day!

  • How to keep track of the changes done in ALV GRID Report

    Hi Experts,
    how to keep track of the changed record in ALV GRID Report. how to set the field to be editable even for the entire row also. Can anybody guide along with code also?...
    Valuable answers will be rewarded.
    Thanks,
    Satish.

    Hi,
    Access the table through SM30. It comes blank as standard. Click "New Entries" and make entries for changes to be tracked. For example, whenever an org. unit changes 002 and 003 relationship, you will make entries like:
    01 O 1001 B002 Activate box checked
    01 O 1001 B003 Activate box checked
    Here, 01 is your active plan version, O is org. unit, 1001 is infotype and B002 and B003 are the subtypes. You can also use * for infotype and subtype which means every change will be logged.
    If you then run the report RHCDOC_DISPLAY through SA38, it will pick up all the changes pertaining to B002 and B003 relationship for org. units (in the above example).
    Similarly, you can set up this table for other object types.
    For more information, follow SPRO>Personnel Management>OM>Basic Settings>Activate change documents and go through the documentation for that node. Also, read up the documentation for the report.
    Hope this helps.
    Donnie

  • How to keep track of how many records to display in a page.

    Hi All:
    I am using Weblogic 9.2, Web Services Client, and Struts.
    I have a java client in struts that calls a web services.
    The "ID" field contains a Java integer.
    The "First_Name" is a Java String.
    The "Effective_Date" field is a Java date field.
    The web service returns an arrayList of a class called Result.
    Code for Result.java:
    >
    public class Result
    int id;
    String first_Name;
    Date effective_Date;
    public int getId
    return id;
    public void setId(int id)
    this.id=id;
    public String getFirst_Name()
    return first_Name;
    public void setFirst_Name(String first_Name)
    this.first_Name = first_Name;
    public Date getEffective_Date()
         return effective_Date;
    public void setEffective_Date(Date effective_Date)
         this.effective_Date=effective_Date;
    From the arrayList, I displayed the result as the following:
    ID FIRST_NAME EFFECTIVE_DATE
    3 John 9/10/2007
    2 Andrew 1/11/2006
    5 Peter 3/4/2006
    The "ID" header is a link.
    The "First Name" header is a link.
    The "EFFECTIVE_Date" is a link.
    If I clicked on the link "ID", the first time, it will sort the rows in ascending
    order like the following:
    ID FIRST_NAME EFFECTIVE_DATE
    2 Andrew 1/11/2006
    3 John 9/10/2007
    5 Peter 3/4/2006
    If I clicked on the link "ID", the second time, it will sort the rows in descending
    order like the following:
    ID FIRST_NAME EFFECTIVE_DATE
    5 Peter 3/4/2006
    3 John 9/10/2007
    2 Andrew 1/11/2006
    If I clicked on the "First_Name" field the first time, it will sort the rows in
    desceding order.
    If I clicked on the "First_Name" field the second time, it will sort the rows in
    ascending order.
    This applies the same for the "EFFECTIVE_DATE".
    If the arrayList returns 80 records of class Results.java.
    I needed to displayed only the first 50 records for the first page and 30 records for the second page.
    How do I keep track of that so that when I am in the second page, I know to display only record 51 to 80?
    If I have a arrayList that returns 120 records of class Results.java.
    In the first page, it displayed only 50 records.
    In the second page, it displayed only 50 records.
    In the third page, it displayed only 20 records.
    Assuming I am able to sort the rows by ID, FirstName and Effective_Date by using Results.java implementing the
    Java Comparator class. Is it still possible to keep track of how many records displayed in the first page and how many records should
    be dispalyed in the second page?
    Any hint would be greatly appreciate.
    Yours,
    Frustrated.

    Hi,
    Access the table through SM30. It comes blank as standard. Click "New Entries" and make entries for changes to be tracked. For example, whenever an org. unit changes 002 and 003 relationship, you will make entries like:
    01 O 1001 B002 Activate box checked
    01 O 1001 B003 Activate box checked
    Here, 01 is your active plan version, O is org. unit, 1001 is infotype and B002 and B003 are the subtypes. You can also use * for infotype and subtype which means every change will be logged.
    If you then run the report RHCDOC_DISPLAY through SA38, it will pick up all the changes pertaining to B002 and B003 relationship for org. units (in the above example).
    Similarly, you can set up this table for other object types.
    For more information, follow SPRO>Personnel Management>OM>Basic Settings>Activate change documents and go through the documentation for that node. Also, read up the documentation for the report.
    Hope this helps.
    Donnie

  • Best way to keep track of family members, etc

    Hi-
    I am a hobby photographer, and have been playing around with the trial version Aperture to replace iPhoto, and I have some questions.
    1. What is the best way to keep track of family members? For example, I like to basically keep track by setting keywords, adding a keyword for each family member & dog. Is this still the way to do it in aperture, or is there a different solution?
    2. If keywords are still the way, what is the fastest way to do this (in particular for multiple files at a time)? The various keyword buttons & shortcuts seem to only apply to one image at a time, whereas the batchchange option seems to only rely on freeform text-- which makes it likely that somewhere along the line I will get a typo.
    Thanks,
    -jamie

    You can apply a keyword to multiple images by selecting a group of images and dropping a keyword from the keyword HUD onto one of the selected images.
    I created keywords in the keyword HUD for family members, events (Christmas, Birthday, Vacation etc.), and some other things. Keywords you have already typed into an image will be in the keyword HUD already. I created a hierarchy of keywords such as:
    People
    -Family
    --(names)
    -Friends
    --(names)
    Events
    -Holidays
    --Christmas
    --Halloween
    Sorry for the dashes to show the indentations. I tried spaces but they didn't work for some reason.
    Message was edited by: Badunit

  • How to keep track of the filter/choices in a dashboard

    Hello all,
    I have created an analysis which contains the following columns: YEAR, TRANSACTION DESCRIPTION, NO OF TRANSACTION
    I have added the above analysis in a dashboard tab. When I click a particular TRANSACTION DESCRIPTION it can get further drill down in time hierarchy like below:
    YEAR     QUARTER     MONTH     TRANSACTION DESCRIPTION     NO OF TRANSACTION
    2012        Q1               JANUARY                      X                                        10
    2012        Q1               FEBRUARY                   X                                        20
    2012        Q1               MARCH                         X                                        30
    I was wondering if there is way to keep track of the drill-down in the analysis or dashboard, for example
    2012> Q1> JANUARY    
    so that the user can know he is exactly.
    Thanks in advance for your time.
    Konstantina

    Hi Konstantina,
    Yes You can do like that 2012-->q1-->January
    Steps:
    1. Create time dimension hierarchy as by following like Total--> year--> Quarter--> Month--> if you need you can keep Description.
    2. Drag the Year column from period dimension table to the dimension hierarchy of year.
    3. Drag the quarter column from period dimension table to the dimension hierarchy of Quarter.
    4. Drag the month column from period dimension table to the dimension hierarchy of month.
    5. Drag the hierarchy to period dimension table in presentation layer.
    In Answer side keep as it as Default: drill in primary and secondary interaction under column properties.
    For more refer : http://mkashu.blogspot.com
    Regards
    VG

Maybe you are looking for