Tiempo de leer: 4 minutos

En la Parte 1, presenté algunos escenarios posibles para usar python con Power BI fuera de las funciones integradas de python visual y script de python. Esta publicación se centra en la configuración de un archivo de herramienta externo básico que pasa la conexión del modelo de datos de Power BI para su uso en scriptsConcepto de Scripts¿Qué son los Scripts?Los Scripts son fragmentos de código que se usan para dar forma a herramientas tanto en Internet como en el sector de la informática en general. Son una parte crucial del software, puesto que se trata exactamente del código que conforma a una aplicación en su totalidad o a una de sus funciones, como además el que puedes hallar explorando cómo está hecha una web.Desde más de python. Va a ser un muy escenario básico, pero sienta las bases para, con suerte, mejores cosas por venir, como se describe en la Parte 1.

Definir un archivo JSON PBITool básico

Para ver una nueva herramienta en la cinta de Power BI Desktop, debe definir un archivo JSON y colocarlo en una carpeta específica en su estación de trabajo. los Destacados Las herramientas externas Tabular Editor, DAX Studio y ALM Toolkit tienen instaladores que se encargan de este paso. Dado que no tiene un instalador dedicado para colocar este archivo en el directorio requerido, necesitas definir manualmente el tuyo.

Siempre que el «formato de metadatosLos metadatos son datos estructurados que contienen información sobre una fuente como, por ejemplo, un libro o un documento web. Gracias a los metadatos resulta mucho más fácil hallar la fuente de información dado que contienen datos sobre el título, el autor, la fecha de publicación, la descripción, etc. Se utilizan en librerías pero además para la estadística y la ingeniería de software. Metadatos en WWW Los metadatos se utilizan más mejorado» para el modelo de datos esté habilitado y el JSON en su archivo sea preciso, debería ver su nueva herramienta en la cinta después de volver a abrir Power BI Desktop.

Definamos una herramienta externa llamada «Conexión de escritorio de Power BI» que muestra el logotipoConcepto de Logotipo¿Qué es un Logotipo?Un Logotipo, o logo, no es más que el elemento gráfico o visual con el que se dota de identidad a una empresa, negocio, producto o servicio. Es ese símbolo con el que se apela a la memoria visual y con el que se permite dotar de presencia a cualquier tipo de entidad sin necesidad de recurrir a descripciones.De hecho, es más correcto hablar de más de python en la cinta y muestra la información de conexión de Power BI actual cuando hace clic en ella.

<noscriptNoScript es un complemento del navegador para Mozilla Firefox, que impide que se cargue en las páginas web contenido como JavaScript, Flash o iFrames. Su objetivo es incrementar la seguridad durante la navegación y quitar la promoción comercial más molesta al cargar sitios web. El términoNoScript tiene un significado distinto en la programación HTML. Cuando JavaScript está desactivado, la etiqueta <noscript> o </noscript> asegura que el usuario pueda ver el más>

Para comenzar, copie y pegue el siguiente JSON en un editor de texto (esencia).

{
  "version": "1.0",
  "name": "[Tool Name]",
  "description": "[Tool Description]",
  "path": "C:\[PATH TO PYTHON EXECUTABLE]\python.exe",
  "arguments": "C:/[PATH TO PYTHON SCRIPT].py "%server%" "%database%"",
  "iconData": "data:image/png;base64,[YOUR BASE64 IMAGE CONTENT]"
}

Aquí hay un ejemplo que completé para mi herramienta de muestra básica para mostrar la conexión actual de Power BI Desktop. Estoy usando Anaconda, por eso ves python.exe desde la ubicación predeterminada de Anaconda en mi ruta.

 {
  "version": "1.0",
  "name": "Power BI Desktop Connection",
  "description": "Use python",
  "path": "C:\ProgramData\Anaconda3\python.exe",
  "arguments": "C:/Users/DavidEldersveld/Documents/python/PowerBIConnectionString.py "%server%" "%database%"",
  "iconData": ""
}

Desglosando el contenidoEl contenido puede ser muy difícil de definir con precisión. Es una definición que se refiere a las declaraciones contenidas en un documento o publicación de cualquier tipo y puede incluir las tecnologías de la información y la comunicación. Esto cubre todos los tipos de medios como imágenes y texto. A parte de esto, en el campo de la optimización de motores de búsqueda, los términos duplicar contenido, contenido único, más:
versión: no cambies esto
nombre: nombre para mostrar en la cinta de Power BI Desktop
descripción: descripción de la herramienta externa (pensaría que esto aparecería como texto alternativoConcepto de Texto alternativo¿Qué es el Texto alternativo?El Texto alternativo es un tipo de escrito, texto, que se usa en páginas web para facilitar la información en caso de problemas de carga, errores al enlazar imágenes o cualquier situación que impida ver el contenido de la imagen a la que está enlazado. Es una técnica que guarda especial vinculación tanto con la usabilidad como con el posicionamiento SEO.Un concepto implantado más cuando se desplaza, pero solo el nombre se muestra al pasar el mouse)
camino: camino a tu python.exe expediente
argumentos: argumentos de línea de comando pasados ​​a su ejecutable
iconData: imagen base64 utilizada para el icono de cinta

Si miras el [tool].pbitool.json para otra herramienta como Tabular Editor, verá el servidorLos servidores son ordenadores centrales y potentes dentro del campo de la tecnología de la información que procesan y proporcionan software y archivos en una red. Desde el punto de vista de un cliente, varios ordenadores en una red pueden ponerse en contacto con el servidor central para conseguir la información solicitada. En la arquitectura cliente-servidor, el servidor puede ser un software que proporciona un servicio y se ejecuta en más y base de datos pasado como los dos únicos argumentos. Para usar con python, esos pueden permanecer, pero su primer argumento deberá ser un script de python .py en este caso.

Para adaptar este archivo al suyo, determine los valores apropiados y reemplácelos según sea necesario.

 {
  "version": "1.0",
  "name": "[Tool Name]",
  "description": "[Tool Description]",
  "path": "C:\[PATH TO PYTHON EXECUTABLE]\python.exe",
  "arguments": "C:/[PATH TO PYTHON SCRIPT].py "%server%" "%database%"",
  "iconData": "data:image/png;base64,[YOUR BASE64 IMAGE CONTENT]"
}

Los dos más importantes serán los ruta correcta a su python.exe y el primer valor de argumento con el ruta correcta a su secuencia de comandos de python.

Sé que hay una forma de usar código para convertir imágenes a base64, pero siempre termino usando un sitio web como este por conveniencia: https://www.base64-image.de/

Agrega tu [tool].pbitool.json archivo a la carpeta correcta

Agregue su nuevo archivo a su C: Archivos de programa (x86) Archivos comunes Microsoft Shared Power BI Desktop Herramientas externas carpeta.

Crea tu secuencia de comandos de python

los [tool]El archivo .pbitool.json utilizó un archivo .py como primer argumento. De donde vino eso? ¡Viene de ti! Coloque el código que desee ejecutar en ese archivo y guárdelo en la ubicación que proporcionó en el [tool]Archivo .pbitool.json.

Para mi ejemplo de Conexión de escritorio de Power BI, mi script de muestra (esencia) está a continuación, que guardé como PowerBIConnectionString.py en la ruta descrita anteriormente [tool]Archivo .pbitool.json. El script simplemente imprime los argumentos del servidor y de la base de datos que se le pasan, luego concatena e imprime una cadena de conexión que podría usarse para conectarse a ese modelo de datos en particular.

import sys

print('Power BI Desktop Connection')
print(str(sys.argv[1]))
print(str(sys.argv[2]))

print('')
conn = "Provider=MSOLAP;Data Source=" + str(sys.argv[1]) + ";Initial Catalog='';"
print(conn)

input() 

sys.argv[1] es el argumento correspondiente al servidor y sys.argv[2] es el GUID de la base de datos. python comienza en 0, que es el valor del argumento asociado con la secuencia de comandos actual.

Si finalmente amplía las herramientas externas con sus propios scripts de python y pasa la conexión de Power BI Desktop, confiará en sys.argv[1].

El GUID de la base de datos entrará en juego en futuros scripts, pero no es necesario para este escenario inicial. Solo sepa que localmente, la cadena de conexión solo necesitará servidor: puerto.

Si tanto el script .py como [tool]El archivo .pbitool.json está en la ubicación correcta y, suponiendo que el script funcione, puede abrir Power BI Desktop. Marque la cinta Herramientas externas para ejecutar el script.

Próximamente en la Parte 3: .NET + python – Conexión al modelo de objetos tabulares (TOM)

Si bien este script básico funciona como está, hay un problema con esta configuración que cubriré en la próxima publicación. python.exe se ejecuta de forma independiente fuera de un entorno, por lo que los paquetes cargados en la base o en un entorno virtual alternativo no están disponibles para el script.

Para conectarnos al modelo de objetos tabulares de python, necesitaremos un poco de ayuda de .NET y algunos paquetes en mi entorno conda. La parte 3 contiene los ajustes al [tool]Archivo .pbitool.json que me permite usar un entorno virtual de python específico.

Enlaces de pago

Como asociado de AmazonConcepto de Amazon¿Qué es Amazon?Amazon es la tienda online más importante de todas partes (haz un clic aquí para ver la web de Amazon). Se trata del icono más representativo del e-commerce y de una de las webs más frecuentadas por los usuarios de medio planeta. Cuenta con un catálogo repleto de productos de todos los tipos y sectores y con precios y condiciones que suelen atraer las miradas de más, gano con las compras que califican.