Iterator does not iterate

Dear all,
I have the following problem:
I have a table with behind it a iterator. The data behind the table contains 12 rows. The table's rangesize gets initiated at 10 and the first time the table is shown it shows 10 filled rows.
However:
If I click on the 'next 2' or I select the '11-12' option on the dropdownlist of the table, the table shows 10 rows, starting from the 3th row of the previous set and ending with two blank rows.
The normal behavior, of other tables in the same application, is showing the next two rows in a refreshed table of two rows, this particular table seems not to have that intention.
I presume that the iterator, for some strange reason, doesn't change to the next row set.
It doesn't update the correct range nor rangestart in stead it uses the old rangesize (10), wants to show the two last rows but doesn't (blank rows).
Could anyone give me a hand on this ?
Some code:
the table:
<af:table value="#{bindings.ViewsLvl1AppModule1BalancesRefMovResultView.collectionModel}"
var="row"
rows="#{bindings.ViewsLvl1AppModule1BalancesRefMovResultView.rangeSize}"
emptyText="#{bindings.ViewsLvl1AppModule1BalancesRefMovResultView.viewable ? 'No rows yet.' : 'Access Denied.'}"
banding="row"
width="100%"
binding="#{instrumentDetailsBean.coreTable}">
From the pagedef:
<iterator id="BalancesRefMovResultViewIterator" RangeSize="10"
Binds="Root.ViewsLvl1AppModule1.BalancesRefMovResultView"
DataControl="GlobalAppModuleDataControl"
RefreshCondition="#{instrumentDetailsBean.queryExecuted}"/>
and
<table id="ViewsLvl1AppModule1BalancesRefMovResultView"
IterBinding="BalancesRefMovResultViewIterator">
<AttrNames>
<Item Value="DatCreation"/>
<Item Value="NbrMvt"/>
<Item Value="AmtOper"/>
<Item Value="TypMvt"/>
<Item Value="StopCodStop"/>
<Item Value="DscStop"/>
<Item Value="RefCik"/>
<Item Value="AccnNbrAcc"/>
<Item Value="CodStop"/>
<Item Value="DemdNbrDemand"/>
<Item Value="NamShort"/>
<Item Value="NamFullPrim"/>
<Item Value="RefAff"/>
</AttrNames>
</table>
If I on the other hand use a self-made dropdownlist that changes the range manually, the range and the table and, hurray, the last two rows, get displayed like a charm.
from the bean:
public void setRangeSize(Integer rangeSize) {
if(rangeSize == null)
return;
coreTable.setRows(rangeSize.intValue());
coreTable.setShowAll(false);
this.rangeSize = rangeSize;
EL.modifyRangeInIteratorBinding(this.rangeSize, "BalancesRefMovResultViewIterator");
from 'EL':
public static void modifyRangeInIteratorBinding(int range, String name) {
DCIteratorBinding iterBinding = getIteratorBinding(name);
if (iterBinding!=null){
iterBinding.setRangeSize(range);
} else {
log.error("faulty iteratorbinding occured in modifyRangeInIteratorBinding:"+name);
Any help or pointers to help greatly appreciated.
S.
Also: I tried to mimic the default behaviour by hand but it doesn't work, I attached a rangeChangeEventListener:
public void changeRangeEvent(RangeChangeEvent rangeChangeEvent) {
EL.modifyRangeStartInIteratorBinding(rangeChangeEvent.getNewStart(),"BalancesRefMovResultViewIterator");
setRangeSize(rangeChangeEvent.getNewEnd()-rangeChangeEvent.getNewStart()+1);
with again 'EL':
public static void modifyRangeStartInIteratorBinding(int rangeStart, String name) {
DCIteratorBinding iterBinding = getIteratorBinding(name);
if (iterBinding!=null){
iterBinding.setRangeStart(rangeStart);
} else {
log.error("faulty iteratorbinding occured in modifyRangeStartInIteratorBinding:"+name);
But when this code is executed the rangestart stays on 0 (only the first rows are displayed).
grtz,
S.
Edited by: matdoya on Dec 29, 2008 6:54 AM

Hi,
which Model technology is your application based on ?
ADF Business Components ?
The View Objects have a property called "*Fill Last Page of Rows when Paging Through Rowset*" (in the VO Editor wizard, "*Tuning*").
From the online help:
When a user scrolls through data in a page-by-page fashion on a client (such as from a series of web pages), the default behavior is to completely fill the last page with data.
As a result, rows viewed on the previous page can appear on the last page. Select to maintain this default behavior.
Regards,
Didier.

Similar Messages

  • Any reason Iterator does not extend Iterable?

    This has been knawing at me for a few weeks now (like a spinter in my mind). Is there any reason Sun did not have Iterator extend Iterable in 1.5? It seems to me that the for-each loop would operate perfectly on an Iterator. Yet, since Iterator is in no way related to Iterable (which even from a linguistic standpoint seems downright odd), I can't do it. I did write the following:
    public final class SimpleIterator<E> extends Object implements Iterable<E>, Iterator<E> {
         private final Iterator<E> nested;
         public SimpleIterator(final Collection<E> nested) {
              super();
              this.nested = Collections.unmodifiableCollection(nested).iterator();
         public final boolean hasNext() {
              return nested.hasNext();
         public final E next() {
              return nested.next();
         public final void remove() {
              throw new UnsupportedOperationException("SimpleIterator is immutable");
         public final Iterator<E> iterator() {
              return nested;
    }But IMO the above seems like a hack. I have two questions:
    Is the above safe (e.g., am I breaking some hidden rule in generics)?
    Why didn't Sun have Iterator extend Iterable?- Saish

    I think we should also consider that an Iterator has state. Generally when we talk about an Iterable we're referring to something like a Collection which may return an Iterator to iterate over the Collection. If Iterator implemented Iterable it would indeed be able to iterate, but not over itself and not even necessarily over the Collection (or whatever it is) that the Iterator was supposed to iterate over to begin with. Instead it would be relegated to iterating over something else and potentially only from the position where it started with a fun side effect of silently interfering with it's use elsewhere. My personal opinion is that aside from the fact that it just doesn't make much sense for an Iterator to be Iterable since the Iterator is not usually what's being iterated over to begin with, it would also likely lead to various annoying bugs when the same iterator is being iterated over in more than one place with little apparent benefit. After all, how often to you have a reference to an Iterator but not an Iterable where you want to use a for-each loop? I've never had that happen.
    Besides all of that, it would break backward compatibility. Sun making mistakes elsewhere does not justify it here.

  • Just got an iMac with Pages 5.2, which (unlike earlier iterations) does not recognize .cwk files.  What can I use to open them?

    I've got some legacy documents that are unavailable anywhere else.  Since I cannot replace or recreated them, they must be recovered.  Any suggestions on what application will get the job done?  Thanks.

    Try LibreOffice [free].
    Peter

  • Set a colour to a row in a table view which does not use an iterator

    Hi ,
      I have an application , which displays data using a table view.
    How can i set colour to a row based on the value of one of its coloums.
    The table view does not use an itertator.
    Thanks
    Arun

    you can use the following code in the ONMANIPULATION event to modify the color of the row. but be aware that if SAP changes rendering ot htmlb:tableview it may not work.
    this code sample set the bgcolor of row 2 to blue.
    DATA: httpbody TYPE string .
    CALL METHOD response->if_http_entity~get_cdata
      RECEIVING
        data = httpbody.
    REPLACE ALL OCCURRENCES OF '<tr rr="2"' IN httpbody WITH '<tr rr="2" bgcolor="blue"' IGNORING CASE .
    CALL METHOD response->if_http_entity~set_cdata
      EXPORTING
        data = httpbody.
    Regards
    Raja

  • Search in ADF does not work

    Hello.
    I have created a search form with two iterators one for the results and the other for the search criteria. The search form works as expected. The name of the view that i am using is "MasterPartyView1". When i execute the following code
    ViewObject voMasterParty = appMod.findViewObject("MasterPartyView1");
    voMasterParty.setWhereClause("Id = " + MasterPartyId);
    voMasterParty.executeQuery();
    Row rowDest = voMasterParty.first();
    in a backing bean and i go to the search form the only result that i a have is the row that i found in this statement (voMasterParty.setWhereClause("Id = " + MasterPartyId);).
    Why is that?The adf search does not go every time in the database to fetch rows?
    the only workaround for the moment is that i put these two extra lines in the backing bean
    voMasterParty.setWhereClause(null);
    voMasterParty.executeQuery();
    which is not correct because i am fetching all the rows from the database i think.
    Thank you in advance
    Periklis

    Frank thanks a lot for your answer but i still have some questions.
    1 question: One workaround that i found is to the search with the view named MasterPartyView1 and have another instance of the view object(MasterPartyView2) in order to perform the custom search(setwhereclause).This seems to work. Is this approach correct?
    2 question: if i understood correctly you say that both iterators point to the result set of the query (one row) and such is not possible to find other rows. But in the search form there is an invoke action
    <invokeAction id="AlwaysInFindMode" Binds="Find"
    RefreshCondition="${bindings.MasterPartyView1SearchIterator.findMode == false}"/>
    that to my understanding puts the iterator in Find mode, thus making the input text fields available for criteria again. So the search iterator now points to QBE and it is possible to iterate over a collection of QBE criteria rows. is this correct?And if it is why it does not work as expected?Why it does not bring other results?Why the iterators (the seach iterator and the results iterator) still point to the newly created result set?
    Thanks in advance
    Periklis

  • My database does not know of iterators

    I am creating a java class in my database, and I am trying to retrieve multiple rows from a table. In the documentation I find that
    #sql public iterator IteratorName(String name)
    creates an iterator with which I can iterate over multiple names from the table.
    the iterator is supposed to be filled with this code:
    IteratorName it = null;
    #sql it = {SELECT NAME FROM FILES};
    for some reason when I try to compile this, I get an error saying that the compiler does not know what an iterator is.
    Did I forget an import and if so, which one?

    Hello,
    I too have had this problem. As far as I can tell, the issue is not with import's as much as it is with getting Oracle to recognize sqlj-styled java source code directly, I think.
    I worked around this by taking my source file and compiling it "outside of Oracle" using the sqlj preprocessor.
    I took my Java class file (the one that contained the #-prefixed sqlj commands) and saved it with an extension of "sqlj". Then I ran the sqlj preprocessor on it. The sqlj preprocessor generated a .java file, and in that .java file, the iterator class was declared and defined. (You can pass sqlj a "-compile=false" command-line option to prevent it from also invoking the Java compiler to generate .class files. Otherwise, you will also get at least two .class files: one for the class you wrote, and another for the iterator class that sqlj generates.)
    I took the generated .java file, and used it to build a "create or replace and compile java source named ..." statement that I could paste directly into a SQL*Plus buffer, and that compiled just fine.
    I am still trying to determine whether or not I need to do something else to set java compilation options inside of Oracle, via the dbms_java package, in order to get Oracle to directly compile my "create or replace and compile java source named ..." statement without my having to use sqlj to generate a "plain java" source file from a "sqlj" source file.
    I know that your question is several months old... have you worked out a solution in the meantime that is simpler than what I described above?
    Regards,
    Rich Stewart

  • Second level detail in master-detail via VL does not return rows

    Sorry, I did not want to repost the entire thread. Please see the last entry in the following thread for my urgent question.
    second level detail in master-detail-detail does not return rows
    "second level detail in master-detail-detail does not return rows"
    Thanks so much!
    Teri

    Ahhh ... that explains everything!
    You wrote:
    ListView1
    -> ListRowView2 (via ListRowFkLink1)
    -> ListValueView2 (via ListValueFkLink2)
    That's why I thought it's a master and two details.
    But it's more like:
    ListView1
        -> ListRowView2 (via ListRowFkLink1)
              -> ListValueView2 (via ListValueFkLink2)Is that correct?
    That's the explanation.
    A ViewLink is basically a RowSetIterator controlling a detail RowSet. When the iterator navigates, the detail RS is refreshed.
    When you create a hierarchy in the wizard, the controlling master iterator is always the default iterator! But you used a new iterator (listRowIter) to iterate over your first detail. The default iterator of that first detail didn't move, hence the RowSet of your second detail was not refreshed.
    When you navigate in the tester, the tester always uses the default iterator. That's why it worked there.
    Sascha

  • CM14 BI Publisher - modifying an existing Data Model, the Graphic View in Query Builder does not display

    I am trying to edit the default forms/reports that come with CM14, trying to edit the data model, data set, (to get to the old Infomaker style graphic view) , the Query model does not display (error the list of tables is too long..) Oracle tell me the limit is 60,  there are not 60 tables referenced in any CM report.
    Does this Query builder view work at all on any report?
    (bigger question, we are moving from CM12, should we move to CM13 which works with infomaker?)
    Thanks,
    Paul L

    Kurt, thanks for your replies.
    A couple of notes/clarifications.
    1.     You are correct that BI works better in Firefox--I have observed issues with the BI display when using IE.  I would recommend using Firefox too.
    2.     You are correct about the way to get to the Query Builder to see a graphical view of data tables.  There are basically two issues with this that I mentioned, but will re-iterate:
    a.  If you have an EXISTING query in the data set, then click the "Query Builder" button, this will remove the existing query that's there, it will NOT display the existing query in the query builder.  Query Builder works only to create a NEW query from scratch.
    b.  Query builder is limited to selecting 60 fields max in your query.  If you are creating a large report with many tables, you may find that 60 fields is not enough.  For that you will have to work in the SQL edit screen rather than using the query builder.
    I would impress on anyone developing CM14 reports that they become familiar with the database schema and relationships to avoid problems when developing your BI reports.  You should be able to find the tables and joins documentation in the knowledgebase.

  • Memory does not get released after encrypting/ decrypting files.

    I am using javax.crypto package to encypt/decrypt files but the problem is that once a big file (around 100- 700 mb) is encrypted there is spike in memory of 70 Mb (first time) and whole of this memory is not released after execution is finished. I have kept my application run for days but this memory do not come down.
    Interesting thing is if I encrpyt/ decrypt the same file again and again the memory do not rise by 70 Mb, but for first 3-4 iterations 5-8 Mb of memory is released in each iteration and after that memory starts increasing again in chunk of 2-5 Mb and after few iteration some memory get released but in all the memory always increases. The code to encrypt file is simple
    Cipher c = Cipher.getInstance("AES/CBC/PKCS5Padding");
    byte[] salt = generateRandomBytes(16);
    Rfc2898DeriveBytes rfc = new Rfc2898DeriveBytes("123456", salt, 1000);
    SecretKey key = new SecretKeySpec(rfc.getBytes(32), "AES");
    c.init(Cipher.ENCRYPT_MODE, key );
    FileOutputStream fos = new FileOutputStream(encryptedFile);
    CipherOutputStream cos = new CipherOutputStream(fos);
    FileInputStream fis = new FileInputStream(largeInputFile);
    int len = 0;
    byte[] buf = new byte[1024 * 128];
    while((len = fis.read(buf)) != -1) {
       cos.write(buf, 0, len);
    cos.close();
    fis.close();
    This is simple observation I have seen in my program:
    I am using Windows 7 64 bit with 16 GB RAM Intel Core 2 Duo 3.00 GHz and file encrypted was 700 MB size
    Explanation
    Memory Usage (As shown in Windows Task Manager Private Working Set column)
    When program starts
    9924 K
    After first iteration of encryption
    81,180 K
    Second Iteration
    78,254 K
    3 Iteration
    74,614 K
    4 Iteration
    69,523 K
    5 Iteration
    72,256 K
    6 Iteration
    70,152 K
    7 Iteration
    83,327 K
    8 Iteration
    85,613 K
    9 Iteration
    95,124 K
    10 Iteration
    92,698 K
    11 Iteration
    94,670 K
    I kept the iteration on for 2000 iteration, the same pattern was observed and at the end memory usage 184,951 K, this memory was not released after calling System.gc() also.
    What could be the possible problem, is it the CipherOutputStream or Cipher class having some memory leak or I am doing something wrong here?

    ash wrote:
    We are using WebLogic Server 7.0 runing on Solaris 2.7.
    We are experiencing a problem where the memory does not seem to be released after
    the application has been shut down.What do you mean by "application has been shut down"? Is the server
    process running or not? Is it a zombie?
    The
    Unix 'top' command reports that memory has not been reclaimed by the O/S. What exactly has it reported? If the process is gone, then I'm pretty
    sure your O/S has reclaimed the memory. What exactly are you looking at
    in top?
    -- Rob
    > Continue
    restarting it will forces us to reboot the server as there will be more and more
    memory lost when restarting the WebLogic.
    Advice to fix the problem is much appreciated. Thanks.

  • CrystalReportViewer 2008 does not release GDI objects after closing.

    We need help in resolving an issue with a WinForms application we have developed that makes use of the Crystal Reports 2008 viewer control to both generate reports based on various parameters the user supplies and to view these same reports having been previously saved in crystal 2008 format.
    The issue we are seeing is that GDI objects are being created during the report generation process but some are not being released when the report viewer window is closed down. This leads to the system running out of GDI objects (seen by using the Windows task manager) and ultimately the application crashes. It is only when the application is closed completely that GDI resources are returned to the system.
    In an effort to isolate the cause of this problem we created a much simplified WinForms application that simply allowed us to systematically open and close a WinForm  that contains a CrystalReportViewer  to display one of our example reports. We found that the behaviour is the same for this application too.
    Browsing the crystal reports forums reveals there have been a few questions about u201Cmemory leaksu201D like this (see "Thread: CrystalReportViewer memory usage increases until out of memory" as an example) and there has been a good deal of talk about manually "disposing" of report documents and viewers but trying this does not correct this issue
    The extent of the "GDI Object leak" does depend upon the kind of report that is pulled in. One report we have that is 360 pages long and contains graphs and tables of data leaks 390 object per test iteration.
    Is this a known issue with the Crystal Report Viewer and if so is there an update or a workaround available?
    Are we performing all the correct initialisation prior to using the viewer? For example we are supplying the report to the viewer through a ReportDocument object; is there something special we need to do with that?
    Do we have to do anything special when closing the viewer?
    Could it be to do with the design of our reports? We are using the Crystal Reports 2008 editor (sp1) to do this design.
    We urgently need to help in understanding why this is happening and to be able implement a solution that will address this problem.
    I have provided the following code snippets of this sample application to give a flavour of what we are doing and hopefully you can see that it is not complex. The example shows the crystal viewer being presented with a ReportDocument as a Report Source ... this is how our proper application does things but if you try supplying the filename of the crystal report directly, the problem is the same.
    This C# code was written using Visual Studio 2008.
    // ===================================================================================
    //                                                  Sample Code Snippets  
    // ===================================================================================
        static class Program
            /// <summary>
            /// The main entry point for the application.
            /// </summary>
            [STAThread]
            static void Main()
                Application.EnableVisualStyles();
                Application.SetCompatibleTextRenderingDefault(false);
                Application.Run(new MDIParent1());
    // ===================================================================================
    // ===================================================================================
        public partial class MDIParent1 : Form
            private int childFormNumber = 0;
            public MDIParent1()
                InitializeComponent();
            private void ShowNewForm(object sender, EventArgs e)
                Form childForm = new TestForm();
                childForm.MdiParent = this;
                childForm.Text = "Window " + childFormNumber++;
                childForm.Show();
            private void OpenFile(object sender, EventArgs e)
                OpenFileDialog openFileDialog = new OpenFileDialog();
                openFileDialog.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.Personal);
                openFileDialog.Filter = "Text Files (.txt)|.txt|All Files (.)|.";
                if (openFileDialog.ShowDialog(this) == DialogResult.OK)
                    string FileName = openFileDialog.FileName;
            private void SaveAsToolStripMenuItem_Click(object sender, EventArgs e)
                SaveFileDialog saveFileDialog = new SaveFileDialog();
                saveFileDialog.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.Personal);
                saveFileDialog.Filter = "Text Files (.txt)|.txt|All Files (.)|.";
                if (saveFileDialog.ShowDialog(this) == DialogResult.OK)
                    string FileName = saveFileDialog.FileName;
            private void ExitToolsStripMenuItem_Click(object sender, EventArgs e)
                this.Close();
            private void CutToolStripMenuItem_Click(object sender, EventArgs e)
            private void CopyToolStripMenuItem_Click(object sender, EventArgs e)
            private void PasteToolStripMenuItem_Click(object sender, EventArgs e)
            private void ToolBarToolStripMenuItem_Click(object sender, EventArgs e)
                toolStrip.Visible = toolBarToolStripMenuItem.Checked;
            private void StatusBarToolStripMenuItem_Click(object sender, EventArgs e)
                statusStrip.Visible = statusBarToolStripMenuItem.Checked;
            private void CascadeToolStripMenuItem_Click(object sender, EventArgs e)
                LayoutMdi(MdiLayout.Cascade);
            private void TileVerticalToolStripMenuItem_Click(object sender, EventArgs e)
                LayoutMdi(MdiLayout.TileVertical);
            private void TileHorizontalToolStripMenuItem_Click(object sender, EventArgs e)
                LayoutMdi(MdiLayout.TileHorizontal);
            private void ArrangeIconsToolStripMenuItem_Click(object sender, EventArgs e)
                LayoutMdi(MdiLayout.ArrangeIcons);
            private void CloseAllToolStripMenuItem_Click(object sender, EventArgs e)
                foreach (Form childForm in MdiChildren)
                    childForm.Close();
    // ===================================================================================
    // ===================================================================================
        public partial class TestForm : Form
            private ReportDocument crDocument;
            public TestForm()
                InitializeComponent();
            private void TestForm_Load(object sender, EventArgs e)
                crDocument = new ReportDocument();
                crDocument.Load(@"C:\Reports\Sample1.rpt");
                this.crystalReportViewer1.ReportSource = crDocument;
    //            this.crystalReportViewer1.ReportSource = @"C:\Reports\Sample1.rpt";
            private void TestForm_FormClosing(object sender, FormClosingEventArgs e)
                this.crDocument.Dispose();
    // ===================================================================================

    Hi Martyn,
    I tested this and found after using this code to re-initialize the report viewer there we still 400 GDI objects not getting released. This may or may not be a CR issue. Still testing.
    Try this also, I simply created a close button but you should be able to do this in your form close method also depending on how you do it:
            private void CloseReport_Click(object sender, EventArgs e)
                rptClientDoc.Close();
                crystalReportViewer1.Dispose();
                GC.Collect();
                this.crystalReportViewer1 = new CrystalDecisions.Windows.Forms.CrystalReportViewer();
                InitializeComponent();
                crystalReportViewer1.ShowExportButton = true;
                crystalReportViewer1.EnableRefresh = true;
                crystalReportViewer1.Controls.Count.ToString();
                crystalReportViewer1.BackColor.IsNamedColor.ToString();
                crystalReportViewer1.EnableToolTips = true;
                crystalReportViewer1.Refresh();
    The issue has now been tracked - Problem_Report:  ADAPT01301248
    Thanks again
    Don
    Edited by: Don Williams on Sep 15, 2009 11:01 AM

  • Image does not update in loop with control

    Hi all,
    I am trying to make a data playback vi.  I have some data recorded, and images recorded from another vi saved onto my computer.
    I want to sync the data with the video, so we can tell what was happening visually when there is something interesting happening on the waveform etc
    I successfully made a real-time playback of the data and video.  The speed of the playback is selectable and works well.  The image output is inside a while loop.
    However, I would also like to make a different case where the time is selectable via a slider.
    The setup for the video playback is almost identical.  The only difference is that instead of the loop iteration output hooked up to the image array indexing, the output of the
    front panel slider is hooked up.
    However, this small changes is a big problem!  The data in the wires updates as I slide the slider fine, but the image in the front panel does not.
    If I scroll around the front panel the image WILL update, or if I zoom in or out etc.  Any action except moving the slider updates the image.
    This is somewhat confusing because the image updates with no front panel activity at all when using the iteration # output... why should the refresh care about getting
    the indexing from one source or another?
    I tried playing around with my display settings, like resolution, acceleration, color depth.  I've also added wait times.  I also tried to put in a flat case structure with the image
    update first, then checking the slider value and shift registering that around the while loop.
    It is probably something weird with Windows, but is there some way to 'trick' LabVIEW into a redraw? 

    Ah, I'm dumb.
    So when you have a selectable case structure (lets say two cases) and an image out in each it creates two image out windows in the front panel!
    The other image out was like 3 screens away for whatever reason, and THAT one was updating just fine.
    Now to put the case structure inside the while loop instead of the other way around so I can just have one image out...

  • "Eval Parsed Formula Node VI" does not return outputs in predefined order

    I make a data analysis program, where the data consists of some million events and each event has e.g. 4 channels and 1-5 hits on each channel. 
    I would like the user to select different expressions of these channels to give coordinates to plot in a 2D histogram (increment a bin in Intensity Graph), e.g. for some experiment you want to show x=ch1-ch2; y=ch1+ch2+ch3+ch4; while in another experiment you want x=ch1-123; y=123-ch2;
    There are other VIs that use static LabView-code for the normal things, but now after a few years of adding to this program I find that it would be quite good with a general plotter and let the user specify simple expressions like this. Also with the "normal" static plots, there is a need to filter out bad data and then it would be much simpler both to program and use if you could write text expressions with boolean logic to combine multiple filters. Making a LabView code and GUI that allows AND/OR/parenthesis combinations of expressions will be quite an effort and not very reusable.
    So, with the above motivation, I hope you see that it would make sense to have a useable string formula evaluator in LabView. I find some info about MathScript's user-defineable functions, but haven't managed to get MathScript working in LV2010 yet (maybe some licensing or installation issues, I think I had it in 8.6). But I think it would be possible to do most of what I want for the display-part (not the filtering) with the simpler Eval/Parse Formula Node VIs and suitable use of the limited variable name space. So I started testing, and found a quite annoying issue with how the evaulator works.
    To the parser, you are expected to send an array of output variable names. But then it ignores this array, and returns one output per assignment/semicolon in the formula, in the order of the formula text. Since the static parts of my program need to know what the output values mean (which of them is x and which is y), I would have to rely on the user not using any intermediate variable and defining x before y. The attached screenshot demonstrates the problem, and also that it has been solved by NI statff in the "Eval Formula Node VI" which does the appropriate array-searching to extract only the pre-defined outputs, in their expected order. But using that VI is about 100 times as slow, I need to pre-compile the formula and then only use the evaulator in the loop that runs over a million events.
    I don't know if I'll take the time to make my own tweks to the parsing stage (e.g. preparation of array-mapping to not have to repeat the search or maybe hacking the output list generated by the parser) or if I'll have to make it in a static Formula Node in the block-diagram (which supports more functions), so that the user has to run with development environment and stop the program to change the plotting function. But I wanted to share this trouble with you, in hope of improvments in future LabView versions or ideas from other people on how I could accomplish my aim. I have MATLAB-formula node possibility too, but is far as I have seen the only place the user could update the formula would then be in a separate .m file, which is re-read only when typing "clear functions" in the Matlab console window. (Having this window is also an annoyance, and perhaps the performance of calling Matlab in every iteration is not great.) 
    Besides this issue, it also seems very strange there is virtually no support for conditional expressions or operators in Formula Node evaulated formulas (called Mathematics VIs in the documentation). Maybe using (1+sign(a-b))/2 you can build something that is 0 when a<b and 1 when a>b, but it is not user friendly! Would it really be diffcult to add a function like iif(condition, return_value_if_true, return_value_if_false) to replace the unsupported "condition ? if_true : if_false" operator? Would it really be difficult to add support for the < <= >= > == || && operators? Although compiled to an assemply language, this can't exactly be difficult for a CPU.
    Attachments:
    LV script test.png ‏62 KB
    LV script test.vi ‏18 KB

    (1) You can put any kind of code inside an event structure with the limitation that it should be able to complete quickly and without user interaction.  For example a while loop for a newton-raphson method is fine, but an interactive while loop where the stop condition depends on user iteraction is not recommended. By default, event structures lock the front panel until the event completes, so you would not even be able to stop it.
    (2) Yes, you can do all that. LabVIEW has no limitation as a programming language. Use shift registers to hold data and state information, the manipulate the contents as needed.
    (3) I would recommend to use plain LabVIEW primitives instead of formula nodes. Show us your code so we can better see what it's all about. Obviously you have a mismatch betweeen scalars and arrays. It is impossible from the given information where the problem is.
    (4) Yes, look inside the nonlinear curve fit VI (you can open it an inspect the code!). One of the subVIs does exactly that. Just supply your model VI.
    LabVIEW Champion . Do more with less code and in less time .

  • New view object row does not get committed to DB

    Hi guys,
    on a taskflow with a new transaction I have a form to enter a new record on an entity-based view object.
    Before the page is called I call the CreateInsert Operation to create the new record on that view object.
    There are quite a few attributes that have default values which I determine in the ViewRowImpl's create method (using populateAttributeAsChanged to set the values).
    Now if none of the inputValues in the form is filled manually and I want to save the data (default values are sufficient to save the record) the taskflow return action commit does not commit the data to the db. As soon as I manually enter one value into any field the same return action commits the record correctly to the db. There is no error message and the new record is visible in the application because it is inserted into the view's iterator...
    Is there any way to mark the new row as changed/insert if only the default values are filled? Or am I doing something wrong?
    Using JDev 11.1.1.5
    Achim

    Add the following method in your RowImpl class:
    public void setNewRowState(byte b) {
         if (b != Row.STATUS_INITIALIZED ||
             getNewRowState() != Row.STATUS_NEW) {
             super.setNewRowState(b);

  • This.print(pp) with interactive type silent or automatic does not work  after upgrade acrobat reader 9 to acrobat reader 11

    After an upgrade of acrobat reader 9 to acrobat reader 11 the automatic printing of a pdf. The pdf is opened, but the print does not happen. With acrobat reader 9 it works. But with acrobat reader 11 the printing does not happen.
    I discovered when you specify pp.constants.interactionLevel.full it works on acrobat reader 11. But when you specify pp.constants.interactionLevel.silent or pp.constants.interactionLevel.automatic it does not work on acrobat reader 11. But with the full option we have a dialog  print box
    we do not want.
    In our jsp we load a pdf document and create a message handler to detect the print events of a pdf document that is in an <object> tag.
    In the pdf document we add
    package be.post.lpo.util;
    import org.apache.commons.lang.StringEscapeUtils;
    import org.apache.commons.lang.StringUtils;
    public class AcrobatJavascriptUtil {  
        public String getPostMessageToHostContainer(String messageName, String messageBody){
            return "var aMessage=['"+messageName+ "', '"+ messageBody+"'];this.hostContainer.postMessage(aMessage);";
        public String getAutoPrintJavaScript(String interactiveType, String printerName,String duplexType) {    
            String interactiveTypeCommand = "";
            if (StringUtils.isNotBlank(interactiveType)){
                interactiveTypeCommand = "pp.interactive = " + interactiveType + ";";
            String duplexTypeCommand = "";
            if (StringUtils.isNotBlank(duplexType)){
                duplexTypeCommand = "pp.DuplexType = " + duplexType + ";";
            return "" + // //
                    "var pp = this.getPrintParams();" + // //
                    // Nointeraction at all dialog, progress, cancel) //
                    interactiveTypeCommand + //
                    // Always print to a printer (not to a file) //
                    "pp.printerName = \"" + StringEscapeUtils.escapeJavaScript(printerName) + "\";" + //
                    // Never print to a file. //
                    "pp.fileName = \"\";" + //
                    // Print images using 600 DPI. This option MUST be set or some barcodes cannot //
                    // be scanned anymore. //
                    "pp.bitmapDPI = 600;" + //
                    // Do not perform any page scaling //
                    "pp.pageHandling = pp.constants.handling.none;" + //
                    // Always print all pages //
                    "pp.pageSubset = pp.constants.subsets.all;" + //
                    // Do not autocenter //
                    "pp.flags |= pp.constants.flagValues.suppressCenter;" + //
                    // Do not autorotate //
                    "pp.flags |= pp.constants.flagValues.suppressRotate;" + //
                    // Disable setPageSize i.e. do not choose paper tray by PDF page size //
                    "pp.flags &= ~pp.constants.flagValues.setPageSize;" + //
                    // Emit the document contents. Document comments are not printed //
                    "pp.printContent = pp.constants.printContents.doc;" + //
                    // printing duplex mode to simplex, duplex long edge, or duplex short edge feed //
                    duplexTypeCommand +
                    // Print pages in the normal order. //
                    "pp.reversePages = false;" + //
                    // Do the actual printing //
                    "this.print(pp);";
    snippets for java code that adds
    package be.post.lpo.util;
    import org.apache.commons.lang.StringUtils;
    import com.lowagie.text.Document;
    import com.lowagie.text.DocumentException;
    import com.lowagie.text.pdf.PdfAction;
    import com.lowagie.text.pdf.PdfDestination;
    import com.lowagie.text.pdf.PdfImportedPage;
    import com.lowagie.text.pdf.PdfName;
    import com.lowagie.text.pdf.PdfReader;
    import com.lowagie.text.pdf.PdfWriter;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.OutputStream;
    import java.util.ArrayList;
    import java.util.Iterator;
    import java.util.List;
    public class PdfMergerUtil{
        private static final PdfName DID_PRINT = PdfName.DP;
        private static final PdfName WILL_PRINT = PdfName.WP;
        private List<PdfActionJavaScriptHolder> actionJavaScripts = new ArrayList<PdfActionJavaScriptHolder>();
        private class PdfActionJavaScriptHolder{
            private final PdfName actionType;
            private final String javaScript;
            public PdfActionJavaScriptHolder(PdfName actionType, String javaScript) {
                super();
                this.actionType = actionType;
                this.javaScript = javaScript;
            public PdfName getActionType(){
                return this.actionType;
            public String getJavaScript(){
                return this.javaScript;
        public void writePdfs(OutputStream outputStream, List<InputStream> documents, String documentLevelJavaScript) throws Exception {
            Document document = new Document();
            try {          
              // Create a writer for the outputstream
              PdfWriter writer = PdfWriter.getInstance(document, outputStream);
              document.open();      
              // Create Readers for the pdfs.
              Iterator<PdfReader> iteratorPDFReader = getPdfReaders(documents.iterator());
              writePdfReaders(document, writer, iteratorPDFReader);
              if (StringUtils.isNotBlank(documentLevelJavaScript)){
                  writer.addJavaScript(documentLevelJavaScript);
              addAdditionalActions(writer);
              outputStream.flush();      
            } catch (Exception e) {
                e.printStackTrace();
                throw e;
            } finally {
                if (document.isOpen()){
                    document.close();
                try {
                    if (outputStream != null){
                        outputStream.close();
                } catch (IOException ioe) {
                    ioe.printStackTrace();
                    throw ioe;
        public void addAdditionalDidPrintAction(String javaScript){
            actionJavaScripts.add(new PdfActionJavaScriptHolder(DID_PRINT, javaScript));   
        public void addAdditionalWillPrintAction(String javaScript){
            actionJavaScripts.add(new PdfActionJavaScriptHolder(WILL_PRINT, javaScript));   
        private void writePdfReaders(Document document, PdfWriter writer,
                Iterator<PdfReader> iteratorPDFReader) {
            int pageOfCurrentReaderPDF = 0;      
              // Loop through the PDF files and add to the output.
              while (iteratorPDFReader.hasNext()) {
                PdfReader pdfReader = iteratorPDFReader.next();
                // Create a new page in the target for each source page.
                while (pageOfCurrentReaderPDF < pdfReader.getNumberOfPages()) {
                  document.newPage();
                  pageOfCurrentReaderPDF++;          
                  PdfImportedPage page = writer.getImportedPage(pdfReader, pageOfCurrentReaderPDF);
                  writer.getDirectContent().addTemplate(page, 0, 0);          
                pageOfCurrentReaderPDF = 0;
        private void addAdditionalActions(PdfWriter writer) throws DocumentException{
            if (actionJavaScripts.size() != 0 ){
                PdfAction action = PdfAction.gotoLocalPage(1, new PdfDestination(PdfDestination.FIT), writer);
                writer.setOpenAction(action);
                for (PdfActionJavaScriptHolder pdfAction : actionJavaScripts ){
                    if (StringUtils.isNotBlank(pdfAction.getJavaScript())){
                        action = PdfAction.javaScript(pdfAction.getJavaScript(), writer);
                        writer.setAdditionalAction(pdfAction.getActionType(), action);
        private Iterator<PdfReader> getPdfReaders(Iterator<InputStream> iteratorPDFs) throws IOException {
            List<PdfReader> readers = new ArrayList<PdfReader>();
              while (iteratorPDFs.hasNext()) {
                InputStream pdf = iteratorPDFs.next();
                PdfReader pdfReader = new PdfReader(pdf);
                readers.add(pdfReader);        
            return readers.iterator();
    JSP code
    <script type="text/javascript" src="<bean:message key="scripts.js.internal.jquery" bundle="app"/>"></script>
        <script language="javascript">
        function goToDidPrintUrl(){
            var url = "<%=didPrintUrl%>";
            window.location.assign(url);
        function createMessageHandler() {
            var PDFObject = document.getElementById("myPdf");
            PDFObject.messageHandler = {
                onMessage: function(msg) {
                     if (msg[0] == "WILL_PRINT"){      
                        $("#printingTransitFeedBackMessage").text('<%=willPrintMessage%>');                   
                     if(msg[0] == "DID_PRINT"){
                        $("#printingTransitFeedBackMessage").text('<%=didPrintMessage%>');               
                        setTimeout('goToDidPrintUrl()',4000);
                onError: function(error, msg) {
                    alert(error.message);
        </script>
    </head>
    <body onLoad="createMessageHandler();">
    <div id="printingTransitFeedbackArea">
      <div class="info" id="printingTransitFeedBackMessage"><%=documentOpenMessage%></div>
    </div>
    <object id="myPdf" type="application/pdf" width="100%" height="100%"  data="<%=toBePrintedUrl%>">
    </object>
    </body>

    From the JS API Reference of the print method:
    Non-interactive printing can only be executed during batch, console, and menu
    events.
    Outside of batch, console, and menu events, the values of bUI and of interactive are ignored
    and a print dialog box will always be presented.

  • URLLoader works great localhost but live does not work

    I have been working on this for a few days on the localhost set up, retriving data as varaibles from a php string.
    There is a output.php file located on the server
    http://example.com/room/output.php
    My Flash code for retriving the code(the swf in embedded into a menu.php file that is in this dir http://example.com/room/menu.php)
    var theloader:URLLoader = new URLLoader();
    theloader.dataFormat = URLLoaderDataFormat.VARIABLES;   
    theloader.load(new URLRequest("http://example.com/room/output.php"));
    theloader.addEventListener(Event.COMPLETE, turnOn);
    There is no error given by Flash, i just does not load
    This is what i have tried(as far as the link is concered)
    theloader.load(new URLRequest("http://example.com/room/output.php"));
    theloader.load(new URLRequest("http://www.example.com/room/output.php"));
    theloader.load(new URLRequest("/output.php"));
    theloader.load(new URLRequest("output.php"));
    Still is not loading the file, Any Suggestions would be helpful
    Thanks

    This is the file script, the php does not give any html, it simply outputs the requested string, no whitespaces nothing like that
    Any help will be aprecaited, I just noticed that sometimes the animation freezes when it comes to loading the showImages function
    import fl.transitions.*;
    import fl.transitions.easing.*;
    import flash.events.TimerEvent;
    var theloader:URLLoader = new URLLoader();
    theloader.dataFormat = URLLoaderDataFormat.VARIABLES;   
    theloader.load(new URLRequest("output.php"));
    theloader.addEventListener(Event.COMPLETE, turnOn);
    //Set the Timer for the Images to Show up
    var delayCall:Number = 3000;
    var repeatCall:int = 1;
    var imagesShow:Timer = new Timer(delayCall, repeatCall);
    imagesShow.start();
    //Add Event Listener for the imagesShow Timer
    imagesShow.addEventListener(TimerEvent.TIMER_COMPLETE, showImages);
    //Define Text Formats
    //1st is Heading Text
    var headingTxt:TextFormat = new TextFormat();
    headingTxt.font = "Eurostile";
    headingTxt.size = 18;
    headingTxt.color = 0x40ABE3;
    headingTxt.bold = true;
    headingTxt.underline = true;
    //2nd is Car Name Text
    var carnameTxt:TextFormat = new TextFormat();
    carnameTxt.font = "Eurostile";
    carnameTxt.size = 14;
    carnameTxt.color = 0x40ABE3;
    carnameTxt.bold = true;
    carnameTxt.underline = false;
    //3rd is Car Description
    var cardescTxt:TextFormat = new TextFormat();
    cardescTxt.font = "Eurostile";
    cardescTxt.size = 10;
    cardescTxt.color = 0xF6F9FA;
    cardescTxt.bold = true;
    cardescTxt.underline = false;
    //4th is for Car Price
    var carpriceTxt:TextFormat = new TextFormat();
    carpriceTxt.font = "Eurostile";
    carpriceTxt.size = 15;
    carpriceTxt.color = 0xF6F9FA;
    carpriceTxt.bold = true;
    carpriceTxt.underline = false;
    function showImages(event:TimerEvent):void {
    var bmw:MovieClip = new bmw_mc();
    var ferrari:MovieClip = new ferrari_mc();
    var lambo:MovieClip = new lambo_mc();
    var mercedes:MovieClip = new mercedes_mc();
    bmw.x = 260;
    bmw.y = 340;
    mercedes.x = 50;
    mercedes.y = 18;
    lambo.x = 530;
    lambo.y = 20;
    ferrari.x = 570;
    ferrari.y = 370;
    bmw.rotation = 20;
    var bmw = new TransitionManager(bmw);
    bmw.startTransition({type:Zoom, direction:Transition.IN, duration:4, easing:Elastic.easeOut});
    addChildAt(bmw, 0);
    var mercedes = new TransitionManager(mercedes);
    mercedes.startTransition({type:Iris, direction:Transition.IN, duration:2, easing:Strong.easeOut, startPoint:5, shape:Iris.CIRCLE});
    addChildAt(mercedes, 0);
    var lambo = new TransitionManager(lambo);
    lambo.startTransition({type:Blinds, direction:Transition.IN, duration:2, easing:None.easeNone, numStrips:10, dimension:0});
    addChildAt(lambo, 0);
    var ferrari = new TransitionManager(ferrari);
    ferrari.startTransition({type:Fade, direction:Transition.IN, duration:8, easing:Strong.easeOut});
    addChildAt(ferrari, 0);
    function turnOn(event:Event):void {
    //Looking After Spacing    
    var tft:Number = 325;
    var twt:Number = 325;
    var tct:Number = 50;
    var tst:Number = 50;
    //Looking after heading Text
    var category:TextField = new TextField();
    category.text = "CAR LIST";
    category.x = 400;
    category.y = 300;
    category.setTextFormat(headingTxt);
    var movieTween:Tween = new Tween(category, "x", Elastic.easeOut, 600, 400, 2, true);
    addChild(category);
    var categoryone:TextField = new TextField();
    categoryone.text = "TRAILER LIST";
    categoryone.x = 50;
    categoryone.y = 300;
    categoryone.setTextFormat(headingTxt);
    var cargoTween:Tween = new Tween(categoryone, "x", Elastic.easeOut, 0, 50, 2, true);
    addChild(categoryone);
    var categorytwo:TextField = new TextField();
    categorytwo.text = "CARGO";
    categorytwo.x = 120;
    categorytwo.y = 25;
    categorytwo.setTextFormat(headingTxt);
    var cocktailTween:Tween = new Tween(categorytwo, "x", Elastic.easeOut, 0, 120, 2, true);
    addChild(categorytwo);
    var categorythree:TextField = new TextField();
    categorythree.text = "BIKES";
    categorythree.x = 430;
    categorythree.y = 25;
    categorythree.setTextFormat(headingTxt);
    var shotsTween:Tween = new Tween(categorythree, "x", Elastic.easeOut, 600, 430, 2, true);
    addChild(categorythree);
    //Iterating through the loop
    for (var i:Number = 0; i < theloader.data.count; i++) {
    if (theloader.data["carcat" + i] == "CarList") {   
    var carname:TextField = new TextField();
    var cardesc:TextField = new TextField();
    var carprice:TextField = new TextField();
    carname.y = tft;
    carname.x = 400;
    cardesc.x = 400;
    cardesc.y = tft+13;
    carprice.y = tft+5;
    carprice.x = 525;
    carprice.text = "$" + theloader.data["carprice" + i];
    carname.text = theloader.data["carname" + i];
    cardesc.text = theloader.data["Bevdes" + i];
    var myTween:Tween = new Tween(carname, "alpha", Regular.easeOut, 0, 1, 2, true);
    var myPTween:Tween = new Tween(cardesc, "alpha", Strong.easeOut, 0, 1, 3, true);
    var myDTween:Tween = new Tween(carprice, "alpha", Strong.easeOut, 0, 1, 3, true);
    carname.setTextFormat(carnameTxt);
    carname.autoSize = TextFieldAutoSize.LEFT;
    cardesc.autoSize = TextFieldAutoSize.LEFT;
    cardesc.setTextFormat(cardescTxt);
    carprice.setTextFormat(carpriceTxt);
    addChild(carname);
    addChild(cardesc);
    addChild(carprice);
    tft += 30;
    if (theloader.data["carcat" + i] == "Bikes") {   
    var carnameW:TextField = new TextField();
    var cardescW:TextField = new TextField();
    var carpriceW:TextField = new TextField();
    carnameW.y = twt;
    carnameW.x = 50;
    cardescW.x = 50;
    cardescW.y = twt+13;
    carpriceW.y = twt+5;
    carpriceW.x = 200;
    carpriceW.text = "$" + theloader.data["carprice" + i];
    carnameW.text = theloader.data["carname" + i];
    cardescW.text = theloader.data["cardesc" + i];
    var myTweenW:Tween = new Tween(carnameW, "alpha", Regular.easeOut, 0, 1, 2, true);
    var myPTweenW:Tween = new Tween(cardescW, "alpha", Strong.easeOut, 0, 1, 3, true);
    var myDTweenW:Tween = new Tween(carpriceW, "alpha", Strong.easeOut, 0, 1, 3, true);
    carnameW.setTextFormat(carnameTxt);
    carnameW.autoSize = TextFieldAutoSize.LEFT;
    cardescW.autoSize = TextFieldAutoSize.LEFT;
    cardescW.setTextFormat(cardescTxt);
    carpriceW.setTextFormat(carpriceTxt);
    addChild(carnameW);
    addChild(cardescW);
    addChild(carpriceW);
    twt += 30;
    if (theloader.data["carcat" + i] == "Cargo") {   
    var carnameC:TextField = new TextField();
    var cardescC:TextField = new TextField();
    var carpriceC:TextField = new TextField();
    carnameC.y = tct;
    carnameC.x = 120;
    cardescC.x = 120;
    cardescC.y = tct+13;
    carpriceC.y = tct+5;
    carpriceC.x = 270;
    carpriceC.text = "$" + theloader.data["carprice" + i];
    carnameC.text = theloader.data["carname" + i];
    cardescC.text = theloader.data["cardesc" + i];
    var myTweenC:Tween = new Tween(carnameC, "alpha", Regular.easeOut, 0, 1, 2, true);
    var myPTweenC:Tween = new Tween(cardescC, "alpha", Strong.easeOut, 0, 1, 3, true);
    var myDTweenC:Tween = new Tween(carpriceC, "alpha", Strong.easeOut, 0, 1, 3, true);
    carnameC.setTextFormat(carnameTxt);
    carnameC.autoSize = TextFieldAutoSize.LEFT;
    cardescC.autoSize = TextFieldAutoSize.LEFT;
    cardescC.setTextFormat(cardescTxt);
    carpriceC.setTextFormat(carpriceTxt);
    addChild(carnameC);
    addChild(cardescC);
    addChild(carpriceC);
    tct += 30;
    if (theloader.data["carcat" + i] == "Trailers") {   
    var carnameS:TextField = new TextField();
    var cardescS:TextField = new TextField();
    var carpriceS:TextField = new TextField();
    carnameS.y = tst;
    carnameS.x = 430;
    cardescS.x = 430;
    cardescS.y = tst+13;
    carpriceS.y = tst+5;
    carpriceS.x = 540;
    carpriceS.text = "$" + theloader.data["carprice" + i];
    carnameS.text = theloader.data["carname" + i];
    cardescS.text = theloader.data["cardesc" + i];
    var myTweenS:Tween = new Tween(carnameS, "alpha", Regular.easeOut, 0, 1, 2, true);
    var myPTweenS:Tween = new Tween(cardescS, "alpha", Strong.easeOut, 0, 1, 3, true);
    var myDTweenS:Tween = new Tween(carpriceS, "alpha", Strong.easeOut, 0, 1, 3, true);
    carnameS.setTextFormat(carnameTxt);
    carnameS.autoSize = TextFieldAutoSize.LEFT;
    cardescS.autoSize = TextFieldAutoSize.LEFT;
    cardescS.setTextFormat(cardescTxt);
    carpriceS.setTextFormat(carpriceTxt);
    addChild(carnameS);
    addChild(cardescS);
    addChild(carpriceS);
    tst += 30;

Maybe you are looking for

  • How do i get rid of the logos taking up so much room on my toolbar

    i got the new version and my toolbar is all cluttered up with corporate logos... and all my bookmarks no longer fit. i really resent this! it took me time to get that toolbar the way i wanted it and you have RUINED IT. GET RID OF THE LOGOS PLEASE!!!!

  • Scanning an ascii string for a start and end character

    I would like to watch data lines on a com port and pick off a part of a line that starts with a "$" and ends with a CR. I would like the felxibility to select different start and end characters also. Is this doable with LabView? I have the com port m

  • Pagination Translation question

    Hello, I translated my pagination texts to dutch. I used the correct substitution texts: PAGINATION.NEXT     nl     volgende      PAGINATION.PREVIOUS     nl     vorige Everything works fine, i can see my dutch texts But When I hover over the previous

  • Three Counters in PXI-6259

    Hello Everyone, I'm trying to measure time t in the picture that I have attached. I am using a PXI-6259 for this (both input and output). My first idea is to use one counter to generate the input, another counter to time when to stop the first counte

  • I have a HP Pavilion dv 2000 laptop and an HP Photosmart C7280 wireless printer.

    I have an HP Pavilllion dv2000 laptop and an HP Photosmart C7280 wireless printer. They have worked well together until I reformatted and added Windows 7 on the laptop. I went online and downloaded the Windows 7 Printer Wizard. It recognizes my print