Uniface User Forum

 View Only
  • 1.  usysidx

    Posted 03-03-2022 14:28
    Edited by Knut Dybendahl 03-04-2022 08:34
    Hi all,

    USYSIDX is a strange form....

    I've replaced the form with my own in order to do a 'programatic' reconnect to a database
    if /when the current connection is lost.

    The open statement works fine from within usysidx - I get reconnected to the database
    and can retrieve data (again).

    But - I end up in a loop - back into the 'new' form from the UF kernel.
    Is there a specific $ variable I need set or split the content of the login
    across some appropriately named fields so UF can go'n get the values??

    Regards,
    Knut

    ------------------------------
    Knut Dybendahl
    ------------------------------


  • 2.  RE: usysidx
    Best Answer

    ROCKETEER
    Posted 03-04-2022 10:47
    Hello Knut

    I played a bit and came to this

    ;paint entity dummy with fields path and dbms in your usysidx , interface sw*
    ;%%(path.dummy)loginstring depends on path to be used and ? in asn path
    ;Examples
    ;For $ORA ORA:?|?|? ORAloginstring containing sid|dbuser|dbuserpwd
    ;For $MSS MSS:mss2019|?|? MSSloginstring containing |dbuser|dbuserpwd
    ;For $ORA2 ORA:sid|?|? ORAloginstring containing |dbuser|dbuserpwd
    
    operation exec
    variables
    String vLoginString 
    endvariables
    
    
      lfileload "%%(path.dummy)loginstring.txt", vLoginString
    
      open vLoginString , path.dummy
      if ($status = 0)
        $result=""
        return(0)
      else
        putmess "Status after open: %%($status)"
        putmess "Procerror after open: %%($procerror)"
        putmess "Dberror after open: %%($dberror)"
        apexit
      endif
      
    end​


    ------------------------------
    Peter Beugel
    Rocket Internal - All Brands
    Amsterdam NL
    ------------------------------