How to clear alert when a null value is returned for a metric column?

Hey all,
Recently, I've encountered a problem about clearing alert when a null value is returned for a metric column. From Oracle official doc, it seems that NO_CLEAR_ON_NULL could be used for this propose. However, it doesn't.
Here is the line from doc, you can see when NO_CLEAR_ON_NULL is set as FALSE, the null value will clear alert, and the default value for NO_CLEAR_ON_NULL is FALSE.
NO_CLEAR_ON_NULL: This attribute is used to control severity clearing when a null value is returned for a metric column. It defaults to FALSE with the behavior that a null value ends up clearing previous alert severities. With a TRUE value for this attribute, null values will be skipped in severity evaluations without clearing the severity.
TRUE | FALSE (default)
STATELESS_ALERTS: This attribute if set to TRUE indicates to EM that alerts on this
column will not have corresponding clears. This allows the UI to decide whether to
allow users to manually clear alerts on this column.
TRUE | FALSE (default)Here is my code for the metric,
-- meta definition
  <Metric NAME="Flushing_Table_Overtime" TYPE="TABLE" HELP="NO_HELP">
    <Display>
      <Label NLSID="mmd_ip">Flushing Table Overtime</Label>
    </Display>
    <TableDescriptor>
      <ColumnDescriptor NAME="State" TYPE="STRING" IS_KEY="FALSE">
        <Display>
          <Label NLSID="mmd_rc_State">State</Label>
        </Display>
      </ColumnDescriptor>
      <ColumnDescriptor NAME="Time_Seconds" TYPE="NUMBER" IS_KEY="FALSE">
        <Display>
          <Label NLSID="mmd_fto_Time_Seconds">Flush Table consume Seconds</Label>
        </Display>
      </ColumnDescriptor>
    </TableDescriptor>
    <ExecutionDescriptor>
      <GetTable NAME="MysqlProcessAggregate"/>
      <GetView NAME="v_flushing_tables" FROM_TABLE="MysqlProcessAggregate">
        <Column NAME="State" />
        <Column NAME="Time_Seconds" />
        <Filter COLUMN_NAME="State" OPERATOR="EQ">Flushing tables</Filter>
      </GetView>
    </ExecutionDescriptor>
  </Metric> 
-- coll definition
  <CollectionItem NAME="Flushing_Table_Overtime">
    <Schedule>
      <IntervalSchedule INTERVAL="10" TIME_UNIT="Min" />
    </Schedule>
    <MetricColl NAME="Flushing_Table_Overtime">
      <Condition COLUMN_NAME="Time_Seconds"
                 CRITICAL="30" OPERATOR="GT"
                 MESSAGE="There is a Flushing Table command has exceeded %critical_threshold% seconds."
                 MESSAGE_NLSID="msg_Flushing_Table_Overtime" />
    </MetricColl>
  </CollectionItem>If this feature can not be achieved by coding XML, then is there a way to clear alert with Oracle Package? I have confirm neither sysman.em_severity.delete_current_severity nor sysman.em_severity.clear_alerts could do it.
Would anyone give me a hint?
Thanks in advance!
Best wishes,
Satine

> I am executing in this manner
var RESULT BOOLEAN;
BUT I am unable to create variable with boolean data type.
WARNING. Do not confuse SQL*Plus with PL/SQL.
There is no variable command in PL/SQL. PL/SQL does support the boolean data type.
There is a variable command in SQL*Plus. It allows one to define bind variables. It is limited in the data types it supports. It does not support boolean as a bind variable type.
SQL*Plus is a CLI (Command Line Interface) client tool. It has a very limited vocabularly, allowing you to (primarily):
a) configure its local environment (e.g. size of the terminal ito number of characters per lines)
b) configure its bevahiour (e.g. spooling data to a file)
c) defining substitution and bind variables
And that's it. It is not PL/SQL. It is not SQL. It takes the PL/SQL and SQL you enter, and submit that to the Oracle server. (it does some basic parsing of the data to substitute variables and bind variables where applicable)
Do not confuse this CLI client tool with the server side PL/SQL or SQL languages.

Similar Messages

  • How to transfer database table contain null values, primary key, and foreign key to the another database in same server. using INSERT method.

    how to transfer database table contain null values, primary key, and foreign key to the another database in same server. using INSERT method.  thanks

    INSERT targetdb.dbo.tbl (col1, col2, col3, ...)
       SELECT col1, col2, col3, ...
       FROM   sourcedb.dbo.tbl
    Or what is your question really about? Since you talke about foreign keys etc, I suspect that you want to transfer the entire table definition, but you cannot do that with an INSERT statement.
    Erland Sommarskog, SQL Server MVP, [email protected]

  • How to clear alerts from icalendar

    I have two alerts that are showing up on my icalendar on my macbook pro. This alert is the same alert when your Apple devices show you have either missed a phone call/text/email. Does anyone know how to get rid of this?? Help!!

    Plase post questions like this in the Enterprise Manager.
    Alerts can be cleared by fixing the underlying cause (metric values that crosses thresholds setup). E.g. by adding space to a tablespace.

  • How to clear only blocks which have values

    Hi there,
    Is there anyone knows how to clear data from blocks which only have values ? so the idea, i dont have to create any new block by using something like set a block to be #MI ?
    Please advice. Thanks a lot
    R'gards
    Octoni

    From Technical Reference
    The CLEARDATA command clears a well-defined section of a database's cells and changes the values of those cells to #MISSING values. This command is useful when you need to clear existing data values before loading new values into a database. CLEARDATA can only clear a section of a database. It cannot clear the entire database.

  • Oracle 11.1.0.7.0 Issue with Streams when using NULL value in a key field

    Hi,
    we have an issue in our replicated environment using Streams.
    We have a replicated table using the following index:
    UK_S01_TEXT_FORMAT_TBL01 SOGID
    UK_S01_TEXT_FORMAT_TBL01 INDEX_TEXT_FORMAT_ID
    UK_S01_TEXT_FORMAT_TBL01 INDEX_LANGUAGE_LABEL
    UK_S01_TEXT_FORMAT_TBL01 INDEX_TEXT_FORMAT_COUNTER
    UK_S01_TEXT_FORMAT_TBL01 INDEX_PROVIDER_ID
    UK_S01_TEXT_FORMAT_TBL01 INDEX_TARIFF_PLAN_COSP_ID
    with field INDEX_PROVIDER_ID allowing NULL values. Actually we insert empty strings in there, but as far as I understand Oracle will convert it sliently in a NULL value, which is fine to our application.
    When we apply a change on that table (either update or delete) we get errors at streams level and the transaction is not propagated.
    Local Transaction ID: 6.28.11170
    Source Commit SCN: 25397175
    Source Commit Time: Dec-03-2012 12:21:30
    Error in Message: 1
    Error Message: ORA-26787: The row with key ("INDEX_LANGUAGE_LABEL", "INDEX_PROVIDER_ID", "INDEX_TARIFF_PLAN_COSP_ID", "INDEX_TEXT_FORMAT_COUNTER", "INDEX_TEXT_FORMAT_ID", "SOGID") = (ITALIAN, , , 0, MIKE, 124) does not exist in table
    SMS.S01_TEXT_FORMAT_TBL
    ORA-01403: no data found
    message: 1
    TableName: S01_TEXT_FORMAT_TBL
    Operation Type: DELETE
    _____ Old Data _____
    SOID : 1010000008
    SOGID : 124
    INDEX_TEXT_FORMAT_ID : MIKE
    INDEX_LANGUAGE_LABEL : ITALIAN
    INDEX_TEXT_FORMAT_COUNTER : 0
    TEXT_FORMAT : Hai raggiunto i 100MB di traffico incluso nello scatto
    APPLICA_PERIOD_CRI_ID :
    INDEX_TARIFF_PLAN_COSP_ID :
    INDEX_PROVIDER_ID :
    If I force the set of primary keys to be only the NOT NULL fields, I can successfully apply the error, but since we may have them storing both NULL and NOT NULL values, this is not a solution.
    I'm wondering why the DB on one hand converts the empty string in a NULL while inserting, but it looks the Apply process onStandby is not able to do the same when looking for the record before applying the transaction.
    Thanks in advance!
    Cheers,
    Mike

    Its showing all objects the user has permission to see- why does that need to be restricted?

  • How to clear a default condition / parameter value in a Discoverer Viewer ?

    Hi there,
    Appreciate if anyone can help with what I am trying to do below in Discoverer10g:-
    1. In Desktop we created a workbook with a parameter and we set the default value of the parameter as '%%'. This is so that all values are selected for that parameter unless the user over-writes it by picking values from the LOV.
    2. When we run the workbook in Desktop, and pick a value out of a LOV, the system automatically remove the '%%' and substituted with the values picked from the LOV. This is working well.
    3. However, when we published the workbook to our Disco Viewer users, on the parameter screen, when a user picks values out of the LOV, the system DOES NOT remove the '%%' automatically, and appends the picked values to the list. Of course this makes the report select all values for that parameter.
    4. To resolve the problem, the Viewer user has to manually remove the default '%%' before picking values out of the LOV. Often they forget to do that and trust the value reported on the worksheet.
    5. We believe some sort of a "REPLACE '%' with BLANK" function on clicking the "Move" button will remove the '%%' values when we pick values from LOV in the parameter screen. But we do not know how to do this.
    If anyone has successfully done the above and share his experience, that will be much appreciated.
    Thank you.

    Hi there,
    Thanks for your feedback.
    Our workbooks mostly have muitii-item parameters where the users can pick more than one value.
    I have created a test workbook in Desktop with a mutil-value parameter. After picking up multiple values from the LOV, the '%%' default automatically get sover-written.
    I shared this same workbook to a Viewer user.
    In Viewer, after picking multiple values from the left window and clicking the [Move] button, the '%%' value stays. Wonder if anything can be done to remove the '%%' in Viewer after the user has picked a value and the [Move] button is clicked.
    Further help / comments appreciated.
    Thanks again for your help.
    Regards

  • How to send alert when receiver JMS adapter fails? Please help!

    Hi experts,
       I have the following Asynchronous scenario:
       SAP R/3 -
    >IDOC----->XI>JMS--->BizTalk.
       I am sending IDOC from a given SAP R/3 system to XI. XI then sends the same to BizTalk via JMS adapter. In SXMB_MONI the message is successfully processed as it shows checked flag. But if I see the JMS communication channel status in runtime workbench then there it shows error saying JMS queue user id or password not found.
    How to send this JMS adapter error as alert?
    I also tried configuring alert rule in runtime workbench but still it does not trigger any error.
    I have also verified the alert category and everything is fine with that.
    What could be the problem? How can I send an alert when an Async adapter fails?
    Thanks & Regards,
    Gopal

    Hi! GOPAL,
    Once make sure whther all the below mentioned steps are configured correctly or not ok
    1: First make sure whether you are working on SAP XI or PI 7.1
               a) If XI you need to create Alerts (ALert Category) in CCMS ABAP stack in the
                        Tcode. ALRTCATDEF
               b) Open the alert category/classification definition environment (transaction ALRTCATDEF).
         ensure you are in change mode.
               c) In the group box with the alert classifications, right-click All classifications to open the   
                    context menu, and choose Create.
               d) Under Classification, enter a name for the classification.
               e) Under Description, enter a description of the classification.
               f)  Save your entries.
               g) Then go to RWB-->Go to ALERT Configuation and ADD the RULES to your alert category gor 
         which created there in the abap stack.
    Note Suppose if you want those ALERTS to come to your MAIL then again go to ABAP STACK and go to Tcode.  ALRTCATDEF and select your alert category press FIxed Recepients and there give your SAP XI ID's then  u can see those alerts in RWB-->ALERT INBOX
    Suppoe if you want those to mail then ask the basis team to link your company mail or personal mail ID to your SAP ID.
    2. Supppose if you are working on PI 7.1 Server.
         Only difference is creating Alert Category...Here you can create your ALERT Classification I mean   
         alert caltegory in the ESR (Enterprise Service Repository )
         Software Component >S CVersion>NameSpace-->Alert Category.
         You can configure how u configure there in abap stack such as long and short text every thing 
          except Fixed Receipients you need to give that recepients there only in ABAP STACK.
          what ever ALERT CATEGORY you are creating will reflect there in the ABAP STACK
         even you can Use these alerts Category in BPM --> CONTROL STEP -->Configure here in this step
    You can also reach alerts like this.
    NOTE  Most Important point is You can also view your mails or Alerts in the T Code:: SOST.
    Regards:
    Amar Srinivas ELi

  • How to configure alert when sender CChannel failes

    Hi PI Gurus,
    Is there is any way to get an alert when a sender channel fails (reason connection time out etc.).
    We have configured alerts for other scenarios when mapping is failing. How to handle the other situation.
    Regards,
    Krishna Chauhan

    Hi,
    Please check below urls.
    http://wiki.sdn.sap.com/wiki/display/XI/Alert%2bConfiguration%2bin%2bXI?bc=true
    ALRTCATDEF table SALRTCATUS
    http://help.sap.com/saphelp_nw04/Helpdata/EN/8a/3e2d4105f8d92be10000000a1550b0/frameset.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/96/f1033c128f4a7de10000000a114084/frameset.htm
    Thanks
    Ravi

  • How no to select lines with NULL values

    Hi,
    I am not a newbie newbie in SQL but I do not understand why I cannot retrieve the lines where there are null values.
    The table observatoire.fiche has 2 columns with default values set to NULL : total_heures, and total_heures_exceptionnelles. These are numeric types columns.
    I want not to select lines where :
    total_heures equal NULL AND total_heures_exceptionnelles = NULLI have tried this but I do get an "Invalid relational operator" error message.
    select a.nom || ' ' || a.prenom d, a.agent_id r
    from   OBSERVATOIRE.AGENT a, observatoire.fiche b
    where  a.agent_id = b.agent_id
    and    b.total_heures NOT NULL AND total_heures_exceptionnelles NOT NULL
    group by a.nom, a.prenom, a.agent_id
    order by a.nomCould you help me ?
    Thank you for your kind answers.

    Satyaki_De wrote:
    I think this is not the good way to do it. Did you check my solution? It should work the same output as your solution.Really ?
    test@ORA10G>
    test@ORA10G> -- (1)
    test@ORA10G> with t as (
      2    select 1 as x, 10 as total_heures, null as total_heures_exceptionnelles from dual union all
      3    select 1, null, 20   from dual union all
      4    select 1, null, null from dual union all
      5    select 1, 30, 40     from dual)
      6  --
      7  select x, total_heures, total_heures_exceptionnelles
      8  from   t
      9  where  x = 1
    10  AND NOT ( total_heures IS  NULL
    11            AND
    12            total_heures_exceptionnelles IS NULL
    13          );
             X TOTAL_HEURES TOTAL_HEURES_EXCEPTIONNELLES
             1           10
             1                                        20
             1           30                           40
    test@ORA10G>
    test@ORA10G> -- (2)
    test@ORA10G> with t as (
      2    select 1 as x, 10 as total_heures, null as total_heures_exceptionnelles from dual union all
      3    select 1, null, 20   from dual union all
      4    select 1, null, null from dual union all
      5    select 1, 30, 40     from dual)
      6  --
      7  select x, total_heures, total_heures_exceptionnelles
      8  from   t
      9  where  x = 1
    10  AND    total_heures IS NOT NULL
    11  AND    total_heures_exceptionnelles IS NOT NULL;
             X TOTAL_HEURES TOTAL_HEURES_EXCEPTIONNELLES
             1           30                           40
    test@ORA10G>
    test@ORA10G>isotope

  • NULL value not validated for a Required field

    Hi,
    I have added a MessageLovInput item to the expense header page (/oracle/apps/ap/oie/entry/header/webui/GeneralInformationPG), and have made the Required Value to True. But I do not get any error when I navigate to the next page without populating the field. If I enter in incorrect information, it validates it against the LOV, but not for null values.
    Any pointers to make the field validate NULL values?
    Thanks,
    Ashish

    Yeah.. I can see the Required field indicator (*) next to the field. I have tried with all the values (uiOnly, ValidatorOnly, Yes etc.), but it does not validate NULL values.
    I'll try to handle this in the controller, but would prefer if this can be done by personalization.
    Ashish

  • How would I find the most common value every nth row in a column

    SCENARIO 1
    I have a column with a series of numbers in c1:c1000 as follows:
    2
    2
    3
    1
    1
    4
    2
    3
    1
    2...
    and I would like to find the most common value for every nth (in this case, second) row.
    SCENARIO 2
    Originally, I created a separate column in J and used this to find a value of 0 or 1 via a filter to label the rows odd or even. I was then going to create two separate columns, one for even rows of data and another for odd rows of data to separate them and perform functions on each column. But I do not know how to copy just the filtered data to one of the new columns to apply the MODE function (or any other for that matter).
    Perhaps my question should be: after applying a filter, how do i copy just the visible filtered data of every nth row to a new column in my spreadsheet while retaining the original column with all rows of data? 
    BACK TO SCENARIO 1
    If I do not need to go through this effort, I would just apply the MODE function (or AVERAGE or SUM) to every nth row in the original data column.

    Since Index and Offset were already taken, I used INDIRECT(ADDRESS()) in my example.
    Here's how I approached it:
    Expressions are as follows...
    Data Subset, Column A, Row 2: =IF(StartingRow :: A, 1, NSelector :: $A)
    Subsequent rows in Column A: =IF(ROW()<COUNT(Input :: $B)/NSelector :: A:$A+2, A2+NSelector :: $A, "")
    Data Subset, Column B, Rows 3
    throuth the last: =IFERROR(INDIRECT(ADDRESS(A+1, 2, ,,"Input")), "")
    Stats, Column A, Row 2: =IFERROR(MODE(Data Subset :: B), "No Mode")
    Stats, Column B, Row 2: =COUNTIF(Data Subset :: B, A)
    Lots of ways to skin this cat.
    Jerry

  • I am trying to figure out how to clear my massage backlog of messages on Messages for Mavericks OS. I believe a lot of space is taken up by this running in the background keeping recent messages loaded. Especially with all the gif files I've been sending

    I am trying to figure out how to clear my massage backlog on Messages for Mavericks OS. I believe a lot of space is taken up by this running in the background keeping recent messages loaded. Especially with all the gif files I've been sending. Is there a way to select all and deleter? Please help! Can't find anyone who looks to do the same just lots of manuals for using the app on iphones and ipads.
    Thanks

    I am trying to figure out how to clear my massage backlog on Messages for Mavericks OS. I believe a lot of space is taken up by this running in the background keeping recent messages loaded. Especially with all the gif files I've been sending. Is there a way to select all and deleter? Please help! Can't find anyone who looks to do the same just lots of manuals for using the app on iphones and ipads.
    Thanks

  • HT5012 How can i know when my iphon is turend on for first time

    I want to know when my iphon is turend on for the first time , tnx

    Call Apple and ask them.  1800-MY-APPLE

  • How to write a Query a table and the return result is the column name

    Hi All
    Pls advise how to write a query whereas the return result is the
    column name.
    I know there is describe <table_name>;
    Is there any other ways?
    Pls advise
    Tj
    Edited by: user600866 on Oct 14, 2008 12:13 AM

    Data Dictionary table user_tab_columns has all the column names. You can query that and get what ever you want.
    To get the column list of a table just query
    select *
      from user_tab_columns     
    where table_name = <your_table>Edited by: Karthick_Arp on Oct 14, 2008 12:18 AM

  • Clearing Alerts when triggering value no longer applies

    On my grid control there is a Critical Alert: Tablespace TBSPCE is 99 percent full.
    This was triggered in April, 2011. Since then I've done some re-ord and added space.
    When I try to manually clear it, it refuses
    Now the Grid Control has a "Last Collected Value" of 56.47.
    The "Last Collected Timestamp" is July 15, 12:41 (about 40 minutes ago local time)
    Clicking on the Message link I got onto the page where I can re-evaluate the Alert.
    It comes back as Critical. How can this be?
    I checked the Metric and Policy Settings, and the values there are Warning(90), Critical (97).
    Can anyone describe what's going on?
    The Grid Control repository DB is 11.2.0.1.0; and the target DB is 10.2.0.2.0.
    Thanks in advance for any help you might be able to give.
    Chris

    Please be carefull with deleting alerts!!!
    I think that in your case you are hiting a DB bug, which is in 10.2.0.2.
    You should understand that the original alert is not triggerd by OEM, but by the target database!!!
    So, you should start to look for the bugfix for this issue on DB 10.2.0.2
    Regards
    Rob
    http://oemgc.wordpress.com

Maybe you are looking for