Tex variable: Cell Function with 2 time characteristics?

Hi BW experts,
I have to use cell functions in our query because of cell references in the definition.
There are two time characteristics used in the query:
<b>0calweek</b> for reporting horizon and <b>zcalweek</b> for week of data loading
Also I have text variables in the structure for displaying cal week (10.2007 for example). However, the text variables can't be displayed correctly. I assue the reason is we have 2 time characteristics for cal week.
Does anyone have the same experience? Is there any workaround to resolve this delima?
Thanks for your help in advance!
Regards,
Sally

Hi Olivier,
many thanks for your feedback and help!
1. zcalweek is not referencing 0calweek ;-(
2. in the cell, I have to restrict the KF with two values:
   one is the reporting week (<b>0calweek</b>), for example 17.2007.
   the other one is the week of data loading (<b>zcalweek</b>), for example 10.2007.
the text variable should be displayed with the reporting horizon (0calweek).
If I unerstood correctly from your message, there is no workaround for my problem?!
thanks for your further inputs.
Regards,
Sally
P.S. now the text variable is shown as &var&

Similar Messages

  • Problems with time characteristics after migration to BI 7.0

    Hi,
    Our company migrated from BW 3.1 to BI 7.0 Netweaver 2004s recently.
    After the migration we have problems with various time characteristics like 0CALMONTH, 0CALQUARTER, etc. in the Query Designer.
    In the old BW3.1 Query Designer version we could choose at the properties of an time characteristic to display Key, Key and Text, Text and so on. After the migration to BI 7.0 we now can only choose Key.
    The InfoObject definion of the time Characteristics in RSD1 is the same in the old version and in the new version.
    I am very  grateful vor every hint how i can show again the other display options in the properties, so that our powerusers can build their queries in the way they are use too.
    Thanks
    Ralph Nist

    Hi Pom,
    thanks for your answer, but we are on FEP 10 already.
    So must be something else.
    Cheers
    Ralph
    Message was edited by:
            Ralph Nist

  • BOM Explosion Function with variant characteristics

    Does any one know function module which can explode BOM based on variant characteristics?
    Thanks
    -Alpesh

    Hi,
    Function module CS_BOM_EXPL_MAT_V2 is used to explore the Material BOm details.
    I think it is useful for you.

  • I am attempting to create a function with time and having difficulty with it

    Hello there.
    I'm trying to retrieve on B5 a number from column C corresponding to the given time on A5.
    Does anyone knows how it could be helped?
    Thank you

    Hi Alex,
    For a brief moment your screenshot came thru so here is my response:
    I added a column after "A" because a time or a date in Numbers is always both. when you type 16:45 Numbers also attaches a date. We need to strip the date out. We do that with:
    TIMEVALUE(A1)
    we put this into our new column  B and fill down. When you are done this column can be hidden. I could also have but this into the LOOKUP formula but I think this is clearer for now.
    I made your row 5 into a footer since this is where our formula is. Lets try a screenshot:
    We don't really need your column B (my C). The formula in C5 is:
    LOOKUP(B5,B1:B4,D1:D4)
    This looks for the value of B5 in B1:B4 and returns the corresponding value from D1:D4.
    Anything lower than 16:45 will return an error. You can trap that error in different ways if it bugs you. Anything above 19:45 will return the value in D4. You can decide what you want that to be.
    Hopefully the screenshot came thru; if not let me know what is not clear.
    quinn

  • How to restrict with a Quarter Time characteristics

    Hi
    I want to restrict the Actual Amount with Quarter,Can any body explain me  how to do the below requirement I have Quarer Time Characteristics in Cube ,Financial Year Starts from April 2011 to March2012,
    April 2011 to June 2011= Quater1
    July 2011 to September 2011= Quater2
    October 2011 to December 2011= Quater3
    January 2012 to March 2012= Quater4
    Output Expected Like Below points
    -->Suppose Use Enters  May2011 Output of the report is summation of April 2011+May 2011 in Quater 1
    -->Suppose Use Enters July 2011 Output of the report is July 2011 only in Quater 2
    LIke this the requirement was, Plz provide your Valuable Inputs to me
    Regards
    ramu

    hi ,
    You can try out the following
    1) Create a RKF with a 2 Text Variable . The RKF which we are creating is amount Restricted by CalMonth .
    2) Text Variable 1 will Take in user input and is hidden in query , Text variable 2 will be displayed in query .
    3) With the help of CMOD / Istep = 2 restrict the Calmonth to the high value = user input , low value = first month of the quarter .
    4) Test variable 2 will display the quarter .
    5) The sum up will be the natural behaviour of the report , we do not need to worry about that !!!
    Revert back with questions if any .
    --Neha

  • Currency Translation not working with "Time Reference from Variable"

    We have created several Currency Translations using RSCUR with a fixed "Key Date".  All have been working fine until we got the request to allow a variable date for the exchange rate date.  I have built a variable on 0DATE which I am putting a default date value into using user exit.  This default date is the SAME date as the fixed "Key Date" which we have been using.  Unfortunately when we use the "Time Reference from Variable" option and use this new variable, no currency conversion is taking place, instead it only shows the original currency values.  I am 100% sure that my variable is getting a value and it is the same date we are using for the fixed "Key Date" value so both methods should be using the exact same exchange rates.  The documentation that I can find states:
    ●      Time reference: The time reference for the currency translation can be either fixed or variable.
    If the time reference is fixed, the time at which the exchange rate is determined is independent of the data. You have the following options:
    ○       You can establish that the time reference be determined upon translation.
    ○       You can select the current date.
    ○       You can specify a fixed date as the key date.
    ○       You can specify any variable that exists for InfoObject 0DATE.
    ○       You can establish that the query key date be used. This is determined in the query settings.
    In my case I am only switching from option "You can specify a fixed date as the key date"=(Key Date) to "You can specify any variable that exists for InfoObject 0DATE"=(Time Reference from Variable).
    What am I missing?  Any help is appreciated.

    I neglected to mention that we are calling this currency translation through a WAD button using the SET_CURRENCY_TRANSLATION command.  I did do a test by applying the currency conversion within query key figure.  This seems to work.  So it appears the issue is with how the WAD is processing the variable, not the query.  When I display the variable in a drop down item within the WAD it does have the default value that I have assigned in user exit.

  • Use a single variable value to compare with 2 characteristics

    Hi guys
        I need some advice on how to use a single variable value to compare with 2 characteristics in a Infocube.
    eg : I hv 2 characteristics in Infocube
           Launch date  &  Closing Date
       Now I want to display report where the variable date (inputted by user) is equal to Launch Date and Closing Date.
        with regards

    Bobby,
    if I right understood your situation, you have an input variable ZINPUT (related to a date 'A') and 2 others dates (yours Launch and Closing dates, 'B' and 'C').
    You want to display only the rows where A(user input)=B=C.
    Now you have to create 2 new variables (called ZB and ZC, related to B and C dates) NOT marked as 'ready for input' and set to 'mandatory variable entry'.
    Call Transaction CMOD for the definition of the customer exit (if not already existing!).
    Create a new project, maintain the short text, and assign a development class.
    Goto Enhancements Assignments and assign RSR00001. Press the button components to continue.
    Double-click on EXIT_SAPLRRS0_001. For documentation place the cursor on RSR00001 and use the menu Goto -> Display documentation. 
    Then double-click on ZXRSRU01. If the include doesn’t exist you have to create it; assign a development class and a transport request.
    Enter the coding:
    DATA: L_S_RANGE TYPE RSR_S_RANGESID.
    DATA: LOC_VAR_RANGE LIKE RRRANGEEXIT.
    CASE I_VNAM.
    WHEN 'ZB'.
    (and you have to repeate the same code also for the variable 'ZC' !)
    IF I_STEP = 2.
    READ TABLE I_T_VAR_RANGE INTO LOC_VAR_RANGE
    WITH KEY vnam = 'ZINPUT'.
    if sy-subrc = 0.
    L_S_RANGE-LOW  = LOC_VAR_RANGE-LOW.
    endif.
    L_S_RANGE-sign = 'I'.
    L_S_RANGE-opt = 'EQ'.
    append L_S_RANGE to e_t_range.
    ENDIF.
    ENDCASE.
    Save and activate the coding and the project.
    Now go to your query and use these two new variables to restrict B and C....et voilà !!!
    Let me know if you need more help (and please assign points !!! be generous !!!)
    Bye,
    Roberto

  • I would like to format cells with time only.  when I enter a time of day the current date is still in the cell which is not necessarily so

    I would like to format cells with time only.  when I enter a time of day the current date is still in the cell which is not necessarily so.  THere are  no options for just  date .

    christine275 wrote:
    ... (this is a time worked by date and not always entered on the date worked)--
    "Time" in Numbers is always "Time of Day", and is always part of a Date and Time value. "Amount of Time" is a Duration value, which may be displayed in a similar format to "Time of Day," but is a different type of value.
    If you are entering the number of hours and minutes worked, format the column as Duration, set the units and the format in which you want to have the value appear.
    The Date column will still contain a Date and Time value (Jan 1, 2011 00:00:00 in the cell shown in the example), but the "Time Worked" cells will contain only a Duration value.
    Incidently, the Date in A2 was entered as "jan 1" (without the quotes). Numbers automatically adds the current year and the default time value, then displays the result in the closest format to what you've entered, or in the Date and Time format you have chosen.
    The Duration value in B2 was entered as 3:15 (as displayed). Note that in the entry bar the duration is displayed as 3h 15m, probably to distinguish it from a similarly formatted (Date and) Time value.
    Regards,
    Barry

  • IPhoto6 - after a full reistall of Snow Leopard, iphoto does not display thumbnails. I've restored from time machine, rebuilt the library and run through the rebuild thumbnails function with no success. The files are there, I just get a dotted outline.

    iPhoto6 on iMac running SL - after a full reistall of Snow Leopard, iphoto does not display thumbnails. I've restored the library from time machine, rebuilt the library from iPhoto and run through the rebuild thumbnails function with no success. The files are there, I just get a dotted outline instead of the thumbnails. Does anyone have any other ideas on how to restore the thumbnails?

    Try the following:
    Using iPhoto Library Manager  to Rebuild Your iPhoto Library
    Download iPhoto Library Manager and launch.
    Click on the Add Library button, navigate to your Home/Pictures folder and select your iPhoto Library folder.
    Now that the library is listed in the left hand pane of iPLM, click on your library and go to the File ➙ Rebuild Library menu option
    In the next  window name the new library and select the location you want it to be placed.
    Click on the Create button.
    Note: This creates a new library based on the LIbraryData.xml file in the library and will recover Events, Albums, keywords, titles and comments but not books, calendars or slideshows. The original library will be left untouched for further attempts at fixing the problem or in case the rebuilt library is not satisfactory.
    OT

  • Record with the DIMID 6 contains non-fitting time characteristics

    hello guys,
    I made a test on our transactional infocube in the RSRV and I got the followings messages:
    *Record with the DIMID 6 contains non-fitting time characteristics
    *No master data found for characteristic of test described subsequently
    *No master data found for characteristic of test described subsequently
    this happens in many DIMID's. an the infocube was partitioned.
    I executed the correct error buttom but nothing.
    any idea how to fix it?
    thks
    EV

    Hello Emiliano,
    did you find a solution?
    Regards Murat

  • Will the wifi function of time capsule interfere with my existing router?

    Will the wifi function of time capsule interfere with my existing home network via my Cisco router?

    Welcome to Apple Support Communities
    The routers will only interfere if they are working with the same channel. Time Capsule sets up automatically the channel, so you shouldn't have any problem with both routers

  • Help with Time Evaluation and function exit (HRPTIM03 / SAPLHRLV_001)

    Hello,
    Hopefully someone can help me with an issue I am having with time evaluation and a user exit I wrote.  The code for my exit is at the end of this post.  IN DEV and QAS, everything works.  However, in PRD, multiple rules are considered fulfilled (when looking in PT60), and so employees get two sets of vacation entitlements per month.
    We have three rules for quota type 03 (vacation).  Rules 3,6, and 9.  Only rule 9 should apply to the individuals with the two job numbers in the code.
    Any help would be greatly appreciated.
    Shane
    WHEN ABSENCE QUOTA TYPE IS 3 (VACATION)
    CASE XT559L-QTYPE.
    WHEN '3'.
    CASE - COMPARE SELECTION RULE FOR ABSENCE QUOTA TYPES
      CASE XT559L-ACCNR.
    WHEN RULE SELECTED IS 009
        WHEN '9'.
        IF JOB NUMBER IS 5084 OR 3084, THEN THE RULE APPLIES
          IF XP0001-STELL = '5084' OR XP0001-STELL = '3084'.
            XSUBRC = '0'.
        OTHERWISE, THE RULE DOES NOT APPLY
          ELSE.
            XSUBRC = '1'.
          ENDIF.
    WHEN ANY OTHER RULE IS SELECTED
        WHEN OTHERS.
        IF JOB NUMBER IS 5084 OR 3084, THEN THE RULE DOES NOT APPLY
          IF XP0001-STELL = '5084' OR XP0001-STELL = '3084'.
            XSUBRC = '1'.
        OTHERWISE, THE RULE APPLIES NORMALLY
          ELSE.
            XSUBRC = '0'.
          ENDIF.
      ENDCASE.
    WHEN OTHERS.
    ENDCASE.

    The problem was that even though the code was transported to PRD, and listed as Active - it still was not activated, and had to manually be done though CMOD.

  • [8i] Help with function with parameters (for workday calculation)

    Let me start by saying, I've never written a function before, and I don't have access to create a function in my database (i.e. I can't test this function). I'm trying to come up with a function that I can ask my IT department to add for me. I'm hoping someone can take a look at what I've written and tell me if it should work or not, and if this is the right way to go about solving my problem.
    I am trying to create a function to do a very simple workday calculation (adding/subtracting a particular number of workdays from a calendar date).
    The database I'm working with has a table with the workday calendar in it. Here is a sample table and sample data, representative of what's in my workday calendar table:
    CREATE TABLE caln
    (     clndr_dt     DATE,
         shop_days     NUMBER(5)
         CONSTRAINT caln_pk PRIMARY KEY (clndr_dt)
    INSERT INTO     caln
    VALUES (To_Date('01/01/1980','mm/dd/yyyy'),0);
    INSERT INTO     caln
    VALUES (To_Date('01/02/1980','mm/dd/yyyy'),1);
    INSERT INTO     caln
    VALUES (To_Date('01/03/1980','mm/dd/yyyy'),2);
    INSERT INTO     caln
    VALUES (To_Date('01/04/1980','mm/dd/yyyy'),3);
    INSERT INTO     caln
    VALUES (To_Date('01/05/1980','mm/dd/yyyy'),3);
    INSERT INTO     caln
    VALUES (To_Date('01/06/1980','mm/dd/yyyy'),3);
    INSERT INTO     caln
    VALUES (To_Date('01/07/1980','mm/dd/yyyy'),4);
    INSERT INTO     caln
    VALUES (To_Date('01/08/1980','mm/dd/yyyy'),5);
    INSERT INTO     caln
    VALUES (To_Date('01/09/1980','mm/dd/yyyy'),6);
    INSERT INTO     caln
    VALUES (To_Date('01/10/1980','mm/dd/yyyy'),7);
    INSERT INTO     caln
    VALUES (To_Date('01/11/1980','mm/dd/yyyy'),8);
    INSERT INTO     caln
    VALUES (To_Date('01/12/1980','mm/dd/yyyy'),8);
    INSERT INTO     caln
    VALUES (To_Date('01/13/1980','mm/dd/yyyy'),8);
    INSERT INTO     caln
    VALUES (To_Date('01/14/1980','mm/dd/yyyy'),9);The actual table includes from 1/1/1980 though 12/31/2015.
    I've written (and validated) this parameter query which does my workday (mday) calculation:
    SELECT     cal.clndr_dt
    FROM     CALN cal
         SELECT     cal.shop_days+:mdays     AS new_shop_days
         FROM     CALN cal
         WHERE     cal.clndr_dt     =:start_date
         ) a
    WHERE     cal.shop_days     = a.new_shop_days
    AND     ROWNUM          =1
    ORDER BY     cal.clndr_dt;Based on this query, I've created the following function (and I have no clue if it works or if the syntax is right, etc.):
    CREATE OR REPLACE FUNCTION add_mdays
         (start_date     IN DATE,
         mdays          IN NUMBER(5))
    RETURN     DATE
    IS
         new_date DATE;
    BEGIN
         SELECT     cal.clndr_dt
         FROM     CALN cal
              SELECT     cal.shop_days+mdays     AS new_shop_days
              FROM     CALN cal
              WHERE     cal.clndr_dt     =start_date
              ) a
         WHERE     cal.shop_days     = a.new_shop_days
         AND     ROWNUM          =1
         ORDER BY     cal.clndr_dt;
         RETURN     new_date;
    END add_mdays;  //edit 9:31 AM - noticed I left off this bitI'm also not sure how to have the function handle results that would return a date outside of the date range that is in the table (Before 1/1/1980 or after 12/31/2015--or, another way to look at it is, before the MIN value of caln.clndr_dt or after the MAX value of caln.clndr_dt).
    My goal is to be able to use the function in a situation like the following:
    First, here's a sample table and data:
    CREATE TABLE orders
    (     ord_no          NUMBER(5),
         plan_start_dt     DATE,
         CONSTRAINT orders_pk PRIMARY KEY (ord_no)
    INSERT INTO orders
    VALUES (1,To_Date('01/08/1980','mm/dd/yyyy'));
    INSERT INTO orders
    VALUES (2,To_Date('01/09/1980','mm/dd/yyyy'));
    INSERT INTO orders
    VALUES (3,To_Date('01/10/1980','mm/dd/yyyy'));And here is how I would like to use my function:
    SELECT     orders.ord_no
    ,     orders.plan_start_dt
    ,     add_mdays(orders.plan_start_dt, -3) AS prep_date
    FROM     ordersThus, the function would allow me to return, for every order in my orders table, the date that is 3 workdays (mdays) prior to the plan start date of each order.
    Am I going about this the right way? Do I need to create a function to do this, or is there a way for me to incorporate my query (that does my mday calculation) into the sample query above (eliminating the need to create a function)?
    Thanks much in advance!
    Edited by: user11033437 on Feb 2, 2010 8:55 AM
    Fixed a couple typos in the last insert statements
    Edited by: user11033437 on Feb 2, 2010 9:31 AM (fixed some syntax in the function)

    Hi,
    Ah, mentioning Oracle 8 and not being able to test your own code makes me nostalgic for the good old days, when you typed your cards, and brought them to a window at the computer center, and waited an hour for the job to run, and then saw the printout to find that you had made a typo.
    If you're going to write functions, you really need to test them yourself. Like all code, functions whould be written in baby steps: write a line or two (or sometimes just part of what will later become one line), test, make sure it's running correctly, and repeat.
    Ideally, your employer should create a developement schema in a development database for you to use.
    You can legally download your own instance of Oracle Express Edition for free; just be careful not to use features that aren't available in the database where the code will be deployed.
    You don't need a function to get the results you want:
    SELECT       o.ord_no
    ,       o.plan_start_dt
    ,       MIN (e.clndr_dt)     AS prep_date
    FROM       orders     o
    ,       caln          l
    ,       caln          e
    WHERE       l.clndr_dt     = o.plan_start_dt
    AND       e.shop_days     = l.shop_days - 3
    GROUP BY  o.ord_no
    ,            o.plan_start_dt
    ;This would be more efficient (and a little simpler) if you added a column (let's call it work_day) that identified if each row represented a work_day or not.
    For each value of shop_days, exactly 1 row will be marked as a work day.
    Then the query might be something like:
    SELECT       o.ord_no
    ,       o.plan_start_dt
    ,       e.clndr_dt          AS prep_date
    FROM       orders     o
    ,       caln          l
    ,       caln          e
    WHERE       l.clndr_dt     = o.plan_start_dt
    AND       e.shop_days     = l.shop_days - 3
    AND       e.work_day     = 1
    ;You could use the analytic LAG function to populate the work_day column.
    A function would certainly be handy, though perhaps slower.
    The function you posted has a few mistakes:
    (a) An argument can't be declared as NUMBER (5); just NUMBER.
    (b) When you SELECT in PL/SQL, like you're doing, you have to SELECT INTO some variable to hold the results.
    (c) ROWNUM is arbitrary (which makes it useless in this problem) unless you are drawing from an ordered sub-query. I don't think you can use ORDER BY in sub-queries in Oracle 8. Use the analytic ROW_NUMBER function instead.
    (d) The function must end with an END statement.
    Given your current caln table, here's how I would write the function:
    CREATE OR REPLACE FUNCTION add_mdays
         ( start_date     IN           DATE          DEFAULT     SYSDATE,
           mdays          IN           NUMBER          DEFAULT     1
    RETURN     DATE
    DETERMINISTIC
    IS
         --     add_mdays returns the DATE that is mdays working days
         --     after start_date.  (If mdays < 0, the DATE returned
         --     will be before start_date).
         --     Work days do not include Saturdays, Sundays or holidays
         --     as indicated in the caln table.
         new_date     DATE;          -- to be returned
    BEGIN
         SELECT     MIN (t.clndr_dt)
         INTO     new_date
         FROM     caln     f     -- f stands for "from"
         ,     caln     t     -- t stands for "to"
         WHERE     f.clndr_dt     = TRUNC (start_date)
         AND     t.shop_days     = f.shop_days + TRUNC (mdays)
         RETURN     new_date;
    END     add_mdays;
    SHOW ERRORSProduction code whould be robust (that includes "idiot-proofing").
    Try to foresee what errors people might make in calling your function, and correct for them when possible.
    For example, if it only makes sense for start_date to be midnight, or mdays to be an integer, then use TRUNC in the function in case soembody passes a bad value.
    Allow for default arguments.
    Comment your function. Put all comments within the function (that is, after CREATE and before the final END) so that they will be kept in the data dictionary.
    If, given the same arguments, the function always returns the same value, mark it as DETERMINISTIC, for efficiency. This means the system may remember values passed back rather than call the function every time it is told to.
    I wish I could mark questions as "Correct" or "Helpful"; you'd get 10 points for sure.
    You posted CREATE TABLE and INSERT statements (without even being begged).
    You gave a clear description of the problem, including desired results.
    The code is nicely formatted and easy to read.
    All around, one of the most thoughtful, well-written questions I've seen.
    Well done! Keep up the good work!
    Edited by: Frank Kulash on Feb 2, 2010 1:10 PM
    Added my own version of the function.

  • Limited Support for Time characteristics 0FISCPER/0CALMONTH/0CALQUARTER

    The time characteristics 0FISCPER/0CALMONTH/0CALQUARTER are converted into Character type value in Universe which results in following problems on switching to Webi based reporting from current SAP BI front end tools.
    Problem 1: Sorting does not work correctly using the Key Value or Description as both are being treated as Character values. While setting up the Custom sort sounds like a workaround, the sort list has to be generated for all possible months/quarter/year combination that will be seen in the reports. Not a good solution when business analysts has to build their own reports from Universe.
    Problem 2: Using range selections (E.g. between, greater than, less than etc) in Universe conditions/prompts does not yield correct results due to the same fact that all values are treated as characters. Possible workaround is use this kind of conditions in BI query variables directly. But, this does reduce the flexibility of selections a lot, especially when users are used to simple ways of making range selections in BEx.
    Problem 3: keying in the prompt values for these characteristics/dimensions (both Key and text) is very cumbersome due to format issues. E.g. 1/2010 is no more recognized as valid fiscal period. You have to enter key value as K4/001/2010 or Text value JAN 2010 or January 2010 (based on text selected in query/infoobject). Only way of simplifying user input is to use LOVs and let users always select from LOVs. But, the users lose ability to simply key in values.
    Problem 4: The default LOVs generated for Fiscal period takes values from the master data and hence might show all available fiscal periods including special periods 00,13 thru 16 etc. even though they may not be relevant to the underlying report (e.g. a Sales report). This can confuse users who are not used to seeing these periods before. Possible workaround is to apply filters on LOV using condition and in some cases this should fix the problem.
    While some of the workaround for above problems sound acceptable (3 & 4), the others are not in my opinion(unless there is a better workaround anyone else have). My question is to experts from SAP is, can we expect better support for these objects in future Service packs? If not, then perhaps we need to move away from using this objects in reporting and use 0FISCPER3, 0CALMONTH2, 0CALQUART1 in combination with 0FISCYEAR/0CALYEAR to overcome above issues.
    Though  this can mean  (1) good amount of backend changes to include these Infoobjects in underlying Infoproviders, if there are not present already (2) User training to explain them to use these new time char fields instead of the ones they are already used to.
    I'm fairly new to BO and might have overseen somethings. I have already searched the BO forum related to this topic and did not find any satisfactory answers. Any input on this is greatly appreciated.
    Thanks & Regards,
    Sree

    The issue is that these InfoObjects are not Data Type DATS in BI, they are NUMC and PERI7. Only InfoObjects of type DATS will be converted to Date format in the BO universe.
    Workarounds:
    - instead of using these time characteristics to filter results, consider using transaction dates, such as posting date.
    - create a customer InfoObject ZFISCPER which is a transformation of 0FISCPER to DATS data type.
    - create a custom variable in the WEBI reports which looks at the key for 0CALMONTH and only considers the first 2 characters which should identify the month (e.g. 01 = January, etc.). You can then sort on this and it avoids the year concatenation issue (e.g. JAN 2008, JAN 2009, JAN 2010).

  • External Function with a Pointer to a Callback Function Inside a DLL

    Hi.
    I'm loading a DLL and trying to call a function with the following prototype:
    Func1(HANDLE, hHandle, LPVOID (*pCallback)(UINT, UINT LPVOID), CHAR* sPath)
    Now, I have no problem with the variable types, because CVI 9.0.1 recognizes all of them and I have no problem with LoadLibrary() nor with GetProcAddress().
    But, how do I pass a pointer to a callback that is inside the DLL I'm trying to use.
    I've tried to declare the callback like this:
    LPVOID (CALLBACK Callback)(UINT iDevNo, UINT evEvent, LPVOID pData);
    and call the function Func1 like this:
    (Func1)(hHandle, &Callback, NULL);
    but this gets me:
     Undefined symbol '_Callback@12' referenced in "source.c".
    Hope I can get some help.
    I appreciate your time on this issue.
    Regards.
    Daniel Coelho
    VISToolkit - http://www.vistoolkit.com - Your Real Virtual Instrument Solution
    Controlar - Electronica Industrial e Sistemas, Lda
    Solved!
    Go to Solution.

    Hi Daniel,
    First, you have to make sure that the callback function is exported by the DLL, so that the program that uses the DLL can access the function name identifier. Then, you have to make sure that you call GetProcAddress not just on Func1, but also on the exported callback function. You need to store both function address values in their respective function pointers. You then can pass the callback function pointer as an argument to the Func1 call.
    It's probably cleaner if you define typedefs for all your function pointers, in the calling program:
    typedef LPVOID (__stdcall *CallbackType) (UINT , UINT, LPVOID);
    typedef ??? (__stdcall *Func1Type) (HANDLE, hHandle, CallbackType, CHAR*);
    CallbackType     CallbackPtr;
    Func1Type        Func1Ptr;
    dllHandle = LoadLibrary ("...");
    CallbackPtr = (CallbackType)GetProcAddress (dllHandle, "Callback");
    Func1Ptr = (Func1Type)GetProcAddress (dllHandle, "Func1");
    Func1Ptr (..., hHandle, CallbackPtr, NULL);
    Boa Sorte!
    Luis

Maybe you are looking for

  • Another HP Customer Escalations Team Lack of Communication and Warranty Replacement

    I have been dealing with issues on my under warranty laptop for the past six months and have had nothing but problems with HP services. I love my laptop and everyone has been very very nice to me, but nothing is being done. I was supposed to receive

  • How to get Currrent Date timestamp

    Hi , I've a requirement that i want ot show the current date in my report, Format like 'October 11,2011 2:31:45 AM (EST)'. How to achive this, I've tahken CURRENT_DATE function in one column . i'm tryiting modify the custom date in data format of col

  • Report Painter - adding columns with any texts.....

    Hello ! Whether probably in Report Painter to create additional columns (adhered to columns of data) and to write there manually demanded texts for lines ?

  • Filtering system.log & console.loog

    I have a few problems which I have been trying to find in console.log & system.log I have a couple of applications which write a lot of entries here, which makes it very difficult to read. Is it possible to filter events in console.log - saying for e

  • Firefox will close a minute or so after I go on my gmail

    After I open Firefox and get on my e-mail, Firefox just closes and everything ends. I have submitted a report as it is requested after each time it quits. I also tried to get an upgrade, but it said my computer's operating system wouldn't take it. No