There is a undocumented function $assignments(). Make this one an official function

Use Case

Assumption: You have to know exactly the number of bytes written to database. If there is a linefeed in string, this number depends on the $NEW_LINE setting. How to get this setting withou t$assignments() ?




Proc Code

Operating System

Not Applicable



15 thoughts on “Make $assignments() official”

  1. Hi Adrian

    As $assignments is a undocumented bot available function, I did play around with it 🙂
    The output was quite okay: You got an item list of all settings in a section of the ASN file:

    eg.   with $assignments(“DRIVER_SETTINGS) you got a list like this:

    Kind regards


  2. I’d still like some way of knowing which assignment file was running (to display on a diagnostic page when prompted by our support team to aid in tracking down configuration errors…)


  3. What  about  $applinfo(<topic>)  ?


    Okay, it’s not yet implemanted 🙂

    I have to post another whish …

  4. Iain, have you looked at print_assignments?

    I had that implemented ages ago. I’m still trying to understand why it became undocumented.

    Ingo, we’re going to start thinking about deployment related stuff for the cloud, and this potentially falls into this.

  5. Adrian, doesn’t that just add it to the transcript? So you’d then need access to the local logs on the remote P.C.?

    I would like to be able to have my end user (most of whom are pretty computer clueless), press a button on our support contact form (built in to the app), and read off the name of the assignment file in use.

    (Sometimes, we can have up to three different assignment files accessing the same app for the same database  (thin client, ‘thick’ client (run the services on the pc), with or without accounts package integration and/or using proc_profiling to try and find speed issues…). We try and keep these in sync apart from the necessary changes in function, but logicals can get out of sync…)

    Knowing which the exact user reporting the problem is using at any particular time can speed the support desk being able to solve the issue without having to ‘take over’ the individual user’s P.C.

  6. We could put the name in as a logical on the assignment file, but that’s not foolproof as someone creating the new file would have to remember to change the logical, or the information is suspect and therefore useless.


  7. @Iain:
    $print_assignments writes into both (normal and transscript) logfile.
    But as this done before the APS starts, you will get no information via $putmess 🙁

  8. fair point Iain, I appreciate it’s still ‘clunky’ to get the info into Uniface.


    we’ll have a think. Won’t be until after we’ve delivered U10, that is our focus.

  9. @Adrian:

    On the other side, you will not “remove” $assignments before you deliver U10.   Or 🙂


    So just use $assigments.
    There are a few section you have to hard code in your program.
    For every section loop through the returned UIL and you got what you want


Leave a Reply