| 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 | 
    I need to build a database and update it weekly.  The database I'm
    building is an extract of a larger database which is updated weekly.
    The fex I'm using works fine for the TABLEF portion, but results in
    the following error for the MODIFY portion:
    WARNING.. ON MATCH INCLUDES DUPLICATE SEGMENTS
    (FOC1101) THIS TYPE OF INTERFACE IS NOT SUPPORTED BY GLOBAL JOIN : FOCSA
    Can someone offer some help on what's wrong and how to fix it?
    Regards,
    John
    (This note is also posted in FOCUS).
    Here's the fex:
USE ADD
   AIC_LOCAL:JB1EXT.FOC NEW AS JB1EXT
END
TABLEF FILE INVOICE
    PRINT LI_GRS 
          SOLD_CUST_SN
          SLS_DIST
          DEC_NO
          LI_INV_DT
          LI_INV_QTY
          PART_NO
    IF LI_INV_DT GT &BEG_DT
    IF LI_INV_DT LE &END_DT  
    ON TABLE HOLD AS JB1TEMP FORMAT ALPHA
END
FILEDEF JB1TEMP DISK JB1TEMP.FTM
MODIFY FILE JB1EXT
    FIXFORM LI_GRS 
    FIXFORM SOLD_CUST_SN
    FIXFORM SLS_DIST
    FIXFORM DEC_NO
    FIXFORM LI_INV_DT
    FIXFORM LI_INV_QTY
    FIXFORM PART_NO
    MATCH *
        ON MATCH   INCLUDE
        ON NOMATCH INCLUDE
    DATA ON JB1TEMP
END
ONLINE
END
-EXIT
| T.R | Title | User | Personal Name | Date | Lines | 
|---|---|---|---|---|---|
| 119.1 | Try being more explicit in MODIFY | PLANIT::RYAN | Tue Aug 30 1988 12:03 | 27 | |
|     John - Without seeing your master, I'd bet that your warning comes as
    the result of your match logic.  I'm guessing that you have a multiple
    segment file (which could include uniques) and when you use the
    construct: 
    
       MATCH * KEYS
    
    FOCUS is forced to default to unique values in a top-down segment
    structure.  FOCUS teachers hate 'MATCH * KEYS' because you don't
    really have any control over the update (I use it all the time for
    single segments). Try this construct:
    
    
       MATCH X
         ON MATCH CONTINUE
         ON NOMATCH INCLUDE
       MATCH Y
         ON MATCH CONTINUE
         ON NOMATCH INCLUDE
       MATCH Z
         ON MATCH reject/update/delete
         ON NOMATCH INCLUDE
    
    This construct allows you to walk down the hierarchy.  Say hello
    to Tyrone.
    
    -Bob-
 | |||||