Easy Csv Import | Ing. Eugenio Bonifacio
Tags: applicazioni sms, applicazioni web, cataloghi elettronici, commercio elettronico, consulenza agenzie web, consulenza opensource, consulenza oscommerce, consulenza Drupal, consulenza Wordpress, consulenza Zend Framework, e-commerce, portali web, sistemi di prenotazione, sistemi informativi, siti web comiso, siti web ragusa, siti web sicilia, software personalizzati, sviluppo firmware, programmatore php freelance, sviluppatore zend framework, sviluppatore doctrine, programmatore zend framework, programmatore doctrine, sviluppatore cakephp

Easy Csv Import

Contribution osCommerce per l'importazione dei dati da excel/OOcalc. Permette di importare i dati e di aggiornarli a partire da un elenco CSV (comma separated values). Nel corso delle versioni è stato arricchito funzionalità avanzate, come l'importazione delle immagini, l'aggiornamento in caso di record presente, la creazione delle categorie. La contribution è rilasciata con licenza GNU/GPLv2. Attualmente è in lavorazione la versione 3 che introdurrà importanti miglioramenti.

E' possibile scaricare la contribution all'indirizzo http://addons.oscommerce.com/info/4920

*ATTENZIONE*: lo sviluppo di questa contribution è stato abbandonato, per cui si prega di non chiedere supporto in merito. Il codice è liberamente modificabile, per cui avete la possibilità di adattarlo alle vostre esigenze o a nuove versioni di oscommerce.

*ATTENTION*: the development of the contribution has been discontinued, so please don't contact me for support. The source code is freely available, you are free to adapt it to your needs or new oscommerce releases.

 

INSTALLAZIONE:

Copiare i seguenti file in oscommerce:
/admin/csv_import.php
/admin/csv_import/csv_import.ini
/admin/csv_import/data_parsing.php
/admin/includes/languages/*/csv_import.php
la cartella /admin/csv_import/csv deve avere i permessi in scrittura

se si vuole aggiungere una voce di menu in Amministrazione->Strumenti aggiungete il seguente codice in /admin/includes/boxes/tools.php

'<a href="' . tep_href_link('csv_import.php') . '" class="menuBoxContentLink">Importa Excel/Calc</a><br>' .

 

UTILIZZO:

Il file CSV deve avere i seguenti campi nello stesso ordine:

1. categoria (id o il nome, vedi in seguito)
2. modello (se unico è usato per aggiornare il record alla successiva importazione)
3. nome_en
4. nome_es
5. nome_it
6. nome_de
7. nome_nl
8. nome_fr
9. quantità
10. immagine (con estensione, attenzione alle maiuscole/minuscole su linux)
11. prezzo
12. peso
13. descrizione_en
14. descrizione_es
15. descrizione_it
16. descrizione_de
17. descrizione_nl
18. descrizione_fr
19. classe tassa (id o nome)
20. produttore ( id o nome)

la prima riga deve essere vuota o con i titoli, verrà ignorata.

si dovrà infine esportare/salvare il file in formato csv: separatore “;” (punto e virgola), delimitatore “"” (doppio apice).

 

PERSONALIZZAZIONE:

Per personalizzare i campi del file csv:

  • modificare l'associazione delle colonne (a partire da zero) e gli header delle colonne nel file di configurazione (admin/csv_import/csv_import.ini)
  • Se si vogliono operare delle conversioni prima di importare i dati è necessario aggiungere del codice alla funzione “parse_csv_data” all'interno del file admin/csv_import/data_parsing.php
  • Se non si vuole utilizzare la funzione "Svuota catalogo" basta impostare "allow_empty_db = 0" all'interno del file csv_import.ini

 

IMPORTAZIONE DELLE CATEGORIE:

A partire dalla versione 2.0.0 si possono importare le categorie a partire dal nome.

Le categorie devono essere specificate con il percorso, a partire da quella principale a finire a quella a cui il prodotto appartiene.

Per esempio, se un prodotto appartiene alla categoria "Hardware -> Graphics Cards -> AGP" si deve scrivere il percorso separato da punti:

Hardware.Graphics Cards.AGP

Si deve scrivere i nomi delle categorie esattamente e si possono inserire spazi tra i punti.

Se una o più categorie non esistono verranno create.

Si possono aggiungere più categorie, così se un prodotto appartiene a più categorie si deve scrivere come segue:

Hardware.Graphics Cards.AGP|Hardware.Graphics Cards.DVI

Il prodotto importato sarà inserito in entrambe le categorie.

 

IMPORTARE IMMAGINI REMOTE:

Si possono importare immagini remote mettendo nel campo "immagine" l'url dell'immagine da importare. Questa verrà scaricata all'interno della cartella delle immagini di oscommerce.

Ci sono due opzioni:

1) Inserire l'url del file, ad esempio http://server.esterno.com/immagine.jpg. In questo caso il nome dell'immagine sarà quello dell'immagine remota.

2) Inserire il nome e l'url: immagine.jpg|http://server.esterno.com/visualizza_immagine.php?id=qwerty . Questo caso è utile quando non si hanno file ma script che restituiscono l'immagine.

Naturalmente la seconda opzione può anche essere usata nel primo caso, per specificare un nome diverso.

 

CHANGES LOG:

v2.1.3 (02/02/2008)
- Danish language added (thanks to Olafur)

v2.1.2 (29/12/2008)
- products_date_added is set only when inserting
- products_last_modified is updated when updating

v2.1.1 (17/12/2008)
- fixed bug in data parsing (price and weight)

v2.1.0 (29/09/2008)
- minor bugs fixed
- experimental configuration GUI

v2.0.3 (18/09/2008)
- little documentation revision (thanks to Vince)

v2.0.2 (18/09/2008)
- source code revision
- added dutch language
- added allow_empty_db in config file to not allow emptying catalog

v2.0.1 (10/09/2008)
- removed some unused code
- few bugs fixes
- changed default csv separator to semicolon
- few language adjustments
- few instructions additions and adjustments
- image remote import improvement. Now can import from script url (ex /get_image.php?id=#).

v2.0.0 (07/09/2008)
- revisited import code
- added configuration by ini file
- added categories import by name (path) or id. Non existant will be created. Can even add multiple categories.
- tax class can be either id or class name, if name not exists it will be created
- manufacturer can be either id or manufacturer name, if name not exists it will be created
- added capability to import images from remote locations (php curl library needed), just fill in the link in the image field (must start with http:// )

v1.2.5 (20/11/2007)
- fixed a bug in the import process when the model field is empty.
- added support for register_globals = off
- added DEBUG mode
- added folder permissions check
- few code improvements

v1.2.4 (12/11/2007)
- added "CORRECT_FIELDS_COUNT" setting inside csv_import.php to handle the field count mismatch policy.
- german translation (thanks to dwex)

v1.2.2 (23/08/2007)
- file load error fixed (it was due by a little try that i forgot to clear, thanks to boclodoa)

v1.2.1 (28/07/2007)
- few improvements
- graphical restyling

v1.2 (18/05/2007)
- Added tax class field (you must insert its ID)
- Added manufacturer name field, the script automatically manages it: inserts it if not present in the manufacturers table.
- Now you can update the products using products_model fields as unique ID, it can handle duplicated products_model error.

v1.1
- Bug fix in languages import