hilpers


  hilpers > microsoft.* > microsoft.vb

 #1  
10-09-2009, 14:05
Yuri Aponte
Hola a todos

Tengo la siguiente consulta:

Normalmente acostumbro a guardar la ruta del archivo como referencia en
alguna tabla de mi BD, asi la carga de datoses minima. Pero tengo ahorita un
aplicativo de cotizaciones en donde hay plantillas en word para hacer las
combinaciones. Hasta aca todo bien.

El tema fue que hice la demo en la PC de un usuario y las plantillas se
guardaron en la ruta que el escogio, pero luego cuando instale el aplicativo
en otro usuario, este era mas ordenado y creo toda una ruta para guardar las
plantillas. El problema es que mi tabla de formatos solo admite un campo de
ruta y no esta detallada por usuario, porque al final es una misma
plantilla. La plantilla de la cotizacion es unica y no cambiara asi se tenga
20 usuarios. tons el segundo usuario tenia otras rutas en el formulario, que
luego cambio y el primer usuario cuando quizo entrar le salio el mensaje de
"archivo no encontrado" de mi sistema...encontre un problema ahi...

Estaba pensando guardar el documento word en la BD porque asi me evitaria el
que cada usuario tenga el archivo en sus pcs en las rutas que escojan, asi
tambien evito crear todo un esquema de rutas por usuario. Pero tengo mis
dudas, he leido por todos lados que no es recomendable, no son muchas
plantillas, no pasan de 10 y no pesan mas de 600KB todas juntas. Osea
tendria siempre 600kb en algunos campos de la BD.

Recomendable guardar los archivos en estos casos puntuales?, o mejor me tomo
un tiempo y cambio mi esquema de bd y programacion para tener repartidas
las plantillas en las pcs de cada usuario. ahhh le pregunte al administrador
de la red para crear una carpeta publica para tener todo en una sola ruta
del servidor, pero por las nuevas politicas de seguridad solo se crean
carpetas personalizadas por cada usuario, osea esa idea ya fue..

Gracias por sus comentarios
 #2  
10-09-2009, 14:45
Saga
Lo recomendable es guardar unicamente la ruta de donde esta guardado el
archivo.

El hecho de no tener ni una carpeta compartida va en contra de lo mas
fundamental
de lo que es una red. Igual se puede crear una carpeta, compartirla entre
los usuarios
y hacerla de solo lectura. Hecho esto no hay ningun riesgo de seguridad,
pues la
carpeta queda como "mirame pero no me toques". Pero no mas criticas :-)

Si cada usuario va a poder guardar las plantillas donde el o ella quiera,
necesitas
contar con una tabla de "preferencias" por cada usuario. O por lo menos un
archivo INI que se use por cada usuario.

Si no es posible compartir, cada usuario tendra que tener sus 600KB de
plantillas
en la carpeta que ellos escogan.

U, otra solucion, es guardar la ruta de cada carpeta de los usuarios que
esta en la red
y usar esa carpeta como base. Por ejemplo, si Jorge tiene su carpeta
compartida en
\\XCubeServ\Jorge, entonces el recurso fijo es \\XCubeServ, el nombre de la
carpeta
es Jorge y esto conforma la base. Tu tabla debe solo guardar la ruta
iniciando con el
nombre del usuario, tal como Jorge\MisDocs\Word\Plantillas. Claro, tambien
se puede
obligar a que las plantillas se guarden en una carpeta definida y que el
usuario no pueda
modificar, quizas tal como <Usuario>\Plantillas. Claro esto aun lleva a
tener una copia
por cada usuario. Mientras que hay soluciones para mejorar, las politicas
creadas por
gente sin vision son solo para empeorar. Saludos, Saga

"Yuri Aponte" <yuri.aponteQUITA> wrote in message
news:8807
[..]
 #3  
10-09-2009, 15:39
Mario Reynoso
Cierto... yo siempre he utilizado el archivo INI para guardar
configuraciones.

En las aplicaciones .NET uso un archivo XML... pero adivinen cuál es la
extensión? ;-)

Nunca me ha gustado guardar la configuración especifica a un equipo en
la base de datos.

El único caso en que almaceno los archivos en la base de datos es con
las firmas que se imprimen en los documentos, pues eso no debería estar
disponible ni para sólo lectura en ningún recurso de red.

Saludos!
 #4  
10-09-2009, 15:49
Leonardo Azpurua
"Yuri Aponte" <yuri.aponteQUITA> escribió en el mensaje news:8807

> El tema fue que hice la demo en la PC de un usuario y las plantillas se
> guardaron en la ruta que el escogio, pero luego cuando instale el aplicativo
> en otro usuario, este era mas ordenado y creo toda una ruta para guardar las
> plantillas. El problema es que mi tabla de formatos solo admite un campo de
> ruta y no esta detallada por usuario, porque al final es una misma
> plantilla. La plantilla de la cotizacion es unica y no cambiara asi se tenga
> 20 usuarios. tons el segundo usuario tenia otras rutas en el formulario, que
> luego cambio y el primer usuario cuando quizo entrar le salio el mensaje de
> "archivo no encontrado" de mi sistema...encontre un problema ahi...


Hola,

Veo una indefinición en la situación que describes.

¿La ubicación de las plantillas es un atributo del usuario o del sistema?

Si todos los usuarios deben usar las mismas plantillas ¿entonces por qué existe la opción de que un usuario defina otra cosa y otro otra?

Si algunas plantillas son comunes y otras son especificas de cada quien, lo normal sería que las comunes estuvieran en una ruta compartida (por ejemplo \Carpeta de Datos\PlantillasComunes) y las especificas en una ruta local (App.Path & "\Mis Plantillas"). Si buscas la plantilla primero en la carpeta local y luego en la carpeta compartida, puedes permitir que un usuario haga "override" de la plantilla comun incluyendo su plantilla personalizada en su carpeta local:

Public Function UbicarPlantilla(nombrePlantilla As String) As String
Dim elPath As String
elPath = Dir(nombrePlantilla)
If elPath = "" Then _
elPath = Dir(app.Path & "\Mis Plantillas\" & nombrePlantilla)
If elPath = "" Then _
elPath = Dir(DataPath() & "\PlantillasCoumnes\" & nombrePlantilla)
UbicarPlantilla = elPath
End Function

Ni siquiera tendrías por qué usar la BBDD para guardar nada.

Las aplicaciones tienen derecho a establecer convenciones, siempre que estas sean simples y consistentes con los estándares prácticos vigentes.

Si los usuarios no son suficientemente inteligentes como para adapatarse a una convención tan simple, hagas lo que hagas siempre encontrarán una manera de complicarte la existencia.

La mejor solución siempre es la más simple.


Salud!
PS: ¿Les gustó la paliza de anoche?
 #5  
10-09-2009, 16:17
Victor Koch
PS: ¿Les gustó la paliza de anoche?

Yo no puedo hablar, mi objetivo ahora es el mundial 2014.
 #6  
10-09-2009, 18:00
Saga
¿Paliza? Alguien recibio una paliza? ¿Fue aqui en el foro?
:-) Saga

"Victor Koch" <v i c t o r (arroba)correo(punto)waldbott(punto)com(punto)ar> wrote in message news:1280
PS: ¿Les gustó la paliza de anoche?

Yo no puedo hablar, mi objetivo ahora es el mundial 2014.
 #7  
10-09-2009, 18:09
Saga
Abajo
Saga
"Leonardo Azpurua" <leonardo> wrote in message news:a560

"Yuri Aponte" <yuri.aponteQUITA> escribió en el mensaje news:8807

> El tema fue que hice la demo en la PC de un usuario y las plantillas se
> guardaron en la ruta que el escogio, pero luego cuando instale el aplicativo
> en otro usuario, este era mas ordenado y creo toda una ruta para guardar las
> plantillas. El problema es que mi tabla de formatos solo admite un campo de
> ruta y no esta detallada por usuario, porque al final es una misma
> plantilla. La plantilla de la cotizacion es unica y no cambiara asi se tenga
> 20 usuarios. tons el segundo usuario tenia otras rutas en el formulario, que
> luego cambio y el primer usuario cuando quizo entrar le salio el mensaje de
> "archivo no encontrado" de mi sistema...encontre un problema ahi...


Hola,

Veo una indefinición en la situación que describes.

¿La ubicación de las plantillas es un atributo del usuario o del sistema?

Si todos los usuarios deben usar las mismas plantillas ¿entonces por qué existe la opción de que un usuario defina otra cosa y otro otra?

Si algunas plantillas son comunes y otras son especificas de cada quien, lo normal sería que las comunes estuvieran en una ruta compartida (por ejemplo \Carpeta de Datos\PlantillasComunes) y las especificas en

***********Comentario de Saga
*Del mensaje original:
*"...crear una carpeta publica para tener todo en una sola ruta
*del servidor, pero por las nuevas politicas de seguridad solo se crean
*carpetas personalizadas por cada usuario"
*
*O sea, las politicas de la empresa no permiten tener carpetas compartidas :-S Ahi esta la
*anomalia.

una ruta local (App.Path & "\Mis Plantillas"). Si buscas la plantilla primero en la carpeta local y luego en la carpeta compartida, puedes permitir que un usuario haga "override" de la plantilla comun incluyendo su plantilla personalizada en su carpeta local:

Public Function UbicarPlantilla(nombrePlantilla As String) As String
Dim elPath As String
elPath = Dir(nombrePlantilla)
If elPath = "" Then _
elPath = Dir(app.Path & "\Mis Plantillas\" & nombrePlantilla)
If elPath = "" Then _
elPath = Dir(DataPath() & "\PlantillasCoumnes\" & nombrePlantilla)
UbicarPlantilla = elPath
End Function

Ni siquiera tendrías por qué usar la BBDD para guardar nada.

Las aplicaciones tienen derecho a establecer convenciones, siempre que estas sean simples y consistentes con los estándares prácticos vigentes.

Si los usuarios no son suficientemente inteligentes como para adapatarse a una convención tan simple, hagas lo que hagas siempre encontrarán una manera de complicarte la existencia.

Sospecho que, en este caso, los usuarios son lo suficientemente inteligentes, algo que
no se puede decir por la gente que establecio las normas de seguridad.

La mejor solución siempre es la más simple.

***********Comentario de Saga
*Muy de acuerdo contigo, pero...
*
*Mientras que hay soluciones para mejorar, las politicas
*creadas por gente sin vision son solo para empeorar.





Salud!
PS: ¿Les gustó la paliza de anoche?
 #8  
10-09-2009, 18:17
Yuri Aponte
Hola Saga

Esas politicas hasta ahora no las entiendo. Me dijeron que eliminaron la
carpeta Public del servidor porque daba muchos problemas al darle un mal uso
por parte de los usuarios. Y me dijeron que por eso prefirieron que cada
usuario tuviera su carpeta personal y punto.

Tratare de convencer a este "administrador" (?) en que crear una carpeta
compartida para este caso especial no le quitara el empleo.

Gracias por la respuesta
 #9  
10-09-2009, 18:24
Yuri Aponte
Seguro me explique mal.

Este sistema maneja cotizaciones y licitaciones. Cada una de ellas tienen ya formatos definididos por la gerencia y no se pueden cambiar. Mucho menos el de licitaciones al presentarse a instituciones del estado.

Al ser las plantillas ya definidas la idea es que los usuarios en la Pc que esten puedan acceder a ellas sin problemas. El tema de tenerlas de manera local obligaria a que cada usuario tenga una carpeta con esos archivos y asi las plantillas se repetirian por cada Pc donde este instalado el sistema.

El sistema lo que hace es tener un formulario donde el usuario pueda revisar las plantillas por si se desea hacer un pequeño cambio en algun texto, digamos si antes decia "Saludos cordiales" , ahora quieren poner "Reciban nuestros afectuosos saludos". O si por ejemplo ya no desean colocar la etiqueta #CONTACTO# puedan quitarla, esto lo hice a traves de un activex DSOFramer disponible en el sitio de microsoft. El cual me ayudo a lidiar con esto, aunque la verdad al final me esta complicando tambien por la compatibilidad con las versiones y el hecho de tener metido el word en un formulario de mi sistema.

Mi idea era centralizar todo en una sola carpeta, por lo que le dije al bendito administrador que lo mejor seria que se creara una carpeta en el sistema compartida para estos usuarios donde se guarden estos archivos, al obtener una respuesta tonta al respecto opte por buscar el guardar el archivo completo en la base de datos contraviniendo lo que siempre he pensado de esa operacion. Siempre he guardado las rutas porque para mi es lo mejor. Batallare hoy en hacerle entender a esta persona que menos problemas daria crear una carpeta que rellenar la base de datos de innecesarios bytes.

Gracias por la respuesta
 #10  
10-09-2009, 18:54
Victor Koch
Hola Yuri,

A veces la cosa pasa por tirarle la decisión al cliente y en todo caso advertirle de los pro y contras.

Tal vez una solución pase por configurar en alguna opción del sistema, habría que ver si el acceso a esa opción este restringido a ciertos usuarios, si la ruta de la planilla es factible que la seleccione cada usuario, si es factible entonces cada usuario puede decidir donde la guarda, si no es factible se debe definir la carpeta de la planilla, en este caso la misma debería estar en una carpeta compartida en el servidor para que todas las PC's la busquen ahí.

¿ Que aclararle al cliente ?

Si ud define que la ruta de la planilla la defina cada usuario deberá tener en cuenta que el día que la modifique deberá avisarles a todos los usuarios del sistema o encargarse de actualizarle la planilla en cada una de las PC's teniendo presente la carpeta donde este la guarda.

Si ud no define que la ruta de la planilla la defina cada usuario deberá compartir una carpeta en el servidor para guardarla, la ventaja de esta forma es que todos los usuarios accederán a una única planilla con las ultimas adaptaciones.
 #11  
10-09-2009, 19:16
Saga
"...no le quitara el empleo."

Pero si lo puede hacer mas sabio. Lo que he visto es que cuando algo
se quita o se modifica completamente es porque no saben como
administrar esa caracteristica. Para alguien que no sabe acerca de
permisos, donde un grupo selecto es el que tiene acceso a un recurso,
o de como otorgar privilegios a un archivo o carpeta (solo lectura,
etc.) es mas facil y seguro para el (o ella) simplemente erradicar por
completo lo que no se entiende.

Entiendo perfectamente que se haya eliminado la carpte publica, pero
lo que se necesita aqui es algo muy diferente porque no se trata de una
carpeta publica disponible a todos, sino una carpeta prvada (por decirlo
asi) compartida que solo estara disponible a unos pocos y que sera de
solo lectura (si esto es aceptable a las necesidades). Saludos! Saga


"Yuri Aponte" <yuri.aponteQUITA> wrote in message
news:6eea
[..]
 #12  
10-09-2009, 19:19
Leonardo Azpurua
"Victor Koch" <v i c t o r (arroba)correo(punto)waldbott(punto)com(punto)ar>
escribió en el mensaje news:4028
Hola Yuri,

A veces la cosa pasa por tirarle la decisión al cliente y en todo caso
advertirle de los pro y contras.

Tal vez una solución pase por configurar en alguna opción del sistema,
habría que ver si el acceso a esa opción este restringido a ciertos
usuarios, si la ruta de la planilla es factible que la seleccione cada
usuario, si es factible entonces cada usuario puede decidir donde la guarda,
si no es factible se debe definir la carpeta de la planilla, en este caso la
misma debería estar en una carpeta compartida en el servidor para que todas
las PC's la busquen ahí.
-------------------------------

El típico imbécil (el administrador), que cree que los ordenadores son para
estar ordenaditos y no para hacer el trabajo que tienen que hacer.

En fin, cada quien sabe donde y para quien trabaja.


Salud!
 #13  
10-09-2009, 20:59
Yuri Aponte
Lo mas increible es que es una transnacional americana, ja,ja,ja..

Todo me ha ido muy bien con este cliente, e incluso han habido ocasiones en
que las politicas impuestas desde la central americana no han necesitado
explicacion alguna (incluso muchas de ellas me han beneficado)

Pero siempre hay alguien que no parece entender bien las cosas y se termina
cerrando ante todo. El hecho de que le hayan indicado que ya no habria
carpeta publica y que ahora cada usuario con su carpeta, no quiere decir que
no se puede crear una carpeta especial para estos casos. Si veo que me
genera un innecesario stress el tratar de convencerlo que no puede ser mas
papista que el papa, entonces hare una pequeña modificacion en mi sistema y
creare una clave adicional en mi tabla de plantillas segun el usuario.
 #14  
10-09-2009, 22:11
Leonardo Azpurua
"Yuri Aponte" <yuri.aponteQUITA> escribió en el mensaje
news:1958
> Lo mas increible es que es una transnacional americana, ja,ja,ja..
>
> Todo me ha ido muy bien con este cliente, e incluso han habido ocasiones
> en que las politicas impuestas desde la central americana no han
> necesitado explicacion alguna (incluso muchas de ellas me han beneficado)
>
> Pero siempre hay alguien que no parece entender bien las cosas y se
> termina cerrando ante todo. El hecho de que le hayan indicado que ya no
> habria carpeta publica y que ahora cada usuario con su carpeta, no quiere
> decir que no se puede crear una carpeta especial para estos casos. Si veo
> que me genera un innecesario stress el tratar de convencerlo que no puede
> ser mas papista que el papa, entonces hare una pequeña modificacion en mi
> sistema y creare una clave adicional en mi tabla de plantillas segun el
> usuario.



Llevo dos meses sin fumar y eso me tiene de mucho peor humor de lo que hace
unos días habría imaginado que podía ponerse una persona.

Todos los imbéciles del mundo de la informática (que caen dentro de una de
las tres grandes categorías, a saber: ejecutivos, administradores de
sistemas y usuarios) tienen que meterse en sus espesas cabezotas la
siguiente verdad fundamental: nosotros -los desarrolladores- somos los que
le decimos a los ordenadores como son las cosas. Nosotros somos la mente, el
espíritu, la inteligencia y la sabiduría de los ordenadores, que sin
nosotros no serían más que montones de metal y resinas plásticas. Y ellos
(los susodichos imbéciles) serían desempleados, esclavos anónimos amarrados
a un pupitre con un lapiz y un libro de contabilidad o neuróticos
exasperados condenados a tomar decisiones con base en información limitada
sobre eventos que ocurrieron hace dos años.

Los ejecutivos se callan y pagan, los administradores se callan, abren lo
que les digamos que abran y cierran lo que quieran hasta que les mandemos lo
contrario, y los usuarios se callan y trabajan, y si algo no sale como ellos
esperan, le buscan la vuelta hasta encontrar una solución.

Me irrita esa pasividad tuya. Abofetea al imbécil administrador y explícale
que su trabajo es posibilitar la ejecución de los programas y no ponernos la
vida difícil a los desarrolladores. Y si no entiende vuelve a abofetearlo y
enciérralo en el cuarto de mopas sin comer durante la hora de almuerzo día
tras día hasta que se ilumine.


Salud!
 #15  
10-09-2009, 23:24
Yuri Aponte
Tranquilo Leo, que no es por pasividad mia, sino porque recien mañana tengo
mi reunion con el cliente y de todas maneras queria tener todas las
posibilidades si es que el sujeto en cuestion sigue con su absurda posicion.

Lo que en el fondo me causa mas expectativa es que mi reunion de mañana es
no solo con el y el usuario final ( a quien se lo pasea a cada rato ) sino
con el Gerente de Ventas y el Gerente General, estos dos ultimos son del
tipo "informatico empirico", que es el termino que le doy a aquellas
personas que han ido aprendiendo conceptos y usos informaticos de manera
autodidacta y para el que el termino "no se puede", les resulta insultante.

Y ya si me hace el dificil, el sabado me invitaron a una partidito de futbol
interno. je,je,je.. me he comprado chimpunes con toperoles nuevos y ya se
que piernas quebrare. ja,ja,ja

Temas Similares
Definir ruta y nombre del archivo a guardar

Tengo una plantilla y quiero que al poner guardar le salga directamente al usuario el nombre del archivo y la ruta. Miré varios post sobre el tema pero no me funciona, me...

ruta donde guardar archivo

Hola grupo ! Por favor, una duda, se puede modificar la propiedad Dialogs para que siempre me 'muestre' la misma ruta y *directorio*, donde guardar ?. No uso ...

Ruta Guardar Immagenes

Amigos de Windows Vista Agradecería me ayudaran con lo siguiente: Yo abro una imagen en Internet y con click derecho aparece la opción Guardar Imagen como... yo lo quiero...

Guardar la ruta de una imagen.....

Hola chicos.... Tengo un problemilla........ Cuando intento guardar la ruta de una imagen ....se guarda de la siguiente manera: C:InetpubwwwrootBDconfig135.GIF...es decir...


La franja horaria es GMT. Ahora son las 20:14. | Privacy Policy