Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Need idea for sort
Message
 
À
26/02/2010 04:03:06
Lutz Scheffler
Lutz Scheffler Software Ingenieurbüro
Dresden, Allemagne
Information générale
Forum:
Visual FoxPro
Catégorie:
Autre
Versions des environnements
Visual FoxPro:
VFP 9 SP2
Divers
Thread ID:
01451160
Message ID:
01451329
Vues:
36
Here's an ugly way
CREATE CURSOR c_test (ctext C(40))
INSERT INTO c_test (ctext) VALUES ('1.1')
INSERT INTO c_test (ctext) VALUES ('1.02')
INSERT INTO c_test (ctext) VALUES ('10.1')
INSERT INTO c_test (ctext) VALUES ('01.3')
INSERT INTO c_test (ctext) VALUES ('1.02.N')
INSERT INTO c_test (ctext) VALUES ('1.02.N.R')
INSERT INTO c_test (ctext) VALUES ('1.10.R')
INSERT INTO c_test (ctext) VALUES ('1.10.R.1')
INSERT INTO c_test (ctext) VALUES ('20DP')
INSERT INTO c_test (ctext) VALUES ('20')
INSERT INTO c_test (ctext) VALUES ('1.02.R')

LOCAL lcSelect
lcSelect=[SELECT ctext,]
FOR lnX=1 TO 20
	lcSelect=lcSelect+[PADL(ALLTRIM(STR(VAL(GETWORDNUM(ctext,]+ALLTRIM(STR(lnX))+[,'.')))),40,'0')+]+;
		[PADR(CHRTRAN(GETWORDNUM(ctext,]+ALLTRIM(STR(lnX))+[,'.'),'0123456789',''),40) ]+;
		[as s]+ALLTRIM(STR(lnX))+;
		IIF(lnX<20,[,],[])
endfor
lcSelect=lcSelect+[ FROM c_test ORDER BY ]
FOR lnX=1 TO 20
	lcSelect=lcSelect+[s]+ALLTRIM(STR(lnX))+IIF(lnX<20,[,],[])
ENDFOR

&lcSelect
Brandon Harker
Sebae Data Solutions
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform