User Profile
Gowmadrid82
Frequent Visitor
Joined 4 years ago
User Widgets
Contributions
dynamic data source refresh in Power BI online
I have a report that is working fine in desktop and can be refreshed, but I am not able to refresh the dataset using Power BI Online as it states it has a dynamic data source. As I am only able to pull 8,500 record with each API call and there are usually about 50,000 records, I am using List.Generate and an offset for multiple API calls. I have the below function that is used to call an API and has an offset that is dynamic to know how much data to pull. The function is below FNGetSN = (offset) => let Source = Json.Document(Web.Contents("https://dummyURL.com/api/now/table/u_incident_user?sysparm_query=inc_sys_created_onONLast%203%20months%40javascript%3Ags.beginningOfLast3Months()%40javascript%3Ags.endOfLast3Months()%5Einc_u_customer!%3D5136503cc611227c0183e96598c4f706%5Einc_u_customer!%3Dbf5f738c6f596500c64dda385e3ee421%5Einc_u_customer!%3D6d3a9ebcdbba8300d6fefe9b0c9619ae%5Einc_u_customer!%3Df7a56e28dbe8cc94fbde9ce8db961917%5Einc_u_customer!%3D67035042dbd36b40fbde9ce8db96194c%5Einc_u_customer!%3De68317b66f94b90088d18be54b3ee462%5Einc_u_customer!%3D0e9fb38c6f596500c64dda385e3ee4a0%5Einc_u_customer!%3D3d7832fa4f75e20050062c518110c78d%5Einc_u_customerNOT%20LIKEDeskside&sysparm_display_value=true&sysparm_exclude_reference_link=true&sysparm_fields=inc_number%2Cinc_state%2Cinc_sys_created_on%2Cinc_u_call_type%2Cinc_contact_type%2Cinc_u_customer%2Cusr_email%2Cinc_location%2Cinc_priority%2Cinc_u_business_service%2Cinc_category%2Cinc_short_description%2Cinc_assignment_group%2Cinc_assigned_to%2Cinc_resolved_at%2Cinc_close_notes%2Cinc_calendar_duration&sysparm_limit=8500&sysparm_offset=" & Number.ToText ( offset ))), #"Converted to Table" = Table.FromRecords({Source}), #"Expanded result" = Table.ExpandListColumn(#"Converted to Table", "result"), #"Expanded result1" = Table.ExpandRecordColumn(#"Expanded result", "result", {"inc_u_call_type", "usr_email", "inc_u_customer", "inc_location", "inc_number", "inc_sys_created_on", "inc_close_notes", "inc_category", "inc_contact_type", "inc_state", "inc_priority", "inc_u_business_service", "inc_resolved_at", "inc_assignment_group", "inc_assigned_to", "inc_short_description", "inc_calendar_duration"}, {"result.inc_u_call_type", "result.usr_email", "result.inc_u_customer", "result.inc_location", "result.inc_number", "result.inc_sys_created_on", "result.inc_close_notes", "result.inc_category", "result.inc_contact_type", "result.inc_state", "result.inc_priority", "result.inc_u_business_service", "result.inc_resolved_at", "result.inc_assignment_group", "result.inc_assigned_to", "result.inc_short_description", "result.inc_calendar_duration"}), #"Changed Type" = Table.TransformColumnTypes(#"Expanded result1",{{"result.inc_u_call_type", type text}, {"result.usr_email", type text}, {"result.inc_u_customer", type text}, {"result.inc_location", type text}, {"result.inc_number", type text}, {"result.inc_sys_created_on", type datetime}, {"result.inc_close_notes", type text}, {"result.inc_category", type text}, {"result.inc_contact_type", type text}, {"result.inc_state", type text}, {"result.inc_priority", Int64.Type}, {"result.inc_u_business_service", type text}, {"result.inc_resolved_at", type datetime}, {"result.inc_assignment_group", type text}, {"result.inc_assigned_to", type text}, {"result.inc_short_description", type text}, {"result.inc_calendar_duration", type text}}) in #"Changed Type" And then I have a query that firstly uses an API to get a count of records and then uses that count to determine how many tables it needs to build. See below SN (Query) let apiResponse = Json.Document(Web.Contents("https://dummyURL.com/api/now/stats/u_incident_user?sysparm_query=inc_sys_created_onONLast%203%20months%40javascript%3Ags.beginningOfLast3Months()%40javascript%3Ags.endOfLast3Months()%5Einc_u_customer!%3D5136503cc611227c0183e96598c4f706%5Einc_u_customer!%3Dbf5f738c6f596500c64dda385e3ee421%5Einc_u_customer!%3D6d3a9ebcdbba8300d6fefe9b0c9619ae%5Einc_u_customer!%3Df7a56e28dbe8cc94fbde9ce8db961917%5Einc_u_customer!%3D67035042dbd36b40fbde9ce8db96194c%5Einc_u_customer!%3De68317b66f94b90088d18be54b3ee462%5Einc_u_customer!%3D0e9fb38c6f596500c64dda385e3ee4a0%5Einc_u_customer!%3D3d7832fa4f75e20050062c518110c78d%5Einc_u_customerNOT%20LIKEDeskside&sysparm_count=true")), result = apiResponse[result], stats = result[stats], count = Number.FromText(stats[count]), Source = List.Generate( () => [offset = 8500, SNR = FNGetSN( 0 )], each [offset] <= count+8500, each [offset = [offset] + 8500, SNR = FNGetSN([offset])], each [SNR] ), #"Converted to Table" = Table.FromList(Source, Splitter.SplitByNothing(), null, null, ExtraValues.Error), #"Expanded Column1" = Table.ExpandTableColumn(#"Converted to Table", "Column1", {"result.inc_u_call_type", "result.usr_email", "result.inc_u_customer", "result.inc_location", "result.inc_number", "result.inc_sys_created_on", "result.inc_close_notes", "result.inc_category", "result.inc_contact_type", "result.inc_state", "result.inc_priority", "result.inc_u_business_service", "result.inc_resolved_at", "result.inc_assignment_group", "result.inc_assigned_to", "result.inc_short_description", "result.inc_calendar_duration"}, {"result.inc_u_call_type", "result.usr_email", "result.inc_u_customer", "result.inc_location", "result.inc_number", "result.inc_sys_created_on", "result.inc_close_notes", "result.inc_category", "result.inc_contact_type", "result.inc_state", "result.inc_priority", "result.inc_u_business_service", "result.inc_resolved_at", "result.inc_assignment_group", "result.inc_assigned_to", "result.inc_short_description", "result.inc_calendar_duration"}), #"Changed Type" = Table.TransformColumnTypes(#"Expanded Column1",{{"result.inc_sys_created_on", type datetime}}), in #"Changed Type" Is there any way around this, as it works exactly as I want, but I just need to be able to refresh the data in Power BI Online? I would really appreciate any guidance and support on this. ThanksSolved624Views0likes1CommentRe: Bar chart to show form responses for multiple users
Ignore my last post regarding the measure to colour code, I have colour coded it using a switch and conditional formatting Response Colour = VAR ResponseColour = SELECTEDVALUE('Evaluation unpivoted'[Value]) RETURN SWITCH(TRUE(), ResponseColour = "Yes", 1, ResponseColour = "No", 2, ResponseColour = "No Basis To Respond", 3, ResponseColour = "Excellent", 4, ResponseColour = "Good", 5, ResponseColour = "Satisfactory", 6, ResponseColour = "Fair", 7, ResponseColour = "Poor", 8 )2.8KViews0likes0CommentsRe: Bar chart to show form responses for multiple users
Thank you Ashish and Ibendin for your suggestions. I have had a look at the custom visuals and whilst they can use both data points, visually I don't believe it will present the data that the user wants. I have managed to get the data as I want (to a certain degree by adding attribute and value to the x-axis (see below) with the legend showing as the associate Ashish_Mathur - I have tried your solution and using the slicer could work and I will present this to the requestor as an option. Although I do think they will prefer to have the quetsions separated out rather than the responses using the legend to present the questions as it is hard to digest the questions they have answered. Below is how your suggestion looks What I might do is have the attribute and value as the x-axis and then the count of value as the y. Remove the Legend completely (otherwise I cannot colour code the yes as green, no as red etc...) and then use the slicer as you suggested to view based on associate. (see below) If I do that, will I need to create a measure to apply the conditional formatting to show yes as green, no as red, no basis to respond as amber?2.8KViews0likes0CommentsBar chart to show form responses for multiple users
Hi, I am collecting feedback responses from Microsoft Forms and storing those into SharePoint and would like to report on those using a bar chart. The questions are mainly 'yes', 'no' or 'no basis to respond' answers, except the last question which has Excellent, Good, Satisfactory etc... There will be multiple responses for the same user, for example x number of people may provide feedback for the same person. Each question in the form is a column in a table. I have unpivoted all columns with the exception of the column that contains the person receiving feedback. I am able to create a bar chart that shows each question and the number of responses by the person receiving the feedback (there will be 4 in total), although I am struggling to figure out how to show how whether they answered 'yes', 'no' or 'no basis to respond' for each question and for each person receiving feedback. Below is a table showing the data, the first column is the summer associate receiving the feedback, the second is the attribute showing the question and the last is the value whether it is 'yes', 'no' or 'no basis to respond'. I have used a clustered bar chart, set the x-axis as the attribute, the y-axis as the value and the legend as the summer associate. Any ideas on best way to get the visual to also show the actual value e.g. 'yes', 'no' or 'no basis to respond'? Rather than it just counting the number of rows for each questionSolved2.9KViews0likes4CommentsMatrix with Clustered Bar Chart
Hi all, I am trying to replicate the visual below to show the average for questions answered and then to show the frequency of those ratings e.g. how many times did someone rate the number 5 for that particular question I have tried to replicate it but struggling. Is there a way of combining the visuals as above? I have so far created the visuals below Any ideas? thank youRe: Bar Graph with 3 topics showing average and last result
That is great, thank you. Yes, the highest ID being the last result. So I have nearly created what you have provided How do I get them to show as bars in the graph and not a line across it. What have you done differently for that? It is hard to follow your exact steps as it is in a different language. So I have the following4.5KViews0likes0CommentsRe: Bar Graph with 3 topics showing average and last result
I have uploaded the pbix file https://we.tl/t-fesbfKKAl9 I have experimented quite a bit, although the main table to look at is the Scoring Results. The columns with the scores that I am trying to average and then show the last result are the CoolScore, FitScore and Intelligent Score. There are some axis tables that I used to add all three scores to the one graph (as illustrated above). I also created a new table called ScoreResults Graph that is a copy of the Scoring Results but only has the columns required. I then unpivoted all columns but the ID column to also give all results in one graph, but again not sure how I just put the last value over the top of those. Thanks in advance for anyone helping with this, it has been driving me crazy trying to think of a solution and fear that I may be overcomplicating it the more I look into it 🙂4.6KViews0likes0Comments
Data Privacy
Microsoft Fabric Community and Privacy
To learn more about how we manage your data, please review the Microsoft Fabric Community Data Privacy guide.