Custom CAPI service - default value of varchar2 parameter

I have a Custom CAPI Service function. That function has a varchar2 parameter (argument) and I wish to set a default value NULL for that parameter.
I set Default=null, and when I generate CAPI package, my function in that package looks like this (notice the quotation marks around null):
function cs_cjn_prod_cijena
( p_nacin_prodaje in varchar2 default 'null'
return number
is ...
And it should look like this:
function cs_cjn_prod_cijena
( p_nacin_prodaje in varchar2 default null
return number
is ...
I tried setting Default Value Type to Literal, Database Function Call, Client Function Call, but it's always the same thing.
If that parameter was number or date it would generate ok.
It seems like the bug in "Generate CAPI Definition" Headstart Utility.
I know that I can make my function's code to treat the string 'null' as a null default value, but I'd like to have a "real" null as a default value.
Does anybody have a solution for this?
Thanks!
Dalibor

Marcel,
Thank you for your answer, but it didn't help. I have already tried using Database Function Call. This time I tried deleting the CAPI package from repository before generating it again, like you suggested, but it didn't help.
I still get: p_nacin_prodaje in varchar2 default 'null'
Which version of Create CAPI Definition utility do you have?
My version is: HSU_CAPI, Revision: 6.5.2.0 ("Help/About This Utility" in Headstart Utilities application)
Thanks again,
Dalibor

Similar Messages

  • I need to pass null as a default value for a parameter in Before Trigger

    Hi All,
    I am using Before trigger function in calculation tab which has some set of parameters.So, I accept some parameters which are passed to this Before Trigger function and need these parameters default value as null.
    To be clear I want to set the Default value for a parameter in workbook to be NULL and pass the same to the calling Function.
    please help me.
    Thanks in advance

    Hi All,
    I am using Before trigger function in calculation tab which has some set of parameters.So, I accept some parameters which are passed to this Before Trigger function and need these parameters default value as null.
    To be clear I want to set the Default value for a parameter in workbook to be NULL and pass the same to the calling Function.
    please help me.
    Thanks in advance

  • Can I assign a default value to a parameter like C++ ?

    My question is whether I can assign a default value to a parameter in Java? Let's say : public void myMethod(int p1, int p2=3){...} Is this syntax acceptable ?
    Regards,
    WenBin

    I don't think so (the easiest way to find out is to try), but if you want something like that, most people do it like so:
    private static final int DEFAULT_P2 = 3;
    public void myMethod(int p1)
        myMethod(p1, DEFAULT_P2);
    public void myMethod(int p1, int p2){...}Hope this helps,
    Radish21

  • Problem using default value of report parameter 1 to validate parameter 2 passed in to report

    I am having a problem with an SSRS report using the default value of report parameter 1 to validate parameter 2 passed in to report (via C#) instead of using the value of parameter 1 that is also passed into the report.  Here are the
    simplified details:
    Using SSDT, SQL Server 2008 R2
    SSRS report has 2 parameters:
    P1 -- text, hidden, default value 'R1', ... front-end C# code can pass 'R2' or 'R1'
    P2 -- text, allows multiple values, list of available values provided by stored procedure (sproc_list) that takes P1 value as a parameter.  Hence, sproc_list either provides a list for P1 = 'R1' or P1 = 'R2'.
    List for P1 = 'R1' is 'A', 'B', 'C'
    List for P1 = 'R2' is 'A', 'B', 'D'
    Values for P1 and P2 can be passed in via C# to the report.
    The C# front-end displays 2 report choices to the user, R1 and R2, where both choices call the same RDL; but choice R1 passes in 'R1' for P1, and the choice R2 passes in 'R2' for P1.
    Upon a users 1st time use of the report no parameters are passed in.  Then when the user exits the report, the parameter value for P2 that was chosen is saved off to a file for R1 or R2, and used the next time the user selects the report.
    Everything always works fine for report R1 since the default value for P1 is 'R1'.
    When R2 is chosen and the user selects 'D' as the value for P2, runs the report, then exits, the P2 value of 'D' for R2 is saved to a file.  When the user returns the next day to run report R2, 'R2' is passed for P1, and 'D' is passed for P2.
    This is when the problem occurs.  The value of 'D' for P2 is validated against a list generated for P2 based on the default value of 'R1' for parameter P1.  Hence, SSRS considers 'D' an invalid value for P2 and blanks out the P2 parameter. 
    The user can then use the drop down list for P2 and choose 'D', but this defeats the purpose of saving the parameter values to be used the next time.
    Why is the stored procedure that provides a list of available values for parameter P2 using the default value of 'R1' for parameter P1 instead of using the value of 'R2' passed into the report for parameter P1?

    Hi Tom,
    Sorry for my delay.
    If I understand correctly, you have two parameter in your report. It is a couple of cascading parameter. If we have choose ‘R1’ of P1, the P2 values is A, B, C. ‘R2’ of P1, corresponding P2 values is A, B, D. What your requirement is to save the end use
    select option of these two parameters.
    In SSRS, if we have configure the parameter with default value. When we run the report, the parameter will fill with the default value to filter data. If we want to save the last status we are render the report, we need to update the default value of P1.
    If we are query the default value from database, if possible, we can
    update the database try to resolve the issue.  Alternatively, we can set the dynamic default value for the parameter.
    Hope this helps.
    Regards,
    Alisa Tang
    Alisa Tang
    TechNet Community Support

  • Can you use a formula field as the default value of a parameter?

    I'm wondering if you can use a formula field as the default value of a parameter. I have an date parameter that is being pulled from a stored procedure. When I run the report, it defaults to the current date and time. I would like it to default to he current date and have the time be 00:00:00

    Hi,
    Unfortunately, you cannot use a formula field as the default value of the parameter.
    And, to get rid of the current time and show 00:00:00, all you need to do is Edit the parameter and set the 'Default Value' to 00:00:00. This will take care of the time portion, however the date portion would be set to the year 1899 and not the current date.
    Hope this helps!
    -Abhilash

  • How to set Default value of a parameter  to display Current Date

    I need to display the Default value for my parameter 'As of Date' which is of datatype Date as Current Date[DD-MON-YYYY].
    How can I do This??

    As Tamir-L pointed out, there is no direct way to do this, but there is a workaround:
    First, create a new parameter, but do not base it on any item. Give the parameter a default value of "Today".
    Then, create a condition like:
       (    :myParam = 'Today'
        AND <date_item> = sysdate)
    OR (    <date_item> = to_date(:myParam, 'DD-MON-YYYY'))Where :myParam is the parameter you created, and <date_item> is the item you are comparing against.
    To make things a bit more bulletproof, you could create a calculation that returns sysdate when the parameter is 'Today', a date when the to_date is successful, and NULL when the to_date fails, and use the calculation in the condition.

  • Custom Capi service definition fails to include in Capi

    I am working on a migrated Oracle designer repository and have quite a lot of custom Capi service definitions which would normally appear in the Capi that they apply to, once I run "Create Capi Definition".
    However they are steadfastly refusing to appear. If I go and create a new custom Capi service definition, the new one will appear, but not the old ones.
    This could be a simple oversight that I am experiencing - can anyone suggest a resolution to this problem.
    I am using hss_capi Rev: 6.5.4.0.2
    Regards
    Phil Gray

    Please note this has been resolved.
    For some reason the table definition has been dropped off the CAPI Custom Service program data properties.
    This is found by opening the PL/SQL definition for the custom capi service in the Repository Object Navigator.
    As for the reason the definition has gone.....?

  • Default value of report parameter

    hi there,
    i want to filter my data with a dynamic report parameter as a combo box. its default value should be "all". If "all" is selected, all of the data should be shown.
    It worked using the filter:
    row["status"] Equal to (params["NewParameter"].value == "all" ? row["status"] : params["NewParameter"].value )
    to make it more dynamic i want to replace "all" by the parameters default value. something like
    row["status"] Equal to (params["NewParameter"].value == params["NewParameter"].defaultValue ? row["status"] : params["NewParameter"].value )
    does anybody know how to get the default value?

    You can use this in script or the expression builder to get the default
    value of a parameter:
    //1stparameter
    reportContext.getDesignHandle().getParameters().get(0).getDe faultValue();
    Jason
    On 8/12/2010 7:52 AM, xoto wrote:
    > hi there,
    >
    > i want to filter my data with a dynamic report parameter. its default
    > value should be "all". If "all" is selected, every data should be shown.
    > It worked using the filter: row["status"] Equal to
    > (params["NewParameter"].value == "all" ? row["status"] :
    > params["NewParameter"].value )
    >
    > to make it more dynamic i want to replace "all" by the parameters
    > default value. something like
    > row["status"] Equal to (params["NewParameter"].value == "all" ?
    > row["status"] : params["NewParameter"].defaultValue )
    >
    > does anybody know how to get the default value?

  • How to make a subscription use the default value for a parameter

    Hi everyone,
    I need to use the CreateSubscription method and have this new subscription use a default value for certain parameter. How can I do this?

    Hi Marianne,
    I have to create the subscription programatically, which is different from what you mention. To further clarify my challenge:
    I have three parameters in a report: date-interval (string), start-date (date), end-date (date). If the user selects for example "last week" as the date-interval, the DEFAULT values for the other two are as follows:
    Code Snippet
    start-date=DateSerial(Year(Today),Month(Today),Day(Today)-Weekday(Today)-6)
    end-date=DateSerial(Year(Today),Month(Today),Day(Today)-Weekday(Today)-1)
    The user can then select intervals like "today", "yestarday", "this month" etc, and the other two parameters are calculated based on that date-interval parameter. Now, If I programatically create a subscription to a report that contains these three parameters and set a value of "last week" for the date-interval parameter, the subscription stores the fixed days (say september 10 to september 16) producing a report of the same week every time the subscription is run and not updating the correct interval to LAST-WEEK!. What should I put as the value for start-date and end-date when I create the subscription to have these two params get the DEFAULT calculated value based on the third param date-interval?
    Hope to have been more clear now.

  • How to change default value of a parameter and LOV attached to a parameter

    Hi All
    I am new to discoverer reports and I need to accomplish the following tasks:
    1. Need to change the SQL query of a discoverer report
    2. Need to change the default value of parameter ( from constant to current month). In the discoverer plus responsibility when I open the report and go to tools>>parameter>>edit
    I can see the constant default value given there. On the right hand side there is a drop down which says 'Value'. I guess if i need to put a SQL as defaul value I need to change the drop down to sql or something and then put the SQL. Problem is the drop down is froezen and I cannot change it.
    Even if I try to create a new parameter/report.
    3. Need to change the LOV associated to the item on which the parameter is based.
    I have the discoverer plus responsibility attached to myself and do not have the discoverer administrator tool (desktop developer tool like forms 6i). My questions are:
    1. Can I change the SQL query by using discoverer plus responsibility or do I need discoverer administrator tool?
    2. Any help on how to get the default value from an SQL query? currently it is a constant value.
    3. Is there any way to figure out is the LOV is madeup of fixed constant values (like independednt value set) or they are fetched from some sql query(table validated value sets)?
    Any pointers/solutions will be highly appriciated!!!
    Thanks in advance.
    Thanks and Regards,
    Shashank

    HI,
    Need to change the SQL query of a discoverer reportThe discoverer generate the SQL according to the item, calculation and conditions designed in the worksheet.
    You cannot edit a specific worksheet SQL.
    In order to change the SQL you need to change the worksheet using the "Edit-> worksheet" from the menu.
    To change the SQL generated inside the folders you need to do that using the administrator.
    Need to change the default value of parameterYou cannot use SQL statements for the parameter default value. it is not supported. if you need default you can use only constant (as it was). otherwise you can set the parameter to be optional and then add to this condition an OR saying that <item>= NVL(:Parameter,<your default>)
    as <your default> you can use calculations so that if for example you want the current date you will create a calculation containing: SYSDATE.
    Is there any way to figure out is the LOV is madeup of fixed constant values (like independednt value set) or they are fetched from some sql query(table validated value sets)?They are based on SQL, even they are const then you will see it as
    select 'a','b'... from dual
    you can find the LOV (called item classes) in the administrator.
    Go to the item your condition is based on and see its properties.
    In the properties you should see the item class it uses.
    Close the properties and go to the item classes tab, search for this item class and figure the folder it came from.
    This is the folder you need to change in order to change the LOV.
    Hope it helped a bit, you sure asked several big questions...
    Tamir

  • Pass the results from a selection formula to the default values for a parameter field

    Post Author: kevans
    CA Forum: General
    Crystal 10 u2013 SQL 2000
    I want to create a parameter field that will display all of our IT Departments so the end user can select the one they want to run the report against, such as IT-Security, IT-Network, etc. about 40 in all.  BUT I donu2019t want this to be a static list where I type in all 40 depts in the default list, I was hoping I could do something more dynamic such a formula field that says u201C if {group.name startswith u2018ITu2019 then {group.name}u201D and then have the parameter field pull from this source.
    Iu2019m sure this has been answered in a previous post but Iu2019m not finding it.  I see stuff on creating a record selection formula such as u2018if {?group} like u2018IT-Secur*u2019 thenu2026u201D  but this leaves too much room for error if people donu2019t type the name correctly.  Maybe Iu2019m not using the record selection formula correctly?  Sorry if I offend anyone but I just upgraded from 8 to 10 and thought for sure this option would be in 10, perhaps built right into the parameter default value page where you can place in select criteria but NOTHING has changed.

    Post Author: sharonmtowler
    CA Forum: General
    if you are creating the parameters in the rpt file, it will only pull values you enter, or directly from the database
    in the record selection you can do something like this, so if they only enter the first 2 characters it should pick up only the IT etc.
    (if eft(,2)={?parameter} then true else ={?parameter})

  • Current month as default value in a parameter porlet

    Hello,
    i need to pass month as a parameter to a discoverer worksheet that i've added to my page in portal.
    i'd been doing this with a single parameter form setting the default value manually while testing page.
    now i'd need to set the default value as the current month to put the page in "production".
    i think it's not possible to get the date from the system (sysdate) in a single parameter form but maybe this can be done with an omniportet.
    thanks for helping,
    dani

    If you are using a datatemplate , you can have a beforereport trigger that will have a package call.
    In the package spec, define a date variable and also define the function beforereporttrigger that retruns boolean.
    In the body, define the beforereporttrigger function with
    begin
    select sysdate into specvariable from dual
    return(true);
    end;
    You can then use the variable in the datatemplate as :variable.
    Hope this helps.
    - Vasu -

  • How to assign the default value to search parameter

    Hi Experts,
    I am using search view , In this I have 5 parameter lets say Transaction Type, Partner No. etc... Now I want to assign a default value to transaction type ( lets say TA) . User should be able to see this default value in the transaction type field before pressing search button.
    How can I do it?
    My second problem is: I have configured this search view using configuration tool but I want to assign only one value to transaction type (i.e. user should not be able to add new row in the search criteria for the transaction type by using + sign)  but in rest 4 fields he can add new row and search based on that.
    Note: I am using only "Is" criteria .
    Any pointer will be helpful for me
    Thanks and regards,
    Sandeep

    Hi Sandeep,
    For the default search values, here is a solution. You have to redefine the method GET_VALUE1 of the context node
    For example if it is the BP search (component BP_HEAD_SEARCH) context node is your enhanced class: ZL_BP_HEAD__MAINSEARCH_CN00
    METHOD get_value1.
      CALL METHOD super->get_value1
        EXPORTING
          attribute_path = attribute_path
          iterator       = iterator
        RECEIVING
          value          = value.
      TRY.
    *     Delegate operation to selection parameter
          DATA: current TYPE REF TO if_bol_bo_property_access.
          IF iterator IS BOUND.
            current = iterator->get_current( ).
          ELSE.
            current = me->parameter_collection->get_current( ).
          ENDIF.
          IF current->get_property_as_string( iv_attr_name = 'ATTR_NAME' ) EQ 'XXX'.
            IF value IS INITIAL.
              value = 'Your default value'.
            ENDIF.
          ENDIF.
        CATCH cx_root.
      ENDTRY.
    ENDMETHOD.
    where XXX is the name of the field.
    Default value will then appear in your search field, but you are still able to modify it if you want...
    Regards,
    Fabian

  • Modify default value for static parameter field programmatically

    Hi,
    I have my Crystal Reports stored in a BO Enterprise system. I have written a java programm that scans the repository, loads the CR reports one by one into a ReportClientDocument, modifies the data source and then stores the updated report back to repository (it overwrites the existing objects).
    I was even able to modify the default values for the parameters, which are used for scheduling of each report.
    But what I am trying to do know is to overwrite the default value used when invoking the report interactively. This should be the value found under the Default Value field, when the Properties window of the parameter is opened in the CR designer.
    This is what I have tried so far:
    Option 1: First I tried to set the default values using com.crystaldecisions.sdk.occa.report.application.ReportClientDocument.getDataDefinition().getParameterFieldController().getField(...).getDefaultValues() . The only thing I have managed to do using this approach is to modify the static LOVs that are associated to static parameters. The actual selected value (shown under Default Value in the Properties window for the given parameter field) remained unchanged, when invoking the report in the InfoView or opening it in the CR designer.
    Option 2: I have used com.crystaldecisions.sdk.plugin.desktop.report.IReport.getReportParameters().get(ik).getDefaultValues() to change the default values. I was able to see my changes in the BO repository (using a query on CI_INFOOBJECTS), still the changes did not really have an impact to what is displayed as default value when invoking the report in the InfoView.
    Any help will be appreciated.
    It would be great to know if someone of you has already implemented successfully such a use-case.
    Regards,
    Stratos
    Edited by: Efstratios Karaivazoglou on Dec 9, 2009 8:52 AM
    Edited by: Efstratios Karaivazoglou on Dec 15, 2009 11:33 PM

    Hi,
    For Crystal Design related queries, close this thread and start the thread in the [SAP Crystal Reports Design forums|http://forums.sdn.sap.com/forum.jspa?forumID=300&start=0]
    - Bhushan

  • Can we set default value to dynamic parameter?

    <font size="3"><font face="Times New Roman">Hi,</font></font><font size="3"><font face="Times New Roman"><span> </span>I am using BO XI and CR XI.</font></font><font size="3"><font face="Times New Roman"><span> </span>I want to set default value for dynamic cascading parameters as &#39;ALL&#39; when i open report in BO Xi INFO view.</font></font><font size="3"><font face="Times New Roman">I think is not possible.</font></font><span style="font-size: 12pt; font-family: &#39;Times New Roman&#39;">can anybody know solution for this. </span>

    Hi,
    I cannot imagine why you would want to do this. The nextvalue from sequence would just the next available number from the sequence, the numbers wouldn't necessarily even be sequencial. So not very useful as a parameter to a report.
    Rod West

Maybe you are looking for