[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference ilbbak::ibi_focus

Title:FOCUS, from INFORMATION BUILDERS
Moderator:ZAYIUS::BROUILLETTE
Created:Thu Feb 19 1987
Last Modified:Mon May 05 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:615
Total number of notes:1779

576.0. "Focus Internal Error" by NEWOA::PRYCE_J () Tue Feb 01 1994 09:10

    I have a CHOPS hotline for FOCUS problem.  The error message is FOCUS
    internal error.  Very helpful.
    
    This procedure worked before Christmas and now doesn't.  There has been
    some changes like DECstep 5 but the procedure did work after those
    changes.
    
    There is a match with a very long IF statement but I don't think this
    has
    any relevance.  The procedure works if the temporary hold file is more
    than
    2 blocks but less than 3.  See below:
    
    "To restate, the procedure fails when there where 97 DEC# in the temp
    file, which equates to 97*(9+2)� bytes = 1067 bytes, which is more than 2
    blocks but less than 3.  The procedure works when there where 83 DEC# in 
    the temp file, which is 913 bytes, that is less than 2 blocks.
    
    The limit of 3200 bytes of data in the temporary files would equate to
    6� blocks of data, and my files bombed out on 3 blocks of data, so that
    shouldn't be the problem (!?)."
    
    To me this seems very wrong - a temporary hold file only capable of
    being 3 blocks - tell me this isn't so!
    
    All help gratefully received.
            
    Jane
    
          
    
T.RTitleUserPersonal
Name
DateLines
576.1Have you looked at the space for focstack/focsort?MR4DEC::LCIONITue Feb 01 1994 13:459
    
    	How's your space for focsort and focstack in your area doing?
    Are they fairly large so that you run out of space?
    
    	How are your account quotas for working set and enqueue ???
    
    	Just some things to try to look at.
    
    	Lisa Irish
576.2Let's see the codeRDGE44::ALEUC9ungry of 'orshamWed Feb 02 1994 03:179
    Hi Jane, howya doin'
    
    (Standard IB Hotline response coming...)
    
    Can you post the .fex & relavant .mas files ?
    
    I'm on 844 3378 (Leatherhead) if you want to chat about it.
    
    Paul K
576.3check the IF statementSOLVIT::SMOLINSKI_JWed Feb 02 1994 08:227
    I've had similar problems when I've had a very long IF statement.  Try
    cutting it down and see if it works.  There have been times when I've
    had to be very creative with IF statements.
     
    I've never had a problem with the size of temp files.
    
    Judi
576.4AlternativePEKING::MCSHANEGDeceptively Co-operativeWed Feb 02 1994 18:5623
    or...
    
    	Place the elements from the IF statement in a text file and FILEDEF
    the text file, then reference the FILEDEF'd name in the FEX....saves on
    an awful lot of OR's...
    
    Gary.
    
    $ CREATE LOOKUP.TXT
    567894321
    123456789
    987654321
    .
    .
    .
    ^Z
    
    FILEDEF LOOKUP DISK LOOKUP.TXT
    
    TABLE FILE blah
    PRINT blah
    IF DEC_NO EQ (LOOKUP)
    END
576.5RDGE44::ALEUC9ungry of 'orshamThu Feb 03 1994 02:2824
    To add to Gary's suggestion...
    
    1) I think the look-up file has to be sorted.
    
    2) Certain characters cause Focus problems (I've recently found
    that a "/" within the search string causes this method to fail)
    
    3) If the list of values is higher than a certain byte limit (3200 comes
    to mind, but that may be a limit from earlier versions), the method
    will fail. To get round this use the following variation (assuming the
    file LOOKUP has been created, sorted and FILEDEF'd as per -.1
    
    DEFINE FILE X
    Y/I1 = DECODE FIELDNAME(LOOKUP ELSE 1);
    END
    TABLE FILE X
    ....
    IF Y EQ 0
    ...
    
    (This construction generates a Y value of 0 if there's a hit on LOOKUP)
         
    Hope that helps
    Paul K