当前位置: 首页 > 知识库问答 >
问题:

如何使用impex在Hybris中仅出口一种产品

柳豪
2023-03-14

我想只出口一个产品使用hybris阻抗x:
以下sql给我那个产品。

select * from products where code='489923'

我正在尝试修改导出脚本:

# ---- Extension: core ---- Type: Product ----
"#% impex.setTargetFile( ""Product.csv"" );"
insert_update Product;pk;Europe1PriceFactory_PDG(code,itemtype(code));Europe1PriceFactory_PPG(code,itemtype(code));Europe1PriceFactory_PTG(code,itemtype(code));approvalStatus(code,itemtype(code))[allownull=true];articleStatus[lang=en];buyerIDS(key(code,itemtype(code)));catalog(id)[allownull=true];catalogVersion(catalog(id),version)[unique=true,allownull=true];code[unique=true,allownull=true];contentUnit(code);creationtime[forceWrite=true,dateformat=dd.MM.yyyy hh:mm:ss];data_sheet(catalogVersion(catalog(id),version),code);deliveryTime;description[lang=en];detail(catalogVersion(catalog(id),version),code);ean;endLineNumber;erpGroupBuyer;erpGroupSupplier;europe1Discounts(pk);europe1Prices(pk);europe1Taxes(pk);galleryImages(catalogVersion(catalog(id),version),qualifier);logo(catalogVersion(catalog(id),version),code);manufacturerAID;manufacturerName;manufacturerTypeDescription[lang=en];maxOrderQuantity;minOrderQuantity;name[lang=en];normal(catalogVersion(catalog(id),version),code);numberContentUnits;offlineDate[dateformat=dd.MM.yyyy hh:mm:ss];onlineDate[dateformat=dd.MM.yyyy hh:mm:ss];order;orderQuantityInterval;others(catalogVersion(catalog(id),version),code);owner(pk)[allownull=true];picture(catalogVersion(catalog(id),version),code);priceQuantity;productOrderLimit(pk);remarks[lang=en];segment[lang=en];sequenceId;specialTreatmentClasses();startLineNumber;summary[lang=en];supplierAlternativeAID;thumbnail(catalogVersion(catalog(id),version),code);thumbnails(catalogVersion(catalog(id),version),code);unit(code);variantType(code);variants(catalogVersion(catalog(id),version),code);xmlcontent
"#% impex.exportItems( ""Product"" , false );"

如下:

# ---- Extension: core ---- Type: Product ----
"#% impex.setTargetFile( ""Product.csv"" );"
insert_update Product;pk;Europe1PriceFactory_PDG(code,itemtype(code));Europe1PriceFactory_PPG(code,itemtype(code));Europe1PriceFactory_PTG(code,itemtype(code));approvalStatus(code,itemtype(code))[allownull=true];articleStatus[lang=en];buyerIDS(key(code,itemtype(code)));catalog(id)[allownull=true];catalogVersion(catalog(id),version)[unique=true,allownull=true];code[unique=true,allownull=true];contentUnit(code);creationtime[forceWrite=true,dateformat=dd.MM.yyyy hh:mm:ss];data_sheet(catalogVersion(catalog(id),version),code);deliveryTime;description[lang=en];detail(catalogVersion(catalog(id),version),code);ean;endLineNumber;erpGroupBuyer;erpGroupSupplier;europe1Discounts(pk);europe1Prices(pk);europe1Taxes(pk);galleryImages(catalogVersion(catalog(id),version),qualifier);logo(catalogVersion(catalog(id),version),code);manufacturerAID;manufacturerName;manufacturerTypeDescription[lang=en];maxOrderQuantity;minOrderQuantity;name[lang=en];normal(catalogVersion(catalog(id),version),code);numberContentUnits;offlineDate[dateformat=dd.MM.yyyy hh:mm:ss];onlineDate[dateformat=dd.MM.yyyy hh:mm:ss];order;orderQuantityInterval;others(catalogVersion(catalog(id),version),code);owner(pk)[allownull=true];picture(catalogVersion(catalog(id),version),code);priceQuantity;productOrderLimit(pk);remarks[lang=en];segment[lang=en];sequenceId;specialTreatmentClasses();startLineNumber;summary[lang=en];supplierAlternativeAID;thumbnail(catalogVersion(catalog(id),version),code);thumbnails(catalogVersion(catalog(id),version),code);unit(code);variantType(code);variants(catalogVersion(catalog(id),version),code);xmlcontent
"#% impex.exportItems(""SELECT {K:pk} FROM {Product as K} WHERE {K:code}='489923'  , false );"

所以我只能导出一个产品。但是它给了我错误?我也不知道如何看到错误的细节。

共有2个答案

夹谷浩博
2023-03-14

尝试调用函数exportItems时,impex文件中出现错误。

基于您的Hybris版本,exportItems函数有多种形式:

    // since 3.1-RC
    public void exportItemsFlexibleSearch( String query )
    public void exportItemsFlexibleSearch( String query, Map values, List resultClasses, final boolean failOnUnknownFields, final boolean dontNeedTotal, int start, int count )
    // since 3.1-u6
    public void exportItemsFlexibleSearch( String query, int count )

在我的例子中,我使用第二种形式来出口产品:

"#% impex.exportItems( ""select {K.pk} from {Product K}"", Collections.EMPTY_MAP, Collections.singletonList( Item.class ), true, true, -1, -1 );"

亚当,在引用时要小心:

      "#% impex.exportItems(""SELECT {K:pk} FROM {Product as K} WHERE {K:code}='489923'  , false );"
雍宇定
2023-03-14

您可以在hac中运行以下导出阻抗:

insert_update Product;pk;approvalStatus(code,itemtype(code))[allownull=true];articleStatus[lang=en];buyerIDS(key(code,itemtype(code)));catalog(id)[allownull=true];catalogVersion(catalog(id),version)[unique=true,allownull=true];
"#% impex.exportItemsFlexibleSearch( ""select {pk},{approvalStatus},{articleStatus},{buyerIDS},{catalog},{catalogVersion}from {Product} where {pk}='8799737217054'"" );"

下面会有一个文件供你下载

 类似资料:
  • 我只在选择创建基本数据复选框时进行了系统更新。我注意到有很多导入的弹劾x。例如essential-data.impex、essential-data_en.impex、essential-data_de.impex、essential-data_ch.impexja、br等。将近7种不同的语言特定的弹劾x被导入。但是我想只导入它的一个版本和其他我不想导入的版本。你能给我建议如何实现这一点吗?谢谢。

  • 我试图通过Export Impex脚本从多个表中导出数据,但无法为多个表定义标题。层次结构类似于:OrderTable 有人能建议我如何实现这一点吗?

  • 我试着寻找一些例子,但它们都给我带来了问题。这是最简单的一个,看起来应该能用 我是海布里斯的新手,尤其是海布里斯·因佩克斯,我在这一点上有点不知所措,所以我当然非常感谢你的帮助。

  • 我试图导入一个与html和它出现在网页中没有类,例如这个h1类(内容-page__title)没有出现。

  • 我想导出主页(主页,有分类,横幅等导航面板的主页)和与之相关的所有数据。到目前为止,我已经成功地迁移了顶部的分类导航面板,通过导出以下CMS类型的导航面板:分类导航组件,CMSNavigationNode,CMSLinkComponent,CMSNavigationEntry。但是我不知道如何导出页面的其余部分。最好的情况是只迁移与主页相关的数据。但是如果更容易的话,我们也可以下载所有其他页面的数

  • 我目前正在试验Hybris,为一个项目做准备,我在让Impex做我想做的事情时遇到了一些困难。 示例电子商店定义ProductAddToCartComponent的CMS操作 我的目标是从addToCart元素中删除ShareOnSocial alNetworkAction。我已经尝试了几种不同的REMOVE,这主要导致Add ToCart元素本身被删除,INSERT_UPDATE只有我想保留的操