bi
10 TopicsPower BI - Deneb visual - Read a JSON to create the visuals
Hi everyone, I have a graphic which work correctly. I use at the moment a table in power BI dedicated for this visual. It seems possible for deneb to read JSON data because when I provide the original table with the JSON column, I can see the data but when I try to use JSON.parse(), I have lot of errors Please find my current code which work perfectly from my Power BI. { "$schema": "https://vega.github.io/schema/vega/v5.json", "description": "Final trusted version with a correctly implemented 'No Schedule Data' message.", "width": 372, "height": 48, "signals": [ { "name": "pbi_time_offset_seconds", "init": "isValid(data('pbi_summarize')[0]) ? data('pbi_summarize')[0].DST_ClockDiffBtwLocationAndLocalOffset : 0" }, { "name": "utc_now", "init": "now()", "on": [ { "events": {"type": "timer", "throttle": 10000}, "update": "now()" } ] }, { "name": "remote_now", "update": "utc_now + (pbi_time_offset_seconds * 1000)" }, { "name": "remote_day", "update": "day(remote_now)" }, { "name": "remote_hour_decimal", "update": "hours(remote_now) + (minutes(remote_now) / 60) + (seconds(remote_now) / 3600)" }, { "name": "remote_time_label", "update": "timeFormat(remote_now, '%H:%M')" }, { "name": "has_data_for_today", "update": "data('daily_schedule').length > 0" } ], "data": [ { "name": "dataset" }, { "name": "pbi_summarize" }, { "name": "daily_schedule", "source": "dataset", "transform": [ {"type": "filter", "expr": "datum.day_num != null && datum.day_num == remote_day"} ] }, { "name": "schedule_bands", "source": "daily_schedule", "transform": [ { "type": "filter", "expr": "datum.ScheduleType == 'Production' || datum.ScheduleType == 'ITSupport'" }, { "type": "formula", "as": "display_type", "expr": "datum.type == 'Normal' ? (datum.ScheduleType == 'Production' ? 'Working hours' : 'Support hours') : datum.type == 'Flexible' ? 'Flexible hours' : 'No Working hours'" } ] }, { "name": "site_opening_start", "source": "daily_schedule", "transform": [ {"type": "filter", "expr": "datum.ScheduleType == 'SiteOpening'"}, {"type": "project", "fields": ["startTime"], "as": ["time_value"]} ] }, { "name": "site_opening_end", "source": "daily_schedule", "transform": [ {"type": "filter", "expr": "datum.ScheduleType == 'SiteOpening'"}, {"type": "project", "fields": ["endTime"], "as": ["time_value"]} ] } ], "scales": [ { "name": "xscale", "type": "linear", "range": "width", "domain": [0, 24] }, { "name": "yscale", "type": "band", "range": [1, 50], "domain": ["ITSupport", "Production"], "padding": 0.1 }, { "name": "color", "type": "ordinal", "domain": ["Working hours", "Support hours", "Flexible hours", "No Working hours"], "range": ["#a6cee3", "#b2df8a", "#1f78b4", "#d3d3d3"] } ], "axes": [ { "orient": "bottom", "scale": "xscale", "tickCount": 25, "title": { "signal": "timeFormat(remote_now, 'Time & Day (%Y-%m-%d)')" }, "labelFontSize": 9, "titleFontSize": 9 } ], "marks": [ { "type": "group", "name": "custom_legend", "encode": {"enter": {"x": {"value": 0}, "y": {"value": -40}}}, "marks": [ {"type": "rect", "encode": {"enter": {"x": {"value": 0}, "y": {"value": 0}, "width": {"value": 10}, "height": {"value": 10}, "fill": {"value": "#a6cee3"}}}}, {"type": "text", "encode": {"enter": {"x": {"value": 15}, "y": {"value": 9}, "text": {"value": "Working hours"}, "fontSize": {"value": 10}, "align": {"value": "left"}}}}, {"type": "rect", "encode": {"enter": {"x": {"value": 120}, "y": {"value": 0}, "width": {"value": 10}, "height": {"value": 10}, "fill": {"value": "#1f78b4"}}}}, {"type": "text", "encode": {"enter": {"x": {"value": 135}, "y": {"value": 9}, "text": {"value": "Flexible hours"}, "fontSize": {"value": 10}, "align": {"value": "left"}}}}, {"type": "rect", "encode": {"enter": {"x": {"value": 240}, "y": {"value": 0}, "width": {"value": 10}, "height": {"value": 10}, "fill": {"value": "#d3d3d3"}}}}, {"type": "text", "encode": {"enter": {"x": {"value": 255}, "y": {"value": 9}, "text": {"value": "No Working hours"}, "fontSize": {"value": 10}, "align": {"value": "left"}}}}, {"type": "rect", "encode": {"enter": {"x": {"value": 0}, "y": {"value": 15}, "width": {"value": 10}, "height": {"value": 10}, "fill": {"value": "#b2df8a"}}}}, {"type": "text", "encode": {"enter": {"x": {"value": 15}, "y": {"value": 24}, "text": {"value": "Support hours"}, "fontSize": {"value": 10}, "align": {"value": "left"}}}}, {"type": "rule", "encode": {"enter": {"x": {"value": 122}, "y": {"value": 13}, "x2": {"value": 122}, "y2": {"value": 23}, "stroke": {"value": "black"}}}}, {"type": "symbol", "encode": {"enter": {"x": {"value": 122}, "y": {"value": 22}, "shape": {"value": "triangle-up"}, "size": {"value": 25}, "fill": {"value": "black"}}}}, {"type": "rule", "encode": {"enter": {"x": {"value": 128}, "y": {"value": 15}, "x2": {"value": 128}, "y2": {"value": 24}, "stroke": {"value": "black"}}}}, {"type": "symbol", "encode": {"enter": {"x": {"value": 128}, "y": {"value": 15}, "shape": {"value": "triangle-down"}, "size": {"value": 25}, "fill": {"value": "black"}}}}, {"type": "text", "encode": {"enter": {"x": {"value": 135}, "y": {"value": 24}, "text": {"value": "Site Opening"}, "fontSize": {"value": 10}, "align": {"value": "left"}}}} ] }, { "type": "text", "interactive": false, "encode": { "enter": { "x": {"field": {"group": "width"}, "mult": 0.5}, "y": {"field": {"group": "height"}, "mult": 0.5}, "text": {"value": "No Schedule Data for Today"}, "fontSize": {"value": 12}, "fontWeight": {"value": "bold"}, "fill": {"value": "gray"}, "align": {"value": "center"} }, "update": { "opacity": [{"test": "has_data_for_today", "value": 0}, {"value": 1}] } } }, { "type": "rect", "from": {"data": "schedule_bands"}, "encode": { "enter": { "x": {"scale": "xscale", "field": "startTime"}, "x2": {"scale": "xscale", "field": "endTime"}, "y": {"scale": "yscale", "field": "ScheduleType"}, "height": {"scale": "yscale", "band": 1}, "fill": {"scale": "color", "field": "display_type"} }, "update": { "opacity": [{"test": "has_data_for_today", "value": 1}, {"value": 0}] } } }, { "type": "rule", "from": {"data": "site_opening_start"}, "encode": { "enter": {"x": {"scale": "xscale", "field": "time_value"}, "y": {"value": 0}, "y2": {"value": 50}, "stroke": {"value": "black"}, "strokeWidth": {"value": 2}}, "update": {"opacity": [{"test": "has_data_for_today", "value": 1}, {"value": 0}]} } }, { "type": "symbol", "from": {"data": "site_opening_start"}, "encode": { "enter": {"x": {"scale": "xscale", "field": "time_value"}, "y": {"value": 50}, "shape": {"value": "triangle-up"}, "size": {"value": 50}, "fill": {"value": "black"}}, "update": {"opacity": [{"test": "has_data_for_today", "value": 1}, {"value": 0}]} } }, { "type": "rule", "from": {"data": "site_opening_end"}, "encode": { "enter": {"x": {"scale": "xscale", "field": "time_value"}, "y": {"value": 0}, "y2": {"value": 50}, "stroke": {"value": "black"}, "strokeWidth": {"value": 2}}, "update": {"opacity": [{"test": "has_data_for_today", "value": 1}, {"value": 0}]} } }, { "type": "symbol", "from": {"data": "site_opening_end"}, "encode": { "enter": {"x": {"scale": "xscale", "field": "time_value"}, "y": {"value": 3}, "shape": {"value": "triangle-down"}, "size": {"value": 50}, "fill": {"value": "black"}}, "update": {"opacity": [{"test": "has_data_for_today", "value": 1}, {"value": 0}]} } }, { "type": "rule", "encode": { "update": { "x": {"scale": "xscale", "signal": "remote_hour_decimal"}, "y": {"value": 2}, "y2": {"value": 50}, "stroke": {"value": "red"}, "strokeWidth": {"value": 2} } } }, { "type": "text", "encode": { "update": { "x": {"scale": "xscale", "signal": "remote_hour_decimal"}, "y": {"value": 3}, "text": {"signal": "remote_time_label"}, "baseline": {"value": "bottom"}, "align": {"value": "center"}, "fill": {"value": "red"} } } } ] } Please find an example of my JSON file stored in Sharepoint (Text multi-lines) {"schedule_rules":[{"day_num":"0","segments":[{"approval_needed":null,"communication_needed":"Mandatory","end_time":"23:59","start_time":"00:00","type":"No Production"}]},{"day_num":"1","segments":[{"approval_needed":"Yes","communication_needed":null,"end_time":"12:30","start_time":"08:30","type":"Normal"},{"approval_needed":"Yes","communication_needed":null,"end_time":"16:30","start_time":"13:30","type":"Normal"}]},{"day_num":"2","segments":[{"approval_needed":"Yes","communication_needed":null,"end_time":"12:30","start_time":"08:30","type":"Normal"},{"approval_needed":"Yes","communication_needed":null,"end_time":"16:30","start_time":"13:30","type":"Normal"}]},{"day_num":"3","segments":[{"approval_needed":"Yes","communication_needed":null,"end_time":"12:30","start_time":"08:30","type":"Normal"},{"approval_needed":"Yes","communication_needed":null,"end_time":"16:30","start_time":"13:30","type":"Normal"}]},{"day_num":"4","segments":[{"approval_needed":"Yes","communication_needed":null,"end_time":"12:30","start_time":"08:30","type":"Normal"},{"approval_needed":"Yes","communication_needed":null,"end_time":"16:30","start_time":"13:30","type":"Normal"}]},{"day_num":"5","segments":[{"approval_needed":"Yes","communication_needed":null,"end_time":"12:30","start_time":"08:30","type":"Normal"},{"approval_needed":"Yes","communication_needed":null,"end_time":"16:30","start_time":"13:30","type":"Normal"}]},{"day_num":"6","segments":[{"approval_needed":null,"communication_needed":"Mandatory","end_time":"23:59","start_time":"00:00","type":"No Production"}]}]} How to import this JSON in Deneb ? I tried with JSON.parse but fails each time Thank you for your supportSolvedBest choice of custom visual
Hello, I've been asked to prepare a visualisation in line with the following example: I'm somewhat stumped with regards to which custom visual (if any) to pick, and thought to branch out to the wisdom of the Power BI-community 🙂 Any and all assistance in this matter would be greatly appreciated! Best regardsPowerBI: Create Burndown Chart
HI all, I am having trouble using measurements to create a dynamic calculated values for TotalHours, RemainingHours and TotalUserStoryPts so that I can create a burndown in PowerBI. Goal: Create a burndown chart using the following data: Sprint Start = 8/8/2022 Sprint End = 8/20/2022Solved6.7KViews0likes3CommentsHow to get the count of Products where actuals+forecast values are greater than 0 in a card visual?
Hi All, In a card visual, I have used a measure which takes the distinct count of product no. Now in additional to that, I have to include a logic to get the distinct count of product no where Actuals + Forecast > 0. In the below example, the distinct count of product no where Actuals + Forecast > 0 is 4. This logic I need to achieve in a Card visual. Can anybody help me with the logic here? Product No Actuals Forecast 1 0 30 2 0 0 3 65 100 4 50 0 5 0 0 6 100 150 Thanks in advance!!Solved553Views0likes1CommentCompare Licensing: embed Powerapps in BI vs. embed BI tiles in powerapps
Hi all, After some research, I found the licensing requirement of embedding Powerapps visual in BI vs. embedding BI tiles in powerapps are the same, they both require users to have BI pro(or premium depends on the size of org)+ Powerapps per user (or per app) plan. Is it correct? Also, can anyone point out what would be the main consideration to choose one among these 2 solutions? many thanks!! PA UserPower BI Mobile App to Power BI Server with OAuth + WAP: All reports return 404
Greetings, I have configured Power BI Server + OAuth + ADFS + WAP per https://github.com/MicrosoftDocs/powerbi-docs/blob/live/powerbi-docs/consumer/mobile/mobile-oauth-ssrs.md and https://www.youtube.com/embed/okzPAI2uUek. Using Power BI mobile app on Android and iOS, I can successfully authenticate. However, attempting to render any report just "spins" and if clicking refresh, returns 404. I have seen this error reported in a few other places, including: https://community.powerbi.com/t5/Report-Server/PBI-with-ADFS-and-WAP-i-can-authenticate-to-Server-but-all/m-p/367034#M4177 https://community.powerbi.com/t5/Report-Server/PowerBI-Mobile-App-and-Report-Server/m-p/397097 I have tried various combinations of changes to the WAP Application, the ADFS Application Group, and SPNs. When attempting to observe via Fiddler, I see the 404 returned on "GET https://FQDN/powerbi/mobile?manifest=OfflineSupport..." Not sure if that's helpful, or a red herring. I also noticed that there are some differences between the github docs and guyinacube's youtube video re ExternalURL and BackEndServerURL. Some examples include "/reports/" and some do not. I'm wondering if that could be related? Has anyone who has had this issue been successful in resolving? Any guidance greatly appreciated! GuyInACube ReiniervDijk agera111 Thanks, JN598Views0likes0CommentsD365FO and BI Server
We are implementing D365FO (currently in Discovery Phase) and I would like to understand how to include a BI Reporting instance. I've noticed that D365 has a lot more reports than our current 2009 instance but i'm looking for a better reproting isntance where I can build non-D365 cubes to link data from other systems. Is there a report server available which can easily connect to D365FO? I've dont a lot of searches but everything references PowerBI which appears to only connect to the D365 system to pull data. I'm looking for a Enterprise Reporting System. Please give me the product name or link to the product?820Views0likes1CommentAgile BI Project
I looked for an appropriate place to post this question, but nothing really jumped out. Any advice as to a better place to post would be appreciated. I am about to take a role as a BI Product Owner, but there is some debate as to how to structure the team. Some of the articles and white papers discuss a BI 'team' but this causes me a few conceptual concerns. If I read people like Craig Larman (Large Scale Scrum) he advises creating a 'feature team' that works across the stack to create a coherent customer-centric product. That might include embedded BI to the extent that the customer wanted it and found it valuable. If so, the feature team might need BI skills, as well as their other cross functional skills to deliver, but at least they would understand the data since it would be part of their app. However, BI is also a valuable internal product...using customer/app data to deliver customer insights, but also a whole range of internal operational issues that the customer might have no interest in. If you create a BI team centred on that 'product' then you have diverged from the customer-centric view (at least from a revenue generation point of view) but also you have a team that is not working right across the stack and doesn't work directly with the data. Does anyone see that as a tension? Any thoughts/ideas/observations/resources? All input gratefully received. GedSolved2.8KViews0likes2CommentsHow to start using PowerBI and create own scenario?
Hello, Im a beginner PowerBI user and I would like to create the simplest reporting system but Im not sure how... I want create the simplest reporting system with data to be retrieved from the company's data base. I want the report to be refreshed once a week and shown on the tv in office. I would like to know: - What do I need to create this scenario? (new pc? new server? some licence? some hardware?) - PowerBI Desktop is required to publish report? - Is it possible to publish reports via a website? - Can I install PowerBI Desktop on Linux systems? Im sorry if I made some mistakes. Please be understanding. Have a good day! Regards Daniel709Views0likes0Comments