Hero Hamada
Hero Hamada

Reputation: 55

Hybris. Export data. Passing incorrect impexscript to Exporter

I'm unable to export impexscript due to error:

de.hybris.platform.impex.jalo.ImpExException: line 3 at main script: No valid line type found for {0=, 1=user_to_test_export}

This is how I'm doing export of my data using impex

   String impexScript = String.format("INSERT Customer;uid[unique=true];\n" + 
                                                        ";%s", customer.getUid());

   ImpExMedia impExMedia = ImpExManager.getInstance().createImpExMedia("test_importexport_exportscript");
   impExMedia.setData(new ByteArrayInputStream(impexScript.getBytes()), "CustomerData", "text/csv");

   ExportConfiguration config = new ExportConfiguration(impExMedia, ImpExManager.getExportOnlyMode());
   Exporter exporter = new Exporter(config);
   exporter.export();

Upvotes: 0

Views: 364

Answers (1)

Raushan Kumar
Raushan Kumar

Reputation: 1248

User/Customer can be easily exported via groovy.

  import de.hybris.platform.impex.jalo.*
  import de.hybris.platform.impex.jalo.exp.ExportConfiguration
  import de.hybris.platform.impex.jalo.exp.Exporter
  import de.hybris.platform.impex.jalo.exp.Export


    String impexScript = String.format("INSERT Customer;uid[unique=true]");

    ImpExMedia impExMedia = ImpExManager.getInstance().createImpExMedia("test_importexport_exportscript");
    impExMedia.setData(new ByteArrayInputStream(impexScript.getBytes()), "CustomerData", "text/csv");

    ExportConfiguration config = new ExportConfiguration(impExMedia, ImpExManager.getExportOnlyMode());
    Exporter exporter = new Exporter(config);
    Export export = exporter.export();
    println(export.getExportedData())

Note: run groovy in commit mode.

Sample Output: data_export_1676281713548(data_export_1676281713548(8798244438046)) With this PK 8798244438046 ImpExMedia can be search easily in Backoffice.

Upvotes: 1

Related Questions