providex-esp@pvxplus.com

Message: previous - next
Month: December 2010

Re: [PvxEsp] Aseguramiento de la calidad

From: Iván Lugo Herrera <ivanlugoh@...>
Date: Sun, 26 Dec 2010 20:10:12 -0800 (PST)
Jorge:

Yo utilizo esta instrucción en reportes y consultas (ej.: llenar un List_Box). Abro todos los archivos involucrados, algunos con decenas de miles de registros (ej.: 50.000 cheques), ejecuto el reporte y cierro los archivos. No he notado que se afecten los tiempos de respuesta para el resto de los usuarios. No se nota.
Sin embargo, y de acuerdo con tu inquietud, haré algunas pruebas forzando la barra. Si observo algún retardo te lo haré saber (a toda la lista claro).

ILH

--- El dom, 12/26/10, George Moncada <gamma.j@...> escribió:

De: George Moncada <gamma.j@...>
Asunto: Re: [PvxEsp] Aseguramiento de la calidad
A: providex-esp@...
Fecha: domingo, 26 de diciembre de 2010, 11:50 am

Ivan:

Yo no he usado el OPEN LOAD, pero me parece excelente por lo que
dices.....me queda la duda de saber si se puede usar para leer archivos
grandes, osea, si ya en la practica, el abrir un archivo grande y cargarlo
en memoria puede afectar el rendimiento ? ( comparandolo con el open input).

Gracias,

Jorge


2010/12/25 Iván Lugo Herrera <ivanlugoh@...>

> Jorge, Javier, gracias por compratir sus investigaciones y experiencias.
>
> Jorge: las ventajas del método que propones de programación en pareja son
> evidentes, hay una evaluación y contrastación permanente, además de la suma
> de conocimientos.
> En mi caso, este método me ha resultado lento y agotador por la necesidad
> de demostrar cada aporte, cada enfoque. Supongo que debe haber manera de
> superar esta dificultad o reducirla a niveles prácticos.
>
> Javier: tus excelentes recomendaciones podrían resumirse en "utilizar
> adecuadamente la ventaja que posee Pvx en el manejo de errores, con el
> ERROR_HANDLER y las condiciones ERR= en las directivas y funciones que lo
> permitan".
>
> Para dar una forma didactica a tus recomendaciones (e incluir alguna que se
> me ocurre ahora), resumamos:
>
>  - Suprimir la generación de error 43 por sobreflujo de máscara
>    (Ojo! no resuelve todos los errors de máscara)
>    !Guardar valor actual y establecer la condición deseada
>     Sv_Fi=PRM('FI')
>     SET_PARAM 'FI'
>    !Reestablecer la condición previa
>     IF NOT(Sv_Fi) THEN SET_PARAM -'FI'
>
> - Ignorar Extract
>    !Establecer
>     SET_PARAM 'XI'
>     (como esta es una forma de programación, no creo que aplique el
> reverso)
>
> - Establecer que Pvx devuelva cero para divisiones entre cero
>    !Guardar valor actual y establecer la condición deseada
>     Sv_D0=PRM('D0')
>     SET_PARAM 'D0'
>    !Reestablecer la condición previa
>     IF NOT(Sv_D0) THEN SET_PARAM -'D0'
>
> - Suprimir la generación de error por mnemónico
>    !Guardar valor actual y establecer la condición deseada
>     Sv_Eg=PRM('EG')
>     SET_PARAM 'EG'
>    !Reestablecer la condición previa
>     IF NOT(Sv_Eg) THEN SET_PARAM 'BG'
>
> - Conversión de string a numérico
>    Numero$="258.56A", Numero=NUM(Numero$,ERR=*NEXT)
>
> - Manejo de string
>    A$="AEIOU", B$=A$(4,3)      !genera error 47
>    A$="AEIOU", B$=MID(A$,4,3)  !NO genera error y resulta B$="OU"
>    A$="AEIOU", B$=pad(A$(4),3) !NO genera error y resulta B$="OU "
>
> Respecto a ERROR_HANDLER el programa *ERROR es una buena base para
> desarrollar un manejador de errores propio.
>
> En lo personal, para evitar el bloqueo de consultas o reportes por
> registros que estén reservados (EXTRACT) por otro usuario prefiero abrir los
> archivos como sólo lectura (OPEN LOAD).
>
> Gracias por los aportes. Sigamos enriqueciéndonos.
>
> ILH
>
> --- El vie, 12/24/10, Javier Lattuf <jlattuf@...> escribió:
>
> De: Javier Lattuf <jlattuf@...>
> Asunto: Re: [PvxEsp] Aseguramiento de la calidad
> A: providex-esp@...
> Fecha: viernes, 24 de diciembre de 2010, 03:42 pm
>
> Ivan,
>
> Como idea muy general sólo se me ocurre recordar que el Pvx nos permite a
> través de las salidas de error y otras opciones "atajar" a la mayoría de
> ellos.
>
> Deberíamos programar usando la famosa ley de Murphy: "Si algo puede salir
> mal, saldrá mal"
>
> Yo siempre recomiendo siempre pensar en que la data puede estar corrupta o
> que ha sido manipulada, por ejemplo si vas a usar la instrucción NUM, no des
> por sentado que ese campo debe tener un número y usa su respectiva salida de
> error.
>
> De igual forma recomiendo usar la instrucción MID para los substring y no
> el típico formato var$(pos,largo), así evitamos el probable ERR=47. O en su
> defecto usar PAD para garantizar que la variable a la cual se hace
> referencia tiene el tamaño exacto que queremos.
>
> También recomiendo usar otra opción del PVX como es lo son los parámetros,
> activar los que nos "limpien" la mayor parte de los errores de
> procesamiento. Algunos ejemplos que recuerdo:
>
> - No reportar el ERR=43
> - Que el EXTRACT sólo reporte ERR=0 para otros EXTRACTs y no para los READ.
> - No reportar ERR=40 en divisiones por cero
>
> Por último, para concluir esta muy resumida respuesta, usar el comando
> ERROR_HANDLER al comienzo de nuestra aplicación garantizará que el sistema
> nunca vaya a la cónsola del PVX. Tan sólo debemos crear la rutina pública
> relacionada. Esto nos permite grabar una auditoría del error ocurrido
> (incluyendo el DUMP del momento) y así podemos  dar la opción al usuario
> para que pueda reintentar (RETRY) o cancelar (BYE) el proceso.
>
> Saludos y felices fiestas para todos
>
> Javier Lattuf
> Caracas - Venezuela
>
> ----- Original Message ----- From: "George Moncada" <gamma.j@...>
> To: <providex-esp@...>
> Sent: Friday, December 24, 2010 12:27 PM
> Subject: Re: [PvxEsp] Aseguramiento de la calidad
>
>
> Ivan:
>
> Estoy de acuerdo con lo que dices, la unica sugerencia que pienso que debe
> ser tenida en cuenta para efectos tanto de calidad como de soporte es una
> que lei en la llamada XP ( extreme programming)  y se refiere a que todo la
> programacion debe hacerse en parejas de programadores; de esta manera el
> codigo tiene menos errores, queda mejor documentado y se tiene la
> tranquilidad de un mejor soporte, una vez entra la etapa de produccion.
>
> Recibe un cordial saludo de navidad y año nuevo,
>
>
> Jorge
>
>
>
> 2010/12/24 Iván Lugo Herrera <ivanlugoh@...>
>
> > Señores Lista Pvx:
> > Feliz Navidad y venturoso 2011 para todos.
> >
> > Me
> > preguntaba yo si habría algún documento, manual, instructivo o
> > recopilación de temas sobre algunos mecanismos para asegurar la calidad
> > de nuestros productos desarrollados en Pvx. Ya saben, "es mejor tomarse
> > el tiempo necesario para hacer algo bien que tener que regresarse a
> > corregirlo".
> > Aquí hay involucrados temas de análisis, diseño y programación (modular u
> > objeto).
> > La
> > única discusión q recuerdo sobre el tema fue un planteamiento que hizo
> > Cortez sobre su modelo de programación y q Alexander Philips cuestionó
> > en algunos puntos con argumentos muy técnicos.
> > Como en mi caso
> > personal, cada quien habrá desarrollado su técnica, y nadie va a
> > aceptar totalmente una metodología ajena; pero a cada uno se nos habrá
> > pasado algún tópico que otro habrá manejado con propiedad.
> > Quizá la gente de MAS90 o algún otro grupo de expertos tengan algunas
> > "guidelines" que puedan (y quieran) compartir.
> >
> > Espero sus comentarios y les reitero los mejores deseos para estas
> fiestas
> > y el año que viene.
> >
> > Iván Lugo Herrera
> > Valencia, Venezuela
> >
> >
> >
> >
>
>
>
>
>
>
>
>
>