hace más de un año   jprieto88
Plugin: import_export_csv

Tengo una duda con el plugin import export csv, cuando se realiza la importacion de articulos, porque tiene que recorrer todos los articulos que tenga registrados en lugar de recorrer solo los que se encuentran en el archivo a importar, es que si tengo 5000 productos los recorre todos y lo hace un poco tardado.


hace más de un año   NeoRazorX   [admin]
Hola, el plugin import_export_csv realiza muchos tipos de importaciones. Necesitaría un poco más de detalle para saber en qué punto no está funcionando correctamente.
hace más de un año   juanjoseprieto88_f74d39
Ya lo verifique es en la importacion de articulos avanzada, cuando hace el post_proceso para descargar las imagenes lo hace recorriendo todos los articulos existentes y no solamente en los datos cargados del csv.

<code>
public function post_procesar() {
$continuar = FALSE;

$this->next_offset = $this->offset;
foreach ($this->articulo->all($this->offset, $this->limit2) as $art) {
$aprops = $this->articulo_prop->array_get($art->referencia);
if (isset($aprops['url_img'])) {
$this->descargar_imagen($art, $aprops['url_img']);
$this->articulo_prop->simple_delete($art->referencia, 'url_img');
}

$continuar = TRUE;
$this->next_offset++;
}

if ($continuar) {
if ($this->fuente_csv) {
$this->url_recarga = $this->fuente_csv->url() . '&pprocesar=TRUE&offset2=' . $this->next_offset;
$this->messages[] = 'Recargando...   <i class="fa fa-refresh fa-spin"></i>';
}
} else {
$this->advices[] = 'Terminado <span class="glyphicon glyphicon-ok"></span>';
$this->next_offset = 0;
}

return $continuar;
}
<code>
hace más de un año   juanjoseprieto88_f74d39
Ahora si.

 public function post_procesar() {
        $continuar = FALSE;

        $this->next_offset = $this->offset;
        foreach ($this->articulo->all($this->offset, $this->limit2) as $art) {
            $aprops = $this->articulo_prop->array_get($art->referencia);
            if (isset($aprops['url_img'])) {
                $this->descargar_imagen($art, $aprops['url_img']);
                $this->articulo_prop->simple_delete($art->referencia, 'url_img');
            }

            $continuar = TRUE;
            $this->next_offset++;
        }

        if ($continuar) {
            if ($this->fuente_csv) {
                $this->url_recarga = $this->fuente_csv->url() . '&pprocesar=TRUE&offset2=' . $this->next_offset;
                $this->messages[] = 'Recargando...   <i class="fa fa-refresh fa-spin"></i>';
            }
        } else {
            $this->advices[] = 'Terminado <span class="glyphicon glyphicon-ok"></span>';
            $this->next_offset = 0;
        }

        return $continuar;
    }
hace más de un año   NeoRazorX   [admin]
Si, lo correcto es que recorra solamente aquellos artículos que debe, pero lo implementé de esa manera por no dar acceso a la base de datos a esa clase.
Cuando migre todo el código a FacturaScripts 2018 ya lo corregiré.
Saludos.
hace más de un año   juanjoseprieto88_f74d39
Ok perfecto, por ahora ya lo cambie para que me funcione de esa manera mientras esperamos la actualizacion. gracias.
No se pueden hacer más comentarios. Mejor escribe una nueva pregunta

jprieto88

MX  usuario


OFERTA

Plugin prestashop_micro

Financiación extra

7 patrocinadores

Este mes se han realizado un total de 7 aportaciones económicas para acelerar el desarrollo del proyecto.

10% Complete

50 € este mes.

+5 € +4 votos

+25 € +20 votos




Soporte:

FacturaScripts es software libre y gratuito, pero si lo que busca es asesoramiento y soporte profesional, use la sección soporte.

  Soporte

Redes sociales:

Puede encontrarnos en las principales redes sociales. Y también en google+.





© 2013-2018 FacturaScripts