Migration 8.4 -> 9.4 coding in hooks disappears

Author: erik@spaltman.nl (ESpaltman)

Hi all,

Currently we are invesgtigating the best way to migrate from Uniface 8.4 to 9.4. One problem we came across is that the use of hooks is no longer supported.

Our current code depends on the use of hooks. For instance we use "<td id=fieldname>" in the field level start hook to control the field behaviour with javascript.

During migration (uumtmp48) the hooks are all cleared.

Is there anyone out there who has been dealing with this problem?

Kind regards,

Erik Spaltman


  1. Hi Erik
    One can import the source code of UUMTMP48 (misc\uumtmp48.xml) and modify the program.
    Maybe the entry "HTMLATTRS__upd" is the right one to change the behavior. Just put a few DEBUG and/or PUTMESS in the code and look out for the right place to do some changes.

    Author: istiller (i2stiller@gmx.de)
  2. Hi Ingo,

    Thanks for your reply. That is the way I wanted to go but I was wandering if other Unifacers already had some experience with it. There must be more Unifacers around who have tackeld this problem.

    Kind regards,


    Author: ESpaltman (erik@spaltman.nl)
  3. Hi Erik,

    Are we talking about the HTML hooks here? In 8.4 they would be copied into your hts file at compile time. The first time you open the USP in 9.4 you should get the option to load the old hts (including hooks) into the new internal structure editor. You can then edit the complete HTML layout directly in the IDF for future development.

    If I understand your question correctly then the fact the HTML hooks are deleted shouldn't matter because they will be present in your hts files.



    Author: James Rodger (james.r.rodger@gmail.com)
  4. Hi James,

    you're absolutely right! The problem turned out to be a double entry in the asn file for the hts files. It wasn't me...

    The old skeleton of course did not have my test case.

    Now i'm not to fond to edit skeleton files but it is better then nothing at all.

    Thanks for your help.

    Kind regards,


    Author: ESpaltman (erik@spaltman.nl)
  5. Once you have migrated the USPs you have a few options for maintaining the HTML layout. You can even do this on a per USP basis allowing you to slowly move over to whatever method you pick. If you right click on a USP and select "Server Page Properties" you have 3 options:

    • Use internal internal layout structure - unticking this allows you to continue using external HTS files
    • Source Editor - Moves the contents of the hts file into the repository and allows you to edit them directly in the IDF using a free text HTML editor. You can then delete the hts and you only need to deploy the USP in the future.
    • Graphical Editor - Moves the contents of the hts file into the repository and allows you to edit them directly with Uniface's graphical HTML editor. Note that this method enforces XHTML validation so make sure that your hts files conform or you might lose parts of them when moving over (Uniface 8 didn't enforce any validation so it's possible to make some funny HTML with the old hooks). The graphical editor is used by default by new USPs and DSPs.

    I hope that helps.


    Author: James Rodger (james.r.rodger@gmail.com)
  6. Hi James,

    This will surely help!

    Thanks again.

    Kind regards,



    Author: ESpaltman (erik@spaltman.nl)