Un autre résumé de semaine!
Pas grand chose à dire là dessus cette semaine, puisque je ne me suis pas attardé à du code très complexe.
J'ai plutôt cherché, tout au long de la semaine, à retravailler les différentes interfaces que nous trouvons moins jolies. Je n'ai vraiment fait que ça cette semaine....
lundi 27 avril 2009
lundi 20 avril 2009
Résumé des deux dernières semaines
Premièrement, bonjour et désolé pour le retard dans mes billets. Les deux dernières semaines ont été assez mouvementés. Pas tellement mouvementées au niveau de mon travail ici, mais plutôt du côté personnel! Avec mon déménagement assez récent et les travaux dans l'appartement, la création de mon entreprise, contrats ici et là... tenir mon journal à jour m'est complètement sorti de la tête!
Donc voici un résumé, en une seule entrée, des deux dernières semaines:
Semaine du 6 avril
Durant la semaine, j'ai travaillé surtout sur le portail Tuteur.. ET oui! Le portail étudiant est pratiquement terminé et nous débutons même le portail Tuteur! J'ai donc travaillé sur la fenêtre de paramétrages des préférences du tuteur. Dans cette page, il sélectionne ses préférences quand à l'envoi de courriel et l'affichage du résumé de ses assignation (Page appelé sommaire).
J'ai décidé, pour garder de la cohérence entre les différentes interfaces des portails, d'utiliser une radGrid de Telerik pour afficher les paramètres.
Comme je l'ai déjà mentionné, avec une radGrid, on a pas le choix de lier celle-ci avec une source de données. C'est ici que j'ai frappé un problème. La table dans laquelle sont stockés les données contient une entrée pour chacun des paramètres: donc pour chacun des paramètre, j'obtiens une donnée me disant s'il est activé, une me disant s'il désire le recevoir de façon hebdomadaire ou quotidienne et une autre me disant quelle journée de la semaine il désire recevoir un courriel. Il a donc fallu mettre de l'ordre dans ces données et les regroupe dans un joli DataTable bien ordonné.
Ceci m'a prit beaucoup de temps pour trouver une solution efficace et sur laquelle il serait facile d'effectuer de la maintenance. J'ai ensuite réalisé l'interface, ici, ce fut beaucoup de "Tapponage", mais comme je suis rendu assez habitué avec les RadGrid, ce fut assez rapide.
Mais j'ai frappé un autre mur qui m'a encore une fois prit pas mal de temps à surmonter! Mes données bien ordonnées, il faut que je sois capable des les "désordonner" pour être en mesure de les sauvegarder dans la BD! Zut alors! Un joli select case et beaucoup de constantes ont réglé le problème. Beaucoup de commentaires se sont imposés alors, mais le résultat final est clair.
Semaine du 13 avril
La page de sommaire du portail tuteur semblait assez simple à réaliser à première vue. Elle n'est composée que d'un petit résumé des assignations du tuteur et de leurs changement depuis la dernière visite. Mais Oh comble de malheur! Elle est comme qui dirait une vraie "Pain in the ass", pardonnez-moi l'expression anglaise, à réaliser.
Pour commencer, il me faut au minimum une bonne trentaine de requêtes pour obtenir les données pour la peupler. De plus, aucun WebService ou fonction dans la BD n'est réalisée pour les obtenir. Évidemment, il faut une très bonne compréhension du diagramme pour arriver à les réaliser.
J'en ai donc parlé avec des personne d'ici connaissant bien le système et ils vont les réaliser pour moi. Je n'aurai donc qu'à réaliser les WebServices appelant les fonctions.
J'ai passé un bon moment à préparer l'interface pour acceuillir les données.
J'ai aussi travaillé sur plusieurs interfaces au courant de la semaine. J'ai préparé quelques formulaire pour augmenter la rapidité à les programmer quand sera venu le temps de travailler sur ces pages.
Nous avons aussi eu une réunion sur les prochaines étapes dans la réalisation du portail étudiant. Nous l'avons passé au peigne fin pour déceler ce qui restait à faire et j'ai corrigé quelques bugs trouvé et appliqué certaines améliorations.
J'ai aussi repassé sur quelques interfaces de Sébastien qui n'étaient pas cohérentes avec le reste du portail.
Et en date d'aujourd'hui, je travaille toujours à cette tâche!
Donc voici un résumé, en une seule entrée, des deux dernières semaines:
Semaine du 6 avril
Durant la semaine, j'ai travaillé surtout sur le portail Tuteur.. ET oui! Le portail étudiant est pratiquement terminé et nous débutons même le portail Tuteur! J'ai donc travaillé sur la fenêtre de paramétrages des préférences du tuteur. Dans cette page, il sélectionne ses préférences quand à l'envoi de courriel et l'affichage du résumé de ses assignation (Page appelé sommaire).
J'ai décidé, pour garder de la cohérence entre les différentes interfaces des portails, d'utiliser une radGrid de Telerik pour afficher les paramètres.
Comme je l'ai déjà mentionné, avec une radGrid, on a pas le choix de lier celle-ci avec une source de données. C'est ici que j'ai frappé un problème. La table dans laquelle sont stockés les données contient une entrée pour chacun des paramètres: donc pour chacun des paramètre, j'obtiens une donnée me disant s'il est activé, une me disant s'il désire le recevoir de façon hebdomadaire ou quotidienne et une autre me disant quelle journée de la semaine il désire recevoir un courriel. Il a donc fallu mettre de l'ordre dans ces données et les regroupe dans un joli DataTable bien ordonné.
Ceci m'a prit beaucoup de temps pour trouver une solution efficace et sur laquelle il serait facile d'effectuer de la maintenance. J'ai ensuite réalisé l'interface, ici, ce fut beaucoup de "Tapponage", mais comme je suis rendu assez habitué avec les RadGrid, ce fut assez rapide.
Mais j'ai frappé un autre mur qui m'a encore une fois prit pas mal de temps à surmonter! Mes données bien ordonnées, il faut que je sois capable des les "désordonner" pour être en mesure de les sauvegarder dans la BD! Zut alors! Un joli select case et beaucoup de constantes ont réglé le problème. Beaucoup de commentaires se sont imposés alors, mais le résultat final est clair.
Semaine du 13 avril
La page de sommaire du portail tuteur semblait assez simple à réaliser à première vue. Elle n'est composée que d'un petit résumé des assignations du tuteur et de leurs changement depuis la dernière visite. Mais Oh comble de malheur! Elle est comme qui dirait une vraie "Pain in the ass", pardonnez-moi l'expression anglaise, à réaliser.
Pour commencer, il me faut au minimum une bonne trentaine de requêtes pour obtenir les données pour la peupler. De plus, aucun WebService ou fonction dans la BD n'est réalisée pour les obtenir. Évidemment, il faut une très bonne compréhension du diagramme pour arriver à les réaliser.
J'en ai donc parlé avec des personne d'ici connaissant bien le système et ils vont les réaliser pour moi. Je n'aurai donc qu'à réaliser les WebServices appelant les fonctions.
J'ai passé un bon moment à préparer l'interface pour acceuillir les données.
J'ai aussi travaillé sur plusieurs interfaces au courant de la semaine. J'ai préparé quelques formulaire pour augmenter la rapidité à les programmer quand sera venu le temps de travailler sur ces pages.
Nous avons aussi eu une réunion sur les prochaines étapes dans la réalisation du portail étudiant. Nous l'avons passé au peigne fin pour déceler ce qui restait à faire et j'ai corrigé quelques bugs trouvé et appliqué certaines améliorations.
J'ai aussi repassé sur quelques interfaces de Sébastien qui n'étaient pas cohérentes avec le reste du portail.
Et en date d'aujourd'hui, je travaille toujours à cette tâche!
vendredi 3 avril 2009
RÉsumé du reste de la semaine
Bon bon bon... désolé je n'ai pas été assidu à ma tâche de journalisation cette semaine, je l'avoue. Avec mon déménagement la fin de semaine dernière ainsi que lundi, en plus de l'après-midi au cégep mercredi... j'ai pas mal été à la course! C'est pourquoi je résume mercredi, jeudi et vendredi en un seul billet de blog qui va comme suit:
Durant ces trois jours, j'ai finalement réussi à optimiser la requête grâce au DBA. Premièrement, l'une de mes jointures n'était pas bonne (Ex: Table1.id = Table1.id ... héhé, sans commentaire!). Deuxièmement, pour des raisons obscures, Oracle faisait certains Table Access Full alors qu'il ne devait pas. Le DBA a corrigé mon problème en ajoutant un mot clé après le SELECT de la requête, qu'il m'a fait jurer de ne jamais utiliser et d'oublier immédiatement... Ce que j'ai plus ou moins fait et me suis renseigné question d'approfondir la matière. Cemot clé permet de forcer le compilateur d'Oracle de fonctionner différemment... je n'en dit pas plus!
J'ai aussi travaillé sur la page d'affichage des résultats d'un étudiant, que j'avais déjà commencé. Je l'ai amélioré et terminé.
J'ai aussi travaillé sur le système d'authentification et testé plus en profondeur certaines pages déjà réalisées.
Ceci résume ma semaine en gros!
Durant ces trois jours, j'ai finalement réussi à optimiser la requête grâce au DBA. Premièrement, l'une de mes jointures n'était pas bonne (Ex: Table1.id = Table1.id ... héhé, sans commentaire!). Deuxièmement, pour des raisons obscures, Oracle faisait certains Table Access Full alors qu'il ne devait pas. Le DBA a corrigé mon problème en ajoutant un mot clé après le SELECT de la requête, qu'il m'a fait jurer de ne jamais utiliser et d'oublier immédiatement... Ce que j'ai plus ou moins fait et me suis renseigné question d'approfondir la matière. Cemot clé permet de forcer le compilateur d'Oracle de fonctionner différemment... je n'en dit pas plus!
J'ai aussi travaillé sur la page d'affichage des résultats d'un étudiant, que j'avais déjà commencé. Je l'ai amélioré et terminé.
J'ai aussi travaillé sur le système d'authentification et testé plus en profondeur certaines pages déjà réalisées.
Ceci résume ma semaine en gros!
mardi 31 mars 2009
Mardi
Bon, il semble que j'ai d'importants problèmes de performances dans ma requête de suivi des activités. Ça prend plusieurs secondes à s'exécuter. J'ai donc tenté de la corriger et de l'optimiser à la façon dont je l'ai fait avec la requête pour obtenir les résultats.
Comble de malheur, ce fut un échec. Au lieu de l'améliorer, je n'ai fait que l'empirer et la rendre encore moins performante. Après avoir passé quelques heures dessus, j'ai fait appel à Éric, l'un des DBA de la Teluq. J'attend toujours sa réponse...
lundi 30 mars 2009
vendredi 27 mars 2009
Vendredi
Bon! Une grosse journée pour terminer la semaine!
Aussitôt arrivé au travail aujourd'hui, je me suis mit à "taponner" sur la requête que m'a pondu Sébastien hier. J'ai du contacter Iannick Légaré pour m'assurer de l'endroit où je devais récupérer certaines données. Il me fallait en autre rajouter une jointure pour récupérer la note globale pour le cours d'un étudiant. C'est là que j'ai frappé un problème.
Premier problème: la requête était extrêmement lente à s'exécuter: je parle ici d'assez gros problèmes de performance: 18 secondes d'exécution!
Deuxième problème: 894 résultats depuis l'ajout de ma jointure au lieu des 50 que j'étais censé recevoir!
J'ai préféré, pour m'assurer de rendre la requête plus performante, la reconstruire à partir de zéro. En effet, nous faisions une jointure sur une vue, cela faisait des "full table access" à chacune des jointures... assez gourmand en performance on peut dire!
J'ai donc réussi à régler les problèmes de performance. Et pour ce qui est du deuxième problème, Éric Bédard, notre DBA, m'a expliqué comment réalisé un vrai outer join dans la clause where avec Oracle. Il faut mettre un (+) à côté du table1.id = table2.id.
Voilà! Tout fonctionne. Reste plus qu'à corriger l'affichage!
Aussitôt arrivé au travail aujourd'hui, je me suis mit à "taponner" sur la requête que m'a pondu Sébastien hier. J'ai du contacter Iannick Légaré pour m'assurer de l'endroit où je devais récupérer certaines données. Il me fallait en autre rajouter une jointure pour récupérer la note globale pour le cours d'un étudiant. C'est là que j'ai frappé un problème.
Premier problème: la requête était extrêmement lente à s'exécuter: je parle ici d'assez gros problèmes de performance: 18 secondes d'exécution!
Deuxième problème: 894 résultats depuis l'ajout de ma jointure au lieu des 50 que j'étais censé recevoir!
J'ai préféré, pour m'assurer de rendre la requête plus performante, la reconstruire à partir de zéro. En effet, nous faisions une jointure sur une vue, cela faisait des "full table access" à chacune des jointures... assez gourmand en performance on peut dire!
J'ai donc réussi à régler les problèmes de performance. Et pour ce qui est du deuxième problème, Éric Bédard, notre DBA, m'a expliqué comment réalisé un vrai outer join dans la clause where avec Oracle. Il faut mettre un (+) à côté du table1.id = table2.id.
Voilà! Tout fonctionne. Reste plus qu'à corriger l'affichage!
jeudi 26 mars 2009
Jeudi
Comme je n'ai pas eu le temps de réaliser entièrement la page des résultats d'un étudiant hier, j'ai poursuivi cette tâche aujourd'hui. J'ai expérimenté pas mal avec le contrôle RadPanelBar de Telerik. Pour gérer mon affichage, il est complètement super! Je peux mettre un contrôle Literal dans celui-ci et comme cela, à moi de gérer les possibilités infinies d'affichage!!! Héhé!
Sébastien a terminé une requête censé me retourner tous les résultats nécessaires pour ma page, alors j'ai réalisé le web service pour la faire exécuter et récupérer les données. Une fois terminé, je me suis rendu compte qu'il me manquais certaines données pour ma page, dont la note globale pour un cours ainsi que la bonne date de fin pour le cours en question. Je n'ai plus le temps de faire cela aujourd'hui, je ferai cela demain!
Sébastien a terminé une requête censé me retourner tous les résultats nécessaires pour ma page, alors j'ai réalisé le web service pour la faire exécuter et récupérer les données. Une fois terminé, je me suis rendu compte qu'il me manquais certaines données pour ma page, dont la note globale pour un cours ainsi que la bonne date de fin pour le cours en question. Je n'ai plus le temps de faire cela aujourd'hui, je ferai cela demain!
mercredi 25 mars 2009
Mercredi
Aucun problème majeur aujourd'hui. J'ai surtout expérimenté avec les diverses possibilités de certains contrôles Telerik.
J,ai commencé à réaliser la page d'affichage des résultats d'un étudiant. Je doit afficher les résultats obtenus dans chacun de ses travaux des deux dernières années. On s'imagine qu'il est possible q'en deux ans, l'étudiant peut avoir plusieurs cours et travaux! Comme tous les résultats sont affichés dans une seule et même page, elle peut donc devenir assez longue!
Pour palier à ce problème, j'ai décidé d'utiliser le contrôle Telerik RadPanelBar. Ceci nous permet d'ouvrir et de fermer différents panneaux dans une page. Évidemment, comme tous les contrôles Telerik, ce contrôles est "skinnable" ;-). Comme cela, j'affiche chacun des cours dans un panneau fermé avec la période dans laquelle se déroulait le cours et le code de ce cours dans l'entête du panneau.
J'ai donc réalisé une bonne partie de l'affichage aujourd'hui pendant que Sébastien travaillait sur la requête pour me retourner les résultats.
J,ai commencé à réaliser la page d'affichage des résultats d'un étudiant. Je doit afficher les résultats obtenus dans chacun de ses travaux des deux dernières années. On s'imagine qu'il est possible q'en deux ans, l'étudiant peut avoir plusieurs cours et travaux! Comme tous les résultats sont affichés dans une seule et même page, elle peut donc devenir assez longue!
Pour palier à ce problème, j'ai décidé d'utiliser le contrôle Telerik RadPanelBar. Ceci nous permet d'ouvrir et de fermer différents panneaux dans une page. Évidemment, comme tous les contrôles Telerik, ce contrôles est "skinnable" ;-). Comme cela, j'affiche chacun des cours dans un panneau fermé avec la période dans laquelle se déroulait le cours et le code de ce cours dans l'entête du panneau.
J'ai donc réalisé une bonne partie de l'affichage aujourd'hui pendant que Sébastien travaillait sur la requête pour me retourner les résultats.
mardi 24 mars 2009
Mardi
Aujourd'hui, j'ai travaillé principalement sur les pages du portail mobile. J'ai réalisé une version mobile des pages que Sébastien avait terminé pour le portail étudiant version poste de travail. J'ai décidé de repasser aussi sur certaines choses que j'avais faites durant les dernières semaines pour embellir le tout.
J'ai bloqué un certain moment aujourd'hui sur une chose qui semblait simple, mais que j'ai finalement abandonné pour l'instant. Pour afficher certains contenus qui ne sont pas gérés directement par le portail étudiant, nous affichons le contenu en question dans un IFrame. Je sais, je sais... les IFrame ne sont pas très bien perçus par les développeur web, mais bon... pour ce que nous voulons faire, nous n'avons pas beaucoup de choix. Les pages en question que nous voulons implémenter dans notre portail sans en incorporer la gestion sont en aspx. Elles s'incorporent très bien au design de notre site lorsque nous les chargeons directement dans la section de contenu du portail. Par contre, nous ne pouvons pas faire de "include", car pour ce faire, le fichier aspx serait directement chargé dans le div de contenu. L'entête aspx du fichier chargé serait alors redéfinie dans le div. La page aspx contenant l'autre page détecterait alors 2 headers et du coup, tout plante. Voilà la raison pour laquelle nous avons choisi le IFrame.
Malheureusement, avec une fonction JavaScrit réalisant cela, j'obtiens une erreur de droit d'accès au contenu de page. Normal, sinon n'importe qui pourrait copier la page pour effectuer une fraude...
En tout cas... je reviendrai la dessus une autre fois!
J'ai bloqué un certain moment aujourd'hui sur une chose qui semblait simple, mais que j'ai finalement abandonné pour l'instant. Pour afficher certains contenus qui ne sont pas gérés directement par le portail étudiant, nous affichons le contenu en question dans un IFrame. Je sais, je sais... les IFrame ne sont pas très bien perçus par les développeur web, mais bon... pour ce que nous voulons faire, nous n'avons pas beaucoup de choix. Les pages en question que nous voulons implémenter dans notre portail sans en incorporer la gestion sont en aspx. Elles s'incorporent très bien au design de notre site lorsque nous les chargeons directement dans la section de contenu du portail. Par contre, nous ne pouvons pas faire de "include", car pour ce faire, le fichier aspx serait directement chargé dans le div de contenu. L'entête aspx du fichier chargé serait alors redéfinie dans le div. La page aspx contenant l'autre page détecterait alors 2 headers et du coup, tout plante. Voilà la raison pour laquelle nous avons choisi le IFrame.
Mais je m'écarte du sujet. Ce que je voulais faire, c'est réussir à définir la hauteur du IFrame selon son contenu, de façons à ne pas obtenir une deuxième barre de défilement dans la page, comme cela l'illustre l'image suivante.
Malheureusement, avec une fonction JavaScrit réalisant cela, j'obtiens une erreur de droit d'accès au contenu de page. Normal, sinon n'importe qui pourrait copier la page pour effectuer une fraude...
En tout cas... je reviendrai la dessus une autre fois!
lundi 23 mars 2009
Lundi
Ce matin, j'ai terminé la version mobile de la page de suivi des activités. J'ai finalement terminé la gestion de la pagination. De plus, je suis capable d'afficher à l'entrée de l'utilisateur sur la page la page affichant les prochaines activités à venir, c'est-à-dire les activités de la journée courante ou celles imminentes.
En après-midi, j'ai réalisé un petit plus bien pratique que je voulais mettre en œuvre. J'affiche maintenant sur la page d'accueil du portail étudiant les 5 prochaines activités à venir de l'étudiant connecté de la même façon que j'affiche la grille des activités dans la page de suivi des activités. Ça a été vraiment plus rapide à réaliser que la réalisation de cette dernière. En moins d'une heure, j'avais un algorithme fonctionnel et l'affichage était identique!
En après-midi, j'ai réalisé un petit plus bien pratique que je voulais mettre en œuvre. J'affiche maintenant sur la page d'accueil du portail étudiant les 5 prochaines activités à venir de l'étudiant connecté de la même façon que j'affiche la grille des activités dans la page de suivi des activités. Ça a été vraiment plus rapide à réaliser que la réalisation de cette dernière. En moins d'une heure, j'avais un algorithme fonctionnel et l'affichage était identique!
vendredi 20 mars 2009
On fini bien la semaine!
Effectivement! On termine bien la semaine. Aujourd'hui, j'ai travaillé sur plusieurs pages du portail mobile surtout dans la matinée. En après-midi, j'ai refait presque en entier la page de suivi d'activité, mais pour le portail mobile. Je veux afficher tous les événements d'une personne dans une espèce de liste dans laquelle je pourrai mettre de la pagination et situer l'utilisateur dans la page représentant la date la plus proche de celle d'aujourd'hui. Maheureusement, le contrôle DataPager offert par microsoft, est très limité pour la pagination. J'ai donc opté pour un contrôle réalisé moi-même dans lequel je pourrai gérer les pages de la pagination et aussi la navigation. Mission accomplie!
jeudi 19 mars 2009
Enfin terminé!
Bon.. finalement j'ai décidé d'abandonner (seulement pour l'instant.. je reviendrai!!! Mouahahahaha!) la sélection de la ligne et seulement de ne faire qu'afficher le tool-tip. Aujourd'hui, j'ai passé la journée sur l'affichage des informations dans le tool-tip. Finalement, tout s'affiche de façon très jolie! J'ai réalisé une fonction qui gère l'affichage des informations et gère l'alternance de couleur des lignes dans le tableau. Je pourrai surment la ré-utiliser prochainement.
mercredi 18 mars 2009
Journée frustrante
Je suis parti ce soir avec l'impression de n'avoir rien fait de ma journée, même si je n'ai pas arrêté une seule seconde de travailler d'arrache-pied pour résoudre un tout petit problème. En fait, ce tout petit problème s'avère être beaucoup plus difficile que ce que je croyais.
Tout ce que je veux faire, c'est faire en sorte que lorsque je clique sur une ligne de la liste d'activité, la ligne de la grille se sélectionne, puis un tool-tip apparaît. Malheureusement, il semble que n'ai le choix que d'afficher un tool-tip, ou de sélectionner la ligne lorsque j'effectue un clic. Un ou l'autre, pas les deux. En fait, il semble que le tooltip manager attrape le clic sans que la ligne ne puisse l'attraper ensuite.
Tout ce que je veux faire, c'est faire en sorte que lorsque je clique sur une ligne de la liste d'activité, la ligne de la grille se sélectionne, puis un tool-tip apparaît. Malheureusement, il semble que n'ai le choix que d'afficher un tool-tip, ou de sélectionner la ligne lorsque j'effectue un clic. Un ou l'autre, pas les deux. En fait, il semble que le tooltip manager attrape le clic sans que la ligne ne puisse l'attraper ensuite.
mardi 17 mars 2009
"Tool tipping!"
J'ai passé ma journée entière sur une seule chose: des tool tips.
Je possède une grille qui affiche le nom de chacune des activités se déroulant pour une journée sélectionnée. Je veux que les détails de l'activité sur laquelle le curseur de l'utilisateur se place soient affichés dans un beau tool tip. J'utilise donc les contrôles Telerik pour y arriver.
Je possède une grille qui affiche le nom de chacune des activités se déroulant pour une journée sélectionnée. Je veux que les détails de l'activité sur laquelle le curseur de l'utilisateur se place soient affichés dans un beau tool tip. J'utilise donc les contrôles Telerik pour y arriver.
Malheureusement, c'est beaucoup plus compliqué que ça en a l'air!
Tout d'abord, il fait arriver, avec une documentation très limitée, à faire en sorte que les tooltip se régénèrent lorsque le curseur est sur une ligne différente. J'y suis parvenu en ajoutant un targetControlId au runtime lors de l'événement ItemDataBound au radToolTipManager.
Ensuite, il faut réussir à passer au tooltip les informations à afficher.
J'ai donc overloadé la fonction Page.LoadControl dans ma page de façon à ce qu'elle puisse appeler différents constructeur selon un array reçu en paramètre. Phiou! Bref, c'est compliqué, mais ça fonctionne!
Tout d'abord, il fait arriver, avec une documentation très limitée, à faire en sorte que les tooltip se régénèrent lorsque le curseur est sur une ligne différente. J'y suis parvenu en ajoutant un targetControlId au runtime lors de l'événement ItemDataBound au radToolTipManager.
Ensuite, il faut réussir à passer au tooltip les informations à afficher.
J'ai donc overloadé la fonction Page.LoadControl dans ma page de façon à ce qu'elle puisse appeler différents constructeur selon un array reçu en paramètre. Phiou! Bref, c'est compliqué, mais ça fonctionne!
Demain, je devrais être en mesure de peaufiner le tout en l'optimisant et en le rendant plus joli.
lundi 16 mars 2009
Courte Journée
Une semaine qui a débutée assez tranquillement côté travail.
Je suis arrivé plus tôt au travail pour arriver à faire au moins 4 heures avant de quitter pour la rencontre au cégep. J'ai travaillé encore une fois sur mon formulaire de suivi d'activité. J'ai réussi à faire afficher la liste des activités pour une journée sélectionnée.
Je suis arrivé plus tôt au travail pour arriver à faire au moins 4 heures avant de quitter pour la rencontre au cégep. J'ai travaillé encore une fois sur mon formulaire de suivi d'activité. J'ai réussi à faire afficher la liste des activités pour une journée sélectionnée.
vendredi 13 mars 2009
Mon web service fonctionne!
Je peux dire que j'ai terminé ma semaine sur une super bonne note! J'ai réussi à brancher mon web service à la page de suivi des activités et tout fonctionne bien!
jeudi 12 mars 2009
Les web services
Aujourd'hui, j'ai travaillé beaucoup sur un web service dont j'ai besoin. Par contre, il est assez particulier je dois dire. Je dois aller récupérer des données dans environ 10 tables. et parfaois dans plus, dépendanmment des cas.
Par exemple, si l'activité que je récupère est un travail pour un étudiant, la date est dans une certaine table. Par contre, si c'est un examen sous surveillance... je dois aller la récupérer dans une autre table séparée par plusieurs jointures!
J'ai donc passé toute la journée sur ma requête.
Par exemple, si l'activité que je récupère est un travail pour un étudiant, la date est dans une certaine table. Par contre, si c'est un examen sous surveillance... je dois aller la récupérer dans une autre table séparée par plusieurs jointures!
J'ai donc passé toute la journée sur ma requête.
mercredi 11 mars 2009
Le comble de la non-productivité
Je ne peux vraiment pas dire le contraire: aujourd'hui a été ma journée la moins productive depuis le début de mon stage. Je dois même dire que ce fut la plus démoralisante... Je m'explique:
Ce matin, nous étions en réunion départementale. Comme nous ne sommes pas encore extrêmement familier avec toutes les pratiques du département ici et de tout les processus de projets utilisés, nous ne pouvions pas vraiment donner de bonnes propositions pour régler leurs problèmes. En tout cas, j'ai écouté durant toute la réunion, ça a passé vite, et j'ai eu quelques petite occasions de donner mon opinion et de mettre en pratique ce que j'ai apprit notamment dans le cours de soutien technique.
Cet après-midi fut le moment le moins productif. Pour continuer à travailler sur le suivi des activités, je dois être en mesure d'accéder au projet contenant les web services ici. Mais je n'arrive pas à le configurer correctement. Pourtant tout mes paramètres sont identiques à ceux des 2 autres stagiaires.... et Sabrina, celle qui pourrait m'aider ici avec les Web Services, est absente pour aujourd'hui et demain. Je devrai donc recommencer demain à "Taponner" là-dessus et à tenter de corriger le problème de façon à être en mesure de continuer de travailler.
Ce matin, nous étions en réunion départementale. Comme nous ne sommes pas encore extrêmement familier avec toutes les pratiques du département ici et de tout les processus de projets utilisés, nous ne pouvions pas vraiment donner de bonnes propositions pour régler leurs problèmes. En tout cas, j'ai écouté durant toute la réunion, ça a passé vite, et j'ai eu quelques petite occasions de donner mon opinion et de mettre en pratique ce que j'ai apprit notamment dans le cours de soutien technique.
Cet après-midi fut le moment le moins productif. Pour continuer à travailler sur le suivi des activités, je dois être en mesure d'accéder au projet contenant les web services ici. Mais je n'arrive pas à le configurer correctement. Pourtant tout mes paramètres sont identiques à ceux des 2 autres stagiaires.... et Sabrina, celle qui pourrait m'aider ici avec les Web Services, est absente pour aujourd'hui et demain. Je devrai donc recommencer demain à "Taponner" là-dessus et à tenter de corriger le problème de façon à être en mesure de continuer de travailler.
mardi 10 mars 2009
Contrôles Telerik
Aujourd'hui, j'ai travaillé en grande parties sur la page de suivi des activités d'un étudiant. Dans cette page, l'étudiant peut consulter ses activités telles que ses examens, rencontres, remises de travaux.. etc. Elle est présentement comme le reste du portail: c'est à dire laide et dépareillée.
Pour la refaire, j'utilise une librairie de contrôles réalisée par Telerik. La Teluq possède une licence pour celle-ci. Leurs contrôles sont vraiment complet et super personnalisables.
On a frappé un mur pour lié les références, mais maintenant le problème est réglé.
Pour la refaire, j'utilise une librairie de contrôles réalisée par Telerik. La Teluq possède une licence pour celle-ci. Leurs contrôles sont vraiment complet et super personnalisables.
lundi 9 mars 2009
Congé maladie...
Aujourd'hui, je vous parlerais bien de ma gastro, mais je crois bien que vous vous en passeriez!
vendredi 6 mars 2009
On règle les problèmes!
Aujourd'hui, je me suis finalement tanné de tous les petits problèmes de rendu du design sous les différents navigateurs (et ici, je mentionne exclusivement IE...). J'ai donc repartis de zéro la section centrale (celle du contenu) du portail étudiant. J'ai réalisé tout cela avec en tête de le rendre modifiable le plus facilement possible seulement en changeant la feuille de style liée.
Pour réaliser ceci, je n'ai donc implanté aucun div imbriqué. Tout est divisé dans des div plutôt que des tables comme cela était fait avant.
En quelques heures, j'ai corrigé en repartant de zéro ce que nous avions passé si longtemps à tenter de "patcher". D'où l'importance de partir du départ avec une bonne architecture!
Pour réaliser ceci, je n'ai donc implanté aucun div imbriqué. Tout est divisé dans des div plutôt que des tables comme cela était fait avant.
En quelques heures, j'ai corrigé en repartant de zéro ce que nous avions passé si longtemps à tenter de "patcher". D'où l'importance de partir du départ avec une bonne architecture!
jeudi 5 mars 2009
La petite routine
Aucun gros défi pour la journée. J'ai peaufiné mon lecteur Rss, réalisé des pages statiques, bu du café... la routine!
mercredi 4 mars 2009
Le portail étudiant prend de plus en plus sa forme!
Ce matin, j'ai débuté ma journée en m'attaquant aux pages statiques du portail mobile. Tous les menus du portail ainsi que les pages telle ques que "Nous joindre" ou "Soutien technique" ont étés réalisés.
J'ai aussi réalisé des petites choses en CSS dont je suis assez fier. Par exemple, pour toutes les balises h1 du portail mobile, j'affiche une petite puce à côté du texte. J'ai réalisé cela en appliquant l'image de la puce comme fond à ma balise, que j'ai positionné complètement à gauche. Ensuite, j'ai ajouté un padding de la largeur de l'image. Voilà! J'aime le CSS!
En fin d'après-midi, j'ai réalisé le design d'un lecteur Rss que je coderai demain.
J'ai aussi réalisé des petites choses en CSS dont je suis assez fier. Par exemple, pour toutes les balises h1 du portail mobile, j'affiche une petite puce à côté du texte. J'ai réalisé cela en appliquant l'image de la puce comme fond à ma balise, que j'ai positionné complètement à gauche. Ensuite, j'ai ajouté un padding de la largeur de l'image. Voilà! J'aime le CSS!
En fin d'après-midi, j'ai réalisé le design d'un lecteur Rss que je coderai demain.
mardi 3 mars 2009
On débute les pages statiques!
Comme le précise le titre de mon message, j'ai passé la journée à travailler sur des pages statiques pour le portail mobile. J'ai cogné quelques petits problèmes de mise en page pour les listes "ul-li" sous BlackBerry, car il semble que certaines version du navigateur interprète des balises différemment... à voir...
lundi 2 mars 2009
De l'exercice!
Aujourd'hui, j'ai fait pas mal d'exercice... je m'explique:
On a commencé la journée tout en douceur, puisque j'ai débuté mon lundi matin café à la main (comme tous les jours d'ailleurs.... je crois que je ne l'ai pas mentionné plus tôt!) à travailler sur des feuilles de style. L'exercice a commencé lorsque M. Coderre, mon patron, est venu demander à Sébastien et moi de donner un coup de main au techniciens pour nettoyer le virus définitivement.
Nous avons donc passé une bonne partie du matin et de l'après-midi à retracer et à éliminer les restes du virus qui a causé relativement beaucoup de dégâts à certaines machines.
On a commencé la journée tout en douceur, puisque j'ai débuté mon lundi matin café à la main (comme tous les jours d'ailleurs.... je crois que je ne l'ai pas mentionné plus tôt!) à travailler sur des feuilles de style. L'exercice a commencé lorsque M. Coderre, mon patron, est venu demander à Sébastien et moi de donner un coup de main au techniciens pour nettoyer le virus définitivement.
Nous avons donc passé une bonne partie du matin et de l'après-midi à retracer et à éliminer les restes du virus qui a causé relativement beaucoup de dégâts à certaines machines.
Certaines d'entre-elle ont même envoyé du spam à l'extérieur de la bâtisse (il a percé le firewall!!!) concernant des fraudes.
En tout cas, la journé s'est terminé par la mise en page du CSS pour le portail du mobile.
En tout cas, la journé s'est terminé par la mise en page du CSS pour le portail du mobile.
vendredi 27 février 2009
Design
Aujourd'hui, j'ai travaillé sur les feuilles de style pour les designs. Nous avons dû refaire l'architecture du projet après analyse, puisque l'architecture actuelle pourvait nous donner certains problèmes à long terme. La nouvelle architecture sera plus efficace pour effectuer des mises à jour dans le futur.
Nous avons eu beaucoup de difficultés à mettre en production notre projet puisqu'il semble y avoir un petit méli-mélo dans les serveurs. Certains serveurs permettent d'utiliser un serveur IIS pour faire fonctionner nos pages ASP.Net. Certaines personnes nous disaient que nous devions avoir ASP.NET 1.1 plutôt que 3.5. Mais ce n'est pas logique... et de toute façon on a même pas VS 2003 installé sur nos poste.....
Finalement, nous avons eu notre accès au serveur et pourrons tester à partir de demain.
Nous avons eu beaucoup de difficultés à mettre en production notre projet puisqu'il semble y avoir un petit méli-mélo dans les serveurs. Certains serveurs permettent d'utiliser un serveur IIS pour faire fonctionner nos pages ASP.Net. Certaines personnes nous disaient que nous devions avoir ASP.NET 1.1 plutôt que 3.5. Mais ce n'est pas logique... et de toute façon on a même pas VS 2003 installé sur nos poste.....
Finalement, nous avons eu notre accès au serveur et pourrons tester à partir de demain.
jeudi 26 février 2009
Une journée CSS
Journée plutôt enrageante.
Nous avons amélioré le design aujourd'hui. Nous avons ajouté un fond dégradé de gris à blanc permettant d'offrir une plus belle découpure autour de la page. Nous avons aussi ajouté une ombre portée derrière.
Nous avons amélioré le design aujourd'hui. Nous avons ajouté un fond dégradé de gris à blanc permettant d'offrir une plus belle découpure autour de la page. Nous avons aussi ajouté une ombre portée derrière.
Donc le temps est veu de mettre en CSS ce nouveau design qui malheureusement me pose beaucoup de problème entre les différents systèmes d'exploitation.
Maintenant, excusez-moi mais j'ai une petite idée qui m'est venue en tête pour régler le probème, alors je dois y retourner immédiatement!
mardi 24 février 2009
Photoshopping!
Aujourd'hui, nous avons travaillé sur les designs du portail pour poste de travail ainsi que sur mobile. J'ai déniché un émulateur de blackberry permettant de tester le design sur le blackberry. À la fin de la journée, nous avons un design complet et fonctionnel pour les deux ainsi qu'une architecture de l'application bien définie.
Nous voulons tester sur un vrai blackberry pour voir si c'est joli en production, mais comme il est tard, personne ne peut nous aider à mettre en production notre projet. Tant pis, ça ira à demain!
Nous voulons tester sur un vrai blackberry pour voir si c'est joli en production, mais comme il est tard, personne ne peut nous aider à mettre en production notre projet. Tant pis, ça ira à demain!
lundi 23 février 2009
C'est le début de la deuxième semaine!
Bon.. dernière matinée pour terminer notre analyse et notre documentation. Une fois terminé, nous avons rencontré le directeur des services informatiques de la Téluq (mon patron), monsieur Maurice Coderre, pour discuter du projet et des orientations que nous allons devoir prendre. Pour terminer la journée, j'ai commencé à travailler sur un prototype pour le nouveau design du portail étudiant.
vendredi 20 février 2009
Le rythme s'installe!
Durant toute la matinée, j'ai effectué des recherches sur le développement web pour mobile. C'est étrange dans Visual Studio 2003 et 2005, un modèle de page est défini pour les mobiles (Nommé Mobile web Form), mais il semble avoir mystérieusement disparu dans Visual Studio 2008... et évidemment... pratiquement aucune documentation à ce sujet. Définitivement, après mon projet de recherche sur la manipulation audio où mes recherches n'ont pas été fructueuses, je commence à être à bout de nerfs de ne pas trouver ce que je cherche! Au moins, ce coup-ci, j'ai découvert qu'une équipe de programmeurs a développé son modèle et l'offrent gratuitement en téléchargement. Génial! Ça fonctionne!
J'ai donc maintenant réussi à réaliser une page web personnalisée pour l'internet sur mobile!
Cet après-midi, on complète notre documentation de l'ancien système. Vivement la semaine prochaine où nous allons débuter la programmation!
J'ai donc maintenant réussi à réaliser une page web personnalisée pour l'internet sur mobile!
Cet après-midi, on complète notre documentation de l'ancien système. Vivement la semaine prochaine où nous allons débuter la programmation!
jeudi 19 février 2009
Analyse, analyse et.... analyse!
Aujourd’hui il fait tempête… tant pis! De toute façon, j’ai même pas de fenêtre! En matinée, j’ai réalisé l’analyse du portail étudiant et ce jusqu’à environ 14h. J’ai ensuite terminé de compléter les petits détails du lexique. Nous avons eu une petite modification au projet du portail étudiant aujourd’hui. M. Coderre, mon patron, a exprimé la demande que le portail soit disponible sur téléphone cellulaire. Nous devons donc vérifier la façon idéale de réaliser ceci ainsi que de déterminer à quel point ceci va augmenter le temps de développement.
mercredi 18 février 2009
Au nom de dieu... commentez votre code!
J’ai terminé en avant-midi ma section à réaliser de l’analyse du système actuel du portail étudiant. Ça avance bien plus vite que nous l’avions prévu! En après-midi, Mylène devait s’absenter. Elle nous a donc laissé à réaliser un lexique sur les règles de nomenclature que nous pouvions déterminer à partir du système. C’est un système qui utilise de vieilles technologies désuètes avec une architecture que l’on peut qualifier de « douteuse »! Des pages HTML comportent du code JavaScript qui appellent des fonctions PL/SQL communiquant avec la base de données Oracle et qui génèrent du code HTML et JavaScript à faire afficher dans le navigateur... et le code n'est évidemment commenté que très sommairement… Phiou… Je dois reprendre mon souffle! Nous avons terminé le lexique plus tôt que prévu et j’ai donc aussitôt commencé à préparer l’analyse du portail tuteur puisque nous avion parlé débuter le tout demain.
mardi 17 février 2009
1ère journée.... au travail!
La journée a débuté par la configuration de mon poste de travail. Jusqu’à environ 9h45, j’ai installé tous les logiciels nécessaires à mon fonctionnement. J’ai ensuite eu la première réunion de mon stage à 10h avec Sébastien et Mylène Raymond. Ensemble, nous allons travailler à la traduction en ASP.Net du portail étudiant et du portail tuteur de la Teluq. Durant l’après-midi, je me suis mit au travail et débuté l’analyse du système actuel.
lundi 16 février 2009
Inscription à :
Articles (Atom)