Última actualización el 18 de abril de 2022 por Rakesh Gupta

Quiero agradecer a cada lector y seguidor de Automationchampion.com por su apoyo y comentarios. Algunos de ustedes me pidieron que escribiera una publicación de blog para explicar (1) Error MALFORMED_ID; y, (2) cómo resolverlo.

He hecho y seguiré haciendo todo lo posible para incorporar temas sugeridos, de lectores y seguidores de mi blog, en mis próximos artículos.

Gran idea o pregunta duradera:

  • ¿Cómo resuelves el error MALFORMED_ID?

El flujo activado por registros es una forma de automatizar los procesos comerciales. Record-Triggered Flow es una poderosa herramienta para que los administradores y desarrolladores de sistemas implementen procesos comerciales sin escribir código. Sin embargo, un gran poder conlleva una gran responsabilidad : si un usuario comienza a crear un nuevo flujo para cada requisito, o crea flujos sin comprender las limitaciones de Salesforce, entonces, un usuario puede encontrar muchos problemas, ya sea en el futuro o durante la fase de prueba/implementación. .

En mi última publicación Cómo corregir el error FIELD_INTEGRITY_EXCEPTION , analicé cómo resolver el error FIELD_INTEGRITY_EXCEPTION pasando el ID de registro correcto al elemento de datos de flujo.

Este artículo va un paso más allá; explica otro error común : error MALFORMED_ID. El artículo lo ayudará a comprender los siguientes elementos:

  1. Por qué pueden ocurrir errores
  2. Cómo identificar errores leyendo el correo electrónico de error de flujo generado por el sistema
  3. Como resolver el problema.

Tamara McCleary trabaja como administradora de sistemas en Gurukul on Cloud (GoC). UC implementó Account Management hace algunos años en Salesforce. Serdula tiene un requisito de su gerente de que, tan pronto como se cree un contacto , sin asignarlo a una cuenta , entonces asigne automáticamente dichos contactos a una cuenta global " Clientes sin cuenta ".

' Cuenta global ' llamada '¿ Clientes sin cuenta ? ¿Que es eso?

Bueno, en este caso, una 'cuenta global' no es más que un 'lugar de espera' para contactos no asignados, es decir, contactos que, cuando se crearon, no pudieron o no se asignaron a una cuenta.

Por ejemplo, supongamos que un usuario crea un contacto llamado John Smith ; pero, en este punto, el Usuario no está seguro a qué cuenta pertenece John Smith.

Dejar el campo Cuenta en blanco al crear un contacto puede generar problemas de integridad de datos. Por lo tanto, le correspondería a un Usuario recopilar todos los contactos no asignados en un lugar central; en nuestro caso, sería una cuenta global llamada " Clientes sin cuenta ".

Continuemos con nuestro caso de uso de John Smith mencionado anteriormente. Ahora, supongamos que unos meses después, el Usuario se entera de que John Smith trabaja para Acme Corporation y, por lo tanto, pertenece a Acme Corporation Account.

Por lo tanto, en situaciones como esta, para mantener la integridad de los datos, al crear un contacto de John Smith, el Usuario puede asignar a John Smith a la cuenta ' Clientes sin cuentas '. Y luego, tan pronto como el Usuario descubra que John Smith pertenece a Acme Corporation , el Usuario puede hacer clic en la pestaña Contacto, buscar a John Smith y luego, actualizar la Cuenta de John Smith de ' Clientes sin cuenta ' a Acme Corporation .

¿Qué es el error MALFORMED_ID?

La mayoría de las veces, un usuario encuentra un error MALFORMED_ID cuando completa (1) un campo de búsqueda, ID con caracteres no válidos ; o (2) completa una identificación con una longitud inferior a 15 caracteres .

Por ejemplo, al actualizar un contacto a través del flujo posterior a guardar en contacto si, en lugar de AccountId , un usuario pasa una identificación de 14 dígitos de un registro de cuenta o ABC en lugar de cuenta ID , entonces, el usuario encontrará un MALFORMED_ID error.

Al final, Tamara's Flow se verá como la siguiente captura de pantalla:

Una vez que todo se vea bien, realice los siguientes pasos:

  1. Haga clic en Guardar .
  2. Introducir etiqueta de flujo   el nombre de la API se completará automáticamente.
  3. Haga clic en Mostrar avanzado .
  4. Versión de API para ejecutar el flujo : 55
  5. Etiqueta de entrevista : Generar error de ID malformado {!$Flow.CurrentDateTime}
  6. Haga clic en Guardar .

¡Casi ahí! Una vez que todo se vea bien, haga clic en el botón Activar .

Prueba de concepto

  1. Cree un registro de contacto sin una cuenta asociada.

Una vez que haya terminado, haga clic en el botón Guardar . Boooommmm, encuentras el MALFORMED_ID   error, como se muestra en la siguiente captura de pantalla:


👉 Como se mencionó anteriormente, el motivo del error es que estamos actualizando
el campo AccountId del registro de contacto con una identificación de registro no válida; en el escenario actual, con un abc en lugar de una identificación de registro de 15 dígitos.

Si ve errores MALFORMED_ID, significa que el campo espera una ID de Salesforce válida. Una ID de Salesforce válida significa que una ID que cumple con los requisitos del campo ID para resolver el error MALFORMED_ID.

Arreglar MALFORMED_ID   Error

Para corregir el error MALFORMED_ID en un flujo, debe pasar la identificación correcta para un campo de búsqueda. La mejor forma es obtener el ID de la cuenta consultando el registro y el mapa.

Prueba de concepto

  1. Cree un registro de contacto sin una cuenta asociada.
  2. Una vez que haya terminado, haga clic en el botón Guardar .
  3. Tenga en cuenta que, Contacto   se crea y asigna a la cuenta Global ( Clientes sin cuenta )   registro por el Flujo.

Evaluación formativa:

¡Quiero saber de ti!

¿Qué es una cosa que aprendiste de esta publicación? ¿Cómo imagina aplicar este nuevo conocimiento en el mundo real? Siéntase libre de compartir en los comentarios a continuación.

Esta es una traducción realizada por EGA Futura, y este es el link a la publicación original: https://automationchampion.com/2022/04/18/fix-malformed_id-error/

Entradas recomendadas