Detection of changes in the context prior saving a document

Original thread title: IS_CHANGED_BY_CLIENT and RESET_CHANGED_BY_CLIENT methods / selection change
Does anyone know, why is that the RESET method is recursive, but the IS method isn't?
The problem is, I need to trigger a save of a document only when there is some change made by the user, but to do that i'm being forced to implement myself a recursive method which uses both IS_CHANGED_BY_CLIENT and GET_CHILD_NODES methods. While I simply call the RESET_CHANGED_BY_CLIENT method of the root node and it affects all subnodes.
Another problem is that, the selection changes (e.g. in a dropdownbyindex) don't get accounted as changes by the IS_CHANGED_BY_CLIENT method.
Is there any simpler way to implement this?
Thanks

Thanks for your comments Manish. I've already programmed the recursive method and it is working ok, seems to be the only way then.
But how did you solve detection of selection changes? Currently i'm thinking of having an event handler for each dropdown, which will mark a flag to be evaluated additionally to the method's result. You did the same, or selection changes didn't matter in your case?
Thank you
Solved: The context change log seems to be a far better alternative, it also detects selection changes.
Check DEMO_CONTEXT_CHANGES example. If you need only to detect changes, you can use just the enable_context_change_log and get_context_change_log methods.
It may be a little bit taxing when the context is large though, I'd like if anyone which has had this experience could comment.

Similar Messages

  • What is the difference between saving to "Documents" and "Macintosh HD" and when should you use each one?*

    What is the difference between saving to "Documents" and "Macintosh HD" and when should you use each one?

    When you save to the folder with the little house icon, the file is placed at
    /Users/your_user_name/
    You would really have to go out of my way to save at:
    (the shortcut for the Boot Drive, regardless of its name).
    I am not sure how you decided that Time Machine is not saving your files. The default is for Time Machine to do incremental Backups of everything on all attached drives, except for certain temporary information in Cache files. If you have four Users, Time Machine will back them all up.
    Looking at the raw Time Machine backups will tell you very little, because it does lots of its work with Hard Links, and because it does incremental backups, so only files that changed since the last Backup are saved at thet cycle. The way to determine whether Time Machine is saving things is to display the window you care about in the Finder, then invoke the "Star wars"/ "Back, back, back in time" Interface.

  • CS6 Illustrator and InDesign colours are changed when the PDF is saved.

    CS6 Illustrator and InDesign colours are changing when the saved PDFs are displayed on some different computers and for digital print output. I have ensured that the colours are all CMYK and tried different adjustments like preserving the numbers and the like but nothing is working. It prints properly on my inkjet and has displayed properly on different computers.

    You need to read up on color management, color profiles and all that....
    Mylenium

  • ABAP Runtime Error at the time of saving of Document Through CV01N tcode

    Dear Experts
    We have install seprate DMS Server for storing various documents of different module.
    While saving of Document through Transaction CV01N one small screen gets pop up.Which is as follows
    Check in Document:KPro
    Storage Category   Description
    ZCITY123               DMS
    I am selecting above line from Kpro, then when i click on save system gives ABAP Runtime Error.
    Runtime Errors         CALL_FUNCTION_NOT_FOUND
    Except.                CX_SY_DYN_CALL_ILLEGAL_FUNC
    Date and Time          21.10.2008 18:35:26
    Short text
         Function module "PROJECT SYSTEM" not found.
    What happened?
         The function module "PROJECT SYSTEM" is called,
         but cannot be found in the library.
         Error in the ABAP Application Program
         The current ABAP program "SAPLSDCE" had to be terminated because it has
         come across a statement that unfortunately cannot be executed.
    I am not understanding why this dump is coming.
    How i can come up from this issue.Pls guide me.If any customizing is required pls give the steps
    Thanks in Advance.
    Regards,
    Sandeep Theurkar

    There is a programming error somewhere.To get a solution quickly, do as follows:
    1. Turn off all badi's, user exits and whatever you have changed in standard SAP.
    2. Rerun - if it still fails - search in SAP notes for relevant notes
    3. If it doesnt fail - you have an error in your own programming
    4. If you are on relevant Support packages etc, send a message to SAP.
    Regards,
    Espen Leknes

  • Detecting changes in the context

    hi,
    I have a form to update the personal data.The existing data is fetched by using a RFC.Now My requirement is as follows:
    The UI elements are bound to the view context elements wihich are populated by the model.
    Now I need to call the update RFC ONLY IF the user has made any changes to ANY of the data in the screen.
    Is there a way to know if the data in the screen is changed?
    thanx,
    Bhupesh

    Hi,
       I think it's better to determine this from the model object itself, rather than the node.
       ARFC model objects generated from BAPIs an be typecasted to <i>ICMIModificationCount</i>.
       So you will need to check the <i>modCount()</i> for every model object as soon as the view is loaded. Save this count somewhere. This should be much better than iterating through all your node elements and checking if they have been modified.
       Now when you want to find out if the view has been changes or not, check the saved value with the current <i>modcount</i>. If they are not equal, then there has been a modification.
    Regards,
    Satyajit.

  • Automate the process of saving Framemaker documents (*.fm) as Xml Files

    Hi,
    I am new to framemaker. We have a list of Framemaker document files (*.fm files) coming  into a folder.  We need to pick up these files and convert to xml format (same as the saveAs opertion from the File menu).
    I have written the follwing function to Save fm files to xml
    Code to Save fm files to xml files
    function saveAsXml (doc) {
       // Get required parameters for the save function.
        var params = GetSaveDefaultParams();
        var returnParamsp = new PropVals();
        // Replace the .fm extension with .mif.
        var saveName = doc.Name.replace (/\.[^\.\\]+$/,".xml");
        var i = GetPropIndex(params, Constants.FS_FileType);
        params[i].propVal.ival = Constants.FV_SaveFmtXml;
        // Save the document as XML.
        doc.Save(saveName, params, returnParamsp);
    How to automate this process so that code checks -
    1) New fm files in the folder
    2) Saves the fm file as xml
    3) Moves the saved fm file to a different folder
    Thanks,
    GC
    [Message moved to Scripting Forum by moderator]

    Have a look at the sample script below. The "while" loop waits for the specified number of milliseconds, then reads the contents of a directory and processes every individual file in the directory. In my example, it just prints the file path to the console. You would replace this part with your Open / Save as / Move sequence.
    For more file system commands, refer to Adobe's Javascript Tools Guide, "File object functions".
    var stop = false;
    while( stop==false ) {
        // Wait for 20.000 ms
        $.sleep(20000);
        var fld = new Folder("c:/incoming");
        var filesInFld = fld.getFiles("*.fm");
        for(var f=0; f < filesInFld.length; f++) {
            // process the individual file
            $.writeln(filesInFld[f]);
        // Exit the  loop after 19:00
        var time = new Date();
        if( time.getHours() > 19 ) stop = true;

  • User exit at the time of saving purchase order

    Hi experts
    There are some plants for which we need to auto GR. Is there any user exit available which will check these plants in PO at the time of saving PO document and do auto GR.
    Regards

    Enhancement                                                                               
    MEVME001                                WE default quantity calc. and over/ underdelivery tolerance    
    MM06E001                                User exits for EDI inbound and outbound purchasing documents   
    MM06E003                                Number range and document number                               
    MM06E004                                Control import data screens in purchase order                  
    MM06E005                                Customer fields in purchasing document                         
    MM06E007                                Change document for requisitions upon conversion into PO       
    MM06E008                                Monitoring of contr. target value in case of release orders    
    MM06E009                                Relevant texts for "Texts exist" indicator                     
    MM06E010                                Field selection for vendor address                             
    MM06E011                                Activate PReq Block                                            
    MMAL0001                                ALE source list distribution: Outbound processing              
    MMAL0002                                ALE source list distribution: Inbound processing               
    MMAL0003                                ALE purcasing info record distribution: Outbound processing    
    MMAL0004                                ALE purchasing info record distribution: Inbound processing    
    MMDA0001                                Default delivery addresses                                     
    MMFAB001                                User exit for generation of release order                      
    MRFLB001                                Control Items for Contract Release Order                       
    AMPL0001                                User subscreen for additional data on AMPL                     
    LMEDR001                                Enhancements to print program                                  
    LMELA002                                Adopt batch no. from shipping notification when posting a GR   
    LMELA010                                Inbound shipping notification: Transfer item data from IDOC    
    LMEQR001                                User exit for source determination                             
    LMEXF001                                Conditions in Purchasing Documents Without Invoice Receipt     
    LWSUS001                                Customer-Specific Source Determination in Retail               
    M06B0001                                Role determination for purchase requisition release            
    M06B0002                                Changes to comm. structure for purchase requisition release    
    M06B0003                                Number range and document number                               
    MEQUERY1                                Enhancement to Document Overview ME21N/ME51N                   
    MELAB001                                Gen. forecast delivery schedules: Transfer schedule implem.  
    MEFLD004                                Determine earliest delivery date f. check w. GR (only PO)    
    MEETA001                                Define schedule line type (backlog, immed. req., preview)    
    ME590001                                Grouping of requsitions for PO split in ME59                 
    M06E0005                                Role determination for release of purchasing documents       
    M06E0004                                Changes to communication structure for release purch. doc.   
    M06B0005                                Changes to comm. structure for overall release of requisn.   
    M06B0004                                Number range and document number                             
    User exit for me21n

  • Web Dynpro & Adobe Interactive Forms - how to update the context node

    Hi Experts,
    I got a WD Component with some context nodes that are mapped to some views and are filled in this views. These context nodes are the dataSource for the Interactive Forms. These forms are embedded in a view by UIElement Interactive Forms.
    My problem is, everytime when I change the structure of the context nodes (i.e. there's an additional attribute necessary), I have to design new forms to get the context nodes linked to the form. My existing forms cannot handle updated context nodes.
    The change in the context node is displayed on web dynpro side, in the dataSource view in UIElement property. But in TA sfp there is the old context node structure displayed without any change (i.e. in number of attributes).
    My forms' layout type is ZCI Layout the interface is based on XML.
    How can I easily update the forms' context node structure without creating new forms every time?
    Thanks in advance,
    Tan

    ok, got it.
    by double clicking on templateSource in UIElement properties the interface can be updated.
    Regards from Murphy's Law.
    Tan

  • Detect value change in a wire

    Hi, this seems pretty trivial, but I cannot find a clean way to do it, and i couldn't find anything in the forums. I want to detect a change in the value in a wire coming out of a "Get timestring VI", from iteration to iteration, and I dont think event structures quite help, because they detect changes only in front panel controls. I prefer not to use shift registers because they bring in unnecessary clutter. Is there a cleaner way to do this?
    Thanks!

    A feedback node is a little less clutter because it is more localized.
    Here's the code to detect a change in a numeric, but it works with any datatype. Modify as needed.
    LabVIEW Champion . Do more with less code and in less time .
    Attachments:
    Changed.png ‏3 KB

  • JTabel, detecting data changes

    Hi,
    I am new to the JTable component... I have set up a JTabel which displays some sample information. I have to display results I get from one of my methods... There is the Swing/JTable tutorial at http://java.sun.com/docs/books/tutorial/uiswing/components/table.html#modelchange ("Detecting Data Changes"), however, the necessary code has been removed from the tutorial! I hope you can help me...
    I have set up the following table:
    public class InfoDialog extends JDialog {
         String[] columnNames = {"Type", "Value"};
         Object[][] data = {
                   {"Angle", "90"},
                   {"Speed", "50"},
         public InfoDialog() {
              Container cp = this.getContentPane();
              setLayout(new BoxLayout(cp, BoxLayout.PAGE_AXIS));
              JTable table = new JTable(data, columnNames);
              table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
              JPanel tablePanel = new JPanel();
              tablePanel.setLayout(new BorderLayout());
              tablePanel.add(table.getTableHeader(), BorderLayout.PAGE_START);
              tablePanel.add(table, BorderLayout.CENTER);
    (...)From one of my other classes, GameStart, one of the methods, calculateAngle, returns the measured angle. I would like to display this result in the appropriate cell.
    In the Swing tutorial I just can read "You can see the code for that method in [PENDING: The Bingo example has been removed.]"
    So I am a little bit confused. I think I have to first extend AbstractTableModel, then I have something to do with fireTableCellUpdated... Can you maybe show me a working example or is this "Bingo example" from the Swing available elsewhere?
    Thanks for your help!

    so I can't extend AbstractTableModel... Why are you trying to do this?I first followed the example given by Sunan.N (reply #6).
    Here is a complete working example:
    http://forum.java.sun.com/thread.jspa?forumID=57&threa
    dID=566133Thanks for this example. As a newbie I still have one problem: how can I set the a new value? I use the table.getModel().setValueAt(...) method... but which code goes into the tableChanged method and which into the setValueAt method?
    Here is my code:
    public class InfoDialog extends JDialog implements TableModelListener {
         private static final long serialVersionUID = 1L;
         public JTable table;
            String[] columnNames = {"Type", "Value"};
         Object[][] data = {
                   {"Angle", "90"},
                   {"Speed", "50"},
         public InfoDialog {
              Container cp = this.getContentPane();
              setLayout(new BoxLayout(cp, BoxLayout.PAGE_AXIS));
              Dimension dim_topPanel = new Dimension(300, 150);
              JPanel topPanel = new JPanel();
              topPanel.setPreferredSize(dim_topPanel);
              topPanel.setBackground(Color.YELLOW);
              DefaultTableModel model = new DefaultTableModel(rowData, columnNames);
              model.addTableModelListener(this);
              table = new JTable(model);
              table.setPreferredScrollableViewportSize(table.getPreferredSize());
              JPanel tablePanel = new JPanel();
              tablePanel.setLayout(new BorderLayout());
              tablePanel.add(table.getTableHeader(), BorderLayout.PAGE_START);
              tablePanel.add(table, BorderLayout.CENTER);
              cp.add(topPanel);
              cp.add(tablePanel);
              setDefaultLookAndFeelDecorated(false);
              try {
                   UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
              } catch(Exception e) {
                   e.printStackTrace();
              setResizable(false);
              setDefaultCloseOperation(DISPOSE_ON_CLOSE);
              pack();
              setLocationRelativeTo(null);
              setVisible(true);
         public void tableChanged(TableModelEvent e) {
              System.out.println("Table change");          
         public void setValueAt(Object aValue, int row, int column) {
    }What do I have to do to change, e.g., "Speed" from 50 to 60? I call the setValueAt method like this: table.getModel().setValueAt(60, 2, 2); but what do I have to write into my setValueAt method? I thought that my table will automatically change the value when calling the setValueAt method...?
    The tableChanged method is being called when a value in my table changes... OK, but what should I do with this method? I just would like to set a new value...
    :confused:

  • How to detect dataprovider change in spark List ?

    The problem is : when the dataprovider changes, the List unselects its items. I want the selected item of the List to stay selected, even if the dataprovider has a new item, for example.
    So I try to detect a change in the dataprovider, to be able to re-select the item that was selected before the change.
    I tried to listen several events but it didn't work :
    - change is dispatched by user, not by code.
    - updatecompleted is dispatched when the dataprovider changes but it is triggered also when the list is resized, and I don't want that.
    - collectionChange is not dispatched
    I don't understand why valueCommit is not dispatched when the dataprovider changes.
    Can you help me ???

    There is a dataProviderChange event fired whenever dataProvider is set,
    but it may not be listed in the metadata so you may not be able to access
    from MXML.
    Flex harUI,
    Why isn't this event exposed publicly through the metadata of the class?
    The easy fix I can come up with is to extend the List, by simply exposing the event, like:
              [Event(name="dataProviderChange", type="flash.events.Event")]
              public class ExtendedList extends List
    But I don't know if it's good practice...

  • Approval Procedure - SAP loses the changes to the document

    Good morning to all.
    I need an explanation regarding the approval procedures.
    We have recently upgraded the system from version 2007 SP01 PL10 to version 8.81 PL10.
    We have a approval procedure whit 2 level:
    User A => Create the document
    User B => First level approval.
    If User B approve the document then
    User C => Final level approval
    I noticed that in the previous version, during the phase of approvals, was created a single record in the table ODRF. This record was updated with various changes made by users during the approval phase. The changes made ​​during the approval phase regarding UDF
    Now, with the new version, I find myself with the table ODRF registering a record for each change made to the document that is pending approval.
    So, if User B open the document pending approval, saves it as a draft, then edit some UDF and still saves as a draft, in ODRF table we have 2 line (the first for the first save, the second for the UDF edited and so on...)
    But, when you invoke the document itself to approve or modify it, it always loads the first record from the table ODRF, thus losing all the changes.
    Do you have news about this situation? Are there solutions?
    Sorry for my english...

    Hi GORDON.
    Thank for your reply
    After talking with our partners, I confirm that version 8.81 is not possible to make changes to the UDF fields in a document during the approval phase.
    More precisely, the changes can be made, the document can be saved as a draft during the approval procedure, but at the time of approval, the changes are not shown.
    This is because, in the drafts table (ODRF), unlike what happened in the 2007 SP01 PL10 and even in version 8.80, the changes are saved in other records (line) with other draft number ID respect to the original record, and therefore no longer recoverable and / or visible .
    And, I do not understand why, there is no trace in any official document about SAP to that change.
    Sono incazzato....

  • Detecting a change in a system matrix - cnt'd

    Hello,
    This is from one of my previous questions:
    [quote]
    When an order or any other sales document is created, I want to detect if a change is made to the quantity, price, etc. of any of the lines of the document, and then change or add another line. For example, when the quantity of 'Item A' is changed from 1 to a value equal to or above 5, another item 'Item B' is required for the sale and should be added (or it's quantity increased).
    [/quote]
    My previous problem is solved now, but I directly encountered another. So when I detect a change in the matrix, I need to add a new document line, with item code 'Item B'. I have tried in various different ways but I don't seem to be able to add a line to the matrix. When I use oMatrix.AddRows(1), an empty line is added, but whenever I try to change the column values, an error occurs. Can anybody help me cracking this problem?
    Thanks

    Hello,
    If the problem still exists - what about "activating" menu item "1292" ("Add Row")?
    Did you try that + then move to this row?
    HTH

  • Changes in the sales order

    Hi,
    What are the tables where i can see the changes made for a position in a sales order. I want to make a program/query to see when a user change the material code for a position in a sales orders.
    Thankyou.

    I don't know how to check in the table CDPOS a certain changes of the position in a sales document.
    As i said, i want to see when the material code was changed.
    I can't see in the selection screen the sales document numer or something else that can help me to find the document and the position changes.
    Could you help me with some indication?
    Thanks a lot.

  • Is it possible to change the fonts in an illustrator document in Indesign or any other program BESIDES illustrator?

    Is there a quick way to change/replace the font of an illustrator document in inDesign or any other app? Thanks

    Depends on what is in the AI file.
    CD does a normally good job unless there are meshes and a particular type of transparency (I forget which one). I usually don't get "fancy" AI files. Stock & Trade, bare-bones types of files. these open in a few of the applications I use daily. That said, I never do it unless I need to return a format other than AI--because, well, why? I always try to use the originating application with the exception of older EPS files. As a lot of the daily stuff I do is screen printing, and because most every screen printer I deal with use CD, at some point the art has to go into CD.
    Mike

Maybe you are looking for

  • Error in running EJB Client on a remote machine

    I delploy my beans and can run the EJB Client locally. However when I try to run the Client on another machine, there are errors. Here is the errors Syntax error Out of environment space Exception in thread "main" java.lang.NoClassDefFoundError: com/

  • Problems with Preview unflipping photos

    Hi everyone. I asking this on behalf of my dad. He is using 10.4.4 and does not have internet connection, so has missed out on any updates since he bought his computer about 11 months ago. The problems is: he scanned a photo and using Preview, flippe

  • "Click Analyze to begin" won't go away, even after analyzed.

    I'm working on a project right now in Premiere Pro CS6 and for some reason the "click analyze to begin" blue bar for warp stabilizer will not go away, even after it has been analyzed. I tried exporting it thinking that it would go away, but nope, it

  • Copy text - whole page selected

    When I try to copy text in my editable region, text from the entire page, including headings, navigation bars, etc., is selceted. Anybody know why? I am sure it has to do with my tags, but can't seem to figure it out. The site is www.vcstormwater.org

  • Cloud Service Monitor Alert Can't be Created

    Hi Team, we had a cloud service deployed at Azure North Ireland Data Center, i would like to create monitor for the role instance, but when creating alert it shows an error, and the alert can't be created. thanks in advance