Thanks for your very helpful reply, Jonathan. It answered my general
question but I'm left with a couple of more specific ones.
Pl. see in line.
> I do that with ~20 tables that hold data I consider 'constants'. If
> this data is unchanging, there's no need to continually hit the db.
> ( note, i do this in a persistent environment , and i use that data
> nonstop. i think its easier putting config/constant data in a db
> than an xml / hash )
Yes, that's it. It's for data that is constant, for the purposes of the
script in question. But I am v. interested to know how you do this. Do you
do a Rose call and then iterate through all the objects creating a hash?
I've now written something to do this.
> > 3. Get Rose to do 1 more elegantly in a way that I haven't
> yet found:
> > $oldsuppliers = $suppliers->(query => [obsolete => {eq =>
> 'Y'}]) or
> > something.
> > Q1: Is 3 or something like possible?
> Do you mean using the cached data, or just in general --
No I didn't mean the cached data (at least I don't think I mean that). Here
is a real example that leaves me baffled. Having already loaded all
products with Rose, I now want to see how many of a product are at a
particular location which comes from a one_to_many relationship with another
table locations. With my old hash method of doing this it would be
trivially simple : $product{locations}{$location}{stockqty}.
I'm thought it would be trivially simple with Rose too but it doesn't seem
to be.
$products = MG::Product::Manager->get_products(require_objects =>
['locations'];
So now $products is an array of all product information, just like %product
was a hash of all product info. But how do I get that stock quantity info
for a particular location out of the $products array?
$products->locations->$location->stockqty won't work of course
$products->locations(locationcode => $location)->stockqty won't work
either.
Is there a solution? Or do I just have to do another call to the DB?
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Rose-db-object mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/rose-db-object