Skip to Content
avatar image
Former Member

How to return to old version of DC?

Hi all,

I have done some modifications to my WebDynpro-DC (not local) that I want to return. Unfortunately I have already checked in the activities. Now I want to return to the state of July 8th. To do this I perform the following steps:

1. Start Studio

2. Login to NWDI

3. Delete DC

4. Create Project without building DCs after sync

5. In DTR-perspective: Sync to date "July 8th"

==> All local Folders under comp are empty (bin, gen, genddic, gen_wdp)

==> All DTR-controlled files are not younger than July 8th

==> everything seems to be as expected

6. Build DC (already tried "Development Component / build", "Reload", "Rebuild Project")

This leads to a rather confusing state. Some generated files have a timestamp I do not understand.

Example: _comp\bin\......\comp\ApmgModelComp.wdcomponent

The timestamp is depending on wether I am logged in to NWDI when building the project. When I am logged in the timestamp is "July 10th". When I am not logged in the timestamp is "June 27th". Obviously the system remembers some generated files. But why and where? The consequence is of course that the generated files do not fit to the rest of my DC. I would expect timestamps of current time because the files are generated "freshly", don't they?

I'm sure I'm doing something wrong. What else do I have a versioning system for?

Thanks for each idea,

Christoph

Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

2 Answers

  • avatar image
    Former Member
    Jul 16, 2007 at 10:18 AM

    Hi all,

    31 views and no idea?

    I'm sure there is a solution to go back to an older version of a WebDynpro-DC. I'm grateful for each hint. Points are guaranteed

    Christoph

    Add comment
    10|10000 characters needed characters exceeded

  • avatar image
    Former Member
    Jul 16, 2007 at 11:56 AM

    Hi all,

    I think I've got a solution, even if it's a dirty one. I performed the following steps:

    1. Delete DC from client

    2. Create project from the DC

    Important: Uncheck "Build DCs after sync" and hit button "Deselect All"

    3. In DTR-perspective:

    Perform "Advanced Sync / Sync to Date" with the desired date/time

    Now you have the old version already, but you cannot really work with it.

    Many operations are forbidden because the checked out version is not the

    youngest version.

    This circumstance will be resolved in the following steps.

    4. In Filesystem-Explorer: Copy folder "_comp" in workspace to a safe location

    outside the workspace

    5. Delete DC from client

    6. Create project from the DC

    Important: Uncheck "Build DCs after sync" and hit button "Deselect All"

    Now you are back to the youngest version, which you don't want because it is

    corrupt.

    7. Find out if there are files only in older version and remember them for later

    (e.g. run WinDiff over the directories "_comp" in workspace and in safe location).

    8. In Filesystem-Explorer:

    Copy folder "_comp" from the safe location of step 4 to the workspace

    (i.e. overwrite the corrupt files of youngest version with files of older version)

    9. In DTR-perspective: If you found some files in step 7 which are only present in

    older version, add them to DTR. This will cause the system to ask for an activity

    the files should be added to.

    Create a new activity.

    10. In DTR-perspective: At folder "_comp" choose menu item "Edit / Files in

    Subtree". If you have already created a new activity in step 9, add the files to

    this activity. Otherwise create a new activity now.

    11. Check in the activity created in step 9 respectively step 10

    12. Delete DC from client

    13. Create project from the DC.

    This time DO NOT uncheck "Build DCs after sync" and DO NOT hit

    button "Deselect All"

    14. That's all

    I already mentioned this is a dirty solution. You have to twiddle in the file system which is rather reserved for DTR and highly error-prone and risky.

    Moreover you should be aware of a imho intrinsic weakness of DTR in interaction with e.g. a model re-import.

    Considering a re-import of a an adaptive WebService-model. Following common instructions in doing this you will first delete the model. This leads to a new activity containing the deleted model classes (i.e. java-files). After this

    you will have to import the model freshly. Before doing this you have to check in the activity with the deleted java-files.

    Reason: Importing the model again will create the same java-files as contained in the activity of deleting. This will cause trouble. So the sequence is:

    1. Delete old model

    ==> generates activity 1

    2. Check in activity 1

    3. Re-import model

    ==> generates activity 2

    4. Check in activity 2

    Now have a look at the version graph of generated java-files. In fact you will see there is one and only one version of these files. Surprised? Not really! Activity 1 had deleted the older version as desired.

    Consequently you do not have any chance to go back to the old version of a WebService-Model. I think this is true not only for WebService-Models but for all structures, which have to be re-generated in any way.

    Please don't hesitate to suggest a better solution or to shopw me that my point of view is not right. I'm still learning and will be grateful for each correction.

    Regards,

    Christoph

    Add comment
    10|10000 characters needed characters exceeded