Le Post de MCNEXT

Les articles des consultants de MCNEXT

Indexation DataWarehouse

L’indexation d’un entrepôt de données est délicate :

  • si vous avez trop peu d’indexes les temps de chargement de votre entrepôt seront optimum mais les temps de requêtage seront déplorables
  • au contraire, si vous avez trop d’indexes, les temps de chargement vont exploser mais les performances de requêtage seront excellentes.

Afin de prévoir un plan d’indexation optimum vous devez prendre en compte certains critères :

  • le type d’entrepôt (archive vs temps (quasi) réel)
  • la taille des dimensions et des tables de faits
  • le nombre d’utilisateurs ayant accès à l’entrepôt (le nombre d’accès concurrents max à gérer)
  • le type d’accès aux données (ad-hoc ou via des interfaces d’applications structurées)
  • le mode d’alimentation (upsert, annule/remplace …)
  • etc …

Voici néanmoins quelques règles basiques à respecter lors du design de votre entrepôt.

Lire la suite

Microsoft Dev Camp : Faire des jeux pour Windows 8 et Windows Phone 8 Jeudi 14 mars 2013

Microsoft Dev Camp Windows 8 et Windows Phone 8

Microsoft Dev Camp Windows 8 et Windows Phone 8

Rendez-vous le Jeudi 14 mars 2013 à partir de 13h30 !

John Thiriet, consultant .NET au sein de MCNEXT, présentera son retour d’expériences concernant le développement de jeux pour Windows 8 et Windows Phone 8 (au programme portable library, mvvm, asynchronisme et performance).

Qu’est-ce qu’un Dev Camp ?

Le Dev Camp est un événement destiné aux développeurs professionnels comme non professionnels animé par les experts Microsoft et ses partenaires.

Au programme 5 heures de :

  • Formation
  • Démo
  • Code

L’objectif est de faire découvrir aux développeurs des outils d’aide lors du développement de projets applicatifs Windows 8 et Windows Phone 8.

Lieu :
Campus de Microsoft – Issy les Moulineaux

Pour en savoir plus : http://www.mcnext.com/evenements/microsoft/Pages/Microsoft-dev-camp-windows-8-et-windows-phone-8.aspx

Excel : la "boîte à outils BI"

Après son connecteur SSAS et bientôt aussi des connecteurs Big Data, ses add-on : data-mining, MDS/DQS, PowerPivot, Power View, la "boîte à outils BI" d’Excel va s’enrichir avec Data Explorer et GeoFlow. Excel se transforme petit à petit comme l’outil décisionnel self service par Excel ence…

Data Explorer : ETL self-service dans Excel

Add-in d’Excel 2013 :

Micorosoft annonce la sortie du produit en CTP le 27/02/13

http://blogs.msdn.com/b/dataexplorer/

GeoFlow : Analyse décisionnelle Geospacial dans Excel

Add-in d’Excel 2013, prévu pour l’été 2013.

Windows Embedded 8 « Application launcher »

Windows Embedded 8 intègre une nouvelle fonctionnalité appelée “Windows 8 Application Launcher”. Elle permet de verrouiller un poste sur une seule application Modern UI et peut donc s’avérer intéressante pour la mise en place de bornes (services, commerces) ou d’autres systèmes interactifs. Concrètement, l’application est lancée automatiquement à l’ouverture de session et, après quelques réglages, il n’est pas possible pour l’utilisateur d’en sortir.

L’application launcher doit être activé à l’avance via ICE que nous présentions précédemment. Après l’avoir ajouté depuis la catégorie Branding, quatre paramètres sont configurables.

ICE AppLauncher

  • AppUserModelId : Ce code identifie l’application à lancer. Il est récupérable en installant l’application en question sur un poste puis en cherchant "AppUserModelId" dans sa base de registre. Il suffit ensuite de copier la valeur correspondante au bon package.

Registry AppLauncher

  • DefaultReturnCodeAction : Cet entier indique quelle action doit être entreprise par le système si l’utilisateur ferme l’application
    • 0 : Redémarre l’application
    • 1 : Redémarre le système
    • 2 : Arrête le système
    • 3 : Ferme l’application launcher et retourne sur le Start Screen
    • 4 : Ferme la session
  • CustomReturnCodeAction : Permet de choisir une action différente à entreprendre suivant le code de retour de l’application (en cas d’erreur etc.).
  • UserSettings : Permet de spécifier les trois paramètres précédent pour un utilisateur donné.

L’application launcher seul ne suffit pas à réaliser une borne sécurisée. Il n’empêche pas l’utilisateur de retourner sur le Start Screen et d’utiliser le système d’exploitation comme bon lui semble. Il est donc intéressant de le coupler avec d’autres fonctionnalités de Windows Embedded 8.

  • Le Gesture Filter permet de verrouiller les "bords" de l’écran, autrement dit les barres de Charms et la fermeture d’une application par le haut. Son paramètre DisabledEdges est un entier qui doit être composé suivant les gestures que l’on souhaite désactiver. Un coup d’oeil à l’aide permet de déterminer qu’il faut entrer 247 pour verrouiller tout sauf la barre du bas (qui peut être utile à l’application).

GestureFilter

  • Le Keyboard Filter permet quant-à lui de désactiver certaines touches ou combinaisons de touches qui permettraient autrement à l’utilisateur de sortir de l’application.

Une fois le système installé, il faut tout d’abord créer un nouvel utilisateur. L’Application Launcher sera en effet désactivé sur le premier compte administrateur. Il suffit ensuite d’installer l’application (voir l’article traitant du sideloading) et de rouvrir la session pour se retrouver en mode borne.

En couplant les trois fonctionnalités sus-nommées, et en y ajoutant eventuellement des GPO (stratégies de groupe), il est donc possible de réaliser une borne verrouillée sur une application Modern UI. L’Application Launcher lance l’application à l’ouverture de la session Windows, tandis que les deux autres sécurisent la machine.

Une vidéo de démonstration de l’Application Launcher est disponible sur MCNEXT TV.

Introduction à Windows Embedded 8

Windows Embedded 8 est la dernière version du système d’exploitation de Microsoft destinée aux systèmes embarqués. Il est prévu pour Mars 2013 mais plusieurs versions Preview ont déjà été publiées via le programme Microsoft Connect.

winembeddedtimeline

Windows Embedded 8 est basé sur une version allégée de Windows 8. Il n’inclut par exemple pas Windows Store, ce qui rend impossible l’installation d’applications Modern UI de diffusion large. Le système ajoute cependant de nouvelles fonctionnalités destinées notamment au Branding (modification de l’apparence) et au Lockdown (verrouillage du poste de travail). Ces fonctionnalités le rendent particulièrement adapté aux appareils personnalisés (pour une société), aux bornes publiques ou aux ordinateurs de bord.

La configuration d’une machine sous Windows Embedded 8 se réalise au préalable sur un poste de développeur, via l’outil Image Configuration Editor (ICE). Cette application, présente dans le SDK fourni, liste l’ensemble des fonctionnalités disponibles dans le système d’exploitation embarqué.  Elle permet ensuite de les activer et de les configurer.

W8E ICEA gauche la liste des fonctionnalités disponibles, au centre celles activées,
à
 droite le paramétrage de la fonctionnalité sélectionnée

Une fois les fonctionnalités configurées, l’installation de la machine hôte peut se faire de plusieurs manières. ICE peut par exemple générer un ISO préconfiguré de Windows Embedded 8 qui contiendra le paramétrage réalisé. Une autre méthode, plus simple, consiste à enregistrer le fichier de configuration en XML et sélectionner ce fichier lors de la première étape de l’installation de l’ISO standard. Les fonctionnalités  seront alors activées automatiquement via l’outil transparent intégré à l’installeur, Image Builder Wizard.

W8E IBWLe deuxième choix permet le paramétrage de l’installation par le fichier XML créé via ICE

Ainsi, Windows Embedded 8 propose un environnement adapté aux systèmes embarqués par le biais de fonctionnalités de personnalisation et de sécurisation. Il nécessite d’être configuré via une machine de développement classique. Cette séparation permet une certaine industrialisation mais rend impossible la modification "à chaud" des machines hôtes.

Sideloading d’une application Windows 8 Modern UI

Généralement les applications Windows 8 Modern UI sont installées à partir du Windows Store, système prévu par Microsoft à cet effet. Cette méthode n’est cependant pas universelle et ne convient pas dans certains cas, comme par exemple :

  • Lorsque l’application ne passe pas la validation requise par Microsoft
  • Lorsque l’application doit rester dans un cadre privé ou celui d’une entreprise
  • Lorsque le Windows Store n’est pas disponible sous l’environnement considéré, ce qui est le cas pour Windows 8 Embedded

Ce n’est en réalité pas l’installation en elle-même qui pose problème, mais l’exécution qui sera par défaut verrouillée si le package n’a pas été installé via le Store.

sideloading ko

Le fait d’autoriser cette exécution sera alors appelé « sideloading ». Il existe pour cela quatre méthodes qui dépendent du système d’exploitation et du contexte.

// Sideloading via une licence développeur (tous systèmes Windows 8)

La manière la plus basique de réaliser du sideloading est de passer par une licence de développeur. Il est possible, pour un développeur Modern UI, de créer un package (.appx) de test de son application. Le script d’installation activera alors une licence dite « développeur » et autorisera le sideloading sur le poste de travail.

Cette méthode, bien que pratique, gratuite et rapide, n’est mise à disposition par Microsoft qu’à des fins de tests. Son utilisation dans un cadre de production n’est pas autorisée.

licence dev w8

// Sideloading par clé d’activation (tous systèmes Windows 8)

Microsoft souhaite promouvoir son Store et contrôler ainsi le parc d’applications disponibles sous Windows 8. L’éditeur permet toutefois de débloquer totalement le sideloading sur un poste de travail via l’activation d’une clé spécialement prévue à cet effet.

Cette clé est vendue sous le nom de code « J7S-00005 » à environ 30$ par clé (par packs de 100 uniquement pour le moment !). Elle s’active par simple appel à l’outil de licensing intégré.

slmgr.vbs /ipk <sideloading product key>
slmgr.vbs /ato ec67814b-30e6-4a50-bf7b-d55daf729d1e

Cette solution est efficace et radicale, mais le montant total pour un parc informatique peut s’avérer élevé.

// Sideloading par contrôleur de domaine (Windows 8 Enterprise + Server 2012)

Sous certaines conditions, le déploiement d’une application Modern UI dans le cadre d’une société est facilité. Le sideloading sera ainsi activé sur un poste lorsque celui-ci dispose de Windows 8 version Enterprise et s’il est connecté à un domaine.

Windows 8 Enterprise peut donc s’avérer intéressant pour les sociétés désirant disposer d’applications privées.

// Sideloading par validation alternative (Windows 8 Embedded)

Windows Store n’est pas disponible sous Windows 8 Embedded. Microsoft a indiqué qu’un système de validation similaire à celui du Store permettrait d’obtenir un package qui ne nécessite pas de sideloading en particulier.

Les prérequis pour ce type d’applications seront du même niveau d’exigence que ceux des applications destinées au Store, selon une discussion récente. Il y a cependant peu d’informations concernant cette méthode à l’heure actuelle.

Techdays 2013 : Une tablette surface à gagner en testant vos connaissances 100% Microsoft sur le stand 97 de MCNEXT.

Techdays 2013 Quiz DotNET MCNEXT

Venez rencontrer les experts MCNEXT sur le stand n 97 zone bleu foncée.
Vous pourrez ainsi tester vos connaissances autour de Microsoft et ainsi tentez de gagner une tablette surface !
A vous de jouer !

TECHDAYS 2013

C’est la 5 ème année consécutive  que MCNEXT participe aux TechDays, cette année MCNEXT anime 7 sessions :

    1. Créer votre application métier pour tablettes Windows 8, SharePoint 2013 et SQL Server 2012 ( BI) :
      Session animée par Stéphane Cordonnier, directeur technique au sein de MCNEXT , mardi 12 Février de 16h à 17h.
      Pour plus d’informations Cliquez ici

    2. Les nouveautés de Microsoft Biztalk Server 2013 :
      Session animée par  Rock Baduel, directeur du pôle BizTalk au sein de MCNEXT, mardi 12 Février de 17h30 à 18h30.
      Pour plus d’informations  Cliquez ici

    3. DAX for dummies / DAX pour les nuls ! :
      Session animée par Julien Vidal et Pascal Rouze, consultants décisionnels au sein de MCNEXT, mardi 12 Février de 17h30 à 18h30 .
      Pour plus d’informations Cliquez ici

    4. Fichier, Nouveau projet… Et après ? :
      Session animée par John Thiriet , consultant .NET au sein de MCNEXT, mardi 12 Février de 17h30 à 18h30.
      Pour plus d’informations Cliquez ici

    5. Introduction à node.js :
      Session animée par Guillaume Leborgne, expert .NET au sein de MCNEXT, mercredi 13 Février de 14h30 à 15h30.
      Pour plus d’informations Cliquez ici

    6. TypeScript for dummies :
      Session animée par Guillaume Leborgne , expert .NET au sein de MCNEXT, Mercerdi 13 Février de 16h à 17h.
      Pour plus d’informations Cliquez ici

    7. Tout sur les SPA :
      Session animée par Guillaume Leborgne, Expert .NET au sein de MCNEXT , Mercredi 13 Février de 17h30 à 18h30.Pour plus d’informations Cliquez ici

    Retrouvez- nous sur le Stand MCNEXT : 97 ( Zone bleu foncée) !

Office 365 / Supprimer une collection de site non provisionnée

Microsoft a dévoilé la nouvelle version de SharePoint ces derniers mois avec SharePoint 2013. A cette occasion, Office 365  Preview qui représente l’offre de Microsoft sur le Cloud, a été lancée avec les nouvelles versions de la vague 2013, à savoir SharePoint 2013, Exchange 2013 et Lync 2013. Si vous avez fait partie des personnes qui ont créé un compte, vous avez ainsi pu commencer à tester la nouvelle version des produits de Microsoft sur le Cloud.

Seulement voilà, certains d’entre vous ont peut-être noté que la plateforme pouvait souffrir de certains dysfonctionnements, certainement dus à l’intervention de Microsoft sur celle-ci (pour corriger les problème de cette version Preview).

MCNEXT a fait partie du programme Wave 15 permettant ainsi d’avoir les produits et notamment SharePoint 2013 en avance de phase. C’est ainsi que nous avons eu l’occasion de tester le nouveau SharePoint mais également Office 365 et SharePoint Online.

Dans ce cadre, nous avons eu l’occasion de créer des collections de sites SharePoint Online 2013 grâce à la plateforme Office 365 et son interface d’administration. Malheureusement, nous avons dû faire face à quelques dysfonctionnements de la plateforme et une certaine instabilité de la plateforme. Lors de la création d’une collection de sites, nous avons en effet eu les symptômes suivants :

  • La création de la collection de sites semble être lancée
  • Le processus tourne en rond et l’icône d’avancement semble tourner indéfiniment
  • Impossible d’accéder à la collection de sites
  • Impossible de supprimer la collection de sites
  • Impossible de recréer une collection de sites par-dessus

Finalement, cela engendre le fait d’avoir une collection de sites inutilisable, non supprimable et totalement bloquée.

Bugged-SiteColl-01

Interface d’administration des collections de sites Office 365 version 2013

Après quelques tests en vain via Powershell, et après avoir contacté le support Office 365, nous n’avions eu aucune réponse à notre problème, ne pouvant pas intervenir sur la collection de sites.

Néanmoins une solution a été trouvée en ayant recours à une manipulation peu orthodoxe.

En allant sur l’interface d’administration, une coche permet de sélectionner une collection de sites. Malheureusement la collection de sites buggée n’est pas sélectionnable : impossible d’intervenir dessus.

Sur Internet Explorer, appuyez sur F12, ou cliquez sur « Options –> F12 developer tools ». Cela permet d’ouvrir le panneau développeur affichant ainsi le code source de la page.

Sur ce panneau, utiliser le premier outil en haut à gauche afin de sélectionner la coche correspondant à la collection de site buggée.

Dans le code source, la sélection devrait être mise sur le code correspondant à la coche. A défaut, dépliez l’arborescence (bouton +) pour arriver au code <input>.

Sur cette ligne, repérez le mot « disabled », cliquez dessus – vous passez en édition du code à la volée –, supprimez le mot « disabled ».

Bugged-SiteColl-02

Cliquez sur « disabled » et supprimer le mot dans la ligne <input>

Si vous avez bien fait, vous pouvez désormais cocher la ligne de la collection de sites buggée.

Une fois cochée, vous verrez les boutons s’activer dans le ruban d’actions, avec notamment le bouton « Delete ».

Bugged-SiteColl-03

Le code est modifié, la ligne peut être sélectionnée, les boutons s’activent

Cliquez sur le bouton « Delete » en vérifiant que la bonne collection de sites est cochée.

Une fenêtre en surbrillance s’ouvre pour confirmer la suppression.

Bugged-SiteColl-04

Fenêtre de confirmation de suppression

Appuyez sur « Delete » pour confirmer la suppression.

La fenêtre devrait se fermer et une notification en haut à droite de l’écran devrait apparaitre.

Bugged-SiteColl-05

Notification de suppression

Au bout de quelques secondes, la collection de sites sera effectivement supprimée de la liste des collections de sites.

Vous pourrez dès lors recréer une nouvelle collection de sites à cette adresse.

Bugged-SiteColl-06

La collection de sites buggée a été supprimée

 

Christian SU – Consultant SharePoint

#SPC2012 : How to Develop Social Applications with SharePoint 2013

Thursday, 11h00, Matthew McDermott, MVP, Principal Consultant, Director

Résumé :

Session où la grande partie est de la redite d’autres sessions.

Une partie intéressante est la démo à la fin où il montre qu’il est possible d’outrepasser les problèmes de cross-scripting via un Request Executor. Dommage qu’il ne rentre pas plus dans les détails de l’implémentation de son code. Son code lui permet de créer une sorte de bot permettant de s’attacher à Dynamics pour poster une news sur SharePoint en mentionnant une personne qui clos une opportunité.

// Composantes du social

Il représente les composantes du social : UserProfiles + Feeds + Following + Search Il explique qu’il ne faut pas hésiter à faire des prototypes pour valider ce que l’on veut faire.

On peut travailler sur les UserProfiles, les social feeds, les site feeds et les community sites.

Il représente les possibilités de développer du social (CSOM, JSOM, REST, Silverlight Library, .NET CLR Library).

On peut récupérer les profiles et les propriétés.

On peut récupérer les feeds et les réponses.

On peut modifier la photo de l’utilisateur (pas ses propriétés).

On peut créer des posts avec l’utilisateur authentifié.

On ne peut pas tester si un compte existe, créer,modifier, supprimer un user profile, créer un post au nom d’une autre personne.

// DEMO : JSOM

Il veut amener du social dans la recherche.

Il a modifier le search design Display template. Il a copié le Item_Person et Item_Person_Hover.

Il y a ajouté une div dans le Hover copié, avec un javascript qui va utiliser le SocialFeedManager pour récupérer les feeds et les afficher sur le panneau.

Dans ce display template il utilise AddPostRenderCallback et SP.SOD.executeFund(‘sp.js’..) pour ajouter un callback lorsque le DOM est chargé.

Il utilise console.log() pour logger ses erreurs.

// DEMO : JSOM et REST

Il fait deux démos, permettant d’attaquer les services REST et JSOM pour attaquer le profil utilisateur en récupérant une propriété utilisateur. Avec ça il récupére la propriété custom "TwitterAccount" qu’il passe à une requête JSONP Twitter afin de récupérer les tweets.

// DEMO : Request Executor

Il expose un scénario d’un système externe qui veut se connecter à SharePoint. Il va utiliser Request Executor qui va créer une IFRAME vers une App SharePoint qui va attaquer le site SharePoint, comme un proxy.

Ainsi il surpasse la restriction cross-domain.

Il a une page hébergée sur Dynamics CRM, qui récupère et post les feeds.

Il a créé un dev qui lui permet de créer une opportunité sur Dynamics, et quand cette opportunité est validée, cela poste un message sur le newsfeed de SharePoint de la part d’un bot.

Il ne rentre pas dans l’implémentation de son code.

Christian

Suivre

Recevez les nouvelles publications par mail.