Hola Ramiro, con la regla Equal, no hay un usuario que pueda ver todas las compañias.
Daniel, al usuario que puede ver todas las compañías no podría tener un método para cambiar el &context.ciaid? Vería de a una compañía pero podría cambiarlas.
SaludosDanielSi, correcto, se podría usar la regla Equal también, salvo en el caso que planteas de poder ver todas las compañías.Saludos,Silvia2011/11/6 Daniel Binfa <parrillero@gmail.com>
Hola Silvia, y usar la regla Equal(CiaId,&context.CiaId)?Lo malo es que no se puede usar con "if", entonces si uno quiere tener un usuario que pueda ver todos los CiaId no se podría usar.Saludos, Daniel
2011/11/4 Silvia Keymetlian <silvia@genexus.com>Hola Javier, si esa sería la única forma...Saludos,Silvia2011/11/3 Javier Conde <jconde21@gmail.com>
Ok, gracias Silvia.
Existe alguna posibilidad de que desde el Pattern pueda pasarle el att CiaId instanciado con por ejemplo un &context.CiaId? o la única forma es como dices?
Gracias
Javier
De: Silvia Keymetlian [mailto:silvia@genexus.com]
Enviado el: jueves, 03 de noviembre de 2011 02:05 p.m.
Para: xev2@gxtech.com.uy
Asunto: Re: [xev2] Consulta sobre aplicación multi compañía y patterns
Javier
Ok, así como lo estás haciendo estaría bien, agregando la condición para que todos los WW muestren solo los datos de la compañía.
Lo otro que tendrías que hacer, para que no te sobreescriba las reglas al aplicar el pattern, es configurar en la TRN la propiedad Update Transaction=Do not update (en la instancia), así puedes modificar las reglas sin problemas.
Saludos,
Silvia
2011/11/3 Javier Conde <jconde21@gmail.com>
Silvia, logré lo que decías con el &context, filtrando los WW sin problemas.
Ahora bien, como hago para que se infiera &context.CiaId a la trn como parámetro? Porque resulta que tengo:
Pattern
Y en las rules
/* Generated by Work With Pattern [Start] - Do not change */
[web]
{
parm(in:&Mode, in:&cliid, in:&CiaId);
cliid = &cliid if not &cliid.IsEmpty();
noaccept(cliid) if not &cliid.IsEmpty();
CiaId = &CiaId if not &CiaId.IsEmpty();
noaccept(CiaId) if not &CiaId.IsEmpty();
}
/* Generated by Work With Pattern [End] - Do not change */
//CiaId = &WebSession.Get('ciaid');
//noaccept(ciaid);
Lo que necesito es que &CiaId esté con el valor de &Context.CiaId, se puede hacer desde el pattern? Porque si modifico lo que genera el pattern, cuando hago el build me lo vuelve a cambiar, pierdo los cambios, además de que no debería de tocar nada en ese bloque de código.
Gracias por tu ayuda!
De: Silvia Keymetlian [mailto:silvia@genexus.com]
Enviado el: jueves, 03 de noviembre de 2011 10:32 a.m.
Para: xev2@gxtech.com.uy
Asunto: Re: [xev2] Consulta sobre aplicación multi compañía y patterns
Hola Javier, esto lo puedes hacer usando el SDT Context que el pattern define por defecto.
Utilizando este SDT puedes obtener la compañía en cada objeto.
En el wiki puedes encontrar un poco más de información sobre esto (en la sección Context): http://wiki.gxtechnical.com/commwiki/servlet/hwiki?Setting+the+Work+With+Pattern,
Saludos,
Silvia
2011/11/3 Javier Conde <jconde21@gmail.com>
Estimados,
Consulta:
Estoy llevando una aplicación a multicliente, para ello voy a poner un Id en todas las tablas junto com el Id, así tengo una PK compuesta
Por ejemplo:
Usuarios
PK UsuId
PK CiaId
COMPAÑIAS
CiaId
FACTURAS
PK FacId
PK CiaId
La pregunta concreta es, quiero usar los patterns por defecto de Gx Ev2, y deseo que el CiaId este inferido por defecto siempre, la compañía se cual es porque lo averiguo cuando el usuario hace login, lo puedo guardar en la variable de sesion, pero como puedo hacer para que ya sea por defecto o manualmente por parámetro le passe el CiaId?
Gracias a todos desde ya
Javier Conde
--
Silvia Keymetlian
GeneXus Support
Follow us on | Facebook | Twitter | YouTube
--
Silvia Keymetlian
GeneXus Support
Follow us on | Facebook | Twitter | YouTube
--Silvia KeymetlianGeneXus SupportFollow us on | Facebook | Twitter | YouTube
--Silvia Keymetlian
GeneXus SupportFollow us on | Facebook | Twitter | YouTube
Has recibido este mensaje porque estás suscrito al grupo "GeneXus" de Grupos de Google.
Para publicar una entrada en este grupo, envía un correo electrónico a genexus@googlegroups.com.
Para anular tu suscripción a este grupo, envía un correo electrónico a genexus+unsubscribe@googlegroups.com
Para tener acceso a más opciones, visita el grupo en http://groups.google.com/group/genexus?hl=es.
0 Response to "Re: [xev2] Consulta sobre aplicación multi compañía y patterns"
Publicar un comentario