Migration 2.6.10 zu 3.3.9e: Versandarten nicht vollst. umgesetzt und fehlert folglich

  • Hallo,
    Habe nun erste Test mit der Migration eines Projektes von 2.6.10 zu 2.9.9e vorgenommen. Leider funktioniert nicht alles auf Anhieb. Ein Problem liefert die Übernahme der Versandkosten. Habe das mal analysiert und es stellt sich wie folgt da:


    In 2.6.10 hatte ich ca. 116 internat. Versandarten. Nach der Migration zeigt der Warenkorb bei den Versandkosten falsch "(free)" an (nutze rupostel OPC). Schau ich in die BE-Konfig. der Versandarten steht in "Versandtarif Betrag" nicht mehr der Preis wie unter 2.6.10 sondern 0(!).
    Schaue ich mir den DS im Feld #__virtuemart_shipmentmethods.shipment_params an, steht dort der korrekte Preis.
    Der Parametersatz sieht in 2.6.10 und nach Migration zu 2.9.9e zunächst identisch aus: nämlich z.B. so:
    shipment_logos=""|countries=['81']|zip_start=""|zip_stop=""|weight_start="5.001"|weight_stop="10"|weight_unit="KG"|nbproducts_start=0|nbproducts_stop=0|orderamount_start=""|orderamount_stop=""|cost="6.64"|package_fee=""|tax_id="2"|free_shipment=""|


    Nun gehe ich in die Konfig. für die Versandart und speichere diese in dem ich 0 wieder durch meinen Preis ersetze. Das wird übernommen. Nun schaue ich mir den DS wieder an und stelle fest, dass dieser nun einen anderen Aufbau hat(!):


    1. Es ist ein neuer Parameter hinzugekommen show_on_pdetails="1", was vermutl. bedeutungslos für unseren Fall ist.
    2. Der Parameter cost="6.64" heißt nun shipment_cost="6.64". Und das wird das Problem sein.


    Evtl. so:
    UPDATE `#__virtuemart_shipmentmethods`
    SET `shipment_params` = replace(`shipment_params`, '|countries=', '|show_on_pdetails="1"|countries=')
    WHERE `shipment_params` NOT LIKE '%|show_on_pdetails%'


    und so:
    UPDATE `#__virtuemart_shipmentmethods_res`
    SET `shipment_params` = replace(`shipment_params`, '|cost=', '|shipment_cost=')
    WHERE `shipment_params` NOT LIKE '%|shipment_cost%'




    Frage:
    Wird das UpdateScript noch dahingehend angepasst, dass dieser Parameter sauber ersetzt wird durch seinen neuen Bezeichner?