Hold indicator value after threshold is exceeded

I have a portion of my VI that uses an auto indexed for loop to view an array of 10 boolean values indicating whether a test threshold has been exceeded.  If a false value is recieved on any of these 10 channels, I need to have an indicator display the current temperature for that channel.  The problem I am having is that subsequent false values continue to update the temperature value rather than keeping the temperature reading when the threshold was exceeded.
Looking over the discussion forums, it seems like maybe a shift register is how this is done.  Is adding 10 shift registers allowing me to look at the last value for each channel the best way to handle this?
Solved!
Go to Solution.
Attachments:
indicator_test.vi ‏74 KB

Sounds like a job for a Feedback Node.
There are only two ways to tell somebody thanks: Kudos and Marked Solutions
Unofficial Forum Rules and Guidelines
Attachments:
indicator_test_BD.png ‏83 KB

Similar Messages

  • I_vnam does not hold value after i_step is 1

    Hi all!
    I have a characteristic 0calday. For my report, i have a customer exit which has the following requirement:
    If only one value is entered for 0calday, I have to populate this value as 'From' value for 0calday and system date should be in the 'To' value of 0calday so as get data for the range value entered and current date.
    I tried  using the following code:
    CASE i_vnam.
    WHEN 'ZC_CADAT'.
    CASE i_step.
       WHEN 3.
         READ TABLE I_T_VAR_RANGE INTO L_S_VARIABLE_RANGE INDEX 2.
           IF SY-SUBRC = 0.
             IF L_S_VARIABLE_RANGE-LOW IS NOT INITIAL
             AND L_S_VARIABLE_RANGE-HIGH IS INITIAL.
                l_s_range-sign = 'I'.
                l_s_range-opt  = 'BT'.
                L_S_RANGE-LOW  = L_S_VARIABLE_RANGE-LOW.
                l_s_range-high = SY-DATUM.
                APPEND l_s_range TO e_t_range.
             ENDIF.
           ENDIF.
      ENDCASE.
    ENDCASE.
    When I was debugging this is what i found:
    I_VNAM holds ZC_CADAT initially untill i_step =1.
    the variable screen appears and I 've entered only one value for variable ZC_CADAT.
    Execution was fine till here. after my input,
    Ideally, I_VNAM should hold the value ZC_CADAT, and I_STEP should be 2.
    But both of them are not working. Both I_Vnam does not hold ZC_CADAT and I_Step is now 3.
    Please help me. I am unable to work this out.
    Points will be awarded!!!
    Thanks,
    Sri

    Hi,
    I was using a different customer exit variable to capture the input and pass that value to other CE variable with i_step = 2.
    This solved it.
    If this was not ur case, let me know the problem background
    Thanks
    Sri

  • Indicator Value Updated After 2nd Run

    Hello,
    I've this statistics vi that calculates various things. One of the indicators updates its value only on the second run and not on the first run, I'm confused as to why it happens. I've tried using flat sequence, but it still does the same thing.
    Any ideas?
    Thank you,
    Solved!
    Go to Solution.
    Attachments:
    stat_done.vi ‏196 KB
    Indicator.png ‏5 KB
    subarray_post.vi ‏11 KB

    Hi Ravens Fan,
    The .png file shows which indicator it is. When I run stats_done with a .txt file, subarray.vi suppose to count jumps(doesn't matter though) and then pass the value to "# of times exceeded," which in turn writes it to the array in the front panel and the .txt file. BUT, "# of times exceeded" shows a value only when I run stats_done twice instead of once. Here is a .txt file that you can run with stats_done.vi, if you want; I believe it'll explain better than me (look at # of jumps value in the front panel). It's a really weird issue....
    Thank you,
    Attachments:
    H10 nzl 919 1500 psi 40 kHz 3.0V 6spf 1.0µs_LTS_A Data095002.041.txt ‏19 KB

  • Status list based on status lists.../ Indicator values always 0

    Hi, any help or thoughts would be appreciated.
    Basically what I'm doing is calculating status list values based on data in excel sheets. This seems to work as expected. I'll call these sub-status lists from now on.
    The next thing I wanted to do is have an "overview" status list that basically gives the status of each sub-status list. If there are any indicators in one of the sub-status lists that haven't met their goal (currently yellow or red), I want the
    indicator corresponding to that sub-status list in the overview status list to show as red.
    I've tried creating a new column in the sub-status lists called 'goal met' that is a calculated column using the formula
    =IF([Lower values are better],IF([Indicator Value]<=[Indicator Goal Threshold],1,0),IF([Indicator Value]>=[Indicator Goal Threshold],1,0))
    However, the only way to get this to work is setting the Goal Thresholds to 0, since that is what the Indicator Values always seem to return (despite them displaying non-zero values when I view the list manually).
    Am I going about this incorrectly, or is there a different (and free) way to accomplish my goal of having an overview status list?
    Thanks,
    Chris

    So when a status list indicator is set to update automatically, its indicator value is not stored, and it seems like the only way to see it/your current status is to view the list or use a status list web part to do so for you. Setting the indicators to
    update manually made the indicator values be stored, so I was able to base another status list off of these values.

  • Holding the value in screen-field

    Dear All,
    I m facing the problem ,while i m putting the value in screen-field and then pressing enter,
    value in that screen-field is becoming null automatically.
    wht shld i do for holding the value even after PAI.
    Thanks in advance.

    Hi,
    You should define a corresponding variable for that screen field in your program.
    data: my_input_field type ... "same name and type as the one used in screen for field
    so when you enter data to that field and press ENTER, the data will be transported to that variable and in PAI you have its value there.
    Regards
    Marcin

  • Different values for threshold array?

    Hi, I am collecting measurements from 8 fluxmeters in an array of 8 elements and graph them in a multi line chart.
    The fact is that some measurements return bad values due to bad transmission or bad reading from the (OLD) instrument. So, those wrong values are under or above the 50% of the real value (or the same, of the setpoint value).
    Only a wrong value between 2 good values is collected (only a peak at time), so my goal will be:
    if a > or < 50% of the real value (or the setpoint) is collected and both the value before and the value after this wrong reading are good I would replace the wrong with a correct value (say: with the previous or with the setpoint) in order to have a smooth chart shape.
    I started to use threshold array vi but I need different threshold values for all 8 array positions because all 8 fluxmeters could have different setpoints.
    Not able to solve...and probably I will need to collect at minimum 3 readings before filter wrong values, so I suppose I'd have to fill a 8x3 matrix (?)...

    I don't think that the threshold array primitive is the right choice.  This function interpolates the array and finds the fractional index.  It assumes that the data has a slope.  It doesn't sound like your data would meet this criteria.
    You just need to find the "bad" data points and replace the value with a reasonable value.  (maybe the average of the two data points on either side)
    "There is a God shaped vacuum in the heart of every man which cannot be filled by any created thing, but only by God, the Creator, made known through Jesus." - Blaise Pascal

  • Static vi reference read indicator values

    The objective of my code is to open a separate VI when a certain boolean button is clicked, wait for action from the user, then close the separate VI, and return its values to the main function. I have put a static VI reference in my block diagram, and then two invoke nodes: "FP.Open" and "Run VI". That works fine, but I still haven't figured out how to obtain the values of the indicator from the reference. I thought I might use a Property Node, but I couldn't find the right property to select. Any help? Thanks!

    And
    if you still want to proceed with the idea of calling by reference, set the invoke node 'Run VI' to wait till complete as 'True'.
    Then, place another invoke node after it, for Get Control Values. You will get an array of clusters, each cluster with the control/indicator name string and its value in variant data type.
    Process that array of clusters.
    Post your code if need further help.
    i would support 'Christian's first option, of calling the vi as a sub vi and pass the indicator value as a terminal on the connctor pane.

  • The ADO NET Source was unable to process the data. ORA-64203: Destination buffer too small to hold CLOB data after character set conversion.

     We developed a SSIS Package to pull the data From Oracle source to Sql Server 2012. Here we used ADO.Net source to pull the records from Source but getting the below error after pulling some 40K records.
      [ADO NET Source [2]] Error: The ADO NET Source was unable to process the data. ORA-64203: Destination buffer too small to hold CLOB data after character set conversion.
    [SSIS.Pipeline] Error: SSIS Error Code DTS_E_PRIMEOUTPUTFAILED. 
     The PrimeOutput method on ADO NET Source returned error code 0xC02090F5. 
     The component returned a failure code when the pipeline engine called PrimeOutput(). 
    The meaning of the failure code is defined by the component, 
    but the error is fatal and the pipeline stopped executing. 
     There may be error messages posted before this with more 
    information about the failure.
    Anything that we can do to fix this?

    Hi,
      Tried both....
      * Having schema type as Nvarchar(max). - Getting the same error.
      * Instead of ADO.Net Source used OLEDB Source with driver as " Oracle Provide for OLE DB" Getting error as below.
           [OLE DB Source [478]] Error: SSIS Error Code DTS_E_OLEDBERROR.  An OLE DB error has occurred. Error code: 0x80004005.
           [SSIS.Pipeline] Error: SSIS Error Code DTS_E_PRIMEOUTPUTFAILED.  The PrimeOutput method on OLE DB Source returned error code 0xC0202009.  The component returned a failure
    code when the pipeline engine called PrimeOutput(). The meaning of the failure code is defined by the component, but the error is fatal and the pipeline stopped executing.  There may be error messages posted before this with more information about the
    failure.
    Additional Info:
       * Here the Source task is getting failed not the conversion or destination task.
    Thanks,
    Loganathan A.

  • How to hold the value in List box.

    Hi All,
    On my screen painter Screen I am displaying the Sold to party and ship to party with thier address.
    I am also displaying the Shipping condition based on ship to party. To display the shipping condition i am using list box. Once the user enter the sold to party automatically all the field is going to populate in their respective fields. I am facing the problem that, The list box getting populated with shipping condition but once you choose the shipping condition and hit the enter the list box getting refreshed. I am using this code in PAI event. And I can Only use this in PAI.
    The Function i am using for list box is CALL FUNCTION 'VRM_SET_VALUES'.
    Pls suggest me how to hold the value in List box.
    Thanks,
    Rakesh

    Hi,
    Now i am using in PBO.
    the code below in in PBO.It is still not holding the value.
          if list[] is initial.
          perform SHP_COND.
          endif.
    form SHP_COND .
    *DATA: SHOP(80).
        clear : GT_VSBED, list.
        refresh : GT_VSBED, list.
         select vsbed
           from knvv AS K
           into table GT_VSBED
          where Kvkorg = vbak-vkorg  "Kkunnr = GV_STPH
          and K~vtweg = vbak-vtweg
          and K~spart = vbak-spart.
        select VSBED vtext
          from TVSBT
        into table list
        for all entries in GT_VSBED
        where spras = sy-langu
        and vsbed = GT_VSBED-VSBED.
    *break-point.
    NAME = 'SHP_CON'.
    CALL FUNCTION 'VRM_SET_VALUES'
      EXPORTING
        id                    = NAME
        values                = LIST[]
    EXCEPTIONS
       ID_ILLEGAL_NAME       = 1
       OTHERS                = 2
    IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
             WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    endform.                    " SHP_COND
    Thanks,
    Rakesh

  • Using a session object to hold the value of a record set?

    Hi,
    I'm trying to hold the value of a record set (or literally the content of a column in a query in a db) in a session variable so that I can call on this later and insert into another table.
    I'm not sure of the correct syntax, I've already made a connection to the DB. I'm trying the following but it doesnt seem to like the code:
    <% session.setAttribute("code",rs("column_name")); %>
    <%String attrib =
    String.valueOf ( session.getAttribute("code")); %>
    Hello <%= attrib %>
    Any ideas, I dont know how to reference the record set, I declared the recordset previously as rs. Help! Can't find examples anywhere on the net!

    So just to recap. I appear to be seeing the column name "custorderno" within the Microsoft Access query "lastcust". But I get "no data found" when I run the following code (which I have sectioned off)
    <!-- connect to database and lastcust query --!>
    <%
    try{
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver").newInstance();
    Connection conn = DriverManager.getConnection("jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=C:/Tomcat/jakarta-tomcat-4.1.31/webapps/ROOT/Oatcake.mdb","","");
    Statement statement = conn.createStatement();
    String sql = "SELECT * FROM lastcust";
    ResultSet rs = statement.executeQuery(sql);
    while (rs.next()) {
    %>
    <TR><TD><%= rs.getString("custorderno") %></TD>
    </TR>
    <% session.setAttribute("code",rs.getString("custorderno")); %>
    <% String attrib =
    String.valueOf ( session.getAttribute("code") ); %>
    Hello <%= attrib %> [B]
    <%
    %>
    </TABLE>
    <%
    if (statement != null)
    statement.close();
    if (conn != null)
    conn.close();
    catch (Exception e) {out.print(e);}
    %>
    </BODY>
    </HTML>
    No as mentioned I am (as you can see) declaring everything as a string when in actual fact the contents of the "custorderno" within the query is set to a autonumber within MS Access.
    The while loop does work by returning the contents but the session object part is not working correctly with the following result returned:
    [B]java.sql.SQLException: No Data Found
    Help please!

  • Calculation of Depreciation on Net Book Value after posting Revaluation on

    How to calculate the depreciation on Net book value after posting Balance sheet revaluation ABAW? The depreciation is been calculated on APC and not on NBV, as the APC of asset has been revalued after the revalution posting, ideally the next period depreciation should be calculating on the new NBV, but the system is not doing this. Is there any specific configuration that Iam missing here.
    Kindly Reply.
    Jyoti

    The forum [FPM - General|Enterprise Performance Management (SAP EPM); in which you originally posted your question deals mainly with the financial performance applications otherwise known as Enterprise Performance Management (EPM) carrying the BusinessObjects brand.   Your question pertains to SAP [ERP Financials - Asset Accounting|SAP ERP Financials  - Asset Accounting; which is covered by another forum.  Therefore your message has been moved.  Please adjust any bookmarks you might have and post to the appropriate area in the future, that way you are assured you will have the right audience reading your posts.
    Thanks and best regards,
    [Jeffrey Holdeman|http://wiki.sdn.sap.com/wiki/display/profile/Jeffrey+Holdeman]
    SAP Labs, LLC
    BusinessObjects Division
    Americas Customer Solutions Adoption (CSA) team

  • Is there any possible ways to make Characteristic hold decimal values?

    Hi,
    I want to create a characteristic which can  hold decimal values.
    For example if the values coming from source is 2.5000 ,it should display as 2.5000 instead of 3.
    Regards,
    Anjali Singh

    hi ,
    You can use  characteristic to store decimal values too .no issue with that .They will be be CHAR-Characteristic string .
    Regards,
    Jaya Tiwari

  • How Can i retain the Shared Variable Values after PC rebooting

    Hi all,
    I am facing a paculiar problem with Shared Variables. I have an application in which shared variables are used for data communication.
    One of the application requirement is to retain the variable values eventhough PC is rebooted or started after crashing. 
    As per the my understanding, the variable values will retain eventhough the PC is rebooted. But here i can observe a paculiar problem like some library variables are retaing the values while some others not. I enabled logging for all the variables.
    I tried many ways. like logging enabled, logging disabled, changing variable names, changing process names etc... But i am not getting a consistent behaviour.
    I hope some you can help me in solving this issue.. "How Can i retain the Shared Variable Values after PC rebooting"
    Thanks and Regards,
    Mir

    Hi Blackperl,
    Thanks for the post and I hope your well. 
    What do you mean by not getting consistent behaviour.. this will all depend on excatly when the crash happens i.e. before the write or after. 
    Surely a better method would be to log the data to a file during the reboot...
    I beleived the value read back
    will be the default value for the shared variable's data type.
    The LabVIEW DSC 8.0 module adds more functionality to the shared variable, including initial values and alarms.
    If you enable an initial value on a shared variable, when the variable
    engine comes back on-line it will default to this value. Setting a bad
    status alarm for the shared variable is also a good way of handling
    this type of event. Additionally, if you are using a LabVIEW Real-Time
    target such as Compact RIO or Compact FieldPoint, it is appropriate to
    consider hosting the shared variable engine on the real-time target.
    These devices have watch-dog capabilities and are typically the
    hardware controlling the critical pieces of an application. Most
    Windows or PC-based targets do not have these fail-safes.
    I guess, if you could explain to me again that would be great. From my point of view, if I have a cRIO and a Windows PC. If the windows PC crashes, the cRIO will still update its shared variables. Then once the PC has started up its own shared variable engine, and the bindings are loaded, it will once again continue to update its copies of the variables.
    Please let me know what you think,
    Kind Regards,
    James.
    Kind Regards
    James Hillman
    Applications Engineer 2008 to 2009 National Instruments UK & Ireland
    Loughborough University UK - 2006 to 2011
    Remember Kudos those who help!

  • How to hold the values as  it's not holding the values when it cross 255

    DATA : fval1  TYPE edidd-sdata.
    DATA : fval2  TYPE edidd-sdata.
    DATA : fval3 TYPE edidd-sdata.
    DATA : fval4 TYPE edidd-sdata.
    DATA : fval5 TYPE edidd-sdata.
      DATA : len(3) TYPE n.
    values1 = wa_final-low.
      values2 = wa_final-high.
      IF wa_final-high IS NOT INITIAL.
        CONCATENATE values1 values2 INTO fval1 SEPARATED BY '-'.
      ELSE.
        fval2 = values1.
      ENDIF.
      IF fval3 IS NOT INITIAL.
        IF fval1 IS NOT INITIAL.
          fval = fval1.
          CONCATENATE fval3 fval INTO fval3 SEPARATED BY '/'.
        ENDIF.
        IF fval2 IS NOT INITIAL.
          fval = fval2.
          CONCATENATE fval3 fval INTO fval3 SEPARATED BY '/'.
        ENDIF.
      ELSE.
        IF fval1 IS NOT INITIAL.
          fval3 = fval1.
        ENDIF.
        IF fval2 IS NOT INITIAL.
          fval3 = fval2.
        ENDIF.
      ENDIF.
      DATA : len(3) TYPE n.
      len = STRLEN( fval3 ).
      IF len > 250.
        fval4 = fval3+0(250).
        fval3 = fval3+250(5).
    *    CONCATENATE fval4 fval3 INTO fval5.
      ENDIF.
           IF fval4 IS INITIAL.
              wa_final1-varbl31 = fval3.
            ELSE.
                CONCATENATE fval4 fval3 INTO fval5.
                wa_final1-varbl31 = fval5.
            ENDIF.
            MODIFY  it_final1 FROM wa_final1
            TRANSPORTING varbl31 WHERE agr_name = wa_final-agr_name.
    at this point also it's not holding the values when it exseds 255
    kindly please help

    H friends ,
    i am not the expert at the same time i know some thing in abap
    fval4 = fval3+0(250).
        fval3 = fval3+250(5).
    in the above case fval3 have 255 char at that time iam transporting 250 char to fval4 with this statment
    fval4 = fval3+0(250).
    and iam keeping  the remaining 5 char in fval3 with this statment
    fval3 = fval3+250(5)
    so that i can push some more values in fval3  and at i am
    CONCATENATE fval4 fval3 INTO fval5.
    so that fval5 may get all values this is the way i try but fval5 is not holding all the values 
    i asked solution for that
    fval 3 = fval3+250(250)
      dosen't  have any meaning i know that  friend
    my question is how to hold the remaining value

  • Manipulating condition value after being returned from IPC

    Hi all,
    How can we manipulate the condition rate data after the value is returned from IPC?
    We tried using CRM_PRICING_I_BADI calling the method CRM_PRICING_I_MERGE. But it did not solve the issue.
    Requirement is to read the data of a particular condition type from a preceedign document and then overwirte the conditon value of condition type in the current transaction with that old value from previous document.
    Can this be achieved without using Java coding and manipulate the value after IPC has returned the conditon value and before it is being presented on GUI?
    Please help me with your suggestions.
    Regards,
    David.

    Hello david,
    You might ned to use the user Exit provided by the Pricing Engine to work this out. this will require Java coding.
    Regards,
    Tanu

Maybe you are looking for

  • Relationship between "Account Group" and "GL Acct. number".

    I need to create a report that lists the GL Account numbers according to selection screen parameter "Account Group" . Hi i need to find a way\(tables and fields) between the  "Account Group"  and the "GL Account number". to view "Account Group"  go t

  • Using USB preamp with Garageband

    Garageband will not recognize my microphone for some reason. I am using an M-Audio USB Preamp, with a Behringer condensor microphone. I have changed the input/output settings in both the mac settings and the garageband settings to "M-Audio Mobilepre

  • Oracle BI Office Integration

    Hi all, Office integratin of oracle bi seems simple and details are here. http://download.oracle.com/docs/cd/E10415_01/doc/bi.1013/e10416/biofficeinstall.htm But my problem is after installing OracleBIOffice.exe, I can't create a connection. I made a

  • HELP.  It's stuck

    I use a stylus which is attached to an elastic cord.  The other end has a little plastic piece that fits into the headphone jack.  Went to my iPad 2 today and the cord was dangling free.  The little plastic piece is in the headphone jack.  I read the

  • Link SC to Work Item

    SWWWIHEAD shows the Shopping Cart Tasks (WI_ID = W) and the Workflow Work Items. If I view Work Item the Cart number is in the text but this is not good enough. It's also under Available Ohjects>Process Objects>Reqt.cov. request. How can I link the W