<?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 Re: Column formula dependency cycle error in Discussions</title>
    <link>https://community.jmp.com/t5/Discussions/Column-formula-dependency-cycle-error/m-p/692170#M87788</link>
    <description>&lt;P&gt;Thanks for your suggestion. This is how I would set it up, but it only iterates for 2 rows and would take to long for just that row.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV&gt;&lt;PRE&gt;&lt;CODE class=" language-jsl"&gt;New Table( "test",
	Add Rows( 7 ),
	New Column ("Year", Set Values ([1,2,3,4,5,6,7])),
	New Column ("Failure Rate", Set Values ([0.1,0.1,0.15,0.2,0.25,0.3,0.35])),
	New Column( "original", Set Values( [100, ., ., ., ., ., .] ) ),
	New Column( "failed", formula (:Failure Rate *:original) ),
	New Column( "Survive", formula (:original - :failed ))
);

Wait( 2 );

For Each Row(
			If( Row() != 1,
				:original = Lag( :Survive )
			)
);&lt;/CODE&gt;&lt;/PRE&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mquyen_0-1698687768063.png" style="width: 400px;"&gt;&lt;img src="https://community.jmp.com/t5/image/serverpage/image-id/58112iF2572327A2455CCD/image-size/medium?v=v2&amp;amp;px=400" role="button" title="mquyen_0-1698687768063.png" alt="mquyen_0-1698687768063.png" /&gt;&lt;/span&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/DIV&gt;</description>
    <pubDate>Mon, 30 Oct 2023 17:42:56 GMT</pubDate>
    <dc:creator>mquyen</dc:creator>
    <dc:date>2023-10-30T17:42:56Z</dc:date>
    <item>
      <title>Column formula dependency cycle error</title>
      <link>https://community.jmp.com/t5/Discussions/Column-formula-dependency-cycle-error/m-p/691586#M87733</link>
      <description>&lt;P&gt;Hi all,&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Just wonder how we can do&amp;nbsp;&lt;SPAN&gt;circular references in JSL.&lt;/SPAN&gt;&lt;SPAN&gt;For example, I have&amp;nbsp;a population qty and failure rate. But the failure rate for each year depends on the survive&amp;nbsp;&lt;/SPAN&gt;parts.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Year Original equipment&amp;nbsp; &amp;nbsp;Failed&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;Survive&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 100&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;1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;99&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 99&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;2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;97&amp;nbsp; &amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;3&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 97&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;3&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;94&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;I know JMP doesn't allow a column to have a formula depends on the other formulated column. Is there a trick to work around for this case?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Thanks&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Thanks&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Sat, 28 Oct 2023 00:05:01 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/Column-formula-dependency-cycle-error/m-p/691586#M87733</guid>
      <dc:creator>mquyen</dc:creator>
      <dc:date>2023-10-28T00:05:01Z</dc:date>
    </item>
    <item>
      <title>Re: Column formula dependency cycle error</title>
      <link>https://community.jmp.com/t5/Discussions/Column-formula-dependency-cycle-error/m-p/691622#M87739</link>
      <description>&lt;P&gt;You can have formula columns in JMP which use other formula columns.&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="jthi_0-1698498113396.png" style="width: 400px;"&gt;&lt;img src="https://community.jmp.com/t5/image/serverpage/image-id/58070i391794DCE96E8E40/image-size/medium?v=v2&amp;amp;px=400" role="button" title="jthi_0-1698498113396.png" alt="jthi_0-1698498113396.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;How would you input new data in your case? Which columns should be calculated and based on which column(s)?&lt;/P&gt;</description>
      <pubDate>Sat, 28 Oct 2023 13:02:03 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/Column-formula-dependency-cycle-error/m-p/691622#M87739</guid>
      <dc:creator>jthi</dc:creator>
      <dc:date>2023-10-28T13:02:03Z</dc:date>
    </item>
    <item>
      <title>Re: Column formula dependency cycle error</title>
      <link>https://community.jmp.com/t5/Discussions/Column-formula-dependency-cycle-error/m-p/691656#M87742</link>
      <description>&lt;P&gt;With the original qty and the fails values you can fill in all values. (*)&lt;BR /&gt;So you could set up a script which is triggered every time a value is keyed in.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;You have to click once on **)&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="hogi_0-1698515944142.png" style="width: 400px;"&gt;&lt;img src="https://community.jmp.com/t5/image/serverpage/image-id/58074iDC6A3962CE9541CD/image-size/medium?v=v2&amp;amp;px=400" role="button" title="hogi_0-1698515944142.png" alt="hogi_0-1698515944142.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;... then everything will be fine:&lt;/P&gt;&lt;P&gt;If rows are added or an input value (*) is changed, the table gets updated - all the other changes will be ignored.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;div class="lia-vid-container video-embed-center"&gt;&lt;div id="lia-vid-6340165617112w888h540r926" class="lia-video-brightcove-player-container"&gt;&lt;video-js data-video-id="6340165617112" data-account="6058004218001" data-player="default" data-embed="default" class="vjs-fluid" controls="" data-application-id="" style="width: 100%; height: 100%;"&gt;&lt;/video-js&gt;&lt;/div&gt;&lt;script src="https://players.brightcove.net/6058004218001/default_default/index.min.js"&gt;&lt;/script&gt;&lt;script&gt;(function() {  var wrapper = document.getElementById('lia-vid-6340165617112w888h540r926');  var videoEl = wrapper ? wrapper.querySelector('video-js') : null;  if (videoEl) {     if (window.videojs) {       window.videojs(videoEl).ready(function() {         this.on('loadedmetadata', function() {           this.el().querySelectorAll('.vjs-load-progress div[data-start]').forEach(function(bar) {             bar.setAttribute('role', 'presentation');             bar.setAttribute('aria-hidden', 'true');           });         });       });     }  }})();&lt;/script&gt;&lt;a class="video-embed-link" href="https://community.jmp.com/t5/video/gallerypage/video-id/6340165617112"&gt;(view in My Videos)&lt;/a&gt;&lt;/div&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=" language-jsl"&gt;New Table( "test",
	Add Rows( 7 ),
	New Column( "original", Set Values( [100, ., ., ., ., ., .] ) ),
	New Column( "failed", Set Values( [1, 2, 3, 5, 32, 2, 6] ) ),
	New Column( "Survive" )
);

:survive &amp;lt;&amp;lt; set	Formula(
	If( Row() != 1,
		:original = Lag( :Survive )
	);		
	:original - :failed;
);
	
Wait( 0 );

:survive &amp;lt;&amp;lt; set	Formula(
	If( Row() != 1,
		:original = Lag( :Survive )
	);		
	:original - :failed;
);&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;edit:&lt;BR /&gt;hm, I don't know the difference to last time, but now the auto-update doesn't work at first place&amp;nbsp;&lt;BR /&gt;--&amp;gt; so just trigger it twice ;)&lt;/img&gt;&lt;BR /&gt;[I hope that tomorrow I won't need 3 trials ...]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;edit:&lt;BR /&gt;unnecessary &lt;FONT face="courier new,courier"&gt;For each row&lt;/FONT&gt; removed.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;**)&lt;/P&gt;&lt;P&gt;- any idea how to get rid of this message? -&amp;gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;- any idea why the last :&lt;FONT face="courier new,courier"&gt;survive&amp;nbsp;&lt;/FONT&gt;entry is missing [at least this is better today: not missing anymore :]&lt;/P&gt;&lt;P&gt;- any idea why today I need the formula command 2x ???&lt;/P&gt;</description>
      <pubDate>Mon, 30 Oct 2023 21:12:10 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/Column-formula-dependency-cycle-error/m-p/691656#M87742</guid>
      <dc:creator>hogi</dc:creator>
      <dc:date>2023-10-30T21:12:10Z</dc:date>
    </item>
    <item>
      <title>Re: Column formula dependency cycle error</title>
      <link>https://community.jmp.com/t5/Discussions/Column-formula-dependency-cycle-error/m-p/692170#M87788</link>
      <description>&lt;P&gt;Thanks for your suggestion. This is how I would set it up, but it only iterates for 2 rows and would take to long for just that row.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV&gt;&lt;PRE&gt;&lt;CODE class=" language-jsl"&gt;New Table( "test",
	Add Rows( 7 ),
	New Column ("Year", Set Values ([1,2,3,4,5,6,7])),
	New Column ("Failure Rate", Set Values ([0.1,0.1,0.15,0.2,0.25,0.3,0.35])),
	New Column( "original", Set Values( [100, ., ., ., ., ., .] ) ),
	New Column( "failed", formula (:Failure Rate *:original) ),
	New Column( "Survive", formula (:original - :failed ))
);

Wait( 2 );

For Each Row(
			If( Row() != 1,
				:original = Lag( :Survive )
			)
);&lt;/CODE&gt;&lt;/PRE&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mquyen_0-1698687768063.png" style="width: 400px;"&gt;&lt;img src="https://community.jmp.com/t5/image/serverpage/image-id/58112iF2572327A2455CCD/image-size/medium?v=v2&amp;amp;px=400" role="button" title="mquyen_0-1698687768063.png" alt="mquyen_0-1698687768063.png" /&gt;&lt;/span&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/DIV&gt;</description>
      <pubDate>Mon, 30 Oct 2023 17:42:56 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/Column-formula-dependency-cycle-error/m-p/692170#M87788</guid>
      <dc:creator>mquyen</dc:creator>
      <dc:date>2023-10-30T17:42:56Z</dc:date>
    </item>
    <item>
      <title>Re: Column formula dependency cycle error</title>
      <link>https://community.jmp.com/t5/Discussions/Column-formula-dependency-cycle-error/m-p/692178#M87790</link>
      <description>&lt;P&gt;Calculate new Original column and use that for your calculations&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-jsl"&gt;Names Default To Here(1);

dt = New Table("test",
	Add Rows(7),
	New Column("Year", Set Values([1, 2, 3, 4, 5, 6, 7])),
	New Column("Failure Rate", Set Values([0.1, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35])),
	New Column("original", Set Values([100, ., ., ., ., ., .])),
	New Column("failed", formula(:Failure Rate * :original)),
	New Column("Survive", formula(:original - :failed))
);

dt &amp;lt;&amp;lt; New Column("OriginalF", Numeric, Continuous, Formula(
	If(Row() == 1,
		:original
	,
		Lag(:OriginalF) - Lag(:OriginalF) * Lag(:Failure Rate)
	);
));

dt &amp;lt;&amp;lt; New Column("FailedF", Numeric, Continuous, Formula(
	:OriginalF * :Failure Rate;
));

dt &amp;lt;&amp;lt; New Column("SurviveF", Numeric, Continuous, Formula(
	:OriginalF - :FailedF
));&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="jthi_1-1698689433356.png" style="width: 400px;"&gt;&lt;img src="https://community.jmp.com/t5/image/serverpage/image-id/58114iF3227CF145D2BE80/image-size/medium?v=v2&amp;amp;px=400" role="button" title="jthi_1-1698689433356.png" alt="jthi_1-1698689433356.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 30 Oct 2023 18:11:11 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/Column-formula-dependency-cycle-error/m-p/692178#M87790</guid>
      <dc:creator>jthi</dc:creator>
      <dc:date>2023-10-30T18:11:11Z</dc:date>
    </item>
    <item>
      <title>Re: Column formula dependency cycle error</title>
      <link>https://community.jmp.com/t5/Discussions/Column-formula-dependency-cycle-error/m-p/692180#M87792</link>
      <description>&lt;P&gt;Thank you&amp;nbsp;@&lt;FONT color="#5a3e92"&gt;jthi.&lt;/FONT&gt;&amp;nbsp;That's a very clever way to break the reference cycle.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 30 Oct 2023 18:26:57 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/Column-formula-dependency-cycle-error/m-p/692180#M87792</guid>
      <dc:creator>mquyen</dc:creator>
      <dc:date>2023-10-30T18:26:57Z</dc:date>
    </item>
    <item>
      <title>Re: Column formula dependency cycle error</title>
      <link>https://community.jmp.com/t5/Discussions/Column-formula-dependency-cycle-error/m-p/692183#M87793</link>
      <description>&lt;P&gt;funny, like an old car :)&lt;/img&gt;&lt;/P&gt;&lt;P&gt;good that it starts after the 2nd try.&amp;nbsp;&lt;BR /&gt;same on your side?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=" language-jsl"&gt;New Table( "test",
	Add Rows( 7 ),
	New Column( "Year", Set Values( [1, 2, 3, 4, 5, 6, 7] ) ),
	New Column( "Failure Rate",
		Set Values( [0.1, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35] )
	),
	New Column( "original", Set Values( [100, ., ., ., ., ., .] ) ),
	New Column( "failed" ),
	New Column( "survive" )
);

start = Function( {},
	:survive &amp;lt;&amp;lt; set formula(
			If( Row() != 1,
				:original = Lag( :Survive )
			);
			:failed = :Failure Rate * :original;
		:original - :failed;
	)
);

start();


start();&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 30 Oct 2023 21:09:25 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/Column-formula-dependency-cycle-error/m-p/692183#M87793</guid>
      <dc:creator>hogi</dc:creator>
      <dc:date>2023-10-30T21:09:25Z</dc:date>
    </item>
    <item>
      <title>Re: Column formula dependency cycle error</title>
      <link>https://community.jmp.com/t5/Discussions/Column-formula-dependency-cycle-error/m-p/692184#M87794</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;a href="https://community.jmp.com/t5/user/viewprofilepage/user-id/14366"&gt;@jthi&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;&lt;P&gt;Calculate new Original column and use that for your calculations&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;and then: switch back to the old column names.&lt;BR /&gt;So, the trick is: don't use the "fails" to calculate the original values :)&lt;/img&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=" language-jsl"&gt;Names Default To Here(1);

New Table( "test",
	Add Rows( 7 ),
	New Table Variable( "original", 100 ),
	New Column( "Year", Numeric, "Continuous", Format( "Best", 10 ), Set Values( [1, 2, 3, 4, 5, 6, 7] ) ),
	New Column( "Failure Rate",
		Numeric,
		"Continuous",
		Format( "Best", 10 ),
		Set Values( [0.1, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35] )
	)
);


New Column("Original", Numeric, Continuous, Formula(
	If(Row() == 1,
		:original
	,
		Lag(:Original) - Lag(:Original) * Lag(:Failure Rate)
	);
));

New Column("Failed", Numeric, Continuous, Formula(
	:Original * :Failure Rate;
));

New Column("Survive", Numeric, Continuous, Formula(
	:Original - :Failed
));&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 30 Oct 2023 19:17:59 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/Column-formula-dependency-cycle-error/m-p/692184#M87794</guid>
      <dc:creator>hogi</dc:creator>
      <dc:date>2023-10-30T19:17:59Z</dc:date>
    </item>
  </channel>
</rss>

