Function should be assessed at the Date

Hi all

We have included a condition in where clause of a logical table for a date field.

Evaluate ("to_date (%1, %2)', 'abcd'. » ». "" 123 ". "" "" Dim_SALES '. "" CREATED_DATE', 'DD-MON-YY') > 1 January 15 '

Now, we have changed the data type of this timestamp field and the function above does not work.

Can you please help me make this work has a timestamp.

Thank you

found the solution... Cast (such as date) worked for the timestamp... Thank you

Tags: Business Intelligence

Similar Questions

  • Function should be assessed on a case where

    Hello
    I want to use function should be evaluated in the case when statement. My req's

    If report_date = 8/31 and sales_qty > 30... Show 1

    If report_date = 7/15 and sales_qty > 39... show 2...


    in the section formula that I use
     case WHEN "Fact- table"."Report  Date"=evaluate('to_date(%1%2)',"Column_name",'DD/MM
    /YYYY')) AND "Fact-table"."Sales_qty">30 THEN '1'  ELSE '0' END 
    Report date data type is only the date... Sound giving a date format error is not supported

    Please help me!

    Angélique,

    can you singular an example of the current format of the object "report month".

    Try also once in sql as the chosen date format fits... he thinks that the problem is located there. Probably, if it's just the month, you will need to use a format such as "MM/YYYY"... so, if you have an example of the object...

    KR,
    A

  • How name VO of change that should be reflected in the data controls

    Hello

    I want to refactor my VO. I am also able to refactor successfully but that the problem is that it does not reflect in slot data .data controls controls display the ancient name of what I need to do?

    Have you changed the name of the VO instance in the application module?

  • How can I access the data associated with an event within the event handler function?

    Hello

    In my LabWindows code, I try to use a DLL that has been developed in .NET (c#).  I used the built-in labwindows Wizard that converts the DLL to a usable 'instrument'.  Almost everything seems to work, except that I have 1 problem.

    There is an event (defined in the DLL) that I am able to detect.  I know that the reminder of the event is called at the right time.  But the problem is that in this function, I can't access the data that is supposed to be attached to the event.  It worked fine in c#, but I don't know how to do in LabWindows.  Here's what looked like in c# event handler function:

    void AppLoaderEventCallback (CommonLib.CommandResult MyResults)

    {

    MyResults is used in the body of this function

    }

    But in LabWindows, I can't seem to access the MyResults data structure.  Here's what I do:

    public static int CVICALLBACK AppLoaderEventCallback (CommonLib_CommandResult MyResults)

    {

    I can't access MyResults here

    }

    Can you help me with this?  I'm doing something wrong?

    Thank you very much for your help.

    -Mike

    I think that your statement of callback function is perhaps not quite correct. Look using the parameter "callback function" function Panel of the generated __Create function associated with this event. This shows the declaration of the callback function - make sure that your callback function is declared in the same way.

  • Display the data from the month

    Hi all
    I have a month column in my report that contain data such as the 2007/01, 2007/02,2007/03...I have t use this month column in the x-axis of the graph & it should display data as 01,02, 03... in the report for which I put formula for the month column in criteria under ex builder (a.monthcolumn) a month but its gives me the error below
    [nQSError: 10058] A general error occurred. [nQSError: 22025] Extract calendar function is called with an incompatible type. (HY000)
    SQL issued: SELECT "revenue of facts." Recipes, "other Dimensions." Area, MONTH (time." "Month"), time. "" Year ""sample reduced SALES.

    How to solve this?



    Kind regards
    Jingle

    month() function will only apply on the date column...

    If you want to extract the 01, 02,... etc from the format column...
    Use this:

    Right(MonthColumn, 2)
    
  • Replacement of the main computer, don't want to lose all the data synchronized.

    I use Firefox Sync with multiple devices at work and at home. My main computer, which is the original pc all data from first and I use to add new devices, is my work laptop. I'm being transferred across the country and no longer have this laptop.

    I need somehow put up my home pc or my new laptop to work as the new main computer, but I don't want to lose all data. Should I export all the data from the laptop the existing work and import it on the new pc, then installed Sync all over again on my other devices (Mercury browser for iphone and ipad)? Or is there an easier way to do it?

    Thank you
    Jake

    Hello, first of all please create a backup of your profile of your work pc folder, so that you have your data available in all cases: back up and restore the information contained in the profiles of Firefox

    I do not think that there is something like a 'primary' feature in your accounts sync - all devices need to be at the height, you can simply delete your old laptop to sync & add the new laptop to the account:
    Go to firefox > options > tab sync on your old laptop. Please make sure you as your user name, password of the account and the recovery key is known to you (you can access the recovery key under 'manage accounts' "-write it down if you haven't done so already '), then click on separate device in the Synchronize tab.

    You can then add your new laptop to work on behalf of sync existing either by coupling a device while you're close to your pc at home or with your user account, password and recovery key.

  • How to validate the data in the source

    Hi all


    I am new to ODI, in my process could be called in 2 modes of Validation and load

    a. validation - V - should perform validation on the data from the source according to the filter criteria
    b. load - L - could make a mandatory check and load the data into the target table

    My concern is how do only validation on data sources, please share any ideas on this...


    Thanks in advance...

    Dragging data store in the package in order to apply the static control, you are doing your validation without loading.
    This validation step will copy the invalid data in the table of errors (E$) and you can also decide if you want to remove from the source (and keep the data only in the error table).

  • Required custom metadata field with the date current system as default.

    I want to create a custom type metadata field Date. I want to make mandatory and set its default value as date system.

    I have already created the field of type Date. What expression should I write do the date system as default?

    Because it is a required field, what will happen to existing content. Is there metadata get updated?

    Thank you
    Sanjeev

    Change metadata Information fields and set the default value <$dateCurrent()$>.
    If you want to update the metadata for exisitng documents, you can use archiver to export all the elements and then perform an import. But, before you do the import set up import mappings
    (1) update existing items have the same date, use the value cards (tab cards Import)
    (2) use of field maps to update with arrival,

  • Field containing average function works only when the data are engaged on the same page. Does not work for fields on other pages.

    I'm having a problem with a field defined to calculate the average of eleven points fields (points 1 to 8 on page 1-9-11 on page 2). My original question was that it could exclude fields of points when they do not have information entered and adjust the average calculation (number of "divided by") accordingly.

    I had someone write JavaScript code for him, but I just found a small problem I don't know if it's something in the code or what the person who originally wrote the script cannot understand it either and suggested that I have post here.

    The middle area (located on the 2nd page of the pdf page two) seems to work exclusively with precision if at least one of the points of the fields on the 2nd page, 9, 10 (and 11) are engaged with the data. No values entered on the first page and only the first page, are for some reason any dividing by a more than expected. For example, if I fill the boxes 1, 2 and 3, it divides the total by four. If I filled just box 7, it halves. If I fill all 8 boxes on the 1st page, it divides by nine. It is corrected as soon as I get the points in one or more of the three boxes on the 2nd page points, suddenly the overall average is accurate. But if boxes 9, 10 and 11 contain no points, then the average is still inaccurate because the number of ' divide by "he uses is one more than what it should. I can't understand how to attach the form to this post, so I downloaded on Dropbox: Dropbox - used Evaluation.pdf.

    Under the direction of State: javascript came work to exclude the empty boxes when the points are entered in one of the three points of fields on the 2nd page (and more), but the average function is not accurate because it adds 1 to the number of ' divide by "in the calculation of the average If the points are only entered into the fields on the 1st page.

    Here's the code I entered in the 'Custom calculation Script' box in the 'Calculate' tab of the Properties menu of Test field:

    Initialize variables

    var num = 0;

    var sum = 0;

    Browse the input fields

    for (var i = 1; i < 12; i ++) {}

    var f = getField ("points." + i);

    If {(f.valueAsString)

    increment the counter to non-empty field

    NUM ++;

    Add the value of the running total field

    sum += + f.value;

    }

    }

    Calculate the average

    If {(num)

    Event.Value = sum / num;

    } else {}

    All fields are empty, then the empty value

    Event.Value = "";

    }

    I do not see that. Add the code of script debugging will display the results that each field is completed:

    Initialize variables
    var num = 0;
    var sum = 0;

    Browse the input fields
    for (var i = 1; i)< 12;="" i++)="">
    var f = getField ("points." + i);
    If {(f.valueAsString)
    increment the counter to non-empty field
    NUM ++;
    Add the value of the running total field
    sum += + f.value;
    }
    }
    Debug - display results as the form is filled;
    Console.Show
    Console.println (sum + "/" + num + "=" + sum/num);
    end of debugging;
    Calculate the average
    If {(num)
    Event.Value = sum / num;
    } else {}
    All fields are empty, then the empty value
    Event.Value = "";
    }

  • MinList function does not work in the values of Date or datetime in DRM

    Hello

    We have a custom property End Date with the data type date. We want to calculate the minimum term overall of all the children of a particular node.

    When you use the below function it gives an empty value as output.

    MinList (ReplaceStr (ListNodePropValues (ListChildren (SortOrder), [comma], Custom.NO_ALL_ALL_ENDDATE), [comma], #, true), #, date)

    If remove us the part MinList and only assess ReplaceStr (ListNodePropValues (ListChildren (SortOrder), [comma], Custom.NO_ALL_ALL_ENDDATE), [comma], #, true), we get an output like the 31/12/2019 # 31/12/2018.

    Why DRM is not able to extract the min value? DRM support such use of this function?

    We even tried with a date time property, but the result is the same.

    If using the method mentioned above, it is not possible to get the date value min, what alternative approach can be taken to achieve this?

    Any help on this is much appreciated.

    Thank you

    Nathalie

    I found this useful, check if this can help,

    Using MinList to MaxList with Date or DateTime DRM (Doc ID 1967005.1) values

    Managing the relationship of data Hyperion - Version 11.1.2.3.000 and later

    Information in this document applies to any platform.

    GOAL

    Example: How can we calculate the minimum term overall of all the children of a particular node?

    You have a custom End Date property with the data type date. You tried to use MinList with ListNodePropValues as well:

    MinList (ReplaceStr (ListNodePropValues (ListChildren (SortOrder), [comma], Custom.EndDate), [comma], #, true), #, date)

    This gives an empty value as output.

    SOLUTION

    The most reliable way to do this using formulas is to format the property date as a string in ISO 8601 format. Yyyy-mm-dd format, alphabetical order is also date order. Add a using the property of type string like this:

    FormattedDate (Custom.EndDate), yyyy-mm - ddThh:mm:ss)-omit the time of the 't' it if you wish. Note that the format string is case-sensitive.

    Then the function MinList
    MinList (ReplaceStr (ListNodePropValues (ListChildren (SortOrder), [comma], Custom.Helper), [comma], #, true), #, string)
    will work.

    Note that MinList and MaxList functions return an empty value if the list contains members that are not specified data type. With the help of ReplaceStr converts implicitly dates to strings, causing MinList and MaxList to fail if you specify DateTime.

  • run the Idoc function in the data file returned by the service of GET_FILE

    Hello

    I'm new to this forum, so thank you in advance for any help and forgive me of any error with the post.

    I'm trying to force the execution of a custom Idoc function in a data file Complutense University of MADRID, when this data file is requested from the University Complutense of MADRID through service GET_FILE.

    The custom Idoc function is implemented as a filter of the computeFunction type. One of the datafile has appealed to my custom Idoc function:
    * < name wcm:element = "MainText" > [! - $myIdocFunction ()-] < / wcm:element > *.

    The data file is then downloaded with CRMI via service GET_FILE, but the Idoc function is not called.

    I tried to implement another filter Idoc type sendDataForServerResponse or sendDataForServerResponseBytes, that store objects cached responseString and responseBytes, personalized in order to look for any call to my function in the response object Idoc, eventually run the Idoc function and replace the output of the Idoc in the response. But this kind of filter will never run.

    The Idoc function myIdocFunction is executed correctly when I use WCM_PLACEHOLDER service to get a RegionTemplate (file .hcsp) associated with the data file. In this case, the fact RegionTemplate refers to the element of "MainText" data file with <!-$wcmElement ("MainText")->. But I need to make it work also with service GET_FILE.

    I use version 11.1.1.3.0 UCM.

    Any suggestion?
    Thank you very much
    Francesco

    Hello

    Thank you very much for your help and sorry for this late reply.

    Your trick to activate the complete detailed follow-up was helpful, because I found out I could somehow use the filter prepareForFileResponse for my purpose and I could also have related to the implementation of the native filter pdfwatermark. PdfwFileFilter .

    I managed to set up a filter whose purpose is to force the Idoc assessment of a predefined list of functions Idoc on the output returned by the service GET_FILE. Then I paste the code I have written, in which case it may be useful for other people. In any case, know that this filter can cause performance problems, which must be considered carefully in your own use cases.

    First set the filter in the set of filters in file .hda from your device:

    Filters @ResultSet

    4

    type

    location

    parameter

    loadOrder

    prepareForFileResponse

    mysamplecomponent. ForceIdocEvaluationFilter

    null

    1

    @end

    Here is a simplified version of the implementation of the filter:

    / public class ForceIdocEvaluationFilter implements FilterImplementor {}

    public int doFilter (workspace ws, linking DataBinder, ExecutionContext ctx) survey DataException, ServiceException {}

    Service string = binder.getLocal ("IdcService");

    String dDocName = binder.getLocal ("dDocName");

    Boolean isInternalCall = Boolean.parseBoolean (binder.getLocal ("isInternalCall"));

    If ((ctx instanceof FileService) & service.equals ("GET_FILE") &! isInternalCall) {}

    FileService fileService = ctx (FileService);

    checkToForceIdocEvaluation (dDocName, fileService);

    }

    continue with other filters

    Back to CONTINUE;

    }

    ' Private Sub checkToForceIdocEvaluation (String dDocName, FileService fileService) throws DataException, ServiceException {}

    PrimaryFile file = IOUtils.getContentPrimaryFile (dDocName);

    Ext = FileUtils.getExtension (primaryFile.getPath ());

    If (ext.equalsIgnoreCase ("xml")) {}

    forceIdocEvaluation (primaryFile, fileService);

    }

    }

    forceIdocEvaluation Private Sub (file primaryFile FileService fileService) throws ServiceException {}

    String multiplesContent = IOUtils.readStringFromFile (primaryFile);

    Replacement ForceIdocEvaluationPatternReplacer = new ForceIdocEvaluationPatternReplacer (fileService);

    String replacedContent = replacer.replace (fileContent);

    If (replacer.isMatchFound ()) {}

    setNewOutputOfService (fileService, replacedContent);

    }

    }

    ' Private Sub setNewOutputOfService (FileService fileService, String newOutput) throws ServiceException {}

    File newOutputFile = IOUtils.createTemporaryFile ("xml");

    IOUtils.saveFile (newOutput, newOutputFile);

    fileService.setFile (newOutputFile.getPath ());

    }

    }

    public class IOUtils {}

    public static getContentPrimaryFile (String dDocName) survey DataException, ServiceException {queue

    DataBinder serviceBinder = new DataBinder();

    serviceBinder.m_isExternalRequest = false;

    serviceBinder.putLocal ("IdcService", "GET_FILE");

    serviceBinder.putLocal ("dDocName", dDocName);

    serviceBinder.putLocal ("RevisionSelectionMethod", "Latest");

    serviceBinder.putLocal ("isInternalCall", "true");

    ServiceUtils.executeService (serviceBinder);

    String vaultFileName = DirectoryLocator.computeVaultFileName (serviceBinder);

    String vaultFilePath = DirectoryLocator.computeVaultPath (vaultFileName, serviceBinder);

    return new File (vaultFilePath);

    }

    public static String readStringFromFile (File sourceFile) throws ServiceException {}

    try {}

    return FileUtils.loadFile (sourceFile.getPath (), null, new String [] {"UTF - 8"});

    } catch (IOException e) {}

    throw new ServiceException (e);

    }

    }

    Public Shared Sub saveFile (String source, destination of the file) throws ServiceException {}

    FileUtils.writeFile (source, destination, "UTF - 8", 0, "is not save file" + destination);

    }

    public static getTemporaryFilesDir() leader throws ServiceException {}

    String idcDir = SharedObjects.getEnvironmentValue ("IntradocDir");

    String tmpDir = idcDir + "custom/MySampleComponent";

    FileUtils.checkOrCreateDirectory (tmpDir, 1);

    return new File (tmpDir);

    }

    public static createTemporaryFile (String fileExtension) leader throws ServiceException {}

    try {}

    The file TmpFile = File.createTempFile ("tmp", "." + fileExtension, IOUtils.getTemporaryFilesDir ());

    tmpFile.deleteOnExit ();

    return tmpFile;

    } catch (IOException e) {}

    throw new ServiceException (e);

    }

    }

    }

    Public MustInherit class PatternReplacer {}

    Private boolean matchFound = false;

    public string replace (CharSequence sourceString) throws ServiceException {}

    Matcher m = expand () .matcher (sourceString);

    StringBuffer sb = new StringBuffer (sourceString.length ());

    matchFound = false;

    While (m.find ()) {}

    matchFound = true;

    String matchedText = m.group (0);

    String replacement = doReplace (matchedText);

    m.appendReplacement (sb, Matcher.quoteReplacement (replacement));

    }

    m.appendTail (sb);

    Return sb.toString ();

    }

    protected abstract String doReplace(String textToReplace) throws ServiceException;

    public abstract Pattern getPattern() throws ServiceException;

    public boolean isMatchFound() {}

    Return matchFound;

    }

    }

    SerializableAttribute public class ForceIdocEvaluationPatternReplacer extends PatternReplacer {}

    private ExecutionContext ctx;

    idocPattern private model;

    public ForceIdocEvaluationPatternReplacer (ExecutionContext ctx) {}

    This.ctx = ctx;

    }

    @Override

    public getPattern() model throws ServiceException {}

    If (idocPattern == null) {}

    List of the functions = SharedObjects.getEnvValueAsList ("forceidocevaluation.functionlist");

    idocPattern = IdocUtils.createIdocPattern (functions);

    }

    Return idocPattern;

    }

    @Override

    protected String doReplace(String idocFunction) throws ServiceException {}

    Return IdocUtils.executeIdocFunction (ctx, idocFunction);

    }

    }

    public class IdocUtils {}

    public static String executeIdocFunction (ExecutionContext ctx, String idocFunction) throws ServiceException {}

    idocFunction = convertIdocStyle (idocFunction, IdocStyle.ANGULAR_BRACKETS);

    PageMerger activeMerger = (PageMerger) ctx.getCachedObject("PageMerger");

    try {}

    String output = activeMerger.evaluateScript (idocFunction);

    return output;

    } catch (Exception e) {}

    throw the new ServiceException ("cannot run the Idoc function" + idocFunction, e);

    }

    }

    public enum IdocStyle {}

    ANGULAR_BRACKETS,

    SQUARE_BRACKETS

    }

    public static String convertIdocStyle (String idocFunction, IdocStyle destinationStyle) {}

    String result = null;

    Switch (destinationStyle) {}

    case ANGULAR_BRACKETS:

    result = idocFunction.replace ("[!-$","<$").replace("--]", "$="">" "]");

    break;

    case SQUARE_BRACKETS:

    result = idocFunction.replace ("<$", "[!--$").replace("$="">", "-] '");

    break;

    }

    return the result;

    }

    public static model createIdocPattern ( list idocFunctions) throws ServiceException {}

    If (idocFunctions.isEmpty ()) throw new ServiceException ("list of Idoc functions to create a template for is empty");

    StringBuffer patternBuffer = new StringBuffer();

    model prefix

    patternBuffer.append ("(\\ [\\!--|)")<>

    Features GOLD - ed list

    for (int i = 0; i)

    patternBuffer.append (idocFunctions.get (i));

    If (i

    }

    model suffix

    patternBuffer.append ("") (. +?) (--\\]|\\$>)");

    String pattern = patternBuffer.toString ();

    log.trace ("Functions return Idoc model", model);

    Return Pattern.compile (pattern);

    }

    }

    public class ServiceUtils {}

    Private Shared Workspace getSystemWorkspace()}

    Workspace workspace = null;

    WsProvider provider = Providers.getProvider ("SystemDatabase");

    If (null! = wsProvider) {}

    workspace = wsProvider.getProvider ((workspace));

    }

    Returns the workspace;

    }

    getFullUserData private static UserData (String userName, cxt ExecutionContext, workspace ws) throws DataException, ServiceException {}

    If (null == ws) {}

    WS = getSystemWorkspace();

    }

    UserData userData is UserStorage.retrieveUserDatabaseProfileDataFull (name of user, ws, null, cxt, true, true);.

    ws.releaseConnection ();

    return userData;

    }

    public static executeService (DataBinder binder) Sub survey DataException, ServiceException {}

    get a connection to the database

    Workspace workspace = getSystemWorkspace();

    Look for a value of IdcService

    String cmd = binder.getLocal ("IdcService");

    If (null == cmd) {}

    throw new DataException("!csIdcServiceMissing");

    }

    get the service definition

    ServiceData serviceData = ServiceManager.getFullService (cmd);

    If (null == serviceData) {}

    throw new DataException (LocaleUtils.encodeMessage ("!")) csNoServiceDefined", null, cmd));

    }

    create the object for this service

    The service = ServiceManager.createService (serviceData.m_classID, workspace, null, Binder, serviceData);

    String userName = 'sysadmin ';

    UserData fullUserData = getFullUserData (username, service, workspace);

    service.setUserData (fullUserData);

    Binder.m_environment.put ("REMOTE_USER", username);

    try {}

    init service do not return HTML

    service.setSendFlags (true, true);

    create the ServiceHandlers and producers

    service.initDelegatedObjects ();

    do a safety check

    service.globalSecurityCheck ();

    prepare for service

    service.preActions ();

    run the service

    service.doActions ();

    } catch (ServiceException e) {}

    } {Finally

    service.cleanUp (true);

    If (null! = workspace) {}

    workspace.releaseConnection ();

    }

    }

    }

    }

  • How to generate the dates in order through functions

    first to see the code example
    create or replace function FNC_GET_DATE(p_businessdate varchar2) return date
    as
    v_date date;
    begin
    
    v_Date := to_date(p_businessdate,'mm/dd/yyyy') +10;
    
    return v_date;
    end;
    Now I mean this function in a loop for N times and the first output of the function must be the entrance for the second call

    Assuming that the initial value of p_businessdate be 01/01/2012 the output of the function should be 11/01/2012.

    Now exit 11/01/2012 must be sent as input for the FNC_GET_DATE function, then the output should be 21/01/2012.

    Now exit 21/01/2012 must be sent as input for the FNC_GET_DATE function, then the output should be 31/01/2012.

    Assuming that the number of iterations to 4 outputs (here the value of N) should be something like this:
    01/01/2012
    01/11/2012
    01/21/2012
    01/31/2012
    For this we need a function that has p_busdate and no_of_itereations as input parameter and the retrun type can be a sysrefcursor as shown below, once more:


    01/01/2012
    11/01/2012
    21/01/2012
    31/01/2012

    Please notify.

    Here's a basic idea.

    I used a nested function to simulate the 'other' function, you need to call. I also didn't care to do things like manipulate strings and convert to date, but you get the idea.

    create or replace function f_get_some_dates
    (
          p_starting_date   date
       ,  p_how_many_dates  number
    )
    return sys_refcursor
    as
       l_date_list    sys.odcidatelist  default sys.odcidatelist();
       l_current_date date  := p_starting_date;
       l_ref_cursor   sys_refcursor;
    
       function f_add_days
       (
          p_date   date
       )
       return date
       is
       begin
          return p_date + 10;
       end f_add_days;
    begin
    
       for loop_idx in 1 .. p_how_many_dates
       loop
          l_current_date := f_add_days(l_current_date);
          l_date_list.extend;
          l_date_list(l_date_list.count)   := l_current_date;
       end loop;
    
       open l_ref_cursor for
       select *
       from table(cast(l_date_list as sys.odcidatelist))
       order by column_value asc;
    
       return l_ref_cursor;
    
    end f_get_some_dates;
    /
    
    ME_TUBBZ?variable rc refcursor;
    ME_TUBBZ?exec :rc := f_get_some_dates(trunc(sysdate, 'dd'), 2);
    
    PL/SQL procedure successfully completed.
    
    Elapsed: 00:00:00.01
    ME_TUBBZ?print :rc
    
    COLUMN_VALUE
    --------------------
    08-JUL-2012 00 00:00
    18-JUL-2012 00 00:00
    
    2 rows selected.
    
    Elapsed: 00:00:00.00
    ME_TUBBZ?exec :rc := f_get_some_dates(trunc(sysdate, 'dd'), 4);
    
    PL/SQL procedure successfully completed.
    
    Elapsed: 00:00:00.00
    ME_TUBBZ?print :rc
    
    COLUMN_VALUE
    --------------------
    08-JUL-2012 00 00:00
    18-JUL-2012 00 00:00
    28-JUL-2012 00 00:00
    07-AUG-2012 00 00:00
    
    4 rows selected.
    
    Elapsed: 00:00:00.00
    ME_TUBBZ?
    

    See you soon,.

  • Using the data logged in an interface with the aggragate function

    Hello

    I'm trying to use logged data from a source table in one of my interfaces in ODI. The problem is that one of the mappings on the columns target implies a function (sum) overall. When I run the interface, I get an error saying not "a group by expression. I checked the code and found that the columns jrn_subscriber, jrn_flag, and jrn_date are included in the select statement, but not in the group by statement (the statement group contains only remiaining two columns of the target table).

    Is there a way to get around this? I have to manually change the km? If so how would I go to do it?

    Also I'm using Oracle GoldenGate JKM (OGG oracle for oracle).

    Thanks and really appreciate the help

    Ajay

    "ORA-00979"when the CDC feature (logging) using ODI with Modules of knowledge including the aggregate SQL function works [ID 424344.1]
    Updated 11 March 2009 Type status MODERATE PROBLEM

    In this Document
    Symptoms
    Cause
    Solution
    Alternatives:

    This document is available to you through process of rapid visibility (RaV) of the Oracle's Support and therefore was not subject to an independent technical review.

    Applies to:
    Oracle Data Integrator - Version: 3.2.03.01
    This problem can occur on any platform.
    Symptoms
    After successfully testing UI integration ODI using a function of aggregation such as MIN, MAX, SUM, it is necessary to implement change using tables of Journalized Data Capture operations.

    However, during the execution of the integration Interface to retrieve only records from Journalized, has problems to step load module loading knowledge data and the following message appears in the log of ODI:

    ORA-00979: not a GROUP BY expression
    Cause
    Using the two CDC - logging and functions of aggregation gives rise to complex problems.
    Solution

    Technically, there is a work around for this problem (see below).
    WARNING: Problem of engineers Oracle a severe cautioned that such a type of establishment may give results that are not what could be expected. This is related to how ODI logging is applied in the form of specific logging tables. In this case, the aggregate function works only on the subset that is stored (referenced) in the table of logging and on completeness of the Source table.

    We recommend that you avoid this type of integration set ups Interface.
    Alternatives:

    1. the problem is due to the JRN_ * missing columns in the clause of "group by" SQL generated.

    The work around is to duplicate the knowledge (LKM) loading Module and the clone, change step "Load Data" by editing the tab 'Source on command' and substituting the following statement:
    <%=odiRef.getGrpBy()%>

    with
    <%=odiRef.getGrpBy()%>
    <%if ((odiRef.getGrpBy().length() > 0) && (odiRef.getPop("HAS_JRN").equals("1"))) {%>
    JRN_FLAG, JRN_SUBSCRIBER, JRN_DATE
    <%}%>

    2. it is possible to develop two alternative solutions:

    (a) develop two separate and distinct integration Interfaces:

    * The first integration Interface loads the data into a temporary Table and specify aggregate functions to use in this initial integration Interface.
    * The second integration Interfaces uses the temporary Table as Source. Note that if you create the Table in the Interface, it is necessary to drag and drop Interface for integration into the Source Panel.

    (b) define the two connections to the database so that separate and distinct references to the Interface of two integration server Data Sources (one for the newspaper, one of the other Tables). In this case, the aggregate function will be executed on the schema of the Source.

    Display related information regarding
    Products

    * Middleware > Business Intelligence > Oracle Data Integrator (ODI) > Oracle Data Integrator

    Keywords
    ODI; AGGREGATE; ORACLE DATA INTEGRATOR; KNOWLEDGE MODULES; CDC; SUNOPSIS
    Errors
    ORA-979

    Please find above the content of the RTO.
    It should show you this if you search this ID in the Search Knowledge Base

    See you soon
    Sachin

  • cellular data should be on all the time?

    cell data in parameters should be on all the time?

    No, no, unless you need a data connection and there is no wifi available.

    without wifi data or cell, your iPhone is just a basic cell phone.

  • If I sell my iPhone 6, indicating the error 53, for parts, should I worry about the person buying it have some sort of access to the personal data registered on this phone?

    If I sell my iPhone 6, indicating the error 53, for parts, should I worry about the person buying it have some sort of access to the personal data registered on this phone?

    Hello error 53 matched a UN failure to the home button you had to replace the screen or the home button alone or outside apple store so if you replace the button man of origin and you restored the iPhone error will be fixed but if you sell the buyer has no access to the data of the iPhone

Maybe you are looking for

  • I don't see any of my friends on the game Center.  How can I solve this.

    I have friends 30 + on game Center.  When I play the beautiful days, my friends are on the bar of a friend; However, when I go in the app game Center, I don't see any friends.  It is said that there is a problem connecting to the server of game Cente

  • How to get the button "Search Web" on all spotlight searches?

    I have an iPhone running iOS 9.3.2,and 6s and something that I noticed is that I no longer get the "Web search" button for all of my spotlight search. Here are some photos to show you what I mean. In this first photo, I typed in 'claire underwood hou

  • How do I Zoom out on a web page?

    I tried to put an accent on the letter U by pressing Ctrl + \you and the zoomed page and I don't know how to cancel the do or zoom out.

  • Function key the brightness does not

    Hi dude! HP 15-D009TU model Windows OS 8.1 The brightness key function does not work. But the other function keys do not work correctly Can you please give me the solution to the problem resolver thi. Thank you Sekar!

  • Backup of symbolic links

    Hello I'm looking for some advice... I have a file which includes a number of MK links and symbolic links to other folders on my system, when I backup my system what will save the file linked twice? Once: the folder holding the link twice: the actual