Forums développeurs windev
[Windev 7.5] Regrouper des données - Version imprimable

+- Forums développeurs windev (http://tunidev.net)
+-- Forum : Forums Développeurs WINDEV (http://tunidev.net/Forum-Forums-D%C3%A9veloppeurs-WINDEV)
+--- Forum : Forum Windev 7.5 & 5.5 (http://tunidev.net/Forum-Forum-Windev-7-5-5-5)
+--- Sujet : [Windev 7.5] Regrouper des données (/Thread-Windev-7-5-Regrouper-des-donn%C3%83%C2%A9es)



Regrouper des données - Pemco - 07-07-2011

Bonjour cher amis developpeur,j'ai un fichier LigneDetails .Ce fichier contient plusieurs enregistrement parfois de meme code.Je souhaite programmer une table memoire dans laquelle je veux regrouper les enregistrements de meme type.
Ensuite faire la somme des montants des enregistrements de même type.
Je ne souhaite pas utiliser une requête car elles sont lentes.
Pouvez vous m'aider ..


Re: Regrouper des données - Samifred - 07-07-2011

Bonjour,

En sachant le nom du fichier et les noms des rubriques à traiter ce serait plus simple... non !
Voir aussi si le "Type" (Type = contenu je pense ?) rubrique est clé doublon.

A suivre...


Re: Regrouper des données - Pemco - 07-07-2011

il s'agit de windev 7.5
voici les rubriques refprod,Libellé Produit,Quantité ,Prix Unitaire et Montant
Refprod Clés doublons


Re: Regrouper des données - Samifred - 07-07-2011

Attention ! si "Refprod" qui est je pense la référence du produit, est clé doublon ça va poser un problème. En général un produit est référencé une seule fois.
La clé doublon devrait-être l'indice du numéro de facture ou de devis qui alors filtre les lignes du détails (Fichier LignesDétails).
Par expl: Documents --> LignesDétails

A revoir...


Re: Regrouper des données - Pemco - 07-07-2011

Nom du fichier LigneDetails
voici les rubriques IDlignecde,Numcde, refprod,Libellé Produit,Quantité ,Prix Unitaire et Montant
Refprod et Numcde Clés doublons
IDlignecde Clé unique
Je pense avoir donner toutes les infos


Re: Regrouper des données - Samifred - 07-07-2011

Bonsoir,

Pour commencer il faut créer une table mémoire de 7 colonnes appropriées .. ,un bouton... ,un champ pour saisir le n° de Cmde
et un champ numérique approprié pour afficher le montant total.

Voici le code clic bouton... (pour le test)
Code :
//Initialisation de la table Lignes Détails
TableSupprimeTout(Table_LigneDetails)
i est un entier
nLig est un entier = 200  //Nombre de ligne initialisée
POUR i = 1 A nLig
   TableAjouteLigne(Table_LigneDetails,0,0,"","",0,0,0)
FIN

rTotalMontant est un réel  
//Lecture du fichier LignesDétails sur numéro de commande
//Saisie1 = Représente le numéro de commande du fichier Commande
HFiltre(LigneDetails, NumCde, Saisie1, Saisie1)
HLitPremier(LigneDetails, NumCde)
TANTQUE PAS HEnDehors(LigneDetails)
   i++
   TableModifieLigne(Table_LigneDetails,i ,LigneDetails.NumCde,...
                                               LigneDetails.Refprod,...
                                               LigneDetails.LibelléProduit,...
                                               LigneDetails.Quantité,...
                                               LigneDetails.PrixUnitaire,...
                                               LigneDetails.Montant)
      //Calcul du montant total
      rTotalMontant = rTotalMontant + LigneDetails.Montant
     HLitSuivant(LigneDetails, NumCde)
FIN
HDésactiveFiltre(LigneDetails)
TotalAffiche = rTotalMontant  //TotalAffiche champ numérique en affichage sous la table