Jump to content

Problema attributi nell’importazione da csv


andreamiky

Recommended Posts

Ciao a tutti,
dopo essere riusciti ad importare correttamente i prodotti, ora stiamo tentando di importare anche gli attributi essendo tantissimi.
Il problema è nella colonna "Opzioni" (es: Gusto:Arancia), tutte le volte che importo il csv, il sistema non usa gli attributi già definiti ma ne inserisce sempre dei nuovi con lo stesso nome, così mi ritrovo gli attributi più volte. Ovviamente se seleziono "Elimina tutti attributi Prima dell'importazione? " cancella tutti gli attributi di qualsiasi tipo.
Grazie 1000

:gulp:

Link to comment
Share on other sites

Ciao a tutti,
dopo essere riusciti ad importare correttamente i prodotti, ora stiamo tentando di importare anche gli attributi essendo tantissimi.
Il problema è nella colonna "Opzioni" (es: Gusto:Arancia), tutte le volte che importo il csv, il sistema non usa gli attributi già definiti ma ne inserisce sempre dei nuovi con lo stesso nome, così mi ritrovo gli attributi più volte. Ovviamente se seleziono "Elimina tutti attributi Prima dell'importazione? " cancella tutti gli attributi di qualsiasi tipo.
Grazie 1000

:gulp:


Cerco di capire, tu vendi prodotti che possono avere + sapori, passami il termine, e hai già fatto l'importazione degli articoli e ora vuoi assegnarli i possibili aromi, spero di aver capito giusto.

Se è così andando a rigor di logica il DB avrà una tabella dei possibili attributi, mentre gli articoli avranno un richiamo sui possibili attributi.

Se la mia supposizione è corretta importerai nella tabella attributi tutte le possibili variabili, ma agli articoli dovrai dare solo l'identificativo degli attributi, altrimenti a rigor di logica in DB continuerà an incrementare gli attributi duplicandoli.

Ciao

Sèvero
Link to comment
Share on other sites

Ciao Severo!
La tua interpretazione è corretta, ed è esattamente quello che succede, ma il problema allora è: come caspita faccio a sapere l'identificativo dell'attributo? Come lo devo inserire nel file.csv nella colonna "opzioni"'? Esempio "Gusto:identificativo"?

CIAOOO

Link to comment
Share on other sites

Ad occhio e croce, da verificare, la tabella attributi assegnerà un ID univoco che è la chiave della tabellaad ognuno, mentre la tabella prodotti richiamerà quello/i attributi tramite l'ID atributi per assemblare il tutto.

Io proverei a popolare la tabella attributi con tutte le possibili variabili, poi la esporto/stampo per vedere per ogni attributo quale sia il suo identificativo.
A quel punto preparerei un file per modificare la tabella prodotti con l'ID dell'attributo.

Naturalmente il tutto come ragionamento logico, magari qualcuno più esperto del codice di PS potrà darti consigli operativi + corretti.

Ciao

Sèvero

Link to comment
Share on other sites

Ciao, purtroppo ho provato ad inserire l'id dell'attributo al posto della descrizione testuale (es:Gusto:1, dove 1=Arancia) durante l'importazione da csv degli attributi. Nell'esempio in particolare mi crea un nuovo attributo che si chiama "1" e non appare "Arancia" tra le scelte possibili come avrei voluto.
Avete altri consigli per favore?

Grazie
:roll:

Link to comment
Share on other sites

Ciao, purtroppo ho provato ad inserire l'id dell'attributo al posto della descrizione testuale (es:Gusto:1, dove 1=Arancia) durante l'importazione da csv degli attributi. Nell'esempio in particolare mi crea un nuovo attributo che si chiama "1" e non appare "Arancia" tra le scelte possibili come avrei voluto.
Avete altri consigli per favore?

Grazie
:roll:


Domanda veloce stai facendo Insert o UpDate?

Ciao

Sèvero
Link to comment
Share on other sites

dopo lungo penare... ci sembra che il problema si possa ridurre alla sola funzione attributeImport() chiamata in adminimport.php, la quale dovrebbe caricare in un array gli attributi se presenti. Sembra che gli attributi esistenti non vengano trovati quindi ogni volta vengono aggiunti di nuovo.

foreach (Attribute::getAttributes($defaultLanguage) as $attribute)
$attributes[$attribute['attribute']] = $attribute['id_attribute'];

quindi il problema dovrebbere essre nella funzione getAttributes($defaultLanguage) che non trova gli attributi già presenti nel DB.
Mentre la funzione getAttributesGroups($defaultLanguage) è corretta e trova corettamente i gruppi.

:blank:

Link to comment
Share on other sites

  • 4 weeks later...

Il problema della duplicazione nella lista attributi si risolve modificando come segue la prima parte della funzione, in realtà sostituendo name al posto di attribute.

public function attributeImport()
{
$defaultLanguage = Configuration::get('PS_LANG_DEFAULT');
$groups = array();
foreach (AttributeGroup::getAttributesGroups($defaultLanguage) as $group)
$groups[$group['name']] = $group['id_attribute_group'];
$attributes = array();
foreach (Attribute::getAttributes($defaultLanguage) as $attribute)
{
$attributes[$attribute['name']] = $attribute['id_attribute'];

}

nel file AdminImport.php
----------

Rimane invece il problema che inserendo un prodotto con l'intenzione di fare un update delle quantità ad un prodotto con gli stessi identici attributi, viene generato un duplicato invece che fatto l'update al prodotto esistente.
Considerando che nell'importanzione non è possibile dichiare l'ID specifico del prodotto attributo (id_product_attribute), ma solo l'ID del prodotto <>, la cosa è abbastanza rognosa e non ho trovato una strategia.
Se qualcuno ha da dare suggerimenti...

Link to comment
Share on other sites

  • 8 months later...

Anche io con lo stesso problema, credo di non aver capito bene come devo cambiare il file per non avere attributi duplicati durante l'importazione. Ho capito qual'è la funzione che si occupa di ciò ma non ho ben chiaro quali parti di codice devo cambiare

Link to comment
Share on other sites

ciao, ho sentito parlare molto purtroppo di questo problema e credo che sia proprio un bug.

attualmente sul programma prestamag, visto che ho integrato la funzionalita' attributi, non si pone il problema in quanto rigenera ogni volta il csv che viene caricato poi da zero su prestashop (gestendo tutto il programma non ho il problema)

Ma capisco che puo' essere fastidioso per chi non utilizza l'applicativo, ogni volta dover ricreare intero csv attributi.

ho cercato su internet come deve essere creato il csv, ma in tutti i casi ho trovato riscontro positivo a quanto gia' facevo.

Pertanto attualmente ritengo che sia un problema interno di prestashop, qualche bug.

Link to comment
Share on other sites

Ciao ragazzi anche io ho problemi con gli attributi e stavo provando a importarli per velocizzare il lavoro di migliaia di articoli ma appena ho letto 2-3 forum mi sono rassegnato, io volevo inoltre velocizzare l'assegnazione delle immagini (miniature) degli attributi e non so come fare ogni volta che inserisco un prodotto ad esempio una t-shirt di 6 taglie diverse e 30 colori diversi, assegnarli le immagini è un incubo
Vi è capitato a voi? Ciao

Link to comment
Share on other sites

sto cercando anch'io di capirci qualcosa in questa selva di ID.
premetto che ho conoscenza molto limitata di sql e php, ma magari con gli occhi di un "u"tonto vedo qcosa che vi fa' scattare la scintilla :)
Per me e' da decidere a priori se si vogliono immettere o updatare i dati e lavorare su product_attribute (ho omesso alcuni campi).

id_product_attribute   id_product    wholesale_price   price   quantity
            44                            10                        0             0            4
            45                            10                        0             0            4

Allora : se l' ID_product_attribute e' 44,
guardando nel DB product_attribute_combination trovo

id_attribute    id_product_attribute
        27                44
        28                45

e risalendo ancora a ritroso in
attribute_language trovo

27 e' l' attributo A
28 e' l' attributo B

ed entrambi sono legati in
Attribute con il gruppo 1 ;

attribute_group_language mi dice che il gruppo 1 si chiama AA

quindi quel 44 e 45 in product_attribute dicono a PShop che l' articolo di ID 10 appartiene al gruppo AA e ha attributi A e B.

fin qui e' tutto giusto ?

id_product_attribute dovrebbe essere un numero sequenziale creato da PShop, come per l'Id prodotto etc etc etc

Quello che ho in mente io, e dopo questa ulteriore analisi (sempre che sia giusta) mi sembri essere una possibile soluzione, e' un foglio Excel "automatizzato".
Mi spiego meglio e qui torniamo al punto iniziale di O update O Nuovi Articoli.
Partiamo con l' Update e per fare questo da nessuna parte ho letto di consigliare di mettere il sito Off-line, altrimenti se mentre modifico, Tizio mi compra un articolo, da una parte sono contento ma dall' altra mi sballa tutto.

Per la gestione del prodotto (quantita' e variabili), se non sbaglio si dovrebbero esportare tutti i product_* . ci sono latri file che vengono interessati ?
Esporto i file e li leggo in una cartella di Excell, che ho predisposto con maschere di aggiornamento con caselle di input che leggono i dati da elenchi predisposti con gli stessi dati di Pshop e che sono creati, magari in automatico, esportando che ne so' le categorie piuttosto che gli attributi e gruppi.
in questo modo quando leggo un prodotto in questa maschera, ho la possibilita' di modificare i dati con dati reali e come diceva Manuel non sarebbe un problema in questo ambiente creare una tabella side che riporti i vecchi 44 e 45 legati poi ad attributi & C.

Per l' export devo andare a toccare solamente il file product_attribute per quanto riguardo i prodotti con varianti mentre in product si mette tutto il resto.
Excell e' in grado con macro di spostare le colonne necessarie in un file che puo' essere esportato cpome CSV per poi updatare Pshop (l' SQL permette l' UPDATE, giusto ??? )
Per l' immisione di nuovi record, penso si possa seguire la stessa prassi, ma senza esporatre i dati.
I dati vengono creati prima in excell usando attributi e quant'altro e poi i vari file vengono spostati su PShop in append

Di programmazione Excell qualcosa, qualcosina mastico quindi se mi dite che e' una cosa fattibile, mentre con un occhio guardo le olimpiadi, con l' altro provo a ragionarci su.
Solo pero' se mi dite che il ragionamento di cui sopra fila se no' ... vi autorizzo a cancellare il post :) :)

Link to comment
Share on other sites

Per risolvere il problema io ho scaricato la versione Alpha 2. Ho preso il file AdminImport.php e l'ho sostituito a quello delle versione 1.2.5 funziona benissimo. Ora gli attributi già esistenti non vengono duplicati.

A presto

Link to comment
Share on other sites

  • 2 weeks later...

Ho fatto di nuovo la prova e me li duplica ugualmente, il campo opzioni l'ho compilato in questo modo: Color:Rosso,Size:S , ho provato a scirverlo anche in inglese ma niente. Siccome non lo gestisco io il sito voglio verificare se il file AdminImport.php è stato sostituito, in quale cartella si trova questo file?

Link to comment
Share on other sites

  • 4 weeks later...

Ho un problema con l'import, ho sostituito il file AdminImport.php della versione 1.3.0.3 e l'import di attributi funziona però l'import di prodotti mi da dei problemi: i tags non me li vuole importare e l'ultima immagine di ogni prodotto non la carica correttamente. Ho messo il file AdminImport.php della versione 1.2.5.0 e l'import dei prodotti funziona bene mentre gli attributi me li duplica.
Qualcuno sa come si può fare??

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...