Re: Comment enregistrer dans une liste que les éléments non
Publié : jeu. 23/juil./2020 19:18
Il te suffit de virer NOM et de, par exemple, utiliser UTILISATEUR1, UTILISATEUR2 etcles questionnaires sont anonymes

Forums PureBasic - Français
http://forums.purebasic.com/french/
Il te suffit de virer NOM et de, par exemple, utiliser UTILISATEUR1, UTILISATEUR2 etcles questionnaires sont anonymes
Code : Tout sélectionner
Prospect\Compteur = Compteur
Plutôt qu'un compteur, je ferais un identifiant unique composé par exemple de la Date + Heure + Nom du PCMicoute a écrit : je crois plutôt que je vais mettre Compteur.i et l'incrémenter
Code : Tout sélectionner
ID$ = FormatDate("%yyyy/%mm/%dd_%hh:%ii:%ss", Date()) + "_" + ComputerName()
Code : Tout sélectionner
Procedure Sauvegarde()
;Création d'un objet JSON
CreateJSON(#FichierJSON)
;Insertion de la liste chaînée structurée "Prospect()" dans l'objet JSON
InsertJSONMap(JSONValue(#FichierJSON), Prospect())
;Sauvegarder du fichier des prospects en JSON
SaveJSON(#FichierJSON, Fichier_prospects, #PB_JSON_PrettyPrint)
;Sauvegarder du fichier des prospects en CSV
Protected CSV_File$ = Rep$ + "Prospects.csv"
Protected ID_CSV_File
If OpenFile(ID_CSV_File, CSV_File$, #PB_File_Append)
ForEach Prospect()
With Prospect()
WriteString(ID_CSV_File, Str(\Genre) + ";")
WriteString(ID_CSV_File, Str(\TrancheAge) + ";")
WriteString(ID_CSV_File, Str(\DiabFam) + ";")
WriteString(ID_CSV_File, Str(\ActPhys) + ";")
WriteString(ID_CSV_File, Str(\FruitLeg) + ";")
WriteString(ID_CSV_File, Str(\TourTaille) + ";")
WriteString(ID_CSV_File, Str(\Tension) + ";")
WriteString(ID_CSV_File, Str(\SangSucre) + ";")
WriteString(ID_CSV_File, Str(\IMC) + ";")
WriteString(ID_CSV_File, Str(\Compteur) + ";")
EndWith
Next
CloseFile(ID_CSV_File)
Else
MessageRequester("Attention", "Problème pour écrire le fichier CSV")
EndIf
EndProcedure
Code : Tout sélectionner
Structure sProspect
Genre.b
TrancheAge.b
DiabFam.b
ActPhys.b
FruitLeg.b
TourTaille.c
Tension.b
SangSucre.b
IMC.i
Compteur.i
EndStructure
Global NewMap Prospect.sProspect()
CSV_File$ = Rep$ + "Prospects.csv"
If ReadFile(ID_CSV_File, CSV_File$)
While Not Eof(ID_CSV_File)
Read_Line$ = ReadString(ID_CSV_File)
i + 1
AddMapElement(Prospect(), Str(i))
With Prospect()
\Genre = Val(StringField(Read_Line$, 1, ";"))
\TrancheAge = Val(StringField(Read_Line$, 2, ";"))
\DiabFam = Val(StringField(Read_Line$, 3, ";"))
\ActPhys = Val(StringField(Read_Line$, 4, ";"))
\FruitLeg = Val(StringField(Read_Line$, 5, ";"))
\TourTaille = Val(StringField(Read_Line$, 6, ";"))
\Tension = Val(StringField(Read_Line$, 7, ";"))
\SangSucre = Val(StringField(Read_Line$, 8, ";"))
\IMC = Val(StringField(Read_Line$, 9, ";"))
\Compteur = Val(StringField(Read_Line$, 10, ";"))
EndWith
Wend
CloseFile(ID_CSV_File)
Else
MessageRequester("Erreur", "Ne peut lire le fichier de statistiques")
EndIf
ForEach Prospect()
j + 1
Debug "--- " + j
With Prospect()
Debug "Genre " + \Genre
Debug "TrancheAge " + \TrancheAge
Debug "DiabFam " + \DiabFam
Debug " etc..."
EndWith
Next
Code : Tout sélectionner
With Prospect()
WriteString(ID_CSV_File, Str(\Genre) + ";")
WriteString(ID_CSV_File, Str(\TrancheAge) + ";")
WriteString(ID_CSV_File, Str(\DiabFam) + ";")
WriteString(ID_CSV_File, Str(\ActPhys) + ";")
WriteString(ID_CSV_File, Str(\FruitLeg) + ";")
WriteString(ID_CSV_File, Str(\TourTaille) + ";")
WriteString(ID_CSV_File, Str(\Tension) + ";")
WriteString(ID_CSV_File, Str(\SangSucre) + ";")
WriteString(ID_CSV_File, Str(\IMC) + ";")
WriteString(ID_CSV_File, Str(\Compteur) + #CRLF$) ; <--- Ajouter un saut de ligne après chaque enregistrement
EndWith
Qu'entends tu par site ?une pour créer un site et l'autre pour ouvrir un site déjà enregistré
Code : Tout sélectionner
Procedure.s InitComputer ()
Date$ = FormatDate("%yyyy_%mm_%dd", Date()) + "_"
C$ = ComputerName()
Ville$ = InputRequester("Ville","Indiquer la ville","")
Lieu$ = InputRequester("Lieu","Indiquer le lieu","")
If Ville$ = "" Or Lieu$ = ""
MessageRequester("Erreur","Vous devez indiquer la vile ET le lieu",0)
End
Else
Dossier$ = Date$+Ville$+"_"+Lieu$+"_"+C$
Dossier$ = ReplaceString(Dossier$," ","_")
ProcedureReturn Dossier$
EndIf
EndProcedure
PATHPERSO$ = InitComputer()
PATH$ = GetCurrentDirectory()+PATHPERSO$+"\fichierpref.ini"
Debug Path$
J'espére que tu n'envisages pas un tri de map. Une map ne peut pas être triée.Micoute a écrit :Il ne reste plus qu'à régler la clé automatique de la Map
J'espére que tu n'envisages pas un tri de map. Une map ne peut pas être triée.Micoute a écrit :Il ne reste plus qu'à régler la clé automatique de la Map