Boite à outils Office

Créer des rapports simples et efficaces pour Commerce Server grâce à PowerPivot (aka Gemini)

Analytics, BI, Commerce Server, Power Pivot, Reporting, SQL Server 6 Comments »

Dans un de mes précédents post, j’ai expliqué comment mettre en place la solution analytics de Commerce Server, et je pense qu’il a dû y avoir de la déception chez certains (qui a dit tous?) d’entre vous!

Même si les cubes fournis peuvent être un bon point de départ, le process d’import est lui complètement obsolète et s’apparente plus à une boite noire où il est quasi impossible d’y “tunner” (comprendre?) quelque chose (je laisse sous silence les rapports qui sont eux plus que périmé)…

Bref, vous l’aurez compris, il est temps que la team Commerce Server se penche sur cette fonctionnalité pour lui donner un bon coup de peinture!

En attendant, que faire?:

  • Développez de nouveaux rapports sur la base des cubes/process import
    • Avantage:
      • Pas de cube à développer, on ne part pas de 0 
      • En fonction de vos besoins peu de temps de développement pour ajouter quelques informations
    • Inconvénient
      • Espérer que le process d’import se passe bien et corresponde à vos besoins
      • Long travail de redesign des rapports si vous souhaitez un layout plus moderne
      • La structure des cubes ne correspond pas forcément à votre besoin
      • Nécessite une intervention de l’IT pour toutes adaptations
  • Développez vos propres cubes
    • Avantage
      • Vous collez à vos besoins
    • Inconvénient
      • Nécessite une intervention de l’IT pour toutes modifications/évolutions
      • Temps de mise en place pouvant être assez long
  • Ne rien faire
    • :)

Dans tous les cas, un passage par l’IT s’avère obligatoire et vous n’avez pas forcément la patience d’attendre pour exploiter votre site internet?

Bonjour et bienvenue à Gemini, pardon Power Pivot :)

Power Pivot est le nouvel outil développé par Microsoft pour faciliter et vulgariser la BI sur le poste de travail (rien que çà). Il se présente sous la forme d’un add-in pour Excel 2010 (attention ne fonctionne qu’avec la version d’office 2010):

Je me suis donc amusé à le tester sur un site Commerce Server d’un de mes clients et j’avoue que je suis sidéré par sa facilité de prise en main et la rapidité d’exécution.

L’ajout de source de données se fait via un onglet dédié et comme toujours dans office, la manipulation est largement facilitée et guidée:

image

image   image  image  image  image  image

Et voilà, en 5 minutes montre en main, j’ai importé une base transactions de Commerce Server de 2Go dans un fichier Excel! Et cerise sur le gâteau, le fichier fait à peine 40mo! Pour les sceptiques:

image image

Grâce à la structure relationnel et multi dimensionnel de Power Pivot, je vais pouvoir créer simplement et rapidement des tableaux croisés dynamiques ou graphiques en quelques minutes. Prenons par exemple une représentation graphique du nombre de commande par jour

  • Tout d’abord, spécifier qu’on veut un graphique

image 

  • Ensuite, on ajoute en valeur le nombre de tracking number et en axis la date de création

image

  • Pas vraiment lisible je vous l’accorde :) En effet, la colonne created contient la date et l’heure! Pour regrouper par mois, il nous faut donc une colonne ne contenant que le mois et l’année du champ ‘”created”. Pour cela, rien de plus facile! Il nous suffit de créer une nouvelle colonne dans notre onglet “Purchase Orders” en utilisant le langage DAX  (qui est très proche du langage de formule d’Excel): RIGHT("0" &MONTH([Created]),2) &"/" &year([Created])

image

  • On rafraichit la source et notre nouvelle colonne est maintenant disponible. Résultat:

image

Facile non :)

Vous comprenez qu’il est donc très simple de mettre en place des dashboards puissant grâce au couplage PowertPivot (pour les data) et Excel (pour le formatage), exemple:

image

 

Pour plus d’informations:

Secretaire ou Assistante de direction, Kalligo est l’outil en ligne fait pour vous

Commerce Server, Réalisation No Comments »

La team Commerce Server d’Altima est heureuse de vous annoncer la naissance du portail des secrétaires et assistantes de direction répondant au doux nom de Kalligo. A vos cartes bleues!

image

Bienvenue chez Mathon : Mathon, ustensiles de cuisine et accessoires de cuisine

Commerce Server, Réalisation No Comments »

Je suis intervenu, avec mon collègue Anoir, sur le site e-Commerce de la société Mathon afin de leur apporter notre expertise autour des solutions Commerce Server et du développement .Net.

En effet, victime de son succès, le site connaissait de temps en temps des problèmes de performances et surtout de capacité à prendre un gros nombre d’utilisateurs dans une faible période de temps (comme par exemple lors de l’envoi d’une newsletter ou du début de la période des soldes).

Notre intervention s’est donc surtout portée sur l’optimisation du code .Net (mise en place d’un caching puissant, optimisation des controles .Net utilisés, …) ainsi que sur les bonnes pratiques d’utilisation du framework de Commerce Server (comme systématiser le CatalogItemConfiguration).

Le site est maintenant très fluide et près à recevoir vos nombreuses commandes :) . A vos cartes bleues!

Je vous invite par la même à suivre le blog de Cyril, qui est un réel passionné des technologies Microsoft :)

image

La CTP Commerce Server 2009 R2 de décembre est disponible

Commerce Server, CTP, Release No Comments »

Récemment, la team Commerce Server a publié la dernière CTP de Commerce Server 2009 R2.  Comme vous vous en doutez, je me suis empressé de l’installer pour découvrir les nouvelles features et les partager avec vous.

Tout d’abord, vous pouvez dire adieu à vos vieux processeurs 32 bits puisque Commerce Server 2009 R2 ne tournera que sur du 64bits! Idem pour vos windows 2003 ou SQL 2005. La R2 ne supporte que Windows 2008 (R2 ou non) et SQL Server 2008 (R2 ou non).

Mon premier retour est plus que positif! De nombreux points ont été considérablement amélioré. Commençons par l’installation où tout a été repensé. Nous avons maintenant beaucoup plus de souplesse sur la sélection des composants à installer:

image image image

Sur la configuration de Commerce Server, un effort a aussi été fait pour vous guider au mieux. 2 choses à dire ici:

  • Pour le moment, seule la configuration de base est activée. L’option avancée viendra dans une future version
  • Il y a un bug si vous souhaitez utiliser un serveur SQL distant. Pour le moment, seul une installation en mode SQL locale fonctionne via l’outil. Pour contourner le problème, il vous faut lancer vous même la configuration via une ligne de commande et un fichier XML.
%commerce_server_root%CSConfigWizard.exe /s ConfigLaunch.xml
<Configuration>
  <SQL ID="CommerceAdminDB">
    <Server>RemoteSQLServer</Server>
    <Database>MSCS_Admin</Database>
    <WindowsSecurity>yes</WindowsSecurity>
  </SQL>
  <SQL ID="DirectMailerDB">
    <Server>RemoteSQLServer</Server>
    <Database>DirectMailer</Database>
    <WindowsSecurity>yes</WindowsSecurity>
  </SQL>
  <NTService ID="DirectMailerService">
    <UserName>CSService</UserName>
    <Domain>SPGAEL</Domain>
    <Password>password</Password>
  </NTService>
  <VirtualDirectory ID="Publishing" Create="False" />
  <NTService ID="StagingService">
    <UserName>CSService</UserName>
    <Domain>SPGAEL</Domain>
    <Password>password</Password>
  </NTService>
</Configuration>

Concernant la mise en place du template Storefront, rien de particulier à dire pour les habitués de Commerce Server:

  • Méthode manuelle:
    • Unpup
    • Gestion de la sécurité et des utilisateurs
    • Configuration des webservices
    • Deployer les solutions SharePoint
  • Méthode assistée:
    • %commerce_server_root%\SharePointServices\Site\SharePointCommerceServicesConfiguration.exe
      • j’ai eu pas mal de problèmes avec le SharePointCommerceServicesConfiguration dans la version de Commerce Server 2009, qui m’ont fait privilegié la méthode déploiement/configuration manuelle. Sur la R2, le process a été amélioré car j’ai tenté plusieurs déploiement qui ceux sont tous déroulés avec succès :) Encore un bon point pour la R2

Notez au passage, que layout du site n’a pas beaucoup évolué mais propose quelques trucs sympa comme la configuration des catalogues utilisés/channel

image

Attention de nombreuses assemblies ont été modifiées. Consultez bien la documentation de la R2 qui explique cela en détail! Ne vous étonnez donc pas des effets de bord lors des déploiements de votre environnement Commerce Server 2009.

ProductConfiguration / CategoryConfiguration ou les oubliés du développement Commerce Server !

Commerce Server, Développement No Comments »

Ces derniers temps, j’ai été sollicité sur des problématiques d’expertise Commerce Server qui m’ont permis de me rendre compte que 2 classes fondamentales pour tous développements Commerce Server étaient totalement méconnue, j’ai nommé:

Ces deux classes héritent toutes de la classe Microsoft.CommerceServer.Catalog.CatalogItemConfiguration, et elles sont utilisées pour ne charger que les éléments que vous avez besoin d’utiliser. En effet, il n’est pas rare lorsque vous souhaitez afficher une liste de produits, de ne vouloir afficher que certaines propriétés du produit sans avoir à utiliser ses variants, ses catégories parentes, etc., etc….

D’ailleurs, si vous jetez un œil sur l’API via Reflector, vous vous apercevez que la classe CategoryConfiguration ou ProductConfiguration est instanciée si vous n’en spécifiez aucune (ie, le framework choisit pour vous les choses à charger):

image image

Pour illustrer l’importance de ces classes, prenons l’exemple de la récupération d’un produit ou nous n’avons besoin d’afficher que son prix et son descriptif:

  • Sans ProductConfiguration:
Product product = catalogCtx.GetProduct("Adventure Works Catalog", "AW029-03");
Console.WriteLine("Pid: " + product.ProductId +
                  " - " + product.DisplayName +
                  " - " + product.ListPrice);

Grâce au SQL Profiler, nous pouvons récupérer les appels SQL Server et se rendre compte qu’ici 2 procédures stockées sont appelées:

image


  • Via un ProductConfiguration:
ProductConfiguration pdtConf = new ProductConfiguration();
pdtConf.InventoryOptions = new Microsoft.CommerceServer.Inventory.InventoryOptions();
pdtConf.InventoryOptions.FilterBackorderableSkus = false;
pdtConf.InventoryOptions.FilterOutOfStockSkus = false;
pdtConf.InventoryOptions.FilterPreorderableSkus = false;
pdtConf.LoadAncestorCategories = false;
pdtConf.LoadCanonicalCategories = false;
pdtConf.LoadParentCategories = false;
pdtConf.LoadRelatedCategories = false;
pdtConf.LoadRelatedProducts = false;
pdtConf.LoadVariants = false;
Product product = catalogCtx.GetProduct("Adventure Works Catalog",
                                        "AW029-03",
                                        "en-US",
                                        pdtConf);
Console.WriteLine("Pid: " + product.ProductId +
                  " - " + product.DisplayName +
                  " - " + product.ListPrice);

Cette fois-ci nous pouvons constater qu’une seule procédure stockée est appelée (car nous ne remontons pas les variants):

image

Read the rest of this entry »

Trier des propriétés Commerce Server selon des ordres de tri différents

Commerce Server, Développement No Comments »

Pour faire suite à une discussion sur le forum Commerce Server: How could i sort by property1 ASC and property2 DESC in a catalog search?, je me suis aperçu qu’une fonctionnalité de base de Commerce Server était mal comprise.

En effet, il n’est pas rare sur une liste de produits (ou de catégorie) de vouloir trier le résultat sur plusieurs critères et dans des sens différents tout en gardant la fonctionnalité de paging du CatalogSearch.

Ravi proposait pour solutionner cela d’utiliser un dataview. Le problème est que le dataview ne peut trier que sur le résultat de la recherche! Quid donc si vous avez plusieurs pages? Sans compter les piètres performances d’un dataview.

Pour solutionner cela, il suffit simplement de mettre le nom de votre propriété entre crochet [] puis de coller à la suite l’ordre du tri ex:

CatalogSearch catalogSearch = catalogContext.GetCatalogSearch();
catalogSearch.CatalogNames = "MyCatalog";
catalogSearch.SearchOptions.ClassTypes = CatalogClassTypes.ProductFamilyClass;
catalogSearch.SearchOptions.PropertiesToReturn = "ProductId, cy_list_price";
catalogSearch.CategoriesClause = "CategoryName = 'CatId";
catalogSearch.SqlWhereClause = "Display = 'OK'";
catalogSearch.SearchOptions.SortProperty = "[ProductId]ASC, [cy_list_price]DESC";

Attention, il est important qu’il n’y ait pas d’espace entre le crochet fermant et l’ordre de tri.

Pour info, notre expert en développement Commerce Server, Anoir, avait déjà écrit un article à ce sujet: Recherche d’un produit avec plusieurs colonnes de tris différenciés sur le blog d’Altima.

Rencontrez les experts Commerce Server au TechEd EMEA de Berlin

Commerce Server, Evénement Microsoft No Comments »

image

Je serais présent du 9 au 13 novembre 2009 à Berlin pour les tech-ed EMEA. Durant cette semaine, vous pourrez me rencontrer ainsi que l’équipe Commerce Server aux Technical Learning Center (TLC). Le TLC est l’endroit où vous pourrez rencontrer les experts de toutes les technologies Microsoft, mais aussi de pouvoir “jouer” et dérouler les démos produits.

Durant ces tech-ed, une session Commerce Server est au programme. Elle aura lieu le 10 novembre 2009 (pour plus d’information: Build Custom E-Commerce Solutions Faster and Easier with Microsoft Commerce Server 2009 (OFS06-IS)

En espérant vous y croiser nombreux :)

Le Data Warehouse & les analytics reports de Commerce Server

Analytics, Commerce Server, Reporting 1 Comment »

Commerce Server offre dans sa version entreprise une suite analytics basée sur un Data Warehouse made by Commerce Server.

Dans ce post, je vais donc m’atteler à vous expliquer comment paramétrer tout cela et vous donner un aperçu des différents rapports.

Avant de démarrer votre installation, il vous faut avoir configurer et installer:

  • SQL Server Analysis Services (SSAS)
  • SQL Server Reporting Services (SSRS)
  • SQL Server Integration Services (SSIS)

Puis vérifié ces pré requis:

Nous allons donc maintenant “dépuper” le fichier de ressource du Data Warehouse (le fichier se trouve sur %commerce_server_root%\Pup Packages\DW.pup). Cette ressource va créer la base de données qui servira de référentiel pour notre cube.

Attention: si vous installez votre Data Warehouse dans une autre langue que l’anglais vous devez impérativement modifier le fichier %commerce_server_root%\Data\CommerceOlap.xmla à la ligne 9679, en remplaçant le texte “Everyone” par “Tout le monde” pour les francophones.

<Roles>
  <Role>
    <ID>All Users</ID>
    <Name>All Users</Name>
    <Members>
      <Member>
        <Name _loc="locData">EveryoneTout le monde</Name>
      </Member>
    </Members>
  </Role>
</Roles>

Commerce Server - Add Data Warehouse ressourece: Commerce Server Manager Commerce Server - Add Data Warehouse ressourece: Open DW.Pup Commerce Server - Add Data Warehouse ressourece: Select the Data Warehouse ressource Commerce Server - Add Data Warehouse ressourece: Use a new ressource Commerce Server - Add Data Warehouse ressourece: Confirm the parameter Commerce Server - Add Data Warehouse ressourece: rocking ;) Commerce Server - Add Data Warehouse ressourece: give a name to the ressource Commerce Server - Add Data Warehouse ressourece: still rocking Commerce Server - Add Data Warehouse ressourece: yeah Commerce Server - Add Data Warehouse ressourece: confirmation Commerce Server - Add Data Warehouse ressourece: Proof :)

Read the rest of this entry »

Problème avec la planification de Commerce Server Staging

Commerce Server, Staging No Comments »

J’ai découvert un petit bug, lors de la mise en place de la planification d’un projet “Business Data” avec Commerce Server Staging (CSS). Ce bug se déclenche lors de la création par CSS de la tâche planifiée windows.

Pour planifier mon projet de staging, j’ai utilisé la mmc de CSS:

Commerce Server Staging - Planification d'un projet

Une fois cet écran validé, CSS va automatiquement créer (ou mettre à jour), une tâche planifiée windows:

Planificateur de tâches

Le problème est que sur cette création ou modification de la planification, les paramètres de bases de la tâches sont incorrect. si vous éditez la tâche planifiée, vous verrez que l’appel au programme est incorrect:

Propriété d'une tâche planifiée

L’appel au programme n’est pas entouré de guillemet (“). Ce qui fait que la tâche va essayer d’exécuter “c:\program” avec comme argument “Files (x86)\Microsoft Commerce Server 2007\Staging\Bin\CSS.exe”…

Pour remédier à cela, il vous suffit donc tout simplement de mettre les guillemets smile_regular, soit:

c:\program Files (x86)\Microsoft Commerce Server 2007\Staging\Bin\CSS.exe

Pour terminer et pour information, votre tâche va automatiquement s’exécuter sous le compte par défaut du CSS. si vous souhaitez le modifier, vous devez le faire dans la configuration de votre tâche planifiée. Dans les 2 cas, vérifiez que votre compte à les privilèges d’ouvrir une session en tant que tâche.

Statégie de sécurité locale 

Attention: Sur l’événement de création ou modification, la tâche est recréée complètement. Pensez donc à bien vérifier la configuration de votre tâche planifiée à chaque modification de la planification de votre projet.

Camaieu boutique – Prêt à porter féminin et vêtement mode en ligne

Commerce Server, Réalisation No Comments »

La team Commerce Server d’Altima est heureuse de vous annoncer la sortie du nouveau site eCommerce de Camaieu.

A vos cartes bleues !

Retrouvez aussi Camaieu sur:

clip_image002

Technorati Tags:

WP Theme & Icons by N.Design Studio
Entries RSS Comments RSS Log in
Creative Commons License