Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Evaluate() on a built field name
Message
De
18/01/2006 02:57:15
 
 
Information générale
Forum:
Visual FoxPro
Catégorie:
Codage, syntaxe et commandes
Versions des environnements
Visual FoxPro:
VFP 8 SP1
OS:
Windows 2000 SP4
Database:
Visual FoxPro
Divers
Thread ID:
01087596
Message ID:
01087862
Vues:
17
If someOne uses long names .....
CLEAR
#define loops 100000

create cursor x1LongNameForAutoDocumentedProgramsIsAnEvaluateKiller ;
(  commentLongNameForAutoDocumentedProgramsIsAnEvaluateKiller01 c(100), ;
   commentLongNameForAutoDocumentedProgramsIsAnEvaluateKiller02 c(100), ;
   commentLongNameForAutoDocumentedProgramsIsAnEvaluateKiller03 c(100), ;
   commentLongNameForAutoDocumentedProgramsIsAnEvaluateKiller04 c(100), ;
   commentLongNameForAutoDocumentedProgramsIsAnEvaluateKiller05 c(100) )

scatter name loDataLongNameForAutoDocumentedProgramsIsAnEvaluateKiller blank

insert into x1LongNameForAutoDocumentedProgramsIsAnEvaluateKiller values ( "", replicate( 'x', 30 ), replicate( 'y', 60 ), ;
   replicate( 'z', 90 ), replicate( 'a', 100 ) )

? "wrong VFP code"
DavidBadCode()

SELECT 0
?
? "workaround for wrong"
DavidBadCode()

SELECT x1LongNameForAutoDocumentedProgramsIsAnEvaluateKiller
?
? "correct test"

CorrectCode()

PROCEDURE DavidBadCode

? "Test a large trim"

ltStart = seconds()

for i = 1 to loops
   for j = 1 to 5
      store alltrim( x1LongNameForAutoDocumentedProgramsIsAnEvaluateKiller.commentLongNameForAutoDocumentedProgramsIsAnEvaluateKiller01 ) to ("loDataLongNameForAutoDocumentedProgramsIsAnEvaluateKiller.commentLongNameForAutoDocumentedProgramsIsAnEvaluateKiller" + padl( m.j, 2, '0' ) )
   endfor
endfor

ltStart = seconds() - ltStart
? "store:", ltStart

ltStart = seconds()

for i = 1 to loops
   for j = 1 to 5
      addproperty( loDataLongNameForAutoDocumentedProgramsIsAnEvaluateKiller, "commentLongNameForAutoDocumentedProgramsIsAnEvaluateKiller" + padl( m.j, 2, '0' ), alltrim( x1LongNameForAutoDocumentedProgramsIsAnEvaluateKiller.commentLongNameForAutoDocumentedProgramsIsAnEvaluateKiller01 ) )
   endfor
endfor

ltStart = seconds() - ltStart
? "AddProperty:", ltStart


? "Test a short trim"

ltStart = seconds()

for i = 1 to loops
   for j = 1 to 5
      store alltrim( x1LongNameForAutoDocumentedProgramsIsAnEvaluateKiller.commentLongNameForAutoDocumentedProgramsIsAnEvaluateKiller04 ) to ("loDataLongNameForAutoDocumentedProgramsIsAnEvaluateKiller.commentLongNameForAutoDocumentedProgramsIsAnEvaluateKiller" + padl( m.j, 2, '0' ) )
   endfor
endfor

ltStart = seconds() - ltStart
? "store:", ltStart

ltStart = seconds()

for i = 1 to loops
   for j = 1 to 5
      addproperty( loDataLongNameForAutoDocumentedProgramsIsAnEvaluateKiller, "commentLongNameForAutoDocumentedProgramsIsAnEvaluateKiller" + padl( m.j, 2, '0' ), alltrim( x1LongNameForAutoDocumentedProgramsIsAnEvaluateKiller.commentLongNameForAutoDocumentedProgramsIsAnEvaluateKiller04 ) )
   endfor
endfor

ltStart = seconds() - ltStart
? "AddProperty:", ltStart

? "Test all comments to properties"

ltStart = seconds()

for i = 1 to loops
   for j = 1 to 5
      lcName = padl( m.j, 2, '0' )
      store alltrim( evaluate( "x1LongNameForAutoDocumentedProgramsIsAnEvaluateKiller.commentLongNameForAutoDocumentedProgramsIsAnEvaluateKiller" + lcName ) ) to ("loDataLongNameForAutoDocumentedProgramsIsAnEvaluateKiller.commentLongNameForAutoDocumentedProgramsIsAnEvaluateKiller" + lcName )
   endfor
endfor

ltStart = seconds() - ltStart
? "store:", ltStart

ltStart = seconds()

for i = 1 to loops
   for j = 1 to 5
      lcName = padl( m.j, 2, '0' )
      addproperty( loDataLongNameForAutoDocumentedProgramsIsAnEvaluateKiller, "commentLongNameForAutoDocumentedProgramsIsAnEvaluateKiller" + lcName, alltrim( evaluate( "x1LongNameForAutoDocumentedProgramsIsAnEvaluateKiller.commentLongNameForAutoDocumentedProgramsIsAnEvaluateKiller" + lcName ) ) )
   endfor
endfor

ltStart = seconds() - ltStart
? "AddProperty:", ltStart

ENDPROC

****************************************

PROCEDURE CorrectCode
? "Test a large trim"

ltStart = seconds()

for i = 1 to loops
   for j = 1 to 5
      store alltrim( x1LongNameForAutoDocumentedProgramsIsAnEvaluateKiller.commentLongNameForAutoDocumentedProgramsIsAnEvaluateKiller01 ) to ("loDataLongNameForAutoDocumentedProgramsIsAnEvaluateKiller.commentLongNameForAutoDocumentedProgramsIsAnEvaluateKiller" + padl( m.j, 2, '0' ) )
   endfor
endfor

ltStart = seconds() - ltStart
? "store:", ltStart

ltStart = seconds()

for i = 1 to loops
   for j = 1 to 5
      addproperty( m.loDataLongNameForAutoDocumentedProgramsIsAnEvaluateKiller, "commentLongNameForAutoDocumentedProgramsIsAnEvaluateKiller" + padl( m.j, 2, '0' ), alltrim( x1LongNameForAutoDocumentedProgramsIsAnEvaluateKiller.commentLongNameForAutoDocumentedProgramsIsAnEvaluateKiller01 ) )
   endfor
endfor

ltStart = seconds() - ltStart
? "AddProperty:", ltStart


? "Test a short trim"

ltStart = seconds()

for i = 1 to loops
   for j = 1 to 5
      store alltrim( x1LongNameForAutoDocumentedProgramsIsAnEvaluateKiller.commentLongNameForAutoDocumentedProgramsIsAnEvaluateKiller04 ) to ("loDataLongNameForAutoDocumentedProgramsIsAnEvaluateKiller.commentLongNameForAutoDocumentedProgramsIsAnEvaluateKiller" + padl( m.j, 2, '0' ) )
   endfor
endfor

ltStart = seconds() - ltStart
? "store:", ltStart

ltStart = seconds()

for i = 1 to loops
   for j = 1 to 5
      addproperty( m.loDataLongNameForAutoDocumentedProgramsIsAnEvaluateKiller, "commentLongNameForAutoDocumentedProgramsIsAnEvaluateKiller" + padl( m.j, 2, '0' ), alltrim( x1LongNameForAutoDocumentedProgramsIsAnEvaluateKiller.commentLongNameForAutoDocumentedProgramsIsAnEvaluateKiller04 ) )
   endfor
endfor

ltStart = seconds() - ltStart
? "AddProperty:", ltStart

? "Test all comments to properties"

ltStart = seconds()

for i = 1 to loops
   for j = 1 to 5
      lcName = padl( m.j, 2, '0' )
      store alltrim( evaluate( "x1LongNameForAutoDocumentedProgramsIsAnEvaluateKiller.commentLongNameForAutoDocumentedProgramsIsAnEvaluateKiller" + m.lcName ) ) to ("loDataLongNameForAutoDocumentedProgramsIsAnEvaluateKiller.commentLongNameForAutoDocumentedProgramsIsAnEvaluateKiller" + m.lcName )
   endfor
endfor

ltStart = seconds() - ltStart
? "store:", ltStart

ltStart = seconds()

for i = 1 to loops
   for j = 1 to 5
      lcName = padl( m.j, 2, '0' )
      addproperty( m.loDataLongNameForAutoDocumentedProgramsIsAnEvaluateKiller, "commentLongNameForAutoDocumentedProgramsIsAnEvaluateKiller" + m.lcName, alltrim( evaluate( "x1LongNameForAutoDocumentedProgramsIsAnEvaluateKiller.commentLongNameForAutoDocumentedProgramsIsAnEvaluateKiller" + m.lcName ) ) )
   endfor
endfor

ltStart = seconds() - ltStart
? "AddProperty:", ltStart

ENDPROC
Précédent
Répondre
Fil
Voir

Click here to load this message in the networking platform