Ir para conteúdo principal Pular para conteúdo complementar

MapSubstring - função de script

A função de script MapSubstring é usada para mapear partes de qualquer expressão para uma tabela de mapeamento carregada anteriormente. O mapeamento diferencia maiúsculas de minúsculas e não iterativo, e as substrings são mapeadas da esquerda para a direita.

Sintaxe:  

MapSubstring('map_name', expression)

 

Tipo de dados de retorno: caractere

Argumentos:  

Argumentos
Argumento Descrição
map_name

O nome de uma tabela de mapeamento lida anteriormente em um comando mapping load ou mapping select. O nome deve estar entre aspas simples retas.

Nota de advertênciaSe você usar essa função em uma variável de macro expandida e fizer referência a uma tabela de mapeamento que não existe, a chamada de função falhará, e um campo não será criado.
expression É a expressão cujo resultado deve ser mapeado pelas substrings.

Exemplo:  

Neste exemplo, carregamos uma lista de modelos de produtos. Cada modelo tem um conjunto de atributos descritos por um código composto. Usando a tabela de mapeamento com MapSubstring, podemos expandir os códigos de atributos a uma descrição.

map2: mapping LOAD * Inline [ AttCode, Attribute R, Red Y, Yellow B, Blue C, Cotton P, Polyester S, Small M, Medium L, Large ] ; Productmodels: LOAD *, MapSubString('map2', AttCode) as Description Inline [ Model, AttCode Twixie, R C S Boomer, B P L Raven, Y P M Seedling, R C L SeedlingPlus, R C L with hood Younger, B C with patch MultiStripe, R Y B C S/M/L ] ; // We don't need the AttCode anymore Drop Field 'AttCode';

 

A tabela resultante tem a seguinte aparência:

Resulting table
Model Description
Twixie Red Cotton Small
Boomer Blue Polyester Large
Raven Yellow Polyester Medium
Seedling Red Cotton Large
SeedlingPlus Red Cotton Large with hood
Younger Blue Cotton with patch
MultiStripe Red Yellow Blue Cotton Small/Medium/Large

Esta página ajudou?

Se você encontrar algum problema com esta página ou seu conteúdo - um erro de digitação, uma etapa ausente ou um erro técnico - informe-nos como podemos melhorar!