After Upgrade from 3.8 and now on 4.022 I can not edit orders. This is very important to us since my book keeper looks at them in reports for refunds and such..
On 3.8 I could add a new line.. 0 quantity call it refunded and enter -240.00 in Product Price (Cost) and Product Price (Gross) it would show but not change the invoice.. I can't even duplicate.... I know this is tricky.. I have tried about 50 times.. with all different option I'm getting this error..
vmError: vmTable store insertObject #__virtuemart_order_items Data truncated for column 'virtuemart_order_item_id' at row 1 INSERT INTO `wwdai_virtuemart_order_items` (`virtuemart_order_item_id`,`virtuemart_order_id`,`virtuemart_product_id`,`order_item_sku`,`order_item_name`,`product_quantity`,`product_item_price`,`product_basePriceWithTax`,`product_discountedPriceWithoutTax`,`product_priceWithoutTax`,`product_tax`,`product_final_price`,`product_subtotal_discount`,`product_subtotal_with_tax`,`order_status`,`paid`,`oi_hash`,`created_on`,`created_by`) VALUES ('0-96-0','10873','2359','AH500/NOR','refund','0','240','240','240','240','0','240','0','0','P','0','d5a355ca1dfa2b6019914d1faa6eab8b','2023-07-24 13:53:16','945')
vmError: vmTable store insertObject #__virtuemart_order_item_histories Data truncated for column 'virtuemart_order_item_id' at row 1 INSERT INTO `wwdai_virtuemart_order_item_histories` (`virtuemart_order_item_history_id`,`virtuemart_order_item_id`,`virtuemart_order_id`,`virtuemart_product_id`,`order_item_sku`,`order_item_name`,`product_quantity`,`product_item_price`,`product_basePriceWithTax`,`product_discountedPriceWithoutTax`,`product_priceWithoutTax`,`product_tax`,`product_final_price`,`product_subtotal_discount`,`product_subtotal_with_tax`,`order_status`,`paid`,`oi_hash`,`created_on`,`created_by`,`modified_by`,`action`) VALUES ('0','0-96-0','10873','2359','AH500/NOR','refund','0','240','240','240','240','0','240','0','0','P','0','f14e973f1a1b24fc872b14eaeb85785f','2023-07-24 13:53:16','945','0','new')
attached is an image on how i use to do it...
Quote from: hotrod on July 24, 2023, 16:04:10 PM
This is very important to us since my book keeper looks at them in reports for refunds and such..
So if it's so important, why do you put dashes in the field - virtuemart_order_item_id, which (if I'm not mistaken) should be only integer?
I don't do anything with order ID. ? not sure what your referring to..
When she pulls the reports from VM reporter.. say for status refunded.. the - shows her how much was refunded from the total.. Leaving the quantity at 0 stops is from adjusting the invoice...
Well sell parts with a core charge.. when the old part is returned I add a line.. Core Refund and how much was refunded..
been doing it that way for 13 years...
The below Image the part comes in at $2400 with a core charge added to it..
Then I ad a line and break it down.. the product price and a new line for the core charge
when we refund I add a refund line with 0 Quanity and the - so billing can see it. and we mark it as refunded
You don't understand me - Im speaking about virtuemart_order_item_id, not about virtuemart_order_id :)
Look at the DB table structure and look at the vmerror - you can see all why order is not saved, you have to only little bit thinking.
virtuemart_order_item_id is only field with automatic increment one.
You can use value '0-96-0' with automatic increment one?
I think no.
sorry, but we are solving the impossibility of saving an order to DB after editing in the administration - you can always ask a new question here on the forum or order a speshitpillt for money, don't combine multiple questions into one, you make it difficult for others to find a similar problem and its solution.
I'm sorry.. I am Confused with your reply... I am not a developer and I don't under stand how I fix this or what I am doing wrong..
it was one question..
Why can I update an order in VM 3.8 but not in VM 4 ? as far as I see I'm doing everything the same.. If I need to be doing something different.. Please share..
As @pinochico points out the assigned id given to the new row when you create it is wrong .. it should be an integer but it is always in the form 0-xx-0
item_id[0-96-0][product_quantity]: 1 etc
it appears to be a random number created by the JS at the end of the administrator\components\com_virtuemart\views\orders\tmpl\order.php
Maybe someone who has worked in this area knows more?
THANK YOU!! So it's not anything I'm doing wrong.. Yea this is my brickwall stopping me from going live with the new site.. I would have thought becoming a supporter and purchasing the latest Program would have it's benefits... :) But i feeling pretty lost here.. No issues with my current 3.8 Version..
Am I the only one that can't edit orders?
Attached are images of an order I just edited on my live site running 3.8 that came in with a core charge I had to break up..
1) with no edits
2) add new product with cost of core. and reduce cost of product on line one
3) after I hit save...
I have never had cause to use Order editing so have never worked in this code
it appears the JS in administrator\components\com_virtuemart\assets\js\dynotable.js when u click new item clones the row, removes the values and replaces any ids - it's getting this bit wrong?
Re membership - I do know Max is on holiday at the moment
Yea.. I get basically the same error when cloning and saving.. I have time.. Define "vacation" not like a hiatus :)
max has always helped me in the past.. I'm sure this will work out somehow...
vmError: vmTable store insertObject #__virtuemart_order_items Data truncated for column 'virtuemart_order_item_id' at row 1 INSERT INTO `wwdai_virtuemart_order_items` (`virtuemart_order_item_id`,`virtuemart_order_id`,`virtuemart_product_id`,`order_item_sku`,`order_item_name`,`product_quantity`,`product_item_price`,`product_basePriceWithTax`,`product_discountedPriceWithoutTax`,`product_priceWithoutTax`,`product_tax`,`product_final_price`,`product_subtotal_discount`,`product_subtotal_with_tax`,`order_status`,`paid`,`oi_hash`,`created_on`,`created_by`) VALUES ('0-22-14432','10868','4762','830724-5001S/DAW','17201E0654 Turbo','1','2875','2875','2875','2875','0','2875','0','2875','X','0','7418700b059056ecaf3d27f135e9cb4b','2023-07-25 18:25:39','945')
vmError: vmTable store insertObject #__virtuemart_order_item_histories Data truncated for column 'virtuemart_order_item_id' at row 1 INSERT INTO `wwdai_virtuemart_order_item_histories`
(`virtuemart_order_item_history_id`,`virtuemart_order_item_id`,`virtuemart_order_id`,`virtuemart_product_id`,`order_item_sku`,`order_item_name`,`product_quantity`,`product_item_price`,`product_basePriceWithTax`,`product_discountedPriceWithoutTax`,`product_priceWithoutTax`,`product_tax`,`product_final_price`,`product_subtotal_discount`,`product_subtotal_with_tax`,`order_status`,`paid`,`oi_hash`,`created_on`,`created_by`,`modified_by`,`action`) VALUES ('0','0-22-14432','10868','4762','830724-5001S/DAW','17201E0654 Turbo','1','2875','2875','2875','2875','0','2875','0','2875','X','0','481850355b30f285e8a9c3c404d6f232','2023-07-25 18:25:39','945','0','new')
Quote from: hotrod on July 25, 2023, 20:27:31 PM
Yea.. I get basically the same error when cloning and saving.. I have time.. Define "vacation" not like a hiatus :)
hahaha, no it was not holidays, not even vacation. My children have vacation. But I always try the impossible, being back and on hiatus ;-P .
Quote from: hotrod on July 25, 2023, 20:27:31 PM
max has always helped me in the past.. I'm sure this will work out somehow...
Hahah, you know how to catch me. Here it is, the solution is quite simpel, and dont ask me why it was changed. I cannot check that currently, because the svn is down.
depending on the used template go to
administrator/components/com_virtuemart/views/orders/tmpl/order.php line 867
or
administrator/templates/vmadmin/html/com_virtuemart/orders/order.php line 114
and remove
var randomNumber = Math.floor(Math.random() * 100);
$(newTr).find("*").addBack().filter("[name]").each(function () {
var name=this.name;
var needle = "item_id["
var newname = name.replace(needle, needle+randomNumber);
//this.name = newname;
this.id += randomNumber;
});
I found it in administrator/templates/vmadmin/html/com_virtuemart/orders/order.php line 114 But my code didn't have the 0 var randomNumber = 0;//Math.floor(Math.random() * 100); with out the 0. I know i was using the latest Admin Temple.. but when I reloaded the files from my package folder.. I now see the = 0; No rush here for me.... prob something that should just be checked in the latest version..
I was able to hit clodne product and save. but nothing was there. but no error..
When adding a new line and inputting the data to break the one order into 2.. I got this error.
vmError: vmTable store insertObject #__virtuemart_order_items Incorrect decimal value: '' for column 'product_subtotal_with_tax' at row 1 INSERT INTO `wwdai_virtuemart_order_items` (`virtuemart_order_item_id`,`virtuemart_order_id`,`order_item_sku`,`order_item_name`,`product_quantity`,`product_item_price`,`product_basePriceWithTax`,`product_discountedPriceWithoutTax`,`product_priceWithoutTax`,`product_tax`,`product_final_price`,`product_subtotal_discount`,`product_subtotal_with_tax`,`order_status`,`paid`,`oi_hash`,`created_on`,`created_by`) VALUES ('0','10874','','Core Charge','1','55.00','55.00','0','0','0.00','55.00','0.00','','P','0','30cee3071b663d56d1b58eeb123d37a9','2023-08-11 21:34:49','945')
vmError: vmTable store insertObject #__virtuemart_order_item_histories Incorrect decimal value: '' for column 'product_subtotal_with_tax' at row 1 INSERT INTO `wwdai_virtuemart_order_item_histories` (`virtuemart_order_item_history_id`,`virtuemart_order_item_id`,`virtuemart_order_id`,`order_item_sku`,`order_item_name`,`product_quantity`,`product_item_price`,`product_basePriceWithTax`,`product_discountedPriceWithoutTax`,`product_priceWithoutTax`,`product_tax`,`product_final_price`,`product_subtotal_discount`,`product_subtotal_with_tax`,`order_status`,`paid`,`oi_hash`,`created_on`,`created_by`,`modified_by`,`action`) VALUES ('0','0','10874','','Core Charge','1','55.00','55.00','0','0','0.00','55.00','0.00','','P','0','75ffaca5be90c566d9e0e8508a4795bd','2023-08-11 21:34:49','945','0','new')
I installed the 4.2 and the code looks like this.. No chage in erros.
var randomNumber = Math.floor(Math.random() * 100);
$(newTr).find("*").addBack().filter("[name]").each(function () {
var name=this.name;
var needle = "item_id["
var newname = name.replace(needle, needle+"0-"+randomNumber+"-");
this.name = newname;
this.id += randomNumber;
});
The = 0 was just a test.
Ah.. yea removing that code didn't help...
I think you fixed it!!!... All good with 4.2.2 10908 I can add a line and edit Lines.. just can't clone.. No error it just doesn't show.. but I don't use that...
Thank You Man!!! I'll pick away at the new site.. looks I'll be good to go..