Que me perdonen solo por esta vez, porque realmente el tema está más que
off-topic... prometo no hablar ya más de esto.

Acá hemos tenido que buscar una forma de compatibilizar nuestro sistema
propio (PHP+PostgreSQL, soft libre al 150%) con Versat, porque cuando se
tomó la decisión de mandar a implantarlo de sí o sí en las empresas, no
se miró demasiado si se adecuaba o no a las condiciones de trabajo.  Por
ejemplo, hay que pararse de cabeza, me dicen los de Contabilidad, cuando
a los trabajadores que cobran estímulo en divisas hay que aplicarles
distintos porcentajes, o cuando un insumo se compró hace 6 meses, se
engavetó porque no se podía usar, y se decide usar ahora (¿qué precio
pongo? ¿El de cuando se compró, o el de ahora? a veces hay que
flexibilizar). Son dos casos que recuerdo que me comentaron, y no quise
seguir oyendo, porque en realidad no sé nada de Contabilidad. 

La contabilidad en una fábrica de tabacos es complicadita, y han sido
reuniones largas con los especialistas (?). Por supuesto, no nos dijeron
en qué tabla estaba qué dato... sin contar con que una vez después de
dar un palo espectacular (Window$) lo dejaron instalado de modo que no
publicaba **nada** por TCP/IP, y no había manera de sacarle
información...

Por otra parte, existe un mecanismo diabólico que la pone muy difícil
para validar un software propio.

Sin contar con que va contra la tan cacareada y nunca ejecutada
migración a software libre (¿alguien conoce a ese animal?), pues solo
corre en XP. 

La principal queja que yo al menos tendría es que compatibilizar los
datos con algo que es poco menos que una caja negra resulta
horripitufante. Esto es algo de lo que he puesto sobre el tema en una
wiki interna. Tal vez a alguien le sirva, si se ve en una situación
semejante. Tal vez se me perdone mejor el off-topic:

********
Tainux está desarrollado enteramente en PHP+PostgreSQL, con algo de
JavaScript para algunas funcionalidades. En tanto se disponga de un
servidor de páginas web que esté acoplado con PHP y haya sido instalado
PostgreSQL, tanto da que el servidor esté montado sobre Linux/UNIX o
Window$. Se accede a Tainux mediante cualquier navegador, y no se
necesita instalar nada en las máquinas de los usuarios. Versat es un
programa que requiere instalar un servidor, y en las máquinas de los
usuarios instalar la versión de cliente. Versat es un programa
propietario, y los desarrolladores no tienen la más mínima intención de
dar información que nos pueda ayudar. De hecho, nos han declarado varias
veces que no pueden decirnos, por ejemplo, qué tablas están involucradas
en la presentación de qué información. Así que lo que se ha logrado
hacer para la integración de los datos de ambos sistemas ha sido
mediante ingeniería inversa, con mucha paciencia.

Otro problema que se nos presenta con Versat es que usa el Code Page
850. Al presentar información de texto obtenida desde Versat en una
página web que use UTF-8 o Latin-1 (como las de Tainux), se mostrará
incorrectamente si se trata de caracteres de ASCII > 127. Algunos
navegadores (Opera, por ejemplo) no tienen previsto usar Code Page 850.
Firefox es el que más fácilmente muestra el código de página 850, pero
hay que forzarlo; no lo usa automáticamente aunque se le declare en el
encabezado de la página HTML.

Por otra parte, Versat utiliza una base de datos MS SQL 2000 y solo
funciona (hasta ahora) sobre Window$ XP.

Hay algunas formas de acceder de forma remota desde Linux a una base de
datos MS SQL:

    Instalar sqsh. Este paquete es un utilitario de línea de comandos
que usa las bibliotecas freetds para acceder a servidores Sybase o
Microsoft SQL locales o remotos. Es una buena herramienta para
"debuguear" e identificar problemas con otras aplicaciones MS SQL, y
puede ser usado como herramienta de productividad por derecho propio: a
diferencia de la mayoría de los CLI MS SQL, el shell que provee permite
hacer un "piping" de la salida de las consultas directamente hacia otros
comandos UNIX para procesamiento posterior. Su inconveniente es que no
es fácil de acoplar con una aplicación manipulada por PHP como Tainux. 

    Utilizar PHP+freetds. De esta forma se accede a la base MS SQL vía
páginas web, usando el protocolo TDS (Tabular DataStream Protocol). Esta
fue la solución finalmente aceptada. 

Aún así, quedaba el problema de cómo estudiar la estructura de una base
de datos que resultaba una verdadera caja negra, con el inconveniente de
que hacía falta constantemente modificar la página PHP que se utilizaba
para la investigación. En ese momento tuvimos conocimiento de la
existencia de PHPMSAdmin (programa en la misma línea que PHPMyAdmin,
PHPPgAdmin, etc.) y tras instalar free-tds en la máquina Linux que
accedería a la base MS SQL (ubicada comprensiblemente en una máquina
Window$ remota) procedimos a configurar. En /etc/freetds/freetds.conf
nos aseguramos de tener lo siguiente:
#A tipical Microsoft server
[egServer70]
host=a.b.c.d
port=1433
tds version= 7.0

La máquina Window$ remota está en a.b.c.d 

Ahora la siguiente tarea es abrir la aplicación usando un usuario de esa
máquina, y declarando como nombre de la máquina Window$ y base:
1a.b.c.d:/NOMBREDELABASEMSSQL

 (nótese la forma en que se especifican la máquina y la base de datos).

Esto asegura que se tenga acceso a la base para consultas con comodidad,
teniendo a la izquierda en pantalla las distintas tablas que conforman
la base y pudiéndose mediante clic derecho escoger cómo interactuar con
las tablas.

Atención: hemos encontrado que si solicitamos datos por fecha PHPMSAdmin
se cierra. Sugerimos separar día, mes y año dentro del query si se va a
consultar algo según fecha usando PHPMSAdmin.

Bueno, esto es una idea de los rollos que tenemos.

Fumero



El vie, 28-06-2013 a las 12:20 -0500, Alex Vergara Gil escribió:
> > On 27/06/13 16:29, Alberto José García Fumero wrote:
> >> En su momento le propuse al subdirecrtor economíco usar SQL-Ledger, y se
> >> lo batearon con el débil pero siempre utilizado argumento de que "no es
> >> cubano" y que "debe estar certificado por una entidad cubana"... me
> >> gustaría saber si Window$ es cubano, y sobre todo quién lo certificó...
> >>
> >> Fumero
> >>
> > jejeje buena está fumero..
> >
> Bueno el VERSAT puede considerarse "cubano" pero está programado seguro en 
> algun "Visual Studio" que no es cubano, corre solo sobre win$ que tampoco es 
> cubano y por lo que comentan algunos usuarios usa el SQL Server de M$ que 
> tampoco es cubano. Es decir que adaptar algo como el GNUCASH, para que 
> utilice MySQL y corra en Linux es "ilegal" pero lo anterior no?????? de qué 
> estamos hablando entonces??? 
> 
> 
> ______________________________________________________________________
> Lista de correos del Grupo de Usuarios de Tecnologías Libres de Cuba.
> Gutl-l@jovenclub.cu
> https://listas.jovenclub.cu/cgi-bin/mailman/listinfo/gutl-l

-- 
M.Sc. Alberto García Fumero
Usuario Linux 97 138, registrado 10/12/1998
Las autoridades sanitarias advierten:
El uso prolongado de Windows puede provocar dependencia.


-- 
Este mensaje ha sido analizado por MailScanner
en busca de virus y otros contenidos peligrosos,
y se considera que est� limpio.

______________________________________________________________________
Lista de correos del Grupo de Usuarios de Tecnologías Libres de Cuba.
Gutl-l@jovenclub.cu
https://listas.jovenclub.cu/cgi-bin/mailman/listinfo/gutl-l

Responder a