RelativeSource utilizando FindAncestor

RelativeSource utilizando FindAncestor

RelativeSource Es una clase que implementa una extensión de marcado la cual describe la ubicación del origen del enlace con respecto a la posición de destino del enlace. FindAncestor Busca elementos antecesores dentro del árbol visual establecido en RelativeSource. Ejemplos prácticos Si necesitas enlazarlo con otra propiedad en el objeto: {Binding Path=PROPIEDAD_A_UTILIZAR, RelativeSource={RelativeSource Self}} Ejemplo: <TextBlock Width=”{Binding RelativeSource={RelativeSource Self}, Path=Parent.ActualWidth}”/> Si necesitas obtener una propiedad del antecesor: {Binding Path=PROPIEDAD_A_UTILIZAR, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type TIPO_DE_DATO_DEL_ANTECESOR}}} Ejemplo: <TextBlock Margin=”10″ Text=”{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type…

Leer más Leer más

Cargar ListView desde una lista genérica

Cargar ListView desde una lista genérica

Cuando trabajamos con servicios Web, generalmente éste retorna listas con datos relacionados al tipo de dato que necesitamos para poder trabajar con dichos datos. Supongamos que tenemos un servicio Web para una biblioteca donde tenemos la lista de libros y deseamos cargar dichos libros en nuestra vista dentro de la aplicación Xamarin. ¿Cómo lo hacemos? Resulta muy sencillo realizar dicha acción, lo único que necesitamos es heredar de la clase BaseAdapter que permite cargar el objeto ListView de Xamarin con…

Leer más Leer más

Consumo de servicio ASMX con Xamarin

Consumo de servicio ASMX con Xamarin

Uno de los servicios más conocidos y utilizados en el mundo .NET es el servicio ASMX (utilizando el protocolo SOAP), si bien es cierto esta forma de crear servicios ha quedado obsoleta (más bien, reemplazada por otras nuevas) se sigue utilizando en nuestros días. Resulta sencilla su creación y consumo, pero tiene algunos problemas de autenticación propias del protocolo SOAP. En esta entrada mostraré cómo consumir un servicio web SOAP desde una aplicación Xamarin.Android. Para comenzar necesitamos un servicio web…

Leer más Leer más

Asignar campo con valores predeterminados

Asignar campo con valores predeterminados

El título es entendible para cumplir con el objetivo. Ahora bien, no es tan simple desde el punto de vista del proceso para lograr dicho objetivo.  Básicamente, para lograrlo debemos agregar el campo necesario en el método initValue() de la tabla en cuestión. Debe ser el método de tabla para que se replique en todos los objetos que utilizan dicho campo. En este ejemplo, modificaremos el campo InclTax de tipo NoYes a marcarlo siempre (True por defecto). En la tabla…

Leer más Leer más

Guardar cambios dentro de una clase en capa USR

Guardar cambios dentro de una clase en capa USR

En Microsoft Dynamics AX 2009, no es tan sencillo almacenar los cambios realizados dentro de un objeto, sobre todo si hablamos de una clase y estamos trabajando en la capa USR. Es por eso, que debemos realizar dos pasos bien sencillos para poder guardar los cambios que hemos realizado en una clase que esté en otra capa que no sea USR. Para lograr nuestro objetivo debemos realizar estos pasos: Abrir la clase completa, seleccionar el método que deseamos guardar y…

Leer más Leer más

Error 500 en instancia D365 for Operations

Error 500 en instancia D365 for Operations

Luego de ingresar a la máquina virtual de Microsoft Dynamics 365 for Operations (D365O) podemos encontrarnos con un error que nos puede complicar el funcionamiento de nuestra aplicación.A continuación expongo dos posibles soluciones al inconvenientes presentado anteriormente: Conexión a Internet Es necesaria la conexión a internet para realizar la validación del usuario con nuestra cuenta de Office 365, caso contrario el error 500 se presentará. Zona horaria/Fecha y hora Es necesario establecer la zona horaria de la máquina virtual con…

Leer más Leer más

Traspaso de valores de un Activity a otro

Traspaso de valores de un Activity a otro

Para explicarlo de una manera sencilla y rápida un Activity es algo que el usuario puede ver o hacer en su dispositivo móvil. Básicamente, estamos hablando de la interfaz de usuario que se está presentando en ese momento. Para mayor información, puedes ir al sitio oficial de Desarrollo sobre Android. En este pequeño tutorial, mostraré cómo pasar valores de un Activity a otro de manera a poder utilizarlo y realizar ciertas acciones dentro de élLuego de crear el proyecto Android…

Leer más Leer más

Instalación de instancia Dynamics 365 for Operations Local

Instalación de instancia Dynamics 365 for Operations Local

En este caso, explicaré como instalar localmente el Dynamics 365 for Operations de manera a realizar las pruebas de desarrollo y compilación. ¿Cómo se logra esto? El Microsoft Dynamics 365 for Operations no está disponible On-Premise (por ahora, pero lo estará) pero lo que se hace en estos momentos es descargar una máquina virtual de Microsoft Azure que contiene el D365O dentro y eso mismo lo montamos en nuestro servidor local. Para empezar con este artículo veremos 2 maneras de…

Leer más Leer más

[How To] Primera aplicación ASP.NET Core

[How To] Primera aplicación ASP.NET Core

Introducción Básicamente, .NET Core es la evolución del .NET Framework en materia general. Pues ahora lo podemos ejecutar sobre cualquier sistema operativo utilizando únicamente los paquetes necesarios para la ejecución de nuestra aplicación. Esto reduce considerablemente el uso de librerías innecesarias para nuestra aplicación. Para mayor información podés ingresar en este enlace Ahora bien, en esta entrada mostraré cómo crear una aplicación con ASP.NET Core. Lo haremos al estilo “Hola mundo” 😛 En Visual Studio (2015 en este caso) vamos…

Leer más Leer más

[AX 2012 R3 – How To] Agregar elementos a un contenedor

[AX 2012 R3 – How To] Agregar elementos a un contenedor

En Microsoft Dynamics AX un contenedor (container) se refiere a un vector (array). A diferencia de otros lenguajes, como C# por ejemplo, el vector acepta múltiple tipos de datos dentro de él, al mismo tiempo. El siguiente código demuestra cómo agregar los elementos a un contenedor: int numero = 1;str cadena = “hola”;long largo = 15684965;container contenedor;contenedor += numero;contenedor += cadena;contenedor += largo;// Imprimimos “hola”info(strfmt(“Vamos a saludar: %1”, conPeek(contenedor, 2))); De esta manera los elementos fueron agregados al vector (contenedor).