begin process at 2010 02 09 19:15:04
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Divers

 > WORLDDMT - GESTION DE CAISSE V 1.0

WORLDDMT - GESTION DE CAISSE V 1.0




 Description

Cliquez pour voir la capture en taille normale
Salut

Le titre explique déjà presque tout, c'est un programme de gestion de caisse.

un programme codé en IRC mais rien a y voir avec le chat.

Bien sur, il y aura une autre version encore meilleur mais bon voilà un début.

Comme vous voyez dans la capture il y a à l'ouverture du programme le solde actuel
de la caisse avec cinq boutons, recette, dépense, recherche (recherche de données),
supprimer une donnée, et quitter.

J'ai prévu les erreurs, comme valider sans remplir toutes les données, mettre une phrase
au lieu d'un montant, mettre des dates invalide (exp : 30/02/2008 ou 31/04/2008),
essayer d'effectuer une dépense avec un montant supérieur au solde, etc.

Après avoir saisi les données (recettes et dépenses), dans recherche vous mettez
un intervalle de dates pour filtrer les données, ensuite vous pourrez exporter
en Excel pour avoir la possibilité d'imprimer.

Source

  • ;______________Run______________________
  • on *:start:{
  • if ($exists(remote.ini)) {
  • .remove remote.ini
  • unset %exel
  • }
  • wg1
  • }
  • ;______________Alias______________________
  • alias donnee {
  • if ($did(2).state) {
  • var %i 0,%l $calc($numpe - 1)
  • while (%i != %l) {
  • inc %i
  • tokenize 149 $readini($scriptdirwge.data,recette,%i)
  • if ($1 != supprimé) did -a $dname 6 N° %i du $2 $4 $3 N°BR $1
  • }
  • }
  • else {
  • var %i 0,%l $calc($numps - 1)
  • while (%i != %l) {
  • inc %i
  • tokenize 149 $readini($scriptdirwge.data,depense,%i)
  • if ($1 != supprimé) did -a $dname 6 N° %i du $2 $4 $3 N°PC $1
  • }
  • }
  • }
  • alias suppsel {
  • if ($did(6).seltext) {
  • var %select $iif($did(2).state,recette,depense),%m
  • tokenize 32 $did(6).seltext
  • %m = $iif(%select == recette,$chr(45) $5,$chr(43) $5)
  • writeini $scriptdirwge.data %select $2 supprimé
  • writeini $scriptdirwge.data solde solde $calc($solde %m)
  • }
  • }
  • alias date did -ra $dname 16 * Veuillez mettre une date valide
  • alias wDLL return dll $qt($scriptdirdll's/mdx.dll)
  • alias numpe return $readini($scriptdirwge.data,nump,numpe)
  • alias numps return $readini($scriptdirwge.data,nump,numps)
  • alias solde return $readini($scriptdirwge.data,solde,solde)
  • alias wg1 dialog -md WGmain WGmain
  • alias wg2 dialog -md Depense Depense
  • alias wg3 dialog -md Recette Recette
  • alias wg4 dialog -md Recherche Recherche
  • alias wg5 dialog -md Suppression Suppression
  • ;__________________Main_________________
  • dialog WGmain {
  • title WorldDMT - Gestion de Caisse
  • size -1 -1 350 200
  • option pixels notheme
  • button Nouvelle recette, 1, 5 135 170 25, flat
  • button Nouvelle depense, 2, 5 164 170 25, flat
  • button Recherche, 3, 179 135 170 25, flat
  • button Supprimer une donnée, 4, 179 164 170 25, flat
  • button Quitter, 5, 5 192 344 25, flat
  • text $solde, 6, 85 112 74 17, disable
  • text SOLDE CAISSE, 7, 6 112 74 17, center disable
  • icon 8, 5 1 345 108, wgpic/wgcpic.jpg, 0 noborder
  • }
  • on *:dialog:wgmain:*:*:{
  • if ($devent == init) {
  • $wDLL SetMircVersion $version
  • $wDLL MarkDialog $dname
  • $wDLL SetDialog $dname icon 0 $scriptdirwgpic/wgico.ico
  • $wDLL SetDialog $dname bgcolor $rgb(255,255,255)
  • $wDLL SetDialog $dname style border
  • $wDLL SetColor $dname 6,7 background $rgb(255,255,255)
  • $wDLL SetColor $dname 6,7 textbg $rgb(255,255,255)
  • }
  • elseif ($devent == sclick) {
  • if ($did == 1) wg3
  • elseif ($did == 2) wg2
  • elseif ($did == 3) wg4
  • elseif ($did == 4) wg5
  • elseif ($did == 5) {
  • dialog -x wgmain
  • exit
  • }
  • }
  • }
  • ;______________recette____________________
  • dialog Recette {
  • title WorldDMT - Recette
  • size -1 -1 273 225
  • option pixels notheme
  • combo 1, 87 88 45 70, drop
  • combo 2, 137 88 45 70, drop
  • combo 3, 187 88 67 70, drop
  • edit $numpe, 4, 86 116 170 15, read
  • edit , 5, 86 136 170 15, autohs
  • edit , 6, 86 155 170 15, autohs
  • edit , 7, 86 175 170 15, autohs
  • text Date, 8, 18 92 60 17
  • text N° de piece, 9, 17 118 60 17
  • text N° du recu, 10, 17 139 60 17
  • text Provenance, 11, 17 157 60 17
  • text Montant, 12, 17 177 60 17
  • button Enregistrer et sortir, 13, 137 194 120 20, flat
  • button Annuler, 14, 16 194 120 20, flat
  • icon 15, 2 1 270 81, wgpic/wgrpic.jpg, 0 noborder
  • text , 16, 17 220 239 17
  • }
  • on *:dialog:recette:*:*:{
  • if ($devent == init) {
  • dialog -x wgmain
  • $wDLL SetMircVersion $version
  • $wDLL MarkDialog $dname
  • $wDLL SetBorderStyle $dname 4,5,6,7 border
  • $wDLL SetDialog $dname icon 0 $scriptdirwgpic/wgico.ico
  • $wDLL SetDialog $dname bgcolor $rgb(255,255,255)
  • $wDLL SetDialog $dname style border
  • $wDLL SetColor $dname 8,9,10,11,12,16 background $rgb(255,255,255)
  • $wDLL SetColor $dname 8,9,10,11,12,16 textbg $rgb(255,255,255)
  • $wDLL SetColor $dname 16 text $rgb(255,0,0)
  • loadbuf -o $dname 1 $scriptdirwgjj.data
  • loadbuf -o $dname 2 $scriptdirwgmm.data
  • loadbuf -o $dname 3 $scriptdirwgaa.data
  • tokenize 47 $date
  • did -c $dname 1 $1
  • did -c $dname 2 $2
  • did -c $dname 3 $calc($right($3,2) - 7)
  • }
  • elseif ($devent == sclick) {
  • if ($did == 13) {
  • if (($did(4) && $did(5) && $did(6) && $did(7)) != $null) {
  • if (($did(2) isin 04 06 09 11) && ($did(1) == 31)) { date | return }
  • elseif ($did(2) == 02) {
  • if (($did(3) isin 2008 2012 2016 2020 2024 2028) && ($did(1) isin 30 31)) { date | return }
  • elseif (($did(3) !isin 2008 2012 2016 2020 2024 2028) && ($did(1) isin 29 30 31)) { date | return }
  • }
  • elseif ($did(7) !isnum) {
  • did -ra $dname 16 * Veuillez mettre un montant valide
  • return
  • }
  • writeini $scriptdirwge.data nump numpe $calc($did(4) + 1)
  • writeini $scriptdirwge.data Recette $did(4) $did(5) $+ $chr(149) $+ $did(1) $+ $chr(47) $+ $did(2) $+ $chr(47) $+ $did(3) $+ $chr(149) $+ $did(6) $+ $chr(149) $+ $did(7)
  • writeini $scriptdirwge.data solde solde $calc($solde + $did(7))
  • wg1
  • dialog -x Recette
  • }
  • else {
  • did -ra $dname 16 * Veuillez remplir toutes les données
  • }
  • }
  • elseif ($did == 14) {
  • wg1
  • dialog -x Recette
  • }
  • }
  • elseif ($devent == edit) {
  • did -r $dname 16
  • }
  • }
  • ;_______________Depense_______________________
  • dialog Depense {
  • title WorldDMT - Depense
  • size -1 -1 273 225
  • option pixels notheme
  • combo 1, 87 88 45 70, drop
  • combo 2, 137 88 45 70, drop
  • combo 3, 187 88 67 70, drop
  • edit $numps, 4, 86 116 170 15, read
  • edit , 5, 86 136 170 15, autohs
  • edit , 6, 86 155 170 15, autohs
  • edit , 7, 86 175 170 15, autohs
  • text Date, 8, 18 92 60 17
  • text N° de piece, 9, 17 118 60 17
  • text N° de PC, 10, 17 139 60 17
  • text Destination, 11, 17 157 60 17
  • text Montant, 12, 17 177 60 17
  • button Enregistrer et sortir, 13, 137 194 120 20, flat
  • button Annuler, 14, 16 194 120 20, flat
  • icon 15, 2 1 270 81, wgpic/wgdpic.jpg, 0 noborder
  • text , 16, 17 220 239 17
  • }
  • on *:dialog:depense:*:*:{
  • if ($devent == init) {
  • dialog -x wgmain
  • $wDLL SetMircVersion $version
  • $wDLL MarkDialog $dname
  • $wDLL SetBorderStyle $dname 4,5,6,7 border
  • $wDLL SetDialog $dname icon 0 $scriptdirwgpic/wgico.ico
  • $wDLL SetDialog $dname bgcolor $rgb(255,255,255)
  • $wDLL SetDialog $dname style border
  • $wDLL SetColor $dname 8,9,10,11,12,16 background $rgb(255,255,255)
  • $wDLL SetColor $dname 8,9,10,11,12,16 textbg $rgb(255,255,255)
  • $wDLL SetColor $dname 16 text $rgb(255,0,0)
  • loadbuf -o $dname 1 $scriptdirwgjj.data
  • loadbuf -o $dname 2 $scriptdirwgmm.data
  • loadbuf -o $dname 3 $scriptdirwgaa.data
  • tokenize 47 $date
  • did -c $dname 1 $1
  • did -c $dname 2 $2
  • did -c $dname 3 $calc($right($3,2) - 7)
  • }
  • if ($devent == sclick) {
  • if ($did == 13) {
  • if (($did(4) && $did(5) && $did(6) && $did(7)) != $null) {
  • if (($did(2) isin 04 06 09 11) && ($did(1) == 31)) { date | return }
  • elseif ($did(2) == 02) {
  • if (($did(3) isin 2008 2012 2016 2020 2024 2028) && ($did(1) isin 30 31)) { date | return }
  • elseif (($did(3) !isin 2008 2012 2016 2020 2024 2028) && ($did(1) isin 29 30 31)) { date | return }
  • }
  • elseif ($did(7) !isnum) {
  • did -ra $dname 16 * Veuillez mettre un montant valide
  • return
  • }
  • elseif ($did(7) > $solde) {
  • did -ra $dname 16 * Vous n'avez pas cette somme dans votre caisse
  • return
  • }
  • writeini $scriptdirwge.data nump numps $calc($did(4) + 1)
  • writeini $scriptdirwge.data Depense $did(4) $did(5) $+ $chr(149) $+ $did(1) $+ $chr(47) $+ $did(2) $+ $chr(47) $+ $did(3) $+ $chr(149) $+ $did(6) $+ $chr(149) $+ $did(7)
  • writeini $scriptdirwge.data solde solde $calc($solde - $did(7))
  • wg1
  • dialog -x Depense
  • }
  • else {
  • did -ra $dname 16 * Veuillez remplir toutes les données
  • }
  • }
  • elseif ($did == 14) {
  • wg1
  • dialog -x Depense
  • }
  • }
  • elseif ($devent == edit) {
  • did -r $dname 16
  • }
  • }
  • ;__________________Recherche_____________
  • dialog Recherche {
  • title WorldDMT - Recherche de données
  • size -1 -1 610 456
  • option pixels notheme
  • text De, 1, 10 105 15 15
  • combo 2, 25 100 45 70, drop
  • combo 3, 72 100 45 70, drop
  • combo 4, 119 100 67 70, drop
  • text A, 5, 11 132 9 15
  • combo 6, 25 126 45 70, drop
  • combo 7, 72 126 45 70, drop
  • combo 8, 119 126 67 70, drop
  • button Rechercher, 9, 188 126 65 20, flat
  • button Exporter vers Excel, 10, 377 126 120 20, flat
  • button Supprimer une donnée, 11, 255 126 120 20, flat
  • button Quitter, 12, 499 126 65 20, flat
  • text , 16, 188 104 375 17
  • list 14, 5 151 600 320, size
  • icon 15, 1 1 605 95, wgpic/Wgspic.jpg, 0 noborder
  • }
  • on *:dialog:recherche:*:*:{
  • if ($devent == init) {
  • if ($dialog(wgmain)) dialog -x wgmain
  • $wDLL SetMircVersion $version
  • $wDLL MarkDialog $dname
  • $wDLL SetBorderStyle $dname 14 border
  • $wDLL SetDialog $dname icon 0 $scriptdirwgpic/wgico.ico
  • $wDLL SetDialog $dname bgcolor $rgb(255,255,255)
  • $wDLL SetDialog $dname style border
  • $wDLL SetColor $dname 1,5,16 background $rgb(255,255,255)
  • $wDLL SetColor $dname 1,5,16 textbg $rgb(255,255,255)
  • $wDLL SetColor $dname 16 text $rgb(255,0,0)
  • loadbuf -o $dname 2 $scriptdirwgjj.data
  • loadbuf -o $dname 3 $scriptdirwgmm.data
  • loadbuf -o $dname 4 $scriptdirwgaa.data
  • loadbuf -o $dname 6 $scriptdirwgjj.data
  • loadbuf -o $dname 7 $scriptdirwgmm.data
  • loadbuf -o $dname 8 $scriptdirwgaa.data
  • tokenize 47 $date
  • did -c $dname 2,6 $1
  • did -c $dname 3,7 $2
  • did -c $dname 4,8 $calc($right($3,2) - 7)
  • }
  • if ($devent == sclick) {
  • if ($did == 9) {
  • unset %exel
  • did -r $dname 16
  • if (($did(3) isin 04 06 09 11) && ($did(2) == 31)) { date | return }
  • elseif ($did(3) == 02) {
  • if (($did(4) isin 2008 2012 2016 2020 2024 2028) && ($did(2) isin 30 31)) { date | return }
  • elseif (($did(4) !isin 2008 2012 2016 2020 2024 2028) && ($did(2) isin 29 30 31)) { date | return }
  • }
  • elseif (($did(7) isin 04 06 09 11) && ($did(6) == 31)) { date | return }
  • elseif ($did(7) == 02) {
  • if (($did(8) isin 2008 2012 2016 2020 2024 2028) && ($did(6) isin 30 31)) { date | return }
  • elseif (($did(8) !isin 2008 2012 2016 2020 2024 2028) && ($did(6) isin 29 30 31)) { date | return }
  • }
  • elseif (($did(8) < $did(4))) {
  • did -ra $dname 16 * Attention la date de fin doit etre plus grande que la date du debut
  • return
  • }
  • elseif (($did(8) = $did(4)) && ($did(3) > $did(7))) {
  • did -ra $dname 16 * Attention la date de fin doit etre plus grande que la date du debut
  • return
  • }
  • elseif (($did(8) == $did(4)) && ($did(3) == $did(7)) && ($did(2) > $did(6))) {
  • did -ra $dname 16 * Attention la date de fin doit etre plus grande que la date du debut
  • return
  • }
  • did -r $dname 14
  • did -a $dname 14 - Recette(s):
  • did -a $dname 14
  • did -a $dname 14 $str($chr(160),4) $+ Date $+ $str($chr(160),12) Montant $str($chr(160),5) Provenance
  • var %i 0,%l $numpe,%d1,%d2,%d,%t
  • while (%i != %l) {
  • inc %i
  • %d = $gettok($readini($scriptdirwge.data,recette,%i),2,149)
  • %d1 = $did(2) $+ $chr(47) $+ $did(3) $+ $chr(47) $+ $did(4)
  • %d2 = $did(6) $+ $chr(47) $+ $did(7) $+ $chr(47) $+ $did(8)
  • tokenize 47 %d $+ / $+ %d1 $+ / $+ %d2
  • if (($3 == $6) && ($3 < $9)) {
  • if ($2 == $5) {
  • if ($1 >= $4) {
  • tokenize 149 $readini($scriptdirwge.data,recette,%i)
  • did -a $dname 14 $2 $str($chr(160),5) $4 $str($chr(160),8) $3 $str($chr(160),3) N°BR $1
  • %t = $calc(%t + $4)
  • }
  • }
  • elseif ($2 > $5) {
  • tokenize 149 $readini($scriptdirwge.data,recette,%i)
  • did -a $dname 14 $2 $str($chr(160),5) $4 $str($chr(160),8) $3 $str($chr(160),3) N°BR $1
  • %t = $calc(%t + $4)
  • }
  • }
  • elseif (($3 > $6) && ($3 == $9)) {
  • if ($2 == $8) {
  • if ($1 <= $7) {
  • tokenize 149 $readini($scriptdirwge.data,recette,%i)
  • did -a $dname 14 $2 $str($chr(160),5) $4 $str($chr(160),8) $3 $str($chr(160),3) N°BR $1
  • %t = $calc(%t + $4)
  • }
  • }
  • elseif ($2 < $8) {
  • tokenize 149 $readini($scriptdirwge.data,recette,%i)
  • did -a $dname 14 $2 $str($chr(160),5) $4 $str($chr(160),8) $3 $str($chr(160),3) N°BR $1
  • %t = $calc(%t + $4)
  • }
  • }
  • elseif (($3 == $6) && ($3 == $9)) {
  • if ($2 == $5) {
  • if ($1 >= $4) {
  • tokenize 149 $readini($scriptdirwge.data,recette,%i)
  • did -a $dname 14 $2 $str($chr(160),5) $4 $str($chr(160),8) $3 $str($chr(160),3) N°BR $1
  • %t = $calc(%t + $4)
  • }
  • }
  • elseif ($2 == $8) {
  • if ($1 <= $7) {
  • tokenize 149 $readini($scriptdirwge.data,recette,%i)
  • did -a $dname 14 $2 $str($chr(160),5) $4 $str($chr(160),8) $3 $str($chr(160),3) N°BR $1
  • %t = $calc(%t + $4)
  • }
  • }
  • elseif (($2 > $5) && ($2 < $8)) {
  • tokenize 149 $readini($scriptdirwge.data,recette,%i)
  • did -a $dname 14 $2 $str($chr(160),5) $4 $str($chr(160),8) $3 $str($chr(160),3) N°BR $1
  • %t = $calc(%t + $4)
  • }
  • }
  • elseif (($3 > $6) && ($3 < $9)) {
  • tokenize 149 $readini($scriptdirwge.data,recette,%i)
  • did -a $dname 14 $2 $str($chr(160),5) $4 $str($chr(160),8) $3 $str($chr(160),3) N°BR $1
  • %t = $calc(%t + $4)
  • }
  • }
  • if (%t) {
  • did -a $dname 14
  • did -a $dname 14 Total recette: %t
  • set -u5 %recette %t
  • set %exel 1
  • }
  • else {
  • did -a $dname 14
  • did -a $dname 14 - Aucune recette trouvée dans cet intervalle
  • }
  • did -a $dname 14
  • did -a $dname 14 - Depense(s):
  • did -a $dname 14
  • did -a $dname 14 $str($chr(160),4) $+ Date $+ $str($chr(160),12) Montant $str($chr(160),5) Destination
  • var %i 0,%l $numps,%d1,%d2,%d,%t
  • while (%i != %l) {
  • inc %i
  • %d = $gettok($readini($scriptdirwge.data,depense,%i),2,149)
  • %d1 = $did(2) $+ $chr(47) $+ $did(3) $+ $chr(47) $+ $did(4)
  • %d2 = $did(6) $+ $chr(47) $+ $did(7) $+ $chr(47) $+ $did(8)
  • tokenize 47 %d $+ / $+ %d1 $+ / $+ %d2
  • if (($3 == $6) && ($3 < $9)) {
  • if ($2 == $5) {
  • if ($1 >= $4) {
  • tokenize 149 $readini($scriptdirwge.data,depense,%i)
  • did -a $dname 14 $2 $str($chr(160),5) $4 $str($chr(160),8) $3 $str($chr(160),3) N°BR $1
  • %t = $calc(%t + $4)
  • }
  • }
  • elseif ($2 > $5) {
  • tokenize 149 $readini($scriptdirwge.data,depense,%i)
  • did -a $dname 14 $2 $str($chr(160),5) $4 $str($chr(160),8) $3 $str($chr(160),3) N°BR $1
  • %t = $calc(%t + $4)
  • }
  • }
  • elseif (($3 > $6) && ($3 == $9)) {
  • if ($2 == $8) {
  • if ($1 <= $7) {
  • tokenize 149 $readini($scriptdirwge.data,depense,%i)
  • did -a $dname 14 $2 $str($chr(160),5) $4 $str($chr(160),8) $3 $str($chr(160),3) N°BR $1
  • %t = $calc(%t + $4)
  • }
  • }
  • elseif ($2 < $8) {
  • tokenize 149 $readini($scriptdirwge.data,depense,%i)
  • did -a $dname 14 $2 $str($chr(160),5) $4 $str($chr(160),8) $3 $str($chr(160),3) N°BR $1
  • %t = $calc(%t + $4)
  • }
  • }
  • elseif (($3 == $6) && ($3 == $9)) {
  • if ($2 == $5) {
  • if ($1 >= $4) {
  • tokenize 149 $readini($scriptdirwge.data,depense,%i)
  • did -a $dname 14 $2 $str($chr(160),5) $4 $str($chr(160),8) $3 $str($chr(160),3) N°BR $1
  • %t = $calc(%t + $4)
  • }
  • }
  • elseif ($2 == $8) {
  • if ($1 <= $7) {
  • tokenize 149 $readini($scriptdirwge.data,depense,%i)
  • did -a $dname 14 $2 $str($chr(160),5) $4 $str($chr(160),8) $3 $str($chr(160),3) N°BR $1
  • %t = $calc(%t + $4)
  • }
  • }
  • elseif (($2 > $5) && ($2 < $8)) {
  • tokenize 149 $readini($scriptdirwge.data,depense,%i)
  • did -a $dname 14 $2 $str($chr(160),5) $4 $str($chr(160),8) $3 $str($chr(160),3) N°BR $1
  • %t = $calc(%t + $4)
  • }
  • }
  • elseif (($3 > $6) && ($3 < $9)) {
  • tokenize 149 $readini($scriptdirwge.data,depense,%i)
  • did -a $dname 14 $2 $str($chr(160),5) $4 $str($chr(160),8) $3 $str($chr(160),3) N°BR $1
  • %t = $calc(%t + $4)
  • }
  • }
  • if (%t) {
  • did -a $dname 14
  • did -a $dname 14 Total depense: %t
  • set -u5 %depense %t
  • set %exel 1
  • }
  • else {
  • did -a $dname 14
  • did -a $dname 14 - Aucune depense trouvée dans cet intervalle
  • }
  • did -i $dname 14 1
  • did -i $dname 14 1 Report somme: $calc($solde - %recette + %depense)
  • did -a $dname 14
  • did -a $dname 14
  • did -a $dname 14 Solde Caisse: $solde
  • }
  • elseif ($did == 10) {
  • if (!%exel) { did -ra $dname 16 * Pas de données a exporter | return }
  • elseif (($did(3) isin 04 06 09 11) && ($did(2) == 31)) { date | return }
  • elseif ($did(3) == 02) {
  • if (($did(4) isin 2008 2012 2016 2020 2024 2028) && ($did(2) isin 30 31)) { date | return }
  • elseif (($did(4) !isin 2008 2012 2016 2020 2024 2028) && ($did(2) isin 29 30 31)) { date | return }
  • }
  • elseif (($did(7) isin 04 06 09 11) && ($did(6) == 31)) { date | return }
  • elseif ($did(7) == 02) {
  • if (($did(8) isin 2008 2012 2016 2020 2024 2028) && ($did(6) isin 30 31)) { date | return }
  • elseif (($did(8) !isin 2008 2012 2016 2020 2024 2028) && ($did(6) isin 29 30 31)) { date | return }
  • }
  • elseif (($did(8) < $did(4))) {
  • did -ra $dname 16 * Attention la date de fin doit etre plus grande que la date du debut
  • return
  • }
  • elseif (($did(8) = $did(4)) && ($did(3) > $did(7))) {
  • did -ra $dname 16 * Attention la date de fin doit etre plus grande que la date du debut
  • return
  • }
  • elseif (($did(8) == $did(4)) && ($did(3) == $did(7)) && ($did(2) > $did(6))) {
  • did -ra $dname 16 * Attention la date de fin doit etre plus grande que la date du debut
  • return
  • }
  • write -c rapport_Caisse.xls
  • var %d1 = $did(2) $+ $chr(47) $+ $did(3) $+ $chr(47) $+ $did(4)
  • var %d2 = $did(6) $+ $chr(47) $+ $did(7) $+ $chr(47) $+ $did(8)
  • write rapport_Caisse.xls Rapport Caisse du %d1 au %d2
  • write rapport_Caisse.xls $chr(9)
  • write rapport_Caisse.xls $chr(9)
  • write rapport_Caisse.xls - Recette(s):
  • write rapport_Caisse.xls $chr(9)
  • write rapport_Caisse.xls Date $+ $chr(9) $+ Montant $+ $chr(9) $+ Provenance $+ $chr(9) $+ N°Bon de reception
  • var %i 0,%l $numpe,%d1,%d2,%d,%t
  • while (%i != %l) {
  • inc %i
  • %d = $gettok($readini($scriptdirwge.data,recette,%i),2,149)
  • %d1 = $did(2) $+ $chr(47) $+ $did(3) $+ $chr(47) $+ $did(4)
  • %d2 = $did(6) $+ $chr(47) $+ $did(7) $+ $chr(47) $+ $did(8)
  • tokenize 47 %d $+ / $+ %d1 $+ / $+ %d2
  • if (($3 == $6) && ($3 < $9)) {
  • if ($2 == $5) {
  • if ($1 >= $4) {
  • tokenize 149 $readini($scriptdirwge.data,recette,%i)
  • write rapport_Caisse.xls $2 $chr(9) $4 $chr(9) $3 $chr(9) $1
  • %t = $calc(%t + $4)
  • }
  • }
  • elseif ($2 > $5) {
  • tokenize 149 $readini($scriptdirwge.data,recette,%i)
  • write rapport_Caisse.xls $2 $chr(9) $4 $chr(9) $3 $chr(9) $1
  • %t = $calc(%t + $4)
  • }
  • }
  • elseif (($3 > $6) && ($3 == $9)) {
  • if ($2 == $8) {
  • if ($1 <= $7) {
  • tokenize 149 $readini($scriptdirwge.data,recette,%i)
  • write rapport_Caisse.xls $2 $chr(9) $4 $chr(9) $3 $chr(9) $1
  • %t = $calc(%t + $4)
  • }
  • }
  • elseif ($2 < $8) {
  • tokenize 149 $readini($scriptdirwge.data,recette,%i)
  • write rapport_Caisse.xls $2 $chr(9) $4 $chr(9) $3 $chr(9) $1
  • %t = $calc(%t + $4)
  • }
  • }
  • elseif (($3 == $6) && ($3 == $9)) {
  • if ($2 == $5) {
  • if ($1 >= $4) {
  • tokenize 149 $readini($scriptdirwge.data,recette,%i)
  • write rapport_Caisse.xls $2 $chr(9) $4 $chr(9) $3 $chr(9) $1
  • %t = $calc(%t + $4)
  • }
  • }
  • elseif ($2 == $8) {
  • if ($1 <= $7) {
  • tokenize 149 $readini($scriptdirwge.data,recette,%i)
  • did -a $dname 14 $2 $str($chr(160),5) $4 $str($chr(160),8) $3 $str($chr(160),3) N°BR $1
  • %t = $calc(%t + $4)
  • }
  • }
  • elseif (($2 > $5) && ($2 < $8)) {
  • tokenize 149 $readini($scriptdirwge.data,recette,%i)
  • write rapport_Caisse.xls $2 $chr(9) $4 $chr(9) $3 $chr(9) $1
  • %t = $calc(%t + $4)
  • }
  • }
  • elseif (($3 > $6) && ($3 < $9)) {
  • tokenize 149 $readini($scriptdirwge.data,recette,%i)
  • write rapport_Caisse.xls $2 $chr(9) $4 $chr(9) $3 $chr(9) $1
  • %t = $calc(%t + $4)
  • }
  • }
  • if (%t) {
  • write rapport_Caisse.xls $chr(9)
  • write rapport_Caisse.xls Total recette: $+ $chr(9) $+ %t
  • set -u5 %recette %t
  • }
  • else {
  • write rapport_Caisse.xls $chr(9)
  • write rapport_Caisse.xls Aucune recette trouvée dans cet intervalle
  • }
  • write rapport_Caisse.xls $chr(9)
  • write rapport_Caisse.xls - Depense(s):
  • write rapport_Caisse.xls $chr(9)
  • write rapport_Caisse.xls Date $+ $chr(9) $+ Montant $+ $chr(9) $+ Destination $+ $chr(9) $+ N°Piece de caisse
  • var %i 0,%l $numps,%d1,%d2,%d,%t
  • while (%i != %l) {
  • inc %i
  • %d = $gettok($readini($scriptdirwge.data,depense,%i),2,149)
  • %d1 = $did(2) $+ $chr(47) $+ $did(3) $+ $chr(47) $+ $did(4)
  • %d2 = $did(6) $+ $chr(47) $+ $did(7) $+ $chr(47) $+ $did(8)
  • tokenize 47 %d $+ / $+ %d1 $+ / $+ %d2
  • if (($3 == $6) && ($3 < $9)) {
  • if ($2 == $5) {
  • if ($1 >= $4) {
  • tokenize 149 $readini($scriptdirwge.data,depense,%i)
  • write rapport_Caisse.xls $2 $chr(9) $4 $chr(9) $3 $chr(9) $1
  • %t = $calc(%t + $4)
  • }
  • }
  • elseif ($2 > $5) {
  • tokenize 149 $readini($scriptdirwge.data,depense,%i)
  • write rapport_Caisse.xls $2 $chr(9) $4 $chr(9) $3 $chr(9) $1
  • %t = $calc(%t + $4)
  • }
  • }
  • elseif (($3 > $6) && ($3 == $9)) {
  • if ($2 == $8) {
  • if ($1 <= $7) {
  • tokenize 149 $readini($scriptdirwge.data,depense,%i)
  • write rapport_Caisse.xls $2 $chr(9) $4 $chr(9) $3 $chr(9) $1
  • %t = $calc(%t + $4)
  • }
  • }
  • elseif ($2 < $8) {
  • tokenize 149 $readini($scriptdirwge.data,depense,%i)
  • write rapport_Caisse.xls $2 $chr(9) $4 $chr(9) $3 $chr(9) $1
  • %t = $calc(%t + $4)
  • }
  • }
  • elseif (($3 == $6) && ($3 == $9)) {
  • if ($2 == $5) {
  • if ($1 >= $4) {
  • tokenize 149 $readini($scriptdirwge.data,depense,%i)
  • write rapport_Caisse.xls $2 $chr(9) $4 $chr(9) $3 $chr(9) $1
  • %t = $calc(%t + $4)
  • }
  • }
  • elseif ($2 == $8) {
  • if ($1 <= $7) {
  • tokenize 149 $readini($scriptdirwge.data,depense,%i)
  • write rapport_Caisse.xls $2 $chr(9) $4 $chr(9) $3 $chr(9) $1
  • %t = $calc(%t + $4)
  • }
  • }
  • elseif (($2 > $5) && ($2 < $8)) {
  • tokenize 149 $readini($scriptdirwge.data,depense,%i)
  • write rapport_Caisse.xls $2 $chr(9) $4 $chr(9) $3 $chr(9) $1
  • %t = $calc(%t + $4)
  • }
  • }
  • elseif (($3 > $6) && ($3 < $9)) {
  • tokenize 149 $readini($scriptdirwge.data,depense,%i)
  • write rapport_Caisse.xls $2 $chr(9) $4 $chr(9) $3 $chr(9) $1
  • %t = $calc(%t + $4)
  • }
  • }
  • if (%t) {
  • write rapport_Caisse.xls $chr(9)
  • write rapport_Caisse.xls Total depense: $+ $chr(9) $+ %t
  • set -u5 %depense %t
  • }
  • else {
  • write rapport_Caisse.xls $chr(9)
  • write rapport_Caisse.xls Aucune depense trouvée dans cet intervalle
  • }
  • write -l1 rapport_Caisse.xls Report somme: $+ $chr(9) $+ $calc($solde - %recette + %depense)
  • write -l2 rapport_Caisse.xls $chr(9)
  • write rapport_Caisse.xls $chr(9)
  • write rapport_Caisse.xls $chr(9)
  • write rapport_Caisse.xls Solde Caisse: $+ $chr(9) $+ $solde
  • run $qt($mircdirrapport_Caisse.xls)
  • }
  • elseif ($did == 11) { wg5 | unset %exel }
  • elseif ($did == 12) {
  • unset %exel
  • wg1
  • dialog -x recherche
  • }
  • elseif ($did isin 234678) {
  • unset %exel
  • did -r $dname 16,14
  • }
  • }
  • }
  • ;___________________suppression_________________________
  • dialog Suppression {
  • title WorldDMT - Suppression de données
  • size -1 -1 600 280
  • option pixels notheme
  • text Données a supprimer, 1, 6 109 105 17
  • radio Recette, 2, 112 109 60 15
  • radio Depense, 3, 176 109 60 15
  • button Supprimer selection, 4, 397 108 116 15, flat
  • button Quitter, 5, 515 108 80 15, flat
  • list 6, 5 127 590 168, size
  • icon 7, 1 1 600 105, wgpic/Wgxpic.jpg, 0 noborder
  • }
  • on *:dialog:Suppression:*:*:{
  • if ($devent == init) {
  • if ($dialog(Recherche)) {
  • dialog -x Recherche
  • set %recherche 1
  • }
  • elseif ($dialog(wgmain)) dialog -x wgmain
  • $wDLL SetMircVersion $version
  • $wDLL MarkDialog $dname
  • $wDLL SetDialog $dname icon 0 $scriptdirwgpic/wgico.ico
  • $wDLL SetDialog $dname bgcolor $rgb(255,255,255)
  • $wDLL SetDialog $dname style border
  • $wDLL SetBorderStyle $dname 6 border
  • $wDLL SetColor $dname 1,2,3 background $rgb(255,255,255)
  • $wDLL SetColor $dname 1,2,3 textbg $rgb(255,255,255)
  • did -c $dname 2
  • donnee
  • }
  • elseif ($devent == sclick) {
  • if ($did == 2) { did -r $dname 6 | donnee }
  • if ($did == 3) { did -r $dname 6 | donnee }
  • if ($did == 4) { suppsel | did -r $dname 6 | donnee }
  • if ($did == 5) {
  • if (%recherche) {
  • dialog -md Recherche Recherche
  • unset %recherche
  • dialog -x suppression
  • }
  • else {
  • wg1
  • dialog -x suppression
  • }
  • }
  • }
  • }
;______________Run______________________

on *:start:{
  if ($exists(remote.ini)) {
    .remove remote.ini 
    unset %exel 
  }
  wg1
}
;______________Alias______________________

alias donnee {
  if ($did(2).state) {
    var %i 0,%l $calc($numpe - 1)
    while (%i != %l) {
      inc %i
      tokenize 149 $readini($scriptdirwge.data,recette,%i)
      if ($1 != supprimé)   did -a $dname 6 N° %i du $2 $4 $3 N°BR $1
    }
  }
  else {
    var %i 0,%l $calc($numps - 1)
    while (%i != %l) {
      inc %i
      tokenize 149 $readini($scriptdirwge.data,depense,%i)
      if ($1 != supprimé)  did -a $dname 6 N° %i du $2 $4 $3 N°PC $1
    }
  }
}
alias suppsel {
  if ($did(6).seltext) {
    var %select $iif($did(2).state,recette,depense),%m
    tokenize 32 $did(6).seltext
    %m = $iif(%select == recette,$chr(45) $5,$chr(43) $5)
    writeini $scriptdirwge.data %select $2 supprimé
    writeini $scriptdirwge.data solde solde $calc($solde %m)
  }
}
alias date did -ra $dname 16 * Veuillez mettre une date valide
alias wDLL return dll $qt($scriptdirdll's/mdx.dll)
alias numpe return $readini($scriptdirwge.data,nump,numpe)
alias numps return $readini($scriptdirwge.data,nump,numps)
alias solde return $readini($scriptdirwge.data,solde,solde)
alias wg1 dialog -md WGmain WGmain
alias wg2 dialog -md Depense Depense
alias wg3 dialog -md Recette Recette
alias wg4 dialog -md Recherche Recherche
alias wg5 dialog -md Suppression Suppression

;__________________Main_________________


dialog WGmain {
  title WorldDMT - Gestion de Caisse
  size -1 -1 350 200
  option pixels notheme
  button Nouvelle recette, 1, 5 135 170 25, flat
  button Nouvelle depense, 2, 5 164 170 25, flat
  button Recherche, 3, 179 135 170 25, flat
  button Supprimer une donnée, 4, 179 164 170 25, flat
  button Quitter, 5, 5 192 344 25, flat
  text $solde, 6, 85 112 74 17, disable
  text SOLDE CAISSE, 7, 6 112 74 17, center disable
  icon 8, 5 1 345 108, wgpic/wgcpic.jpg, 0 noborder
}
on *:dialog:wgmain:*:*:{
  if ($devent == init) {
    $wDLL SetMircVersion $version
    $wDLL MarkDialog $dname
    $wDLL SetDialog $dname icon 0 $scriptdirwgpic/wgico.ico
    $wDLL SetDialog $dname bgcolor $rgb(255,255,255)
    $wDLL SetDialog $dname style border
    $wDLL SetColor $dname 6,7 background $rgb(255,255,255)
    $wDLL SetColor $dname 6,7 textbg $rgb(255,255,255)
  }
  elseif ($devent == sclick) {
    if ($did == 1) wg3
    elseif ($did == 2) wg2
    elseif ($did == 3) wg4
    elseif ($did == 4) wg5
    elseif ($did == 5) {
      dialog -x wgmain
      exit
    }
  }
}

;______________recette____________________

dialog Recette {
  title WorldDMT - Recette
  size -1 -1 273 225
  option pixels notheme
  combo 1, 87 88 45 70, drop
  combo 2, 137 88 45 70, drop
  combo 3, 187 88 67 70, drop
  edit $numpe, 4, 86 116 170 15, read
  edit , 5, 86 136 170 15, autohs
  edit , 6, 86 155 170 15, autohs
  edit , 7, 86 175 170 15, autohs
  text Date, 8, 18 92 60 17
  text N° de piece, 9, 17 118 60 17
  text N° du recu, 10, 17 139 60 17
  text Provenance, 11, 17 157 60 17
  text Montant, 12, 17 177 60 17
  button Enregistrer et sortir, 13, 137 194 120 20, flat
  button Annuler, 14, 16 194 120 20, flat
  icon 15, 2 1 270 81, wgpic/wgrpic.jpg, 0 noborder
  text , 16, 17 220 239 17
}
on *:dialog:recette:*:*:{
  if ($devent == init) {
    dialog -x wgmain
    $wDLL SetMircVersion $version
    $wDLL MarkDialog $dname
    $wDLL SetBorderStyle $dname 4,5,6,7 border
    $wDLL SetDialog $dname icon 0 $scriptdirwgpic/wgico.ico
    $wDLL SetDialog $dname bgcolor $rgb(255,255,255)
    $wDLL SetDialog $dname style border
    $wDLL SetColor $dname 8,9,10,11,12,16 background $rgb(255,255,255)
    $wDLL SetColor $dname 8,9,10,11,12,16  textbg $rgb(255,255,255)
    $wDLL SetColor $dname 16 text $rgb(255,0,0)
    loadbuf -o $dname 1 $scriptdirwgjj.data
    loadbuf -o $dname 2 $scriptdirwgmm.data
    loadbuf -o $dname 3 $scriptdirwgaa.data
    tokenize 47 $date
    did -c $dname 1 $1
    did -c $dname 2 $2
    did -c $dname 3 $calc($right($3,2) - 7)
  }
  elseif ($devent == sclick) {
    if ($did == 13) {
      if (($did(4) && $did(5) && $did(6) && $did(7)) != $null) {
        if (($did(2) isin 04 06 09 11) && ($did(1) == 31)) { date | return }
        elseif ($did(2) == 02) {
          if (($did(3) isin 2008 2012 2016 2020 2024 2028) && ($did(1) isin 30 31)) { date | return }
          elseif (($did(3) !isin 2008 2012 2016 2020 2024 2028) && ($did(1) isin 29 30 31)) { date | return }
        }
        elseif ($did(7) !isnum) {
          did -ra $dname 16 * Veuillez mettre un montant valide
          return
        }
        writeini $scriptdirwge.data nump numpe $calc($did(4) + 1)
        writeini $scriptdirwge.data Recette $did(4) $did(5) $+ $chr(149) $+ $did(1) $+ $chr(47) $+ $did(2) $+ $chr(47) $+ $did(3) $+ $chr(149) $+ $did(6) $+ $chr(149) $+ $did(7)
        writeini $scriptdirwge.data solde solde $calc($solde + $did(7))
        wg1
        dialog -x Recette
      }
      else {
        did -ra $dname 16 * Veuillez remplir toutes les données
      }
    }
    elseif ($did == 14) {
      wg1
      dialog -x Recette
    }
  }
  elseif ($devent == edit) {
    did -r $dname 16
  }
}

;_______________Depense_______________________

dialog Depense {
  title WorldDMT - Depense
  size -1 -1 273 225
  option pixels notheme
  combo 1, 87 88 45 70, drop
  combo 2, 137 88 45 70, drop
  combo 3, 187 88 67 70, drop
  edit $numps, 4, 86 116 170 15, read
  edit , 5, 86 136 170 15, autohs
  edit , 6, 86 155 170 15, autohs
  edit , 7, 86 175 170 15, autohs
  text Date, 8, 18 92 60 17
  text N° de piece, 9, 17 118 60 17
  text N° de PC, 10, 17 139 60 17
  text Destination, 11, 17 157 60 17
  text Montant, 12, 17 177 60 17
  button Enregistrer et sortir, 13, 137 194 120 20, flat
  button Annuler, 14, 16 194 120 20, flat
  icon 15, 2 1 270 81, wgpic/wgdpic.jpg, 0 noborder
  text , 16, 17 220 239 17
}
on *:dialog:depense:*:*:{
  if ($devent == init) {
    dialog -x wgmain
    $wDLL SetMircVersion $version
    $wDLL MarkDialog $dname
    $wDLL SetBorderStyle $dname 4,5,6,7 border
    $wDLL SetDialog $dname icon 0 $scriptdirwgpic/wgico.ico
    $wDLL SetDialog $dname bgcolor $rgb(255,255,255)
    $wDLL SetDialog $dname style border
    $wDLL SetColor $dname 8,9,10,11,12,16 background $rgb(255,255,255)
    $wDLL SetColor $dname 8,9,10,11,12,16  textbg $rgb(255,255,255)
    $wDLL SetColor $dname 16 text $rgb(255,0,0)
    loadbuf -o $dname 1 $scriptdirwgjj.data
    loadbuf -o $dname 2 $scriptdirwgmm.data
    loadbuf -o $dname 3 $scriptdirwgaa.data
    tokenize 47 $date
    did -c $dname 1 $1
    did -c $dname 2 $2
    did -c $dname 3 $calc($right($3,2) - 7)
  }
  if ($devent == sclick) {
    if ($did == 13) {
      if (($did(4) && $did(5) && $did(6) && $did(7)) != $null) {
        if (($did(2) isin 04 06 09 11) && ($did(1) == 31)) { date | return }
        elseif ($did(2) == 02) {
          if (($did(3) isin 2008 2012 2016 2020 2024 2028) && ($did(1) isin 30 31)) { date | return }
          elseif (($did(3) !isin 2008 2012 2016 2020 2024 2028) && ($did(1) isin 29 30 31)) { date | return }
        }
        elseif ($did(7) !isnum) {
          did -ra $dname 16 * Veuillez mettre un montant valide
          return
        }
        elseif ($did(7) > $solde) {
          did -ra $dname 16 * Vous n'avez pas cette somme dans votre caisse
          return
        }
        writeini $scriptdirwge.data nump numps $calc($did(4) + 1)
        writeini $scriptdirwge.data Depense $did(4) $did(5) $+ $chr(149) $+ $did(1) $+ $chr(47) $+ $did(2) $+ $chr(47) $+ $did(3) $+ $chr(149) $+ $did(6) $+ $chr(149) $+ $did(7)
        writeini $scriptdirwge.data solde solde $calc($solde - $did(7))
        wg1
        dialog -x Depense
      }
      else {
        did -ra $dname 16 * Veuillez remplir toutes les données
      }
    }
    elseif ($did == 14) {
      wg1
      dialog -x Depense
    }
  }
  elseif ($devent == edit) {
    did -r $dname 16
  }
}

;__________________Recherche_____________

dialog Recherche {
  title WorldDMT - Recherche de données
  size -1 -1 610 456
  option pixels notheme
  text De, 1, 10 105 15 15
  combo 2, 25 100 45 70, drop
  combo 3, 72 100 45 70, drop
  combo 4, 119 100 67 70, drop
  text A, 5, 11 132 9 15
  combo 6, 25 126 45 70, drop
  combo 7, 72 126 45 70, drop
  combo 8, 119 126 67 70, drop
  button Rechercher, 9, 188 126 65 20, flat
  button Exporter vers Excel, 10, 377 126 120 20, flat
  button Supprimer une donnée, 11, 255 126 120 20, flat
  button Quitter, 12, 499 126 65 20, flat
  text , 16, 188 104 375 17
  list 14, 5 151 600 320, size
  icon 15, 1 1 605 95, wgpic/Wgspic.jpg, 0 noborder
}
on *:dialog:recherche:*:*:{
  if ($devent == init) {
    if ($dialog(wgmain)) dialog -x wgmain
    $wDLL SetMircVersion $version
    $wDLL MarkDialog $dname
    $wDLL SetBorderStyle $dname 14 border
    $wDLL SetDialog $dname icon 0 $scriptdirwgpic/wgico.ico
    $wDLL SetDialog $dname bgcolor $rgb(255,255,255)
    $wDLL SetDialog $dname style border
    $wDLL SetColor $dname 1,5,16 background $rgb(255,255,255)
    $wDLL SetColor $dname 1,5,16 textbg $rgb(255,255,255)
    $wDLL SetColor $dname 16 text $rgb(255,0,0)
    loadbuf -o $dname 2 $scriptdirwgjj.data
    loadbuf -o $dname 3 $scriptdirwgmm.data
    loadbuf -o $dname 4 $scriptdirwgaa.data
    loadbuf -o $dname 6 $scriptdirwgjj.data
    loadbuf -o $dname 7 $scriptdirwgmm.data
    loadbuf -o $dname 8 $scriptdirwgaa.data
    tokenize 47 $date
    did -c $dname 2,6 $1
    did -c $dname 3,7 $2
    did -c $dname 4,8 $calc($right($3,2) - 7)
  }
  if ($devent == sclick) {
    if ($did == 9) {
      unset %exel
      did -r $dname 16
      if (($did(3) isin 04 06 09 11) && ($did(2) == 31)) { date | return }
      elseif ($did(3) == 02) {
        if (($did(4) isin 2008 2012 2016 2020 2024 2028) && ($did(2) isin 30 31)) { date | return }
        elseif (($did(4) !isin 2008 2012 2016 2020 2024 2028) && ($did(2) isin 29 30 31)) { date | return }
      }
      elseif (($did(7) isin 04 06 09 11) && ($did(6) == 31)) { date | return }
      elseif ($did(7) == 02) {
        if (($did(8) isin 2008 2012 2016 2020 2024 2028) && ($did(6) isin 30 31)) { date | return }
        elseif (($did(8) !isin 2008 2012 2016 2020 2024 2028) && ($did(6) isin 29 30 31)) { date | return }
      }
      elseif (($did(8) < $did(4))) {
        did -ra $dname 16 * Attention la date de fin doit etre plus grande que la date du debut
        return
      }
      elseif (($did(8) = $did(4)) && ($did(3) > $did(7))) {
        did -ra $dname 16 * Attention la date de fin doit etre plus grande que la date du debut
        return
      }
      elseif (($did(8) == $did(4)) && ($did(3) == $did(7)) && ($did(2) > $did(6))) {
        did -ra $dname 16 * Attention la date de fin doit etre plus grande que la date du debut
        return
      }
      did -r $dname 14
      did -a $dname 14 - Recette(s):
      did -a $dname 14
      did -a $dname 14 $str($chr(160),4) $+ Date $+ $str($chr(160),12) Montant $str($chr(160),5) Provenance
      var %i 0,%l $numpe,%d1,%d2,%d,%t
      while (%i != %l) {
        inc %i
        %d = $gettok($readini($scriptdirwge.data,recette,%i),2,149)
        %d1 = $did(2) $+ $chr(47) $+ $did(3) $+ $chr(47) $+ $did(4)
        %d2 = $did(6) $+ $chr(47) $+ $did(7) $+ $chr(47) $+ $did(8)
        tokenize 47 %d $+ / $+ %d1 $+ / $+ %d2
        if (($3 == $6) && ($3 < $9)) {
          if ($2 == $5) {
            if ($1 >= $4) {
              tokenize 149 $readini($scriptdirwge.data,recette,%i)
              did -a $dname 14 $2 $str($chr(160),5) $4 $str($chr(160),8) $3 $str($chr(160),3) N°BR $1
              %t = $calc(%t + $4)
            }
          }
          elseif ($2 > $5) {
            tokenize 149 $readini($scriptdirwge.data,recette,%i)
            did -a $dname 14 $2 $str($chr(160),5) $4 $str($chr(160),8) $3 $str($chr(160),3) N°BR $1
            %t = $calc(%t + $4)
          }
        }
        elseif (($3 > $6) && ($3 == $9)) {
          if ($2 == $8) {
            if ($1 <= $7) {
              tokenize 149 $readini($scriptdirwge.data,recette,%i)
              did -a $dname 14 $2 $str($chr(160),5) $4 $str($chr(160),8) $3 $str($chr(160),3) N°BR $1
              %t = $calc(%t + $4)
            }
          }
          elseif ($2 < $8) {
            tokenize 149 $readini($scriptdirwge.data,recette,%i)
            did -a $dname 14 $2 $str($chr(160),5) $4 $str($chr(160),8) $3 $str($chr(160),3) N°BR $1
            %t = $calc(%t + $4)
          }
        }
        elseif (($3 == $6) && ($3 == $9)) {
          if ($2 == $5) {
            if ($1 >= $4) {
              tokenize 149 $readini($scriptdirwge.data,recette,%i)
              did -a $dname 14 $2 $str($chr(160),5) $4 $str($chr(160),8) $3 $str($chr(160),3) N°BR $1
              %t = $calc(%t + $4)
            }
          }
          elseif ($2 == $8) {
            if ($1 <= $7) {
              tokenize 149 $readini($scriptdirwge.data,recette,%i)
              did -a $dname 14 $2 $str($chr(160),5) $4 $str($chr(160),8) $3 $str($chr(160),3) N°BR $1
              %t = $calc(%t + $4)
            }
          }
          elseif (($2 > $5) && ($2 < $8)) {
            tokenize 149 $readini($scriptdirwge.data,recette,%i)
            did -a $dname 14 $2 $str($chr(160),5) $4 $str($chr(160),8) $3 $str($chr(160),3) N°BR $1
            %t = $calc(%t + $4)
          }
        }
        elseif (($3 > $6) && ($3 < $9)) {
          tokenize 149 $readini($scriptdirwge.data,recette,%i)
          did -a $dname 14 $2 $str($chr(160),5) $4 $str($chr(160),8) $3 $str($chr(160),3) N°BR $1
          %t = $calc(%t + $4)
        }
      }
      if (%t) {
        did -a $dname 14
        did -a $dname 14 Total recette: %t
        set -u5 %recette %t
        set %exel 1
      }
      else {
        did -a $dname 14
        did -a $dname 14 - Aucune recette trouvée dans cet intervalle
      }
      did -a $dname 14
      did -a $dname 14 - Depense(s):
      did -a $dname 14
      did -a $dname 14 $str($chr(160),4) $+ Date $+ $str($chr(160),12) Montant $str($chr(160),5) Destination
      var %i 0,%l $numps,%d1,%d2,%d,%t
      while (%i != %l) {
        inc %i
        %d = $gettok($readini($scriptdirwge.data,depense,%i),2,149)
        %d1 = $did(2) $+ $chr(47) $+ $did(3) $+ $chr(47) $+ $did(4)
        %d2 = $did(6) $+ $chr(47) $+ $did(7) $+ $chr(47) $+ $did(8)
        tokenize 47 %d $+ / $+ %d1 $+ / $+ %d2
        if (($3 == $6) && ($3 < $9)) {
          if ($2 == $5) {
            if ($1 >= $4) {
              tokenize 149 $readini($scriptdirwge.data,depense,%i)
              did -a $dname 14 $2 $str($chr(160),5) $4 $str($chr(160),8) $3 $str($chr(160),3) N°BR $1
              %t = $calc(%t + $4)
            }
          }
          elseif ($2 > $5) {
            tokenize 149 $readini($scriptdirwge.data,depense,%i)
            did -a $dname 14 $2 $str($chr(160),5) $4 $str($chr(160),8) $3 $str($chr(160),3) N°BR $1
            %t = $calc(%t + $4)
          }
        }
        elseif (($3 > $6) && ($3 == $9)) {
          if ($2 == $8) {
            if ($1 <= $7) {
              tokenize 149 $readini($scriptdirwge.data,depense,%i)
              did -a $dname 14 $2 $str($chr(160),5) $4 $str($chr(160),8) $3 $str($chr(160),3) N°BR $1
              %t = $calc(%t + $4)
            }
          }
          elseif ($2 < $8) {
            tokenize 149 $readini($scriptdirwge.data,depense,%i)
            did -a $dname 14 $2 $str($chr(160),5) $4 $str($chr(160),8) $3 $str($chr(160),3) N°BR $1
            %t = $calc(%t + $4)
          }
        }
        elseif (($3 == $6) && ($3 == $9)) {
          if ($2 == $5) {
            if ($1 >= $4) {
              tokenize 149 $readini($scriptdirwge.data,depense,%i)
              did -a $dname 14 $2 $str($chr(160),5) $4 $str($chr(160),8) $3 $str($chr(160),3) N°BR $1
              %t = $calc(%t + $4)
            }
          }
          elseif ($2 == $8) {
            if ($1 <= $7) {
              tokenize 149 $readini($scriptdirwge.data,depense,%i)
              did -a $dname 14 $2 $str($chr(160),5) $4 $str($chr(160),8) $3 $str($chr(160),3) N°BR $1
              %t = $calc(%t + $4)
            }
          }
          elseif (($2 > $5) && ($2 < $8)) {
            tokenize 149 $readini($scriptdirwge.data,depense,%i)
            did -a $dname 14 $2 $str($chr(160),5) $4 $str($chr(160),8) $3 $str($chr(160),3) N°BR $1
            %t = $calc(%t + $4)
          }
        }
        elseif (($3 > $6) && ($3 < $9)) {
          tokenize 149 $readini($scriptdirwge.data,depense,%i)
          did -a $dname 14 $2 $str($chr(160),5) $4 $str($chr(160),8) $3 $str($chr(160),3) N°BR $1
          %t = $calc(%t + $4)
        }
      }
      if (%t) {
        did -a $dname 14
        did -a $dname 14 Total depense: %t
        set -u5 %depense %t
        set %exel 1
      }
      else {
        did -a $dname 14
        did -a $dname 14 - Aucune depense trouvée dans cet intervalle
      }
      did -i $dname 14 1
      did -i $dname 14 1 Report somme: $calc($solde - %recette + %depense)
      did -a $dname 14
      did -a $dname 14
      did -a $dname 14 Solde Caisse: $solde
    }
    elseif ($did == 10) {
      if (!%exel) { did -ra $dname 16 * Pas de données a exporter | return }
      elseif (($did(3) isin 04 06 09 11) && ($did(2) == 31)) { date | return }
      elseif ($did(3) == 02) {
        if (($did(4) isin 2008 2012 2016 2020 2024 2028) && ($did(2) isin 30 31)) { date | return }
        elseif (($did(4) !isin 2008 2012 2016 2020 2024 2028) && ($did(2) isin 29 30 31)) { date | return }
      }
      elseif (($did(7) isin 04 06 09 11) && ($did(6) == 31)) { date | return }
      elseif ($did(7) == 02) {
        if (($did(8) isin 2008 2012 2016 2020 2024 2028) && ($did(6) isin 30 31)) { date | return }
        elseif (($did(8) !isin 2008 2012 2016 2020 2024 2028) && ($did(6) isin 29 30 31)) { date | return }
      }
      elseif (($did(8) < $did(4))) {
        did -ra $dname 16 * Attention la date de fin doit etre plus grande que la date du debut
        return
      }
      elseif (($did(8) = $did(4)) && ($did(3) > $did(7))) {
        did -ra $dname 16 * Attention la date de fin doit etre plus grande que la date du debut
        return
      }
      elseif (($did(8) == $did(4)) && ($did(3) == $did(7)) && ($did(2) > $did(6))) {
        did -ra $dname 16 * Attention la date de fin doit etre plus grande que la date du debut
        return
      }
      write -c rapport_Caisse.xls
      var %d1 = $did(2) $+ $chr(47) $+ $did(3) $+ $chr(47) $+ $did(4)
      var %d2 = $did(6) $+ $chr(47) $+ $did(7) $+ $chr(47) $+ $did(8)
      write rapport_Caisse.xls Rapport Caisse du %d1 au %d2
      write rapport_Caisse.xls $chr(9)
      write rapport_Caisse.xls $chr(9)
      write rapport_Caisse.xls - Recette(s):
      write rapport_Caisse.xls $chr(9)
      write rapport_Caisse.xls Date $+ $chr(9) $+ Montant $+ $chr(9) $+ Provenance $+ $chr(9) $+ N°Bon de reception
      var %i 0,%l $numpe,%d1,%d2,%d,%t
      while (%i != %l) {
        inc %i
        %d = $gettok($readini($scriptdirwge.data,recette,%i),2,149)
        %d1 = $did(2) $+ $chr(47) $+ $did(3) $+ $chr(47) $+ $did(4)
        %d2 = $did(6) $+ $chr(47) $+ $did(7) $+ $chr(47) $+ $did(8)
        tokenize 47 %d $+ / $+ %d1 $+ / $+ %d2
        if (($3 == $6) && ($3 < $9)) {
          if ($2 == $5) {
            if ($1 >= $4) {
              tokenize 149 $readini($scriptdirwge.data,recette,%i)
              write rapport_Caisse.xls $2 $chr(9) $4 $chr(9) $3 $chr(9) $1
              %t = $calc(%t + $4)
            }
          }
          elseif ($2 > $5) {
            tokenize 149 $readini($scriptdirwge.data,recette,%i)
            write rapport_Caisse.xls $2 $chr(9) $4 $chr(9) $3 $chr(9) $1
            %t = $calc(%t + $4)
          }
        }
        elseif (($3 > $6) && ($3 == $9)) {
          if ($2 == $8) {
            if ($1 <= $7) {
              tokenize 149 $readini($scriptdirwge.data,recette,%i)
              write rapport_Caisse.xls $2 $chr(9) $4 $chr(9) $3 $chr(9) $1
              %t = $calc(%t + $4)
            }
          }
          elseif ($2 < $8) {
            tokenize 149 $readini($scriptdirwge.data,recette,%i)
            write rapport_Caisse.xls $2 $chr(9) $4 $chr(9) $3 $chr(9) $1
            %t = $calc(%t + $4)
          }
        }
        elseif (($3 == $6) && ($3 == $9)) {
          if ($2 == $5) {
            if ($1 >= $4) {
              tokenize 149 $readini($scriptdirwge.data,recette,%i)
              write rapport_Caisse.xls $2 $chr(9) $4 $chr(9) $3 $chr(9) $1
              %t = $calc(%t + $4)
            }
          }
          elseif ($2 == $8) {
            if ($1 <= $7) {
              tokenize 149 $readini($scriptdirwge.data,recette,%i)
              did -a $dname 14 $2 $str($chr(160),5) $4 $str($chr(160),8) $3 $str($chr(160),3) N°BR $1
              %t = $calc(%t + $4)
            }
          }
          elseif (($2 > $5) && ($2 < $8)) {
            tokenize 149 $readini($scriptdirwge.data,recette,%i)
            write rapport_Caisse.xls $2 $chr(9) $4 $chr(9) $3 $chr(9) $1
            %t = $calc(%t + $4)
          }
        }
        elseif (($3 > $6) && ($3 < $9)) {
          tokenize 149 $readini($scriptdirwge.data,recette,%i)
          write rapport_Caisse.xls $2 $chr(9) $4 $chr(9) $3 $chr(9) $1
          %t = $calc(%t + $4)
        }
      }
      if (%t) {
        write rapport_Caisse.xls $chr(9)
        write rapport_Caisse.xls Total recette: $+ $chr(9) $+ %t
        set -u5 %recette %t
      }
      else {
        write rapport_Caisse.xls $chr(9)
        write rapport_Caisse.xls Aucune recette trouvée dans cet intervalle
      }
      write rapport_Caisse.xls $chr(9)
      write rapport_Caisse.xls - Depense(s):
      write rapport_Caisse.xls $chr(9)
      write rapport_Caisse.xls Date $+ $chr(9) $+ Montant $+ $chr(9) $+ Destination $+ $chr(9) $+ N°Piece de caisse
      var %i 0,%l $numps,%d1,%d2,%d,%t
      while (%i != %l) {
        inc %i
        %d = $gettok($readini($scriptdirwge.data,depense,%i),2,149)
        %d1 = $did(2) $+ $chr(47) $+ $did(3) $+ $chr(47) $+ $did(4)
        %d2 = $did(6) $+ $chr(47) $+ $did(7) $+ $chr(47) $+ $did(8)
        tokenize 47 %d $+ / $+ %d1 $+ / $+ %d2
        if (($3 == $6) && ($3 < $9)) {
          if ($2 == $5) {
            if ($1 >= $4) {
              tokenize 149 $readini($scriptdirwge.data,depense,%i)
              write rapport_Caisse.xls $2 $chr(9) $4 $chr(9) $3 $chr(9) $1
              %t = $calc(%t + $4)
            }
          }
          elseif ($2 > $5) {
            tokenize 149 $readini($scriptdirwge.data,depense,%i)
            write rapport_Caisse.xls $2 $chr(9) $4 $chr(9) $3 $chr(9) $1
            %t = $calc(%t + $4)
          }
        }
        elseif (($3 > $6) && ($3 == $9)) {
          if ($2 == $8) {
            if ($1 <= $7) {
              tokenize 149 $readini($scriptdirwge.data,depense,%i)
              write rapport_Caisse.xls $2 $chr(9) $4 $chr(9) $3 $chr(9) $1
              %t = $calc(%t + $4)
            }
          }
          elseif ($2 < $8) {
            tokenize 149 $readini($scriptdirwge.data,depense,%i)
            write rapport_Caisse.xls $2 $chr(9) $4 $chr(9) $3 $chr(9) $1
            %t = $calc(%t + $4)
          }
        }
        elseif (($3 == $6) && ($3 == $9)) {
          if ($2 == $5) {
            if ($1 >= $4) {
              tokenize 149 $readini($scriptdirwge.data,depense,%i)
              write rapport_Caisse.xls $2 $chr(9) $4 $chr(9) $3 $chr(9) $1
              %t = $calc(%t + $4)
            }
          }
          elseif ($2 == $8) {
            if ($1 <= $7) {
              tokenize 149 $readini($scriptdirwge.data,depense,%i)
              write rapport_Caisse.xls $2 $chr(9) $4 $chr(9) $3 $chr(9) $1
              %t = $calc(%t + $4)
            }
          }
          elseif (($2 > $5) && ($2 < $8)) {
            tokenize 149 $readini($scriptdirwge.data,depense,%i)
            write rapport_Caisse.xls $2 $chr(9) $4 $chr(9) $3 $chr(9) $1
            %t = $calc(%t + $4)
          }
        }
        elseif (($3 > $6) && ($3 < $9)) {
          tokenize 149 $readini($scriptdirwge.data,depense,%i)
          write rapport_Caisse.xls $2 $chr(9) $4 $chr(9) $3 $chr(9) $1
          %t = $calc(%t + $4)
        }
      }
      if (%t) {
        write rapport_Caisse.xls $chr(9)
        write rapport_Caisse.xls  Total depense: $+ $chr(9) $+ %t
        set -u5 %depense %t
      }
      else {
        write rapport_Caisse.xls $chr(9)
        write rapport_Caisse.xls Aucune depense trouvée dans cet intervalle
      }
      write -l1 rapport_Caisse.xls  Report somme: $+ $chr(9) $+ $calc($solde - %recette + %depense)
      write -l2 rapport_Caisse.xls $chr(9)
      write rapport_Caisse.xls $chr(9)
      write rapport_Caisse.xls $chr(9)
      write rapport_Caisse.xls  Solde Caisse: $+ $chr(9) $+ $solde
      run $qt($mircdirrapport_Caisse.xls)
    }
    elseif ($did == 11) { wg5 | unset %exel }
    elseif ($did == 12) {
      unset %exel
      wg1
      dialog -x recherche
    }
    elseif ($did isin 234678) {
      unset %exel
      did -r $dname 16,14
    }
  }
}

;___________________suppression_________________________

dialog Suppression {
  title WorldDMT - Suppression de données
  size -1 -1 600 280
  option pixels notheme
  text Données a supprimer, 1, 6 109 105 17
  radio Recette, 2, 112 109 60 15
  radio Depense, 3, 176 109 60 15
  button Supprimer selection, 4, 397 108 116 15, flat
  button Quitter, 5, 515 108 80 15, flat
  list 6, 5 127 590 168, size
  icon 7, 1 1 600 105, wgpic/Wgxpic.jpg, 0 noborder
}
on *:dialog:Suppression:*:*:{
  if ($devent == init) {
    if ($dialog(Recherche)) {
      dialog -x Recherche
      set %recherche 1
    }
    elseif ($dialog(wgmain)) dialog -x wgmain
    $wDLL SetMircVersion $version
    $wDLL MarkDialog $dname
    $wDLL SetDialog $dname icon 0 $scriptdirwgpic/wgico.ico
    $wDLL SetDialog $dname bgcolor $rgb(255,255,255)
    $wDLL SetDialog $dname style border
    $wDLL SetBorderStyle $dname 6 border
    $wDLL SetColor $dname 1,2,3 background $rgb(255,255,255)
    $wDLL SetColor $dname 1,2,3 textbg $rgb(255,255,255)
    did -c $dname 2
    donnee
  }
  elseif ($devent == sclick) {
    if ($did == 2) { did -r $dname 6 | donnee }
    if ($did == 3) { did -r $dname 6 | donnee }
    if ($did == 4) { suppsel | did -r $dname 6 | donnee }
    if ($did == 5) {
      if (%recherche) {
        dialog -md Recherche Recherche
        unset %recherche
        dialog -x suppression
      }
      else {
        wg1
        dialog -x suppression
      }
    }
  }
}

 Conclusion

comment ça marche?

c'est simple, il vous suffit de télécharger le zip ensuite copier juste l'application mIRC (rien que l'icône mIRC) et coller dans le dossier "WGC" ensuite vous pourrez utiliser le raccourci présent dans le dossier

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !
  •   WGC
    •   WorldDMT
      •   DLL's
        • MDX.DLLTélécharger ce fichier [Réservé aux membres club]42 496 octets
      •   WGpic
      • WGAA.dataTélécharger ce fichier [Réservé aux membres club]118 octets
      • WGE.dataTélécharger ce fichier [Réservé aux membres club]66 octets
      • WGJJ.dataTélécharger ce fichier [Réservé aux membres club]124 octets
      • WGMM.dataTélécharger ce fichier [Réservé aux membres club]46 octets
      • WorldDMT_Gestion_CaisseTélécharger ce fichier [Réservé aux membres club]27 299 octets
    • mirc.iniTélécharger ce fichier [Réservé aux membres club]Voir ce fichier3 611 octets
    • WGC.lnkTélécharger ce fichier [Réservé aux membres club]1 407 octets

Télécharger le zip


 Sources du même auteur

Source avec une capture ALIAS POUR TELECHARGER UNE VIDEO SUR YOUTUBE (MISE A JOUR V1...
Source avec Zip Source avec une capture WORLDDMT - DETECTEUR DE PSEUDOS ET DE CLONES + AFFICHEUR DE ...
Source avec Zip Source avec une capture WORLDDMT - STATISTIQUE V 1.0
Source avec Zip Source avec une capture WORLDDMT - INFOS DES CANAUX V 1.1
Source avec Zip Source avec une capture WORLDDMT TEXT COLOR V 1.0

 Sources de la même categorie

COMMANDES FANTAISIES ( OP DEOP , VOICE DEVOICE ) ORIGINALES par Orona
Source avec Zip Source avec une capture CORRECTEUR par Orona
Source avec Zip Source avec une capture [DLL] DESSINER COMME LES PICWINS SUR UNE DIALOGBOX (BONUS: J... par uaip
Source avec Zip Source avec une capture [DLL] AJOUT D'UN CONTRÔLE RICHEDIT SCINTILLA SUR LES DIALOG... par uaip
ALIASES POUR FASCILITER L'USAGE DE MDX (FRAMEWORK) par hisoka2501

 Sources en rapport avec celle ci

Source avec une capture ALIAS POUR TELECHARGER UNE VIDEO SUR YOUTUBE (MISE A JOUR V1... par WorldDMT
Source avec Zip Source avec une capture WORLDDMT - DETECTEUR DE PSEUDOS ET DE CLONES + AFFICHEUR DE ... par WorldDMT
Source avec Zip Source avec une capture WORLDDMT - STATISTIQUE V 1.0 par WorldDMT
Source avec Zip Source avec une capture WORLDDMT - INFOS DES CANAUX V 1.1 par WorldDMT
Source avec Zip Source avec une capture WORLDDMT WPASS V 1.2 - UN GENERATEUR DE PASSE PAR MOT par WorldDMT

Commentaires et avis

Commentaire de PaDa le 02/10/2008 12:37:41

Non testé, le sujet ne m'intéresse pas particulièrement, mais c'est original, alors bravo au moins pour ça !!

Au niveau coding, tu respectes bien les bonnes pratiques élémentaires, mais (intuitivement) je pense que tu pourrais rendre ton code plus facile à maintenir et plus lisible avec des aliases bien organisés : je vois des lignes où tu fais sans arrêt la même chose (un tokenize, un write, et un calcul sur une variable) et c'est presque la même chose d'une section à l'autre. Avec des aliases bien foutus tu pourrais alléger le code grandement !

Autre suggestion, des commentaires et un système de "debug" : un alias debug if %debug { echo -s DEBUG: $1- } et des /debug "Le code passe par tel alias et est en train de faire ça" suffirait. Je ne pratique pas moi-même j'avoue, mais si ton code se développe et est utilisé dans la vraie vie par des vraies boites, il faut absolument que tu puisses corriger le code rapidement (voire quelqu'un d'autre).

Bonne continuation !

Commentaire de WorldDMT le 02/10/2008 13:25:46

salut PADA

merci pour ton commentaire

"je vois des lignes où tu fais sans arrêt la même chose (un tokenize, un write, et un calcul sur une variable)"

effectivement j'ai essayé de faire une alias et une variable aussi mais cela ne donnait pas ce qu'on attend :/

pour le system de debug t'a raison mais le principe du code est tres simple une fois qu'on telecharge et tu met en marche tu n'e verais rien que le programme le mIRC sera en tray

au cas que quelqun a voulu faire un desordre et il a foutus le code c'est simple toutes les données sont stoké dans "WGE.data" il a cas retelecharger et remplacé le WGE.data par le nouveau une fois qu'il demare il aura tou ses données :)

essaye de telecharger et teste le si tu peux tu verra un peut plus de ce que je parle

si khaled fait un nouveau programme qui sera basé de script mIRC et export application ça execute des programme en script IRC

Commentaire de PaDa le 02/10/2008 13:32:41

Il ne manquerait vraiment pas grand chose à mIRC pour pouvoir faire des programmes standalone qui rendraient des services dans les PME, même sans être super carrés, mais je crois que ce n'est pas l'optique de khaled (ca se comprend quelque part). Le coding en mirc est très très productif, dommage :-)

Commentaire de WorldDMT le 02/10/2008 13:40:00

a mon avis s'il le fait il y aura plein de programmeur qui travailleront sur IRC et si il auront besoin d'autre option il existe les DLL :D au moin qu'on puisse executer un code sans le client mIRC un aplication a part independente

dommage comme tu dis :/

Commentaire de WorldDMT le 02/10/2008 13:40:53

une aplication*

Commentaire de wims le 02/10/2008 16:00:04

Mdr, vous êtes en plein délire, mais vraiment, vous êtes trop haut là, redescendez, parce que vous n'executerez jamais un code mirc sans mirc.exe, et ce n'est pas une question de "manqué qqch a mirc"...

Bon j'suis comme Pada, j'ai juste regardé le code a la vitesse avec laquelle la roulette de ma souris peut atteindre, j'ai vu des trucs genre
var %var = $calc(qqch + qqch) ça peut se simplifié en
var %var = qqch + qqch si tu ne fait qu'une seul opération, j'ai vu que tu faisait des did -a mais sans texte, j'ai pas trop compris, et au début, tu remove remote.ini, sans spécifié de repertoire avant.
Après ya des methodes de coding dont j'suis aps fan, faire des boucle avec X != Y c'est pas génial, et tu utilise des isin parfois, j'ai l'impression que c'est pas super précis

Sinon c'est surement original, mais peu utile pour la plupart des personnes sur mirc...

Et pour finir, c'est bien une application*

Commentaire de PaDa le 02/10/2008 16:05:16

Je parle pas d'exécuter quelque chose sans mIRC.exe, je me suis peut-être mal exprimé : je parle de coder un truc en mIRC, foutre mIRC en taskbar et que l'user lambda puisse pas restaurer la fenêtre principale et accéder aux options tchat..

J'ai déjà maquetté des trucs en mIRC pour le boulot, tant que c'est toi qui t'en sert ça va, dans une démo la personne a l'impression que c'est un logiciel standalone/indépendant/etc. Mais si faut refiler quelque chose au neuneu de base, il va vouloir faire un clic droit en barre des taches, oh, un programme de tchat, oh, je peux modifier le code, oh, oh, oh, etc...

Commentaire de RCA ArKanis le 02/10/2008 16:12:42

il est clair que mIRC ne passe pas pour un langage sérieux si tu dois l'utiliser dans le cadre professionnel ... c'est bien dommage car il est très simple d'utilisation.
C'est d'ailleurs ça qui freine les codeurs, qui recherchent un langage reconnu et qui ne leur enlèvera pas toute crédibilité !

Commentaire de wims le 02/10/2008 18:31:24

Ah, ben je comprend pas, qu'est ce qui n'est pas faisable dans :

"je parle de coder un truc en mIRC, foutre mIRC en taskbar et que l'user lambda puisse pas restaurer la fenêtre principale et accéder aux options tchat.."

Ya enormément de solution possible pour faire ça, ou alors j'ai mal compris oO

Et c'est surtout Wolddmt qui m'a fait penser ça :
"au moin qu'on puisse executer un code sans le client mIRC un aplication a part independente"

Commentaire de wims le 02/10/2008 18:40:01

Effectivement j'avais mal compris (avoir relus ton post).A la limite, tu peux mettre mirc en tray, le locké et changé son icone (du tray) avec une icone a toi, ensuite doit y'avoir une dll qui detecte le double click et le click droit sur le tray de mirc, a ce moment tu envoi la touche echap (sendkey) qui vire soit le popup du tray (click droit) soit la fenetre pour entrer le mdp (double click), et voila, le mec pourra rien faire.
Bon c'est pas top non plus, mais si c'est bien fait ya moyen quoi :)

Commentaire de RCA ArKanis le 03/10/2008 07:32:34

suffirait donc qu'il change le .mrc ... super sécurisé dis moi :s

Commentaire de tofu le 03/10/2008 14:38:05

Si vous voulez pouvoir faire de petites applis standalone facilement avec un langage de scripting simple:

AutoIT.

On s'en sert au taff pour faire des interfaces graphiques simples. Ca se fait extrêmement vite et en toute simplicité.

L'avantage est de pouvoir compiler les scripts AutoIT en un .exe qui sera utilisable sur des machines n'ayant pas le moteur AutoIT d'installé ;-)

Sur le forum officiel d'AutoIT, certains mecs ont fait des applis vraiment balèses.

Commentaire de WorldDMT le 03/10/2008 18:28:58

Salut WIMS
effectivement le une fois que l'on execute le prog le mIRC est en tray et l'icone est changer :)
et je disais si on fesait un programme qui exporte le code IRC en application (.exe) comme ça on peu executé sans le mIRC je ne sais pas si tu vois ce que je voulais dire
pour la DLL qui verifie les clics c'est une bonne idée
et pour le debut supretion de remote.ini au cas qu'il fait clic droite et exit sur tray au cas qu'il y a des variable un fichier remote.ini apparet

Commentaire de WorldDMT le 03/10/2008 19:34:12

euhh dsl j'avais oublié
pour les "did -a " vide c'est pour avoir d'espace
pour les "isin" ce sont des combos donc les valeurs sont fixe
"faire des boucle avec X != Y c'est pas génial" je peu avoir une idée meilleur stp?

Commentaire de ISoKa le 05/10/2008 15:45:51

Coucou,
Perso, j'ai fait quelque chose un peu du même style dans l'idée mais en plus poussé. En faite je gère la gestion commerciale de 2 magasins (ventes, stock, clients,récap de fin de journée/mois, etc... ) et ça marche trés bien. Pour le prob lié à l'utilisation du client IRC j'ai mi une protec qui détec si on ouvre les remotes et alors qui referme auto la fenêtre, m'averti du fait que quelqu'un a essayé et en plus un bug heureux lié à la gestion de fenêtre fait qu'on peux plus l'ouvrir aprés, sans reboot Mirc (toutefois j'suis lucide, quelqu'un qui touche bien en mirc doit pouvoir contourner ca mais je bosse qu'avec des blondes :P). Le gros avantage qui m'a fai prendre mirc c'est que les 2 caisses sur 2 sites séparés peuvent facilement communiqué via l'IRC ce qui peu etre sympa pour faire un réseau entre les caisses mm si j'avoue que j'ai pas encore fini ce module (un peu la flemme) et beaucoup aussi que c'est le langage que je maitrise le mieu.

Commentaire de dj328i le 08/10/2008 02:56:53

he bien je vois que je ne suis pas le premier a avoir eux cette idée. Ton projet tiens combien de lignes ISoKa ???

J'ai commencé un projet très similaire , caisse , gestion ventaire , gestions employés ( carte de punch , paye ) , finance & statistique ect ..

C'est énorme. Je prévois au m oin 5000 lignes de codes. Comme tu citais je prévois aussi une gestion de communication entre plueieurs caisses qui utilise le même scrip. Sit a des idées , je suis preneur :)

Commentaire de ISoKa le 18/10/2008 19:18:20

Pour l'instant le mien tiens 1800 lignes mais je suis un acharné de l'économie de ligne. Si je voulai faire un truc bien propre et lisible je serai plus dans les 2100 lignes je pense

Commentaire de djul51 le 25/10/2008 19:29:46

Bonswar,
Puisque vous en venez à parler de mIRC dans le cadre professionnel, je suis actuellement en train de coder un système de gestion de pièces invalides à mon taff (je fais des tests électriques sur les Boostcap®). Sans chercher à "cacher" certaines fonctions 'tchat' du mIRC mon soucis est au niveau de la licence.  Une licence par poste ? Car les résultats obtenus sont consultables sur un autre mIRC (service qualité à qui je dois détailler les problèmes électriques rencontrés sur les pièces) via l'enregistrement des données dans un fichier sur un lecteur réseau connecté à tout les pc de l'entreprise. Ils me parlent aussi de devoir mettre un brevet sur la partie de code que j'ai produite (Tout doit être carré). Je suis rendu dans les 800 lignes de code et donc j'aimerais mettre ça au clair avant d'aller trop loin ..
Pour pousser un peu plus le projet, j'ai déjà créer un historique des données en /window pour que les autres services puissent consulter les résultats mais j'aimerais aussi faire des graphiques de ces derniers,et  la je sais pas dans quel sens partir... exporter des données du mIRC vers Excel ou bien en picwin (domaine ou je ne connais strictement rien^^) mais vu les jolies fratacles de Pada, je me dis qu'on doit bien pouvoir tracer quelques lignes.. Donc je suis preneur de quelques idées.
a+

djul

djul

Commentaire de wims le 25/10/2008 21:05:53

J'ai pas bien compris quel etait ton vrai probleme.
En tout cas, la license de mirc, tu en fait ce que tu veux, Khaled lui dis que c'est cense etre une cle par poste, mais ca ne tient pas debout si plusieur personne de ta famille voudrait l'utiliser par exemple.
Je sais egalement que tu peux emailer khaled pour ce genre de cas, je connais plus bien les detail (je chercherai si j'ai le temps et l'envie).Il est egalement evident que utilise la meme cle plusieur fois n'est qu'un probleme d'etique et un repsect au niveau de ce que declare les shareware :

Registration - mIRC is a shareware program. This system of distributing programs, as shareware, shows the true spirit of the Internet. You can download mIRC for free and give it a try. If during or after the evalution period you decide to continue to use mIRC, you're asked to pay a small registration fee. This will allow Khaled, mIRC's author, to go on developing and supporting mIRC. Once you registered one version of mIRC, you're allowed to use all future versions for free!

Personne t'empechera d'utiliser ta cle pour plusieur post :p
Apres s'il faut etre reglo par rapport a ton taff, envoi un email a khaled en lui expliquant la situation.

niveau picwin, c'est clair qu'on faire des graphiques facilement, c'est des ptites alias a se faire, mais si t'en a jamais fait, ca risque d'etre un peu chaud...Au pire tu demande de l'aide, tu sais tres bien ou :)

Apres moi je pense que mirc doit rester un langage fun, ou il faut s'amuser a repousses ses limites (faire des on text n'a jamais ete ma passion), et que ca devrait pas etre utilise a des fin professionel, rien que de ce dire que des bugs assez important peuvent survenir, ca peut rebuter meme si je doit dire que la nouvelle version (6.35 hein !) est vraiment tres tres stable, bonne chance

Commentaire de tofu le 26/10/2008 10:44:51

L'utilisation de mIRC en milieu professionnelle...

Désolé mais je me vois mal dire aux décideurs de ma boite "bon alors je vais coder dans un logiciel de tchat, mais c'est juste pour le langage hein faudra pas aller discuter sur le net !"

Après, chacun sa vision de la chose, mais travaillant dans une DSI, c'est le genre de bidouillages dont on ne peut pas se permettre et qui serait très mal vu.

Il existe des langages simples tels qu'AutoIT (que j'ai déjà cité ci-dessus), qui permet non seulement d'avoir un langage de programmation largement simplifié, mais également très souple et très complet.

Ses seuls défauts sont de ne pas gérer la POO et le multithreading. (enfin bon pour de petites applis standalone osef dans 99% des cas)

Le gros avantage est de pouvoir compiler son script en un fichier exécutable. Donc pas besoin d'installer AutoIT sur tous les postes ! Seul celui qui veut programmer aura à l'installer. Les utilisateurs auront uniquement le fichier script compilé.

Egalement, "Ils me parlent aussi de devoir mettre un brevet sur la partie de code que j'ai produite (Tout doit être carré). "

A ma connaissance, le brevet logiciel n'existe pas en Europe.

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

inserrer un chat dans un programme vb.net [ par djodjo2 ] djodjo2the newbiecomment puis je inserrer un logiciel de chat (trés simple) dans un de mes programme? dépassement de capacité [ par amazigh ] salutj'ai un probléme lorsque j'exécute mon programme Affichage d'un depassement de capacité. important la zone texte est un stringvoici mon programme faire une liste XDCC [ par fred06200 ] Bonjour tt le monde, j'écris ce message car je voudrais réaliser (ou trouver) un programme (ou un morceau de script) qui pourrais me servir pour mettr des programme? [ par cr4kill ] une question que je me pose,y a t'il des programme,pour aider a scripter un peu plus facilement..? Si oui ou son t'il dispo?cr4ckill Bot de programme TV [ par vpcorpprog ] Vous n'auriez pas un bot quand on tape !tv et il indique les chaines???et on met !tf1 pour le programme de tf1 et pour d'autres chainesvous remercieVi Generateur de dialog [ par TechnologiX ] Salut, Je cherche un programme qu'un copain m'avais filer il y a longtemps. C'est un programme qui g&#233;n&#232;re les dialog de mIRC, un style de fermeture d'un programme [ par tequila_62 ] Bonjour,voila&nbsp; je cherche&nbsp; une&nbsp; remote pour fermer&nbsp; un programme &#224; partir de mircceci pour me servir&nbsp; d'un bot g&#233;ra Programme irc? [ par beab ] Salut tout le mondeJe suis débutant, et en parcourant ce forum j'ai trouvé qu'il y a quelque réponses contenant des code source (programme).Je connais creation dun programme en C ou C++ permettant [ par mbayemc ] Salut tout le monde .je dois faire un programme en C ou C++ qui me permettra de:_ Se connecter a un serveur IRC quelconque. _ Lister les salons du ser


Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,749 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales