{"id":8422,"date":"2022-07-04T07:30:44","date_gmt":"2022-07-04T05:30:44","guid":{"rendered":"https:\/\/expert-only.com\/?p=8422"},"modified":"2022-07-04T12:13:47","modified_gmt":"2022-07-04T10:13:47","slug":"consulta-sql-dinamica-con-ssrs","status":"publish","type":"post","link":"https:\/\/expert-only.com\/es\/ssrs\/consulta-sql-dinamica-con-ssrs\/","title":{"rendered":"Consulta SQL din\u00e1mica con SSRS"},"content":{"rendered":"\n<p>\u00bfC\u00f3mo puedo crear una consulta SQL din\u00e1mica con SSRS, en un conjunto de datos ? Con Reporting Services, los campos utilizados en un objeto de tabla, por ejemplo, est\u00e1n vinculados a la base de datos. Esto se hace a trav\u00e9s de un conjunto de datos que es a su vez el resultado de una consulta SQL. Este conjunto de datos est\u00e1 vinculado a una fuente de datos.<\/p>\n\n\n\n<p>De hecho, esta fuente de datos contiene una conexi\u00f3n. Por ejemplo, a una base de datos o a un cubo OLAP utilizado como fuente. La restituci\u00f3n de los datos permite crear informes est\u00e1ticos con consultas fijas. O informes din\u00e1micos con consultas din\u00e1micas.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-uso-de-la-consulta-sql-dinamica-con-ssrs\">Uso de la consulta SQL din\u00e1mica con SSRS<\/h2>\n\n\n\n<p>Utilice los filtros para aprovechar al m\u00e1ximo las consultas de SQL Server y mostrar una selecci\u00f3n de datos relevante.<\/p>\n\n\n\n<p>En otras palabras, sin filtros se muestran todos los datos. O los datos est\u00e1n restringidos, por ejemplo, al d\u00eda, mes o trimestre en curso.<\/p>\n\n\n\n<p>Los filtros permiten al usuario seleccionar un a\u00f1o, un producto o un cliente en particular. Se recomienda implementar tantas funciones din\u00e1micas como sea posible en los informes SSRS.<\/p>\n\n\n\n<p>Adem\u00e1s, el uso conjunto de varios par\u00e1metros permite una selecci\u00f3n m\u00e1s refinada de los datos.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Ejemplos de c\u00f3digo SQL din\u00e1mico en un informe de Reporting Services<\/h2>\n\n\n\n<p><a href=\"https:\/\/docs.microsoft.com\/es-es\/sql\/reporting-services\/create-deploy-and-manage-mobile-and-paginated-reports?view=sql-server-ver15\" target=\"_blank\" rel=\"noreferrer noopener\">Reporting Services<\/a> es la herramienta de generaci\u00f3n de informes y cuadros de mando de la suite de BI de Microsoft. Es totalmente Responsive desde la versi\u00f3n de SQL Server 2016. Esto significa que los informes se adaptan perfectamente a diferentes formatos de pantalla. Esto significa: ordenador de sobremesa, port\u00e1til, tabletas y tel\u00e9fonos inteligentes.<\/p>\n\n\n\n<p>Hay varios enfoques para manejar los filtros, aqu\u00ed hay dos opciones simples.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Primera soluci\u00f3n con una consulta SQL y una f\u00f3rmula<\/h3>\n\n\n\n<p>La soluci\u00f3n m\u00e1s f\u00e1cil de mantener es la siguiente, con un campo CIUDAD para seleccionar la ciudad.<\/p>\n\n\n\n<p>Previamente, el sistema eval\u00faa el par\u00e1metro PARAMETERS!PARAMETER2.VALUE contra un primer par\u00e1metro visible. Par\u00e1metro seleccionado de una lista de opciones por el usuario, cuando se ejecuta el informe.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"sql\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">SELECT    *\nFROM    TABLE1\nWHERE    CITY = PARAMETERS!PARAMETER2.VALUE<\/pre>\n\n\n\n<p>Para ello, en las propiedades de la Expresi\u00f3n del par\u00e1metro PARAMETER2, inserta un c\u00f3digo con una funci\u00f3n, como esta:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"visualbasic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">=IIF(Parameters!Test.value = \"Valeur\",\"CONDITION1\", \"CONDITION2\")<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Segunda soluci\u00f3n con condiciones en la consulta SQL de SSRS<\/h3>\n\n\n\n<p>La segunda soluci\u00f3n consiste en escribir los dos par\u00e1metros en la expresi\u00f3n de la consulta. Es menos elegante y m\u00e1s complejo de desarrollar con varios filtros:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"sql\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">IF PARAMETERS!PARAMETER.VALUE = UNEVALEUR\nSELECT * FROM TABLE1 WHERE CHAMPS = CONDITION1\nELSE\nSELECT * FROM TABLE1 WHERE CHAMPS = CONDITION2<\/pre>\n\n\n\n<p>Por lo tanto, es preferible utilizar la primera soluci\u00f3n.<\/p>\n\n\n\n<p>Este art\u00edculo presenta c\u00f3mo crear una consulta SQL din\u00e1mica en un conjunto de datos SSRS.<\/p>\n\n\n\n<p>Para ir m\u00e1s all\u00e1 con las tecnolog\u00edas de Microsoft, he aqu\u00ed c\u00f3mo <strong><a href=\"https:\/\/expert-only.com\/es\/ms-dos\/crear-una-lista-de-texto-de-los-archivos-de-una-carpeta-en-cmd\/\">crear una lista de archivos contenidos en una carpeta en cmd<\/a><\/strong>.<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-wp-embed is-provider-tutoriels-et-exemples-sql-server-et-microsoft-it wp-block-embed-tutoriels-et-exemples-sql-server-et-microsoft-it\"><div class=\"wp-block-embed__wrapper\">\nhttps:\/\/expert-only.com\/es\/ms-dos\/crear-una-lista-de-texto-de-los-archivos-de-una-carpeta-en-cmd\/\n<\/div><\/figure>\n","protected":false},"excerpt":{"rendered":"<div class=\"mh-excerpt\"><p>\u00bfC\u00f3mo puedo crear una consulta SQL din\u00e1mica con SSRS, en un conjunto de datos ? Con Reporting Services, los campos utilizados en un objeto de tabla, por ejemplo, est\u00e1n vinculados a la base de datos. Esto se hace a <a class=\"mh-excerpt-more\" href=\"https:\/\/expert-only.com\/es\/ssrs\/consulta-sql-dinamica-con-ssrs\/\" title=\"Consulta SQL din\u00e1mica con SSRS\">&#8230;<\/a><\/p>\n<\/div>","protected":false},"author":1,"featured_media":6522,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[575],"tags":[],"class_list":{"0":"post-8422","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-ssrs"},"_links":{"self":[{"href":"https:\/\/expert-only.com\/es\/wp-json\/wp\/v2\/posts\/8422","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/expert-only.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/expert-only.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/expert-only.com\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/expert-only.com\/es\/wp-json\/wp\/v2\/comments?post=8422"}],"version-history":[{"count":0,"href":"https:\/\/expert-only.com\/es\/wp-json\/wp\/v2\/posts\/8422\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/expert-only.com\/es\/wp-json\/wp\/v2\/media\/6522"}],"wp:attachment":[{"href":"https:\/\/expert-only.com\/es\/wp-json\/wp\/v2\/media?parent=8422"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/expert-only.com\/es\/wp-json\/wp\/v2\/categories?post=8422"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/expert-only.com\/es\/wp-json\/wp\/v2\/tags?post=8422"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}