Record.RenameFields

La función Record.RenameFields devuelve un registro tras modificar el nombre de uno o varios campos.

Sintaxis

Record.RenameFields(
    record as record,
    renames as list,
    optional missingField as nullable number
) as record

Parámetros
  • record: registro cuyos campos se desea renombrar
  • renames: lista conteniendo el nombre del campo a modificar y el nuevo nombre que se desea que reciba
  • missingField: (opcional) criterio a seguir cuando no exista el campo a renombrar
Información adicional

Si se desea modificar el nombre de dos o más campos, la lista renames deberá ser una lista de listas.

Si el campo a modificar no existe, por defecto se devuelve un error, pero este comportamiento puede controlarse añadiendo el argumento missingField. Éste puede tomar los valores MissingField.ErrorMissingField.UseNull o MissingField.Ignore. Véase ejemplo más adelante.

Ejemplos

Podemos cambiar el nombre del campo "name" por "full_name" en el registro [id=1, name="Tom", city="London"] con la siguiente expresión:

Record.RenameFields(
    [id=1, name="Tom", city="London"],
    {"name", "full_name"}
)

Record

Función M Record.RenameFields

Un clic en el enlace Record nos muestra el registro devuelto:

Función M Record.RenameFields

Podemos modificar los nombres de dos o más campos:

Record.RenameFields(
    [id=1, name="Tom", city="London"],
    {
        {"name", "full_name"},
        {"city", "location"}
    }
)

Record

Función M Record.RenameFields

En este caso, el registro devuelto es el mostrado en la siguiente imagen:

Función M Record.RenameFields

Si uno de los campos a renombrar no existe, por defecto se devuelve un error:

Record.RenameFields(
    [id=1, name="Tom", city="London"],
    {
        {"name", "full_name"},
        {"country", "location"}
    }
)

Error

Función M Record.RenameFields

Este comportamiento puede modificarse incluyendo el argumento missingField. Si éste toma el valor MissingField.Ignore, el campo o los campos inexistentes se ignoran. Si toma el valor MissingField.UseNull, el campo que debería crearse ("location" en nuestro ejemplo) recibe el valor null:

Record.RenameFields(
    [id=1, name="Tom", city="London"],
    {
        {"name", "full_name"},
        {"country", "location"}
    },
    MissingField.UseNull
)

Record

Función M Record.RenameFields

El registro devuelto es el siguiente:

Función M Record.RenameFields
Categoría
Funciones de registro
Enviado por admin el Mar, 04/08/2020 - 09:09