Novembre 2024 | Lun | Mar | Mer | Jeu | Ven | Sam | Dim |
---|
| | | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | | Calendrier |
|
|
| KGF_dll - nouvelles versions | |
|
+12JL35 Oscaribout bignono Pedro pascal10000 silverman Jicehel papydall Minibug Marc Yannick Klaus 16 participants | |
Auteur | Message |
---|
papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: KGF_dll - nouvelles versions Jeu 9 Juil 2020 - 0:01 | |
| Si ça pourrait aider Klaus : On peut indiquer une valeur décimale comme 3.5 en utilisant la notation scientifique (35E-1) et ça marche. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Jeu 9 Juil 2020 - 0:07 | |
| Information intéressante, Papydall.
Mais cela n'explique toujours pas le problème avec point ou virgule... | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Jeu 9 Juil 2020 - 0:30 | |
| Nouvelle version: KGF.dll V9.11 du 09/02/2020Nouveautés: - aucune. C'est une version technique de changement de numéro de version.Modules modifiés: KGF.dllLa doc est inchangée. J'ai pris les grands moyens: nouvelle version, juste pour changer le numéro de version. Conseils: - vider le cash de l'explorateur AVANT de télécharger - après téléchargement, vérifier dates, heures et tailles selon cet extrait de dossier: - exécuter le code suivant pour vérifier la version: - Code:
-
dim res%, vers$ dll_on "KGF.dll" vers$ = string$(255," ") res% = dll_call1("KGFdllVersion",adr(vers$)) message str$(res%)+" = " + trim$(vers$) end
Le résultat devra être: | |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: KGF_dll - nouvelles versions Jeu 9 Juil 2020 - 1:06 | |
| J’ai vidé tous les caches de tous les explorateurs. J’ai téléchargé KGF.DLL Version : V09.11 09/07/2020 Modifié le 09/07/2020 00 :15 :20 Taille 1.61 Mo (1 692 160 octets) : est-ce la même taille ? Sur disque : 1.61 Mo (1 695 744 octets) J’ai la bonne version Mais toujours ni le point ni la virgule ne sont reconnus ! EDIT : Suggestion : Modifie cette fonction de la dll pour ignorer la virgule et faire en sorte qu’une valeur décimale utilise le point comme séparateur décimal qui est défini par défaut.
Dernière édition par papydall le Jeu 9 Juil 2020 - 1:13, édité 1 fois | |
| | | Marc
Nombre de messages : 2466 Age : 63 Localisation : TOURS (37) Date d'inscription : 17/03/2014
| | | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Jeu 9 Juil 2020 - 1:14 | |
| Avec cette version, j'obtiens pour ma part: Je ne comprends plus... EDITJe viens de regénérer KGF.dll d'une façon légèrement différente, sans rien changer au code proprement-dit. Chez moi, tout fonctionne de la même manière - point et virgule sont acceptés. | |
| | | Marc
Nombre de messages : 2466 Age : 63 Localisation : TOURS (37) Date d'inscription : 17/03/2014
| Sujet: Re: KGF_dll - nouvelles versions Jeu 9 Juil 2020 - 1:26 | |
| Une autre copie d'écran : | |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: KGF_dll - nouvelles versions Jeu 9 Juil 2020 - 1:37 | |
| Peut-être est-ce du à la version de windows 32 ou 64 bits ? Je suis sous W7 32 bits | |
| | | Marc
Nombre de messages : 2466 Age : 63 Localisation : TOURS (37) Date d'inscription : 17/03/2014
| Sujet: Re: KGF_dll - nouvelles versions Jeu 9 Juil 2020 - 1:38 | |
| - Klaus a écrit:
- Je viens de regénérer KGF.dll d'une façon légèrement différente, sans rien changer au code...
Le point et la virgule ne fonctionnent toujours pas. Idée : As-tu accès à un autre ordinateur pour essayer ? J'ai testé sous Windows 7 64 bits et Windows 10 64 bits : ça ne marche pas non plus. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Jeu 9 Juil 2020 - 9:10 | |
| Non, je n'en ai qu'un seul. Windows 10 64 bits, toutes mises à jour faites. | |
| | | Marc
Nombre de messages : 2466 Age : 63 Localisation : TOURS (37) Date d'inscription : 17/03/2014
| Sujet: Re: KGF_dll - nouvelles versions Jeu 9 Juil 2020 - 12:05 | |
| Bonjour Klaus et bonjour à tous ! Idée : Je sais que tu y as probablement pensé et que ça représente pas mal de travail : faire marche arrière… Le 6 juillet à 15h01, tu nous as fourni la version KGF 9.09 qui fonctionne parfaitement bien avec la virgule. Repartir de cette version si c'est possible pour y ajouter le point. Ensuite remettre la possibilité de construction du type #adr(variable). Et réactualiser KMenu pour les dernières améliorations. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Jeu 9 Juil 2020 - 12:30 | |
| J'ai fait une version "diagnostiques" placée dans le WebDav, dans le dossier \Panoramic\. Cette version affiche la formule et les valeurs des paramètres, juste avant l'appel de l'interpréteur de formules. Et en exécution, les résultats sont les suivants: Avec virgules: Acev points: Conclusion:la DLL fonctionne, il n'y a aucun doute. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Jeu 9 Juil 2020 - 12:42 | |
| Je viens de penser à un truc. Chez moi, le paramètre système "DecimalSeparator" est le point. Et chez toi ? Est-ce la virgule ? Je vais produire une version qui corrige cela automatiquement... | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Jeu 9 Juil 2020 - 12:51 | |
| Nouvelle version: KGF.dll V9.12 du 09/02/2020
Nouveautés: - EvaluateExpression: selon le paramètre système "DecimalSeparator", remplacer automatiquement "," par "." et vice-versa
Modules modifiés: KGF.dll
La doc est inchangée.
Maintenant, EvaluateExpression devrait fonctionner sur toutes les installations. | |
| | | Marc
Nombre de messages : 2466 Age : 63 Localisation : TOURS (37) Date d'inscription : 17/03/2014
| Sujet: Re: KGF_dll - nouvelles versions Jeu 9 Juil 2020 - 13:39 | |
| Bravo ! ça marche ! MERCI ! | |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: KGF_dll - nouvelles versions Jeu 9 Juil 2020 - 22:37 | |
| J’ai téléchargé la dernière version de la KGF.DLL - Mais, que veux-tu que je te dise, Klaus ? :
| |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Jeu 9 Juil 2020 - 23:05 | |
| YES!!!!!!!!!!!!! Merci pour votre patience et vos retours qui ont permis de cerner le problème. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Lun 13 Juil 2020 - 12:17 | |
| Nouvelle version: KGF.dll V9.13 du 13/02/2020Nouveautés: - Nouvel objet: SparseGridModules modifiés: KGF.dllLa doc est inchangée. Elle sera complétée prochainement. Voici une démo, assez parlante. Les explications sont dans le code. En gros, il s'agit d'une version simplissime d'une facture, avec 3 lignes de produits contenant chacune un prix (à saisir) une TVA de 20 % (calculée automatiquement) et un total ligne (calculé automatiquement). Il y a aussi un champ total général (calculé automatiquement). Les 3 champs prix (la première colonne) peuvent être saisis sous forme de montant (valeur numérique à 2 décimales maxi, avec éventuellement un "-" en première position). Les autres champs sont "bloqués", c'est-à-dire ils sont affichés normalement, mais on ne peut pas les saisir, modifier ou effacer. Essayez ce code - c'est assez spectaculaire: - Code:
-
' test_SparceGrid.bas
' ce programme est une démonstration des capacités de l'objet SparseGrid. ' Il représente une version rudimentaire d'une facture, avec 3 lignes de produits. ' Chaque ligne contient 3 champs: prix (à saisir), TVA 20 % et total ligne (calculés automatiquement) ' Dans la form séparée, il y a une cellule de total général qui est la somme des totaux des 3 lignes ' et qui est calculée automatiquement également. ' ' Le tableau est défini par 9 lignes et 5 colonnes, mais tout n'est pas utilise. ' Les lignes 1 à 3 sont les lignes "produit", la ligne 9 est la ligne du total général. Les autres lignes sont indéfinies. ' La colonne 1 est le prix (à saisir). Les colonnes 2 et 3 sont calculées automatiquement. ' La colonne 5 représente les totaux et est calculée automatiquement. Les autres colonnes sont indéfinies. ' ' Un clic sur le bouton "Créer" crée toute la structure. Dans un mémo à droite, on affiche le plan du SparseGrid, ' avec des X à la place des cellules non définies. ' ' On peut maintenant saisir des valeurs dans la première colonne, et on observe les autres cellules ' qui se mettent à jour automatiquement. Les cellules de la première colonne acceptent des valeurs flottantes ' composes de chiffres, du point ou de la virgule décimale (indifféremment !) et éventuellement du signe "-" en première ' position. La saisie dans les autres cellules est bloquée. ' ' Le bouton "Configurer" change la présentation de la preière cellule de la première ligne, à titre d'exemple. ' ' Le bouton "Supprimer" supprime l'ensemble de l'objet SparseGrid. Il peut être récréé, vide, prê à l'emploi. ' ' Le bouton "Calculer" calcule le total des lignes de la colonne 5, identique à ce qui apparaît dans le champ "Tolal".
label creer, supprimer, configurer, somme
dim SG%, res%, nom$, nom1$, ind1%, data$, fontname$, attrib$, somme, formule$, i%
' *** boutons des opérations height 0,screen_y : width 0,900 button 1 : top 1,0 : left 1,0 : caption 1,"Créer" : on_click 1,creer button 2 : top 2,height(1) : left 2,0 : caption 2,"Supprimer" : on_click 2,supprimer button 3 : top 3,0 : left 3,left(1)+width(1) : caption 3,"Configurer" : on_click 3,configurer button 4 : top 4,height(3) : left 4,left(3) : caption 4,"Somme" : on_click 4,somme
' *** containers pour les cellules container 20 : top 20,100 : left 20,10 : width 20,600 : height 20,80 : caption 20,"Ligne 1" container 21 : top 21,190 : left 21,10 : width 21,600 : height 21,80 : caption 21,"Ligne 2" container 22 : top 22,280 : left 22,10 : width 22,600 : height 22,80 : caption 22,"Ligne 3"
' *** form et container pour la cellule de totalisation form 31 : top 31,80 : left 31,width(0)+10 : width 31,400 : height 31,200 : caption 31,"Total colonne 3" container 29 : parent 29,31 : top 29,20 : left 29,20 : width 29,300 : height 29,80 : caption 29,"Total"
memo 99 : top 99,10 : left 99,620 : width 99,250 : height 99,300 : bar_both 99
dll_on "KGF.dll"
end
creer: SG% = dll_call0("CreateSparseGrid") ' message "CreateSparseGrid: "+str$(SG%)
fontname$ = "Arial" attrib$ = "BI" res% = dll_call6("SetSparseGridAttributes",SG%,adr(fontname$),16,adr(attrib$),hex("FFFFFF"),hex("FF")) ' message "SetSparseGridAttributes: "+str$(res%)
for i%=1 to 3 : ' 3 lignes ' *** ligne i% nom$ = "Edit"+str$(i%*10+1) ' res% = dll_call6("CreateSparseCell",SG%,adr(nom$),0,handle(0),i%,1) : ' text ' res% = dll_call6("CreateSparseCell",SG%,adr(nom$),1,handle(0),i%,1) : ' integer ' res% = dll_call6("CreateSparseCell",SG%,adr(nom$),2,handle(0),i%,1) : ' float res% = dll_call6("CreateSparseCell",SG%,adr(nom$),3,handle(19+i%),i%,1) : ' money ' message "CreateSparseCell: "+str$(res%)
res% = dll_call5("PositionSparseCell",SG%,i%,1,20,20) ' message "PositionSparseCell: "+str$(res%)
nom$ = "Edit"+str$(i%*10+2) res% = dll_call6("CreateSparseCell",SG%,adr(nom$),3,handle(19+i%),i%,2) : ' money res% = dll_call5("PositionSparseCell",SG%,i%,2,200,20)
nom$ = "Edit"+str$(i%*10+3) res% = dll_call6("CreateSparseCell",SG%,adr(nom$),3,handle(19+i%),i%,5) : ' money res% = dll_call5("PositionSparseCell",SG%,i%,5,380,20) ' nom$ = "Edit"+str$(i%)+"1" ' nom1$ = "Edit"+str$(i%)+"2" formule$ = "$cell[i%,1]*0.20" res% = dll_call6("AddSparceCellDependancyFormula",SG%,i%,1,i%,2,adr(formule$)) ' message "AddSparceCellDependancyFormula: "+str$(res%)
nom$ = "Edit"+str$(i%)+"2" nom1$ = "Edit"+str$(i%)+"3" formule$ = "$cell[i%,1]+$cell[edit"+str$(i%)+"2]" formule$ = "$sum[edit"+str$(i%)+"1,edit"+str$(i%)+"2]" : ' nom1,nom2 formule$ = "$sum[edit"+str$(i%)+"1,"+str$(i%)+",2]" : ' nom,lig2,col2 formule$ = "$sum["+str$(i%)+",1,edit"+str$(i%)+"2]" : ' lig1,col1,nom2 formule$ = "$sum["+str$(i%)+",1,"+str$(i%)+",2]" : ' lig1,col1,lig2,col2 res% = dll_call6("AddSparceCellDependancyFormula",SG%,i%,2,i%,5,adr(formule$)) ' message "AddSparceCellDependancyFormula: "+str$(res%) next i% ' *** ligne du total nom$ = "Total' res% = dll_call6("CreateSparseCell",SG%,adr(nom$),3,handle(29),9,5) : ' money ' message "CreateSparseCell: "+str$(res%)
res% = dll_call5("PositionSparseCell",SG%,9,5,20,20) ' message "PositionSparseCell: "+str$(res%)
' *** gérer le total général for i%=1 to 3 formule$ = "$sum[1,5,3,5]" res% = dll_call6("AddSparceCellDependancyFormula",SG%,i%,5,9,5,adr(formule$)) next i% ' *** bloquer les cellules calculées res% = dll_call6("BlockSparseCells",SG%,1,2,9,5,1) ' message "BlockSparseCells: "+str$(res%) res% = dll_call2("TestSparseGrid",SG%,handle(99))
return
supprimer: SG% = dll_call1("DeleteSparseGrid",SG%) ' message "DeleteSparseGrid: "+str$(SG%) clear 99 return
configurer: res% = dll_call5("ResizeSparseCell",SG%,1,1,150,50) ' message "ResizeSparseCell: "+str$(res%) data$ = "11.23" res% = dll_call4("SetSparseCellData",SG%,1,1,adr(data$)) ' message "SetSparseCellData: "+str$(res%)
fontname$ = "Courier" attrib$ = "BU" res% = dll_call6("SetSparseCellAttributes",SG%,adr(fontname$),24,adr(attrib$),1,1) ' message "SetSparseCellAttributes: "+str$(res%)
res% = dll_call5("SetSparseCellColors",SG%,hex("FF0000"),hex("0"),1,1) ' message "SetSparseCellColors: "+str$(res%)
return
somme: res% = dll_call6("CalculateSparseCellSum",SG%,1,1,2,2,adr(somme)) message "CalculateSparseCellSum: "+str$(res%)+" somme="+str$(somme) return
data$ = string$(255," ") res% = dll_call4("GetSparseCellData",SG%,1,1,adr(data$)) data$ = trim$(data$) message "GetSparseCellData: "+str$(res%)+" = "+data$
res% = dll_call2("GetAllSparceCellContents",SG%,handle(99)) message "GetAllSparceCellContents: "+str$(res%)
| |
| | | Marc
Nombre de messages : 2466 Age : 63 Localisation : TOURS (37) Date d'inscription : 17/03/2014
| Sujet: Re: KGF_dll - nouvelles versions Lun 13 Juil 2020 - 13:21 | |
| Bonjour Klaus ! Merci pour cette première démo ! Le projet est bien avancé. Bravo ! Je me permets un petit retour : - Citation :
- Les cellules de la première colonne acceptent des valeurs flottantes composes de chiffres, du point ou de la virgule décimale (indifféremment !) et éventuellement du signe "-" en première position.
Dès que je tape le signe moins, j’ai quatre messages d’erreur successifs : Error in formula, puis Error in formula puis oups… et pour finir "-" n’est pas une valeur en virgule flottante correcte.Le point m’indique un message d’erreur : Invalid key :.La virgule m’indique trois messages : Error in formula, puis Error in formula puis oups…
Le calcul TTC (colonne 3) des lignes 2 et 3 est erroné : Ces tests ont été effectués sous W10 64bits. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Lun 13 Juil 2020 - 13:31 | |
| Super ! Je vais dépister cela ! | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Lun 13 Juil 2020 - 14:04 | |
| Ca est - c'est corrigé. Il faut recharger KGF.dll, et prendre la version corrigée du programme de démo: - Code:
-
' test_SparceGrid.bas
' ce programme est une démonstration des capacités de l'objet SparseGrid. ' Il représente une version rudimentaire d'une facture, avec 3 lignes de produits. ' Chaque ligne contient 3 champs: prix (à saisir), TVA 20 % et total ligne (calculés automatiquement) ' Dans la form séparée, il y a une cellule de total général qui est la somme des totaux des 3 lignes ' et qui est calculée automatiquement également. ' ' Le tableau est défini par 9 lignes et 5 colonnes, mais tout n'est pas utilise. ' Les lignes 1 à 3 sont les lignes "produit", la ligne 9 est la ligne du total général. Les autres lignes sont indéfinies. ' La colonne 1 est le prix (à saisir). Les colonnes 2 et 3 sont calculées automatiquement. ' La colonne 5 représente les totaux et est calculée automatiquement. Les autres colonnes sont indéfinies. ' ' Un clic sur le bouton "Créer" crée toute la structure. Dans un mémo à droite, on affiche le plan du SparseGrid, ' avec des X à la place des cellules non définies. ' ' On peut maintenant saisir des valeurs dans la première colonne, et on observe les autres cellules ' qui se mettent à jour automatiquement. Les cellules de la première colonne acceptent des valeurs flottantes ' composes de chiffres, du point ou de la virgule décimale (indifféremment !) et éventuellement du signe "-" en première ' position. La saisie dans les autres cellules est bloquée. ' ' Le bouton "Configurer" change la présentation de la preière cellule de la première ligne, à titre d'exemple. ' ' Le bouton "Supprimer" supprime l'ensemble de l'objet SparseGrid. Il peut être récréé, vide, prê à l'emploi. ' ' Le bouton "Calculer" calcule le total des lignes de la colonne 5, identique à ce qui apparaît dans le champ "Tolal".
label creer, supprimer, configurer, somme
dim SG%, res%, nom$, nom1$, ind1%, data$, fontname$, attrib$, somme, formule$, i%
' *** boutons des opérations height 0,screen_y : width 0,900 button 1 : top 1,0 : left 1,0 : caption 1,"Créer" : on_click 1,creer button 2 : top 2,height(1) : left 2,0 : caption 2,"Supprimer" : on_click 2,supprimer button 3 : top 3,0 : left 3,left(1)+width(1) : caption 3,"Configurer" : on_click 3,configurer button 4 : top 4,height(3) : left 4,left(3) : caption 4,"Somme" : on_click 4,somme
' *** containers pour les cellules container 20 : top 20,100 : left 20,10 : width 20,600 : height 20,80 : caption 20,"Ligne 1" container 21 : top 21,190 : left 21,10 : width 21,600 : height 21,80 : caption 21,"Ligne 2" container 22 : top 22,280 : left 22,10 : width 22,600 : height 22,80 : caption 22,"Ligne 3"
' *** form et container pour la cellule de totalisation form 31 : top 31,80 : left 31,width(0)+10 : width 31,400 : height 31,200 : caption 31,"Total colonne 3" container 29 : parent 29,31 : top 29,20 : left 29,20 : width 29,300 : height 29,80 : caption 29,"Total"
memo 99 : top 99,10 : left 99,620 : width 99,250 : height 99,300 : bar_both 99
dll_on "KGF.dll"
end
creer: SG% = dll_call0("CreateSparseGrid") ' message "CreateSparseGrid: "+str$(SG%)
fontname$ = "Arial" attrib$ = "BI" res% = dll_call6("SetSparseGridAttributes",SG%,adr(fontname$),16,adr(attrib$),hex("FFFFFF"),hex("FF")) ' message "SetSparseGridAttributes: "+str$(res%)
for i%=1 to 3 : ' 3 lignes ' *** ligne i% nom$ = "Edit"+str$(i%*10+1) ' res% = dll_call6("CreateSparseCell",SG%,adr(nom$),0,handle(0),i%,1) : ' text ' res% = dll_call6("CreateSparseCell",SG%,adr(nom$),1,handle(0),i%,1) : ' integer ' res% = dll_call6("CreateSparseCell",SG%,adr(nom$),2,handle(0),i%,1) : ' float res% = dll_call6("CreateSparseCell",SG%,adr(nom$),3,handle(19+i%),i%,1) : ' money ' message "CreateSparseCell: "+str$(res%)
res% = dll_call5("PositionSparseCell",SG%,i%,1,20,20) ' message "PositionSparseCell: "+str$(res%)
nom$ = "Edit"+str$(i%*10+2) res% = dll_call6("CreateSparseCell",SG%,adr(nom$),3,handle(19+i%),i%,2) : ' money res% = dll_call5("PositionSparseCell",SG%,i%,2,200,20)
nom$ = "Edit"+str$(i%*10+3) res% = dll_call6("CreateSparseCell",SG%,adr(nom$),3,handle(19+i%),i%,5) : ' money res% = dll_call5("PositionSparseCell",SG%,i%,5,380,20) ' nom$ = "Edit"+str$(i%)+"1" ' nom1$ = "Edit"+str$(i%)+"2" formule$ = "$cell["+str$(i%)+",1]*0.20" res% = dll_call6("AddSparceCellDependancyFormula",SG%,i%,1,i%,2,adr(formule$)) ' message "AddSparceCellDependancyFormula: "+str$(res%)
nom$ = "Edit"+str$(i%)+"2" nom1$ = "Edit"+str$(i%)+"3" formule$ = "$cell[i%,1]+$cell[edit"+str$(i%)+"2]" formule$ = "$sum[edit"+str$(i%)+"1,edit"+str$(i%)+"2]" : ' nom1,nom2 formule$ = "$sum[edit"+str$(i%)+"1,"+str$(i%)+",2]" : ' nom,lig2,col2 formule$ = "$sum["+str$(i%)+",1,edit"+str$(i%)+"2]" : ' lig1,col1,nom2 formule$ = "$sum["+str$(i%)+",1,"+str$(i%)+",2]" : ' lig1,col1,lig2,col2 res% = dll_call6("AddSparceCellDependancyFormula",SG%,i%,2,i%,5,adr(formule$)) ' message "AddSparceCellDependancyFormula: "+str$(res%) next i% ' *** ligne du total nom$ = "Total' res% = dll_call6("CreateSparseCell",SG%,adr(nom$),3,handle(29),9,5) : ' money ' message "CreateSparseCell: "+str$(res%)
res% = dll_call5("PositionSparseCell",SG%,9,5,20,20) ' message "PositionSparseCell: "+str$(res%)
' *** gérer le total général for i%=1 to 3 formule$ = "$sum[1,5,3,5]" res% = dll_call6("AddSparceCellDependancyFormula",SG%,i%,5,9,5,adr(formule$)) next i% ' *** bloquer les cellules calculées res% = dll_call6("BlockSparseCells",SG%,1,2,9,5,1) ' message "BlockSparseCells: "+str$(res%) res% = dll_call2("TestSparseGrid",SG%,handle(99))
return
supprimer: SG% = dll_call1("DeleteSparseGrid",SG%) ' message "DeleteSparseGrid: "+str$(SG%) clear 99 return
configurer: res% = dll_call5("ResizeSparseCell",SG%,1,1,150,50) ' message "ResizeSparseCell: "+str$(res%) data$ = "11.23" res% = dll_call4("SetSparseCellData",SG%,1,1,adr(data$)) ' message "SetSparseCellData: "+str$(res%)
fontname$ = "Courier" attrib$ = "BU" res% = dll_call6("SetSparseCellAttributes",SG%,adr(fontname$),24,adr(attrib$),1,1) ' message "SetSparseCellAttributes: "+str$(res%)
res% = dll_call5("SetSparseCellColors",SG%,hex("FF0000"),hex("0"),1,1) ' message "SetSparseCellColors: "+str$(res%)
return
somme: res% = dll_call6("CalculateSparseCellSum",SG%,1,1,2,2,adr(somme)) message "CalculateSparseCellSum: "+str$(res%)+" somme="+str$(somme) return
data$ = string$(255," ") res% = dll_call4("GetSparseCellData",SG%,1,1,adr(data$)) data$ = trim$(data$) message "GetSparseCellData: "+str$(res%)+" = "+data$
res% = dll_call2("GetAllSparceCellContents",SG%,handle(99)) message "GetAllSparceCellContents: "+str$(res%)
| |
| | | Marc
Nombre de messages : 2466 Age : 63 Localisation : TOURS (37) Date d'inscription : 17/03/2014
| Sujet: Re: KGF_dll - nouvelles versions Lun 13 Juil 2020 - 14:15 | |
| Avec KGF de ce jour 14h00 et le nouveau code-source :
le "moins" = OK ! la virgule = pas bon le point = pas bon les calculs TTC colonne 3, lignes 2 et 3 = OK ! | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Lun 13 Juil 2020 - 14:49 | |
| C'est corrigé. Voici ce que ça donne: On peut encore imaginer beaucoup d'améliorations. Parmi celles qui sont prévues: - afficher systématiquement 2 décimales pour le type "monétaire" - gérer le cadrade de chaque champ gauche/centré/droite - chargement en une seule opération du contenu de toutes les cellules - sauvegarde du tableau dans un fichier - restauration du tableau à partir d'un fichier Il y a déjà une fonction retournant en une seule opération le contenu de toutes les cellules définies. | |
| | | Marc
Nombre de messages : 2466 Age : 63 Localisation : TOURS (37) Date d'inscription : 17/03/2014
| Sujet: Re: KGF_dll - nouvelles versions Lun 13 Juil 2020 - 15:06 | |
| Avec KGF de ce jour 14h46 et le nouveau code-source : Le point et la virgule sont acceptés Mais... dans la colonne TVA ça bloque : | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: KGF_dll - nouvelles versions Lun 13 Juil 2020 - 15:10 | |
| Bonjour à tous les 2 !
J'ai exactement le même message que Marc. Et j'allais poster un exemple identique.
A moins que ce soit ton code-exemple de 14h04 qui soit erroné ?!
Bon courage pour la suite Klaus !
Dernière édition par Minibug le Lun 13 Juil 2020 - 15:14, édité 1 fois | |
| | | Contenu sponsorisé
| Sujet: Re: KGF_dll - nouvelles versions | |
| |
| | | | KGF_dll - nouvelles versions | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |