How to get value from sales_flat_order_item table using quote_item_id?I want to alter the new custom fields to sales_flat_order and sales_flat_order_item tableHow to get collection from table 'sales_flat_creditmemo_item'save custom field from sales_flat_order_item to sales_flat_orderHow can I get special price of an ordered product in “sales_flat_order_item” tableget cart items from custom column valueMagento model not fetching dataUpdate “sales_flat_order_item” table when making an orderHow do i get to Magento Table value using APIGet custom values from sales_flat_order_item table in magento?Bundle items are missing from sales_flat_order_item table. Magento 1.9
How to not starve gigantic beasts
Is there any official lore on the Far Realm?
a sore throat vs a strep throat vs strep throat
Can SQL Server create collisions in system generated constraint names?
What happens to Mjolnir (Thor's hammer) at the end of Endgame?
"You've called the wrong number" or "You called the wrong number"
How could Tony Stark make this in Endgame?
How did Captain America manage to do this?
Phrase for the opposite of "foolproof"
How to display Aura JS Errors Lightning Out
Mistake in years of experience in resume?
Rivers without rain
Providing evidence of Consent of Parents for Marriage by minor in England in early 1800s?
Why does Mind Blank stop the Feeblemind spell?
Don’t seats that recline flat defeat the purpose of having seatbelts?
Is there a way to generate a list of distinct numbers such that no two subsets ever have an equal sum?
Why didn't the Space Shuttle bounce back into space as many times as possible so as to lose a lot of kinetic energy up there?
infinitely many negative and infinitely many positive numbers
Map of water taps to fill bottles
Why did C use the -> operator instead of reusing the . operator?
How do I reattach a shelf to the wall when it ripped out of the wall?
Which big number is bigger?
Can I criticise the more senior developers around me for not writing clean code?
What is the most expensive material in the world that could be used to create Pun-Pun's lute?
How to get value from sales_flat_order_item table using quote_item_id?
I want to alter the new custom fields to sales_flat_order and sales_flat_order_item tableHow to get collection from table 'sales_flat_creditmemo_item'save custom field from sales_flat_order_item to sales_flat_orderHow can I get special price of an ordered product in “sales_flat_order_item” tableget cart items from custom column valueMagento model not fetching dataUpdate “sales_flat_order_item” table when making an orderHow do i get to Magento Table value using APIGet custom values from sales_flat_order_item table in magento?Bundle items are missing from sales_flat_order_item table. Magento 1.9
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;
Using the sales_order_place_after
event in my custom Observer.
I have the quote_item_id
value (example 324).
How to get the corresponding item_id
value from the sales_flat_order_item
table?
I am able to successfully use getCollection method, but it returns the order item as an array.
($sales_order_item_id in below example)
How to get the string value? Eg 224 in example table
(in an efficient manner)
class Custom_Model_Observer
public function booking(Varien_Event_Observer $observer)
$OrderId = $observer->getEvent()->getOrder()->getId(); //order entity id
$QuoteObject = Mage::getSingleton('checkout/session')->getQuote(); //quote object
foreach ($QuoteObject->getAllVisibleItems() as $item)
//get the quote item id - in example $quote_itemId = 324
$quote_itemId = $item->getData('item_id');
//get data from sales_flat_order_item table
$sales_order_item_id = Mage::getModel('sales/order_item')
->getCollection()
->addFieldToFilter('quote_item_id', $quote_itemId)
->getData('item_id');
//do more stuff here
Example sales_flat_order_item table:
magento-1.9 collection sales-order quoteitem
add a comment |
Using the sales_order_place_after
event in my custom Observer.
I have the quote_item_id
value (example 324).
How to get the corresponding item_id
value from the sales_flat_order_item
table?
I am able to successfully use getCollection method, but it returns the order item as an array.
($sales_order_item_id in below example)
How to get the string value? Eg 224 in example table
(in an efficient manner)
class Custom_Model_Observer
public function booking(Varien_Event_Observer $observer)
$OrderId = $observer->getEvent()->getOrder()->getId(); //order entity id
$QuoteObject = Mage::getSingleton('checkout/session')->getQuote(); //quote object
foreach ($QuoteObject->getAllVisibleItems() as $item)
//get the quote item id - in example $quote_itemId = 324
$quote_itemId = $item->getData('item_id');
//get data from sales_flat_order_item table
$sales_order_item_id = Mage::getModel('sales/order_item')
->getCollection()
->addFieldToFilter('quote_item_id', $quote_itemId)
->getData('item_id');
//do more stuff here
Example sales_flat_order_item table:
magento-1.9 collection sales-order quoteitem
$sales_order_item_id = Mage::getModel('sales/order_item')->getCollection()->addFieldToFilter('quote_item_id', $quote_itemId)->getItemId();
– Aaditya
Apr 22 at 18:44
Did already try that, but not working. Code stops dead, no log error, no exception.
– Dan
Apr 22 at 19:08
add a comment |
Using the sales_order_place_after
event in my custom Observer.
I have the quote_item_id
value (example 324).
How to get the corresponding item_id
value from the sales_flat_order_item
table?
I am able to successfully use getCollection method, but it returns the order item as an array.
($sales_order_item_id in below example)
How to get the string value? Eg 224 in example table
(in an efficient manner)
class Custom_Model_Observer
public function booking(Varien_Event_Observer $observer)
$OrderId = $observer->getEvent()->getOrder()->getId(); //order entity id
$QuoteObject = Mage::getSingleton('checkout/session')->getQuote(); //quote object
foreach ($QuoteObject->getAllVisibleItems() as $item)
//get the quote item id - in example $quote_itemId = 324
$quote_itemId = $item->getData('item_id');
//get data from sales_flat_order_item table
$sales_order_item_id = Mage::getModel('sales/order_item')
->getCollection()
->addFieldToFilter('quote_item_id', $quote_itemId)
->getData('item_id');
//do more stuff here
Example sales_flat_order_item table:
magento-1.9 collection sales-order quoteitem
Using the sales_order_place_after
event in my custom Observer.
I have the quote_item_id
value (example 324).
How to get the corresponding item_id
value from the sales_flat_order_item
table?
I am able to successfully use getCollection method, but it returns the order item as an array.
($sales_order_item_id in below example)
How to get the string value? Eg 224 in example table
(in an efficient manner)
class Custom_Model_Observer
public function booking(Varien_Event_Observer $observer)
$OrderId = $observer->getEvent()->getOrder()->getId(); //order entity id
$QuoteObject = Mage::getSingleton('checkout/session')->getQuote(); //quote object
foreach ($QuoteObject->getAllVisibleItems() as $item)
//get the quote item id - in example $quote_itemId = 324
$quote_itemId = $item->getData('item_id');
//get data from sales_flat_order_item table
$sales_order_item_id = Mage::getModel('sales/order_item')
->getCollection()
->addFieldToFilter('quote_item_id', $quote_itemId)
->getData('item_id');
//do more stuff here
Example sales_flat_order_item table:
magento-1.9 collection sales-order quoteitem
magento-1.9 collection sales-order quoteitem
edited Apr 22 at 18:26
Dan
asked Apr 22 at 18:18
DanDan
176
176
$sales_order_item_id = Mage::getModel('sales/order_item')->getCollection()->addFieldToFilter('quote_item_id', $quote_itemId)->getItemId();
– Aaditya
Apr 22 at 18:44
Did already try that, but not working. Code stops dead, no log error, no exception.
– Dan
Apr 22 at 19:08
add a comment |
$sales_order_item_id = Mage::getModel('sales/order_item')->getCollection()->addFieldToFilter('quote_item_id', $quote_itemId)->getItemId();
– Aaditya
Apr 22 at 18:44
Did already try that, but not working. Code stops dead, no log error, no exception.
– Dan
Apr 22 at 19:08
$sales_order_item_id = Mage::getModel('sales/order_item')->getCollection()->addFieldToFilter('quote_item_id', $quote_itemId)->getItemId();
– Aaditya
Apr 22 at 18:44
$sales_order_item_id = Mage::getModel('sales/order_item')->getCollection()->addFieldToFilter('quote_item_id', $quote_itemId)->getItemId();
– Aaditya
Apr 22 at 18:44
Did already try that, but not working. Code stops dead, no log error, no exception.
– Dan
Apr 22 at 19:08
Did already try that, but not working. Code stops dead, no log error, no exception.
– Dan
Apr 22 at 19:08
add a comment |
1 Answer
1
active
oldest
votes
Normally you can iterate through the order item collection and get both - the item_id
and the quote_item_id
in one loop, like this
$order = $observer->getEvent()->getOrder();
foreach ($order->getAllVisibleItems() as $orderItem)
//quote_item_id
$orderItem->getQuoteItemId();
//item_id
$orderItem->getId();
But I'm not sure that there already exist the item_id
in the event you are using, sales_order_place_after
.
That id is available only after the order and the order items are saved in the database. The right event for accessing that data would be sales_order_save_after
.
in your example (using sales_order_save_after event), does$orderItem->getId();
get the order id, or the order item id? I was able to extract the 'item_id' by using$orderitem_id_value = $sales_order_item_id[0]['item_id'];
from the array, but this seems so inefficient. I will test your suggestion.
– Dan
Apr 22 at 18:59
$orderItem->getId()
is the order item id.$order->getId()
would be the order id.
– HelgeB
Apr 22 at 19:03
I'm not able to use both foreach without refactoring code (too much effort, too little time), and as my method is working, I will stick to it. Will up vote your useful suggestion. Let me know if you think deserves more credit etc.
– Dan
Apr 23 at 17:55
add a comment |
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
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmagento.stackexchange.com%2fquestions%2f270991%2fhow-to-get-value-from-sales-flat-order-item-table-using-quote-item-id%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
Normally you can iterate through the order item collection and get both - the item_id
and the quote_item_id
in one loop, like this
$order = $observer->getEvent()->getOrder();
foreach ($order->getAllVisibleItems() as $orderItem)
//quote_item_id
$orderItem->getQuoteItemId();
//item_id
$orderItem->getId();
But I'm not sure that there already exist the item_id
in the event you are using, sales_order_place_after
.
That id is available only after the order and the order items are saved in the database. The right event for accessing that data would be sales_order_save_after
.
in your example (using sales_order_save_after event), does$orderItem->getId();
get the order id, or the order item id? I was able to extract the 'item_id' by using$orderitem_id_value = $sales_order_item_id[0]['item_id'];
from the array, but this seems so inefficient. I will test your suggestion.
– Dan
Apr 22 at 18:59
$orderItem->getId()
is the order item id.$order->getId()
would be the order id.
– HelgeB
Apr 22 at 19:03
I'm not able to use both foreach without refactoring code (too much effort, too little time), and as my method is working, I will stick to it. Will up vote your useful suggestion. Let me know if you think deserves more credit etc.
– Dan
Apr 23 at 17:55
add a comment |
Normally you can iterate through the order item collection and get both - the item_id
and the quote_item_id
in one loop, like this
$order = $observer->getEvent()->getOrder();
foreach ($order->getAllVisibleItems() as $orderItem)
//quote_item_id
$orderItem->getQuoteItemId();
//item_id
$orderItem->getId();
But I'm not sure that there already exist the item_id
in the event you are using, sales_order_place_after
.
That id is available only after the order and the order items are saved in the database. The right event for accessing that data would be sales_order_save_after
.
in your example (using sales_order_save_after event), does$orderItem->getId();
get the order id, or the order item id? I was able to extract the 'item_id' by using$orderitem_id_value = $sales_order_item_id[0]['item_id'];
from the array, but this seems so inefficient. I will test your suggestion.
– Dan
Apr 22 at 18:59
$orderItem->getId()
is the order item id.$order->getId()
would be the order id.
– HelgeB
Apr 22 at 19:03
I'm not able to use both foreach without refactoring code (too much effort, too little time), and as my method is working, I will stick to it. Will up vote your useful suggestion. Let me know if you think deserves more credit etc.
– Dan
Apr 23 at 17:55
add a comment |
Normally you can iterate through the order item collection and get both - the item_id
and the quote_item_id
in one loop, like this
$order = $observer->getEvent()->getOrder();
foreach ($order->getAllVisibleItems() as $orderItem)
//quote_item_id
$orderItem->getQuoteItemId();
//item_id
$orderItem->getId();
But I'm not sure that there already exist the item_id
in the event you are using, sales_order_place_after
.
That id is available only after the order and the order items are saved in the database. The right event for accessing that data would be sales_order_save_after
.
Normally you can iterate through the order item collection and get both - the item_id
and the quote_item_id
in one loop, like this
$order = $observer->getEvent()->getOrder();
foreach ($order->getAllVisibleItems() as $orderItem)
//quote_item_id
$orderItem->getQuoteItemId();
//item_id
$orderItem->getId();
But I'm not sure that there already exist the item_id
in the event you are using, sales_order_place_after
.
That id is available only after the order and the order items are saved in the database. The right event for accessing that data would be sales_order_save_after
.
answered Apr 22 at 18:44
HelgeBHelgeB
3,4481423
3,4481423
in your example (using sales_order_save_after event), does$orderItem->getId();
get the order id, or the order item id? I was able to extract the 'item_id' by using$orderitem_id_value = $sales_order_item_id[0]['item_id'];
from the array, but this seems so inefficient. I will test your suggestion.
– Dan
Apr 22 at 18:59
$orderItem->getId()
is the order item id.$order->getId()
would be the order id.
– HelgeB
Apr 22 at 19:03
I'm not able to use both foreach without refactoring code (too much effort, too little time), and as my method is working, I will stick to it. Will up vote your useful suggestion. Let me know if you think deserves more credit etc.
– Dan
Apr 23 at 17:55
add a comment |
in your example (using sales_order_save_after event), does$orderItem->getId();
get the order id, or the order item id? I was able to extract the 'item_id' by using$orderitem_id_value = $sales_order_item_id[0]['item_id'];
from the array, but this seems so inefficient. I will test your suggestion.
– Dan
Apr 22 at 18:59
$orderItem->getId()
is the order item id.$order->getId()
would be the order id.
– HelgeB
Apr 22 at 19:03
I'm not able to use both foreach without refactoring code (too much effort, too little time), and as my method is working, I will stick to it. Will up vote your useful suggestion. Let me know if you think deserves more credit etc.
– Dan
Apr 23 at 17:55
in your example (using sales_order_save_after event), does
$orderItem->getId();
get the order id, or the order item id? I was able to extract the 'item_id' by using $orderitem_id_value = $sales_order_item_id[0]['item_id'];
from the array, but this seems so inefficient. I will test your suggestion.– Dan
Apr 22 at 18:59
in your example (using sales_order_save_after event), does
$orderItem->getId();
get the order id, or the order item id? I was able to extract the 'item_id' by using $orderitem_id_value = $sales_order_item_id[0]['item_id'];
from the array, but this seems so inefficient. I will test your suggestion.– Dan
Apr 22 at 18:59
$orderItem->getId()
is the order item id. $order->getId()
would be the order id.– HelgeB
Apr 22 at 19:03
$orderItem->getId()
is the order item id. $order->getId()
would be the order id.– HelgeB
Apr 22 at 19:03
I'm not able to use both foreach without refactoring code (too much effort, too little time), and as my method is working, I will stick to it. Will up vote your useful suggestion. Let me know if you think deserves more credit etc.
– Dan
Apr 23 at 17:55
I'm not able to use both foreach without refactoring code (too much effort, too little time), and as my method is working, I will stick to it. Will up vote your useful suggestion. Let me know if you think deserves more credit etc.
– Dan
Apr 23 at 17:55
add a comment |
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.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmagento.stackexchange.com%2fquestions%2f270991%2fhow-to-get-value-from-sales-flat-order-item-table-using-quote-item-id%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
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
$sales_order_item_id = Mage::getModel('sales/order_item')->getCollection()->addFieldToFilter('quote_item_id', $quote_itemId)->getItemId();
– Aaditya
Apr 22 at 18:44
Did already try that, but not working. Code stops dead, no log error, no exception.
– Dan
Apr 22 at 19:08