Thanks for the report, Klaus. My reactions:
* '@' is treated specially on the gretl command-line: it calls for
string substitution. So I'm not surprised that OECD's revising their
identifiers to include '@' in some cases (which seems to me a bit
goofy) has caused trouble. But in gretl git there's now a workaround
for that: we recognize '@' as simply a literal character in the
context of the "data" command when the command "open dbnomics" has
been issued. This change will be in gretl snapshots tomorrow.
* On the two examples you give of scripted calls to
dbnomics_get_multiple() below: I get correct results in the first case
(as you do) but I can't replicate a problem in the second case where
you say "the request does not work". Here's my full script:
<hansl>
clear
set verbose off
include dbnomics.gfn
nulldata 836
setobs 12 1955:01
provider = "OECD"
database = "DSD_IMTS@DF_IMTS"
bundle spec = defbundle("mask", "DNK.W.X.C.M.XDC.Y.N")
bs = dbnomics_get_multiple(provider, database, 1000, 0, spec)
dbnomics_bundles_print(bs)
list X = dbnomics_bundles_to_list( bs, "series_code" )
printf "\nHere are the series in list X:\n"
list X print
</hansl>
Running this I get:
<output>
Contents of bs:
Provider Code Description
1: OECD/DSD_IMTS@DF_IMTS DNK_W_X_C_M_XDC_Y_N Denmark – World –
Exports – Commoditi... 836 observations (pd = 12) [1955-01:2024-08]
Here are the series in list X:
DNKWXCMXDCYN
</output>
Allin Cottrell
On Mon, Nov 4, 2024 at 6:43 AM klaus.hasenbach(a)web.de
<klaus.hasenbach(a)web.de> wrote:
>
> Hello
>
> I appreciate very much that db.nomics and gretl was able to handle the
> new access to the data published by OECD.
> When using the menu in gretl (file>databases>dbnomics) I get all series
> I want.
>
> But when using the command in a gretl script e.g. "data
> OECD/DSD_PRICES(a)DF_PRICES_ALL/AUT.M.N.CPI.PD._T.N.GOY" gretl does not
> like the @.
>
> The other way around It works fine with
>
> provider = "OECD"
> database = "DSD_PRICES@DF_PRICES_ALL"
> bundle spec = defbundle("mask","AUT.M.N.CPI.PD._T.N.GOY")
> bs = dbnomics_get_multiple(provider, database, 1000, 0, spec)
> dbnomics_bundles_print(bs)
> list X = dbnomics_bundles_to_list( bs, "series_code" )
> printf "\nHere are the series in list X:\n"
> list X print
>
> but surprisingly the bundl request does not work with all data, for
> instance not for
>
> provider = "OECD"
> database = "DSD_IMTS@DF_IMTS"
> bundle spec = defbundle("mask","DNK.W.X.C.M.XDC.Y.N")
> bs = dbnomics_get_multiple(provider, database, 1000, 0, spec)
> dbnomics_bundles_print(bs)
> list X = dbnomics_bundles_to_list( bs, "series_code" )
> printf "\nHere are the series in list X:\n"
> list X print
>
> Are there ways to solve it?
>
> Thank you very much
> Klaus