<?xml version="1.0" encoding="ISO-8859-1"?>

<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
	<channel>
		<title>Forum du club des développeurs et IT Pro - Blogs - Elros - Bienvenue dans le monde de la Business Intelligence par Elros</title>
		<link>https://www.developpez.net/forums/blogs/300051-elros/</link>
		<description>Developpez.com, le Club des Développeurs et IT Pro</description>
		<language>fr</language>
		<lastBuildDate>Mon, 28 Sep 2026 22:47:48 GMT</lastBuildDate>
		<generator>vBulletin</generator>
		<ttl>15</ttl>
		<image>
			<url>https://forum.developpez.be/images/misc/rss.jpg</url>
			<title>Forum du club des développeurs et IT Pro - Blogs - Elros - Bienvenue dans le monde de la Business Intelligence par Elros</title>
			<link>https://www.developpez.net/forums/blogs/300051-elros/</link>
		</image>
		<item>
			<title>Les traductions dans SSAS avec Visual Studio</title>
			<link>https://www.developpez.net/forums/blogs/300051-elros/b6145/traductions-ssas-visual-studio/</link>
			<pubDate>Thu, 13 Sep 2018 08:59:58 GMT</pubDate>
			<description>Hello World ! 
...</description>
			<content:encoded><![CDATA[<blockquote class="blogcontent restore">Hello World !<br />
<br />
Dernièrement, j'ai rencontré des problèmes (existant potentiellement avec les versions précédentes) avec la mise en place des traductions dans SSAS (SQL server 2016).<br />
Après une migration sur SQL Server 2016 via Visual Studio 2017 (<a href="https://www.developpez.net/forums/blogs/300051-elros/b6011/apres-crashs-ssis-on-se-confronte-ssas-visual-studio-2017-version-15-xx/" target="_blank">un billet précédent</a> raconte les problèmes rencontrés), un nouveau besoin métier de cube multidimensionnelle est arrivé.<br />
<br />
Une fois le cube développé et testé avec SSMS (Management Studio), on passe aux traductions pour que les différents utilisateurs soient heureux de l'exploiter avec Excel et Power BI.<br />
<br />
<div style="text-align: center;"><img src="https://www.developpez.net/forums/attachments/p411213d1536827142/bases-donnees/postgresql/requetes/mysql-vs-postgresql-resultat-tres-bizarre-insertion/capture0.jpg/" border="0" alt="Nom : Capture0.JPG
Affichages : 339
Taille : 53,1 Ko"  style="float: CONFIG" /></div><br />
<br />
L'intégration des traductions dans SSAS est une véritable plaie, car par défaut, on doit les ajouter manuellement.<br />
Lorsque j'ai terminé de traduire mon cube, je déploie mes modifications et je teste avec Excel...<br />
<br />
<div style="text-align: center;"><img src="https://www.developpez.net/forums/attachments/p411215d1536827372/bases-donnees/postgresql/requetes/mysql-vs-postgresql-resultat-tres-bizarre-insertion/capture1.jpg/" border="0" alt="Nom : Capture1.JPG
Affichages : 362
Taille : 39,3 Ko"  style="float: CONFIG" /></div><br />
Impossible d'aller plus loin que la fenêtre ci-dessus ! Je ne peux pas ouvrir et naviguer sur mon cube dans Excel !<br />
Je décide de le tester avec succès dans différents outils tels que SSMS, Power BI, Power Pivot (Excel), etc. :weird:<br />
<br />
Je tente de modifier le provider (ex : MSOLAP.7) dans les fichiers de connexions (.odc) exploité par Excel mais, cela ne résout pas mon problème.<br />
<br />
<div class="bbcode_container">
	<table width="100%" border="0" cellspacing="0" cellpadding="0"><tr>
	<td style="border: 0; padding: 0; text-align: left">Code xml :</td>
	<td style="border: 0; padding: 0; text-align: right"><a href="#" onclick="return ano_selectionnerCode(this);">Sélectionner tout</a> -
	<a href="#" onclick="return ano_etendreCode(this);">Visualiser dans une fenêtre à part</a></td></tr></table>
	<pre class="bbcode_code" style="height:96px;"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="26"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br /></div></td><td valign="top"><pre style="margin: 0"><span style="color: #009900;"><span style="color: #0000ff;">&lt;odc:Connection</span> <span style="color: #339933;">odc:Type</span>=<span style="color: #FF0000;">&quot;OLEDB&quot;</span><span style="color: #0000ff;">&gt;</span></span>
   <span style="color: #009900;"><span style="color: #0000ff;">&lt;odc:ConnectionString<span style="color: #0000ff;">&gt;</span></span></span>Provider=MSOLAP.7;Integrated Security=SSPI;Persist Security Info=True;Data Source=devbi-01;Update Isolation Level=2;Initial Catalog=BI-SSAS<span style="color: #009900;"><span style="color: #0000ff;">&lt;/odc:ConnectionString<span style="color: #0000ff;">&gt;</span></span></span>
   <span style="color: #009900;"><span style="color: #0000ff;">&lt;odc:CommandType<span style="color: #0000ff;">&gt;</span></span></span>Cube<span style="color: #009900;"><span style="color: #0000ff;">&lt;/odc:CommandType<span style="color: #0000ff;">&gt;</span></span></span>
   <span style="color: #009900;"><span style="color: #0000ff;">&lt;odc:CommandText<span style="color: #0000ff;">&gt;</span></span></span>SALE<span style="color: #009900;"><span style="color: #0000ff;">&lt;/odc:CommandText<span style="color: #0000ff;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #0000ff;">&lt;/odc:Connection<span style="color: #0000ff;">&gt;</span></span></span></pre></td></tr></table></pre>
</div><br />
Je décide de supprimer langue par langue et constate que la langue française est la source de mon problème.<br />
Ma première pensée se dirige vers des accents et caractères spéciaux. Mais que nenni, une fois enlevée le problème persiste ! :(<br />
<br />
Pour réduire les sources de problème, je supprime par groupe des traductions d'indicateurs, dimensions, membres calculés, etc.<br />
Je finis par isoler un groupement d'indicateurs dont un (que l'on voit dans la première capture) masqué, sans traduction, mais avec le répertoire traduit.<br />
<br />
<b>En effet, un indicateur non traduit, masqué ou non, avec une traduction du répertoire, ne fonctionnera pas dans Excel. 8O</b><br />
<br />
Il serait appréciable que les équipes de développement de Microsoft rendent la gestion des traductions moins fastidieuse. Par exemple, l'insertion des traductions avec un fichier CSV ou directement connecté sur une table d'une base de données.<br />
<br />
Si vous avez des techniques, outils pour faciliter la gestion des traductions, n'hésitez pas à le partager en commentaire.<br />
<br />
Elros</blockquote>

]]></content:encoded>
			<dc:creator>Elros</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/blogs/300051-elros/b6145/traductions-ssas-visual-studio/</guid>
		</item>
		<item>
			<title>Après les crashs de SSIS, on se confronte à SSAS et Visual studio 2017 version 15.XX</title>
			<link>https://www.developpez.net/forums/blogs/300051-elros/b6011/apres-crashs-ssis-on-se-confronte-ssas-visual-studio-2017-version-15-xx/</link>
			<pubDate>Fri, 24 Aug 2018 09:46:47 GMT</pubDate>
			<description>Hello World ! 
 
Après les...</description>
			<content:encoded><![CDATA[<blockquote class="blogcontent restore">Hello World !<br />
<br />
Après les crashs de SSIS racontés dans <a href="https://www.developpez.net/forums/blogs/300051-elros/b6002/solution-ssis-visual-studio-2017-version-15-xx/" target="_blank">un billet précédent</a>, on se confronte à SSAS et Visual studio 2017 version 15.XX.<br />
<br />
J'avais un projet SSAS développé avec Visual Studio 2012 sur du SQL Server 2012 (version 11) et 2014 (version 12) qui fonctionnait très bien. Puis, nous avons voulu passer sur SQL Server 2016 (version 13) avec Visual Studio 2017 (version 15.XX).<br />
<br />
Je fais un premier test d'ouverture de projet = projet non reconnu ! :aie:<br />
Pas de panique, il manquait une extension que l'on ajoute avec Visual Studio : <a href="https://marketplace.visualstudio.com/items?itemName=ProBITools.MicrosoftAnalysisServicesModelingProjects" target="_blank">Microsoft Analysis Services Projects</a> (actuellement en version 1.32)<br />
Une fois l'extension installée, le projet s'ouvre, on peut voir les différents cubes, dimensions ,etc. Je déploie le projet SSAS sur notre nouveau environnement de développement et le projet fonctionne sans aucun problème !<br />
<br />
<b>Fin !</b> :roll:<br />
<br />
Enfin presque ! <br />
<br />
En naviguant dans les différents onglets, on constate que les onglets « Calculs », « Indicateurs de performance clés » et « actions » ne fonctionnent plus. 8O<br />
Dès que l'on clique sur l'un de ces onglets, Visual Studio 2017 freeze et plante. Seule solution, CTRL + Shift + Echap et on arrête le processus parti dans les choux.<br />
En testant la même technique que dans <a href="https://www.developpez.net/forums/blogs/300051-elros/b6002/solution-ssis-visual-studio-2017-version-15-xx/" target="_blank">mon billet sur SSIS</a>, je me rends compte que le problème est toujours présent. :aie:<br />
<br />
En fouillant la toile et la <a href="https://developercommunity.visualstudio.com/search.html?f=&amp;type=question+OR+problem+OR+idea&amp;type=question+OR+problem+OR+idea&amp;c=&amp;redirect=search%2Fsearch&amp;sort=relevance&amp;q=SSAS+Calculation+tab+crash" target="_blank">communauté de développeur de Visual Studio</a>, j'arrive à trouver une solution inattendue.<br />
<br />
Au final, en paramétrant dans Visual Studio le projet SSAS les informations sur le serveur de déploiement et en déployant mon projet SSAS, le problème disparaît comme par magie. :koi:<br />
<br />
Je n'ai pas encore testé la partie SSRS mais, je sens qu'il y aura un prochain billet ASAP :P<br />
<br />
Détails des versions de SQL Server : <a href="https://fr.wikipedia.org/wiki/Histoire_de_Microsoft_SQL_Server" target="_blank">https://fr.wikipedia.org/wiki/Histoi...oft_SQL_Server</a></blockquote>

]]></content:encoded>
			<dc:creator>Elros</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/blogs/300051-elros/b6011/apres-crashs-ssis-on-se-confronte-ssas-visual-studio-2017-version-15-xx/</guid>
		</item>
		<item>
			<title>Solution SSIS et Visual studio 2017 version 15.XX</title>
			<link>https://www.developpez.net/forums/blogs/300051-elros/b6002/solution-ssis-visual-studio-2017-version-15-xx/</link>
			<pubDate>Thu, 23 Aug 2018 08:44:45 GMT</pubDate>
			<description>Hello World, 
 
Si comme moi,...</description>
			<content:encoded><![CDATA[<blockquote class="blogcontent restore">Hello World,<br />
<br />
Si comme moi, vous souhaitez travailler avec la nouvelle version de Visual Studio 2017 version 15.8 (15.6 et 15.7 même passion, même problème), vous risquez d'avoir des erreurs avec SSIS.<br />
Par exemple, le projet non reconnu, l'ouverture de package qui fait planter Visual Studio et surement d'autres problèmes.<br />
<br />
En fouillant et testant plusieurs astuces trouvées sur la toile, la meilleure est de créer une nouvelle solution en important le fichier .ispac<br />
On peut récupérer ce fichier de plusieurs façons. Soit, à la suite d'un build de votre projet soit, en exportant votre projet via Management Studio.<br />
<br />
C'est un problème connu que l'on retrouve sur la <a href="https://developercommunity.visualstudio.com/search.html?f=&amp;type=question+OR+problem+OR+idea&amp;type=question+OR+problem+OR+idea&amp;c=&amp;redirect=search%2Fsearch&amp;sort=relevance&amp;q=+Visual+Studio+crashes+opening+SSIS+package" target="_blank">communauté développeur de Visual Studio</a> .<br />
<br />
Bonne chance avec Visual Studio 2017 :aie:<br />
<br />
Elros</blockquote>

]]></content:encoded>
			<dc:creator>Elros</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/blogs/300051-elros/b6002/solution-ssis-visual-studio-2017-version-15-xx/</guid>
		</item>
		<item>
			<title>Paramétrer un Lookup pour alléger les données mises en cache</title>
			<link>https://www.developpez.net/forums/blogs/300051-elros/b1910/parametrer-lookup-alleger-donnees-mises-cache/</link>
			<pubDate>Tue, 03 Jan 2017 16:21:12 GMT</pubDate>
			<description>Hello, 
 
Afin de compléter...</description>
			<content:encoded><![CDATA[<blockquote class="blogcontent restore">Hello,<br />
<br />
Afin de compléter l'un de mes anciens billets (<a href="http://www.developpez.net/forums/blogs/300051-elros/b489/ssis-lookup-commande-sql-parametres-appel-procedure-etc/" target="_blank">SSIS : Lookup, Commande SQL avec paramètres et appel de procédure, etc.</a>), je vais vous expliquer plus en détail comment gagner du temps et des ressources sur SSIS.<br />
<br />
Nous allons créer un flux SSIS permettant de charger les n métiers d'un service. On pourrait faire une boucle pour charger tous les métiers de chaque service mais, on va passer par un paramètre projet.<br />
<br />
Pour cela, nous ajoutons un nouveau paramètre &quot;ServiceID&quot; dans notre fichier : projet.params<br />
<br />
<div style="text-align: center;"><img src="https://www.developpez.net/forums/attachments/p231899d1483460883/c-cpp/c/fonction-retour-chaine-caracteres/ssis-projetparams-1.png/" border="0" alt="Nom : SSIS-ProjetParams-1.png
Affichages : 12093
Taille : 14,3 Ko"  style="float: CONFIG" /></div><br />
<br />
Une fois notre paramètre créé, avec le service numéro 3 d'affecté, on peut créer notre package. <br />
Dans la partie flux de contrôle, nous allons rendre paramétrable notre flux de données. Pour cela, il faut sélectionner la tâche de flux de données &quot;METIER&quot;, trouver dans les propriétés la partie &quot;Expressions&quot; et cliquer sur les trois points.<br />
<br />
<div style="text-align: center;"><img src="https://www.developpez.net/forums/attachments/p231851d1483458176/c-cpp/c/fonction-retour-chaine-caracteres/ssis-paramcontrolflow-0.png/" border="0" alt="Nom : SSIS-ParamControlFlow-0.png
Affichages : 8064
Taille : 30,6 Ko"  style="float: CONFIG" /></div><br />
<br />
Nous avons une première fenêtre où l'on choisit notre &quot;Lookup&quot; à paramétrer avec la propriété &quot;SqlCommand&quot;. Puis, cliquer sur les trois points.<br />
<br />
<div style="text-align: center;"><img src="https://www.developpez.net/forums/attachments/p231860d1483458477/c-cpp/c/fonction-retour-chaine-caracteres/ssis-paramcontrolflow-2.png/" border="0" alt="Nom : SSIS-ParamControlFlow-2.png
Affichages : 7085
Taille : 10,2 Ko"  style="float: CONFIG" /></div><br />
<br />
Une nouvelle fenêtre s'ouvre pour nous permettre de créer la requête paramétrée.<br />
On peut retrouver notre paramètre projet &quot;ServiceID&quot; préfixé avec &quot;$Project::&quot;, cela montre que c'est paramètre projet.<br />
<br />
On crée la requête SQL en passant notre paramètre. L'éditeur d'expression attend du texte, on est obligé de convertir en chaîne de caractère notre paramètre qui initialement est un entier.<br />
Nous pouvons évaluer l'expression pour vérifier que la requête est cohérente.<br />
<br />
<div style="text-align: center;"><img src="https://www.developpez.net/forums/attachments/p231863d1483458556/c-cpp/c/fonction-retour-chaine-caracteres/ssis-paramcontrolflow-3.png/" border="0" alt="Nom : SSIS-ParamControlFlow-3.png
Affichages : 7462
Taille : 32,7 Ko"  style="float: CONFIG" /></div><br />
<br />
Une fois validé, nous avons un petit &quot;Fx&quot; qui apparaît au coin de notre tâche. Cela signifie que notre tâche est paramétrée.<br />
<br />
<div style="text-align: center;"><img src="https://www.developpez.net/forums/attachments/p231875d1483459267/c-cpp/c/fonction-retour-chaine-caracteres/ssis-paramcontrolflow-1.png/" border="0" alt="Nom : SSIS-ParamControlFlow-1.png
Affichages : 6680
Taille : 7,4 Ko"  style="float: CONFIG" /></div><br />
<br />
Dans la partie flux de données, nous avons un petit triangle rouge/rose qui apparaît sur le &quot;Lookup&quot;. <br />
Initialement, ce triangle ne s'affiche pas mais, pour vous faciliter la vie je vous conseil d'utiliser un &quot;Add-in&quot; que je présente ici : <a href="http://www.developpez.net/forums/blogs/300051-elros/b1897/bids-helper-add-in-visual-studio/" target="_blank">BIDS Helper - Add-in Visual Studio</a><br />
<br />
<div style="text-align: center;"><img src="https://www.developpez.net/forums/attachments/p231887d1483459654/c-cpp/c/fonction-retour-chaine-caracteres/ssis-paramdataflow-1.png/" border="0" alt="Nom : SSIS-ParamDataFlow-1.png
Affichages : 7239
Taille : 25,9 Ko"  style="float: CONFIG" /></div><br />
<br />
On vérifie que la requête jouée dans le &quot;Lookup&quot; correspond à notre paramètre. Nous pouvons constater que le &quot;ServiceID&quot; récupère bien la valeur 3 de notre paramètre.<br />
<br />
<div style="text-align: center;"><img src="https://www.developpez.net/forums/attachments/p231893d1483459831/c-cpp/c/fonction-retour-chaine-caracteres/ssis-paramdataflow-2.png/" border="0" alt="Nom : SSIS-ParamDataFlow-2.png
Affichages : 7104
Taille : 27,0 Ko"  style="float: CONFIG" /></div><br />
Bon test :wink:</blockquote>

]]></content:encoded>
			<dc:creator>Elros</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/blogs/300051-elros/b1910/parametrer-lookup-alleger-donnees-mises-cache/</guid>
		</item>
		<item>
			<title>BIDS Helper - Add-in Visual Studio</title>
			<link>https://www.developpez.net/forums/blogs/300051-elros/b1897/bids-helper-add-in-visual-studio/</link>
			<pubDate>Tue, 03 Jan 2017 09:11:55 GMT</pubDate>
			<description>Hello, 
 
Je viens vous...</description>
			<content:encoded><![CDATA[<blockquote class="blogcontent restore">Hello,<br />
<br />
Je viens vous parlez d'un petit &quot;Add-in&quot; bien pratique que j'utilise depuis un bon moment sur les projets MS BI sous Visual Studio.<br />
<br />
<img src="https://www.developpez.net/forums/attachments/p231706d1483374324/c-cpp/outils-c-cpp/cppbuilder/installer-composants/bidshelpermontage.gif/" border="0" alt="Nom : BIDSHelperMontage.gif
Affichages : 1758
Taille : 95,4 Ko"  style="float: CONFIG" /><br />
<br />
Cet add-in permet d'installer une multitude de petits outils : <br />
<br />
<b><u>Analysis Services Multidimensional : </u></b><br />
<ul><li style="">Aggregation Manager</li><li style="">Calculation Helpers</li><li style="">Column Usage Reports</li><li style="">Delete Unused Aggregations</li><li style="">Delete Unused Indexes</li><li style="">Deploy Aggregation Designs</li><li style="">Deploy MDX Script</li><li style="">Deploy Perspectives</li><li style="">Dimension Data Type Discrepancy Check</li><li style="">Dimension Health Check</li><li style="">Dimension Optimization Report</li><li style="">Duplicate Role</li><li style="">Many-to-Many Matrix Compression</li><li style="">Measure Group Health Check</li><li style="">Non-Default Properties Report</li><li style="">Parent-Child Dimension Naturalizer</li><li style="">Printer Friendly Aggregations</li><li style="">Printer Friendly Dimension Usage</li><li style="">Roles Report</li><li style="">Similar Aggregations</li><li style="">Smart Diff</li><li style="">Show Extra Properties</li><li style="">Sync Descriptions</li><li style="">Test Aggregation Performance</li><li style="">Tri-State Perspectives</li><li style="">Update Estimated Counts</li><li style="">Validate Aggregations</li><li style="">Visualize Attribute Lattice</li></ul><br />
<br />
<br />
<b><u>Analysis Services Tabular</u></b><br />
<ul><li style="">Printer Friendly Dimension Usage</li><li style="">Roles Report</li><li style="">Smart Diff</li><li style="">Tabular Actions Editor</li><li style="">Tabular Display Folders</li><li style="">Tabular HideMemberIf</li><li style="">Tabular Pre-Build</li><li style="">Tabular Sync Descriptions</li><li style="">Tabular Translations Editor</li><li style="">Tabular Annotation Workaround</li><li style="">Unused Columns Report</li></ul><br />
<br />
<br />
<b><u>Integration Services</u></b><br />
<ul><li style="">Batch Property Update</li><li style="">Biml Package Generator</li><li style="">Create Fixed Width Columns</li><li style="">Deploy SSIS Packages</li><li style="">Design Warnings</li><li style="">dtsConfig File Formatter</li><li style="">Expression and Configuration Highlighter</li><li style="">Expression List</li><li style="">Fix Relative Paths</li><li style="">Non-Default Properties Report</li><li style="">Parameter Window Extensions</li><li style="">Performance Visualization</li><li style="">Pipeline Component Performance Breakdown</li><li style="">Reset GUIDs</li><li style="">Smart Diff</li><li style="">Sort Project Files</li><li style="">Sortable Package Properties Report</li><li style="">Variables Window Extensions</li></ul><br />
<br />
<br />
<b><u>Reporting Services</u></b><br />
<ul><li style="">Dataset Usage Reports</li><li style="">Delete Dataset Cache Files</li><li style="">Smart Diff</li></ul><br />
<br />
<br />
<b><u>General</u></b><br />
<ul><li style="">Enable/Disable features</li><li style="">Preferences</li><li style="">Version Notification</li></ul><br />
<br />
<br />
Voici le lien de l'outil : <a href="https://bidshelper.codeplex.com/" target="_blank">https://bidshelper.codeplex.com/</a><br />
Et le lien vers tous les outils : <a href="https://bidshelper.codeplex.com/documentation?referringTitle=Home" target="_blank">https://bidshelper.codeplex.com/docu...ringTitle=Home</a></blockquote>

]]></content:encoded>
			<dc:creator>Elros</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/blogs/300051-elros/b1897/bids-helper-add-in-visual-studio/</guid>
		</item>
		<item>
			<title>Une astuce pour convertir plusieurs entiers (année, mois, jour) en date</title>
			<link>https://www.developpez.net/forums/blogs/300051-elros/b677/astuce-convertir-plusieurs-entiers-annee-mois-jour-date/</link>
			<pubDate>Mon, 10 Aug 2015 12:02:04 GMT</pubDate>
			<description>Voici une astuce pour...</description>
			<content:encoded><![CDATA[<blockquote class="blogcontent restore">Voici une astuce pour convertir une date découpée en plusieurs entiers.<br />
<br />
<div class="bbcode_container">
	<table width="100%" border="0" cellspacing="0" cellpadding="0"><tr>
	<td style="border: 0; padding: 0; text-align: left">Code  :</td>
	<td style="border: 0; padding: 0; text-align: right"><a href="#" onclick="return ano_selectionnerCode(this);">Sélectionner tout</a> -
	<a href="#" onclick="return ano_etendreCode(this);">Visualiser dans une fenêtre à part</a></td></tr></table>
	<pre class="bbcode_code" style="height:36px;">(DT_DBDATE)(DT_STR,10,1252)(((DT_STR,4,1252)Year) + &quot;/&quot; + ((DT_STR,2,1252)Month) + &quot;/&quot; + ((DT_STR,2,1252)Day))</pre>
</div>Je converti au format texte les champs année (sur 4 caractères), mois (sur 2 caractères) et jour (sur 2 caractères) puis j'ajoute les &quot;/&quot; et enfin je converti l'ensemble en date.<br />
Pour les mois et jours sur 1 caractère, de 1 à 9, ils seront forcés sur deux caractères donc 01, 02, 03, etc.<br />
<br />
Et une capture pour rendre les choses plus visuels ;-)<br />
<br />
<img src="https://www.developpez.net/forums/attachments/p185047d1439207856/environnements-developpement/delphi/edi/kylix-debutant-kylix-difference-entre-editions-d/cast_num_todate.png/" border="0" alt="Nom : Cast_Num_toDate.png
Affichages : 322
Taille : 23,6 Ko"  style="float: CONFIG" /><br />
<br />
Elros</blockquote>

]]></content:encoded>
			<dc:creator>Elros</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/blogs/300051-elros/b677/astuce-convertir-plusieurs-entiers-annee-mois-jour-date/</guid>
		</item>
		<item>
			<title>Unpivot - Transposer des lignes</title>
			<link>https://www.developpez.net/forums/blogs/300051-elros/b616/unpivot-transposer-lignes/</link>
			<pubDate>Fri, 10 Jul 2015 10:50:41 GMT</pubDate>
			<description>---Citation (Envoyé par...</description>
			<content:encoded><![CDATA[<blockquote class="blogcontent restore"><div class="bbcode_container">
	<div class="bbcode_quote">
		<div class="quote_container">
			<div class="bbcode_quote_container"></div>
			
				<div class="bbcode_postedby">
					<img src="https://forum.developpez.be/images/misc/quote_icon.png" alt="Citation" /> Envoyé par <strong>Elros</strong>
					<a href="showthread.php?p=8315638#post8315638" rel="nofollow"><img class="inlineimg" src="https://forum.developpez.be/images/buttons/viewpost-right.png" alt="Voir le message" /></a>
				</div>
				<div class="message">Je sais que le sujet est clos. Mais, je veux quand même te montrer que la tâche Unpivot n'est pas si compliqué que ça.<br />
<br />
<u>En csv d'entrée j'ai ceci :</u><br />
<br />
<div class="bbcode_container">
	<table width="100%" border="0" cellspacing="0" cellpadding="0"><tr>
	<td style="border: 0; padding: 0; text-align: left">Code  :</td>
	<td style="border: 0; padding: 0; text-align: right"><a href="#" onclick="return ano_selectionnerCode(this);">Sélectionner tout</a> -
	<a href="#" onclick="return ano_etendreCode(this);">Visualiser dans une fenêtre à part</a></td></tr></table>
	<pre class="bbcode_code" style="height:72px;"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="26"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br /></div></td><td valign="top"><pre style="margin: 0">num_contrat;nom_enfant1;prenom_enfant1;nom_enfant2;prenom_enfant2;nom_enfant3;prenom_enfant3;nom_enfant4;prenom_enfant4
1000;ROGER;Prof;ROGER;Atchoum;ROGER;Dormeur;ROGER;Grincheux
2000;GEREAUD;Joyeux;GEREAUD;Timide;GEREAUD;Simplet;;</pre></td></tr></table></pre>
</div><u>En csv de sortie tu souhaites :</u><br />
<br />
<div class="bbcode_container">
	<table width="100%" border="0" cellspacing="0" cellpadding="0"><tr>
	<td style="border: 0; padding: 0; text-align: left">Code  :</td>
	<td style="border: 0; padding: 0; text-align: right"><a href="#" onclick="return ano_selectionnerCode(this);">Sélectionner tout</a> -
	<a href="#" onclick="return ano_etendreCode(this);">Visualiser dans une fenêtre à part</a></td></tr></table>
	<pre class="bbcode_code" style="height:144px;"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="26"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br /></div></td><td valign="top"><pre style="margin: 0">pivot_key;num_contrat;nom_enfant;prenom_enfant
1;1000;ROGER;Prof
2;1000;ROGER;Atchoum
3;1000;ROGER;Dormeur
4;1000;ROGER;Grincheux
1;2000;GEREAUD;Joyeux
2;2000;GEREAUD;Timide
3;2000;GEREAUD;Simplet
4;2000;;</pre></td></tr></table></pre>
</div>La ligne <b>&quot; 4;2000;; &quot;</b> est évidemment filtrable.<br />
<br />
<br />
<u>Voici à quoi ressemble mon flux :</u><br />
<br />
<img src="https://www.developpez.net/forums/attachments/p182772d1436525305/c-cpp/c/probleme-chaines-caractere/capture.png/" border="0" alt="Nom : Capture.PNG
Affichages : 161
Taille : 10,6 Ko"  style="float: CONFIG" /><br />
<u><br />
et à l'intérieur du Unpivot :</u><br />
<br />
<img src="https://www.developpez.net/forums/attachments/p182773d1436525305/c-cpp/c/probleme-chaines-caractere/capture2.png/" border="0" alt="Nom : Capture2.PNG
Affichages : 167
Taille : 30,4 Ko"  style="float: CONFIG" /><br />
<br />
Voila ce n'est pas si compliqué :-D<br />
<br />
Elros</div>
			
		</div>
	</div>
</div></blockquote>

]]></content:encoded>
			<dc:creator>Elros</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/blogs/300051-elros/b616/unpivot-transposer-lignes/</guid>
		</item>
		<item>
			<title>SSIS : Lookup, Commande SQL avec paramètres et appel de procédure, etc.</title>
			<link>https://www.developpez.net/forums/blogs/300051-elros/b489/ssis-lookup-commande-sql-parametres-appel-procedure-etc/</link>
			<pubDate>Thu, 07 May 2015 15:11:00 GMT</pubDate>
			<description><![CDATA[Bonjour, 
 
Lorsque l'on...]]></description>
			<content:encoded><![CDATA[<blockquote class="blogcontent restore">Bonjour,<br />
<br />
Lorsque l'on souhaite rendre entièrement paramétrable et utiliser une procédure stockée dans une tâche SQL, un Lookup, une command OLE DB, etc. mais que l'on a un problème pour &quot;mapper&quot; les colonnes il y'a une astuce toute bête.<br />
Il suffit simplement de déclarer une sortie comme dans l'exemple ci-dessous :<br />
<br />
<div class="bbcode_container">
	<table width="100%" border="0" cellspacing="0" cellpadding="0"><tr>
	<td style="border: 0; padding: 0; text-align: left">Code  :</td>
	<td style="border: 0; padding: 0; text-align: right"><a href="#" onclick="return ano_selectionnerCode(this);">Sélectionner tout</a> -
	<a href="#" onclick="return ano_etendreCode(this);">Visualiser dans une fenêtre à part</a></td></tr></table>
	<pre class="bbcode_code" style="height:192px;"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="33"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br /></div></td><td valign="top"><pre style="margin: 0">DECLARE @SQLString nvarchar(500);

SET @SQLString = N'SELECT F.VEH_ID, F.MONTANT_HT
			       FROM [STG].[FACTURE] F';

EXECUTE sp_executesql  @SQLString
WITH RESULT SETS
(
  (
	VEH_ID INT,
	MONTANT_HT numeric(11,3)
  )
);</pre></td></tr></table></pre>
</div>Cette méthode vous permettra après exécution (EXECUTE ) d'une commande (requête, procédure stockée) de déclarer le résultat retourné (WITH RESULT SETS). <br />
Et vous aurez enfin le droit d'aller dans la partie mapping sans qu'une erreur vienne vous embêter.<br />
<br />
Elros</blockquote>

]]></content:encoded>
			<dc:creator>Elros</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/blogs/300051-elros/b489/ssis-lookup-commande-sql-parametres-appel-procedure-etc/</guid>
		</item>
		<item>
			<title><![CDATA[Comment gérer dans SSIS le mode d'alimentation Insert or Update ?]]></title>
			<link>https://www.developpez.net/forums/blogs/300051-elros/b427/gerer-ssis-mode-d-alimentation-insert-or-update/</link>
			<pubDate>Tue, 07 Apr 2015 13:40:00 GMT</pubDate>
			<description>Bonjour, 
 
Sur SSIS, il...</description>
			<content:encoded><![CDATA[<blockquote class="blogcontent restore">Bonjour,<br />
<br />
Sur SSIS, il n'existe pas de composant prêt à l'emploi gérant l'alimentation en mode Insert or Update. Il existe plusieurs astuces pour régler ce problème dont celle que je vais présenter ci-dessous.<br />
<br />
Voici un exemple de data flow gérant l'insertion ou la mise à jour de données.<br />
<br />
<img src="https://www.developpez.net/forums/attachments/p174025d1428408878/environnements-developpement/delphi/edi/kylix-pb-connection-mysql/dataflow.jpg/" border="0" alt="Nom : Dataflow.jpg
Affichages : 15911
Taille : 35,8 Ko"  style="float: CONFIG" /><br />
<br />
Le lookup permet d'identifier les lignes présentes dans la cible et de les envoyer dans la branche &quot;Match OutPut&quot;. Le cas échéant, elles sont envoyées en insertion dans la branche &quot;No Macth OutPut&quot;.<br />
Dans le lookup, nous jointons nos deux tables sur la clé primaire d'un véhicule (ici l'immatriculation du véhicule). Par la suite, nous récupérons l'ensemble des champs que l'on souhaiterait mettre à jour (Nom du loueur, nombre de km, etc.).<br />
<br />
Dans le composant colonne dérivée (Checking for update), nous allons tester nos champs sources avec les champs récupérés dans le lookup. Ce qui nous donne ceci :<br />
<br />
<img src="https://www.developpez.net/forums/attachments/p174031d1428410430/environnements-developpement/delphi/edi/kylix-pb-connection-mysql/derived.jpg/" border="0" alt="Nom : derived.jpg
Affichages : 9720
Taille : 74,3 Ko"  style="float: CONFIG" /><br />
<br />
La formule est simple et permet de tester les valeurs NULL qui peuvent poser des problèmes.<br />
La formule en question : <br />
<div class="bbcode_container">
	<table width="100%" border="0" cellspacing="0" cellpadding="0"><tr>
	<td style="border: 0; padding: 0; text-align: left">Code  :</td>
	<td style="border: 0; padding: 0; text-align: right"><a href="#" onclick="return ano_selectionnerCode(this);">Sélectionner tout</a> -
	<a href="#" onclick="return ano_etendreCode(this);">Visualiser dans une fenêtre à part</a></td></tr></table>
	<pre class="bbcode_code" style="height:36px;">(ISNULL(LKP_Name) != ISNULL(SRC_Name)) || (!ISNULL(LKP_Name) &amp;&amp; !ISNULL(SRC_Name) &amp;&amp; LKP_Name != SRC_Name)</pre>
</div>Cette formule nous permet de créer un booléen qui nous permettra avec le composant de fractionnement conditionnel de récupérer seulement les lignes à mettre à jour.<br />
La formule ci-dessous sera insérée dans la sortie &quot;AnyChange&quot; et vérifiera si au moins un champ a évolué. Si c'est le cas, la ligne entière sera mise à jour :<br />
<br />
<div class="bbcode_container">
	<table width="100%" border="0" cellspacing="0" cellpadding="0"><tr>
	<td style="border: 0; padding: 0; text-align: left">Code  :</td>
	<td style="border: 0; padding: 0; text-align: right"><a href="#" onclick="return ano_selectionnerCode(this);">Sélectionner tout</a> -
	<a href="#" onclick="return ano_etendreCode(this);">Visualiser dans une fenêtre à part</a></td></tr></table>
	<pre class="bbcode_code" style="height:36px;">Changed_NBKM || Changed_Name</pre>
</div>Enfin, le composant OLE DB Commande permettra de mettre à jour nos lignes qui passeront la condition &quot;AnyChange&quot;.<br />
Il y'a trois paramétrages à effectuer :<br />
- Choisir la connexion<br />
- Mettre la commande SQL avec les paramètres (sur ssis les paramètres sont sous la forme d'un point d'interrogation) à la place des valeurs à mettre à jour<br />
- Faire le mapping des paramètres avec les colonnes que l'on souhaite (la source Src voiture)<br />
<br />
<img src="https://www.developpez.net/forums/attachments/p174033d1428411372/environnements-developpement/delphi/edi/kylix-pb-connection-mysql/ole-db.jpg/" border="0" alt="Nom : OLE DB.jpg
Affichages : 9709
Taille : 101,1 Ko"  style="float: CONFIG" /><br />
<br />
Voilà, maintenant vous êtes capable de gérer une méthode d'Insert or update. Il y'a évidemment d'autres méthodes pour gérer cette méthode d'alimentation.</blockquote>

]]></content:encoded>
			<dc:creator>Elros</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/blogs/300051-elros/b427/gerer-ssis-mode-d-alimentation-insert-or-update/</guid>
		</item>
	</channel>
</rss>
