[François Jehl] : Ouvrir SSAS 2005 sur l'extérieur en utilisant HTTP

Publié par Fabrice Michellonet sous le(s) label(s) le 26 juin 2008

François à publié un très bon billet (Ouvrir SSAS 2005 sur l'extérieur en utilisant HTTP) sur la façon d'implémenter une connectivité HTTP pour Analysis Services 2005.

Comme je lui faisais remarquer dans les commentaires, il est possible d'utiliser l'authentification intégrée de IIS afin que les crédentials du user soient automatiquement passés au serveur AS, ce qui permet de pouvoir facilement utiliser les rôles Olap. Cependant, il faut noter que sous Windows 2003 pour une raison qui m'est inconnue la délégation de compte pour les Administrateurs locaux de la machine ne fonctionne pas avec msmdpump.dll.

De plus, il est également possible d'effectuer la même manip sous Analysis Services 2000; Dans ce cas la Data Pump à placer dans le répertoire virtuel se nomme msxisapi.dll

Masquer la barre Blogger

Publié par Fabrice Michellonet sous le(s) label(s) le 24 juin 2008

J'ai vu pas mal de billets proposant des solutions permettant de retirer la barre Blogger qui est ajoutée automatiquement en en-tête des blogs. Certaines solutions sont basée sur des CSS, mais malheureusement celles que j'ai essayées ne fonctionnent pas, car la barre est en fait chargée dans un iframe

Reste alors la solution du javascript.

Voici donc une façon implémenter ça : Tout d'abord recherchez la balise body dans votre template html et ajoutez l'attribut onload comme suit.


<body onload='removeBloggerBar'>

puis dans un bloc script ajouter la fonction suivante :


function removeBloggerBar() {
var bloggerBar = document.getElementById("navbar-iframe");
bloggerBar.style.display = "none";
}

Enregistrez le tout et... voila, la barre n'est plus visible sur votre blog.

Comme d'habitude j'en profite pour faire un peu de pub à Dojo; Ci-dessous la même solution basée sur ce framework, vous verrez qu'il n'y à que très peu de choses qui changent.

Tout d'abord dans la section head :


<script language='javascript' type='text/javascript'>
dojo.require("dojo.parser");
// ...
dojo.addOnLoad(removeBloggerBar);
</script>

Puis il faut rajouter le code suivant soit dans un bloc script soit dans un fichier externe lié à votre page.


function removeBloggerBar() {
var bloggerBar = dojo.byId("navbar-iframe");
bloggerBar.style.display = "none";
}

Le résultat est identique, la barre Blogger disparait.

Enjoy

Overflow : l'attribut oublié.

Publié par Fabrice Michellonet sous le(s) label(s) le 20 juin 2008

Hier, Jérome Berthaud, me parlait d'une découverte qu'il avait faite lors de son escapade nocturne de la veille sur la toile. Il cherchait une solution au sempiternel problème soulevé par les éléments floatés à l'intérieur d'un autre élément de type bloc et surtout comment revenir dans le flux normal du positionnement. Voici un exemple de ce cas de figure :

<div id="outer">
<div id="inner"> <h2>A Column</h2> </div>
<h1>Main Content</h1>
<p>Lorem ipsum</p>
</div>

L'idée ici, est d'avoir une colonne (d'identifiant inner) ne prenant qu'une petite partie de l'espace d'affichage, par exemple une barre de navigation. Et bien sur le reste de l'écran réservé au contenu principal du site. Il nous est bien évidemment possible de définir la taille de cette colonne, mais de par sa nature d'élément de block, le contenu principal va de facto se retrouver repoussé en dessous d'elle, à moins de choisir de la floater.

Et voilà nous y sommes, si le contenu de la colonne se met a s'allonger et finalement dépasser la longueur du contenu principal, toute la mise en forme s'écroule comme un château de cartes. Alors comment s'assurer que le bloc principal s'ajustera toujours à la longueur de notre colonne?

Ayant moi même rencontré des dizaines de fois ce problème, je m'empresse de lui répondre qu'il faut rajouter à la fin du bloc (d'identifiant outer) un nouvel élément auquel on ajoutera la propriété css clear : both, mais que malheureusement cette solution salie le code html.

Effectivement, Jérôme convient qu'il s'agit d'une solution (d'ailleurs recommandée par le W3C), mais qu'une bien meilleure solution avait été apportée par Paul O’Brien. Celle-ci consiste à ajouter la propriété css overflow:auto sur le le bloc principal, et magie le bloc principal s'adapte a la hauteur de la colonne intérieur.


#inner
{
width:26%;
float:left;
}

#outer
{
background-color:#fff;
width:100%;
overflow:auto;
}

Cerise sur le gâteau, cela fonctionne sur tout les navigateurs excepté Netscpate 4...

C'est surement une des meilleure astuce css de ces derniers mois, merci Paul O’Brien pour l'avoir découverte et merci Jérôme de me l'avoir montrée.

Retour sur le Border Container

Publié par Fabrice Michellonet sous le(s) label(s) le 11 juin 2008

Je me suis peut-être un peu emballé sur le Border Container; je le pensais un peu plus flexible, mais finalement c'est moi qui ai sur-évaluer ses possibilités. Ce composant propose de séparer la zone d'affichage au maximum 4 parties distinctes :

  • une entête
  • une partie de gauche
  • une partie de centrale (obligatoire)
  • une partie de droite
  • un pied de page
border container

Partant de ce principe je divise donc ma zone d'affichage en 4, commence à styler le tout puis à mesure que je rajoute des billets la zone centrale grandit et je suis bientôt obligé d'ajouter un overflow dessus afin de pouvoir lire l'intégralité des posts. Arrgg, ce n'est pas ce que je souhaitais; j'aurais préféré que le scroll se fasse sur l'ensemble de la page et non pas uniquement sur la zone centrale ou une barre de scroll est du plus mauvais effet.

Alors bien évidement cela n'est pas incontournable, en sortant le ContentPane central en dehors du Border Container et de le positionner uniquement en CSS. Mais selon moi ce n'est pas une solution saine, car on se retrouve à devoir rajouter des div faisant office de clear ou de wrapper afin de faire tenir tout ce joli petit monde en place, avec une unique scrollbar sur le viewport.

En conclusion, le Border Container est vraiment génial lorsque l'on doit mettre en place un layout qui doit tenir totalement sur les dimensions du viewport sans scroll de page. Ainsi, pour ce blog j'ai finalement retiré ce widget et suis repassé sur un layout 100% CSS, car tant qu'a devoir "salir" le code html avec des balises de mise en page, je n'allais pas garder en plus des traitements javascript demandé par le composant

Dojo et Blogger, ça roule.

Publié par Fabrice Michellonet sous le(s) label(s) le 6 juin 2008

Comme vous pouvez le voir le templating du blog avance; Je me suis basé sur le template foliage, enfin surtout sur les artworks. Pour l'instant vous pouvez découvrir le layout global ainsi qu'une première version de la présentation des billets. A ce propos, je posterais bientôt un tutoriel "step by step" sur la mise en forme d'un widget, surement le widget Blog qui m'a valu de me faire quelques cheveux blancs.

Comme évoqué dans mon premier post Démarrage je me base sur le framework Dojo pour customiser ce blog. Ainsi la mise en forme 2 colonnes Header + Footer est réalisé avec le composant Border Container qui fonctionne de manière semblable à celle du BorderLayout de Java.

Pour utiliser Dojo j'avais la possibilité d'uploader la librairie sur une serveur ou bien d'utiliser la version "Online Cross Domain" hébergée par AOL.

Je ne pensais pas dire ça un jour, mais la version hostée par AOL fonctionne plutôt bien, les accès sont rapides etc... et surtout, pas besoin d'uploader ça quelque part. Comme quoi, y'a que les cons qui ne changent pas d'avis.

Bon aller sans plus attendre voici comment utiliser la version CDN de Dojo. Il suffit d'ajouter ces quelques déclarations dans la section head de votre page web.

<head>

/* ... */

/* utilisation de la version CDN de DOJO. */
<script djConfig="parseOnLoad: true, isDebug: false" src="http://o.aolcdn.com/dojo/1.1.1/dojo/dojo.xd.js" type="text/javascript"/>

<script language="javascript" type="text/javascript">
/* Déclaration des objets/widgets Dojo */
dojo.require("dojo.parser");
dojo.require("dojox.fx.easing");
dojo.require("dojox.fx.scroll");
</script>

/* ... */

</head>

Par la suite il vous suffit d'utiliser les nombreux widgets existants. En voici la liste complète.

Mais Dojo propose bien plus de chose que des widget, outre les facilités d'utilisations d'Ajax, aujourd'hui commune a beaucoup d'autres framework, Dojo embarque une grande quantité d'effets visuels. Pour en essayer un, essayez de cliquer sur le lien top qui se trouve dans le footer de ce blog.

Have fun.

Démarrage

Publié par Fabrice Michellonet sous le(s) label(s) le 1 juin 2008

Alors voila l'aventure recommence pour moi, je me suis laissé tenté une fois de plus par l'envie d'ouvrir un blog technique. Il faut dire que cette fois-ci c'est Aurélien qui m'a fait découvrir son blog ainsi que le système de template de Blogger. En réalité, c'est bien ce système customisable de template qui m'a donné envie de recommencer un blog.

Pour le contenu du blog vous y retrouverez mes découvertes aussi bien celles qui m'ont plus que celles qui m'ont déçues.

Bon, après ce petit billet d'introduction, je vous quitte afin de mettre au travail sur le template qui utilisera le framework Dojo; j'espère que vous apprécierez.