Función PYSTRING( )
Devuelve un valor de carácter calculado por una función en un script externo de Python. El procesamiento de datos de Python se hace fuera de Analytics.
Sintaxis
PYSTRING("ArchivoPy;FunciónPy"; longitud <;campo|valor <;...n>>)
Nombre | Tipo | Descripción |
---|---|---|
ArchivoPy;FunciónPy |
carácter |
El nombre del script Python que se debe ejecutar, seguido de una coma y, a continuación, el nombre de la función que devuelve el valor: "myScript,myFunction" Al especificar el script de Python, omita la extensión del archivo. La función que invoque puede invocar a otras funciones dentro del script o dentro de otros scripts; sin embargo, todos los scripts que se ejecuten se deben colocar dentro de una carpeta de la variable de entorno del sistema PYTHONPATH antes de la ejecución. Si desea obtener más información, consulte Configuración de Python para uso con Analytics. Nota Su PyFunction debe devolver un objeto Python cadena. |
longitud | numérico | La longitud que se debe asignar para la cadena de retorno. |
campo |valor <;...n>
opcional |
carácter numérico fechahora lógico |
Esta lista de campos, expresiones o valores literales que se deben utilizar como argumentos para la función de Python. Los valores se pasan a la función que invoca en el orden en que los especifique. Puede incluir tantos argumentos como sea necesario para satisfacer la definición de la función en el script de Python. Nota Utilice la función ALLTRIM() para quitar los espacios al principio o al final en las entradas de caracteres: ALLTRIM(str). Si desea obtener más información, consulte Función ALLTRIM( ). |
Salida
Carácter.
Ejemplos
Ejemplos básicos
Devuelve "mi prueba":
PYSTRING('hello,main'; 20; "mi")
Script externo de Python que acepta una cadena y concatena " prueba" a la cadena:
#! python # hello.py content def main(str): str2 = str + ' test' return(str2)
Ejemplos avanzados
Devolución de una subcadena
Este ejemplo quita los dos últimos caracteres del campo Nombre proveedor y devuelve la subcadena:
PYSTRING( "hello;sub_set"; LENGTH(Nombre_proveedor); ALLTRIM(Nombre_proveedor); LENGTH(ALLTRIM(Nombre_proveedor)); 0; LENGTH(ALLTRIM(Nombre_proveedor)) - 2)
Script externo de Python que acepta una cadena, una longitud de cadena y dos posiciones de caracteres. La función devuelve una subcadena entre la posición uno y la posición dos:
#hello.py content 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