Skip to main content
Solved

Using the GUI_LINE_TABLE parameter type in FMX

  • September 1, 2017
  • 2 replies
  • 11 views

lifalin2016
Supporter
Forum|alt.badge.img+38

Hi,

I'm trying to build a custom (Python) transformer with a user defined "replacement" table.

The GUI_LINE_TABLE parameter type are defined as such (using semi-colon to separate pairs, and colon to separate values):

PARAMETER_NAME: REPL_LIST
PARAMETER_TYPE: GUI_LINE_TABLE COL_DELIM::%ROW_DELIM:;%NO_LABEL%NO_MOVE%"Erstat dette"%"STRING_ENCODED_OR_ATTR:REQUESTOR REQUESTOR"%"Med dette"%"STRING_ENCODED_OR_ATTR:SUPPLIER SUPPLIER"
PARAMETER_PROMPT: Enter values:
PARAMETER_DEFAULT: 

If I set it up with this content:

I get the following output:

%U:<space>%U;%L2:%L1;test:.<comma><semicolon>:<u00e6><u00f8><u00e5><u00c6><u00d8><u00c5><solidus><backslash>

Is there a comprehensive list anywhere describing all the possible "FME encodings" like "<space>" ?

Cheers

Best answer by takashi

Hi @lifalin2016, I don't know where a comprehensive list of FME encodings is, but Python FME Objects API provides a method to decode an FME encoded text string.

See the decodeFromFMEParsableText method of the fmeobjects.FMESession class.

e.g.

import fmeobjects
fmeSession = fmeobjects.FMESession()
fmeLogger = fmeobjects.FMELogFile()
encoded = '%U:<space>%U;%L2:%L1;test:.<comma><semicolon>:<u00e6><u00f8><u00e5><u00c6><u00d8><u00c5><solidus><backslash>'
decoded = fmeSession.decodeFromFMEParsableText(encoded)
fmeLogger.logMessageString(decoded)

logged:

%U: %U;%L2:%L1;test:.,;:æøåÆØÅ/\
This post is closed to further activity.
It may be an old question, an answered question, an implemented idea, or a notification-only post.
Please check post dates before relying on any information in a question or answer.
For follow-up or related questions, please post a new question or idea.
If there is a genuine update to be made, please contact us and request that the post is reopened.

2 replies

takashi
Celebrity
  • 7843 replies
  • Best Answer
  • September 1, 2017

Hi @lifalin2016, I don't know where a comprehensive list of FME encodings is, but Python FME Objects API provides a method to decode an FME encoded text string.

See the decodeFromFMEParsableText method of the fmeobjects.FMESession class.

e.g.

import fmeobjects
fmeSession = fmeobjects.FMESession()
fmeLogger = fmeobjects.FMELogFile()
encoded = '%U:<space>%U;%L2:%L1;test:.<comma><semicolon>:<u00e6><u00f8><u00e5><u00c6><u00d8><u00c5><solidus><backslash>'
decoded = fmeSession.decodeFromFMEParsableText(encoded)
fmeLogger.logMessageString(decoded)

logged:

%U: %U;%L2:%L1;test:.,;:æøåÆØÅ/\

lifalin2016
Supporter
Forum|alt.badge.img+38
  • Author
  • Supporter
  • 592 replies
  • September 4, 2017

Hi @lifalin2016, I don't know where a comprehensive list of FME encodings is, but Python FME Objects API provides a method to decode an FME encoded text string.

See the decodeFromFMEParsableText method of the fmeobjects.FMESession class.

e.g.

import fmeobjects
fmeSession = fmeobjects.FMESession()
fmeLogger = fmeobjects.FMELogFile()
encoded = '%U:<space>%U;%L2:%L1;test:.<comma><semicolon>:<u00e6><u00f8><u00e5><u00c6><u00d8><u00c5><solidus><backslash>'
decoded = fmeSession.decodeFromFMEParsableText(encoded)
fmeLogger.logMessageString(decoded)

logged:

%U: %U;%L2:%L1;test:.,;:æøåÆØÅ/\
Thanks Takashi,

 

Just what I was looked for !

 

Cheers :-)