Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hello all,
I am looking for an alternative way of displaying the current selections.
The standard box (QV11) lacks of (as I think significant) features:
a) I want to show alternative names (labels) rather than the (often used) teccie-names.
(yes, I could solve that by changing field names in code, but in other situations, the teccie names are quite helpful).
b) I want to hide certain fields, where selections are made for the sake of the "sheet logic" only.
No user is interested in these fields.
I.e. I'd like to have a current selections box with labels and the ability to hide a defined set of fields.
Did somebody develop something similar already?
Any "ready to use" solution available ;-)?
Otherwise any hint on how to accomplish something like that is very much welcome.
A Macro-less solution would be a dream 😉
Thank you,
Thilo
PS: I started experiments with the system field "$Fields" and the GetFieldSelection function ... but without satisfying result, yet.
As far as the hiding certain selections goes in the script you can use:
Set hideprefix='%';
then for the fields you want hidden place this symbol before the name like:
%Selection
As far as changing the names, I am not aware of an easy way. You can create a text object to display current selections of a field with your own label but for a large script this could become quite large.
Im keen to understand this if anyone has a solution.
From a users perspective the field names (driven by how they are stored in the original DB) in the current selection arent staright forward, but if the current selection refers to the relabeling I gave to the list box you make the selection from , it would be far simpler for the user to read.
Hi THe_evaco.
To make a quick and powerful rename of fields, you can do like this.
Say you have a set of fields called DAT02L, TSTRP03, KLK44CN.
Then you can do like this (pseudo code):
MapFieldLabels:
MAPPING LOAD INLINE
CodedFieldName, HumanReadableFieldName
DAT02L, Date of purchase
TSTRP03, Test report number
INV44CS, Invoice customer number
RENAME FIELDS USING MapFieldLabels;
After running the code, all fields in the data model are checked against the mapping table and renamed accordingly.
The same logic can be used for field comments:
COMMENT FIELDS USING MapFieldComments;
Kind regards
BI Consultant
yes that worked many thanks although for ease i loaded in an excel mapping table
FieldMap:
Mapping LOAD Distinct
CodedFieldName, HumanReadableFieldName
FROM
(ooxml, embedded labels, table is Sheet1);
well i thought i got this working but only partially.
if i do
fieldmap
then load table1 to be converted
rename etc
this works fine
if i put the fieldmap and rename around 2 tables to be it doesnt
fieldmap
then load table1 to be converted, then load table 2 to be converted.
rename etc
falls over
if I load the field map in twice , around both tables, only the 1st table is converted. If the 2nd table has values equal to those in the 1st these ie. key fields, are ignored. Only new unique field names are changed.
So do i need a tablemap for every table i want to convert? Or is there an easy way ,so i can just put all the table map values in one table and this will blanket convert every table in my schema?
thanks
Hi again.
Good I'm glad you got further.
As with all mapping tabled, you need to make sure each key (CodedFieldName) only exists once.
ie: where not exists(CodedFieldName).
Else those fields map to null and thus the rename doesn't happen.
ahh ok, that makes sense. So this isnt something you can do on key fields then or primary keys?