How to maintain BLEN attribute of LTAB (List of available bolt lengths)

 
Parents
  • Preferred (or available) BOLT lengths are defined in the BLEN attribute of the LTAB element. When we ask with Q ATT at LTAB we see beside others

    Blength (45mm 50mm 55mm ...)

    But how to maintain such a BLEN attribute? When we look into the manuals we find nothing (annoyingly a quite common situation in PDMS manuals)

    Here are some findings:

    Typing[FONT="Lucida Console"] BLEN (45 50 55 60 65 70 ...)[/FONT] works. But when we have a longer table which might exceed the usable length of the command line or macro record we fail.

    We can get the values of the BLEN attribute into an array with e. g.[FONT="Lucida Console"] !blenArray = !!CE.BLEN[/FONT], but manipulating the array and trying to write it back with [FONT="Lucida Console"]!!CE.BLEN = !blenArray[/FONT] issues a Syntax error!

    But the following commands and methods were found which allow manipulation of the BLEN entries either in the Command Line or in macros:

    [LIST]
    When we want to clear the BLEN array we have to reset it with BLEN (1) which sets the first value and clears the remainders.[/LIST]

    [LIST]
    Typing !!CE.BLEN = 123, with n any existing index and 123 the value to be assigned. n can be one step above the current maximum index such we can consecutively fill a BLEN array in a macro with


    BLEN (1)  $* Clear the array

    -- bring the array for filling into correct shape
    !blenArray.Sort()

    -- fill the BLEN array up again
    do !i index !blenArray
     !!CE.BLEN[!i] = !blenArray[!i]
    enddo

    [/LIST]
    [LIST]For the command line the following syntax can be used for maintanance:

    [FONT="Lucida Console"]ATTRIB BLEN NUM n = 1234[/FONT]    with n the index in the BLEN (which can be determined with Q VAR !!CE.BLEN in advance) and 1234 the value to be applied

    [FONT="Lucida Console"]ATTRIB BLEN NUM n TO m = 1234 5678[/FONT]  which allows to set a range from n to m with the values as defined after the "=" sign.[/LIST]

    Why can't this be written by Aveva?
Reply
  • Preferred (or available) BOLT lengths are defined in the BLEN attribute of the LTAB element. When we ask with Q ATT at LTAB we see beside others

    Blength (45mm 50mm 55mm ...)

    But how to maintain such a BLEN attribute? When we look into the manuals we find nothing (annoyingly a quite common situation in PDMS manuals)

    Here are some findings:

    Typing[FONT="Lucida Console"] BLEN (45 50 55 60 65 70 ...)[/FONT] works. But when we have a longer table which might exceed the usable length of the command line or macro record we fail.

    We can get the values of the BLEN attribute into an array with e. g.[FONT="Lucida Console"] !blenArray = !!CE.BLEN[/FONT], but manipulating the array and trying to write it back with [FONT="Lucida Console"]!!CE.BLEN = !blenArray[/FONT] issues a Syntax error!

    But the following commands and methods were found which allow manipulation of the BLEN entries either in the Command Line or in macros:

    [LIST]
    When we want to clear the BLEN array we have to reset it with BLEN (1) which sets the first value and clears the remainders.[/LIST]

    [LIST]
    Typing !!CE.BLEN = 123, with n any existing index and 123 the value to be assigned. n can be one step above the current maximum index such we can consecutively fill a BLEN array in a macro with


    BLEN (1)  $* Clear the array

    -- bring the array for filling into correct shape
    !blenArray.Sort()

    -- fill the BLEN array up again
    do !i index !blenArray
     !!CE.BLEN[!i] = !blenArray[!i]
    enddo

    [/LIST]
    [LIST]For the command line the following syntax can be used for maintanance:

    [FONT="Lucida Console"]ATTRIB BLEN NUM n = 1234[/FONT]    with n the index in the BLEN (which can be determined with Q VAR !!CE.BLEN in advance) and 1234 the value to be applied

    [FONT="Lucida Console"]ATTRIB BLEN NUM n TO m = 1234 5678[/FONT]  which allows to set a range from n to m with the values as defined after the "=" sign.[/LIST]

    Why can't this be written by Aveva?
Children
No Data