<div dir="ltr">Ok Leo ! Muchas Gracias por la respuesta !<div><br></div><div>Voy a ver si el cuatrimestre que viene me anoto en el curso de POO, así los próximos proyectos los encaro distinto.</div><div><br></div><div>PD: Te dejo un link con las nuevas alianzas extrañas que está haciendo el movimiento anonymous. No se si estabas al tanto: <a href="https://www.youtube.com/watch?v=U9_j415Q8G0">https://www.youtube.com/watch?v=U9_j415Q8G0</a></div><div><br></div><div>Saludos !</div></div><div class="gmail_extra"><br><div class="gmail_quote">El 17 de junio de 2015, 21:08, Leonardo Tadei - Pegasus Tech Supply <span dir="ltr"><<a href="mailto:leonardot@pegasusnet.com.ar" target="_blank">leonardot@pegasusnet.com.ar</a>></span> escribió:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hola Rodrigo,<br>
<br>
entonces siendo las las "listas de precios" archivos PDF, podrías sacar<br>
el problema "listas de precios" porque no es relevante el contenido de<br>
los mismos.<br>
<br>
Si, como es de esperarse, se agregan listas de precios poco<br>
frecuentemente, se podría resolver con una interfaz de "nueva lista de<br>
precios" en dónde se selecciones los distribuidores que las recibirán.<br>
Es un trabajo largo, pero será poco habitual.<br>
<br>
Por otra parte si en el enunciado del problema las listas de precios se<br>
van habilitando progresivamente en base a una regla, podrías numerar los<br>
archivos por ejemplo del 1 al 10, y entonces bastaría con decir que un<br>
distribuidor puede ver las listas hasta la 6, con lo que si una lista de<br>
precios nueva es menor o igual que 6, la verá y si es es mayor no.<br>
La elección de 1 a 10 es arbitraria: podría ser de 1 a 10.000 y tener<br>
más listas de precios todavía.<br>
<br>
Sí, el patron de diseño observer es de POO, pero viendo el problema<br>
tipo y la solución, se podría hacer alguna implementación razonablemente<br>
decente en PE... lo importante es la idea detrás del Observer y en tu<br>
caso no la implementación.<br>
<br>
Saludos!<br>
<div><div class="h5"><br>
<br>
<br>
<br>
El mié, 17-06-2015 a las 20:32 -0300, Rodrigo Fernandez escribió:<br>
> A ver si me explico un poco mejor:<br>
><br>
><br>
> Hay un administrador que gestiona distribuidores por un lado y listas<br>
> de precios (archivos pdf) por otro.<br>
><br>
><br>
> Estos distribuidores no pueden ver todas las listas, pero si "se<br>
> portan bien" y venden mucho, se les van desbloqueando otras.<br>
><br>
><br>
> Yo lo hice de manera que cuando agregas o modificas el distribuidor,<br>
> se muestran las listas disponibles y con un checkbox seleccionas las<br>
> que el distribuidor puede visualizar.<br>
><br>
><br>
> Cuando se actualiza una de estas listas, a los que la tenían asignada<br>
> les llega un mail notificándoles "Se subió una nueva lista" a los que<br>
> corresponde.<br>
><br>
><br>
> Pero cuando se agrega una nueva (que me parece como vos decís no es<br>
> algo que pase seguido, pero por lo que me sugiere el cliente algo que<br>
> puede pasar) no tengo manera de notificar a los distribuidores, porque<br>
> ninguno la tiene asignada.<br>
><br>
><br>
> Por eso mi solución, de hoy a la tarde, es darle un numero fijo de<br>
> listas a editar, digamos 5. Entonces cuando quieren agregar una,<br>
> primero se la asignan a los distribuidores pertinentes, la actualizan<br>
> y ahí les va a llegar el mail "Se subió una nueva lista".<br>
><br>
><br>
> No se si se entiende mejor... No se si está bien encarado...<br>
><br>
><br>
> ¿Lo del patrón de diseño de Observer es para programación orientada a<br>
> objetos no?<br>
><br>
><br>
> Saludos !<br>
><br>
> El 17 de junio de 2015, 19:44, Leonardo Tadei - Pegasus Tech Supply<br>
> <<a href="mailto:leonardot@pegasusnet.com.ar">leonardot@pegasusnet.com.ar</a>> escribió:<br>
> Hola Rodrigo,<br>
><br>
> no sé si entiendo del todo el escenario.<br>
> Cuándo te referís a que "se sube una nueva lista de<br>
> precios" querés<br>
> decir que se actualizan los precios de una lista existente o<br>
> que se sube<br>
> una nueva al completo?<br>
><br>
> Por tu descripción, parece la 2da opción, pero me<br>
> cuesta imaginarme un<br>
> escenario real en dónde se agreguen frecuentemente nuevas<br>
> listas de<br>
> precios (lo que puede ser solo falta de imaginación de mi<br>
> parte).<br>
><br>
> Por lo general cuando se habla de varias listas de<br>
> precios, se hace<br>
> referencia a que un mismo producto/servicio tiene diferentes<br>
> precios,<br>
> según cada comprador... pero pareciera que vos hacés<br>
> referencia a otro<br>
> concepto (o tenés un barullo de tamaño difícil de medir ;-) )<br>
><br>
> Para aclarar los conceptos que suelen usarse alrededor<br>
> de estas<br>
> cuestiones:<br>
><br>
> - inventario: el universo de todo los que existe, con su<br>
> código,<br>
> descripción, etc, etc.<br>
> - lista de precios: uno de los precios de las cosas en el<br>
> inventario;<br>
> cada lista de precios tiene un nombre, y bajo ese nombre están<br>
> las cosas<br>
> del inventario con el precio correspondiente. Si algo tiene<br>
> más de un<br>
> precio, pues estará en otra lista de precios.<br>
> - stock: cuánto hay de cada cosa del inventario en cada lugar<br>
> en que se<br>
> guarden.<br>
><br>
> Tu problema tiene pinta de solucionarse con un patrón<br>
> de diseño<br>
> Observer, pero la verdad es que no entiendo del todo la<br>
> situación de<br>
> base.<br>
><br>
> Saludos!<br>
><br>
><br>
> El mié, 17-06-2015 a las 11:12 -0300, Rodrigo Fernandez<br>
> escribió:<br>
> > Que tal buenos días, tengo un problema<br>
> ><br>
> ><br>
> > Estoy haciendo un sistema donde hay distribuidores, éstos<br>
> tienen<br>
> > diferentes listas de precios visibles (algunas si, otras no)<br>
> y a la<br>
> > vez cuando se sube una nueva lista de precios les llegue un<br>
> mail<br>
> > notificándoles.<br>
> ><br>
> ><br>
> > Lo había resuelto desde el lado de los distribuidores,<br>
> cuando se<br>
> > agrega o edita uno, se le asigna que listas de precios tiene<br>
> visibles<br>
> > y cuáles no.<br>
> > El problema es que si se agrega una nueva lista de<br>
> precios no hay<br>
> > manera de asignársela a nadie (excepto yendo a los<br>
> distribuidores y<br>
> > asignárselas uno por uno) y no le llegaría notificación<br>
> alguna.<br>
> ><br>
> ><br>
> > Estuve pensando en hacer que cuando se suba una lista de<br>
> precios se<br>
> > listen todos los distribuidores y ahí se les asignes quien<br>
> la ve y<br>
> > quien no. Así si les llegaría bien el mail pero me parece<br>
> que no es LA<br>
> > solución, ya que puede haber muchos distribuidores.<br>
> ><br>
> ><br>
> > Otra es asignarles grupos a los ditribuidores y las listas a<br>
> los<br>
> > grupos. Pero tendría que haber tantos grupos como<br>
> combinaciones<br>
> > posibles.<br>
> ><br>
> ><br>
> > Otra es dejar un número de posibles listas de precios fijo,<br>
> digamos 5<br>
> > que están vacíos y antes de agregar la lista N° 5 se le<br>
> asigna a los<br>
> > distribuidores pertinentes la 5, después se sube y así les<br>
> llegaría el<br>
> > mail jaja...<br>
> ><br>
> ><br>
> > No se si me estoy complicando sólo, pero no se me ocurre una<br>
> solución<br>
> > satisfactoria.<br>
> ><br>
> ><br>
> > Si me pueden dar una mano, más que agradecido.<br>
> ><br>
> ><br>
> > Si algo no se entiende, me dicen y lo aclaro.<br>
> ><br>
> ><br>
> > Gracias y Saludos !<br>
> ><br>
> ><br>
><br>
> > _______________________________________________<br>
> > Lista de correo: Php-avanzado<br>
> > Mensajes a la lista: <a href="mailto:Php-avanzado@pato2.fi.mdp.edu.ar">Php-avanzado@pato2.fi.mdp.edu.ar</a><br>
> > Administración Web:<br>
> <a href="http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado" rel="noreferrer" target="_blank">http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado</a><br>
> > Desubscripción:<br>
> <a href="http://php-avanzado-request@pato2.fi.mdp.edu.ar?subject=unsubscribe" rel="noreferrer" target="_blank">php-avanzado-request@pato2.fi.mdp.edu.ar?subject=unsubscribe</a><br>
><br>
> --<br>
> Leonardo Tadei<br>
> <a href="mailto:leonardot@pegasusnet.com.ar">leonardot@pegasusnet.com.ar</a><br>
> Web: <a href="http://leonardo.tadei.com.ar" rel="noreferrer" target="_blank">http://leonardo.tadei.com.ar</a><br>
> Firma pública:<br>
> <a href="http://www.pegasusnet.com.ar/LeonardoTadei-public.key" rel="noreferrer" target="_blank">http://www.pegasusnet.com.ar/LeonardoTadei-public.key</a><br>
><br>
> _______________________________________________<br>
> Lista de correo: Php-avanzado<br>
> Mensajes a la lista: <a href="mailto:Php-avanzado@pato2.fi.mdp.edu.ar">Php-avanzado@pato2.fi.mdp.edu.ar</a><br>
> Administración Web:<br>
> <a href="http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado" rel="noreferrer" target="_blank">http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado</a><br>
> Desubscripción:<br>
> <a href="http://php-avanzado-request@pato2.fi.mdp.edu.ar?subject=unsubscribe" rel="noreferrer" target="_blank">php-avanzado-request@pato2.fi.mdp.edu.ar?subject=unsubscribe</a><br>
><br>
><br>
> _______________________________________________<br>
> Lista de correo: Php-avanzado<br>
> Mensajes a la lista: <a href="mailto:Php-avanzado@pato2.fi.mdp.edu.ar">Php-avanzado@pato2.fi.mdp.edu.ar</a><br>
> Administración Web: <a href="http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado" rel="noreferrer" target="_blank">http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado</a><br>
> Desubscripción: <a href="http://php-avanzado-request@pato2.fi.mdp.edu.ar?subject=unsubscribe" rel="noreferrer" target="_blank">php-avanzado-request@pato2.fi.mdp.edu.ar?subject=unsubscribe</a><br>
<br>
--<br>
<br>
Leonardo Tadei<br>
<a href="mailto:leonardot@pegasusnet.com.ar">leonardot@pegasusnet.com.ar</a><br>
</div></div>Pegasus Tech Supply<br>
Tel: (+54)(+223) 471-2880<br>
La Salle 1131 - Mar del Plata - Argentina<br>
<a href="http://www.pegasusnet.com.ar" rel="noreferrer" target="_blank">http://www.pegasusnet.com.ar</a><br>
<a href="http://www.grupopegasus.com" rel="noreferrer" target="_blank">http://www.grupopegasus.com</a><br>
<div class="HOEnZb"><div class="h5">Firma pública: <a href="http://www.pegasusnet.com.ar/LeonardoTadei-public.key" rel="noreferrer" target="_blank">http://www.pegasusnet.com.ar/LeonardoTadei-public.key</a><br>
<br>
_______________________________________________<br>
Lista de correo: Php-avanzado<br>
Mensajes a la lista: <a href="mailto:Php-avanzado@pato2.fi.mdp.edu.ar">Php-avanzado@pato2.fi.mdp.edu.ar</a><br>
Administración Web: <a href="http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado" rel="noreferrer" target="_blank">http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado</a><br>
Desubscripción: <a href="http://php-avanzado-request@pato2.fi.mdp.edu.ar?subject=unsubscribe" rel="noreferrer" target="_blank">php-avanzado-request@pato2.fi.mdp.edu.ar?subject=unsubscribe</a><br>
</div></div></blockquote></div><br></div>