Aller au contenu


Photo

Petite Ou Grande Liste Numérique (et Ce N'est Pas Un Exo)


  • Please log in to reply
14 réponses à ce sujet

#1 Agnès

Agnès
  • Membres
  • PipPipPipPipPipPipPipPip
  • 4 421 messages
  • Genre :Femme
  • Lieu :Vaulandry | Paris
  • Intérêts :à développer
  • FM Conférence : Poitiers 2006, Lyon 2007, Nice 2008, Paris 2009, Paris 2010, La Rochelle 2011
  • FM : 4 7 8 8.5 9 10 11 12 Adv
  • OS : Mac


Posté 21 avril 2007 - 02:25

Bonsoir,

Depuis le temps.... j'étais persuadée qu'avec un simple Remplace2 ou pouvait créer une liste numérique !

Merci encore aux Japonais donc ;) et l'extra "NombreVersTexteJ" utile ici aussi

le but de ce calcul : créer une liste de 1 à n, n étant maximum 250 : le fichier est ici, finalisé.

Definir (
				n = 250 // n = Nombre de valeurs d'une liste ou nombre de fiches ou un nombre de 1 à 250
  ;
				Cas ( n < 251; 
				Remplace2 (
				NombreVersTexteJ (
				( Debut ( 
			   ( Remplace2 ( ( 10 ^ n ) - 1; "9"; "100" )  & "" ) * ( Remplace2 ( (10 ^ n ) - 1; "9"; "100" )  & "" );
			   ( n * 3 ) -2 ) )
	 ; 1; 0 )
	  ; [",00";"¶"]; [",0"; "¶"]; [ ","; "¶"] );
				"Impossible"
				))
si l'on veut détailler le calcul :
1/ on bloque au dessus de 250, sinon FM n'assure plus la multiplication de l'étape suivante

Donc :
le Ti "Remplace2 ( ( 10 ^ n ) - 1 ; "9" ; "100" )" X 2 qui va démultiplier pour créer ma liste.
Et oui, si n = 10 par exemple : 100100100100100100100100100100 * 100100100100100100100100100100 me donne 10020030040050060070080090100090080070060050040030020010000, il faut enlever la partie qui ne nous intéresse pas, ici arrive l'intervention de "Debut ( MaMultiplication ; ( n * 3 ) - 2 ) )"
ce qui va nous donner : 1002003004005006007008009010
On colle la dessus le fameux "NombreVersTexteJ ( monCalcul ; 1 ; 0 )" qui va me mettre des virgules tous les 3 chiffres et qui va donner 1,002,003,004,005,006,007,008,009,010
reste plus qu'à évacuer les ,00 les ,0 et les , pour les remplacer par des ¶

vous pouvez tester jusqu'à 250 ça le fait nickel

A quoi ça sert ? verra ;) moulte fois j'ai pesté car je ne pouvais pas me servir de numérotation au sein d'un remplace2. Si on s'amuse ensuite à remplacer les ¶ de la liste obtenue par des fonctions, style ObtenirValeur, ExtraireValeur, ObtenirEnieme, vous allez vite savoir à quoi ça peut servir. ok :) de là à l'utiliser :rolleyes: Remplace2 étant, je crois, beaucoup plus rapide qu'une récursive.
juste un exemple (qui ne servira pas mais tout simple) :
Definir ( [ 
				MonTexte = "oui tout va bien";
				n = NombreMots ( MonTexte );
				
				MaListeNum = Cas ( n < 251; 
				Remplace2 ( NombreVersTexteJ (
				( Debut ( ( Remplace2 ( ( 10 ^ n ) - 1; "9"; "100" )  & "" ) 
				* ( Remplace2 ( (10 ^ n ) - 1; "9"; "100" )  & "" ); ( n * 3 ) -2 ) )
	  ; 1; 0 ); [",00";"¶"]; [",0"; "¶"]; [ ","; "¶"] );"Impossible" )
				];
				Evaluation 
				( Remplace2 ( 
				"MotsFin ( \"" & MonTexte & "\"; " & MaListeNum; "¶"; ") &" &Citation (¶) &"& ¶MotsFin ( \"" & MonTexte & "\"; " ) & ")" )
				)
donnera

bien
va bien
tout va bien
oui tout va bien

si si ! il y a de quoi jouer avec ;)

ça aurait pu être et rester simple......
Mais j''ai voulu tenter d'aller au delà de 250......Et là, ça ce complique une peu.....

Donc ça c'est la version on va dire.... plus complexe.... mais elle ne va pas au dessus de 2300.... (non ! je n'irai pas au delà non plus !!!)
"mieux" plus bas
oui oui, ça à l'air barbare.... mais on peut le passer en Fonction Perso comme ça on ne voit plus le calcul, hein !
L'intérêt ? je voulais y arriver ;)

En fait, du coup, ça fait le travail de "Liste()", en attendant que Liste () suive le tri ;)
Sauf que : ça ne s'utilise pas uniquement sur une table liée mais ça va très bien sur une table source
Et ça suit l'ordre de tri des fiches du modèle en court.... en calcul non mémorisé, testé sur 1250 fiches avec 2 tris différents et par script (sur Intel, clair que ça va plus vite que sur le G4)...... Par contre, si on fait appel à une rubrique d'une TE..... pffff ça suivra le tri du lien et non celui de la TE utilisée..... verra plus tard ça ;)

C'est un "premier jet" et et je suis sûre que l'on peut alléger et améliorer le calcul ;) mais là..... j'ai besoin d'aide !

Allez ! Bonne nuit ;)

Agnès


...... hum...... dites....... c'est viable mon histoire ou pas ?????

Image envoyée Développeuse à mes heures !

Des exemples de réalisations, des trucs et des techniques, à visiter dans mon Coin
....en construction oui... toujours ! au gré du code et des idées ;)


#2 paisley

paisley
  • Membres
  • PipPipPipPipPipPipPip
  • 1 478 messages
  • Genre :Homme
  • Lieu :Montréal (Canada)
  • Intérêts :Voile, vélos, peinture, photos.... cuisine.
    Informatique par passion des choses bien organisées.
  • FM : 11 & 12 Adv FMP Go | FMSA11
  • OS : OSX 10.7 xServ 10.6 | Xp pro


Posté 21 avril 2007 - 05:11

Bonsoir,

Depuis le temps.... j'étais persuadée qu'avec un simple Remplace2 ou pouvait créer une liste numérique !

Merci encore aux Japonnais donc ;) et l'extra "NombreVersTexteJ" utile ici aussi

le but de ce calcul : créer une liste de 1 à n, n étant maximum 250


...... hum...... dites....... c'est viable mon histoire ou pas ?????


Boon honnetement, je viens de lire ton post à 00:08 heure locale de Montréal... 2 bouteilles de bordeaux en arrière... je pense que je vai réflechir à ton truc au dodo !
Et m... demainj'ai un job de fou pour intégrer 42 ans d'archives d'une université ! e dimanche je dois aller voter (!!!!!) dur d'être expatrié :)
Bonne nuit à toi Agnès
Cordialement,
Robert Sarly
Montréal, Québec, Canada (GMT-5)
Vice-Président FMQC.ca - ADC Member - Skype /iChat : paisleysoft
FMP 6 ->11 adv |FMP Go | OSX | OSX Server | Win Xp | iOS4
Hébergement FMS & FMSA 9/10/11
-----------------------------------------------------------------------------------
info@paisley-software.com
Site Paisley
Hébergement FMP

#3 Ugo

Ugo
  • Membres
  • PipPipPipPipPipPipPipPip
  • 4 140 messages
  • Genre :Homme
  • Lieu :Paris
  • FM Conférence : Poitiers 2006, Lyon 2007, Paris 2009
  • FM : Toutes versions
  • OS : Tous les OS


Posté 21 avril 2007 - 11:46

On a trouvé notre nouveau Edoshin, on passe du russe au japonais quoi ;)

Pour l'heure, je suis davantage inspiré par les bords de Marne qui m'appellent sous ce soleil d'été, mais je regarderai ça de près quand j'aurais pris quelques coup de soleil.
Ugo Di Luca

DLSystems ( Paris )
Consultant/Développeur
* Applications Bureau
* Applications Web
* Applications Mobiles ( iOs, Android, Blackberry, Windows Phone )

----
CEGID
Ingénieur Développement SaaS

#4 Agnès

Agnès
  • Membres
  • PipPipPipPipPipPipPipPip
  • 4 421 messages
  • Genre :Femme
  • Lieu :Vaulandry | Paris
  • Intérêts :à développer
  • FM Conférence : Poitiers 2006, Lyon 2007, Nice 2008, Paris 2009, Paris 2010, La Rochelle 2011
  • FM : 4 7 8 8.5 9 10 11 12 Adv
  • OS : Mac


Posté 21 avril 2007 - 11:54

Bop !

Dis, en Fonction Perso ça va très vite aussi, on peut donc en aménager une façon

MaFP ( MaRubriqueCible ; NombreAAfficher {; ActionAuChoix (ObtenirEnieme ; ObtenirValeur,...} )
peut d'ailleurs devenir également
MaFP ( MaRubriqueCible ; N°PremiereLigne ; N°DernierLigne {; ActionAuChoix (ValeurExtraites ; ObtenirEnieme ; ObtenirValeur...} )

Par contre, quand FM ne trouve pas la valeur, (on demande une liste de 153 fiches et il ne trouve que 5 fiches par exemple), il met un "?", je ne sais pas si je dois le faire interpreter ou le laisser tel quel..... (sisi ! c'est une question ! )
Oui je pense l'utiliser ;)

Bref :) je vais aller prendre le soleil aussi ;) :P

Bonne journée

Merci à vous 2 pour vos futurs tests !

Agnès

Image envoyée Développeuse à mes heures !

Des exemples de réalisations, des trucs et des techniques, à visiter dans mon Coin
....en construction oui... toujours ! au gré du code et des idées ;)


#5 Ugo

Ugo
  • Membres
  • PipPipPipPipPipPipPipPip
  • 4 140 messages
  • Genre :Homme
  • Lieu :Paris
  • FM Conférence : Poitiers 2006, Lyon 2007, Paris 2009
  • FM : Toutes versions
  • OS : Tous les OS


Posté 21 avril 2007 - 17:24

Bref :) je vais aller prendre le soleil aussi ;) :P


Manquait plus que ça...

Qu'est ce tu vas nous inventer encore sous ton saule pleureur ?
Bon repos, j'ai observé un peu et ça vaut le coup d'oeil en effet :blink:
Ugo Di Luca

DLSystems ( Paris )
Consultant/Développeur
* Applications Bureau
* Applications Web
* Applications Mobiles ( iOs, Android, Blackberry, Windows Phone )

----
CEGID
Ingénieur Développement SaaS

#6 Agnès

Agnès
  • Membres
  • PipPipPipPipPipPipPipPip
  • 4 421 messages
  • Genre :Femme
  • Lieu :Vaulandry | Paris
  • Intérêts :à développer
  • FM Conférence : Poitiers 2006, Lyon 2007, Nice 2008, Paris 2009, Paris 2010, La Rochelle 2011
  • FM : 4 7 8 8.5 9 10 11 12 Adv
  • OS : Mac


Posté 21 avril 2007 - 20:44

Bon sang ! j'ai continué :unsure: :blink: :rolleyes:

Bon...... j'ai du toucher la limite de "Evaluation" :wacko: mais je crois que c'est mon calcul qui dérappe !

Déjà j'arrive maintenant à faire une liste numérique, de 1 jusqu'a 25000, y a du progrès et ça ce fait très vite
(dans le calcul, si X contient 25000, ListeNumOk affichera bien une liste numérique de 1 à 25000. oui, je sais ça ne sert pas du tout.

Par contre
Definir ( [          ListeNum = Remplace2 (                           NombreVersTexteJ ( Debut ( Remplace2 (( 10 ^ 250 ) -1; "9"; "100" ) ) * Remplace2 (( 10 ^ 250 ) -1; "9"; "100" ) ); 748 )                          ; 1; 0 ); [",00";"¶_"]; [",0"; "¶_"]; [ ","; "¶_"] );                X = 2320; // Nombre à définir             Y = Ent ( ( X - 100 ) / 100 ) + 1;             ListeNbr = MotsDebut  ( Remplace2 ( ListeNum; "¶_"; ")|¶" ); Y ) & ")";                MaRubrique = "F5000_test::FirstName"; // Rubrique à écrire entre guillemets                ListeNumOk = MotsDebut (                                 MotsDebut ( Remplace2 ( ListeNum; [ "_"; "" ] ); 99 ) & "¶" &                                 Remplace2 ( Evaluation  ( Remplace2 (                                  "¶" & ListeNbr; [ "¶"; ( "Remplace2 ( \"" &  "_" & MotsExtraits ( ListeNum; 100; 100 )                                    & "\"; \"_1\"; "   ) ]; [ "|"; " &" & Citation(¶) & "& "] ) ); " "; ¶ )                             ; X )   ];             //Evaluation             ( "ObtenirEniemeEnreg ( " & MaRubrique & "; " & Remplace2 (             ListeNumOk; "¶"; " )&" & Citation (¶) & "& ¶ObtenirEniemeEnreg ( " & MaRubrique & "; ") & " )" )   )
Evaluation désactivée, et X étant sur 2320 le résultat donne bien :

ObtenirEniemeEnreg ( F5000_test::FirstName; 1 )&"¶"&
(...................)
ObtenirEniemeEnreg ( F5000_test::FirstName; 2319 )&"¶"&
ObtenirEniemeEnreg ( F5000_test::FirstName; 2320 )

Ben quand je colle "Evaluation" la dessus aucun résultat :( ça marche que jusqu'a 2251.... à 2252 il me colle un "?", à 2253 et au delà il se tait et affiche un grand vide..... (y a du mieux tout à l'heure c'était 1745)

Alors ben..... Pourquoi ???
(Oui, il faut que je simplifie mes 3 listes au profit d'une seule mais la je suis en stade d'essai ;) )

Bonne soirée

Agnès

Image envoyée Développeuse à mes heures !

Des exemples de réalisations, des trucs et des techniques, à visiter dans mon Coin
....en construction oui... toujours ! au gré du code et des idées ;)


#7 Ugo

Ugo
  • Membres
  • PipPipPipPipPipPipPipPip
  • 4 140 messages
  • Genre :Homme
  • Lieu :Paris
  • FM Conférence : Poitiers 2006, Lyon 2007, Paris 2009
  • FM : Toutes versions
  • OS : Tous les OS


Posté 22 avril 2007 - 04:25

ça marche que jusqu'a 2251.... à 2252 il me colle un "?", à 2253 et au delà il se tait et affiche un grand vide..... (y a du mieux tout à l'heure c'était 1745)

Alors ben..... Pourquoi ???
(Oui, il faut que je simplifie mes 3 listes au profit d'une seule mais la je suis en stade d'essai ;) )

Bonne soirée

Agnès


Bonjour,

T'as confondu café et saké sans doute. Chez moi, c'est toujours bloqué à 1746 !
C'est sûr c'est du à tes 3 listes. Peut-être après un café je comprendrais de quelles listes tu nous parles ;)

Bon Dimanche.
Ugo Di Luca

DLSystems ( Paris )
Consultant/Développeur
* Applications Bureau
* Applications Web
* Applications Mobiles ( iOs, Android, Blackberry, Windows Phone )

----
CEGID
Ingénieur Développement SaaS

#8 Ugo

Ugo
  • Membres
  • PipPipPipPipPipPipPipPip
  • 4 140 messages
  • Genre :Homme
  • Lieu :Paris
  • FM Conférence : Poitiers 2006, Lyon 2007, Paris 2009
  • FM : Toutes versions
  • OS : Tous les OS


Posté 22 avril 2007 - 06:22

Je ne crois pas avoir vu cette limite publiée nulle part, mais force est de constater que tu as atteins la chaîne maximale possible pour la fonction Evaluation.

Cela dit, tu peux donc fonctionner par petits paquets si tu le souhaites.

Avec celui-ci décomposé en 2 listes, on peut atteindre un maximum de 3492, mais si tu veux le décomposer en 3, 4, 5 ou 6 ou plus, libre à toi de jouer avec MotsExtraits et le nombre de paquets.

[codebox]Definir ( [
Liste748 = Debut ( Remplace2 ( (Remplace2 (( 10 ^ 250 ) -1 ; "9" ; ",100" ) ) ^ 2 ; [ ",0";"" ] ) ; 748 ) ;
ListeNum = Remplace2 (
NombreVersTexteJ ( Liste748
; 1; 0 ); [ ","; "¶_"] );

X = 3492; // Nombre à définir
Y = Ent ( ( X - 100 ) / 100 ) +1;
ListeNbr = MotsDebut ( Remplace2 ( ListeNum; "¶_"; ")|¶" ); Y ) & ")" ;

MaRubrique = "F5000_test::FirstName" ;

ListeNum1=

MotsDebut(
MotsDebut ( Remplace2 ( ListeNum; [ "_0"; "" ] ; [ "_00"; "" ] ; [ "_"; "" ] ); 99 ) & "¶" &
Remplace2 ( Evaluation ( Remplace2 (
"¶" & ListeNbr; [ "¶"; ( "Remplace2 ( \"" & "_" & MotsExtraits ( ListeNum; 100; 100 )
& "\"; \"_1\"; " ) ]; [ "|"; " &" & Citation(¶) & "& "] ) ); " "; ¶ ) ; Ent (X/2)
) ;
ListeNum2 =
MotsExtraits(
MotsDebut ( Remplace2 ( ListeNum; [ "_0"; "" ] ; [ "_00"; "" ] ; [ "_"; "" ] ); 99 ) & "¶" &
Remplace2 ( Evaluation ( Remplace2 (
"¶" & ListeNbr; [ "¶"; ( "Remplace2 ( \"" & "_" & MotsExtraits ( ListeNum; 100; 100 )
& "\"; \"_1\"; " ) ]; [ "|"; " &" & Citation(¶) & "& "] ) ); " "; ¶ ) ; Ent (X/2) +1 ; X - Ent (X/2)
)

];
Evaluation
( "GetNthRecord ( " & MaRubrique & "; " & Remplace2 (
ListeNum1; "¶"; " )&" & Citation (¶) & "& ¶GetNthRecord ( " & MaRubrique & "; ") & " )" ) & "¶" &
Evaluation
( "GetNthRecord ( " & MaRubrique & "; " & Remplace2 (
ListeNum2; "¶"; " )&" & Citation (¶) & "& ¶GetNthRecord ( " & MaRubrique & "; ") & " )" )
)[/codebox]

Je me suis juste permis une petite adaptation pour ton calcul intitial.

Cela dit, une multivaluée te permettrait aisément d'accomplir tout ce découpage, ici j'atteint 50.000 sans problème ( en calcul, ça rame, une fois scripté et en se passant d'Extend ( ) , c'est jouable ).
Si le but est d'utiliser ta liste d'identifiants pour un lien, c'est jouable. Maintenant, stocker 50.000 identifiants dans une liste, multivaluée ou pas, c'est pas ma tasse de thé

Bonne suite donc ;)
Ugo Di Luca

DLSystems ( Paris )
Consultant/Développeur
* Applications Bureau
* Applications Web
* Applications Mobiles ( iOs, Android, Blackberry, Windows Phone )

----
CEGID
Ingénieur Développement SaaS

#9 fabriceN

fabriceN
  • Membres
  • PipPipPipPipPipPipPipPipPip
  • 6 181 messages
  • Genre :Homme
  • Lieu :France/Belgique
  • FM Conférence : Lyon 2007, Nice 2008, Paris 2009, Paris 2010, La Rochelle 2011, Toulouse 2012
  • FM : FMPA 9,10,11,12 / FMSA12
  • OS : OSX.6, Win7


Posté 22 avril 2007 - 06:37

On a trouvé notre nouveau Edoshin, on passe du russe au japonais quoi ;)


Bravo pour cette "méthode Kouriles". Ça donne un peu mal au crâne dès le matin, mais c'est très amusant.
Fabrice Nordmann
Développeur FileMaker Certifié 8, 9, 10, 11, 12

Image envoyée


Toute une gamme de services conçus spécialement pour les utilisateurs et développeurs FileMaker.

Hébergement FileMaker, optez pour un débit illimité et des prix sur mesure, adaptés à vos usages.
QuickExpertise, quand le forum ne suffit plus : ne perdez plus des heures sur un problème !
Coaching, une aide régulière pour vous permettre d'avancer dans votre projet.
1-more-tube, le premier (et seul ?) magazine vidéo en Français sur FileMaker.

mes fonctions perso sur FMfunctions.com

#10 Agnès

Agnès
  • Membres
  • PipPipPipPipPipPipPipPip
  • 4 421 messages
  • Genre :Femme
  • Lieu :Vaulandry | Paris
  • Intérêts :à développer
  • FM Conférence : Poitiers 2006, Lyon 2007, Nice 2008, Paris 2009, Paris 2010, La Rochelle 2011
  • FM : 4 7 8 8.5 9 10 11 12 Adv
  • OS : Mac


Posté 22 avril 2007 - 12:05

Je ne crois pas avoir vu cette limite publiée nulle part, mais force est de constater que tu as atteins la chaîne maximale possible pour la fonction Evaluation.

oui, même conclusion. En fait, 1740 c'est pour les Non Intel et 2250 pour les Intel.

Merci pour ton aménagement, j'ai compris après mon café d'où venait le 748

Alors comme je ne vaut pas laisser tomber, si Evaluation n'évalue pas plus de 1700 lignes, je pars du principe que je peux évaluer la formule par paquet de 1000 lignes........
et je n'arrive pas à écrire l'évaluation de l'évaluation

Admettons que l'on veut évaluer 2900 fiches, j'ai adapté la fin du calcul avec ça pour voir :

Rajout de 2 lignes dans le Définir :
ListeEval = Remplace2 ( "|1^^¶_|" & MotsDebut  ( Remplace2 ( ListeNum; "¶_"; "000^^¶_|" ); Ent ( X / 1000) )  & "^^"; "¶_|^^"; "" );
   et
   Faire = "ObtenirEniemeEnreg ( " & MaRubrique & "; " & Remplace2 (
			  CreaListeNum; "¶"; " ) &" & Citation (¶) &"& ¶ObtenirEniemeEnreg ( " & MaRubrique & "; ") & " ) " 
   puis le résultat : 
	//Evaluation 
   ( Remplace2 ( ListeEval; [ "|"; "ValeursExtraites ( \" & Faire & \"; " ]; [ "^^"; "; 1000 )" ]; [ "¶_"; "& \" \" ) & \" \" & " ] )  )
Ce qui me donne :
ValeursExtraites ( " & Faire & "; 1 ; 1000 )& " " ) & " " & ValeursExtraites ( " & Faire & "; 1000 ; 1000 )& " " ) & " " & ValeursExtraites ( " & Faire & "; 2000 ; 1000 )& " " ) & " " & ValeursExtraites ( " & Faire & "; 3000 ; 1000 ) avec un joli message d'erreur quand je rajoute évaluation dessus. je n'arrive pas à l'écrire correctement

Si manuellement on évalue les 1000 x 4 ça le fait bien et très vite, et je voudrais aller au bout de ce calcul sans multivaluées :rolleyes:

Bon Dimanche

Agnès

Image envoyée Développeuse à mes heures !

Des exemples de réalisations, des trucs et des techniques, à visiter dans mon Coin
....en construction oui... toujours ! au gré du code et des idées ;)


#11 Ugo

Ugo
  • Membres
  • PipPipPipPipPipPipPipPip
  • 4 140 messages
  • Genre :Homme
  • Lieu :Paris
  • FM Conférence : Poitiers 2006, Lyon 2007, Paris 2009
  • FM : Toutes versions
  • OS : Tous les OS


Posté 22 avril 2007 - 14:05

[quote name='Agnès' post='135527' date='22/04/2007 - 13:05'][quote name='Ugo' post='135523' date='22/04/2007 -
Ce qui me donne :
ValeursExtraites ( " & Faire & "; 1 ; 1000 )& " " ) & " " & ValeursExtraites ( " & Faire & "; 1000 ; 1000 )& " " ) & " " & ValeursExtraites ( " & Faire & "; 2000 ; 1000 )& " " ) & " " & ValeursExtraites ( " & Faire & "; 3000 ; 1000 ) avec un joli message d'erreur quand je rajoute évaluation dessus. je n'arrive pas à l'écrire correctement :([/quote]

Difficile à suivre vu qu'on sait pas ce que tu as mis dans CreaListeNum, mais à première vue, si j'ai bien tout suivi, il y a trop de parenthèses et d'espaces dans tes enchaînements de ValeursExtraites

ValeursExtraites ( " & Faire & "; 1 ; 1000 )& " " ) & " " & ValeursExtraites ( " & Faire & "; 1000 ; 1000 )& " " ) & " " & ValeursExtraites ( " & Faire & "; 2000 ; 1000 )& " " ) & " " & ValeursExtraites ( " & Faire & "; 3000 ; 1000 )

puisque ValeursExtraite ( ) renvoie par défaut un retour chariot, autant s'en servir et cet espace me semble superflu donc, toujours dans le noir, cela devrait plutôt être

ValeursExtraites ( " & Faire & "; 1 ; 1000 ) & ValeursExtraites ( " & Faire & "; 1000 ; 1000 ) & ValeursExtraites ( " & Faire & "; 2000 ; 1000 ) & " " & ValeursExtraites ( " & Faire & "; 3000 ; 1000 )


Encore une fois, impossible de l'évaluer ici vu qu'il me manque des données.

Ce message a été modifié par Ugo - 22 avril 2007 - 21:34.

Ugo Di Luca

DLSystems ( Paris )
Consultant/Développeur
* Applications Bureau
* Applications Web
* Applications Mobiles ( iOs, Android, Blackberry, Windows Phone )

----
CEGID
Ingénieur Développement SaaS

#12 Ugo

Ugo
  • Membres
  • PipPipPipPipPipPipPipPip
  • 4 140 messages
  • Genre :Homme
  • Lieu :Paris
  • FM Conférence : Poitiers 2006, Lyon 2007, Paris 2009
  • FM : Toutes versions
  • OS : Tous les OS


Posté 22 avril 2007 - 14:50

Bon,

Quelque soit les aménagements que tu comptes faire à ta fonction, elle est nettement plus performante que celle de Ray Cologon, à savoir GetValueSet ( ), ainsi que toutes les autres qui poursuivent le même objectif, que j'ai eu loisir de tester.

Pour mémoire et pour ceux qui se demandent où tu veux bien en venir avec cet exo qui n'en est pas un, elle sert entre autre à mémoriser une liste des identifiants de l'ensemble trouvé, pour éventuellement les visualiser dans une Table Externe.

Gardons en mémoire qu'il est déconseillé d'avoir un calcul de ce type toujours actif, même si le fichier de Ray Cologon pour les raisons de l'explications, le met en pratique ainsi.
La procédure recommandée est de venir stocker le résultat de la fonction dans une rubrique via un script au travers duquel est passé la fonction personnalisée.

Definir Rubrique [MaTable::ListeID_ensembleTrouvé ; GetValueSet ( MaTable::ID ; 1 ) ]

par exemple.

Dans mes tests de ce matin, effectué sur mon Powerbook non Intel rescapé de la Conf, j'ai donc réparti les identifiants de l'ensemble trouvé dans une multivaluée de 10 itérations, au travers d'une boucle.


1 ) Jusqu'à 2000 enregistrements, la différence est nulle, et je ne décompose pas dans des multivalués
2 ) Pour 5000 fiches, c'est 8 secondes contre 12 à celle de Ray Cologon
3 ) Pour 7500 fichies, c'est 13 secondes contre 23 à celle de Ray Cologon
4 ) Pour 9500 fiches, c'est 20 secondes contre 35 à GetValueSet ( )
5 ) Au-delà de 10000, ben yapa photo, la récursion de la fonction GetValueSet s'arrête, tandis que la tienne non récursive continue à opérer.

Bon, Copier Tous les Enregistrements s'avère toujours nettement plus rapide, c'est une constante qui aujourd'hui m'empêche encore de basculer à ces formules et fonctions persos. Mais tout de même, c'est pas mal.

Bref, il est temps que tu fasses ton fichier démo au lieu de nous envahir de tes calculs intermédiaires auxquels on ne comprend plus rien.

Ce message a été modifié par Ugo - 22 avril 2007 - 21:32.

Ugo Di Luca

DLSystems ( Paris )
Consultant/Développeur
* Applications Bureau
* Applications Web
* Applications Mobiles ( iOs, Android, Blackberry, Windows Phone )

----
CEGID
Ingénieur Développement SaaS

#13 Agnès

Agnès
  • Membres
  • PipPipPipPipPipPipPipPip
  • 4 421 messages
  • Genre :Femme
  • Lieu :Vaulandry | Paris
  • Intérêts :à développer
  • FM Conférence : Poitiers 2006, Lyon 2007, Nice 2008, Paris 2009, Paris 2010, La Rochelle 2011
  • FM : 4 7 8 8.5 9 10 11 12 Adv
  • OS : Mac


Posté 22 avril 2007 - 17:11

(voir lien ci dessous)

Image envoyée Développeuse à mes heures !

Des exemples de réalisations, des trucs et des techniques, à visiter dans mon Coin
....en construction oui... toujours ! au gré du code et des idées ;)


#14 Agnès

Agnès
  • Membres
  • PipPipPipPipPipPipPipPip
  • 4 421 messages
  • Genre :Femme
  • Lieu :Vaulandry | Paris
  • Intérêts :à développer
  • FM Conférence : Poitiers 2006, Lyon 2007, Nice 2008, Paris 2009, Paris 2010, La Rochelle 2011
  • FM : 4 7 8 8.5 9 10 11 12 Adv
  • OS : Mac


Posté 23 avril 2007 - 16:32

Hello,

Donc résultat de mon exo qui n'en était pas un ;)
(message modifié Résultat de mes tribulations ici)

Image envoyée Développeuse à mes heures !

Des exemples de réalisations, des trucs et des techniques, à visiter dans mon Coin
....en construction oui... toujours ! au gré du code et des idées ;)


#15 Agnès

Agnès
  • Membres
  • PipPipPipPipPipPipPipPip
  • 4 421 messages
  • Genre :Femme
  • Lieu :Vaulandry | Paris
  • Intérêts :à développer
  • FM Conférence : Poitiers 2006, Lyon 2007, Nice 2008, Paris 2009, Paris 2010, La Rochelle 2011
  • FM : 4 7 8 8.5 9 10 11 12 Adv
  • OS : Mac


Posté 23 avril 2007 - 17:58

(Voir lien ci dessus)

Image envoyée Développeuse à mes heures !

Des exemples de réalisations, des trucs et des techniques, à visiter dans mon Coin
....en construction oui... toujours ! au gré du code et des idées ;)