Funciones

Documentación Funcional

Este módulo contiene funciones para manipular datos de documentos y realizar diversas operaciones relacionadas con los campos del documento.

Funciones

set_field_value()

Establece el valor de un campo en los datos del documento.

po_number = get_field_value(fields_dict, 'purchase_order', None)
if not po_number:
    po_number = ''
    
if po_number:
    set_field_value(fields_dict, "invoice_sub_type", 'Purchase Invoice')
else:
    set_field_value(fields_dict, "invoice_sub_type", 'Cost Invoice')

Parámetros:

Nombre
Tipo
Descripción

document_data*

dictionary

Los datos del documento que contienen información del campo

field_name*

string

El nombre del campo a establecer

value*

any

El valor a establecer para el campo

remove_link (opcional)

bool

Eliminar la clave "coords" del campo.

set_date_value()

Establece el valor de un campo de fecha en los datos del documento.

Parámetros:

Nombre
Tipo
Descripción

document_data*

dictionary

Los datos del documento que contienen información del campo

field_name*

string

El nombre del campo a establecer

value*

string

El valor de fecha a establecer en formato ISO (por ejemplo, "2020-12-31").

add_days (opcional)

int

Agregar días adicionales a la fecha dada El valor predeterminado es 0

skip_weekend (opcional)

bool

Omitir la fecha si cae en fin de semana El valor predeterminado es False

remove link (opcional)

bool

Eliminar la clave "coords" del campo.

exclude_final_days (opcional)

ya sea string o int

Especifica los días a excluir (0-6 o domingo a sábado)

set_amount_value()

Establece el valor de un campo de cantidad en los datos del documento.

Parámetros:

Nombre
Tipo
Descripción

document_data*

dictionary

Los datos del documento que contienen información del campo

field_name*

string

El nombre del campo a establecer

value*

string

El valor a establecer para el campo (pase un número como cadena, por ejemplo, "123456")

remove link (opcional)

bool

Eliminar la clave "coords" del campo.

get_field_value()

Obtiene el valor de un campo de los datos del documento.

Parámetros:

Nombre
Tipo
Descripción

document_data*

dictionary

Los datos del documento que contienen información del campo

field_name*

string

El nombre del campo a establecer

default_value (opcional)

any

Devuelve default_value si no se encuentra valor de campo El valor predeterminado es None

is_clean (opcional)

bool

Convierte el valor a mayúsculas y elimina espacios adicionales El valor predeterminado es False

Devuelve:

  • Valor del campo especificado

create_new_field()

Crea un nuevo campo con el nombre y valor especificados.

Parámetros:

Nombre
Tipo
Descripción

field_name*

str

Los datos del documento que contienen información del campo

value (opcional)

any

El valor inicial para el campo El valor predeterminado es ""

Devuelve:

  • Diccionario del nuevo campo creado

delete_field()

Elimina un campo de los datos del documento.

Parámetros:

Nombre
Tipo
Descripción

document_data*

dictionary

Los datos del documento que contienen información del campo

field_name*

string

El nombre del campo a eliminar

Devuelve:

  • Document_data como json y como dict después de que se eliminó el campo

set_is_required()

Establece el atributo 'is_required' de un campo en los datos del documento.

Parámetros:

Nombre
Tipo
Descripción

document_data*

dictionary

Los datos del documento que contienen información del campo

field_name*

string

El nombre del campo a establecer

value*

bool

El valor a establecer para el campo

set_force_validation()

Establece el atributo 'force_validation' de un campo en los datos del documento.

Parámetros:

Nombre
Tipo
Descripción

document_data*

dictionary

Los datos del documento que contienen información del campo

field_name*

string

El nombre del campo a establecer

value*

bool

El valor a establecer para el campo

reset_validation (opcional)

bool

Establece el atributo "is_validated" al valor especificado El valor predeterminado es False

set_field_as_invalid()

Marca un campo en la pantalla de validación como inválido y lo resalta.

Parámetros:

Nombre
Tipo
Descripción

document_data*

dictionary

Los datos del documento que contienen información del campo

field_name*

string

El nombre del campo a marcar como inválido

message*

string

El mensaje de validación para el campo

code (opcional)

string

Código de error para la validación

El valor predeterminado es None

set_field_attribute()

Establece un atributo personalizado de un campo en los datos del documento.

Parámetros:

Nombre
Tipo
Descripción

document_data*

dictionary

Los datos del documento que contienen información del campo

field_name*

string

El nombre del campo a establecer

attribute_name*

string

El nombre del atributo a establecer

value*

any

El valor a establecer para el atributo

is_supplier_valid()

Verifica si un proveedor es válido según los criterios proporcionados.

Parámetros:

Nombre
Tipo
Descripción

user*

UserAuthentication

El usuario autenticado

filter_data_json*

json

Criterios de filtrado para validar el proveedor

sub_org_id (opcional)

string

ID de suborganización opcional para filtrado El valor predeterminado es None

Devuelve:

  • True, si el usuario es válido

  • False si el usuario no es válido

get_document_content()

Decodifica los datos del documento y los devuelve como una cadena.

Parámetros:

Nombre
Tipo
Descripción

document_data*

dictionary

Los datos del documento que contienen información del campo

Devuelve:

  • Datos del documento como una cadena.

update_document_status_with_doc_id()

Actualiza el estado de un documento con un ID específico al estado dado.

Parámetros:

Nombre
Tipo
Descripción

doc_id*

string

El ID del documento a actualizar

user*

ya sea user ID o UserAuthentication object

El usuario que realiza la actualización

org_id*

string

El ID de la organización a la que pertenece el documento

status*

string

El nuevo estado del documento

message (opcional)

string

Mensaje opcional asociado con la actualización de estado El valor predeterminado es None

doc_classification_class (opcional)

string

Clase de clasificación de documento opcional El valor predeterminado es None

get_lov_values()

Obtiene los valores LOV de un org_id y clave específicos.

Parámetros:

Nombre
Tipo
Descripción

org_id*

string

El ID de la organización a la que pertenece el documento

key*

string

La clave de la Lista de Valores requerida

return_type (opcional)

string

El tipo en el que se deben devolver los datos El valor predeterminado es 'list_of_objects'

sub_org_id (opcional)

string

ID de suborganización opcional para filtrado El valor predeterminado es None

language_code (opcional)

string

Este parámetro establece el idioma en el que se devolverán los valores. Acepta códigos de idioma, como "en" para inglés o "fr" para francés. El valor predeterminado es ""

Devuelve:

  • Valores LOV como una lista de objetos o como una lista.

format_decimal_to_locale()

Formatea un valor decimal al formato en_US.UTF-8.

Parámetros:

Nombre
Tipo
Descripción

value*

float, decimal.Decimal, str

El ID de la organización a la que pertenece el documento

to_locale (opcional)

string

El tipo en el que se deben devolver los datos El valor predeterminado es 'en_US.UTF-8'

max_decimal_places (opcional)

int

ID de suborganización opcional para filtrado El valor predeterminado es 4

min_decimal_places (opcional)

int

El mínimo de lugares decimales que se deben considerar El valor predeterminado es 2

  • value: El valor que debe ser formateado.

  • to_locale (opcional): El formato en el que se transforma el valor.

  • max_decimal_places (opcional): El máximo de lugares decimales que se deben considerar.

  • min_decimal_places (opcional): El mínimo de lugares decimales que se deben considerar.

Devuelve:

  • El valor formateado.

compare_values()

Compara dos valores por igualdad, manejando varios tipos de datos.

Parámetros:

Nombre
Tipo
Descripción

value1*

any

El primer valor a comparar

value2*

any

El segundo valor a comparar

Devuelve:

  • True si los valores son iguales y False si difieren

create_document_task()

Crea una tarea, la asigna a un usuario o grupo, establece la prioridad y opcionalmente envía un correo electrónico.

Parámetros:

Nombre
Tipo
Descripción

user*

ya sea user ID o UserAuthentication object

El usuario que realiza la actualización

document_data*

dictionary

Los datos del documento que contienen información del campo

title*

string

El título de la tarea

description*

string

La descripción de la tarea

priority*

string

La prioridad de la tarea

assigned_to_user_id*

int

El id del usuario al que se debe asignar la tarea

assigned_to_group_id*

int

El id del grupo al que se debe asignar la tarea

send_email*

bool

Determina si se debe enviar un correo electrónico o no

Devuelve:

  • Dict que indica si el proceso fue exitoso o no

set_document_sub_org_id()

Establece el sub_org_id de los datos del documento especificado.

Parámetros:

Nombre
Tipo
Descripción

document_data*

dictionary

Los datos del documento que contienen información del campo

sub_org_id*

string

ID de suborganización opcional para filtrado

get_user_by_id()

Obtiene el usuario con el ID de usuario correspondiente.

Parámetros:

Nombre
Tipo
Descripción

user_id*

string

El ID del usuario

Devuelve:

  • El usuario con el ID de usuario correspondiente

get_group_by_id()

Obtiene el grupo con el ID de grupo correspondiente.

Parámetros:

Nombre
Tipo
Descripción

group_id*

string

El ID del grupo

Devuelve:

  • El grupo con el ID de grupo correspondiente

get_user_by_email()

Obtiene el grupo con el ID de grupo correspondiente.

Parámetros:

Nombre
Tipo
Descripción

email*

any

El correo electrónico del usuario

Devuelve:

  • El usuario con el correo electrónico correspondiente

add_table_column()

Agrega una columna a la tabla especificada.

Parámetros:

Nombre
Tipo
Descripción

table*

string

La tabla donde se debe agregar la columna

col_name*

string

El nombre de la columna

default_value (opcional)

any

El valor inicial para el campo

El valor predeterminado es None

get_column_value()

Obtiene el valor de una columna especificada.

Parámetros:

Nombre
Tipo
Descripción

row*

string

La fila donde se encuentra el valor

col_name*

string

El nombre de la columna

default_value (opcional)

any

El valor inicial para el campo El valor predeterminado es None

is_clean (opcional)

bool

Convierte el valor a mayúsculas y elimina espacios adicionales El valor predeterminado es False

Devuelve

  • Devuelve el valor de la columna especificada si existe; de lo contrario, devuelve None

set_column_value()

Establece el valor de la columna especificada. Si la columna no existe, se creará.

Parámetros:

Nombre
Tipo
Descripción

row*

string

La fila donde se encuentra el valor

col_name*

string

El nombre de la columna

value*

any

El valor que se establecerá en la ubicación especificada

Devuelve:

  • True si el cambio fue exitoso

set_column_date_value()

Establece el valor de fecha de una columna especificada.

Parámetros:

Nombre
Tipo
Descripción

document_data*

dictionary

Los datos del documento que contienen información del campo

row*

string

La fila donde se encuentra el valor

col_name*

string

El nombre de la columna

value*

string

El valor de fecha a establecer en formato ISO (por ejemplo, "2020-12-31")

add_days (opcional)

int

Agregar días adicionales a la fecha dada El valor predeterminado es 2

skip_weekend (opcional)

bool

Omitir la fecha si cae en fin de semana El valor predeterminado es False

exclude_final_days (opcional)

ya sea string o int

Especifica los días a excluir (0-6 o domingo a sábado)

set_column_amount_value()

  • Convierte el valor a cadena y establece el valor para la columna

  • Establece el contenido de la columna al valor

  • Formatea el valor según la configuración regional

Parámetros:

Nombre
Tipo
Descripción

document_data*

dictionary

Los datos del documento que contienen información del campo

row*

string

La fila donde se encuentra el valor

column_name*

string

El nombre de la columna

value*

string

El valor a establecer para el campo (pase un número como cadena, por ejemplo, "123456")

delete_tables()

Esta función elimina las tablas de los datos del documento.

Parámetros:

Nombre
Tipo
Descripción

document_data*

dictionary

Los datos del documento que contienen información del campo

restore_tables()

Esta función restaura las tablas en los datos del documento.

Parámetros:

Nombre
Tipo
Descripción

document_data*

dictionary

Los datos del documento que contienen información del campo

remove_rows_from_table()

Elimina filas de la tabla especificada.

Parámetros:

Nombre
Tipo
Descripción

document_data*

dictionary

Los datos del documento que contienen información del campo

table_name*

string

El nombre de la tabla

count*

int

Cuántas líneas deben ser eliminadas

start*

int

El punto de inicio

remove_all_rows_except_one_from_table()

Elimina todas las filas excepto una de la tabla especificada.

Parámetros:

Nombre
Tipo
Descripción

document_data*

dictionary

Los datos del documento que contienen información del campo

line_number*

int

El número de la línea que no debe ser eliminada

Funciones Integradas de Python

También puedes utilizar algunas de las funciones integradas de Python:

  • abs(): Devuelve el valor absoluto de un número.

  • len(): Devuelve la longitud (número de elementos) de un objeto, como una lista o cadena.

  • isinstance(): Verifica si un objeto es una instancia de una clase o tipo particular.

  • print(): Imprime la salida en la consola.

  • round(): Redondea un número de punto flotante a un número especificado de lugares decimales.

  • str_to_bool(): Convierte una cadena a un valor booleano (True o False).

  • type(): Devuelve el tipo de un objeto.

  • dict(): Crea un objeto diccionario.

  • list(): Crea un objeto lista.

  • str(): Convierte un valor a una cadena.

  • float(): Convierte un valor a un número de punto flotante.

  • int(): Convierte un valor a un entero.

Para más detalles, visita la documentación oficial de Python: Funciones Integradas.

Funciones de la Clase String

También puedes usar estas funciones específicamente para trabajar con cadenas:

  • lower(): Convierte todos los caracteres en una cadena a minúsculas.

  • upper(): Convierte todos los caracteres en una cadena a mayúsculas.

  • split(): Divide una cadena en una lista basada en un delimitador (por ejemplo, espacio o coma).

  • startswith(): Verifica si una cadena comienza con un prefijo especificado.

  • endswith(): Verifica si una cadena termina con un sufijo especificado.

  • strip(): Elimina cualquier espacio en blanco al principio o al final de una cadena.

Funciones del Módulo Matemático de Python

Estas funciones son parte del módulo matemático y son útiles para operaciones matemáticas:

  • floor(): Devuelve el entero más grande menor o igual a un número dado.

  • ceil(): Devuelve el entero más pequeño mayor o igual a un número dado.

Para más información, consulta la documentación oficial de Python: Funciones del Módulo Matemático.

Función de Expresión Regular

  • re.search(): Busca un patrón dentro de una cadena y devuelve la primera coincidencia.

Consulta más detalles aquí: Documentación de re.search.

Funciones Externas

Aquí hay algunas funciones útiles de bibliotecas externas:

  • deepcopy(): Crea una copia de un objeto, incluidos los objetos anidados (del módulo copy). Documentación de Deepcopy.

  • levenshtein_distance(): Calcula el número de ediciones (inserciones, eliminaciones, sustituciones) requeridas para cambiar una cadena en otra. Esta función está disponible en la biblioteca Jellyfish.

Funciones de Fecha y Hora

Puedes usar las siguientes funciones para trabajar con fechas y horas:

  • strptime(): Convierte una cadena en un objeto datetime basado en un formato especificado.

  • strftime(): Formatea un objeto datetime en una cadena basada en un formato especificado.

Para más información, consulta la documentación oficial: Funciones de Fecha y Hora.

Last updated

Was this helpful?