a strStream zawiera xml z parametrami do zakładanego produktu - analogicznie jak robiłem to dla kategorii i producentów.
dostaję następujący błąd :
prestashop xmlns:xlink="http://www.w3.org/1999/xlink">
<errors>
<error>
<code><![CDATA[97]]></code>
<message><![CDATA[[SQL Error] Field "available_date" doesn"t have a default value. From ProductCore->setWsCombinations() Query was : INSERT INTO `ps_product_attribute` (`id_product`) VALUES (21)]]></message>
</error>
</errors>
</prestashop>
Próbowałem różne wartości "available_date" jak i usunięcie tego paramatru z xml-a z strStream bez skutku.
Dokopałem się do kodów źródłowych prestashop, który mam zainstalowany do celów testowych i znalazłem tam plik product.php, a w nim metodę setWsCombinations , która kończy się następującymi linijkami:
foreach ($to_add as $id)
{
// Update id_product if exists else create
if (in_array($id, $all_ids))
Db::getInstance()->execute('UPDATE `'._DB_PREFIX_.'product_attribute` SET id_product = '.(int)$this->id.' WHERE id_product_attribute='.$id);
else
Db::getInstance()->execute('INSERT INTO `'._DB_PREFIX_.'product_attribute` (`id_product`) VALUES ('.$this->id.')');
}
return true;
Wygląda mi na to, że funckcja Insert na bazie nie przewidziała, że w tabeli ps_product_attribute znajduje sie pole available_date, kóre nie ma wartości domyślnej i nie jest w żaden sposób przekazywane.
Po zmianie linijki po else na
Db::getInstance()->execute('INSERT INTO `'._DB_PREFIX_.'product_attribute` (`id_product`,`available_date`) VALUES ('.$this->id.',0000-00-00)');
Błąd w moim programie w delphi się już nie pojawia.
Moje pytanie to czy PrestaShop ma buga i powinni to zmodyfikować, czy ja coś robię nie tak.
Pytam bo będę z czasem musiał wdrożyć mój program u klienta (nie wiem jeszcze którą ma wersję prestashopa) i wolałbym nie musieć poprawiać kodu źródłowego prestashopa u klienta bo nie wiem czy będzie to możlwe.
Question
grzegorz.wyrobek
Witam,
Piszę aplikacje w delphi integrującą się z PrestaShop (mam wersję ps 1.6.0.9).
Udało mi się już zautoryzować i zrealizować funkcje create,update,delete dla kategorii i producentów i działa to prawidłowo.
Próbuję napisac funkcję, która doda produkt. Jednakże po wysłaniu w delphi:
gdzie s_url zawiera
a strStream zawiera xml z parametrami do zakładanego produktu - analogicznie jak robiłem to dla kategorii i producentów.
dostaję następujący błąd :
Próbowałem różne wartości "available_date" jak i usunięcie tego paramatru z xml-a z strStream bez skutku.
Dokopałem się do kodów źródłowych prestashop, który mam zainstalowany do celów testowych i znalazłem tam plik product.php, a w nim metodę setWsCombinations , która kończy się następującymi linijkami:
Wygląda mi na to, że funckcja Insert na bazie nie przewidziała, że w tabeli ps_product_attribute znajduje sie pole available_date, kóre nie ma wartości domyślnej i nie jest w żaden sposób przekazywane.
Po zmianie linijki po else na
Błąd w moim programie w delphi się już nie pojawia.
Moje pytanie to czy PrestaShop ma buga i powinni to zmodyfikować, czy ja coś robię nie tak.
Pytam bo będę z czasem musiał wdrożyć mój program u klienta (nie wiem jeszcze którą ma wersję prestashopa) i wolałbym nie musieć poprawiać kodu źródłowego prestashopa u klienta bo nie wiem czy będzie to możlwe.
Pozdrawiam.
Link to comment
Share on other sites
1 answer to this question
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now