Microsoft
Software
Hardware
Network
Question : problem of do while loop iin foxpro
I have a table named "output", like below:
type sales Trank
small 100.00 0
small 55.5 0
small 213.10 0
large 76.12 0
large 12.00 0
medium 2133.1 0
medium 66.88 0
medium 424.11 0
while the result should be add the rank to the different types like:
type sales Trank
small 100.00 2
small 55.5 3
small 213.10 1
large 76.12 1
large 12.00 2
medium 2133.1 1
medium 66.88 3
medium 424.11 2
my program code:
SELECT 1
USE output
INDEX ON type TO key
SET INDEX TO key
GO top
rankno = 0
DO WHILE !EOF()
SEEK "SMALL"
IF FOUND()
REPLACE Trank WITH rankno
ENDIF
rankno = rankno + 1
IF !FOUND()
WAIT WINDOW "NO RECORD"
LOOP
ENDIF
SKIP
ENDDO
CLOSE ALL
but it prompted me with "no record..."
and I tried another code:
SELECT 1
USE output
SCAN
rankno = 1
FOR lnI = 1 TO FCOUNT()
IF ALLTRIM(EVALUATE(FIELD('ty
pe')))='SM
ALL' then
replace Trank WITH rankno
endif
rankno = rankno + 1
NEXT
ENDSCAN
but I got ALL fields under column "type" filled with 8.....
pls kindly help...
Answer : problem of do while loop iin foxpro
USE output
INDEX ON type+str(sales) tag typesales descending
do while not eof()
lcType=type
lnRank=0
SCAN WHILE lcType=type
lnRank=lnRank+1
REPLACE TRANK WITH lnRank
ENDSCAN
ENDDO
Random Solutions
MDI Parent and Child Problem
Exchange 2010: Cannot send
How do I apply computer settings via a group policy applied to user objects?
WCF Question
I have the total amount of sales for the month, but I need to split commission between 3 Areas.
Adding Records to another Form
Access Sales System Database
How to add to TabControl from other thread?
Company web in Sharpoint Services Keeps asking for Username and password
"SELECT * FROM Question VB.NET