|
|
|
Re: 'Needs cache for dat a engine' default in Kepler? report very slow. [message #1401983 is a reply to message #1401876] |
Wed, 16 July 2014 10:37 |
Colin Sutton Messages: 121 Registered: July 2009 |
Senior Member |
|
|
Henning von Bargen <forums-noreply@xxxxxxxx> wrote:
> The dataset cache takes the result from the cache if the dataset is
> executed again with the same parameters.
> If I understand correctly, your outer DS writes a global variable. In the
> beforeOpen of the inner DS, you are using this variable to modify the SQL query.
>
> In this situation, you should add a parameter (say, param_XXX) to your DS
> and set its value to the global variable's value in the beforeOpen event
> or using the parameter binding button in the layout. Then you could add a
> line like this at the end of your SQL query:
>
> and ? is not null
>
> (well, this will only work if the value is actually not null, but you get the point).
>
> The query still works as before, but this way the cache knows that the
> query result depend on the global variable.
Yes, you understand correctly. If what you say is true, the cached query
result will always be used even if a global variable has changed. This is
not the behaviour in the Helios release - my case was based on a community
example using a global variable to change a beforeOpen statement - I think
it's a bug.
I will try using a hidden parameter instead of the global variable.
--
Colin Sutton
|
|
|
Powered by
FUDForum. Page generated in 0.02322 seconds