Update custom attribute when product data updated through import












0















We import product data using a feed we get from a wholesaler - one full import a week that merges product data and a daily import that only updates price and stock data. I have created a custom attribute called price_incvat and I want this to be populated with the price plus 20% once the product data is updated by the import.



I tried to do this by creating an observer that would update the attribute on the catalog_product_save_before event (see here) without realising that this event would not be triggered by the import. I have tried to use the same code with various other events as listed here but without success. I feel I have been barking up the wrong tree?



Can anyone suggest a better tree to bark up?










share|improve this question
















bumped to the homepage by Community 40 mins ago


This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.
















  • are you using magmi or the default magento import?

    – NathanielR
    Jun 19 '15 at 11:05











  • I am using a module supplied by Stock in the Channel that imports their own datafeed.

    – Alistair67
    Jun 19 '15 at 11:06











  • Check for events fired by their module if they fire any and attach your observer there. another possible solution would be to modify their extension to update your attribute after it updates the price

    – NathanielR
    Jun 19 '15 at 11:21













  • Thanks. In their config.xml they attach an observer to sinchimport_model_import_after so I attached mine to that too. Doesn't seem to work. Is there a problem with my observer (see link to previous post above)?

    – Alistair67
    Jun 19 '15 at 12:02











  • Actually, thinking about it, would that event only happen after the entire import, meaning that my observer would be useless at that point? Is there anywhere other than config.xml I could check for events?

    – Alistair67
    Jun 19 '15 at 12:32
















0















We import product data using a feed we get from a wholesaler - one full import a week that merges product data and a daily import that only updates price and stock data. I have created a custom attribute called price_incvat and I want this to be populated with the price plus 20% once the product data is updated by the import.



I tried to do this by creating an observer that would update the attribute on the catalog_product_save_before event (see here) without realising that this event would not be triggered by the import. I have tried to use the same code with various other events as listed here but without success. I feel I have been barking up the wrong tree?



Can anyone suggest a better tree to bark up?










share|improve this question
















bumped to the homepage by Community 40 mins ago


This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.
















  • are you using magmi or the default magento import?

    – NathanielR
    Jun 19 '15 at 11:05











  • I am using a module supplied by Stock in the Channel that imports their own datafeed.

    – Alistair67
    Jun 19 '15 at 11:06











  • Check for events fired by their module if they fire any and attach your observer there. another possible solution would be to modify their extension to update your attribute after it updates the price

    – NathanielR
    Jun 19 '15 at 11:21













  • Thanks. In their config.xml they attach an observer to sinchimport_model_import_after so I attached mine to that too. Doesn't seem to work. Is there a problem with my observer (see link to previous post above)?

    – Alistair67
    Jun 19 '15 at 12:02











  • Actually, thinking about it, would that event only happen after the entire import, meaning that my observer would be useless at that point? Is there anywhere other than config.xml I could check for events?

    – Alistair67
    Jun 19 '15 at 12:32














0












0








0








We import product data using a feed we get from a wholesaler - one full import a week that merges product data and a daily import that only updates price and stock data. I have created a custom attribute called price_incvat and I want this to be populated with the price plus 20% once the product data is updated by the import.



I tried to do this by creating an observer that would update the attribute on the catalog_product_save_before event (see here) without realising that this event would not be triggered by the import. I have tried to use the same code with various other events as listed here but without success. I feel I have been barking up the wrong tree?



Can anyone suggest a better tree to bark up?










share|improve this question
















We import product data using a feed we get from a wholesaler - one full import a week that merges product data and a daily import that only updates price and stock data. I have created a custom attribute called price_incvat and I want this to be populated with the price plus 20% once the product data is updated by the import.



I tried to do this by creating an observer that would update the attribute on the catalog_product_save_before event (see here) without realising that this event would not be triggered by the import. I have tried to use the same code with various other events as listed here but without success. I feel I have been barking up the wrong tree?



Can anyone suggest a better tree to bark up?







magento-1.9 event-observer import product-attribute






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Apr 13 '17 at 12:55









Community

1




1










asked Jun 19 '15 at 10:55









Alistair67Alistair67

108214




108214





bumped to the homepage by Community 40 mins ago


This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.







bumped to the homepage by Community 40 mins ago


This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.















  • are you using magmi or the default magento import?

    – NathanielR
    Jun 19 '15 at 11:05











  • I am using a module supplied by Stock in the Channel that imports their own datafeed.

    – Alistair67
    Jun 19 '15 at 11:06











  • Check for events fired by their module if they fire any and attach your observer there. another possible solution would be to modify their extension to update your attribute after it updates the price

    – NathanielR
    Jun 19 '15 at 11:21













  • Thanks. In their config.xml they attach an observer to sinchimport_model_import_after so I attached mine to that too. Doesn't seem to work. Is there a problem with my observer (see link to previous post above)?

    – Alistair67
    Jun 19 '15 at 12:02











  • Actually, thinking about it, would that event only happen after the entire import, meaning that my observer would be useless at that point? Is there anywhere other than config.xml I could check for events?

    – Alistair67
    Jun 19 '15 at 12:32



















  • are you using magmi or the default magento import?

    – NathanielR
    Jun 19 '15 at 11:05











  • I am using a module supplied by Stock in the Channel that imports their own datafeed.

    – Alistair67
    Jun 19 '15 at 11:06











  • Check for events fired by their module if they fire any and attach your observer there. another possible solution would be to modify their extension to update your attribute after it updates the price

    – NathanielR
    Jun 19 '15 at 11:21













  • Thanks. In their config.xml they attach an observer to sinchimport_model_import_after so I attached mine to that too. Doesn't seem to work. Is there a problem with my observer (see link to previous post above)?

    – Alistair67
    Jun 19 '15 at 12:02











  • Actually, thinking about it, would that event only happen after the entire import, meaning that my observer would be useless at that point? Is there anywhere other than config.xml I could check for events?

    – Alistair67
    Jun 19 '15 at 12:32

















are you using magmi or the default magento import?

– NathanielR
Jun 19 '15 at 11:05





are you using magmi or the default magento import?

– NathanielR
Jun 19 '15 at 11:05













I am using a module supplied by Stock in the Channel that imports their own datafeed.

– Alistair67
Jun 19 '15 at 11:06





I am using a module supplied by Stock in the Channel that imports their own datafeed.

– Alistair67
Jun 19 '15 at 11:06













Check for events fired by their module if they fire any and attach your observer there. another possible solution would be to modify their extension to update your attribute after it updates the price

– NathanielR
Jun 19 '15 at 11:21







Check for events fired by their module if they fire any and attach your observer there. another possible solution would be to modify their extension to update your attribute after it updates the price

– NathanielR
Jun 19 '15 at 11:21















Thanks. In their config.xml they attach an observer to sinchimport_model_import_after so I attached mine to that too. Doesn't seem to work. Is there a problem with my observer (see link to previous post above)?

– Alistair67
Jun 19 '15 at 12:02





Thanks. In their config.xml they attach an observer to sinchimport_model_import_after so I attached mine to that too. Doesn't seem to work. Is there a problem with my observer (see link to previous post above)?

– Alistair67
Jun 19 '15 at 12:02













Actually, thinking about it, would that event only happen after the entire import, meaning that my observer would be useless at that point? Is there anywhere other than config.xml I could check for events?

– Alistair67
Jun 19 '15 at 12:32





Actually, thinking about it, would that event only happen after the entire import, meaning that my observer would be useless at that point? Is there anywhere other than config.xml I could check for events?

– Alistair67
Jun 19 '15 at 12:32










2 Answers
2






active

oldest

votes


















0














Try with one of these events



catalog_product_attribute_update_before //when attribut is updated
catalog_product_prepare_save //when product is saved





share|improve this answer


























  • Thanks for the suggestion. I've tried them now but no dice.

    – Alistair67
    Jun 19 '15 at 13:05











  • I doubt these two events would fire as the module is using SQL code to update the Database

    – NathanielR
    Jun 21 '15 at 7:06



















0














I think there are two ways to go -




  1. Extend the module from Stock in the Channel to calculate
    price_incvat and save that value in the SQL call.


  2. Run a script after the import that calculates
    price_incvat and saves it.



If Stock in the Channel fires an event once at the end of the import, you could use an observer to handle triggering a script that would set price_incvat.



Extending the module and adding price_incvat to the SQL would probably be the least amount of code, and you get the performance benefit of SQL.






share|improve this answer
























  • Ideally the SQL option would be the way to go but I am finding it hard to understand the code in the relevant functions (see comment above posted today)

    – Alistair67
    Jun 25 '15 at 13:21













  • Pursuing option 2, I found a script elsewhere that I could modify to do the job and it works. I have my observer, now I just need the no doubt simple piece of code that it can use to fire the script. Tried googling it but no joy. Can you help?

    – Alistair67
    Jun 26 '15 at 9:58











  • Guess what. I just found the extremely simple way of exporting the inc VAT price through Simple Google Shopping that I completely missed in the documentation. I didn't need to do any of this. None of it. Deeply embarrassing. Thanks for all your help though, you and @NathanielR both.

    – Alistair67
    Jun 26 '15 at 12:52











  • Well, sometimes that happens! We have all been there. If you think the solution can be used by others, put it here as an answer and mark it accepted please.

    – AreDubya
    Jun 26 '15 at 18:51











Your Answer








StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "479"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});

function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});














draft saved

draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmagento.stackexchange.com%2fquestions%2f71565%2fupdate-custom-attribute-when-product-data-updated-through-import%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























2 Answers
2






active

oldest

votes








2 Answers
2






active

oldest

votes









active

oldest

votes






active

oldest

votes









0














Try with one of these events



catalog_product_attribute_update_before //when attribut is updated
catalog_product_prepare_save //when product is saved





share|improve this answer


























  • Thanks for the suggestion. I've tried them now but no dice.

    – Alistair67
    Jun 19 '15 at 13:05











  • I doubt these two events would fire as the module is using SQL code to update the Database

    – NathanielR
    Jun 21 '15 at 7:06
















0














Try with one of these events



catalog_product_attribute_update_before //when attribut is updated
catalog_product_prepare_save //when product is saved





share|improve this answer


























  • Thanks for the suggestion. I've tried them now but no dice.

    – Alistair67
    Jun 19 '15 at 13:05











  • I doubt these two events would fire as the module is using SQL code to update the Database

    – NathanielR
    Jun 21 '15 at 7:06














0












0








0







Try with one of these events



catalog_product_attribute_update_before //when attribut is updated
catalog_product_prepare_save //when product is saved





share|improve this answer















Try with one of these events



catalog_product_attribute_update_before //when attribut is updated
catalog_product_prepare_save //when product is saved






share|improve this answer














share|improve this answer



share|improve this answer








edited Jun 19 '15 at 13:09









Marius

166k28317677




166k28317677










answered Jun 19 '15 at 12:44









Thomas DressCodesThomas DressCodes

112




112













  • Thanks for the suggestion. I've tried them now but no dice.

    – Alistair67
    Jun 19 '15 at 13:05











  • I doubt these two events would fire as the module is using SQL code to update the Database

    – NathanielR
    Jun 21 '15 at 7:06



















  • Thanks for the suggestion. I've tried them now but no dice.

    – Alistair67
    Jun 19 '15 at 13:05











  • I doubt these two events would fire as the module is using SQL code to update the Database

    – NathanielR
    Jun 21 '15 at 7:06

















Thanks for the suggestion. I've tried them now but no dice.

– Alistair67
Jun 19 '15 at 13:05





Thanks for the suggestion. I've tried them now but no dice.

– Alistair67
Jun 19 '15 at 13:05













I doubt these two events would fire as the module is using SQL code to update the Database

– NathanielR
Jun 21 '15 at 7:06





I doubt these two events would fire as the module is using SQL code to update the Database

– NathanielR
Jun 21 '15 at 7:06













0














I think there are two ways to go -




  1. Extend the module from Stock in the Channel to calculate
    price_incvat and save that value in the SQL call.


  2. Run a script after the import that calculates
    price_incvat and saves it.



If Stock in the Channel fires an event once at the end of the import, you could use an observer to handle triggering a script that would set price_incvat.



Extending the module and adding price_incvat to the SQL would probably be the least amount of code, and you get the performance benefit of SQL.






share|improve this answer
























  • Ideally the SQL option would be the way to go but I am finding it hard to understand the code in the relevant functions (see comment above posted today)

    – Alistair67
    Jun 25 '15 at 13:21













  • Pursuing option 2, I found a script elsewhere that I could modify to do the job and it works. I have my observer, now I just need the no doubt simple piece of code that it can use to fire the script. Tried googling it but no joy. Can you help?

    – Alistair67
    Jun 26 '15 at 9:58











  • Guess what. I just found the extremely simple way of exporting the inc VAT price through Simple Google Shopping that I completely missed in the documentation. I didn't need to do any of this. None of it. Deeply embarrassing. Thanks for all your help though, you and @NathanielR both.

    – Alistair67
    Jun 26 '15 at 12:52











  • Well, sometimes that happens! We have all been there. If you think the solution can be used by others, put it here as an answer and mark it accepted please.

    – AreDubya
    Jun 26 '15 at 18:51
















0














I think there are two ways to go -




  1. Extend the module from Stock in the Channel to calculate
    price_incvat and save that value in the SQL call.


  2. Run a script after the import that calculates
    price_incvat and saves it.



If Stock in the Channel fires an event once at the end of the import, you could use an observer to handle triggering a script that would set price_incvat.



Extending the module and adding price_incvat to the SQL would probably be the least amount of code, and you get the performance benefit of SQL.






share|improve this answer
























  • Ideally the SQL option would be the way to go but I am finding it hard to understand the code in the relevant functions (see comment above posted today)

    – Alistair67
    Jun 25 '15 at 13:21













  • Pursuing option 2, I found a script elsewhere that I could modify to do the job and it works. I have my observer, now I just need the no doubt simple piece of code that it can use to fire the script. Tried googling it but no joy. Can you help?

    – Alistair67
    Jun 26 '15 at 9:58











  • Guess what. I just found the extremely simple way of exporting the inc VAT price through Simple Google Shopping that I completely missed in the documentation. I didn't need to do any of this. None of it. Deeply embarrassing. Thanks for all your help though, you and @NathanielR both.

    – Alistair67
    Jun 26 '15 at 12:52











  • Well, sometimes that happens! We have all been there. If you think the solution can be used by others, put it here as an answer and mark it accepted please.

    – AreDubya
    Jun 26 '15 at 18:51














0












0








0







I think there are two ways to go -




  1. Extend the module from Stock in the Channel to calculate
    price_incvat and save that value in the SQL call.


  2. Run a script after the import that calculates
    price_incvat and saves it.



If Stock in the Channel fires an event once at the end of the import, you could use an observer to handle triggering a script that would set price_incvat.



Extending the module and adding price_incvat to the SQL would probably be the least amount of code, and you get the performance benefit of SQL.






share|improve this answer













I think there are two ways to go -




  1. Extend the module from Stock in the Channel to calculate
    price_incvat and save that value in the SQL call.


  2. Run a script after the import that calculates
    price_incvat and saves it.



If Stock in the Channel fires an event once at the end of the import, you could use an observer to handle triggering a script that would set price_incvat.



Extending the module and adding price_incvat to the SQL would probably be the least amount of code, and you get the performance benefit of SQL.







share|improve this answer












share|improve this answer



share|improve this answer










answered Jun 19 '15 at 16:07









AreDubyaAreDubya

1,22911022




1,22911022













  • Ideally the SQL option would be the way to go but I am finding it hard to understand the code in the relevant functions (see comment above posted today)

    – Alistair67
    Jun 25 '15 at 13:21













  • Pursuing option 2, I found a script elsewhere that I could modify to do the job and it works. I have my observer, now I just need the no doubt simple piece of code that it can use to fire the script. Tried googling it but no joy. Can you help?

    – Alistair67
    Jun 26 '15 at 9:58











  • Guess what. I just found the extremely simple way of exporting the inc VAT price through Simple Google Shopping that I completely missed in the documentation. I didn't need to do any of this. None of it. Deeply embarrassing. Thanks for all your help though, you and @NathanielR both.

    – Alistair67
    Jun 26 '15 at 12:52











  • Well, sometimes that happens! We have all been there. If you think the solution can be used by others, put it here as an answer and mark it accepted please.

    – AreDubya
    Jun 26 '15 at 18:51



















  • Ideally the SQL option would be the way to go but I am finding it hard to understand the code in the relevant functions (see comment above posted today)

    – Alistair67
    Jun 25 '15 at 13:21













  • Pursuing option 2, I found a script elsewhere that I could modify to do the job and it works. I have my observer, now I just need the no doubt simple piece of code that it can use to fire the script. Tried googling it but no joy. Can you help?

    – Alistair67
    Jun 26 '15 at 9:58











  • Guess what. I just found the extremely simple way of exporting the inc VAT price through Simple Google Shopping that I completely missed in the documentation. I didn't need to do any of this. None of it. Deeply embarrassing. Thanks for all your help though, you and @NathanielR both.

    – Alistair67
    Jun 26 '15 at 12:52











  • Well, sometimes that happens! We have all been there. If you think the solution can be used by others, put it here as an answer and mark it accepted please.

    – AreDubya
    Jun 26 '15 at 18:51

















Ideally the SQL option would be the way to go but I am finding it hard to understand the code in the relevant functions (see comment above posted today)

– Alistair67
Jun 25 '15 at 13:21







Ideally the SQL option would be the way to go but I am finding it hard to understand the code in the relevant functions (see comment above posted today)

– Alistair67
Jun 25 '15 at 13:21















Pursuing option 2, I found a script elsewhere that I could modify to do the job and it works. I have my observer, now I just need the no doubt simple piece of code that it can use to fire the script. Tried googling it but no joy. Can you help?

– Alistair67
Jun 26 '15 at 9:58





Pursuing option 2, I found a script elsewhere that I could modify to do the job and it works. I have my observer, now I just need the no doubt simple piece of code that it can use to fire the script. Tried googling it but no joy. Can you help?

– Alistair67
Jun 26 '15 at 9:58













Guess what. I just found the extremely simple way of exporting the inc VAT price through Simple Google Shopping that I completely missed in the documentation. I didn't need to do any of this. None of it. Deeply embarrassing. Thanks for all your help though, you and @NathanielR both.

– Alistair67
Jun 26 '15 at 12:52





Guess what. I just found the extremely simple way of exporting the inc VAT price through Simple Google Shopping that I completely missed in the documentation. I didn't need to do any of this. None of it. Deeply embarrassing. Thanks for all your help though, you and @NathanielR both.

– Alistair67
Jun 26 '15 at 12:52













Well, sometimes that happens! We have all been there. If you think the solution can be used by others, put it here as an answer and mark it accepted please.

– AreDubya
Jun 26 '15 at 18:51





Well, sometimes that happens! We have all been there. If you think the solution can be used by others, put it here as an answer and mark it accepted please.

– AreDubya
Jun 26 '15 at 18:51


















draft saved

draft discarded




















































Thanks for contributing an answer to Magento Stack Exchange!


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmagento.stackexchange.com%2fquestions%2f71565%2fupdate-custom-attribute-when-product-data-updated-through-import%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

What other Star Trek series did the main TNG cast show up in?

Berlina muro

Berlina aerponto