Power Builder - Dw en vista

 
Vista:

Dw en vista

Publicado por anonimo (1 intervención) el 04/01/2010 15:57:03
Saludos a todos esperando que hayan tenido un feliz ano 2010....

Ahora mi problema...
acabo de instalar el PB y sqlAnywhere en vista y cuando formo un dw no trae el nombre del propietario de la tabla...
Se que esto no es un problema al momento del desarrollo pero cuando se ponga en produccion la aplicacion con múltiples usuarios me va a decir que no existe la tabla ya que la tabla no pertenece al usuario que esté en proceso (tengo experiencia con eso...)
Sé que se le pone una bandera al PB.INI para resolver esto, mi problema es que no recuerdo cual es el dichoso parámetro en el ini y le he dado vueltas a este y no consigo localizar...
ejemplo de lo que me pasa con el dw en formato de sintaxis...

SELECT ACTA.CODIGO_ACTA,
ACTA.FECHA_ACTA,
ACTA.TIPO_ACTA
FROM ACTA

cuando debiera ser...

SELECT dba.ACTA.CODIGO_ACTA,
dba.ACTA.FECHA_ACTA,
dba.ACTA.TIPO_ACTA
FROM dba.ACTA

Gracias por la atención...
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Dw en vista

Publicado por miguell (108 intervenciones) el 16/01/2010 02:02:46
en una empresa donde trabajé usaban el usuario dba para entrar a la base de datos (para todos los usuarios), que creo que es mala práctica.

parece que las tablas las tienes que crear con un 'grupo' y no como un 'usuario' de base de datos:
------------------------
creo que buscas "PBTableOwner=" para el ini.

pero no uses prefijos en tus sentencias ni datawindows....

léete esto (puede traducirlo con google si hace falta):
http://pbdj.sys-con.com/node/140730
-------------------------------------------
For a number of reasons the requirement for such prefixes may not be desired, particular for cross-database support. An easy way to accomplish this with ASA is to use ASA's group feature. Instead of creating the database objects under a specific user ID, create a group that is allowed to connect to the database (see Figure 1) and has Resource authority (the right to create tables and other database objects). Then use that group ID to create the database objects.

The developers can then be added to that group (see Figure 2), which allows them to reference the tables in code without requiring an owner prefix.

Note that adding a member to a group that has table creation rights doesn't mean that the users themselves will inherit such rights. They only inherit the object permissions, not the authorities, of the groups they are members of. Similarly, you would want to create a group with more limited rights that you would then make the end users of the applications members of.

Since the group is creating the tables in the database, the PowerBuilder catalog tables will also get created under that group ID. You'll need to have the developers ensure that their connection profiles to the database reference the group ID as the owner of those tables (see Figure 3).

Even though membership in the group means that the owner prefix is no longer required, PowerBuilder by default includes it anyway in all of the painters. This behavior can be changed through the PBTableOwner parameter in the PBODB090.INI file (see Figure 4).

Note that this parameter affects the display of all tables in the painters, not just those for which the user is a member of the group that owns them. The TableOwner setting of the TableCriteria DBParm parameter can be used to restrict these object lists to a particular group.

(espero que sirva)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar