Pregunta

Estoy cargando una ventana de Microsoft CRM 4.0 desde una página de Intranet usando window.open (...).

Cuando la ventana se cierra, necesito presionar programáticamente un botón en la página que lo abrió. Puedo hacerlo desde mi propio formulario obteniendo el botón (cuyo nombre se pasa en la cadena de consulta) y ejecutando su método de clic en JavaScript.

Pensé que podría intentar abrir mi propia ventana con un iframe que contenga la página de CRM como lo hago con otros sistemas basados ??en web en nuestra Intranet. En la página puedo hacer clic en el botón en el evento de descarga de la página. Sin embargo, aunque esto funciona para la mayoría de nuestros sistemas, con CRM tengo dos problemas.

  1. Si abro una ventana, simplemente la cierro obtengo un error de CRM.
  2. Si presiono el botón Guardar y cerrar en la ventana de CRM, se guarda pero no se cierra.

¿Hay una solución para esto?

¿Fue útil?

Solución

Podrías hacer algo como usar una llamada a javascript window.opener básica.

La página 1 abre una ventana de CRM. En el OnSave de esa ventana de CRM llamas algo como esto:

if(window.opener.DoSomeFunction != null)
  {
     window.opener.DoSomeFunction;
  }

Donde DoSomeFunction () es una función javascript definida en la página 1. El usuario podría usar un PageMethod o una llamada __doPostBack (). No he tenido la oportunidad de probar esto dentro de MS CRM, pero en teoría este enfoque podría funcionar.

Referencia en javascript window.opener:

http : //www.dotnetspider.com/resources/22146-How-call-parent-page-javascript-function-from-popup-window.aspx

http://www.webreference.com/js/tutorial1/opener.html

Otros consejos

¿No son los errores causados ??por la prevención de secuencias de comandos entre sitios? A menos que la aplicación de la intranet y el CRM residan en el mismo servidor, enviar datos entre ellos es muy difícil.

Lo siento si no entiendo exactamente lo que quieres lograr, pero no puedo visualizar completamente tu descripción. Tal vez un simple boceto / dibujo ayude?

Estoy trabajando con Dynamics CRM en este momento y me complace poder ayudar, ya que hemos tenido todo tipo de problemas con él y tuvimos que inventar varias soluciones alternativas. Feliz de compartir.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top