181_带你体验 Power BI 开发者模式 pbip

news2024/12/23 23:52:18

181_带你体验 Power BI 开发者模式 pbip

一、背景

如果你是一个 Power BI 重度用户,你是不是也有如下的情况?

图-01

是的,Power BI 的版本控制全靠复制一份重命名来实现,而且版本之间的特点和差异时间久了就不记得了,还要加上一个版本的说明文件。(手动痛苦的表情)

当然期间也有一些工具可以实现,如 pbi-tools,也需要中间来回的倒腾。

2023年6月后这个问题得到了解决,在2023年6月最新的版本,预览了 Power BI 最新的开发者模式文件 *.pbip 其中这个最后一个 p 是项目文件 project 的缩写。

二、版本控制与迭代

由于 pbip 模式是2023年6月开放预览的,当前还需要在预览功能中勾选上。

图-02

1、使用前提:版本控制工具git的安装

由于我们要使用版本控制工具:git 来管理我们的文件,所以需要提前下载并按照git工具。git官方下载地址:https://git-scm.com/download/win

图-03

当前 Power BI Desktop 还只能运行在 windows 系统上,所以上面给的是 windows 的git下载路径。

git 下载后就默认安装就可以了,这就不演示了,安装以后打开命令行终端输入git -v能正常看到版本信息就表示安装成功了。

图-04

2、本地版本控制的使用步骤

  1. 新建文件夹 C:\Desktop\pbipTest(文件夹名称根据自己的项目修改),在文件夹中打开命令终端输 git init 首先初始化项目,让 git 接管这个文件夹中的文件变化。

图-05

  1. .pbix文件使用 Power BI Desktop 打开,以.pbip的格式,另存到文件夹C:\Desktop\pbipTest

图-06

  1. 另存后就可以看到源文件了,同时关闭原来的 .pbix 文件。

图-07

  1. 通过 git 命令git status 可以看到当前文件状态。

图-08

  1. 我们初始化状态的文件提交记录:
git add .
git commit -m "初始化pbip"

后续可以是用命令合并简写模式git commit -am "提交描述"

6.直接双击pbipTest.pbip文件,在 Power BI Desktop 中编辑,我们新增一个视觉对象。

图-09

保存后,再使用 git status 查看变化。

图-10

再次提交git commit -am "新增产品数量"

使用 git log查看提交的日志记录

图-11

当我们查看之前的初始化pbip的状态,使用git checkout 88b02dd0225d5a69a0af3de53ead25307c8bc956

这里的88b02dd0225d5a69a0af3de53ead25307c8bc956就是具体哪一次的commit。

打开 pbipTest.pbip 就看到切换原来的状态了。这样就能清晰的控制 Power BI 文件的版本了。

当前案例演示的是页面变化,模型变化也是同样的道理,这里就不赘述了。

图-12

案例中的源文件可以在本地保存,更多的时候是同步到云端代码仓库,如果github、gitee或者自建的代码仓库。

3、使用 pbip 同步发布 Power BI 报告

前面提到的 git 主要实现的是版本控制。如何发布又是一个问题?

这里 Power BI 团队提供的方式是,通过源代码存放在 dev.azure.com的仓库中,然后在 Power BI 在线服务的工作区中同步更新即可。

操作步骤

  1. 在 dev.azure.com 中登录账号,这里账号必须要有 Power BI 激活的账号(账号可以在我的网站领取:https://jiaopengzi.com/2141.html)

    图-13

2.如遇到没有权限直接点击图中标准地方

图-14

  1. 新建新的组织

图-15

  1. 新建项目

图-16

  1. 点击进入项目,选择仓库。

图-17

  1. 克隆仓库到本地
git clone git@ssh.dev.azure.com:v3/jiaopengzi/power-bi-retail/power-bi-retail

图-18

克隆成功后,会有一个和云端一样的文件夹出现本地。

  1. 使用 <2、本地版本控制的使用步骤> pbip 格式另存到该文件夹并提交后;使用 git push推送到云端仓库。

图-19

  1. 查看云端的仓库,pbip的源代码已经推送到了仓库。

图-20

  1. 回到 Power BI 在线服务,新建一个工作区,选择容量。

图-21

  1. 工作区设置,git集成,点击链接和同步

图-22

  1. 等待片刻同步完成后,数据集需要使用网关(网关使用可以去看:https://www.bilibili.com/video/BV1rv4y147fi/ 的 1/39 和 39/39 )刷新后才能使用。

图-23

数据集刷新出现:不刷新动态数据源。(这一步骤是因为案例中有动态数据源所以才出现,如果没有则没有这步骤,意外彩蛋)

图-24

回到 pbip 修改 Power Query 中的日期函数,修复:不刷新动态数据源;并保存。

git 同步提交推送。

图-25

此时,在Power BI 工作区域中就看到修改的变化更新,点击全部更新即可。

图-26

  1. 数据集刷新后可以看到 Power BI 页面也刷新了.

图-27

  1. 我们也可以在云端修改,源代码也将同步到云端仓库。

图-28

  1. 在工作区中提交修改。

图-29

如果以前的话,就需要把.pbix文件下载后才能看到变化,现在就不用了,直接使用git pull代码拉取即可,片刻后就看到代码拉取更新到了本地。

图-30

在打开本地的.pbip文件就可以看到在云端修改的变化了。

图-31

同时git log也能看到对应的记录

图-32

三、总结

  1. 本次预览的 pbip 开发者模式,个人最喜欢的是版本控制和报告推送发布,在版本迭代的时候不用再把数据推一遍了,做到把报告和数据集解耦出来。

  2. 版本间切换通过 git 控制,非常方便;但同时也给一般用户带来了一些门槛,需要学习git。

  3. 关于团队协作开发的问题,从 Power BI 诞生到现在(2023年6月),Power BI 的开发都是单人模式,也是因为刚开始出来定位的是敏捷BI。随着 Power BI 的日益发展,Power BI 也越来越"笨重"了,也要开始走团队开发的路线了,有了 pbip 模式,配合良好的架构设计,团队开发也是也是一种必然,初步体验下来,团队协作开发还有一些路要走,毕竟是刚开放预览,也希望 Power BI 越来越好。

  4. 另外还有一些内容如:分支、版本切换等就给大家留一个作业了,也欢迎私信和我探讨。

  5. 后续 Power BI 团队将会把数据集保存为更符合人类阅读的模式:Tabular Model Definition Language (TMDL),非常值得期待。

直播预告

B站|微信视频号 同步直播

时间:2023年6月29日 晚 20:00

图-33


请关注

全网同名搜索 焦棚子

如果对你有帮助,请 点赞关注三连 支持一下,这是我们更新的动力。

我们承接 Power BI 相关业务:培训、报告制作与部署、咨询服务等。

by 焦棚子

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/695234.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

人工智能将怎样改变未来?TVP读书会带你探索!

引言 数十年前&#xff0c;图灵抛出的时代之问“机器能思考吗&#xff1f;”&#xff0c;将 AI 从科幻拉至现实&#xff0c;随着无数计算机科学先驱的共同努力&#xff0c;人工智能已经发展为引领未来的战略性技术。 AI 无处不在&#xff0c;智能时代触手可及&#xff0c;从 NL…

小程序 view clearfix 不起作用,边距还是被折叠

问题&#xff1a; 多个同级view情况下设置最后view clearfix&#xff0c;让底部露一些空白局域&#xff0c;此时clearfix不启作用。 .wxss .clearfix:before,.clearfix:after{content: "";clear: both;display: table;border-bottom: 1px solid black; } /*边距*/…

软件测试金字塔是什么,它的目的是什么,以及它包含哪些层次?

一、测试金字塔的概念&#xff1a; 测试金字塔是2009年Mike Cohn在他的著作《Succeeding with Agile》一书正式提出的。他是一个类比的概念&#xff0c;形容每一层&#xff0c;或者说不同集成阶段测试覆盖率和知行效率之间的一个相对关系。 测试金字塔最初的原型分三层&#…

如何找回删除的文件?这些文件恢复方法,超实用!

大家快看看我&#xff01;我一不小心删除了非常重要的文件&#xff0c;突然不知道该怎么办了&#xff01;我对电脑的操作也不熟悉&#xff0c;不敢轻易进行操作&#xff01;大家有什么比较好的方式可以找回删除的文件吗&#xff1f; 在使用电脑时&#xff0c;误删文件的情况经常…

基于Python所写的五子棋设计

点击以下链接获取源码资源&#xff1a; https://download.csdn.net/download/qq_64505944/87952977 《五子棋&#xff08;控制台版&#xff09;》程序使用说明 在PyCharm中运行《五子棋&#xff08;控制台版&#xff09;》即可进入如图1所示的系统主界面。 图1 游戏主界面 具…

掌握客户参与:终极指南有效的CRM管理

随着信息技术的快速发展&#xff0c;企业面对的市场竞争日益激烈&#xff0c;客户需求也变得越来越多样化和个性化。传统的销售和营销模式已经不能适应当前的市场环境&#xff0c;企业需要更加精细化、个性化的管理客户关系。CRM管理应用解决方案应运而生&#xff0c;它能够帮助…

allure环境搭建教程

pytest的安装:&#xff08;这里着重介绍Windows&#xff09; allure是基于Java的一个程序&#xff0c;需要Java1.8的环境,所以安装之前需要配置jdk环境 pytest是python的一个第三方单元测试框架&#xff0c;在这里用于生成原始的执行结果。 一、一定别选最新的&#xff0c;3.…

新品上市:ATA-2048高压放大器技术参数、特点及应用

作为中国电子测试仪器行业的优秀民族企业之一&#xff0c;Aigtek安泰电子始终坚持国产替代的发展战略&#xff0c;将产品研发和市场需求紧密结合&#xff0c;实现高效的研发产出&#xff0c;现已拥有ATA系列功率放大器、ATA系列功率放大器模块、ATG系列功率信号源、ATS系列高精…

SpringBoot + Vue前后端分离项目实战 || 五:用户管理功能后续

系列文章&#xff1a; SpringBoot Vue前后端分离项目实战 || 一&#xff1a;Vue前端设计 SpringBoot Vue前后端分离项目实战 || 二&#xff1a;Spring Boot后端与数据库连接 SpringBoot Vue前后端分离项目实战 || 三&#xff1a;Spring Boot后端与Vue前端连接 SpringBoot V…

vscode调试python配置

{// 使用 IntelliSense 了解相关属性。 // 悬停以查看现有属性的描述。// 欲了解更多信息&#xff0c;请访问: https://go.microsoft.com/fwlink/?linkid830387"version": "0.2.0","configurations": [{"name": "Python: 当前文…

域渗透(1)

域基础信息搜集 ping 域名ipconfig /all 判断当前是否在域环境中&#xff0c;看dns后缀和dns服务器net view 查看本工作组/域环境中的设备关闭防火墙开启服务net view /domain 查询域数量net view | net view /domain:域名 查询主机数量net group /domain 域控组别信…

使用el-tree实现不同区域的拖拽功能时遇到的坑点

问题再现 利用el-tree实现在两个区域的拖拽&#xff0c;1.树上的拖拽排序&#xff0c;2.将树上节点拖拽到画布上。 在将节点拖拽到画布上的时候&#xff0c;只要在树上移动过&#xff0c;松开鼠标的时候&#xff0c;树上的拖拽排序功能也生效了&#xff0c;那么如何使这两个拖…

蓝海卓越计费管理系统 download.php 任意文件读取漏洞

0x01、漏洞描述 蓝海卓越计费管理系统 download.php文件存在任意文件读取漏洞&#xff0c;攻击者通过 …/ 遍历目录可以读取服务器上的敏感文件 0x02、漏洞影响 蓝海卓越计费管理系统 0x03、fofa title“蓝海卓越计费管理系统” 0x04、漏洞复现 登录页面如下&#xff1a…

shell中快速遍历文件下指定的内容

1.举例 遍历当前目录下所有Makefile文件&#xff0c;找到内容适配CONFIG_SMP的所有Makefile find -type f -name Makefile | xargs grep "CONFIG_SMP" 2.find命令 3.xargs命令 3.1. 命令由来 xargs &#xff08;英文全拼&#xff1a; eXtended ARGuments&#xff…

关于Idea中springboot热部署,html,js保存不起作用

a、引入依赖&#xff1a; <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <optional>true</optional> </depe…

浅谈智能还书车

智能还书车是一种新型的智能化设备&#xff0c;配备触摸显示屏或简单操作的人机交流界面、图形界面&#xff0c;通过协议或其他网络及专用接口与图书馆自动化系统数据相连接&#xff0c;由读者自行对图书进行快速归还&#xff0c;读者把图书放到书车上&#xff0c;系统自动对图…

2. 线性模型

b站刘二老师pytorch深度学习课程&#xff1a;https://www.bilibili.com/video/BV1Y7411d7Ys?p2&vd_sourceb17f113d28933824d753a0915d5e3a90 如果每周学习4个小时&#xff0c;那能够获得什么成绩&#xff1f; y已知的是采样得到的数据&#xff0c;属于训练集&#xff08;t…

使用 css 禁用 input 控件实现 disable 效果

文章目录 需求分析代码 需求 使用 css 禁用 input 控件实现 disable 效果 分析 在 js 中&#xff0c;我们使用以下方法来阻止input,select,checkbox的默认事件&#xff0c;如 javascript event.preventDefault() event.stopPropagation()但在 css 中&#xff0c;我们可以设置对…

Android App的几个核心概念

Application启动 点击桌面图标启动App(如下流程图) 针对以上流程图示&#xff1a; ActivityManagerService#startProcessLocked()Process#start()ActivityThread#main()&#xff0c;入口分析的地方ActivityThread#attach()&#xff0c;这个里面的逻辑很核心 ActivityManagerS…

20230621 taro+vue3+webpack5+antdv时,在vue文件中特定组件时,devH5环境报错

问题 在某个vue文件下 import { notification } from ant-design-vue;然后在终端开始 yarn dev:h5在浏览器看效果 回出现以下错误 Uncaught (in promise) TypeError: __webpack_require__.hmd is not a functionat ./node_modules/.taro/h5/prebundle/ant-design-vue.js原因…