Content Search Query Builder - filtering for custom column value

I want to use a CSWP to display certain pages in a slideshow format on a site.  However, to filter them in a preferred manner, the pages library has a custom column "Spotlight" which is a Boolean type (e.g. yes/no).
In my "Build Your Query" configuration page, I have added a keyword filter "SpotlightOWSBOOL=Yes" as the criteria to display my results.  This is not working, despite the fact that I currently have pages flagged as "Spotlight"
in this library. 
My question is - how can I achieve this result of displaying only pages with a custom column value "Spotlight" as "Yes"?

Hi Owen,
Could you capture a screenshot about your Crawled Property for your list column "Spotlight"?  Is it name "SpotlightOWSBOOL"?
If your library column name is "Spotlight", you can create a custom
Manged Property (e.g. create name as SpotlightMangedProperty)to map the
Crawled Propery (e.g. may ows_spotlight, or ows_SpotlightOWSBOOL?) genegrated by list column "Spotlight", then start a full crawl.
Then you can add the keyword filter like below in "Build Your Query" dialog of CSWP web part, then check if the correct items are filtered.
SpotlightMangedProperty:"yes"
If the above value "yes" doesn't work, please also try
SpotlightMangedProperty:"True", or try SpotlightMangedProperty:1
More information about this topic you can read is below.
https://technet.microsoft.com/en-us/library/jj219667.aspx#proc2
https://msdn.microsoft.com/en-us/library/office/ee558911.aspx#kql_property_restriction_queries
Thanks
Daniel Yang
TechNet Community Support
Please remember to mark the replies as answers if they help, and unmark the answers if they provide no help. If you have feedback for TechNet Support, contact
[email protected]

Similar Messages

  • Office 365 - sharepoint: In Advanced search Page, How to add custom column under property restrictions

     In Advanced search Page, How to add custom column under property restrictions?

    Hi,
    The Navigation control can be added into your HTML page in the Snippet Gallery:
    The two links below about how to create HTML master page and adding snippets needed into it for your reference:
    http://borderingdotnet.blogspot.jp/2012/12/how-to-create-html-masterpage-for.html
    http://msdn.microsoft.com/en-us/library/office/jj822370(v=office.15).aspx
    Feel free to reply if there still any question.
    Best regards,
    Patrick
    Patrick Liang
    TechNet Community Support

  • Query to delete row where column value contains alphabets

    Hi,
    Could anyone please help me to get this query work.
    Query to delete row where column value contains alphabets.
    DELETE  FROM BIN_ITEM WHERE order_nmb LIKE '%[A-Z]%' || LIKE '%[a-z]%'
    Thanks and Regards,
    Deekay.

    RaminHashimzadeh wrote:
    SELECT order_nmb FROM BIN_ITEM WHERE regexp_count(order_nmb,'[0-9]') = 0
    Ramin Hashimzade
    But that won't reject strings like 'gfgG%dgh' which aren't pure alphabetic.
    Try:
    with test_data as (
    select 'ghTYJYEhdfe' str from dual
    union
    select 'dfF5ssd' from dual
    union
    select 'rgth*dgheh' from dual
    union
    select 'ggf{' from dual
    union
    select 'rwhrhrh' from dual
    select  *
    from test_data
    where regexp_instr(str,'[^[:alpha:]]')=0;

  • Content Search webpart- Build you query page is blank

    Hi,
    We have a SharePoint Online site, in which Content Search web part is not working properly. By clicking on "Change Query" button, it opens a blank page with the title "Build Query". Nothing is loaded on the page except the title..
    Can you please let me know how to resolve this issue.
    Thanks in advance!!
    - Anjani

    CHeck if we get error in ULS Logs. Use below to do si
    http://www.vrdmn.com/2014/03/view-tenant-uls-logs-in-sharepoint.html
    Apparently you can do it using Windows PowerShell for SharePoint Online cmdlets
    http://technet.microsoft.com/en-us/library/fp161379.aspx
    If this helped you resolve your issue, please mark it Answered

  • Result Source Query Builder Filter for Content Sources

    I have several content sources that I want to add to a result source as a property filter. It works fine if I just have one but when I add multiple content sources it does not give me all the results. Is there a way to add more than one content source
    filter to one result source.

    Hi SpGurlz,
    How did you set the filter with content source in the query builder for the result source?
    I tested with more than one content source as filter in the query builder for the result source in my environment, and all the corresponding results were displayed fine.
    The query text for the result source was set like this: {searchTerms} contentsource:file1 contentsource:file2.
    Remember to add a space between the “{searchTerms}”, “contentsource:file1” and “contentsource:file2”.
    You can provide the query text of your result source here and I will help to check the logic.
    Best regards,
    Victoria
    TechNet Community Support
    Please remember to mark the replies as answers if they help, and unmark the answers if they provide no help. If you have feedback for TechNet Support, contact
    [email protected]

  • Build XML for Custom Nested Accordian (like Tree View Structure) for SharePoint List Data

    Expected output in Xml:
    <?xml version="1.0" encoding="utf-8" ?>
    - <TopRoot>
    - <Root id="1" Name="Department">
    - <Type id="2" Name="IT">
    - <SubType id="3" Name="Technology">
      <SubSubType id="4" Name="Sharepoint" />
      <SubSubType id="5" Name="ASP.NET" />
      <SubSubType id="6" Name="HTML 5" />
      </SubType>
      </Type>
    </Root>
    </TopRoot>
    List Details:
    list details for storing category / sub category data and code to build tree structure for the same.
    1.Create Custom List named “CategoryDetails”:
    2.Create Column “Category Name” of type single line of text. Make it as required field and check Yes for Enforce Unique values.
    3.Create column “Parent Category” of type lookup. under Additional Column Settings.
    Get information dropdown, select “CategoryDetails”.
    4.Choice column ["SRTypeName"] 1.Root,2.SRTYPE,3.SubSRTYPE, 4.SUBSUBSRTYPE
    In this column dropdown, select “Category Name”:  
    Referance:
    http://www.codeproject.com/Tips/627580/Build-Tree-View-Structure-for-SharePoint-List-Data    -fine but don't want tree view just generate xml string
    i just follwed above link it work perferfectly fine for building tree view but i don't want server control.
    Expected Result:
    My ultimate goal is to generate xml string like above format without building tree view.
    I want to generate xml using web service and using xml i could convert into nested Tree View Accordian in html.
    I developed some code but its not working to generate xml /string.
    My modified Code:
    public const string DYNAMIC_CAML_QUERY =
            "<Where><IsNull><FieldRef Name='{0}' /></IsNull></Where>";
            public const string DYNAMIC_CAML_QUERY_GET_CHILD_NODE =
            "<Where><Eq><FieldRef Name='{0}' /><Value Type='LookupMulti'>{1}</Value></Eq></Where>";
            protected void Page_Load(object sender, EventArgs e)
                if (!Page.IsPostBack)
                 string TreeViewStr= BuildTree();
                 Literal1.Text = TreeViewStr;
            StringBuilder sbRoot= new StringBuilder();
            protected string BuildTree()
                SPList TasksList;
                SPQuery objSPQuery;
                StringBuilder Query = new StringBuilder();
                SPListItemCollection objItems;
                string DisplayColumn = string.Empty;
                string Title = string.Empty;
                string[] valueArray = null;
                try
                    using (SPSite site = new SPSite(SPContext.Current.Web.Url))
                        using (SPWeb web = site.OpenWeb())
                            TasksList = SPContext.Current.Web.Lists["Service"];
                            if (TasksList != null)
                                objSPQuery = new SPQuery();
                                Query.Append(String.Format(DYNAMIC_CAML_QUERY, "Parent_x0020_Service_x0020_Id"));
                                objSPQuery.Query = Query.ToString();
                                objItems = TasksList.GetItems(objSPQuery);
                                if (objItems != null && objItems.Count > 0)
                                    foreach (SPListItem objItem in objItems)
                                        DisplayColumn = Convert.ToString(objItem["Title"]);
                                        Title = Convert.ToString(objItem["Title"]);
                                        int rootId=objItem["ID"].ToString();
                                        sbRoot.Append("<Root id="+rootId+"
    Name="+Title+">");
                                        string SRAndSUBSRTpe = CreateTree(Title, valueArray,
    null, DisplayColumn, objItem["ID"].ToString());
                                        sbRoot.Append(SRAndSUBSRTpe);
                                        SRType.Clear();//make SRType Empty
                                        strhtml.Clear();
                                    SRType.Append("</Root>");
                catch (Exception ex)
                    throw ex;
                return SRType.ToString();
             StringBuilder strhtml = new StringBuilder();
            private string CreateTree(string RootNode, string[] valueArray,
          List<SPListItem> objNodeCollection, string DisplayValue, string KeyValue)
                try
                    strhtml.Appends(GetSRType(KeyValue, valueArray, objNodeCollection);
                catch (Exception ex)
                    throw ex;
                return strhtml;
            StringBuilder SRType = new StringBuilder();
            private string GetSRType(string RootNode,
            string[] valueArray, List<SPListItem> objListItemColn)
                SPQuery objSPQuery;
                SPListItemCollection objItems = null;
                List<SPListItem> objNodeListItems = new List<SPListItem>();
                objSPQuery = new SPQuery();
                string objNodeTitle = string.Empty;
                string objLookupColumn = string.Empty;
                StringBuilder Query = new StringBuilder();
                SPList objTaskList;
                SPField spField;
                string objKeyColumn;
                string SrTypeCategory;
                try
                    objTaskList = SPContext.Current.Web.Lists["Service"];
                    objLookupColumn = "Parent_x0020_Service_x0020_Id";//objTreeViewControlField.ParentLookup;
                    Query.Append(String.Format
                    (DYNAMIC_CAML_QUERY_GET_CHILD_NODE, objLookupColumn, RootNode));
                    objSPQuery.Query = Query.ToString();
                    objItems = objTaskList.GetItems(objSPQuery);
                    foreach (SPListItem objItem in objItems)
                        objNodeListItems.Add(objItem);
                    if (objNodeListItems != null && objNodeListItems.Count > 0)
                        foreach (SPListItem objItem in objNodeListItems)
                            RootNode = Convert.ToString(objItem["Title"]);
                            objKeyColumn = Convert.ToString(objItem["ID"]);
                            objNodeTitle = Convert.ToString(objItem["Title"]);
                            SrTypeCategory= Convert.ToString(objItem["SRTypeName"]);
                           if(SrTypeCategory =="SRtYpe")
                              SRType.Append("<Type  id="+objKeyColumn+" Name="+RootNode+ ">");
                             if (!String.IsNullOrEmpty(objNodeTitle))
                              SRType.Append(GetSRType(objKeyColumn, valueArray, objListItemColn));
                          if(SrTypeCategory =="SRSubTYpe")
                              SRType.Append("<SRSubType  id="+objKeyColumn+" Name="+RootNode+
    ">");  
                             if (!String.IsNullOrEmpty(objNodeTitle))
                              SRType.Append(GetSRType(objKeyColumn, valueArray, objListItemColn));
                          if(SrTypeCategory =="SubSubTYpe")
                              SRType.Append("<SubSubType  id="+objKeyColumn+" Name="+RootNode +"
    ></SubSubType");  
                        SRType.Append("</SubType>");
                        SRType.Append("</Type>");
                catch (Exception ex)
                    throw ex;
                return SRType.ToString();
                // Call method again (recursion) to get the child items

    Hi,
    According to your post, my understanding is that you want to custom action for context menu in "Site Content and Structure" in SharePoint 2010.
    In "SiteManager.aspx", SharePoint use MenuItemTemplate class which represent a control that creates an item in a drop-down menu.
    For example, to create or delete the ECB menu for a list item in
    "Site Content and Structure", we can follow the steps below:
    To add the “My Like” menu, we can add the code below:      
    <SharePoint:MenuItemTemplate
    UseShortId=false
    id="OLListItemLike"
    runat="server"
    Text="My Like"
    ImageUrl="/_layouts/images/DelItem.gif"
    ClientOnClickNavigateUrl="https://www.google.com.hk/"
    />
    To remove the “Delete” menu, we can comment the code below:
    <SharePoint:MenuItemTemplate
    UseShortId=false
    id="OLListItemDelete"
    runat="server"
    Text="<%$Resources:cms,SmtDelete%>"
    ImageUrl="/_layouts/images/DelItem.gif"
    ClientOnClickScript="%SmtObjectDeleteScript%"
    />            
    The result is as below:
    More information:
    MenuItemTemplate Class (Microsoft.SharePoint.WebControls)
    MenuItemTemplate.ClientOnClickScript property (Microsoft.SharePoint.WebControls)
    Best Regards,
    Linda Li
    Linda Li
    TechNet Community Support

  • Change layout of Adhoc query output list for Custom infotype

    Hi All,
    The fields in the Infoset query output on a custom infotype are aligned with the fields u2018payment typeu2019 and u2018amountu2019 appearing repeatedly(in columns) as declared in the Infotype and the output will be a long horizontal list.
    Instead, the requirement is that the output list should show vertically so that If I choose u2018Payment Typeu2019 and u2018Amountu2019 as output fields, it will show a long vertical list as in the case of a standard infotype (IT0008).
    Also, this way enables user to use Payment Type as a selection criteria so as to just pulling the needed payment type. When we use IT0008 in the infoset it works fine but in custom IT it does not work.
    Any pointers/suggestions on how we can achieve this would be helpful.

    Hi yu liang,
                     You can find vendor list having Vendor No. & without showing total liability for every vendor.
    after executing the report,
    1.You need to select "change layout (ctrl+F8)",
    a small window comes, it has two part -> column content & hidden fields.
    then u select "Vendor" from hidden field & move it to column content.
    2. at column content there is a column named "Total". u need to remove check for your column name "amount".
    now select "copy" button or enter. u will find the req. report.
    u can save it also by ur name.
    hope its helpful to u.......
    plz, reward points as a way of thanks if helpful...

  • QBE Error when query by String for Number column

    Hi,
    I have a table with Number column.
    The column structure is like below:
    <af:column>
    <af:inputText>
    <f:validator .../>
    <af:converNumber ..../>
    </af:inputtext>
    </af:column>
    QBE is enabled for this column.
    It works fine when query by Number value, such as '123'. But when I query by string like 'asd', it will return an error.
    Anyone met this problem?

    Hi Arun,
    I am using Jdev 11.1.1.7.0.
    In my case,
    I have a application table, from where user can create new row inline. Some fields in the row have type Long or Number. We are also using <af:converNumber ..../> inside <af:inputText> to do format.
    I do have a query panel above the table. But we want the user can also filter the records using QBE. Other columns are working fine, except the columns with type 'Number' or 'Long'.
    I checked the incident log, below are some useful information:
    Caused by: java.sql.SQLSyntaxErrorException: ORA-01722: invalid number
    Caused by: oracle.jbo.SQLStmtException: JBO-27122: SQL error during statement preparation. Statement: SELECT ... FROM ... WHERE ... AND ( ( (MeaRulesEO.DEFAULT_MEA_PERIOD = :vc_temp_1 ) ) )
    It seems 'MeaRulesEO.DEFAULT_MEA_PERIOD = :vc_temp_1' causes the error. Jdev assumes every input from QBE header as number. If String is entered, Jdev will return error.
    I also checked that if the table is read-only, this problem does not exist.
    Please help on this. Thank you.

  • Querying for custom picklist values

    Hello all,
    I have created a new field on my opportunity type called "Industry" and gave it picklist values. However, the system is not allowing me to query for the values using the Picklist web service. Am I missing a step here, or does the system not allow querying for custom picklist field values? I can get to certain lists of picklist values for Opportunity (Type, Probability, some others) but not the picklist I created. Am I doing something wrong?
    Thanks!
    -Kevin Green

    Hi,
    Find integration tag for custom field in Field Setup. When you call getPicklist method, pass three values like Object type(ex: Lead), integratin tag for the custom field, "" ( this is language, this field is no need for English languague)
    Hope this willl work
    Raja Kumar Malla
    [email protected]

  • Query Builder access for end users

    Hi,
    I have a group of users who would like to have 'Query Builder' access.
    Is it possible to directly access query builder without actually login-in into application builder.
    Thanks in advance
    Aali

    No, but you could build a form to mimic it... Check out this thread from a few days ago: Query Builder functionality
    Thank you,
    Tony Miller
    Webster, TX
    On the road of life...There are 'windshields', and there are 'bugs'
    (splat!)
    "Squeegees Wanted"
    If this question is answered, please mark the thread as closed and assign points where earned..

  • XMLGEN: Produce XML dump of a table WITH tags for null column values

    I am new to generating XML so bear with me....
    We have a customer who needs an XML extract of data, including tags for any column that is null.
    I created a simple test case below using DBMS_XMLGEN.getXML. The first row (A1) has no null values and thus tags for columns A, BEE and CEE are produced. The second row (A2) has null in column BEE and thus tags for only columns A and CEE are produced.
    Is there a way to force a tag for null column BEE in the second row?
    create table foo (A varchar2(10), BEE number, CEE date);
    insert into foo values ('A1',1,sysdate);
    insert into foo values ('A2',null,sysdate);
    SELECT DBMS_XMLGEN.getXML('SELECT * FROM foo') FROM dual;
    <ROWSET>
    <ROW>
    <A>A1</A>
    <BEE>1</BEE>
    <CEE>27-SEP-12</CEE>
    </ROW>
    <ROW>
    <A>A2</A>
    <CEE>27-SEP-12</CEE>
    </ROW>
    </ROWSET>

    What's the database version? (SELECT * FROM v$version)
    Could you use this instead :
    SQL> select xmlserialize(document
      2           xmlelement("ROWSET",
      3             xmlagg(
      4               xmlelement("ROW",
      5                 xmlelement("A", a)
      6               , xmlelement("BEE", bee)
      7               , xmlelement("CEE", cee)
      8               )
      9             )
    10           )
    11         -- for display purpose only :
    12         as clob indent
    13         )
    14  from foo
    15  ;
    XMLSERIALIZE(DOCUMENTXMLELEMEN
    <ROWSET>
      <ROW>
        <A>A1</A>
        <BEE>1</BEE>
        <CEE>2012-09-27</CEE>
      </ROW>
      <ROW>
        <A>A2</A>
        <BEE/>
        <CEE>2012-09-27</CEE>
      </ROW>
    </ROWSET>
    Or,
    SQL> select xmlserialize(document
      2           xmlquery(
      3             '(#ora:view_on_null empty #)
      4             {
      5               <ROWSET>{fn:collection("oradb:/DEV/FOO")}</ROWSET>
      6             }'
      7             returning content
      8           )
      9           as clob indent
    10         )
    11  from dual;
    XMLSERIALIZE(DOCUMENTXMLQUERY(
    <ROWSET>
      <ROW>
        <A>A1</A>
        <BEE>1</BEE>
        <CEE>2012-09-27</CEE>
      </ROW>
      <ROW>
        <A>A2</A>
        <BEE/>
        <CEE>2012-09-27</CEE>
      </ROW>
    </ROWSET>
    (where "DEV" is my test schema)
    If you want to stick with DBMS_XMLGEN, you're gonna have to use PL/SQL and setNullHandling procedure.
    Edited by: odie_63 on 27 sept. 2012 17:14

  • Using '=' to check for NULL column value

    We are currently encountering an issue where 10.1.0.5 is happily accepting a check on a column for a null value with what I have always known to be an invalid syntax.
    For instance:
    select col1 from my table where col1=null
    Although this is wrong and we are working on locating the queries formatted as such, what I am wondering is why is it working on the 10.1.0.5 version but we cannot get the same query to execute on 8i, 9i, 10.2.0...? Is there a flag that can be enabled to allow this compare?

    I am familiar with the correct syntax to be using. What I am looking for is a possible explanation as to why the query below returns the correct results on 10.1.0.5 and returns nothing in all other versions. I would expect the same behavior across all instances. See the two lines in bold "AREA=NULL" and "SUBAREA=NULL"
    SELECT DISTINCT
    UNIQID,
    MGRCOMMENT,
    REQ.CREATED_BY CREATED,
    C2.CNAME DEVELOPER,
    C5.CNAME PRODMGR,
    C3.CNAME ASSIGNED,
    C4.CONTACTID CURRENTUSER,
    ID,
    STATUSNAME,
    REQ.STATUS STATUSID,
    PRIORITYNAME,
    TITLE,
    MAS1.MODULENAME,
    MAS1.AREANAME,
    MAS1.SUBAREANAME,
    MIN1.MODULE,
    MIN2.AREA,
    MIN3.SUBAREA
    FROM REQ,
    PRIORITY,
    STATUS,
    (SELECT FIRST_VALUE(M1.MODULENAME)
    OVER (PARTITION BY REQUNIQID ORDER BY MODULENAME ROWS UNBOUNDED PRECEDING) MODULENAME, FIRST_VALUE(A1.AREANAME)
    OVER (PARTITION BY REQUNIQID ORDER BY AREA ROWS UNBOUNDED PRECEDING) AREANAME, FIRST_VALUE(SA1.SUBAREANAME)
    OVER (PARTITION BY REQUNIQID ORDER BY SUBAREANAME ROWS UNBOUNDED PRECEDING) SUBAREANAME, REQUNIQID
    FROM REQMOD, MOD M1, ARA A1, SBARA SA1
    WHERE M1.MODULEID = REQMOD.MODULE
    AND A1.AREAID = REQMOD.AREA
    AND SA1.SUBAREAID = REQMOD.SUBAREA) MAS1,
    (SELECT FIRST_VALUE(C2.CNAME) OVER (PARTITION BY REQUNIQID ORDER BY CNAME ROWS UNBOUNDED PRECEDING) CNAME, REQUNIQID
    FROM REQ_ASSIGN, CONTACT C2
    WHERE C2.CONTACTID = REQ_ASSIGN.CONTACTID
    AND ASSIGNMENT_TYPE=2) C2,
    (SELECT FIRST_VALUE(C5.CNAME) OVER (PARTITION BY REQUNIQID ORDER BY CNAME ROWS UNBOUNDED PRECEDING) CNAME, REQUNIQID
    FROM REQ_ASSIGN, CONTACT C5
    WHERE C5.CONTACTID = REQ_ASSIGN.CONTACTID
    AND ASSIGNMENT_TYPE=1) C5,
    (SELECT FIRST_VALUE(C3.CNAME)
    OVER (PARTITION BY REQUNIQID ORDER BY CNAME ROWS UNBOUNDED PRECEDING) CNAME, REQUNIQID
    FROM REQ_ASSIGN, CONTACT C3
    WHERE C3.CONTACTID = REQ_ASSIGN.CONTACTID
    AND ASSIGNMENT_TYPE<>2
    AND ASSIGNMENT_TYPE<>1) C3,
    (SELECT DISTINCT REQUNIQID, CONTACTID FROM REQ_ASSIGN WHERE CONTACTID=5) C4,
    (SELECT DISTINCT REQUNIQID, MODULE FROM REQMOD WHERE MODULE=1) MIN1,
    *(SELECT DISTINCT REQUNIQID, AREA FROM REQMOD WHERE AREA=NULL) MIN2,*
    *(SELECT DISTINCT REQUNIQID, SUBAREA FROM REQMOD WHERE SUBAREA=NULL) MIN3,*
    REQCOMMENTS
    WHERE PRIORITY.PRIORITYID = REQ.PRIORITY
    AND STATUS.STATUSID = REQ.STATUS
    AND MAS1.REQUNIQID = REQ.UNIQID
    AND C2.REQUNIQID = REQ.UNIQID
    AND C5.REQUNIQID = REQ.UNIQID
    AND C3.REQUNIQID = REQ.UNIQID
    AND C4.REQUNIQID = REQ.UNIQID
    AND MIN1.REQUNIQID = REQ.UNIQID
    AND MIN2.REQUNIQID = REQ.UNIQID
    AND MIN3.REQUNIQID = REQ.UNIQID
    AND REQCOMMENTS.REQUNIQID = REQ.UNIQID
    AND REQ.PROJECTID = 3;

  • Query not executing for one particular value

    Hi
    I have query on multi provider. and this multi provider is combination of Info objects only but not any ODS or cubes. I have one key figure in this multi provider.while executing the query i need to give input for variabl which has 7 different values. Query is executing fine for 6 values but not for one particular value.
    query executed in listcube transaction and it is executed fine here for the same selection. then what might be the reason?
    Please advise as soon as possible.
    Thanks

    Hi Kiran,
    are you maintaining any filters in the query? or is there any logic in the exit for this variable.
    regards.

  • Better approach for checking column values between two different rows

    My requirement is to find best Approach to find difference between column values of two different rows.Below I've mentioned two different
    approaches I'm thinking of,but I'd like to know is there any other better approach.
    version details
    SQL> SELECT *
      2  FROM V$VERSION;
    BANNER
    Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - 64bit Production
    PL/SQL Release 11.1.0.7.0 - Production
    CORE    11.1.0.7.0      Production
    TNS for Solaris: Version 11.1.0.7.0 - Production
    NLSRTL Version 11.1.0.7.0 - ProductionTable creation script
    CREATE TABLE R_DUMMY
       (CA_ID VARCHAR2(16) NOT NULL ENABLE,
         CA_VER_NUM NUMBER(4,2) NOT NULL ENABLE,
         BRWR_SHORT_NAME VARCHAR2(25 CHAR),
         sic_code     number,
         FAC_ID VARCHAR2(10) NOT NULL ENABLE
    / insert script
    insert into r_dummy (CA_ID, CA_VER_NUM, BRWR_SHORT_NAME, sic_code, FAC_ID)
    values ('CA2001/11/0002', 2.00, 'Nandu',1234, 'FA000008');
    insert into r_dummy (CA_ID, CA_VER_NUM, BRWR_SHORT_NAME, sic_code, FAC_ID)
    values ('CA2001/11/0002', 3.00, 'SHIJU',456, 'FA000008');Desired O/P :
    ca_id               fac_id          column_name          previous name          after_modification
    CA2001/11/0002          FA000008     BRWR_SHORT_NAME          Nandu               SHIJU
    CA2001/11/0002          FA000008     sic_code          1234               456My approach
    select      ca_id,fac_id,column_name,
         decode(column_name,'BRWR_SHORT_NAME',lg_brwr,lg_sic) previous_name ,
         decode(column_name,'BRWR_SHORT_NAME',ld_brwr,ld_sic) after_modification
    from
         select
                   case
                        when ld_brwr != lg_brwr then
                        'BRWR_SHORT_NAME'
                        when ld_brwr != lg_brwr then
                        'sic_code'
                   end
              ) column_name,ca_id,fac_id,lg_brwr,ld_brwr,ld_sic,lg_sic
         from     (
              select ca_id,fac_id,lag_brwr,ld_brwr,ld_sic,lag_sic
              from
                        Select      lead(brwr_short_name,1) over(partition by ca_id,fac_id) ld_brwr,
                             lag(brwr_short_name,1) over(partition by ca_id,fac_id) lg_brwr,
                             lead(sic_code,1) over(partition by ca_id,fac_id) ld_sic,
                             lag(sic_code,1) over(partition by ca_id,fac_id) lg_sic,
                             ca_id,fac_id
                        from r_dummy
              where (ld_brwr != lg_brwr or ld_sic != lg_sic)
    )2nd Approach :
    =============
    select      ca_id,fac_id,column_name,
         decode(column_name,'BRWR_SHORT_NAME',lg_brwr,lg_sic) previous_name ,
         decode(column_name,'BRWR_SHORT_NAME',ld_brwr,ld_sic) after_modification
    from
         select
                   case
                        when ld_brwr != lg_brwr then
                        'BRWR_SHORT_NAME'
                        when ld_brwr != lg_brwr then
                        'sic_code'
                   end
              ) column_name,ca_id,fac_id,lg_brwr,ld_brwr,ld_sic,lg_sic
         from     (
              select ca_id,fac_id,brwr_short_name,sic_code
              from
                        Select      ca_id,fac_id,brwr_short_name lg_brwr,sic_code lg_sic
                        from     r_dummy
                        where     ca_ver_num = '2.00'
                   )o,(
                        Select      ca_id,fac_id,brwr_short_name ld_brwr,sic_code ld_sic
                        from     r_dummy
                        where     ca_ver_num = '3.00'
                              )n
              where      0.ca_id = n.ca_id
                   and 0.fac_id = n.fac_id
                   and (ld_brwr != lg_brwr or ld_sic != lg_sic)
    )Hi Experts,
         I've provided sample data where I'm checking for just two columns viz brwr_short_name ,sic_code,but in real time
    I've to check for 8 more columns so please suggest me with a better approach.
    I appreciate your precious suggestions.

    Hi,
    Thanks for posting the CREATE TABLE and INSERT statements; that really helps!
    Here's one wa. Like your 2nd approach, this uses a self-join:
    WITH     got_r_num     AS
         SELECT  ca_id
         ,     ROW_NUMBER () OVER ( PARTITION BY  ca_id
                                   ,                    fac_id
                             ORDER BY        ca_ver_num
                                 )    AS r_num
         ,     brwr_short_name
         ,     TO_CHAR (sic_code)     AS sic_code
         ,     fac_id
    --     ,     ...     -- Other columns (using TO_CHAR if needed)
         FROM     r_dummy
    ,     unpivoted_data     AS
         SELECT     *
         FROM     got_r_num
         UNPIVOT     INCLUDE NULLS
              (    txt
              FOR  column_name IN ( brwr_short_name          AS 'BRWR_SHORT_NAME'
                            , sic_code               AS 'SIC_CODE'
    --                        , ...     -- Other columns
    SELECT       p.ca_id
    ,       p.fac_id
    ,       p.column_name
    ,       p.txt          AS previous_name
    ,       a.txt          AS after_modification
    FROM       unpivoted_data   p
    JOIN       unpivoted_data   a  ON  p.ca_id     = a.ca_id
                           AND p.fac_id     = a.fac_id
                         AND p.column_name     = a.column_name
                         AND p.r_num      = a.r_num - 1
                         AND p.txt || 'X' != a.txt || 'X'
    ORDER BY  a.r_num
    ;To include other columns, add them in the 2 places where I put the comment "Other columns".
    Ca_ver_num can have any values, not just 2.00 and 3.00.
    This will show cases where a value in one of the columns changed to NULL, or where NULL changed to a value.
    There ought to be a way to do this without a separate sub-query like got_r_num. According to the SQL Language manual, you can put expressions in the UPIVOT ... IN list, but when I tried
    ...     UNPIVOT     INCLUDE NULLS
              (    txt
              FOR  column_name IN ( brwr_short_name          AS 'BRWR_SHORT_NAME'
                                 , TO_CHAR (sic_code)     AS 'SIC_CODE'
              )I got the error "ORA_00917: missing comma" right after TO_CHAR. Perhaps someone else can show how to eliminate one of the sub-queries.

  • Transfer OTL to Payroll is not working for Custom Field Values

    Hi,
    We have Extended the Payroll and Project layout in OTL to include custom fields.
    Now linked the fields to Element entries input values.
    The issue happens when a retro batch is processed and transfered to Payroll the input values are not getting pulled properly.
    i.e. The retro batch creates a positive value for the new retro entry and a Counter negative value for the old record.
    Only in the case of Negative value, the issue is happening. For the positive value it is pulling the record properly from the custom fields.
    Can you please let me know, how to debug the same.
    Also this issue happens randomly not all the employees are facing this issue.
    Thanks,
    Raja Rajan

    Hi Rsn,
    just check the put this code in
    1st way--
    jjust import the api in your custom Action class
    import com.sap.isa.core.logging.IsaLocation;
    private final static IsaLocation log = IsaLocation.getInstance(ZcustomeAction.class.getName());
    then
    log.error("value"+value);
    in this  way you can debug the code...if not possible thenn...
    you can write...
    System.err.println("value"+value);
    you can also try to this  way..i think it will work now
    Thanks
    Jati

Maybe you are looking for

  • Problem in master-detail form on "Apply"

    Hi experts, I've got a master-detail OAF page and in the details resultsTable (based on a VO, which is based on an EO) i've 1. one messageLovInput item +"Location(View attr: LocationCode[transient])"+. 2. two messageTextInput items +"LocationId(View

  • Iphone will not recognize hp laserjet 3055 HELP!

    im trying to connect my iphone to my printer but it wont work! I tried to manually add it but i dont have an email adress for my printer, and it wont get detected on the local network. does anyone have a solution for this?

  • Can i upload a 12 min. video to my ipod video ?

    can i upload a 12 min. video to my ipod video ?

  • WD ABAP Iviews under Related Activities

    Hi, I am trying to include standard WD ABAP Iview under ESS in MSS under Team Workset. However it is not working the same way as WD Java Iviews does. Instaed of picking selected Employee's page, it is displaying Manager's page. I have also maintained

  • Want textarea to be displayed on the image

    Hello, I am stuck up with a problem, I have a JPaaplet which displays an image, and i want a textarea to appear whereever i click on the image. and i dono how to get this. it would be kindful if anyone could help me out with this. It is very urgent n