<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic custom table visual in Custom Visuals Development Discussion</title>
    <link>https://community.fabric.microsoft.com/t5/Custom-Visuals-Development/custom-table-visual/m-p/1122414#M3193</link>
    <description>&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;I am creating a custom visual as below,&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="image.PNG" style="width: 382px;"&gt;&lt;img src="https://community.fabric.microsoft.com/t5/image/serverpage/image-id/283136iCB0ACF2E6A2D338E/image-dimensions/382x234?v=v2" width="382" height="234" role="button" title="image.PNG" alt="image.PNG" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;In the input column i give some numbers and it calculates the percantage as Totalsalescost/Input&lt;/P&gt;&lt;P&gt;But in percentage column the result gets reflected&amp;nbsp; only when i increase or decrease the size of table created.How can i solve this so that percentage column gets&amp;nbsp; reflected as soon as i enter input value&lt;/P&gt;&lt;P&gt;This is the snippet I used&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="img1.PNG" style="width: 313px;"&gt;&lt;img src="https://community.fabric.microsoft.com/t5/image/serverpage/image-id/283157i02990929B203632D/image-dimensions/313x213?v=v2" width="313" height="213" role="button" title="img1.PNG" alt="img1.PNG" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;Please help me with this&lt;/P&gt;</description>
    <pubDate>Wed, 27 May 2020 11:12:59 GMT</pubDate>
    <dc:creator>sheetalshettiga</dc:creator>
    <dc:date>2020-05-27T11:12:59Z</dc:date>
    <item>
      <title>custom table visual</title>
      <link>https://community.fabric.microsoft.com/t5/Custom-Visuals-Development/custom-table-visual/m-p/1122414#M3193</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;I am creating a custom visual as below,&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="image.PNG" style="width: 382px;"&gt;&lt;img src="https://community.fabric.microsoft.com/t5/image/serverpage/image-id/283136iCB0ACF2E6A2D338E/image-dimensions/382x234?v=v2" width="382" height="234" role="button" title="image.PNG" alt="image.PNG" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;In the input column i give some numbers and it calculates the percantage as Totalsalescost/Input&lt;/P&gt;&lt;P&gt;But in percentage column the result gets reflected&amp;nbsp; only when i increase or decrease the size of table created.How can i solve this so that percentage column gets&amp;nbsp; reflected as soon as i enter input value&lt;/P&gt;&lt;P&gt;This is the snippet I used&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="img1.PNG" style="width: 313px;"&gt;&lt;img src="https://community.fabric.microsoft.com/t5/image/serverpage/image-id/283157i02990929B203632D/image-dimensions/313x213?v=v2" width="313" height="213" role="button" title="img1.PNG" alt="img1.PNG" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;Please help me with this&lt;/P&gt;</description>
      <pubDate>Wed, 27 May 2020 11:12:59 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Custom-Visuals-Development/custom-table-visual/m-p/1122414#M3193</guid>
      <dc:creator>sheetalshettiga</dc:creator>
      <dc:date>2020-05-27T11:12:59Z</dc:date>
    </item>
    <item>
      <title>Re: custom table visual</title>
      <link>https://community.fabric.microsoft.com/t5/Custom-Visuals-Development/custom-table-visual/m-p/1124972#M3198</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.fabric.microsoft.com/t5/user/viewprofilepage/user-id/199830"&gt;@sheetalshettiga&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;As the text boxes are just plain elements, they will have no event handling or logic unless you wire something up - at the bare-minimum this would be something like adding a handler for &lt;A href="https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/change_event" target="_self"&gt;the change event&lt;/A&gt;. This event would need to call your &lt;FONT face="courier new,courier"&gt;percent&lt;/FONT&gt; function accordingly. The linked article has an &lt;A href="https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/change_event#Examples" target="_self"&gt;example&lt;/A&gt; for a text element.&lt;/P&gt;
&lt;P&gt;You'll need to recursively apply this event to each text element in the table, so people might typically manage this using a framework such as jQuery to take the pain out of managing this with raw JS/TS - &lt;A href="https://stackoverflow.com/questions/15864307/one-jquery-change-event-on-multiple-elements/51795276" target="_self"&gt;here's an example solution from Stack Overflow&lt;/A&gt; that advises how to do this.&lt;/P&gt;
&lt;P&gt;Note that if you aren't redrawing the visual DOM on update events then you will need to ensure that you don't bind the same event multiple times to the same element, as this will fire multiple event calls every time the value changes in a particular box. If you're re-drawing the elements each time the visual updates then you should be okay.&lt;/P&gt;
&lt;P&gt;Good luck!&lt;/P&gt;
&lt;P&gt;Daniel&lt;/P&gt;</description>
      <pubDate>Thu, 28 May 2020 05:00:52 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Custom-Visuals-Development/custom-table-visual/m-p/1124972#M3198</guid>
      <dc:creator>dm-p</dc:creator>
      <dc:date>2020-05-28T05:00:52Z</dc:date>
    </item>
    <item>
      <title>Re: custom table visual</title>
      <link>https://community.fabric.microsoft.com/t5/Custom-Visuals-Development/custom-table-visual/m-p/1125179#M3200</link>
      <description>&lt;P&gt;Thank you for the respose&amp;nbsp;&lt;a href="https://community.fabric.microsoft.com/t5/user/viewprofilepage/user-id/397"&gt;@dm-p&lt;/a&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am creating text box as below how can i add event to this.&lt;/P&gt;&lt;P&gt;My table is getting reflected only when i resize it.&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="img2.PNG" style="width: 372px;"&gt;&lt;img src="https://community.fabric.microsoft.com/t5/image/serverpage/image-id/283965i99114635FB8C9332/image-dimensions/372x184?v=v2" width="372" height="184" role="button" title="img2.PNG" alt="img2.PNG" /&gt;&lt;/span&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 28 May 2020 07:30:56 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Custom-Visuals-Development/custom-table-visual/m-p/1125179#M3200</guid>
      <dc:creator>sheetalshettiga</dc:creator>
      <dc:date>2020-05-28T07:30:56Z</dc:date>
    </item>
    <item>
      <title>Re: custom table visual</title>
      <link>https://community.fabric.microsoft.com/t5/Custom-Visuals-Development/custom-table-visual/m-p/1125389#M3201</link>
      <description>&lt;P&gt;Hi &lt;a href="https://community.fabric.microsoft.com/t5/user/viewprofilepage/user-id/199830"&gt;@sheetalshettiga&lt;/a&gt; - it's a lot more helpful if you can paste your code as text rather than as a screengrab so that it's easier to copy into my dev environment &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;Looks like you're using d3, so you can refer to the &lt;A href="https://github.com/d3/d3-selection#handling-events" target="_self"&gt;event handling documentation for more details&lt;/A&gt;, but there's not a lot of resource on how to do this, as it's not a common use case for d3 (particularly with TypeScript), so I've had to figure some of it out.&lt;/P&gt;
&lt;P&gt;Here's some working code with a single text element and a &amp;lt;p&amp;gt; element that proves we can update the value once we tab out of the box (so you will need to adapt to your code):&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="type.gif" style="width: 387px;"&gt;&lt;img src="https://community.fabric.microsoft.com/t5/image/serverpage/image-id/284037i15732796E8182E14/image-size/large?v=v2&amp;amp;px=999" role="button" title="type.gif" alt="type.gif" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;This will fire once the elment is tabbed out of, so you might need to adapt for a different event type - but it will grab the element you typed into, get the value and pass it to the percent function (which I just stubbed out to display the message with the number interpolated; it would take me too long to manually type in your function code and I don't have your DOM anyway so it wouldn't work as intended).&lt;/P&gt;
&lt;P&gt;For reference, here's my code - I just created a blank visual and worked from there:&lt;/P&gt;
&lt;LI-CODE lang="javascript"&gt;/** Visual.ts */
"use strict";

import "core-js/stable";
import "./../style/visual.less";
import powerbi from "powerbi-visuals-api";
import VisualConstructorOptions = powerbi.extensibility.visual.VisualConstructorOptions;
import VisualUpdateOptions = powerbi.extensibility.visual.VisualUpdateOptions;
import IVisual = powerbi.extensibility.visual.IVisual;
import EnumerateVisualObjectInstancesOptions = powerbi.EnumerateVisualObjectInstancesOptions;
import VisualObjectInstance = powerbi.VisualObjectInstance;
import DataView = powerbi.DataView;
import VisualObjectInstanceEnumerationObject = powerbi.VisualObjectInstanceEnumerationObject;
import * as d3 from 'd3';

import { VisualSettings } from "./settings";
export class Visual implements IVisual {
    private target: HTMLElement;
    private settings: VisualSettings;

    constructor(options: VisualConstructorOptions) {
        console.log('Visual constructor', options);
        this.target = options.element;
    }

    public update(options: VisualUpdateOptions) {
        this.settings = Visual.parseSettings(options &amp;amp;&amp;amp; options.dataViews &amp;amp;&amp;amp; options.dataViews[0]);
        console.log('Visual update', options);

        /** This is just a quick PoC */
            const container = d3.select(this.target);
            container.selectAll('*').remove();
            
            /** Simple test element to add output to */
            const display = container
                .append('p')
                .attr('id', 'myReplacedValue')
                .text('Initial');
            
            /** input with initial value */
            const inp = container
                .append('input')
                    .attr('type', 'text')
                    .attr('value', 0)
                    /** I'm doing as a fat arrow function so that 'this' is still the visual class */
                    .on('change', () =&amp;gt; {
                        const
                            keyEvent: KeyboardEvent = &amp;lt;KeyboardEvent&amp;gt;d3.event,
                            eventTarget: EventTarget = keyEvent.target,
                            value = d3.select(&amp;lt;HTMLInputElement&amp;gt;eventTarget).node().value;
                        this.percent(Number.parseFloat(value));
                    });
    }

    private percent(n: number) {
        /** 
         *  This is a stub, to prove we can get and use the number from the box
         */
         d3.select('#myReplacedValue')
            .text(`The entered percentage was ${n}.`);
    }

    private static parseSettings(dataView: DataView): VisualSettings {
        return &amp;lt;VisualSettings&amp;gt;VisualSettings.parse(dataView);
    }

    /**
     * This function gets called for each of the objects defined in the capabilities files and allows you to select which of the
     * objects and properties you want to expose to the users in the property pane.
     *
     */
    public enumerateObjectInstances(options: EnumerateVisualObjectInstancesOptions): VisualObjectInstance[] | VisualObjectInstanceEnumerationObject {
        return VisualSettings.enumerateObjectInstances(this.settings || VisualSettings.getDefault(), options);
    }
}&lt;/LI-CODE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If you need further assistance, this is more of a web development question rather than custom visuals specifically, so you might get more readily available assistance (and better than mine) on a wider forum more geared towards JavaScript and TypeScript in general, but I'm hoping that this may get you moving, and thanks for the question - it's not something I'd tried before &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;Good luck!&lt;/P&gt;
&lt;P&gt;Daniel&lt;/P&gt;</description>
      <pubDate>Thu, 28 May 2020 07:45:16 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Custom-Visuals-Development/custom-table-visual/m-p/1125389#M3201</guid>
      <dc:creator>dm-p</dc:creator>
      <dc:date>2020-05-28T07:45:16Z</dc:date>
    </item>
    <item>
      <title>Re: custom table visual</title>
      <link>https://community.fabric.microsoft.com/t5/Custom-Visuals-Development/custom-table-visual/m-p/1125437#M3202</link>
      <description>&lt;P&gt;Thank you&amp;nbsp;&lt;a href="https://community.fabric.microsoft.com/t5/user/viewprofilepage/user-id/397"&gt;@dm-p&lt;/a&gt;&amp;nbsp;you took time to solve my problem.&lt;/P&gt;&lt;P&gt;I was not known how to use keyEvent.The explanation and example you provided helped me understanding it better.Thank you for solving it.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 28 May 2020 07:59:05 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Custom-Visuals-Development/custom-table-visual/m-p/1125437#M3202</guid>
      <dc:creator>sheetalshettiga</dc:creator>
      <dc:date>2020-05-28T07:59:05Z</dc:date>
    </item>
    <item>
      <title>Re: custom table visual</title>
      <link>https://community.fabric.microsoft.com/t5/Custom-Visuals-Development/custom-table-visual/m-p/1133053#M3212</link>
      <description>&lt;P&gt;&lt;a href="https://community.fabric.microsoft.com/t5/user/viewprofilepage/user-id/397"&gt;@dm-p&lt;/a&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;As i have attached the screenshot of custom visual table in first post which i created i am getting default value for column percentage as infinite.can you please check with this as value should be zero or empty and then based on input it should change.&lt;/P&gt;&lt;P&gt;below is the snippet I used to add cell value to each row&lt;/P&gt;&lt;DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;let&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;rows&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;this&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;tbody&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;selectAll&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"tr"&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&lt;/SPAN&gt;&lt;SPAN&gt;data&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;viewModel&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;dataPoints&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&lt;/SPAN&gt;&lt;SPAN&gt;enter&lt;/SPAN&gt;&lt;SPAN&gt;()&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&lt;/SPAN&gt;&lt;SPAN&gt;append&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"tr"&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&lt;/SPAN&gt;&lt;SPAN&gt;attr&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"id"&lt;/SPAN&gt;&lt;SPAN&gt;,&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;id&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;+&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;1&lt;/SPAN&gt;&lt;SPAN&gt;);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;let&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;id2&lt;/SPAN&gt;&lt;SPAN&gt;:&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;number&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;0&lt;/SPAN&gt;&lt;SPAN&gt;;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;let&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;cells&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;rows&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;selectAll&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"td"&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&lt;/SPAN&gt;&lt;SPAN&gt;data&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;function&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;row&lt;/SPAN&gt;&lt;SPAN&gt;)&amp;nbsp;{&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;return&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;columns&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;map&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;function&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;column&lt;/SPAN&gt;&lt;SPAN&gt;)&amp;nbsp;{&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;return&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;{&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;column&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;column&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;value&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;row&lt;/SPAN&gt;&lt;SPAN&gt;[&lt;/SPAN&gt;&lt;SPAN&gt;column&lt;/SPAN&gt;&lt;SPAN&gt;]&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;})&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;})&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&lt;/SPAN&gt;&lt;SPAN&gt;enter&lt;/SPAN&gt;&lt;SPAN&gt;()&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&lt;/SPAN&gt;&lt;SPAN&gt;append&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"td"&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&lt;/SPAN&gt;&lt;SPAN&gt;attr&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"id"&lt;/SPAN&gt;&lt;SPAN&gt;,&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;id2&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;+&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;1&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&lt;/SPAN&gt;&lt;SPAN&gt;style&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"text-align"&lt;/SPAN&gt;&lt;SPAN&gt;,&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;"center"&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&lt;/SPAN&gt;&lt;SPAN&gt;style&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"vertical-align"&lt;/SPAN&gt;&lt;SPAN&gt;,&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;"middle"&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&lt;/SPAN&gt;&lt;SPAN&gt;text&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;function&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;d&lt;/SPAN&gt;&lt;SPAN&gt;,&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;i&lt;/SPAN&gt;&lt;SPAN&gt;)&amp;nbsp;{&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;return&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;d&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;value&lt;/SPAN&gt;&lt;SPAN&gt;;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;});&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Mon, 01 Jun 2020 11:41:52 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Custom-Visuals-Development/custom-table-visual/m-p/1133053#M3212</guid>
      <dc:creator>sheetalshettiga</dc:creator>
      <dc:date>2020-06-01T11:41:52Z</dc:date>
    </item>
    <item>
      <title>Re: custom table visual</title>
      <link>https://community.fabric.microsoft.com/t5/Custom-Visuals-Development/custom-table-visual/m-p/1134131#M3213</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.fabric.microsoft.com/t5/user/viewprofilepage/user-id/199830"&gt;@sheetalshettiga&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;Thanks for posting this, but only seeing a small snippet creates the following challenges for me:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;I can see that you're binding your data from your &lt;FONT face="courier new,courier"&gt;viewModel&lt;/FONT&gt;, but I can't see how this is being mapped in the first place, so you're accessing properties that I (as the reader) don't know anything about&lt;/LI&gt;
&lt;LI&gt;You're then trying to iterate through a variable named &lt;FONT face="courier new,courier"&gt;columns&lt;/FONT&gt; but the declaration of this is not in your snippet, so I can't know its structure or how it's being assembled in the first place&lt;/LI&gt;
&lt;LI&gt;I see nothing in the code that is a percentage calculation, or calls a method that works out a percentage, so the problem could actually be somewhere else not in your supplied code&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;As such, I can't really know what the rest of your code is doing. For example, I don't think you really need to use the &lt;FONT face="courier new,courier"&gt;.data()&lt;/FONT&gt; function twice, as the data should already be bound to your rows the first time and as a &lt;FONT face="courier new,courier"&gt;td&lt;/FONT&gt; element is a child of the &lt;FONT face="courier new,courier"&gt;tr&lt;/FONT&gt;, you can access that element's datum without having to re-bind it. This may or may not be causing you problems, but either way it will compound your code and make it harder to debug.&lt;/P&gt;
&lt;P&gt;If you're able to provide your whole &lt;FONT face="courier new,courier"&gt;visual.ts&lt;/FONT&gt; and your &lt;FONT face="courier new,courier"&gt;capabilities.json&lt;/FONT&gt; somehow, so that I can replicate your visual locally, I will take a look at your code and see if I can make any recommendations for you, but as I anticipate it'll take me a couple of hours' work, anything you can to to help meet me halfway would be gratefully appreciated.&lt;/P&gt;
&lt;P&gt;I find &lt;A href="https://gist.github.com/" target="_self"&gt;GitHub Gists&lt;/A&gt; a good way to share code if you're not using full source control, as you can consolidate one of more files in a single location and make this private if needs be. If you want to do something like this and DM me the link if you don't want to make it public, then I can pull the code down, try and replicate the issue and take a look for you.&lt;/P&gt;
&lt;P&gt;Thanks,&lt;/P&gt;
&lt;P&gt;Daniel&lt;/P&gt;</description>
      <pubDate>Mon, 01 Jun 2020 20:40:36 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Custom-Visuals-Development/custom-table-visual/m-p/1134131#M3213</guid>
      <dc:creator>dm-p</dc:creator>
      <dc:date>2020-06-01T20:40:36Z</dc:date>
    </item>
    <item>
      <title>Re: custom table visual</title>
      <link>https://community.fabric.microsoft.com/t5/Custom-Visuals-Development/custom-table-visual/m-p/1134754#M3215</link>
      <description>&lt;P&gt;Thank you for the reply I have found the problem was with percentage calculation.&lt;/P&gt;</description>
      <pubDate>Tue, 02 Jun 2020 05:07:09 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Custom-Visuals-Development/custom-table-visual/m-p/1134754#M3215</guid>
      <dc:creator>sheetalshettiga</dc:creator>
      <dc:date>2020-06-02T05:07:09Z</dc:date>
    </item>
    <item>
      <title>Re: custom table visual</title>
      <link>https://community.fabric.microsoft.com/t5/Custom-Visuals-Development/custom-table-visual/m-p/1134758#M3216</link>
      <description>&lt;P&gt;Yup - I just saw your original post in my email feed and figured it would be a divide by zero issue. Glad you're sorted &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 02 Jun 2020 05:08:26 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Custom-Visuals-Development/custom-table-visual/m-p/1134758#M3216</guid>
      <dc:creator>dm-p</dc:creator>
      <dc:date>2020-06-02T05:08:26Z</dc:date>
    </item>
    <item>
      <title>Re: custom table visual</title>
      <link>https://community.fabric.microsoft.com/t5/Custom-Visuals-Development/custom-table-visual/m-p/3997864#M9950</link>
      <description>&lt;P&gt;console.log(options).&amp;nbsp; i got my table value null&lt;BR /&gt;in construytor options also element and host null&amp;nbsp; &amp;nbsp;why so&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="18.06.2024_16.38.53_REC.png" style="width: 999px;"&gt;&lt;img src="https://community.fabric.microsoft.com/t5/image/serverpage/image-id/1118387i4B42C89A4EE64C8A/image-size/large?v=v2&amp;amp;px=999" role="button" title="18.06.2024_16.38.53_REC.png" alt="18.06.2024_16.38.53_REC.png" /&gt;&lt;/span&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 18 Jun 2024 11:09:21 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Custom-Visuals-Development/custom-table-visual/m-p/3997864#M9950</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2024-06-18T11:09:21Z</dc:date>
    </item>
  </channel>
</rss>

