Compartir a través de


Definir columnas calculadas para automatizar los cálculos manuales

Use columnas calculadas para automatizar cálculos que de lo contrario son manuales que se usan en los procesos de negocio.

Por ejemplo, un comercial puede querer conocer los ingresos ponderados de una oportunidad, que se basan en los ingresos estimados de una oportunidad multiplicados por la probabilidad. O bien, automáticamente desea aplicar un descuento, si un pedido es superior a $500. Una columna calculada puede que contenga valores resultado de simples operaciones matemáticas, u operaciones condicionales, por ejemplo, Mayor que o If-Else, y muchos otras. Puede llevar a todo esto utilizando Power Apps, sin necesidad de escribir código.

Funcionalidades

  • Las columnas calculados usan campos de la tabla actual o de tablas principales relacionadas.
  • El soporte de expresión está disponible en las columnas de la tabla actual y las tablas principales relacionadas en las secciones Condición y las secciones Acción. Las funciones integradas son:
    ADDHOURS, ADDDAYS, ADDWEEKS, ADDMONTHS, ADDYEARS, SUBTRACTHOURS, SUBTRACTDAYS, SUBTRACTWEEKS, SUBTRACTMONTHS, SUBTRACTYEARS, DIFFINDAYS, DIFFINHOURS, DIFFINMINUTES, DIFFINMONTHS, DIFFINWEEKS, DIFFINYEARS, CONCAT, TRIMLEFT y TRIMRIGHT. Más información: Sintaxis de funciones
  • Un soporte condicional rico proporciona bifurcación y condiciones múltiples. Las operaciones lógicas incluyen los operadores AND y OR.
  • Las funcionalidades de edición visual incluyen una moderna interfaz de usuario e intellisense en la sección ACCIÓN.
  • Una integración sin problemas de las columnas calculadas con formularios, vistas, gráficos e informes están disponibles en tiempo real.
  • Puede configurar columnas calculadas para usar controles personalizados.

Escenarios

  • Ingresos ponderados: Ingresos estimados multiplicados por probabilidad
  • Valor neto: Activos restados de los pasivos de una cuenta determinada
  • Costo de mano de obra: Tasa base hasta 40 horas, más horas extras adicionales
  • Número de contacto: Número de teléfono para una cuenta o contacto basados en una oportunidad
  • Puntuación de cliente potencial: Una columna que proporciona ideas sobre la calidad de un cliente potencial determinado
  • Seguimiento por: Seguimiento de una actividad por un número especificado de días en función de su prioridad

Importante

Para crear una columna calculada debe tener el privilegio de Escritura en la tabla Perfil de seguridad de campo. Si la columna calculada usa las columnas protegidas en un cálculo, debe considerar proteger la columna calculada también, para evitar que los usuarios accedan a datos para los que no tienen suficientes permisos. El editor de la columna calculada proporciona una advertencia, si usted está creando una columna calculada que usa columnas protegidas en un cálculo, sugiriendo que proteja la columna calculada. Más información: Seguridad de nivel de columna para controlar el acceso.

Tipos de columnas que admiten cálculos

  • Texto
  • Opción
  • Sí/No
  • Número entero
  • Número decimal
  • Moneda
  • Date Time

Creación de una columna calculada

  1. Iniciar sesión en Power Apps

  2. Seleccione Soluciones en el panel de navegación izquierdo. Si el elemento no se encuentra en el panel lateral, seleccione …Más y, a continuación, el elemento que desee.

  3. Abra la solución no administrada que tiene la tabla que desea.

  4. Seleccione el área Columnas y, a continuación, Nueva columna en la barra de comandos.

  5. Proporcione la información de la columna, incluidos Nombre para mostrar, Nombre y Tipo de datos.

  6. Si el tipo de datos es uno de los tipos de columnas que admiten cálculos, puede convertir la columna en una columna calculada seleccionando Calculada de la lista desplegable Comportamiento.

    Convertir una columna en una columna calculada

  7. El enlace Guardar y editar aparece debajo de la lista desplegable. Selecciónelo.

  8. La nueva columna se guarda. En la lista Columnas, abra la columna que guardó en el paso anterior.

  9. En el panel Editar columna, en la lista desplegable Comportamiento, seleccione Editar.

    Enlace para abrir el editor de definiciones de columnas calculadas

  10. En el editor de definición de columna calculada, observe que se ha creado la nueva columna calculada, pero no se ha establecido ninguna fórmula. La definición de columna calculada consta de dos secciones: CONDICIÓN y ACCIÓN.
    Formulario Nuevo cálculo de columna.

    1. En la sección Condición, seleccione Agregar condición para especificar una tabla, columna, operador, tipo y valor. En la lista desplegable para Tabla, puede seleccionar una tabla actual o una tabla relacionada. En el cuadro desplegable Columna tiene una selección de todas las columnas disponibles para la tabla. Según el operador que elija, puede ser necesario proporcionar el tipo y el valor. Puede especificar varias condiciones mediante los operadores AND o OR Cuando haya terminado de especificar la condición, seleccione la marca de verificación Guardar condición. .
    2. Una vez que haya especificado la condición, en la sección Acción, seleccione Agregar acción para proporcionar la fórmula de la columna calculada. Cuando haya terminado de especificar la acción, seleccione la marca de verificación Guardar condición. .

    Nota

    Puede usar datos de filas de búsqueda en la acción. Primero tiene que seleccionar la columna de búsqueda y después especificar un período. Después, puede seleccionar uno de las columnas disponibles en la tabla relacionada. Por ejemplo, en el caso de <LookupFieldName>.<RelatedFieldName>, puede seleccionar: ParentAccountId.AccountNumber.

    Tenga en cuenta que la seguridad de nivel de columna se omitirá en la tabla relacionada, por lo que si hay datos confidenciales en la columna a la que se ha accedido le recomendamos que también proteja la columna calculada.

  11. En el editor de definición de columnas calculadas, seleccione Guardar y cerrar.

Ejemplos

Veamos ejemplos de columnas calculadas con mayor detalle.

Ingresos ponderados de oportunidad

En este ejemplo usamos las columnas de la tabla de oportunidad para calcular los ingresos ponderados basados en la probabilidad de la oportunidad. En el editor de columnas para una tabla de oportunidad, creamos una columna denominada Ingresos ponderados y especificamos el tipo de columna como Calculada y el tipo de datos como Divisa.

En el editor de definición de columnas calculadas, en la sección Condición, especificamos la oportunidad con el Estado = Abierto. En la ACCIÓN, la fórmula calcula los ingresos ponderados a partir de los ingresos estimados de la oportunidad multiplicados por la probabilidad de la oportunidad. Las siguientes capturas de pantalla muestran paso a paso cómo definir la columna calculada Ingresos ponderados.

Fije la condición de las oportunidades:

Establecer ingresos ponderados en Dynamics 365.

Proporcione la fórmula para los ingresos ponderados:

Establecer el valor estimado de los ingresos ponderados en Dynamics 365.

En conjunto:

Ingresos ponderados para ingresos estimados en Dynamics 365.

Fecha de seguimiento de oportunidad

En este ejemplo utilizamos las columnas del cliente potencial que originó una oportunidad para calcular la fecha adecuada para realizar seguimiento de la oportunidad.

En el editor de columnas para una tabla de oportunidad, creamos una columna denominada Fecha de seguimiento y especificamos el tipo de campo como Calculado y el tipo de datos como Fecha y hora.

En el editor de la definición de columnas calculadas, en la sección Condición, especificamos dos condiciones: plazo de tiempo de la compra y valor estimado de cliente potencial.

En ACCIÓN, proporcionamos dos fórmulas:

  • Seguimiento a una semana de la oportunidad inmediata
  • Seguimiento a un mes si no es probable que la oportunidad ocurra inmediatamente.

Las siguientes capturas de pantalla muestran paso a paso cómo definir la columna calculada Fecha de seguimiento.

Fije las dos condiciones del cliente potencial original:

Fecha de seguimiento sobre una oportunidad en Dynamics 365 uno.

Fecha de seguimiento sobre una oportunidad en Dynamics 365 dos.

Proporcione la fórmula para seguimiento a una semana:

Fecha de seguimiento sobre una oportunidad en Dynamics 365 tres.

Proporcione la fórmula para seguimiento a un mes:

Establecer la fecha de seguimiento en Dynamics 365.

En conjunto:

Establezca la fecha seguimiento If- Then & Else en Dynamics 365.

Días desde la creación de una fila

En este ejemplo, usamos la función DIFFINDAYS para calcular la diferencia en días desde la hora en que se creó una fila hasta la fecha actual.

Cree una nueva columna de número entero llamado Diferencia calculada en días.

Proporcione la fórmula para calcular la diferencia en días

Columna calculada, función DIFFINDAYS.

En conjunto:

Diferencia en días desde la creación de filas.

Sintaxis de funciones

La siguiente tabla contiene información acerca de la sintaxis de las funciones suministradas en la sección ACCIÓN de la columna calculada.

Sugerencia

Los nombres de función se especifican en letras mayúsculas.

Sintaxis de la función Descripción Tipo devuelto
ADDDAYS (número entero, fecha y hora) Devuelve una nueva fecha y hora que es igual a la fecha y hora dadas, más el número de días especificado. Fecha y hora
ADDHOURS (número entero, fecha y hora) Devuelve una nueva fecha y hora que es igual a la fecha y hora dadas, más el número de horas especificado. Fecha y hora
ADDMONTHS (número entero, fecha y hora) Devuelve una nueva fecha y hora que es igual a la fecha y hora dadas, más el número de meses especificado. Fecha y hora
ADDWEEKS (número entero, fecha y hora) Devuelve una nueva fecha y hora que es igual a la fecha y hora dadas, más el número de semanas especificado. Fecha y hora
ADDYEARS (número entero, fecha y hora) Devuelve una nueva fecha y hora que es igual a la fecha y hora dadas, más el número de años especificado. Fecha y hora
SUBTRACTDAYS (número entero, fecha y hora) Devuelve una nueva fecha y hora que es igual a la fecha y hora dadas, menos el número de días especificado. Fecha y hora
SUBTRACTHOURS (número entero, fecha y hora) Devuelve una nueva fecha y hora que es igual a la fecha y hora dadas, menos el número de horas especificado. Fecha y hora
SUBTRACTMONTHS (número entero, fecha y hora) Devuelve una nueva fecha y hora que es igual a la fecha y hora dadas, menos el número de meses especificado. Fecha y hora
SUBTRACTWEEKS (número entero, fecha y hora) Devuelve una nueva fecha y hora que es igual a la fecha y hora dadas, menos el número de semanas especificado. Fecha y hora
SUBTRACTYEARS (número entero, fecha y hora) Devuelve una nueva fecha y hora que es igual a la fecha y hora dadas, menos el número de años especificado. Fecha y hora
DIFFINDAYS (fecha y hora, fecha y hora) Devuelve la diferencia en días entre dos columnas Fecha y hora. Si ambas fechas y horas coinciden en el mismo día, la diferencia es cero. Número entero
DIFFINHOURS (fecha y hora, fecha y hora) Devuelve la diferencia en horas entre dos columnas Fecha y hora. Número entero
DIFFINMINUTES (fecha y hora, fecha y hora) Devuelve la diferencia en minutos entre dos columnas Fecha y hora. Número entero
DIFFINMONTHS (fecha y hora, fecha y hora) Devuelve la diferencia en meses entre dos columnas Fecha y hora. Si ambas fechas y horas coinciden en el mismo mes, la diferencia es cero. Número entero
DIFFINWEEKS (fecha y hora, fecha y hora) Devuelve la diferencia en semanas entre dos columnas Fecha y hora. Si ambas fechas y horas coinciden en la mismo semana, la diferencia es cero. Número entero
DIFFINYEARS (fecha y hora, fecha y hora) Devuelve la diferencia en años entre dos columnas Fecha y hora. Si ambas fechas y horas coinciden en el mismo año, la diferencia es cero. Número entero
CONCAT (una línea de texto, una línea de texto, ... línea de texto única) Devuelve una cadena que es el resultado de concatenar dos o más cadenas. Cadena
TRIMLEFT (una línea de texto, número entero) Devuelve una cadena que contiene una copia de una cadena especificada sin los primeros N caracteres. Cadena
TRIMRIGHT (una línea de texto, número entero) Devuelve una cadena que contiene una copia de una cadena especificada sin los últimos N caracteres. String

Nota

Todas las funciones DIFF requieren que la primera columna de Fecha y hora y la segunda columna de Fecha y hora tengan el mismo comportamiento: Local del usuario, Solo fecha o Independiente de zona horaria. Si no coincide el comportamiento de la segunda columna con el comportamiento de la primera columna, el mensaje de error aparece, indicando que la segunda columna no se puede usar en la función actual. Más información: Comportamiento y formato de la columna de fecha y hora

Nota

No puede especificar una fecha, como 01/01/2015, como el valor Fecha en una columna calculada. Los valores de Fecha y Fecha y hora solo se pueden configurar o comparar usando otras columnas Fecha y hora.

En la función CONCAT, puede usar cadenas literales como líneas individuales de texto, columnas de tabla que contienen una sola línea de texto, o una combinación de ambos. Por ejemplo: CONCAT (FirstName, LastName, "es un jefe"). Si una cadena literal contiene comillas, preceda cada marca con el carácter de escape de barra diagonal inversa (\), de este modo: This string contains the \"quotation marks.\". Esto garantiza que las comillas dentro de cadena no se tratan como caracteres especiales que separan las cadenas.

Los siguientes ejemplos muestran cómo usar las funciones TRIMLEFT y TRIMRIGHT. Contienen las cadenas iniciales y las cadenas resultantes, devueltas por las funciones TRIMLEFT y TRIMRIGHT:

TRIMLEFT (“RXX10-3456789”, 3), devuelve la cadena 10-3456789
TRIMRIGHT (“20-3456789RXX”, 3), devuelve la cadena 20-3456789

Consideraciones

Debe conocer determinadas condiciones y limitaciones cuando trabaja con columnas calculadas:

  • Las consultas guardadas, los gráficos y las visualizaciones pueden tener un máximo de 50 columnas calculadas únicas.

  • Los valores de las columnas calculadas no se muestran en modo sin conexión del cliente de Outlook en las vistas de ventana o en los formularios principales de tabla.

  • El número máximo de las columnas calculadas encadenados es 5.

  • Una columna calculada no puede hacer referencia a sí mismo o tener cadenas cíclicas.

  • Si cambia uno de los operadores de condición en una cláusula de condición múltiple, todos los operadores de condición se actualizarán a esa condición. Por ejemplo, en la cláusula IF (x > 50) OR (y ==10) OR (z < 5), si cambia el operador OR al operador AND, todos los operadores OR de la cláusula se convertirán en operadores AND.

  • Puede obtener acceso a columnas primarias mediante la columna de búsqueda en la tabla primaria, como <LookupFieldName>.<FieldName>. Esto no es posible con las columnas de búsqueda de varias tablas como Cliente, que puede ser Cuenta o Contacto. Sin embargo, algunas tablas tienen columnas de búsqueda individuales para una tabla específica, como ParentAccountid.<FieldName> o ParentContactid.<FieldName>.

  • La ordenación está deshabilitada en:

    • Una columna calculada que contiene una columna de una fila primaria.
    • Una columna calculada que contiene una columna lógica (por ejemplo, la columna de dirección).
    • Una columna calculada que contiene otra columna calculada.
    • Una columna calculada que contiene la función Now().
  • Las columnas calculadas solo pueden abarcar dos tablas.

    • Una columna calculada puede contener una columna de otra tabla (que abarca dos tablas: la tabla actual y la fila principal).
    • Una columna calculada no puede contener una columna calculada de otra tabla que también contenga otra columna de una tabla diferente (que abarca tres tablas):
      (Tabla actual) Columna calculada ← (Fila principal) Columna calculada 1 ← (Fila principal) Columna calculada 2.
  • No se pueden desencadenar flujos de trabajo o complementos en las columnas calculadas.

  • No puede cambiar una columna simple existente en una columna calculada. Si la aplicación actual está usando JavaScript o complementos para calcular una columna, no podrá usar la característica de columnas calculadas sin crear una nueva columna.

  • Las reglas de detección de duplicados no se activan en columnas calculadas.

  • Un consolidado no puede hacer referencia a una columna calculada que use otra columna calculada, incluso si todas las columnas del otro campo calculado están en la tabla actual.

  • Cuando una columna calculada de moneda depende de la columna de moneda de una tabla relacionada, el sistema realiza cálculos utilizando los valores de columna de moneda base correspondientes. Esto se debe a que los valores de tipo de cambio y de moneda pueden variar entre diferentes registros de tabla. Por ejemplo, considere una columna calculada: Account Revenue en la tabla Opportunity y considere que Account Revenue tiene una dependencia de la columna de divisa Annual Revenue de moneda en la tabla Account, entonces Account Revenue se calcula como se describe aquí:

    'Account Revenue' = ['Annual Revenue (Base)' * 'Exchange Rate on Opportunity table record'] o 'Account Revenue' = [('Annual Revenue' / 'Exchange Rate on Account table record') * 'Exchange Rate on Opportunity table record']

Consulte también

Crear y editar columnas
Definir columnas consolidadas que agregan valores
Vídeo: Columnas calculadas y consolidadas
Columnas de fórmula, calculadas y consolidadas usando código

Nota

¿Puede indicarnos sus preferencias de idioma de documentación? Realice una breve encuesta. (tenga en cuenta que esta encuesta está en inglés)

La encuesta durará unos siete minutos. No se recopilan datos personales (declaración de privacidad).