Função PYSTRING( )

Retorna um valor de caracteres calculado por uma função em um script do Python externo. O processamento de dados no Python é externo ao Analytics.

Sintaxe

PYSTRING("ArquivoPy; FunçãoPy"; comprimento <;campo|valor <;...n>>)
Nome Tipo Descrição
ArquivoPy; FunçãoPy

caractere

O nome do script do Python a ser executado, seguido por uma vírgula e o nome da função que retorna o valor:

"meuScript;minhaFunção"

Ao especificar o script do Python, omita a extensão do arquivo. A função chamada pode conter outras funções dentro do script ou de outros scripts. No entanto, todos os scripts executados devem ser colocados em uma pasta na variável de ambiente do sistema PYTHONPATH antes da execução.

Para obter mais informações, consulte Instale o Python versão 3.5.x (32 bits).

Nota

Sua PyFunção deve retornar uma cadeia do Python.

comprimento numérico O comprimento a ser alocado para a cadeia de retorno.
campo|valor <;...n>

opcional

caractere

numérico

datahora

lógico

Essa é uma lista de campos, expressões ou valores literais para usar como argumentos para a função do Python. Os valores são passados para a função chamada na ordem em que são especificados.

Você pode incluir o número de argumentos necessário para atender à definição da função no script do Python.

Nota

Use a função ALLTRIM( ) para remover todos os espaços à esquerda ou à direita de entradas de caracteres: ALLTRIM(cadeia). Para obter mais informações, consulte Função ALLTRIM( ).

Saída

Caractere.

Exemplos

Exemplos básicos

Retorna "meu teste":

PYSTRING('olá,principal'; 20; "meu")

Script do Python externo que aceita uma cadeia e a concatena com " teste":

#! python
# conteúdo de hello.py
def main(str):
    str2 = str + ' test'
    return(str2)

Exemplos avançados

Retorno de uma subcadeia

Esse exemplo remove os dois últimos caracteres do campo Nome do fornecedor e retorna a subcadeia:

PYSTRING( "hello;sub_set"; LENGTH(Nome_Fornecedor); ALLTRIM(Nome_Fornecedor); LENGTH(ALLTRIM(Nome_Fornecedor)); 0; LENGTH(ALLTRIM(Nome_Fornecedor)) - 2)

Script do Python externo que aceita uma cadeia, um comprimento de cadeia e duas posições de caracteres. A função retorna uma subcadeia entre a posição um e a posição dois:

# conteúdo de hello.py
def sub_set(str, length, p1, p2):
if p1 >= 0 and p2 < length and p1 < p2:
    str2 = str[p1:p2]
else:
    str2 = str
return str2