Multiples versiones de un sistema

Multiples versiones de un sistema

Postby Adolfo » Sun Mar 25, 2012 9:35 pm

Holas...

Quien maneja multiples versiones de un mismo sistema, y como lo hace ?

Hasta el momento, tengo diferentes sistemas, para varios rubros.. pero ultimamente me han solicitado una version "reducida" de un sistema de gestion mas o menos grande, quiero contorlarlo con el menu principal y unas modificaciones en 4 modulos del sistema ( tiene 47 ).

La idea es crear otro dir, con un .lnk que llame a los prgs propios de la version y los otros al directorio de la version "full", de hecho me sirve la misma estructura del "full", ya que si deciden un upgrade, no tengo que hacer ningun cambio a nivel de la DB MYSQL.

Me acomoda ese mecanismo, pero quisiera saber de sus experiencias, en una de esas tienen algo mas elaborado que me pueda ayudar, quizas un administrador de versiones externo .. no se.. cualquier ayuda o tip sera bienvenido.

Saludos desde Chile
Adolfo

PD : Por ej. Tener 2 dialogos distintos, dependiendo de la version en el RC, o 2 RC casi identicos con el dialogo cambiado en uno....

o el manejo de la compilacion y linkeo condicional.... o es mucho...
;-) Ji,ji,ji... buena la cosa... "all you need is code"

http://www.xdata.cl - Desarrollo Inteligente
----------
Asus TUF F15, 32GB Ram, 2 * 1 TB NVME M.2, GTX 1650
User avatar
Adolfo
 
Posts: 860
Joined: Tue Oct 11, 2005 11:57 am
Location: Chile

Re: Multiples versiones de un sistema

Postby Lautaro » Mon Mar 26, 2012 1:00 am

Hola Adolfo,

A mi me ha tocado y lo que hago es tener un .ch con algun define , y dentro de los prgs necesarios el correspondiente #IFDEF o #IFNDEF para compilar condicionalmente una u otra version, el .ch lo incluyo por defecto en todos los prg de mi sistema, asi, solo modifico el ch y recompilo.

Eso si hay que ordenarse bastante bien a la hora de corregir cosas en las dos o mas versiones, ya que a veces se torna bastante tedioso.


Saludos,

Lautaro Moreira
Osorno
Chile
User avatar
Lautaro
 
Posts: 322
Joined: Fri Oct 07, 2005 2:44 pm
Location: Osorno, Chile

Re: Multiples versiones de un sistema

Postby FranciscoA » Mon Mar 26, 2012 12:43 pm

Hola Adolfo.
En ciertas ocasiones lo hice como expone Lautauro, en el caso de quitar algunos modulos del sistema completo, y me funcionaba solamente cuando era eso, reducir modulos únicamente. Pero... como dice Lautauro, se vuelve muy tedioso, ya que en mi caso los clientes casi nunca aceptaban tal y como estaba el sistema (en cosas cursis, no en su operación y resultados), opté por mantener una carpeta de los sistemas por cada cliente (solo aquellos que solicitaban alguna "variante"). Asi se me facilita el mantenimiento requerido por cada usuario.

Saludos.
Francisco J. Alegría P.
Chinandega, Nicaragua.

Fwxh-MySql-TMySql
User avatar
FranciscoA
 
Posts: 2159
Joined: Fri Jul 18, 2008 1:24 am
Location: Chinandega, Nicaragua, C.A.

Re: Multiples versiones de un sistema

Postby Adolfo » Mon Mar 26, 2012 1:05 pm

Francisco, Lautaro
Gracias pór las respuestas.

En algun momento tuve hasta 13 versiones de un mismo sistema en directorios distintos con las opciones que cada cliente pedia. Hasta que lo parametrize bastante y utilizo un archivo de configuracion para habilitar ciertas caracteristicas o no.

Pues bien, ahora es distinto, es una version "LIGTH", son modulos que no existen o que no usan todas las caracteritcas ( como campos de alguna tabla) y que usan recursos ( como dialogos) distintos. Y es aqui donde quiero ordenarme, de una forma distinta quizas, por eso pregunte sus opiniones o experiencias.

Saludos desde Chile
Adolfo
;-) Ji,ji,ji... buena la cosa... "all you need is code"

http://www.xdata.cl - Desarrollo Inteligente
----------
Asus TUF F15, 32GB Ram, 2 * 1 TB NVME M.2, GTX 1650
User avatar
Adolfo
 
Posts: 860
Joined: Tue Oct 11, 2005 11:57 am
Location: Chile

Re: Multiples versiones de un sistema

Postby sambomb » Mon Mar 26, 2012 2:22 pm

Você pode fazer isso através de diretivas de compilação, por exemplo:
#IFDEF __FULL__
//-- Seu código caso seja a versão completa
#ELSE
//-- Seu código caso seja a versão reduzida
#ENDIF

#IFDEF __LIGHT__
//-- Seu código caso seja a versão reduzida
#ELSE
//-- Seu código caso seja a versão completa
#ENDIF

Na diretiva de compilação você vai adicionar /D__FULL__ quando for a completa e /D__LIGHT__ quando for a resumida
Email: SamirSSabreu@gmail.com
xHarbour 1.2.3 + Fwhh 20.2
User avatar
sambomb
 
Posts: 388
Joined: Mon Oct 13, 2008 11:26 am
Location: Itaocara - RJ - Brasil

Re: Multiples versiones de un sistema

Postby hmpaquito » Mon Mar 26, 2012 3:46 pm

Adolfo,

Yo lo haría con codigo...

lFullVersion() / lLightVersion()

¿ por qué así ?

Lo que tengo claro es que mantener varias carpetas para un mismo cliente se convierte a la larga en un lio.

Luego, usar lFullVersion()/ lLightVersion() porque:
Es mas comodo que utilizar las directivas de compilacion: por ejemplo en un comando.
No hay necesidad de recompilar: solo mantienes un unico exe que se comportara en funcion de la configuracion del cliente: full /light.

En aquellos procesos que toman mas tiempo, habrá que optimizar y por ejemplo en vez de llamar en un bucle a lFullVersion(), lo asignariamos a una variable local y preguntariamos por la variable.

Saludos
hmpaquito
 
Posts: 1482
Joined: Thu Oct 30, 2008 2:37 pm


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: Google [Bot] and 74 guests