Utilizar el SDK de macOS X 10.11 con Xcode 8.2

Cómo utilizar el SDK de macOS X 10.11 en sistemas con la versión 10.11 del sistema operativo al desarrollar con Xcode 8.2 que no instala SDK anteriores a 10.12

Actualmente Apple ya no permite instalar con Xcode 8.2 el SDK de macOS X 10.11, la versión más antigua que se instala con Xcode es el SDK 10.12 Sierra. Teniendo en cuenta que XCode 8.2 es ultima versión apta para macOS 10.11, al instalar el SDK 10.12 los usuarios que utilizan 10.11 El Capitan se encuentran con el problema de que las aplicaciones que desarrollan tienen como destino 10.12 y no es posible utilizar el SDK 10.11 porque no está instalado y Xcode no lo encuentra.

Continuar leyendo «Utilizar el SDK de macOS X 10.11 con Xcode 8.2»

Access con DataBinding en C#: informe Crystal Reports desde DataSet tipado

Aplicación que carga datos desde una base de datos de Microsoft Access, los muestra en unos controles TextBox que se enlazan a los datos por medio de DataBinding y genera un informe para imprimir usando Crystal Reports a partir de un archivo XML intermedio que reproduce el estado actual de selección de registros en un DataSet tipado, en C#

DataBinding: enlace de datos a controles

En este ejercicio se enlazan directamente controles TextBox del formulario con campos del origen de datos. Para enlazar controles de un formulario con un origen de datos se usa la propiedad DataBinding que sirve para obtener acceso a la ControlBindingsCollection que representa a la colección de enlaces de datos de un control. Al objeto Binding le pasamos la propiedad del control que se debe enlazar, el origen de datos (DataSet) y la tabla o columna. El objeto Binding se añade a la colección de enlaces de datos del control elegido utilizando el método Add().

Continuar leyendo «Access con DataBinding en C#: informe Crystal Reports desde DataSet tipado»

Access con DataBinding en C#: informe PDF desde un archivo HTML

Aplicación que carga datos desde una base de datos de Microsoft Access, los muestra en unos controles TextBox que se enlazan a los datos por medio de DataBinding y genera un informe PDF usando NReco.PDFGenerator a partir de un archivo HTML intermedio obtenido al aplicar transformación XSL a un archivo XML que reproduce el estado actual de selección de registros, en C#

DataBinding: enlace de datos a controles

En este ejercicio se enlazan directamente controles TextBox del formulario con campos del origen de datos. Para enlazar controles de un formulario con un origen de datos se usa la propiedad DataBinding que sirve para obtener acceso a la ControlBindingsCollection que representa a la colección de enlaces de datos de un control. Al objeto Binding le pasamos la propiedad del control que se debe enlazar, el origen de datos (DataSet) y la tabla o columna. El objeto Binding se añade a la colección de enlaces de datos del control elegido utilizando el método Add().

Continuar leyendo «Access con DataBinding en C#: informe PDF desde un archivo HTML»

Deslimitar Specialized Turbo Levo 2018 y 2019

Modificar el límite de velocidad de la bicicleta eléctrica Specialized Turbo Levo modelos año 2018 y 2019 para poder superarlo con el motor activo usando LightBlue Explorer (BLE ) o BLEvo for Smart Turbo Levo

Nota sobre el modelo 2019

El artículo original refería al modelo 2018 de esta bicicleta y al software LightBlue Explorer (BLE) de Punch Through. Este método no funcionaba con el modelo 2019. Para más complicación, las versiones recientes de la app Mission Control habían perdido la opción de modificar el diámetro de la rueda y alterar la velocidad máxima permitida con motor.
Pero utilizando otro software llamado BLEvo for Smart Turbo Levo de Paolo Dozio es posible realizar esta modificación en los modelos 2018 y también en los modelos 2019. BLEvo a diferencia de BLE no es gratuita pero las opciones que ofrece y sus características compensan el pago al comprarla. Su interfaz no es demasiado elegante pero su funcionamiento es óptimo. Dejando aparte otras muchas características y centrándonos en la que nos ocupa, esta app permite modificar o bien el diámetro de la rueda o bien la velocidad de corte del motor. El fin obtenido es el mismo con cualquiera de las 2 configuraciones.

Turbo Levo modelo 2018

Specialized tiene el que para mí es el mejor modelo de bicicleta eléctrica de montaña con suspensión doble, la Turbo Levo FSR. Hay varios modelos con precios y calidades diferentes pero todos llevan batería integrada en el tubo diagonal y motor central integrado en la zona del pedalier. Son bicicletas que se manejan perfectamente por la montaña a pesar de su peso en parado que es muy superior al de las bicicletas sin motor.

Continuar leyendo «Deslimitar Specialized Turbo Levo 2018 y 2019»

Aplicaciones de 64 bits con Acces en VS y Office 2019

Configurar proyectos de bases de datos de Microsoft Access en sistemas con la versión de 64 bits de Office 2019 para que los proyectos también se compilen y ejecuten a 64 bits, en Visual Studio 2019

En muchos sistemas conviven versiones de 32 bits de Visual Studio y de Microsoft Office. En esas circunstancias, para diseñar proyectos que utilizan bases de datos de Access es obligatorio configurar los proyectos para que compilen y ejecuten en el modo de 32 bits ya que el componente (Access Database Engine – Componente redistribuible del motor de base de datos de Microsoft Access) que permite interoperar entre los programas de Office y otras aplicaciones como Visual Studio también es de 32 bits al tener que coincidir con la plataforma de Office.

Continuar leyendo «Aplicaciones de 64 bits con Acces en VS y Office 2019»

Microsoft Access en Java con Ucanaccess de 64 bits (2)

Conectar con una base de datos de Microsoft Access mediante el controlador JDBC UCanAccess, emitir sentencias SQL a la base de datos y mostrar los resultados, ejecutar el programa desde línea de comandos junto con las dependencias, crear archivos de comando para ejecutar el programa; ejercicio de Java para consola

Desde Java 8 la conexión JDBC-ODBC ya no se incluye en Java. Existen algunos controladores JDBC propietarios para conectar con MS Access pero el proyecto UCanAccess está activo actualmente, es open source y proporciona un controlador JDBC generado sobre código de Jackcess.
UCanAccess funciona bien y es sencillo de utilizar. El dato más remarcable es el de las dependencias que requiere que en la versión actual 4.0.1 son: ucanaccess-4.0.1, hsqldb-2.3.1, jackcess-2.1.6, commons-logging-1.1.1 y commons-lang-2.6.

Jackcess a diferencia de UCanAccess es una librería de código Java diseñada para leer y escribir bases de datos de MS Access que no es un controlador JDBC sino una implementación directa de las características disponibles para interactuar con bases de datos de MS Access. Su licencia es del tipo Apache License.

Continuar leyendo «Microsoft Access en Java con Ucanaccess de 64 bits (2)»

Microsoft Access en Java con puente ODBC de 32 bits (1)

Conectar con una base de datos de Microsoft Access por medio del puente JDBC-ODBC configurando el origen de los datos en el panel de control ODBC de 32 bits mostrando los registros obtenidos desde consultas SQL con Java 7

Requisitos previos

El puente JDBC-ODBC ha dejado de estar disponible en Java 8 por lo que para poder utilizarlo hay que tener Java 7 o versión anterior. Aunque se trata de un método obsoleto y poco eficiente de acceder a bases de datos de Microsoft Access desde Java, todavía hay usuarios que lo utilizan y que no desean migrar sus programas a controladores propios del lenguaje, libres (ucanaccess, jackcess…) o comerciales.

En Windows 10 están disponibles en las herramientas administrativas los paneles de control ODBC. Hay 2 versiones, para 32 y para 64 bits. Microsoft Access usa un controlador de 32 bits por lo que se necesita instalar Java 7 para 32 bits y abrir el panel ODBC de 32 bits, sin estos 2 requisitos falla el acceso a las bases de datos (BD) desde Java por este método. El panel ODBC se puede encontrar en las herramientas administrativas o tecleando en el menú Inicio > Buscar «Orígenes de datos…» que muestra las 2 opciones:

  • Orígenes de datos ODBC (32 bits)
  • Orígenes de datos ODBC (64 bits).
Continuar leyendo «Microsoft Access en Java con puente ODBC de 32 bits (1)»

Navegador web con el control WebView en C# (3)

Navegador web usando la versión moderna del control WebBrowser, el control WebView, que renderiza las páginas usando el motor de Microsoft Edge en lugar de hacerlo con el motor de Internet Explorer, añadiendo un segundo formulario que muestra el código HTML de la página que se visita, en C#

En 2 ejercicios anteriores (1 y 2) se desarrolla una aplicación de formularios de Windows con Visual Basic, construida alrededor de un objeto de la clase WebBrowser que permite mostrar en su interior páginas web y también interactuar con las páginas visitadas. Se trata de una clase muy madura que apareció en NET Framework 2, fácil de utilizar y con muchos textos de ayuda en Internet.
Pero tiene el inconveniente de que, por su antigüedad, utiliza el motor de renderizado de Internet Explorer, navegador actualmente obsoleto incluso para la propia Microsoft. En teoría renderiza con la versión de Internet Explorer que tengamos instalada en el sistema pero en la práctica parece mostrar las características de Internet Explorer 7 salvo que se manipule el registro para forzar a nuestra aplicación a utilizar el motor de la versión más moderna que es la 11 a condición de que la tengamos instalada (las instrucciones para hacerlo están en el artículo 2 de los referidos al principio del texto).

Continuar leyendo «Navegador web con el control WebView en C# (3)»

Navegador web con el control WebBrowser en VB (2)

Navegador Web usando la clase WebBrowser, configurando 2 idiomas diferentes (es-ES y en-US) que se guardan en My.Settings, cambiando de idioma sin reiniciar la aplicación, mostrando el código HTML de la página que se visita en un segundo formulario y almacenando el historial en un archivo de texto entre sesiones, en Visual Studio 2017

Continuando el ejercicio anterior (aquí) se completa con las propuestas de localización e internacionalización del programa. Se añade un formulario de opciones que permite configurar el programa, tanto en lo que respecta al arranque en ventana o pantalla completa como a la hora de cambiar el idioma utilizado (restringido a 2: español e inglés). También se añade un formulario que muestra el código HTML de la página web que se está visitando.

Continuar leyendo «Navegador web con el control WebBrowser en VB (2)»

Navegador web con el control WebBrowser en VB (1)

Navegador Web usando la clase WebBrowser, configurando 2 idiomas diferentes (es-ES y en-US) que se guardan en My.Settings, cambiando de idioma sin reiniciar la aplicación, mostrando el código HTML de la página que se visita en un segundo formulario y almacenando el historial en un archivo de texto entre sesiones, en Visual Studio 2017

Resumen del ejercicio:

  • Aprender funcionalidades de Visual Basic .NET mostrando la clase WebBrowser que apareció por primera vez en .NET Framework 2, esta clase permite mostrar páginas web dentro de un formulario; ésto también era posible en .NET Framework 1 recurriendo al control OCX AxInterop.SHDocVw pero la facilidad de uso y la potencia de programación de la nueva clase es muy superior
  • Aprender a utilizar la función que permite configurar propiedades de aplicación (application settings) o de usuario (user settings) guardándolas en un archivo XML; aquí se emplea para guardar el tamaño y la posición que tiene la ventana principal al cerrarse para que, en el siguiente arranque, lo haga con idéntico aspecto
  • Leer (StreamReader) y escribir (StreamWriter) en un archivo de texto en el que se guarda el historial de páginas visitadas en la sesión para mostrarlas en un control ComboBox que hace la función de barra de direcciones.
Continuar leyendo «Navegador web con el control WebBrowser en VB (1)»