online faq recherche accueil
 

Il y a 65 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici
 

 Mot :   Pseudo :  
  Aller à la page :
 
 Page :  1  2  3  4  5  ..  24  25  26  27  28  29
Auteur
 Sujet :

[topic unique] Aide au développement informatique (C++, java, algo...)

 
n°5390097
kypper_667
Im'avalounède, lol.
Posté le 19-07-2008 à 23:40:21  profilanswer
 

Reprise du message précédent :
Nan c'est bon... Je vais faire un topok sur les "sciences avancées de l'informatique" avec du lambda calcul, des langages fonctionnels et de l'algo, et je vous laisse tout ce qui n'est pas noble :'(


---------------
Posté le o3|11|2oo7 à 12|2o|46 par Shoggynou : Non mais Kypper depuis genre 6 mois il est passé d'un gars à très cool à Grubnatz :hmm: - Posté le 29-o8-2oo7 à 14|26|05 par Incubeee_ : Oui, mais pour moi tu seras toujours Arcueid :o - Posté le o4-12-2oo6 à 21|55|41 par Simulacre : Ne t'inquiète pas, je te défoncerai tôt ou tard. : ) - Posté le 13-o4-2oo6 à o1|o8|37 par Bellandy : Sinon tu habites chez tes parents ? - Posté le 31-12-2oo5 à 21|3o|37 par Loline : mais mais Kyppy, tu n'as pas une grande vie sexuelle :heink: - Posté le o5-o8-2oo4 à 17|47|18 par Zack : J'ai l'impression d'être le seul à pas vraiment connaître Kypper... o_O
n°5390101
Gaendal
Why so serious ?
Posté le 19-07-2008 à 23:49:52  profilanswer
 

Heu bah y'a une fonction sort()...
http://www.php.net/sort

Citation :

Example #1 sort() example
<?php

 

$fruits = array("lemon", "orange", "banana", "apple" );
sort($fruits);
foreach ($fruits as $key => $val) {
    echo "fruits[" . $key . "] = " . $val . "\n";
}

 

?>

 

The above example will output:

 

fruits[0] = apple
fruits[1] = banana
fruits[2] = lemon
fruits[3] = orange

 



x)


Message édité par Gaendal le 19-07-2008 à 23:52:45

---------------
So, he comes at me with the knife,
"Why so SERIOUS?!"
He sticks the blade in my mouth,
"Let's put a smile on that face!
n°5390199
DooMeeR
DooM shall never die.
Posté le 20-07-2008 à 11:46:02  profilanswer
 

kypper_667 a écrit :

Nan c'est bon... Je vais faire un topok sur les "sciences avancées de l'informatique" avec du lambda calcul, des langages fonctionnels et de l'algo, et je vous laisse tout ce qui n'est pas noble :'(


Han :love: Y'aura des types algrébriques généralisés ?? Oh oui oh oui


---------------
www.doomeer.com
n°5390215
Nuage
Profil : Modérateur
Posté le 20-07-2008 à 12:38:55  profilanswer
 

Euh, wé...
 
Alors, ce genre de choses, t'as deux écoles, pour faire ça en JavaScript.
Soit tu fait tout à la main, et c'est effectivement un peu galère si t'es pas un guru.
 
Soit tu utilises un framework tout kikoo, disons, au hasard, Mootools , qui te donne accès à des choses agréables comme le plugin Accordion ( http://demos.mootools.net/Accordion ).
Déjà, ça, ça te gère en deux minutes les menus qui doivent s'expand ou non.
 
Pour le tri, s't'un peu plus compliqué. Ca dépend, en fait, de comment tu veux trier ta liste, si tu veux la trier uniquement en JS, ou si ça doit être fait par le serveur.
Si c'est un bête tri alphabétique d'une liste avec relativement peu d'élément, le Array.sort() du JavaScript pourrait être suffisant: http://www.w3schools.com/jsref/jsref_sort.asp
 
Sinon, faut voir, ça dépend de ce que tu veux :)
 
Nuage.

n°5390257
guigolum
noone can stop us now
Posté le 20-07-2008 à 14:21:55  profilanswer
 

Olive a écrit :

Tu connais les champs de bits ? c'est quand même pratique pour clarifier ce genre d'écriture :  (...)

 

ouais mais là ce que je veux surtout, c'est qu'au final il me le mette dans un char [2] avec sign, exp et 3 premiers bits de mantisse dans cet ordre dans le char, qui ne doit faire que 8 bits,  et les 8 bits restants de mantisse dans le deuxieme. je peux faire un (signe<<7 | exp<<3 | mantisse>>8 )  pour l'un et un mantisse & 0xff pour l'autre?

  

pas d'idée sur l'ide/prog pour gerer facilement les classes? et sur l'appel de programme en c++ sous linux et l'envoi de signaux aux threads/procs?

Message cité 1 fois
Message édité par guigolum le 20-07-2008 à 14:22:50

---------------
il y a ceux qui s'etonnent, qui s'affolent et questionnent; les autres s'en tamponnent tellement la beuh est bonne;
laissez bruler la weed, et n'oubliez personne; dans la fumée des dieux s'effondre babylone..
le libéralisme, c'est la course à l'ovule : pour qu'une personne reussise, un millier doivent crever.
n°5390315
yatoub
Shut up Donny !
Posté le 20-07-2008 à 17:44:52  profilanswer
 

Merci pour les réponses déjà ^^
 

Nuage a écrit :

Soit tu utilises un framework tout kikoo, disons, au hasard, Mootools , qui te donne accès à des choses agréables comme le plugin Accordion ( http://demos.mootools.net/Accordion ).
Déjà, ça, ça te gère en deux minutes les menus qui doivent s'expand ou non.[/url]


Idéalement faut faire le menu à la main. Mais d'après ce que j'ai lu, un bête truc comme ça devrait marcher non ?
 
 

Nuage a écrit :

Pour le tri, s't'un peu plus compliqué. Ca dépend, en fait, de comment tu veux trier ta liste, si tu veux la trier uniquement en JS, ou si ça doit être fait par le serveur.
Si c'est un bête tri alphabétique d'une liste avec relativement peu d'élément, le Array.sort() du JavaScript pourrait être suffisant: http://www.w3schools.com/jsref/jsref_sort.asp


Pour tri, c'est effectivement un simple tri alphabétique, avec relativement peu d'éléments. Et on peut utiliser autre chose que le javascrit si besoin. Le php, ou n'importe quoi en fait, le plus simple quoi ^^
 
 
 
Edit de merde : Alors en fait non, je viens d'apprendre que y'a pas de tri alphabétique en fait. Il y'a juste 3 titres à expand donc, et il faut juste pouvoir "inverser" ces trois titres. Donc 1-2-3, ou 3-2-1. Du coup c'est ptet plus facile pour me faire ça ? ^^


Message édité par yatoub le 20-07-2008 à 18:17:58

---------------
Le Picon-Bière c'est redoutable, même les Belges ils s'y aventurent pas.
n°5390332
guigolum
noone can stop us now
Posté le 20-07-2008 à 18:45:52  profilanswer
 

bah tu fous deux menus, avec l'activation de l'un qui desactive l'autre?(tu les fous en -1000 px, et pour l'activer il sufit de le mettre à sa position normale.)

Message cité 1 fois
Message édité par guigolum le 20-07-2008 à 18:46:23

---------------
il y a ceux qui s'etonnent, qui s'affolent et questionnent; les autres s'en tamponnent tellement la beuh est bonne;
laissez bruler la weed, et n'oubliez personne; dans la fumée des dieux s'effondre babylone..
le libéralisme, c'est la course à l'ovule : pour qu'une personne reussise, un millier doivent crever.
n°5390338
yatoub
Shut up Donny !
Posté le 20-07-2008 à 18:50:00  profilanswer
 

guigolum a écrit :

bah tu fous deux menus, avec l'activation de l'un qui desactive l'autre?(tu les fous en -1000 px, et pour l'activer il sufit de le mettre à sa position normale.)


C'est une solution, maisça reste un peu de la bidouille ^^
 
Bon sinon après avoir navigué dans du chinois pendant des heures, la partie collapse fonctionne, avec ce code là :

Code :
  1. <html>
  2. <head>
  3.   <script type="text/javascript">
  4.   <!--
  5.   function switchMenu(obj) {
  6.    var el = document.getElementById(obj);
  7.    if ( el.style.display != "none" ) {
  8.       el.style.display = 'none';
  9.    }
  10.    else {
  11.       el.style.display = '';
  12.    }
  13. }
  14. //-->
  15.    </script>
  16. </head>
  17. <body>
  18. <a name="#var_x"></a>
  19. <p>» <a href="#var_x" onclick="switchMenu('var');">Test news 1</a>
  20. <div id="var" style="display:none">
  21. Kikoofu le lien
  22. </div></p>
  23. <a name="#var_y"></a>
  24. <p>» <a href="#var_y" onclick="switchMenu('vary');">Test news 2</a>
  25. <div id="vary" style="display:none">
  26. Kikoofu le 2eme lien
  27. </div></p>
  28. </body>
  29. </html>


 
 
Reste plus que le tri sur les menus quoi ^^
 
 
 
Edit : Voilà un code 'achement plus simple, sans les cookies toussa.


Message édité par yatoub le 20-07-2008 à 20:07:33

---------------
Le Picon-Bière c'est redoutable, même les Belges ils s'y aventurent pas.
n°5390347
Olive
Dans le noir
Posté le 20-07-2008 à 19:22:49  profilanswer
 

guigolum a écrit :


 
ouais mais là ce que je veux surtout, c'est qu'au final il me le mette dans un char [2] avec sign, exp et 3 premiers bits de mantisse dans cet ordre dans le char, qui ne doit faire que 8 bits,  et les 8 bits restants de mantisse dans le deuxieme. je peux faire un (signe<<7 | exp<<3 | mantisse>>8 )  pour l'un et un mantisse & 0xff pour l'autre?  
 
 
 
pas d'idée sur l'ide/prog pour gerer facilement les classes? et sur l'appel de programme en c++ sous linux et l'envoi de signaux aux threads/procs?


Si tu veux être sûr de l'ordre d'écriture, alors oui, il est préférable de faire ce genre de tambouille, sinon l'endianess va te jouer des tours, un truc qui m'a toujours embrouillé d'ailleurs.
 
Quant à ton problème de fichier, ce n'est qu'un problème d'organisation. Contente toi d'une classe par .h/cpp (déclarations dans le .h, définitions dans le cpp), avec éventuellement quelques structures de communication associées, et fait des groupes de fichiers par fonctionnalité, que tu peux mettre dans des dossiers distincts. Tu peux aussi préfixer tes fonctions/classes par le nom du module auquel elles appartiennent. Par ex. une classe vector3 peut être préfixée MATH, MATH_Vector3 donc, ce qui permet d'emblée de savoir qu'il faut la chercher dans le module de math (qui contiendra aussi MATH_Matrix44, MATH_Spline, etc.).  
C'est un moyen éprouvé pour se retrouver dans le code quand on n'a pas d'aide comme cette HORREUR d'Intellisense de Visual Studio, Visual Assist ou apparentés.
Pour ton diagramme, une feuille de papier et un crayon :ack:. Mais tu peux aussi utiliser des générateurs de doc, comme doxygen qui peuvent te sortir ces infos.
Pour ce que j'ai comme doc sur fork, la fonction retourne le pid du fils dans le code du père. Au pire, ne peux tu pas faire un kill -9 via un exec pour tuer le fils (et exec provoquant un recouvrement, il faudra mieux le forker lui même ^^) ?


---------------
TL D2 SCL
La galère, tous les habitants ont été passés au fil de l'épée et nous avons pu faire un immense tapis avec les milliers de lapins qui grouillaient dans les environs. Vos serviteurs vont festoyer de leurs restes pitoyables pendant des semaines. Ce fut une victoire vraiment... majestueuse. © Dungeon Keeper
n°5390362
guigolum
noone can stop us now
Posté le 20-07-2008 à 20:08:32  profilanswer
 

heu, c'est pas un probleme de endian, car ça ne se situe que au niveau de l'echange 'hors plateforme'(reseau) echange que je n'ai pas à gerer(l'envoi sur le reseau est fait par un prog que justement je dois lancer)
 
pour le fork() c'est ce que je fais actuellement, et je lance un kill -9 pid_fils dans le destructeur de ma classe
 
mon problmee de fichier, c'est que je dois travailler sur un prog qui fait au BAS mot 50 classes differentes, utilisants chacune un .h et un .cpp, y'en a meme certaines qui ont le meme nom mais ne servent pas dans le meme cas de figure(genre message, messagepool, ...)
j'ai des niveaux d'heritage sur 5 classes(par exemple la fonction virtual bool Write() qui est redefinie à chaque fois dans le cadre de la serialisation, ou presque, alors j'aimerais savoir rapidement quelle fonction est appelée :'( )
 
sans compter la dizaine de fichier de definitions de types, en plus des definitions de constantes, et je peux pas y faire grand chose. le but c'est de comprendre comment une partie bien spécifique marche(et pourquoi je la fais bugger..)


---------------
il y a ceux qui s'etonnent, qui s'affolent et questionnent; les autres s'en tamponnent tellement la beuh est bonne;
laissez bruler la weed, et n'oubliez personne; dans la fumée des dieux s'effondre babylone..
le libéralisme, c'est la course à l'ovule : pour qu'une personne reussise, un millier doivent crever.
n°5390404
Olive
Dans le noir
Posté le 20-07-2008 à 22:16:45  profilanswer
 

C'est rien 50 classes ;). Faut t'y faire :spamafote:, la vie d'un programmeur est ainsi faite qu'il manipule beaucoup de fichiers. Ton problème avec l'héritage, ben c'est un classique malheureusement, qui d'ailleurs est source de vilain bugs. Tu peux éventuellement placer des mouchards dans tes fonctions que tu actives via une preproc, pour tracer l'exécution.


---------------
TL D2 SCL
La galère, tous les habitants ont été passés au fil de l'épée et nous avons pu faire un immense tapis avec les milliers de lapins qui grouillaient dans les environs. Vos serviteurs vont festoyer de leurs restes pitoyables pendant des semaines. Ce fut une victoire vraiment... majestueuse. © Dungeon Keeper
n°5390454
kypper_667
Im'avalounède, lol.
Posté le 21-07-2008 à 00:11:17  profilanswer
 

DooMeeR a écrit :

Han :love: Y'aura des types algrébriques généralisés ?? Oh oui oh oui

Avec même de l'objet pur avec de vraies prises de têtes sur les entiers/caractères comme des warriors :D


---------------
Posté le o3|11|2oo7 à 12|2o|46 par Shoggynou : Non mais Kypper depuis genre 6 mois il est passé d'un gars à très cool à Grubnatz :hmm: - Posté le 29-o8-2oo7 à 14|26|05 par Incubeee_ : Oui, mais pour moi tu seras toujours Arcueid :o - Posté le o4-12-2oo6 à 21|55|41 par Simulacre : Ne t'inquiète pas, je te défoncerai tôt ou tard. : ) - Posté le 13-o4-2oo6 à o1|o8|37 par Bellandy : Sinon tu habites chez tes parents ? - Posté le 31-12-2oo5 à 21|3o|37 par Loline : mais mais Kyppy, tu n'as pas une grande vie sexuelle :heink: - Posté le o5-o8-2oo4 à 17|47|18 par Zack : J'ai l'impression d'être le seul à pas vraiment connaître Kypper... o_O
n°5390469
yatoub
Shut up Donny !
Posté le 21-07-2008 à 00:51:33  profilanswer
 

Bon j'ai laissé tomber le tri pour l'instant, et j'essaye l'idée à Guigolum, à savoir 2 boutons, le premier qui passe le menu 1 en taille 0 et le menu 2 en taille standard, et inversement sur l'autre bouton.
Je pensais que ça allait être plus simple, raté ^^
 
 
Edit : Non en fait ça marche. C'est tout moche mais ça marche. Par contre la demande tiens toujours, si quelqu'un a du temps à perdre ^^


Message édité par yatoub le 21-07-2008 à 01:46:51

---------------
Le Picon-Bière c'est redoutable, même les Belges ils s'y aventurent pas.
n°5390507
guigolum
noone can stop us now
Posté le 21-07-2008 à 06:44:59  profilanswer
 

Olive a écrit :

C'est rien 50 classes ;). Faut t'y faire :spamafote:, la vie d'un programmeur est ainsi faite qu'il manipule beaucoup de fichiers. Ton problème avec l'héritage, ben c'est un classique malheureusement, qui d'ailleurs est source de vilain bugs. Tu peux éventuellement placer des mouchards dans tes fonctions que tu actives via une preproc, pour tracer l'exécution.


 
la blague, c'est que c'est ce que j'ai fait. le probleme, c'est que ça plantait dans une fonction 'Write' mais que quand j'ai fait un cout<< __FILE__ <<__LINE __<<endl; au debut, bah.. ça m'affichait rien quand je lançais le prog. alors que juste avant l'appel ça marchait.
 
en gros j'ai un truc qui s'affichait du genre  
 
'checkpoint n'
segmentation fault
 
et les arguments d'entrée de la fonction sont les bons, et passés par reference/pointeurs.
du coup j'ai tout reinstallé.
mais j'aimerais avoir un moyen de m'en sortir plus rapidement la prochaine fois..


---------------
il y a ceux qui s'etonnent, qui s'affolent et questionnent; les autres s'en tamponnent tellement la beuh est bonne;
laissez bruler la weed, et n'oubliez personne; dans la fumée des dieux s'effondre babylone..
le libéralisme, c'est la course à l'ovule : pour qu'une personne reussise, un millier doivent crever.
n°5390540
Gaendal
Why so serious ?
Posté le 21-07-2008 à 11:00:30  profilanswer
 

@yatoub: tu pourrais expliquer correctement, concrètement ce que tu dois/veux faire en fait ?
Parce que j'ai du mal à voir l'intérêt de trier alphabétiquement un menu avec 3 liens ?


---------------
So, he comes at me with the knife,
"Why so SERIOUS?!"
He sticks the blade in my mouth,
"Let's put a smile on that face!
n°5390566
yatoub
Shut up Donny !
Posté le 21-07-2008 à 11:53:20  profilanswer
 

Gaendal a écrit :

@yatoub: tu pourrais expliquer correctement, concrètement ce que tu dois/veux faire en fait ?
Parce que j'ai du mal à voir l'intérêt de trier alphabétiquement un menu avec 3 liens ?


En fait c'est même pas alphabétiquement, il faut juste pouvoir "inverser" le menu.  
Pour ce qui est du collapse, ce que j'ai fait marche, mais est-ce que c'est approprié pour pouvoir faire ce fameux tri ou pas, j'en sais trop rien.
 
Concrètement, le résultat à obtenir est est menu comme celui qu'on voit sur la page d'acceuil du site off de WoW, et comme tu peux le voir sur le bout de code de merde que j'ai posté plus haut.
Sauf qu'en plus, il faut pouvoir "inverser" les titres du menu. Passer donc d'un affichage :
 - Titre 1
 - Titre 2
 - Titre 3
 
à un affichage :
 - Titre 3
 - Titre 2
 - Titre 1
 
Et basculer entre les deux. Quant à l'intérêt, y'en a aucun, du moins j'en vois pas ^^


Message édité par yatoub le 21-07-2008 à 12:00:49

---------------
Le Picon-Bière c'est redoutable, même les Belges ils s'y aventurent pas.
n°5390656
Gaendal
Why so serious ?
Posté le 21-07-2008 à 15:48:37  profilanswer
 

Si y'a pas d'intérêt pourquoi le fais tu ? :ack:
Et faut pouvoir les inverser dans quel cas ?


---------------
So, he comes at me with the knife,
"Why so SERIOUS?!"
He sticks the blade in my mouth,
"Let's put a smile on that face!
n°5390679
Olive
Dans le noir
Posté le 21-07-2008 à 17:11:33  profilanswer
 

Tiens Kyp, enjoy ce thread rigolo : http://www.gamedev.net/community/f [...] _id=501776
 
:p.


---------------
TL D2 SCL
La galère, tous les habitants ont été passés au fil de l'épée et nous avons pu faire un immense tapis avec les milliers de lapins qui grouillaient dans les environs. Vos serviteurs vont festoyer de leurs restes pitoyables pendant des semaines. Ce fut une victoire vraiment... majestueuse. © Dungeon Keeper
n°5390729
yatoub
Shut up Donny !
Posté le 21-07-2008 à 19:59:37  profilanswer
 

Gaendal a écrit :

Si y'a pas d'intérêt pourquoi le fais tu ? :ack:
Et faut pouvoir les inverser dans quel cas ?


Bah c'est pour une copine qui en a besoin pour son taf ^^
Et il faut pouvoir inverser sur demande de l'utilisateur quoi, avec un zouli bouton.


---------------
Le Picon-Bière c'est redoutable, même les Belges ils s'y aventurent pas.
n°5390741
icebird
Posté le 21-07-2008 à 20:51:29  profilanswer
 

Sérieux si en plus c'est pour son taf on veut un intéressement [:malacath]


---------------
« The worst thing about buying a Mac is having to tell your parents you are gay.»
n°5390807
Gaendal
Why so serious ?
Posté le 22-07-2008 à 02:35:36  profilanswer
 

*ne pige toujours pas l'intérêt du truc*


---------------
So, he comes at me with the knife,
"Why so SERIOUS?!"
He sticks the blade in my mouth,
"Let's put a smile on that face!
n°5390808
CdE
๏̯͡๏) ๏̯͡๏) ๏̯͡๏) ๏̯͡๏)
Posté le 22-07-2008 à 02:41:37  profilanswer
 

Sinon tu peux aussi wrapper le tableau en tableau circulaire et juste inverser l'ordre de parcours ! (Ouais c'est tuer une mouche avec un tank, mais c'est over classe :D)

n°5390824
guigolum
noone can stop us now
Posté le 22-07-2008 à 07:08:45  profilanswer
 

pourquoi 'wrapper' ? ce serait plutot dans l'autre sens que j'aurais vu ça moi.. vu qu'au final il lui faut toujours un tableau.

 


et.. c'est quoi un tableau circulaire? une file circulaire, où file[MAX+n]=file[n-1] ? là ça serait utile dans le cas où il veut modifier plus tard son menu..

  
Gaendal a écrit :

*ne pige toujours pas l'intérêt du truc*


c'est, heu... ésthetique.


Message édité par guigolum le 22-07-2008 à 07:09:18

---------------
il y a ceux qui s'etonnent, qui s'affolent et questionnent; les autres s'en tamponnent tellement la beuh est bonne;
laissez bruler la weed, et n'oubliez personne; dans la fumée des dieux s'effondre babylone..
le libéralisme, c'est la course à l'ovule : pour qu'une personne reussise, un millier doivent crever.
n°5390889
icebird
Posté le 22-07-2008 à 13:20:32  profilanswer
 

Du chrome quoi.

Citation :

Even more often (at least in the commercial software world) excessive complexity comes from project requirements that are based on the marketing fad of the month rather than the reality of what customers want or software can actually deliver. Many a good design has been smothered under marketing's pile of “checklist features” — features that, often, no customer will ever use. And a vicious circle operates; the competition thinks it has to compete with chrome by adding more chrome. Pretty soon, massive bloat is the industry standard and everyone is using huge, buggy programs not even their developers can love.


Message édité par icebird le 22-07-2008 à 13:22:21

---------------
« The worst thing about buying a Mac is having to tell your parents you are gay.»
n°5392411
KuBi4K
Cleanse, Purge, KILL !
Profil : Modérateur
Posté le 29-07-2008 à 15:15:27  profilanswer
 

Plop les gens...

 

Est ce que y a qqun qui est fortiche en SQL dans le coin ?

 

J'ai un pépin sur un truc de mon taff lié a du SQL, bien que je sois pas obligé de pondre du SQL avec mes petites mains ...

 

Je me sers d'un progiciel appelé Business Objects...

 

En gros ca sert à faire des rapports tout kikoo...

 

Le principe étant qu'on fabrique des Objets qui correspondent à des données qu'on veut utiliser, genre Mois Année, Numéro Client et toutes ces joyeusetés. (qui correspondent à des requêtes SQL Select MOIS from Table1, Select NUMCLI from Table2, etc)

 

Une fois créés, on drag & drop les objets sur un rapport et ca fait un kikoo tableau.

 

Une fois le tableau créé, on peut demander à voir le SQL correspondant, genre
Select MOIS, ANNEE, NUMCLI, DATE_DEPART FROM TABLE1, TABLE2, TABLE3 Where CONDITIONS A LA CON (dont les jointures)

 


Mon problème est que pour un de ces objets que je vais appeler TELEPHONE, ca me demande (en décodé SQL):

 

Select TELEPHONE From TABLE1 WHERE TYPE = 'Client' and DEPARTEMENT = 69 and NOM = 'KUBIAK'

 

Sauf que les conditions font que ca renvoie peu d'info, car les champs TYPE, DEPARTEMENT, NOM ne sont pas toujours TOUS renseignés.
Du coup, ca arrive que ca renvoie rien pour cet objet.
Et du coup, si on mélange cet objet avec d'autres issus de différentes tables, et vu que c'est affiché ligne par ligne, si un des objets ne renvoie rien, la ligne entière n'est pas affichée.

 

Genre

Mois | année | Client   | téléphone

Avril  |  2008  | Client_1 | téléphone_1
Avril  |  2008  | Client_2 | téléphone_2
Avril  |  2008  | Client_3 | téléphone_3
Avril  |  2008  | KUBIAK  |                      <- ligne pas affichée car y avait rien qui matchait les conditions pour cet Objet
Avril  |  2008  | Client_5 | téléphone_5

 


Et en fait, le mec de mon taff me dit Si y a rien, c'est "normal", c'est pas super cool pour nous, le mec a oublié de renseigner son numéro de téléphone mais bon mais dans ce cas là, il faut quand même que la ligne s'affiche avec le reste des infos...

 

En décodé: Y a un Kubiak qui a pas renseigné son NOM ou DEPARTEMENT dans la Table1, du coup la requete renvoie aucun TELEPHONE, et dans le tableau général, qui mixe le téléphone avec d'autres info, ben la ligne entière est zappée

 

Donc en fait, je cherche un moyen en SQL de forcer l'action suivante

 

Si la sous requête correspondant à un objet ne renvoie rien, dans ce cas renvoyer euuuh .. n'importe quoi, mais RENVOYER quelque chose à tout prix (un espace, un "champs non renseigné", "Kubiak est un con"...) histoire que même si toutes les infos d'un client ne sont pas disponibles, on puisse quand même voir le reste des info

 


Mois | année | Client   | téléphone

Avril  |  2008  | Client_1 | téléphone_1
Avril  |  2008  | Client_2 | téléphone_2
Avril  |  2008  | Client_3 | téléphone_3
Avril  |  2008  | KUBIAK  |    N/C                
Avril  |  2008  | Client_5 | téléphone_5


Message édité par KuBi4K le 29-07-2008 à 15:20:21

---------------
Hope is the first step on the road to disappointment.
 
May the Emperor forgive you, for we will not.
 
n°5392414
Nuage
Profil : Modérateur
Posté le 29-07-2008 à 15:25:15  profilanswer
 

Si je comprend bien ton problème...
 
Quand tu fait ta jointure entre ta TABLE1 et ta liste de clients, tu paume les entrées des clients qui n'ont pas de TELEPHONE, c'est ça ?
 
Et toi, tu voudrais que dans ta table résultante, tu aies toutes les entrées de ta liste de client, même celles qui ont pas de client, j'ai bon jusque là ?
 
En soit, c'est censé marcher a peu prés tout seul, si c'est ça, regarde du côté des LEFT_OUTER_JOIN (ou RIGHT, c'est selon).
Avec ça, il va coller des null aux endroits où il y a rien.
 
Nuage.

n°5392415
KuBi4K
Cleanse, Purge, KILL !
Profil : Modérateur
Posté le 29-07-2008 à 15:29:39  profilanswer
 

Ah oui.
 
Le problème étant que je ne peux modifier (et à la rigueur feinter à grand coup de SQL dégueu) QUE les objets, aka les sous requêtes, et non pas le gros SQL généré à la fin...
 
 
Et sinon, Nuage, je paume pas les téléphones car ils sont pas renseignés, je paume les numéro de téléphone car les conditions pour le récupérer ne sont pas remplies.....
 
Si moi dans ma table, je met le numéro, mon nom et que par exemple j'oublie de mettre le département, j'aurais
 
NOM     | TYPE   |PAIMENET  | TRANSACTION | DEPARTEMENT | LIVRAISON
KUBIAK | CLIENT | VIREMENT | ACHAT/VENTE   |                      | Camion
 
 
Si je fais
 
 
Select TELEPHONE From TABLE1 WHERE TYPE = 'Client' and DEPARTEMENT = 69 and NOM = 'KUBIAK'
 
Ca va renvoyer peanuts, car:
- TYPE = Client, ok...
- Département = 69, c'est faux.
 
-> je renvoie rien


Message édité par KuBi4K le 29-07-2008 à 15:35:23

---------------
Hope is the first step on the road to disappointment.
 
May the Emperor forgive you, for we will not.
 
n°5392417
Nuage
Profil : Modérateur
Posté le 29-07-2008 à 15:32:52  profilanswer
 

Gné ô_O
 
Tu peux rajouter des entrées dans la table, mais pas éditer la requête, tu veux dire ?
Si oui, beh...
 
Fait un gros batch dégueulasse qui ajoute dans ta TABLE1 des entrées pour tout les clients qu'il manque ^^'
 
Nuage.

n°5392418
KuBi4K
Cleanse, Purge, KILL !
Profil : Modérateur
Posté le 29-07-2008 à 15:35:44  profilanswer
 

J'ai édité.
 
 
En fait, quand je crée un Objet, je lui dit, à grands coups de clics, "C'est tel champs dans tel table, avec telles conditions"
 
Sauf que c'est du kikoo logiciel, donc le péquin de base ne voie aucun bout de SQL.
 
Sauf que par derrière, c'est du SQL.
 
 
Et quand le user décide de faire son rapport, il va drag & dropper autant d'objets qu'il veut, et le soft va fusionner toutes les requêtes correspondante automatiquement.
 
Et le résultat final, je peux pas y toucher, car ca voudrait dire que des que le mec décide de faire un nouveau rapport, faudrait que je le retouche par derrière.
 
Alors que si j'interviens à la création de l'objet, le user pourra l'utiliser X fois après.
 
Sauf que quand je crée un objet, je ne manipule que le SQL correspondant à cette donnée.


Message édité par KuBi4K le 29-07-2008 à 15:40:14

---------------
Hope is the first step on the road to disappointment.
 
May the Emperor forgive you, for we will not.
 
n°5392421
Nuage
Profil : Modérateur
Posté le 29-07-2008 à 15:44:40  profilanswer
 

Et je suppose que tu peux pas dire, sur la requête de récupération, DEPARTEMENT = '69' OR DEPARTEMENT = '' ?  
Ca serait trop facile ^^
 
Du coup, je vois pas trop, là...
 
Nuage.

n°5392423
devil-kata​na
Heresy
Posté le 29-07-2008 à 15:55:15  profilanswer
 

Un truc du genre
 
Select TELEPHONE From TABLE1 WHERE TYPE (+)= 'Client' and DEPARTEMENT (+)= 69 and NOM (+)= 'KUBIAK'
 
ça passerait pas ?


---------------
Sur Conseil des Ombres :  
Yamaël - Valium - Elleirys
________________________________________________________
Et je suis en prison pour un crime que je n'ai pas commis... Tentative de meurtre... Est-ce qu'on obtient un prix nobel de physique parcequ'on a presque fait une découverte?
n°5392424
Nuage
Profil : Modérateur
Posté le 29-07-2008 à 15:59:02  profilanswer
 

Il peut pas modifier les requêtes qui sont faites, si j'ai bien compris ^^'
 
Nuage.

n°5392425
devil-kata​na
Heresy
Posté le 29-07-2008 à 16:02:37  profilanswer
 

Alors c'est con :D


---------------
Sur Conseil des Ombres :  
Yamaël - Valium - Elleirys
________________________________________________________
Et je suis en prison pour un crime que je n'ai pas commis... Tentative de meurtre... Est-ce qu'on obtient un prix nobel de physique parcequ'on a presque fait une découverte?
n°5392426
KuBi4K
Cleanse, Purge, KILL !
Profil : Modérateur
Posté le 29-07-2008 à 16:05:33  profilanswer
 

devil-katana a écrit :

Un truc du genre
 
Select TELEPHONE From TABLE1 WHERE TYPE (+)= 'Client' and DEPARTEMENT (+)= 69 and NOM (+)= 'KUBIAK'
 
ça passerait pas ?


 
 
Ca fait quoi ca le (+)?


---------------
Hope is the first step on the road to disappointment.
 
May the Emperor forgive you, for we will not.
 
n°5392444
devil-kata​na
Heresy
Posté le 29-07-2008 à 16:37:07  profilanswer
 

ça m'a servi pour une extraction de notre répertoire d'adresses client afin justement de sortir également les clients même s'ils n'étaient pas renseignés dans les autres tables

 

(Tu vois One World/Enterprise One et son nombre hallucinant de tables ? ^^)

 

Je pense que ça correspond à ton problème

 

Un exemple que je viens de tester :

 

SELECT a.codeCli, b.tel FROM clients a, telephones b WHERE a.codeCli(+)=b.codeCli and b.codeCli='666'

 

Bah si ton tel est pas renseigné, ça va te renvoyer

 

codeCli | tel
666      |

 

Alors qu'avec une requête style

 

SELECT a.codeCli, b.tel FROM clients a, telephones b WHERE a.codeCli=b.codeCli and b.codeCli='666'

 

ça t'aurait renvoyé

 

codeCli | tel

 

donc rien !

 

Bref, je sais pas si c'est clair, j'ai jamais été très pédagogue, et j'ai pas de doc à ce sujet !!


Message édité par devil-katana le 29-07-2008 à 17:27:59

---------------
Sur Conseil des Ombres :  
Yamaël - Valium - Elleirys
________________________________________________________
Et je suis en prison pour un crime que je n'ai pas commis... Tentative de meurtre... Est-ce qu'on obtient un prix nobel de physique parcequ'on a presque fait une découverte?
n°5392450
KuBi4K
Cleanse, Purge, KILL !
Profil : Modérateur
Posté le 29-07-2008 à 16:49:33  profilanswer
 

Tiens ! Comme de par hasard, je bosse avec JDE :D
 
Sinon, quelqu'un aurait une idée de transformer le pseudo code suivant en SQL
 
Select champs1 from TABLE  
Where champ2= machin, champs3= truc
Si pas de resultas
Renvoyer "NON RENSEIGNE"
Sinon "champs1"  


---------------
Hope is the first step on the road to disappointment.
 
May the Emperor forgive you, for we will not.
 
n°5392462
devil-kata​na
Heresy
Posté le 29-07-2008 à 17:26:27  profilanswer
 

Je suis pas sûr que ça soit faisable autrement qu'en pl ton truc :ack:
 
Pour JDE, je compatis, encore une fois, mais vraiment quoi !!
 
(Tiens, tu cherches pas un boulot ? Je crois qu'ils cherchent quelqu'un qui connaisse JDE justement ! Tu pourras travailler plus, gagner moins, mais t'auras des super cosmétiques !!)


---------------
Sur Conseil des Ombres :  
Yamaël - Valium - Elleirys
________________________________________________________
Et je suis en prison pour un crime que je n'ai pas commis... Tentative de meurtre... Est-ce qu'on obtient un prix nobel de physique parcequ'on a presque fait une découverte?
n°5392491
guigolum
noone can stop us now
Posté le 29-07-2008 à 19:22:01  profilanswer
 

tu dois pouvoir utiliser decode(mais ça doit etre du pl sql..)

 

sinon tu peux faire une auto jointure
edit: avec un select count(*)


Message édité par guigolum le 29-07-2008 à 19:26:09

---------------
il y a ceux qui s'etonnent, qui s'affolent et questionnent; les autres s'en tamponnent tellement la beuh est bonne;
laissez bruler la weed, et n'oubliez personne; dans la fumée des dieux s'effondre babylone..
le libéralisme, c'est la course à l'ovule : pour qu'une personne reussise, un millier doivent crever.
n°5392629
Gaendal
Why so serious ?
Posté le 30-07-2008 à 12:43:01  profilanswer
 

KuBi4K a écrit :

Tiens ! Comme de par hasard, je bosse avec JDE :D
 
Sinon, quelqu'un aurait une idée de transformer le pseudo code suivant en SQL
 
Select champs1 from TABLE  
Where champ2= machin, champs3= truc
Si pas de resultas
Renvoyer "NON RENSEIGNE"
Sinon "champs1"  


ben tu mets tes résultats dans un array et tu testes si t'as qq chose dans chaque case ? Et si y'a rien tu fous "non renseigné" non ?
Enfin j'dis ptêt de la merde j'ai pas trop lu les messages précédents et je sais même pas sur quoi tu bosses :p


---------------
So, he comes at me with the knife,
"Why so SERIOUS?!"
He sticks the blade in my mouth,
"Let's put a smile on that face!
n°5393117
Jackass059
Tort tue :o
Posté le 01-08-2008 à 17:49:41  profilanswer
 

Bonjour à tous.

 

J'aurai juste voulu savoir si quelqu'un saurait où je peux trouver des bons tutos sur l'utilisation de Glib et plus particulièrement DBus en C ?

 

J'ai réussis à repêcher un peu de code par-ci par-là, mais à la compilation j'ai ce genre d'erreurs:

 
Code :
  1. undefined reference to `dbus_g_proxy_end_call'
 

Et voici mon makefile

Code :
  1. # Ces cibles ne sont pas des vrais fichiers
  2. .PHONY: clean, real-clean, cleaner
  3. # On désactive toutes les règles implicites
  4. .SUFFIXES:
  5. # Déclarations de constantes
  6. CC = gcc
  7. CFLAGS = -W -Werror -fno-builtin `pkg-config --cflags glib-2.0 dbus-1`
  8. LD = gcc
  9. LDFLAGS = 
  10. FINAL = Main
  11. MIDDLE = myDBus.o \
  12. $(FINAL): $(MIDDLE)
  13. $(CC) $(LDFLAGS) -o $@ $^
  14. %.o: %.c
  15. $(CC) $(CFLAGS) -c $<
  16. clean:
  17. rm -f $(MIDDLE) *~
  18. cleaner:
  19. rm -f *.o
  20. rm -f *~
  21. clear
 

Merci.

 

[edit]
Mon problème vient de la compilation, mais je ne dirai pas non à une doc généraliste ^^.


Message édité par Jackass059 le 01-08-2008 à 17:57:03

---------------
Save a Horse, Ride a Cowgirl !
 
[:jackass059:1][:jackass059:2][:jackass059:3][:jackass059:4]
-=TL-SCNL=-
n°5393146
icebird
Posté le 01-08-2008 à 20:06:53  profilanswer
 

t'as regardé sur freedesktop.org ?


---------------
« The worst thing about buying a Mac is having to tell your parents you are gay.»
 Page :  1  2  3  4  5  ..  24  25  26  27  28  29

Aller à :
Ajouter une réponse