Shell 27-12-2022, 15:34
Buenas!.

Como es algo que se necesita para muchas aplicaciones serias, necesito no olvidar estos temas.
Ayer estuve retomando un poco esto, con una aplicación que gestionaba un refugio de animales,
sobre todo la creación de consultas y ejecución dando un resultado en un Grdiview.

Cambié la base de datos y la convertí para llevar la administración de empleados.
Me encontré dos problemas. Fechas para los nacimientos y salarios en euros.

Para las fechas lo solucioné. Usé un valuebox con el tipo date. Me resulta un poco extraño cuando inserto las fechas
en el control. Teniendo que insertar la barra cuando lo hago manualmente. Es que me gusta hacerlo manualmente,
se supone que es más rápido.

Ahora os cuento el tema de la moneda, el euro. Había pensando en otro valuebox con el tipo currency, pero me dio
más problemas que beneficio. Si, se ve bien en el valuebox pero a la hora de convertirlo es algo complicado.
En parte parece una cadena, hay espacios y el símbolo de la moneda.
Ejemplo: " 100,50€ "

Y Sqlite soporta Float, pero no Currency. Usando una caja de texto me quedó así, no he usado alineación en todos los controles.

[Imagen: ZHl5QfT.png]

Vale, puedo eliminar el borde. ¿ Vosotros no usáis un valuebox para esto ?.


Cuando obtenía el valor del registro y quería mostrarlo (que era un tipo float), lo convertía a texto y concatenaba el carácter del euro.

Me he encontrado un problema en la salida de consultas. Que no se muestra como moneda, si con su coma. Uso el evento Data
y no veo nunca que llegué a la columna donde se encuentra el campo salario. Aunque se muestra.

Voy a subiros el ejemplo para ver que me podéis decir. Ojo, que crea una base de datos en el directorio Home.
A ver si vosotros veis mejor el problema.

Todo lo que sea consejos y ayudas para aprender se agradece.

Saludos
Archivos adjuntos
.gz
ControlDeEmpleados-0.0.1.tar.gz (Tamaño: 14.59 KB Descargas: 1)
Shell 26-12-2022, 21:27
Buenas!.

Este tema me ha surgido viendo un vídeo en el cual el creador del vídeo le gustaba el antiguo juego "Donkey Kong" de la mítica consola Atari 2600 (imaginar!).
Tuvo la mala suerte que comprando el cartucho del juego por Ebay  pensó que era la versión para esta máquina y resultó que era para otro consola ( La Coleco ).

Si, los cartuchos eran similares pero no funcionaba. Entonces la idea de el fue  (ya entrando en algo más técnico) reprogramar un chip con una tarjeta que
permitiese usarse en la consola. Copiar el archivo binario del juego mediante un programador de eprom a una eprom y esta se encuentra en ese pequeño
circuito que funciona en la antigua consola. Esos cartuchos, su circuito impreso era sencilla, mayormente un chip que era una memoria eprom.

Y dije, ¿ y de donde saca ese binario ?. Pues de las imágenes que soportan los emuladores.
Entonces fui a una web donde puede encontrarse aquellos juegos. Iba a ponérosla, pero por si acaso incumple leyes, no puedo enlazarlas aquí.

Por otra parte ya tenía esos juegos perdidos por el disco. Con el paso anterior, comenzaba la comparación binaria.

Me encontré el problema más tonto. En aquella época, podías encontrar el juego para U.S.A y otro para Europa. Entonces cuando comparé el que bajé que era
la versión americana no coincidía con la europea, pero como tenía también la rom usa por ahí, fui a comprobarla y efectivamente, eran idénticas!.

Vamos al articulo de comparación de archivos binarios en Linux, que es bien largo y detallado. Tenemos una cantidad de herramientas, a cada cual mejor.

Cómo comparar archivos binarios en Linux

Lo primero que hice fue comparar con sha256sum.
Cita:Primero use la bajada de la web.

sha256sum Dk.bin

538e271407e649e18634d30d136b452ccbf6741fa800e7af8d46d4bdd57aead1  Dk.bin

Luego probé con la rom europea.

b76055b8d14a2a909ed0844cbb74423c4fba1dbe5b9eca6f8f104548eab9e09c  DONKEY_KONG__PAL_____.A26

Y para finalizar con una rom que tenía para USA.

sha256sum 'Donkey Kong (USA).a26

538e271407e649e18634d30d136b452ccbf6741fa800e7af8d46d4bdd57aead1  Donkey Kong (USA).a26

Idéntica.

Luego hice muchos pasos pero ya había averiguado el problema y lo que usaba el autor del vídeo.

Es interesante la mezcla del uso de hexdump y diff

Código:
diff <(hexdump binary_file1.so) <(hexdump binary_file2.so)

Luego lo intenté de otra forma: Probando con dos archivos binarios que eran lo mismo, solo que distinto nombre.

Código:
diff <(sha256sum Dk.bin) <(sha256sum 'Donkey Kong (USA).a26')

Su salida fue esta:
Cita: 
1c1
< 538e271407e649e18634d30d136b452ccbf6741fa800e7af8d46d4bdd57aead1  Dk.bin
---
> 538e271407e649e18634d30d136b452ccbf6741fa800e7af8d46d4bdd57aead1  Donkey Kong (USA).a26

Con el modo anterior no hubo salida. Lo dio por iguales.

Y para acabar os muestro el vídeo a los que os gusta estos temas de los chips.



Hubo un momento que se escuchan sonidos de campanillas. Rolleyes

Saludos
gartumar2 26-12-2022, 19:08
¿Saben de algún gestor de bases de datos orientada a objetos que se pueda usar en Gambas?

Gracias.
Páginas (564):    1 235 236 237 238 239 564   
Bienvenido, Invitado
Tienes que registrarte para poder participar en nuestro foro.
Recordarme?
Miembros: 292
Último miembro: Nicls_key
Temas del foro: 1,742
Mensajes del foro: 9,026
Últimos temas
Odio a gb.Report
Foro: General
Último mensaje por: guizans, Hace 3 horas
Respuestas: 9 - Vistas: 1,495
Ordenar en un TableView
Foro: General
Último mensaje por: guizans, Ayer, 19:35
Respuestas: 0 - Vistas: 30
Reportes de Gambas
Foro: Aplicaciones/Fragmentos de Código
Último mensaje por: Alberto59, 27-10-2025, 16:34
Respuestas: 2 - Vistas: 1,315
Ordenando las carpetas
Foro: Programación en otros lenguajes
Último mensaje por: tercoide, 22-10-2025, 15:57
Respuestas: 0 - Vistas: 101
Powered By MyBB, © 2002-2025 MyBB Group.
Made with by Curves UI.