Archiv para febrero, 2010

Pila llamada en X++

1 Estrella2 Estrella3 Estrella4 Estrella5 Estrella (Sin calificar)
Cargando…
Escrito por René Roca el . Posteado en X++

En alguna ocasión, nos puede interesar saber por X++, la pila de llamada que se tiene, al llegar a un método, para ello podemos utilizar la siguiente sentencia:

 xSession::xppCallStack()

Esta sentencia nos devuelve la pila de llamadas, en un container, el cual podemos tratar o guardar en un campo de nuestra base de datos, para futuros análisis.

Utilidad Rellenar Dynamics AX 2009 (DAX 09)

1 Estrella2 Estrella3 Estrella4 Estrella5 Estrella (Sin calificar)
Cargando…
Escrito por René Roca el . Posteado en Tecnica

Una de las utilidades introducidas en Dynamics Ax 2009, y que más me gustan, es la utilidad de rellanar.

Esta utilidad, nos permite actualizar el valor de un campo, para todo un conjunto de registro.

Primero de todo, tendremos que comprobar que esté activa la utilidad de Rellenar, para ello iremos a Administración -> Sistema -> Configuración y dentro del grupo Administración, miraremos que tengamos activada la opción Utilidad Rellenar

Activar utilidad Rellenar

Ahora imaginemos que queremos actualizar el campo de Divisa de todos los clientes que tienen el Grupo de clientes igual a  80, esta opción la podriamos hacer mediante un Job o sentencia SQL, pero lo haremos mediante la utilidad de rellanar.

Primero de todo, iremos al maestro de clientes, nos situaremos encima del campo divisa del clientes, y haremos botón derecho -> información del registro

Información del registro

En la pantalla que aparece, hacemos click sobre el botón Utilidad Rellenar, nos aparecerá una nueva ventana de criterios de selección, en esta pantalla pondremos el filtro de Grupo de Clientes igual a 80

Al darle al botón de Aceptar, nos mostrará una venta con todos los cliente que cumplen este resultado

Una vez comprobado que son los registros que queremos actualizar, hacemos click sobre el botón Aceptar y nos solicitará a que divisa queremos cambiar los clientes que hemos seleccionado previamente.

Cambiamos la divisa a EUR, y le damos Aceptar.

Con este proceso, hemos cambiado la divisa de todos los clientes que tienen grupo de clientes igual 80, sin necesidad de utilizar Job ni instrucciones SQL.

Error Maximum request length exceeded Reporting Services

1 Estrella2 Estrella3 Estrella4 Estrella5 Estrella (Sin calificar)
Cargando…
Escrito por René Roca el . Posteado en SQL Server

En algunas ocasiones, nos podemos encontrar que al querer generar una subscripción o subir un informe en Reporting Services, el siguiente error:

 “Maximum request length exceeded"

El motivo de este error, es porque estamos intentando realizar una subscripción o subir un informe de más de 4 MB, ya que por defecto la propiedad MaxRequestLength tiene valor a 4 Mb

Para aumentar el valor de esta propiedad, tendremos que modificar el Web.config tanto del Report Server como del Reporta Manger, y cambiar la propiedad maxRequestLength bajo el elemento httpruntime a un valor mayor.

Ruta del Web.config en Report Manger

(%\Program Files\Microsoft SQL Server\MSSQL.X\Reporting Services\ReportManager

Ruta del Web.config en Report Server

%\Program Files\Microsoft SQL Server\MSSQL.X\Reporting Services\ReportServer

Una vez modificado este parámetro, tendremos que reiniciar el servicio de Reporting Services

Nota

Podemos obtener más información sobre este tema, en el siguiente link de Microsoft.

Error al compilar datetimetostr()

1 Estrella2 Estrella3 Estrella4 Estrella5 Estrella (Sin calificar)
Cargando…
Escrito por René Roca el . Posteado en X++

En alguna ocasión nos podemos encontrar que utilizando Dynamics Ax 2009, de repente se nos abra el debug de Axapta y nos muestre el siguiente error:

Error executing code: Wrong argument type for function.

Este problema está causado, por que el cliente está utilizando una versión diferente al servidor por ejemplo:

Cliente tiene Ax 2009 RTM (5.0.593.xxx) y la aplicación está en 2009 SP1 (5.0.1000.52)

Visualizar container sin usar Debug

1 Estrella2 Estrella3 Estrella4 Estrella5 Estrella (Sin calificar)
Cargando…
Escrito por René Roca el . Posteado en X++

En algunas ocasiones, nos puede ser interesante visualizar el valor que tenemos en un container, sin tener que lanzar el debug de Axapta.

Para ello existe una función en la clase Global que no permite realizar esto:

Global::conView([nombre del container])

Al llamar la función por código, se nos abrirá una pantalla, la cual nos mostrará el contenido del container