jon@totient.demon.co.uk writes:
I have a folder X with many ZSQLMethods inside it. To add these I had to add a connection object to folder X before hand.
However I have other folders say test1 and test2 in which I place a database connection with the same id but connecting to different databases. I am have the same schema in two databases, so I want to group the sql all together and then use the differing connections in different folders to manipulate the data differently.
so we have (as a minimum)
/X containing dbconn ; a 'fake' database connection a_sql_method ; uses dbconn /test1 dbconn ; a database connection to database1
/test2 dbconn ; a database connection to database2
Now once this is all set up you have to delete the /X/dbconn. (If you rename it though, the connection_id in the sql_method changes as well, which makes the calls from the test1/2 folders break). So delete it you must.
and then using the magic of acquistion call
/X/test1/a_sql_method
and this queries on database1
and /X/test2/a_sql_method
and this queries database2 I used a ZClass to solve a similar problem:
I defined the Z SQL method as a ZClass method. That this works, I had to add a fake (non-working) Database Connection in the product folder containing the ZClass. I then create instances of the ZClass whereever I need them. The Z SQL method will use the Database Connection in the respective acquisition context (and not the on in the product folder). Dieter