Crear, editar y guardar un informe incrustado

El análisis insertado de Power BI permite crear, editar y guardar informes incrustados. Un informe se puede crear en función de un conjunto de datos existente o puede editar un informe existente. También puede guardar el informe después de crearlo o editarlo.

Creación de un informe

Obtenga información sobre cómo crear un nuevo informe en blanco a partir de un conjunto de datos existente.

Permisos de token de acceso necesarios para crear un informe

Genere un token de inserción con acceso al conjunto de datos. Si usa el método de autenticación de usuario maestro, asegúrese de que la aplicación tiene los siguientes ámbitos: Dataset.Read.All, Content.Createy Workspaces.ReadWrite.all. Consulte Token de inserción: generación de de tokens para obtener más información.

Permisos necesarios del lado cliente para crear un informe

Se requieren los siguientes permisos del lado cliente para crear un informe:

  • Crear: los usuarios pueden crear un nuevo informe.

  • Todos los: los usuarios pueden crear, ver, editar, guardar y guardar una copia del informe.

Creación de un nuevo informe

Cree un nuevo informe en blanco a partir de un conjunto de datos existente. Necesitará un identificador de conjunto de datos y la dirección URL de inserción. Por ejemplo, puede usar la API REST de getDatasetsInGroup y recuperar el CreateReportEmbedURL. Consulte Conjuntos de datos: Obtener conjuntos de datos en de grupo para obtener más información.

Nota

Debe tener permisos de compilación o escritura en el conjunto de datos para crear un nuevo informe.

let embedCreateConfiguration = {
    tokenType: tokenType,
    accessToken: accessToken,
    embedUrl: embedURL,
    datasetId: datasetId,
    settings: settings,
    theme: theme, // optional
};

// Grab the reference to the div HTML element that will host the report
let embedContainer = $('#embedContainer')[0];

// Create report
let report = powerbi.createReport(embedContainer, embedCreateConfiguration);

También tiene la opción de crear un informe con un tema aplicado. Los nuevos objetos visuales agregados al informe respetarán el estilo del tema. Consulte Aplicar temas de informe para obtener más información.

Cómo editar un informe

Obtenga información sobre cómo editar un informe existente y cambiar entre los modos Ver y Editar.

Permisos de token de acceso necesarios para editar

Genere un token de inserción con acceso al informe. Si usa el método de autenticación de usuario maestro, asegúrese de que la aplicación tiene los siguientes ámbitos: Dataset.ReadWrite.All y Report.ReadWrite.All. También debe establecer la marca allowEdit: true para cada informe que el usuario final necesita editar. Consulte Token de inserción: generación de de tokens para obtener más información.

Permisos necesarios del lado cliente para editar

Se requieren los siguientes permisos del lado cliente para editar un informe:

  • Copiar: los usuarios pueden guardar una copia del informe mediante Guardar como.

  • ReadWrite: los usuarios pueden ver, editar y guardar el informe.

  • Todos los: los usuarios pueden crear, ver, editar, guardar y guardar una copia del informe.

Edición del informe

Cargue el informe existente en modo de edición. El informe debe estar insertado de la misma manera que la aplicación inserta un informe normal y el modo de vista debe estar en Edición. Asegúrese de establecer el parámetro viewMode en models.ViewMode.Edity que tenga los permisos de cliente adecuados.

let config = {
    type: 'report',
    tokenType: models.TokenType.Aad or models.TokenType.Embed,
    accessToken: YourAccessToken,
    embedUrl: YourEmbedUrl,
    id: YourEmbedReportId,
    permissions: models.Permissions.All,
    viewMode: models.ViewMode.Edit,
};

// Grab the reference to the div HTML element that will host the report
let embedContainer = $('#embedContainer')[0];

// Embed report
let report = powerbi.embed(embedContainer, config);

El usuario ahora puede editar el informe en función de los permisos de que se han habilitado.

También puede cambiar entre los modos Editar y Ver después de cargar el informe.

report.switchMode("view");

Para cambiar al modo de edición:

report.switchMode("edit");

Cómo guardar un informe

Obtenga información sobre cómo guardar un informe, incluidas opciones adicionales, como guardar una copia de un informe y guardar un informe en otra área de trabajo.

Permisos de token de acceso necesarios para guardar

Genere un token de inserción con acceso al informe y al conjunto de datos. Si desea guardar el informe en otra área de trabajo, el token debe tener acceso al área de trabajo de destino. Si usa el método de autenticación de usuario maestro, asegúrese de que la aplicación tiene los siguientes ámbitos: Report.ReadWrite.Ally Workspaces.ReadWrite.all. También debe establecer la marca allowEdit: true para cada informe que el cliente necesite editar. Consulte Token de inserción: generación de de tokens para obtener más información.

Permisos necesarios del lado cliente para guardar

Se requieren los siguientes permisos del lado cliente para guardar un informe:

  • ReadWrite: los usuarios pueden ver, editar y guardar el informe.

  • Crear: los usuarios pueden crear un nuevo informe.

  • Copiar: los usuarios pueden guardar una copia del informe mediante Guardar como.

  • Todos los: los usuarios pueden crear, ver, editar, guardar y guardar una copia del informe.

Guardar un informe

Al crear un informe, el informe no se guarda hasta que se llama a la operación save desde el menú archivo o JavaScript.

report.save();

Guardar una copia de un informe

Guarde una copia adicional con un nombre diferente. La copia del informe se guardará en la misma área de trabajo que el conjunto de datos del informe.

let saveAsParameters = {
    name: "newReport"
};

report.saveAs(saveAsParameters);

También puede guardar el informe en otra área de trabajo. Asegúrese de que tiene los permisos adecuados para el área de trabajo de destino.

let saveAsParameters = {
    name: "newReport"
    targetWorkspaceId: "13bbf317-fe2b-4b15-a081-94b0921c28e5"
};

report.saveAs(saveAsParameters);

Comprobación de que el informe se guarda

Llame a report.isSaved para asegurarse de que el informe se guarda. Este método puede ayudar a evitar la pérdida de cambios no guardados.

let isReportSaved = await report.isSaved();

Creación de una experiencia de saveAs personalizada

Puede crear un cuadro de diálogo de saveAs personalizado agregando la configuración del informe useCustomSaveAsDialog: true al objeto de configuración. Esta configuración oculta el cuadro de diálogo de interfaz de usuario predeterminado.

El evento saveAsTriggered se genera cuando un usuario hace clic en Guardar como en la interfaz de usuario. Use esta información para mostrar el cuadro de diálogo personalizado.

report.on("saveAsTriggered", function (event) {
    console.log(event);
});

Para realizar una operación de guardado, puede llamar a report.saveAs desde el cuadro de diálogo personalizado. Consulte Guardar una copia de un informe para obtener más información.

let saveAsParameters = {
    name: "newReport"
    targetWorkspaceId: "13bbf317-fe2b-4b15-a081-94b0921c28e5"
};

report.saveAs(saveAsParameters);

Escucha de los eventos save y saveAs

El evento saved se genera cuando una acción de save o saveAs desencadena un guardado en la interfaz de usuario o mediante las API. Consulte Cómo controlar eventos para obtener más información.

report.on("saved", function (event) {
    console.log(event);
});