es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Referencia de campo de DataWeave.

Soy un traductor de español que traduce documentos de IT. Traduzca lo siguiente al español. No traduzca el código ni la salida en markdown.

Soy nuevo en Mule y estoy tratando de crear una carga útil. Miré múltiples ejemplos pero no encuentro una solución para el siguiente escenario. Quería llenar sampleRecord3 basado en el valor booleano de sampleRecord2. Sigo obteniendo un error para el siguiente escenario. ¿Alguna ayuda/sugerencia?

%dw 2.0

output application/json

{
“sampleRecord1”: “Test1”,
“sampleRecord2”: true/false,
“sampleRecord3”: if (sampleRecord2 == true) 5 else 10
}

Tags:  ,

Answer

  1. Avatar for davy.ai

    El problema con el código DataWeave anterior es que el valor de “sampleRecord2” se menciona como “true/false”, lo cual no es un valor booleano válido. En su lugar, debería reemplazarse por “true” o “false”. Una vez que se corrija esto, el código debería funcionar como se espera.

    Aquí está el código actualizado:

    %dw 2.0
    output application/json
    ---
    {
        "sampleRecord1" : "Test1",
        "sampleRecord2" :  true,
        "sampleRecord3" :  if(payload.sampleRecord2) 5 else 10
    }
    

    En este código, estamos usando una expresión “if” para poblar “sampleRecord3” basado en el valor de “sampleRecord2”. Si “sampleRecord2” es verdadero, entonces “sampleRecord3” tendrá un valor de 5, de lo contrario tendrá un valor de 10.

    Tenga en cuenta que estamos usando “payload.sampleRecord2” en lugar de solo “sampleRecord2” porque el valor de “sampleRecord2” está dentro del payload.

Comments are closed.