Quinn-Curtis Forums
Quinn-Curtis Forums
Home | Profile | Register | Active Topics | Members | Search | FAQ
 All Forums
 Tools for Microsoft .Net
 SPC Control Chart Tools for .Net
 Defining controls without Sigma levels

Note: You must be registered in order to post a reply.
To register, click here. Registration is FREE!

Screensize:
UserName:
Password:
Format Mode:
Format: BoldItalicizedUnderlineStrikethrough Align LeftCenteredAlign Right Horizontal Rule Insert HyperlinkInsert EmailInsert Image Insert CodeInsert QuoteInsert List
   
Message:

* HTML is OFF
* Forum Code is ON
Smilies
Smile [:)] Big Smile [:D] Cool [8D] Blush [:I]
Tongue [:P] Evil [):] Wink [;)] Clown [:o)]
Black Eye [B)] Eight Ball [8] Frown [:(] Shy [8)]
Shocked [:0] Angry [:(!] Dead [xx(] Sleepy [|)]
Kisses [:X] Approve [^] Disapprove [V] Question [?]

 
   

T O P I C    R E V I E W
YanNes Posted - 23 May 2012 : 04:26:53
Hello,

I'm trying to make a Chart and am encountering several difficulties.
We don't use sigma levels for controls, we only use user defined levels.

I want to make a Chart with 4 limits (2 on each side of center value).
The 2 limits farthest from the center value should trigger an alarm if 1 point of 1 is beyond them.
And the 2 limits close to the center value should trigger an alarm if 2 points of 3 are beyond them.

I've tried writing this code :

this.ChartData.SetControlLimitValues(new double[] { 20, 12, 28, 5, 0, 10 });

string[] controllimitstrings = { "VC", "LSI", "LSS", "EC", "LCL", "UCL" };
this.ChartData.SetControlLimitStrings(controllimitstrings);

ArrayList controlLimitData = this.PrimaryChart.ControlLimitData;
SPCControlPlotObjectData plotObject = (SPCControlPlotObjectData)controlLimitData[1];
plotObject.PlotLineAttrib.PrimaryColor = Color.Red;
plotObject.ControlLimitRecord.AlarmMessage = "Valeur hors limite de surveillance infrieure";

plotObject = (SPCControlPlotObjectData)controlLimitData[2];
plotObject.PlotLineAttrib.PrimaryColor = Color.Red;
plotObject.ControlLimitRecord.AlarmMessage = "Valeur hors limite de surveillance suprieure";


this.PrimaryChart.AddControlRule(1, 2, 3, 0, true);
plotObject = (SPCControlPlotObjectData)controlLimitData[controlLimitData.Count - 1];
plotObject.LimitValue = 15;
plotObject.PlotLineAttrib.PrimaryColor = Color.Orange;
plotObject.ControlLimitRecord.ControlLimitValue = 15;
plotObject.ControlLimitRecord.AlarmMessage = "2 points sur 3 en dehors de LCI";
plotObject.ControlLimitRecord.ControlLimitText = "LCI";
plotObject.Enable = true;

this.PrimaryChart.AddControlRule(2, 2, 3, 0, true);
plotObject = (SPCControlPlotObjectData)controlLimitData[controlLimitData.Count - 1];
plotObject.LimitValue = 25;
plotObject.PlotLineAttrib.PrimaryColor = Color.Orange;
plotObject.ControlLimitRecord.ControlLimitValue = 25;
plotObject.ControlLimitRecord.AlarmMessage = "2 points sur 3 en dehors de LCS";
plotObject.ControlLimitRecord.ControlLimitText = "LCS";
plotObject.Enable = true;

this.RebuildChartUsingCurrentData();

Here are the problems I've encountered from the most critical to the least :

1. Both LCS and LCI limits (the ones close to the center line) trigger when 1 out of 1 point is beyond them,
even though I created them using "this.PrimaryChart.AddControlRule(2, 2, 3, 0, true);"

2. The LCS line is not ploted but the LCI is. I used the same code for both and can't find the reason for this issue.

3. Changing the PlotLineAttrib primary color has no effect whatsoever.

Here is an image of what I currently have.

5   L A T E S T    R E P L I E S    (Newest First)
quinncurtis Posted - 25 May 2012 : 08:10:33
We cannot reproduce the range error you describe. Can you reference a specific chart in one of our example program where you are able to induce a range error by clicking on one of the histogram charts?
YanNes Posted - 25 May 2012 : 06:59:07
It works fine now thank you for your fast reaction.

I don't know if you are aware of that or if it's just because of the trial version,
but if you display the Histograms and you if you click randomly on it, it will
trigger an index out of range exception.
quinncurtis Posted - 24 May 2012 : 08:48:28
You are correct about the duplicate sigma level being the cause of the LCS not being plotted. That was a very astute observation.

We have lifted the restriction on N of M testing of explicit (non-sigma) numeric limits . So go ahead and download the trail version again and try it in your program.

Sorry, but the software has no way of saving or restoring the chart data from a file. You would have to handle that externally as you describe. We would like to have a version in the future which could do that from an SQL database, but it is nothing we are going to have in the near term.
YanNes Posted - 24 May 2012 : 03:17:56
I'm using the trial version of your software to see if it corresponds to our needs.

Regarding issue number 2, I assume it occurred because I used "this.PrimaryChart.AddControlRule(1, 2, 3, 0, true);"
2 times in a row on the same sigma level and it automatically changed the LimitType to not visible.


Is there a way to save and reload the ChartData (other than csv), or should I save the data separately and just rebuild
the Chart every time ?
quinncurtis Posted - 23 May 2012 : 12:47:01
1. In theory, most of what you show should work. But there is a test in our code however, that does not permit custom, numeric, control limits of type 1 and 2 (> or < tests) of working with N of M tests. Only simple limits. We will have to investigate this and see if we can lift this restriction.

2. We could not reproduce problem 2, the LCS control limit shows up fine. Perhaps it is related to item 3.

3. Set the color of the control limit line using this code.
plotObject.LinePlot.ChartObjAttributes.PrimaryColor = Color.Orange;


Are you using a trial, or a commercial version of the software?



Quinn-Curtis Forums © 2000-2018 Quinn-Curtis, Inc. Go To Top Of Page
Powered By: Snitz Forums 2000 Version 3.4.07