How to rollback commands

Hi All,
I am working  with anchoring an item and creating hyperlink for that item. For this I  am processing kCreateAnchoredObjectCmdBoss,  kNewHyperlinkPgItemSourceCmdBoss, kImportCmdBoss commands using  CmdUtils::ProcessCommand(). After Import I do some resizing with the imported object.
In this process after kImportCmdBoss command is completed, I perform some checks and want to do a rollback of all commands performed till now. i.e. after rollback document state should be what it was before  kCreateAnchoredObjectCmdBoss,  kNewHyperlinkPgItemSourceCmdBoss, kImportCmdBoss processed.
how to do auto rollback or call undo commands ?
In the Programming Guide, I read the whole text under "Undo and Redo Commands". It says all undoable commands manages ICmdHistory. Do I need to implement a custom Interface which inherits from ICmdHistory ?
I have tried using CmdUtils::BeginCommandSequence(), CmdUtils::AbortCommandSequence()and CmdUtils::EndCommandSequence() methods, these didn't work. Can anybody help me?
Thanks,
D

Used CmdUtils::BeginAbortableCmdSeq() before kCreateAnchoredObjectCmdBoss command and CmdUtils::AbortCommandSequence(seq) where kImportCmdBoss return.

Similar Messages

  • HOW TO ROLLBACK ENCUMBRANCE BALANCE

    제품 : FIN_GL
    작성날짜 : 2003-11-24
    HOW TO ROLLBACK ENCUMBRANCE BALANCE
    ===================================
    PURPOSE
    balance table의 data 에 corrput 가 발생했을 경우 예산 가집행에 대한 rollback script를 제공한다.
    Explanation
    1. 관련 data를 모두 backup 받아 놓는다.
    2. data가 corrupt 된 기간을 확인한다.
    3. gl_balance table에서 corrupt 된 data를 delete한다.
    delete from GL_BALANCES
    where set_of_books_id = <set of books id which has the corruption >
    and actual_flag = 'E'
    and encumbrance_type_id = <Encumbrance type id of the corrupt balances>
    and period_year >= <Fiscal year which has the corruption >
    4. GL_SETS_OF_BOOKS table 을 update 한다.
    Update gl_sets_of_books
    set latest_encumbrance_year = <last correct encumbrance year>
    where set_of_books_id = <set of books id>
    5. Encumbrance Year 를 재오픈한다.
    Period 화면에서 해당 encumbrance year를 재오픈한다.
    6. Journal Status를 update 한다.
    update GL_JE_BATCHES set status = 'U', status_verified = 'N'
    where default_period_name in <List of periods in the
    corrupt fiscal year starting with the first period in that year
    up to the latest open for that encumberance type>
    and actual_flag = 'E'
    and set_of_books_id = <set of books id which has the corruption>
    and je_batch_id in
    (SELECT je_batch_id
    from GL_JE_HEADERS
    where encumbrance_type_id = <Corrupt encumbrance type id>
    and actual_flag = 'E'
    and set_of_books_id = <Corrupt Set of books Id>
    and period_name in <List of corrupt periods starting
    with the first period in the corrupt fiscal year
    up to the latest open for that encumbrance type>
    update GL_JE_HEADERS set status = 'U'
    where period_name IN <List of periods in the corrupt fiscal year
    starting with the first period in that year up to the latest
    open for that encumbrance>
    and actual_flag = 'E'
    and encumberance_type_id = <Corrupt encumbrance type id>
    and set_of_books_id = <Corrupt set of books id>
    update GL_JE_LINES
    set status = 'U'
    where period_name IN <<List of periods in the corrupt fiscal year
    starting with the first period in that year up to the latest
    open for that encumbrance>
    and set_of_books_id = <Corrupt set of books id>
    and je_header_id IN
    (select je_header_id
    from GL_JE_HEADERS
    where period_name in <List of periods in the corrupt fiscal
    starting with the first period in that year up to the latest
    open for that encumbrance>
    and actual_flag = 'E'
    and encumberance_type_id = <Corrupt Encumbrance Type Id>
    and set_of_books_id = <Corrupt Set of Books Id>
    7. encumbrance journal 들을 repost 한다.
    Example
    Reference Documents
    Note 99415.1

    If you want to load balances at the time of go live.
    Create a clearing account like data take over A/c
    MM will upload material balances using tcode MB1C and movement type 561
    it will generate the following accounting entry
    Finished goods stock a/c          Debit
    Semi-Finished goods stock a/c Debit
    Raw Material stock a/c             Debit
    Packing Material stock a/c        Debit
    Stores and spares a/c              Debit
    Data take over                          Credit
    Customer a/c (not recon G/l) Debit
    Data takeover a/c                  Credit
    Data takeover a/c                Debit
    Vendor a/c (not recon GL) Credit
    For Asset - tcode OASV
    Plant and Machinery a/c          Dr
    Accumulated depreciation a/c Credit
    Data takeover a/c                    Credit
    Cash balance through FBCJ
    G/L Tcode F-02,
    Data takeover a/c     Debit  (Balancing figure)
    Bank a/c                    Debit
    Advances                 Debit
    Share capital a/c       Credit
    Short term Loan a/c   Credit
    Long term loan a/c     Credit

  • HOW TO ROLLBACK BUDGET BALANCE

    제품 : FIN_GL
    작성날짜 : 2005-05-10
    HOW TO ROLLBACK BUDGET BALANCE
    ==============================
    PURPOSE
    GL Budget Balance 의 Period 설정이 잘 못 되었거나 Budget Balance 가 잘 못 지정되었을 경우에 아래와 같은 step으로 Budget Balance 를 Roll back 한다.
    Problem Description
    고객이 Budget 화면에서 End Date 설정을 잘 못 하여 Period 가 잘못 지정되었는데 Budget Journal이 생성된 후에 End Date 설정을 강제로 변경 하고자 할 경우나 Budget Balance 자체에 문제가 있을 때 아래와 같은 Step 으로 Rollback 한다.
    Solution Description
    Step 1. 관련 데이타는 미리 Back up 받아 놓는다.
    Step 2. Delete 할 Period를 결정한다.
    Step 3. GL_BALANCES table에서 해당 period 의 budget balance 를 Delete 한다.
    DELETE from GL_BALANCES
    where set_of_books_id = <set of books id which has the corruption >
    and actual_flag = 'B'
    and budget_version_id = <Budget version id of the corrupt budget >
    and period_year >= <Fiscal year which has the corruption >
    Step 4. Journal Statuses 를 Update 한다.
    UPDATE GL_JE_BATCHES set status = 'U', status_verified = 'N'
    where default_period_name in <List of periods in the
    corrupt fiscal year starting with the first period in that year
    up to the latest open for that budget>
    and actual_flag = 'B'
    and set_of_books_id = <set of books id which has the corruption>
    and je_batch_id in
    (SELECT je_batch_id
    from GL_JE_HEADERS
    where budget_version_id = <Corrupt budget version id>
    and actual_flag = 'B'
    and set_of_books_id = <Corrupt Set of books Id>
    and period_name in <List of corrupt periods starting
    with the first period in the corrupt fiscal year
    up to the latest open for that budget>
    UPDATE GL_JE_HEADERS set status = 'U'
    where period_name IN <List of periods in the corrupt fiscal year
    starting with the first period in that year up to the latest
    open for that budget>
    and actual_flag = 'B'
    and budget_version_id = <Corrupt budget version id>
    and set_of_books_id = <Corrupt set of books id>;
    update GL_JE_LINES set status = 'U'
    where period_name IN <<List of periods in the corrupt fiscal year
    starting with the first period in that year up to the latest
    open for that budget>
    and set_of_books_id = <Corrupt set of books id>
    and je_header_id IN
    (select je_header_id
    from GL_JE_HEADERS
    where period_name in <List of periods in the corrupt fiscal
    starting with the first period in that year up to the latest
    open for that budget>
    and actual_flag = 'B'
    and budget_version_id = <Corrupt budget version Id>
    and set_of_books_id = <Corrupt Set of Books Id>
    Step 5. Latest Open Budget Period 를 update 한다.
    UPDATE GL_BUDGETS
    set latest_opened_year = <Year prior to the corrupt fiscal year>,
    last_valid_period_name = <last period for the year prior to the
    corrupt fiscal year>
    where budget_name = <Budget name of the corrupt budget>
    and budget_type = 'standard'
    and set_of_books_id = <Corrupt set of books id>;
    DELETE from GL_BUDGET_PERIOD_RANGES
    where budget_version_id = <Corrupt budget version id>
    and period_year = <Corrupt budget fiscal year >;
    Step 6. Budget Year 를 Reopen한다.
    GL Responsibility 로 Applications에 접속하여 Budget Year를 Open
    Step 7. Budget Journals 을 Repost 한다.
    해당 Budget Journals 를 Repost 처리 한다.

    If you want to load balances at the time of go live.
    Create a clearing account like data take over A/c
    MM will upload material balances using tcode MB1C and movement type 561
    it will generate the following accounting entry
    Finished goods stock a/c          Debit
    Semi-Finished goods stock a/c Debit
    Raw Material stock a/c             Debit
    Packing Material stock a/c        Debit
    Stores and spares a/c              Debit
    Data take over                          Credit
    Customer a/c (not recon G/l) Debit
    Data takeover a/c                  Credit
    Data takeover a/c                Debit
    Vendor a/c (not recon GL) Credit
    For Asset - tcode OASV
    Plant and Machinery a/c          Dr
    Accumulated depreciation a/c Credit
    Data takeover a/c                    Credit
    Cash balance through FBCJ
    G/L Tcode F-02,
    Data takeover a/c     Debit  (Balancing figure)
    Bank a/c                    Debit
    Advances                 Debit
    Share capital a/c       Credit
    Short term Loan a/c   Credit
    Long term loan a/c     Credit

  • How to run command SQLLoader Oracle in c#

    Hello,
    How to run command SQLLoader Oracle in c#. I try my sourcode for run this SQLLoader, but nothing happen and error "No process is associated with this object.". Please tell me how i fix it. Thanks.
    This is my code:
    System.Diagnostics.Process process1;
    process1 = new System.Diagnostics.Process();
    process1.EnableRaisingEvents = false;
    string strCmdLine;
    strCmdLine = @"/C SQLLDR XL/secreat@O11G CONTROL=E:\APT\LoadXL.ctl";
    System.Diagnostics.Process.Start("CMD.exe", strCmdLine);
    process1.WaitForExit();
    process1.Close();

    jesperdj ,thanks:)
    actually,i am using eclipse to run my ant tasks programmatically,but I got trouble with the AntRunner class.it seems that i should config a proper classloader for it,but i just don't know how.please lend a hand:)thanks
    robin

  • How to rollback my old os in ipad2

    how to rollback my old os in ipad2

    Well... so much for that plan.  Only backed up to the last version that it backed up - which was, of course, v5.0 from recent update and synch.
    May have to try restore as "new iPad". 

  • Linux server(how to save command out put to another file. )

    hi all,
    i have Q ?
    how to save command out put to another file.
    Ex: #ps -ef
    that particular cmd output i need to save another file.
    is it possible ...if possible ..please let me know
    And how to save command history in Linux.

    df -h >> /oracle/output.log
    /oracle -- mount point name
    Regards
    Asif Kabir

  • How to implement command pattern into BC4J framework?

    How to implement command pattern into BC4J framework, Is BC4J just only suport AIDU(insert,update,delete,query) function? Could it support execute function like salary caculation in HR system or posting in GL(general ledger) system? May I create a java object named salaryCalc which use view objects to get the salary by employee and then write it to database?
    Thanks.

    BC4J makes it easy to support the command pattern, right out of the box.
    You can write a custom method on your application module class, then visit the application module wizard and see the "Client Methods" tab to select which custom methods should be exposed for invocation as task-specific commands by clients.
    BC4J is not only for Insert,Update,Delete style applications. It is a complete application framework that automates most of the typical things you need to do while building J2EE applications. You can have a read of my Simplifying J2EE and EJB Development Using BC4J whitepaper to read up on an overview of all the basic J2EE design patterns that the framework implements for you.
    Let us know if you have more specific questions on how to put the framework into practice.

  • How to rollback a traansacation if we got any problem while sending data to

    how to rollback a traansacation if we got any problem while sending data to a webservice...

    Is it SOA or OSB? Which version you are in..

  • How to give command line arguments

    does anyone help me out in how to give command line arguments after run my program
    m using netbeans6.0.1

    If you want your program to take console input while it's running (as opposed to command line arguments, which are passed once, when you start your program), you can wrap a BufferdInputStream or a Scanner around System.in.
    [http://java.sun.com/docs/books/tutorial/essential/io/index.html]

  • How to rollback previous transaction in a series of Adapters in BPEL

    in Bpel process we integrate 3 db adapters,
    2 adapters are successfully complted,3rd adpter failed.
    inthis situation how we rollback the 3 adapter transaction with out using of compensate handling

    hey,i have made the code plz chk it and do rep soon as ma project sbmission date is very near =((
    i am snaping an image from the web cam then comparing it with the red colored jpg image made in paint.
    the jpg image is converted  to give input image to imaq match vi.but after the comparison it gives the same output.
    on the front pannel the snapped image is displayed,the red colored image that is converted in to its respective pixels is displayed and the image that is obtained after cheking the image in the draw fails vi...the pic converted to pixels is all the time displayed.and the pass/fail icon always denotes one pass led on..plz chk the code =((.
    also can u provide me some guide line for using thr hough transform for the red color detection in lab view..i dont have to import the matlab code..i have to purely make it using the lb view libraries.
    also one more request pl rep me regularly as i really need your golden piece of advice for ma success.
    thnx
    Attachments:
    picture to image(BY ME).vi ‏102 KB
    untitled.JPG ‏3 KB

  • How to excute commands in DOS ?

    I want to execute DOS commands like "shutdown -i" in my Java application but I'm not able to get it done.
    I've used the method as follows but it does not work(does not throw any exceptions as well):
    try
    Process child=Runtime.getRuntime().exec("shutdown -i");
    catch(Exception e)
    e.printStackTrace();
    Also plz. shed some light on how to execute commands with multiple parameters like:
    attrib -s -h -r "*.*" /s /d

    This forum is for info on helping make Java accessible to people with disabilities. I fear you won't get an answer to your question via this forum. I recommend you post your question to a different forum, such as the "Java Programming" forum

  • How to get command history with timestamp ?

    how to get command history with timestamp ?

    If you are using bash:
    HISTTIMEFORMAT If this variable is set and not null, its value is used as a format string for strftime(3) to print the time stamp associated with each history entry displayed by the history builtin. If this variable is set, time stamps are written to the history file so they may be preserved across shell sessions.
    [SunOS 5.10/bash] [email protected]:/etc/ftpd
    # HISTTIMEFORMAT="%h/%m - %H:%M:%S ";export HISTTIMEFORMAT;history
        1  Aug/08 - 19:07:52 chmod a+rwx /root
        2  Aug/08 - 19:07:52 ll /
        3  Aug/08 - 19:07:52 tail -f /root/mylog.log
        4  Aug/08 - 19:07:52 vi /usr/dt/bin/Xsession
        5  Aug/08 - 19:07:52 cat /root/mylog.log
        6  Aug/08 - 19:07:52 ls /export/home/p661210/.dt
        7  Aug/08 - 19:07:52 ls -la  /export/home/p661210/.dt
        8  Aug/08 - 19:07:52 cat  /export/home/p661210/.dt/errorlog
        9  Aug/08 - 19:07:52 vi /usr/dt/config/C/sys.dtwmrc
       10  Aug/08 - 19:07:52 ls
       11  Aug/08 - 19:07:52 cat Xresources.jds
       12  Aug/08 - 19:07:52 vi /usr/dt
    [SunOS 5.10/bash] [email protected]:/etc/ftpd
    [SunOS 5.8/bash] root@wgls03:/root
    # HISTTIMEFORMAT="%h/%m - %H:%M:%S ";export HISTTIMEFORMAT;history
        1  Jul/07 - 09:02:21 vi /etc/vfstab
        2  Jul/07 - 09:02:21 mount /store
        3  Jul/07 - 09:02:21 cd /store/bnz
        4  Jul/07 - 09:02:21 ls
        5  Jul/07 - 09:02:21 ./BNZ_installBaseSoftware
        6  Jul/07 - 09:02:21 find /usr -name gunzipCheers,
    Andreas

  • How to rollback data from cube?

    Hi Experts,
    I have never worked with BPS and I have got one issue with BW support to look upon.
    My questions are :
    1) I ran some planning functions, there was some problem. Now how to rollback the data which would have got posted.
    2) The planning cube has got request which says " Request without Monitor Log: APO Request or Terminated Request Generation" but this is yellow and transferred and added records are zero.
    Alos I ran planning functions yesterday but update request in this yellow request is of 8th Jan.
    So in which request data is bieng posted into cube? Also planning functions were succesfully ran since it showed me n noumbers of records changed.
    Thanks in adavance.
    help would be awarded by points
    Gaurav
    Message was edited by:
            Gaurav

    Gaurav,
       If they are executed a spart of Planning Sequence then you wouldn't have to save anything, it will be automatically saved if there are no errors in any of the planning functions in the sequence.The buffer is always current with all the changes occured, so you wouldn't have to worry about explicit save or refresh unless these aren't part of planning sequence.Here are some links that will provide you with helpful insight on this topic:
    Re: How to save data of job run in Background
    Re: Save automatic a planning function/sequence
    Run planning sequence & save data by using process chain in BI IP
    Re: Complete the buffer without leaving planning folder when reexecuting PFunct
    Hope this helps.
    Cheers
    Srini

  • How to rollback the Airport Extreme to previous release?

    Hello,
    I need to know how to rollback the Airport Extreme to previous release.
    I just updated my last generation Airport Extreme to the latest release because it was blinking orange the status light and it requested to be updated.  Howver, doing so, it no longer recognize my AirPort Express nor my second Airport Extreme (2nd generation) that is bridged.
    If anyone knows how to rollback the update I will appreciate it.
    Thanks,
    genbaez.

    I just updated my last generation Airport Extreme to the latest release
    We might be confused by last generation. does that mean Gen5??
    If it is Gen5 you roll back by holding down the options key while selecting version.
    All the previous versions applicable to your model should pop up.
    Just select the one you want.. and it will proceed. You get no warning or other chance to stop it.. so choose well. 7.6.1 is IMHO the best when you are going to mix with older products.
    I got about 10x link speed improvement doing extend wireless when I rolled back to 7.6.1 yesterday.
    Also you should stop the airport utility annoying you.. turn off the firmware update reminders so they only happen once a week. Uncheck all of these. Ignore the update warning when it will inevitably happen.

  • How to rollback crs upgrade?

    Hi,
    My database is running on two node cluster database.it is cluster filesystem. database is running on Windows server. Now database and clusterware are runing 10.2.0.2 version. we r going to upgrade clusterware to 10.2.0.4. once upgrade will fail .. how to rollback to 10.2.0.2? .plz help
    Thanx in advance
    Thanks,

    You can Upgrade and Downgrade the OCR Configuration in Oracle RAC, here is the link
    http://www.stanford.edu/dept/itss/docs/oracle/10gR2/rac.102/b14197/votocr.htm#BABDAIDI
    oracle Clusterware downgrade is not supported, pls refer the below links
    Re: downgrade database from 10.2.0.4 to 10.2.0.2
    http://www.eygle.com/Notes/10204_patch_note_Linux_x86.htm
    Hope this helps,
    Regards,
    http://www.oracleracexpert.com
    Click here to [Time difference between the RAC nodes is out of sync|http://www.oracleracexpert.com/2009/12/time-difference-between-rac-nodes-is.html]
    Click here to [Duplicate RAC Database using RMAN|http://www.oracleracexpert.com/2009/12/duplicate-rac-database-using-rman.html]

Maybe you are looking for