I want to write python script to automate some process in dashboard of PowerBI.
My use cases are about:
Open powerBI and click to page 1 of dashboard.
click some filter and then capture the screen.
click the other pages and do step 2.
I try to run some command in https://github.com/dubravcik/pbixrefresher-python. It can open powerBI and refresh the data. So, I adapt some script from it.
Now, I can use pywinauto and pyautogui to do the above process. It can refer to buttons in ribbon tab but I want to refer to page tab and filter in the dashboard. pyautogui can refer to position in the screen by the pixel but it doesn't work in different resolution screen. Moreover, it hasn't exact format in each page of the dashboard.
I try to use swapy64bit to find a object value but it doesn't work in complex program like powerBI.
So, my problem is how to reference object in dashboard from powerBI (page, filter) using its unique value (such as variable name) instead of screen position.
Regards,
Example of my powerBI dashboard
Related
I have a web form in which I need to enter repetitive data to configure the application and I am writing an excel macro in VBA to achieve this.
Data entry to all fields went well except one field. The field contains a pre-validated list of values, so there are two values SALES and SALES_TAX and when I put SALES, it opens up a pop up screen to select either through image or a radio button to bring the value back to main screen.
I could not able to achieve it and need some help on this please.
Thanks
AM
I am uploading a screenshot and few commands which I tried as below but failed to achieve the desired result,
Sceenshot
driver.FindElementByXPath("//input[#class='xo' and #id= 'N1:N8:0']").Click
driver.FindElementByXPath("//input[#id='N1:N8:0']").Click
driver.Actions.Click ("/SALES")pe here
I have following query:
AppMetrics | where Name=="ReportImported"| summarize Value=count()
I would like to show the value in a dashboard, and it looks like this:
Is there anyway to only display the number and not having it displayed as a list with a Value column?
You can use an Azure Monitor Workbooks to achieve this.
From your Azure Portal, go to Monitor and look for Workbooks on the left pane. Then click New to create a new Workbook, followed by the Add query button.
At this point you can already paste your query in the query console window. Select your Log Analytics Workspace and make sure to run the query to validate it works. Under the Visualization drop-down, choose Tiles and a new Tiles settings will appear on the right. Click on that to bring up the settings page.
Here the only thing I configured was the Left Tile field. Set your values accordingly and check the custom formatting box. Click Apply to see the changes reflect. You can explore other features here and then click on Done editing if you're satisfied. Finally, click on Done editing and save your workbook.
Now for the next step, the Workbook needs to be in edit mode again. Edit it and then click on the Pin icon. A pop-up shows up, explaining two options you have for pinning. Look to the right you'll see another 'item-level' pin. Click on that and choose your dashboard.
It should show up in your dashboard with the Workbook name as the title and a number as the only content of the tile.
It might seem a bit complex but that's the only method I found today, after struggling for a solution for a few weeks. Workbooks are very powerful and allow for very rich visualization!
There isn't a suitable tile in the Tile Gallery that can do this straight out of the box. There is a similar open idea on User Voice.
The closest I could get to doing something similar is by using the Workbooks feature in Azure Monitor, that would look like this when pinned to the dashboard:
Here are the steps to create the above visual:
Navigate to your Log Analytics Workspace
Create a new workbook > Add query
Add your log analytics query and run a preview
Configure the Tile settings as follows:
Change the Visualization dropdown to Tiles and then select Tile Settings.
Set the Title and select Left. Change the value for Use column: to Count, and Column Renderer to Big Number.
After saving the query step but before saving the workbook, select the pin option and pin this query step to your Azure dashboard as follows:
With this approach, you can leverage a range of visualization options and features that Azure Monitor Workbooks offer, creating rich visual reports and interactive experiences.
I'm trying to create an powerapps app for audits. These audits have multiple questions and I want to create a screen where the user can awnser multiple questions in 1 screen. But all questions have to be linked to the audit. So if a question is already filled in it will display the awnser and is able to edit this if needed.
Every question needs to get a grade (1-10) and a description of the awnser.
I already have a detail screen for the audit itself with the base information. idealy i want a button that can go to the questions and fill them in. I'm using multiple sharepoint databases to store the information. So i would like to store the awnsers here as wel. For the awnsers i made a seperate database linked to the audit and the question.
I also have a database for the information of the audit and one for all the questions.
So my question is how do filter a gallery based on the audittitle? and also how do i save this information easily in the sharepoint envoirment
Screenshots could have clarified the problem in a better way, but as much as I could understand from the problem subject, here is a solution to "how-to-filter-a-powerapps-gallery-based-on-previous-screen" :
When you have lots of fields in previous screen which is required for filtering.
You can store the values on previous screen either in a sharepoint list (by submitting the forms from previous screen ) and then fetching them to filter content ( by having a gallery inside a gallery)
OR
When you have less number of fields.
You can simply store the values in variables by using Set(a,box1.text) ((where a is the variable name and box1 is the input box) function on navigation to new page ( by putting this in Onselect menu) and then using it in the filter command.
Here is the steps to filter a gallery from the value coming from previous page.
put a button on the screen from where you want the value
on select property of the button put this code
Navigate(screenName,screenTransition,{variableName:valueToFilter})
Now on the Items property of Gallery put below code
Filter(datasource,columnToFilter = variableName)
Note that this variableName should be the same as above.
This will filter out your data in gallery.
For your 2nd question:
Create a list in Sharepoint which will have all the questions/fields.
Connect this list to your PowerApps app
insert a form on a screen.
add your Sharepoint list as a data source to the form
insert the button on the same page as form
onSelect property of button put this code
SubmitForm(formName)
I just created a report of Type "Transactions". I needed a report for Item Receipts and this seemed to be the best thing.
The report is built and looks as we want. However, I cannot figure out any way to put it on the dashboard. It appears that Report Snapshots only work with built in reports. Is there any way to do this in this situation?
IF you are trying to add a Search Report , in home screen click 'personalise' then in 'standard content' select 'custom search'.
After that you can see a dashboard in your home screen. click on setup then add the search report you want to display
Has anyone able to make a column to be hyperlink in cross table in Spotfire? I can set the column to Link Render in regular table, but not in cross table.
This isn't supported in Spotfire cross tables. However, you can use a graphical table and configure it such that clicking on a cell will navigate to a target url by configuring the "Action" button in the Axes settings so that it will perform an action upon click, and then use a small IronPython script to open the target url in a browser
I think it's not possible in crosstable. As #TWAndrews says, you can use a graphical table and for example, create an icon and perform action on click on this icon. This action could be a link to navigate in the Dashboard, a http:// link, and more other possibilities.
Use a link in a crosstable will work in webplayer and in computer software.