Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hello to whomever is reading!
I have the following problem. I created a QlikView document. I reload it in my desktop version and it all goes well.
All the maps are created, all the tables look good,.. etc
HOWEVER, when I try to reload the file via QMC, the reload fails within 50 seconds. I generated a log file to see what was going on, and apparently, maps id's can not be found!
I don't understand, as the version of the desktop software and the QMC is the same, obviously, and the maps are generated correctly; and the document reloads fine in the desktop. I just don't get it.
The maps are named after variables, that is the only thing that makes them "weird".
My map--->
COMERCIAL_$(contador):
MAPPING LOAD SlpCode,NomComercial;
SQL SELECT SlpCode, upper(SlpName) as NomComercial FROM $(cx_BBDD)OSLP (NOLOCK);
Where i call them AFTER creating them--->
WHERE /*LEN(U_N1)>0 and*/ not exists(ClaveJoin,UPPER(CardCode)&'-'&ApplyMap('COMERCIAL_$(contador)',SlpCode,'*** SIN DESCRIPCION ***'))
There are a lot of possible reasons why the qmc-load and the desktop-load return different results, for example different rights in regard to any section access or accessing any files or databases or within different variables- and/or regional-settings.
In your case it may just be the creation/content of the variable: $(contador). If you look within the log - are all expected mapping tables created with the right names? Helpful might be also to show the variable-content within the progress-window and the log with statements like:
TRACE $(contador);
- Marcus
Hi Marcus,
Yes, on the log file I can see that every map has been created (there should be 4 maps, so COMERCIAL_1, COMERCIAL_2, COEMRCIAL_3 and COMERCIAL_4.
Furthermore, the variable $(contador) is created within the script: let contador = 1
Ok, the mappings are created like expected. What happens when they are called - probably also within a loop and maybe within any iteration $(contador) is <1 or >4 or just empty respectively the variable didn't exists anymore because by let var = null(); the variable will be removed - and if any of it happens the mapping-call will fail.
- Marcus