Ciao mi rivolgo a te per risolvere un problema con le query in magento che utilizza il framework EAV da come ho inteso.
Nello specifico vorrei sapere come estrarre il colore e la taglia per un determinato prodotto (entity) ed i suoi figli (child).
Da come ho inteso il pettine tagli e colori si trova in EAV_attribute_option_value. Ti giro la mia query:
select EAOV.value, CPR.child_id
FROM eav_attribute_option_value EAOV
Left Join eav_attribute_option EAO ON EAO.option_id=EAOV.option_id
Left Join catalog_product_entity_int CPEI ON CPEI.attribute_id=EAO.attribute_id
Left Join catalog_product_relation CPR ON CPR.parent_id=CPEI.entity_id
WHERE CPEI.entity_id = 25639 and CPEI.attribute_id=143 and EAOV.option_id IN (5,7,8,9,10,11,12)
grazie.
Ciao,
posso chiederti quale è lo scopo?
Te lo chiederei perché in Magento non è mai una buona dea fare query dirette, andrebbero valutati altri approcci.
sto realizzando dei cruscotti statistici per la visualizzazione di informazioni prese dal db di magento, tipo n° utenti registrati nel mese, volumi di vendita, volumi di vendita per tagli e colori...
quindi?
nessuno di voi può suggerirmi una soluzione?
ho letto anche della connessione lato soap, parliamo di un web service che potrebbe restituirmi questi dati,
che ne pensate?
grazie.
Tramite chiamate SOAP lo puoi fare senza grossi problemi, l'unica nota è che sono chiamate piuttosto lente.
Puoi trovare una reference guide qui:
http://devdocs.magento.com/guides/m1x/api/soap/catalog/catalogProduct/catalogProduct.html
Alternativamente potresti creare un modulo che ti esporti i dati utilizzando i modelli interni di Magento, che forse è la via migliore.
Di base si tratterebbe di ottenere una lista di prodotti utilizzando:
$product = Mage::getModel('catalog/product')->load($productSku, 'sku'); $simpleProducts = $product->getTypeInstance(true)->getUsedProducts(null, $product);
A questo punto avresti l'elenco dei prodotti semplici da cui estrarre le taglie.
ops...
io uso C#, non trovo riferimenti rispetto alle funzioni che hai messo nel codice...