Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

143
Visualizações
¿Retrieverrecord no asigna el valor al valor de la API web?

Estoy creando una var donde quiero asignarla a una var que obtengo de otra entidad

 function SubmitAction(executionContext) { var lookupItem = formContext.getAttribute("alfa_member").getValue()[0].id; var theTotalMembersTravling = formContext.getAttribute("alfa_numberofdependent").getValue(); var remainFlightCredit; debugger; Xrm.WebApi.online.retrieveRecord("contact",lookupItem, "?$select=new_remainstravelcredit").then( function employessPackage(result) { var new_remainstravelcredit = result["new_remainstravelcredit"]; if(new_remainstravelcredit !== null){ if(new_remainstravelcredit > 0) { remainFlightCredit = new_remainstravelcredit; console.log(remainFlightCredit+" This not inside any if condition"); var newRemain = (parseInt(remainFlightCredit)) - (parseInt(theTotalMembersTravling)); console.log(newRemain+ " This in the remain if condition"); var entity = {}; entity.new_remainstravelcredit = newRemain.toString(); Xrm.WebApi.online.updateRecord("contact",lookupItem, entity).then( function success(result) { var updatedEntityId = result.id; }, function(error) { Xrm.Utility.alertDialog(error.message); } ); } if(new_remainstravelcredit <= 0) { Xrm.Utility.alertDialog("You have exceeds the travel credit"); console.log(remainFlightCredit); } } }, function(error) { Xrm.Utility.alertDialog(error.message); } ); console.log(remainFlightCredit); }

Así que como resultado en esta línea

 remainFlightCredit = new_remainstravelcredit; console.log(remainFlightCredit+" This not inside any if condition");

Que dentro de la llamada webapi puedo obtener el valor pero afuera en la función principal al final cuando escribo

 console.log(remainFlightCredit);

No puedo obtener el valor de remainFlightCredit , ¿tiene alguna sugerencia para resolver este problema?

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Este es el comportamiento esperado, ya que se trata de una llamada de promesa (asincrónica), el código fuera de la llamada a la API principal se ejecutará antes de la función de devolución de llamada de éxito employessPackage .

Por lo tanto, el valor remainFlightCredit se asigna después de la última línea de console.log en su código.

Puede colocar un punto de interrupción para depurar y verlo en acción.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda