DKNY error
Nancy Palmquist
nlp at vss3.com
Tue Aug 15 06:01:55 PDT 2006
Don Coleman wrote:
> For the past week or two the following table has been causing DKNF errors on
> one index in this file (E). This table runs as the second part of a script
> where part one is an ascii import process. As you can see there is no
> delete functions in this table yet the field index E is built on (149) is
> modified. However, each night an archive process runs on this file which
> deletes 30,000-40,000 records from this file. Total number of records in
> this file is approx. 70,000. Each night via scheduled tasks FREECHAIN.EXE
> plus each index in this file is rebuilt. Yet each day we are having to have
> each user exit fP and manually rebuild this one index once or twice per day.
> Does anyone see anything in this table that I am missing which could be
> causing the DKNY error? fP v5.0.13, Windows 2000 & XP Pro clients, WIN2000
> Advanced Server. TY,
>
>
> Aug 14, 2006 15:14 File Name: QS1 Page 1
> Processing: WHZONE
>
> 1 ------- - - - - - - - - - - - - - - - -
> If: 9 eq AA
> Then: goto zone
> 2 ------- - - - - - - - - - - - - - - - -
> If:
> Then: AA(4,ALLUP,g)=9
> 3 ------- - - - - - - - - - - - - - - - -
> If:
> Then: lookup req = labelreq k=9 i=A -nx
> 4 ------- - - - - - - - - - - - - - - - -
> If: not req
> Then: end
> 5 ------- - - - - - - - - - - - - - - - -
> If:
> Then: AB(3,.0,g)=req(28)
> 6 ------- - - - - - - - - - - - - - - - -
> If: (AB ge "1" and AB le "50") or (AB ge "211" and AB le "257")
> Then: AC(1,.0,g)="1";goto zone
> 7 ------- - - - - - - - - - - - - - - - -
> If: (AB ge "51" and AB le "100") or (AB ge "258" and AB le "300")
> Then: AC="2";goto zone
> 8 ------- - - - - - - - - - - - - - - - -
> If: (AB ge "101" and AB le "150") or (AB ge "301" and AB le "347")
> Then: AC="3";goto zone
> 9 ------- - - - - - - - - - - - - - - - -
> If: (AB ge "151" and AB le "196") or (AB ge "348" and AB le "391")
> Then: AC="4";goto zone
> 10 ------- - - - - - - - - - - - - - - - -
> If: (AB ge "197" and AB le "210") or (AB ge "392" and AB le "403")
> Then: AC="5"
> 11 ------- - - - - - - - - - - - - - - - -
> zone If: AB eq ""
> Then: 148="";149="";write;end
> 12 ------- - - - - - - - - - - - - - - - -
> If:
> Then: 148=AB;149=AC;write;end
>
>
>
> Don Coleman
> Donald G. Coleman, Consultant
> 402 Andrew Circle
> Indiana, PA 15701
> dcoleman at dgcreact.com
> (724) 349-6302
>
>
>
> _______________________________________________
> Filepro-list mailing list
> Filepro-list at lists.celestial.com
> http://mailman.celestial.com/mailman/listinfo/filepro-list
>
>
Don,
I might suggest adding a second sort to the index. It will not affect
the programming if the indexing is only looking for 1 characters. But 1
character sorts that can have only 6 responses (as I see in your
programming) will require that 70,000 records be divided into only 6
sections, a heavy task for any index. Add 5-8 characters more with a
field that is always filled with varied data so it sorts nicely.
Let us know if you try it and it helps. I have had experience with this
as a fix but have not built such short indexes in quite a while.
Nancy
--
Nancy Palmquist MOS & filePro Training Available
Virtual Software Systems Web Based Training and Consulting
PHONE: (412) 835-9417 Web site: http://www.vss3.com
More information about the Filepro-list
mailing list