Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

348
Vistas
¿Cómo esperar la respuesta de la operación de lectura de un servicio OData en SAPUI5 antes de continuar con la ejecución del código?

Tengo una función (digamos function1), que a mitad de camino llama a una llamada OData en otra función (digamos function2). Tengo un proceso después de la llamada de OData en la función 1, que depende de la respuesta de la llamada de lectura de OData en la función 2.

Actualmente, durante la ejecución de la función 1, cuando se llama a la función 2, se ejecuta la función 2, pero la respuesta de OData solo se recibe después de ejecutar las líneas restantes de la función 1. ¿Hay alguna forma de esperar la respuesta de la llamada OData en la función 2 antes de que se ejecuten las líneas restantes de la función 1?

Soy súper nuevo en la programación asíncrona. Pero lo que he probado es:

 function1: function() { //some code this.function2(); //some code & this is executed before success/error function of the OData call in function2 } function2: async function() { //oModel declaration const oPromise = await new Promise((resolve, reject) => { oModel.read("/entityset", { success: (oData) => { resolve(oData) }, error: (oError) => {} }); }).then((oData) => { //some code }); }
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Estás en una buena dirección. Debe llamar a function2 con una declaración de await dentro de function1 . Un requisito previo para eso es hacer que function1 también sea async :

 function1: async function() { //some code await this.function2(); //some code & this will execute after success/error function of the OData call in function2 } function2: async function() { //oModel declaration const oPromise = await new Promise((resolve, reject) => { oModel.read("/entityset", { success: (oData) => { resolve(oData) }, error: (oError) => {} }); }); }
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda