Gdzie się pojawia i kiedy widać przycisk
Pojawia się po kliknięciu przycisku we wniosku o anulowanie
Karty wniosków o anulowanie otwierasz z menu Octopia › Zamówienia › Anulowania. Ta sekcja Octopia wymaga uprawnienia Użytkownik Octopia: jeśli go nie masz, nie widzisz tej sekcji.
Komunikat Zamówienie nie ma kanału sprzedaży, dla którego można pobrać przyczyny. (The order has no sales channel to fetch reasons for.) może pojawić się po kliknięciu przycisku Pobierz dopuszczalne przyczyny (Fetch Eligible Reasons) na tej karcie. Jest w opublikowanym kodzie Odoo 17, 18, 19 i 20.

W opublikowanych tłumaczeniach modułu ten sam komunikat brzmi tak:
| Język | Treść komunikatu |
|---|---|
| Hiszpański | El pedido no tiene canal de ventas del que obtener los motivos. |
| Angielski | The order has no sales channel to fetch reasons for. |
| Niemiecki | Die Bestellung hat keinen Verkaufskanal, für den Gründe abgerufen werden könnten. |
| Francuski | La commande n'a aucun canal de vente pour lequel récupérer des motifs. |
| Włoski | L'ordine non ha un canale di vendita per cui recuperare i motivi. |
| Portugalski | A encomenda não tem canal de vendas para o qual obter motivos. |

Przycisk jest widoczny tylko wtedy, gdy wniosek ma stan początkowy
Widok ukrywa Pobierz dopuszczalne przyczyny, gdy wniosek nie jest już w stanie początkowym, czyli tym, który ma domyślnie w polu Stan (State). Przy wartościach domyślnych przycisk jest widoczny. W Odoo 17, 18, 19 i 20 jest tak samo.
Ma to praktyczną konsekwencję: jeśli otwierasz wniosek i nie widzisz przycisku, nie ma czego klikać, a więc ten komunikat nie pojawi się z tej karty. Jeśli go widzisz, wniosek nadal jest w stanie początkowym.

Co sprawdza kod i w jakiej kolejności
Sprawdzany jest kanał zamówienia, nie wniosku
Kanał sprzedaży nie jest odczytywany z wniosku o anulowanie, lecz z zamówienia, z którym wniosek jest powiązany. Dokładny warunek w kodzie jest taki: kanał sprzedaży tego zamówienia jest pusty. Dlatego dwa różne wnioski mogą dać różne wyniki: zależy od tego, czy ich zamówienie ma kanał sprzedaży.
To pierwsza rzecz, którą robi metoda
Przycisk wywołuje metodę, która przechodzi po wnioskach, na których została uruchomiona. Dla każdego bierze jego zamówienie i sprawdza kanał sprzedaży tego zamówienia. Jeśli jest pusty, zgłasza komunikat i akcja zatrzymuje się w tym miejscu.
Ta kontrola jest przed wszystkim innym w metodzie: przed wyborem, którego stanu zamówienia użyć, i przed przekazaniem jakichkolwiek danych do następnego kroku modułu.
Ponowne kliknięcie tego nie naprawia
Metoda tylko odczytuje kanał sprzedaży zamówienia. Nie uzupełnia go ani nie zmienia, więc ponowne kliknięcie Pobierz dopuszczalne przyczyny bez żadnych zmian daje ten sam wynik: komunikat będzie się pojawiał, dopóki zamówienie nie będzie miało kanału sprzedaży.
Gdy kanał jest, metoda idzie dalej
Jeśli zamówienie ma kanał, metoda decyduje, z jakim stanem zamówienia pójdzie dalej: jeśli stan zamówienia to Accepted, InPreparation, Shipped lub Delivered, używa tego stanu; w każdym innym przypadku używa Accepted.
Następnie przekazuje konto zamówienia, kod kanału, wartość Seller i ten stan do kolejnego kroku modułu i kończy działanie. Dlatego kanał ma realne znaczenie: jego kod jest jedną z danych, które metoda przekazuje, a bez kanału metoda w ogóle nie dochodzi do tego punktu.
Jak to rozwiązać
Komunikat wymaga, aby zamówienie z wniosku miało kanał sprzedaży. Ponieważ przycisk go nie zapisuje, naprawa dotyczy zamówienia, a nie przycisku.
- Otwórz wniosek z
Octopia › Zamówienia › Anulowaniai sprawdź, czy widziszPobierz dopuszczalne przyczyny. Jeśli go nie widzisz, wniosek nie jest już w stanie początkowym. - Ustal zamówienie, do którego należy wniosek: to ono musi mieć kanał sprzedaży.
- Gdy to zamówienie będzie miało kanał sprzedaży, kliknij ponownie
Pobierz dopuszczalne przyczyny.
Jeśli po tym znów pojawi się ten sam komunikat, zamówienie nadal ma pusty kanał sprzedaży: kontrola w kodzie nie sprawdza niczego innego.
Jeśli potrzebujesz pomocy
FlexigoTech wdraża Odoo 17, 18, 19 i 20 oraz tworzy konektory i integracje na zamówienie. Octopia Connector to moduł z jednorazową opłatą za wersję i wymaga subskrypcji FlexigoTech Cloud: plan Konektor kosztuje 49 €/mies. lub 490 €/rok netto (bez VAT).
Jeśli chcesz zobaczyć, jak działa inny przycisk wniosku, zajrzyj do Submit to Octopia.
Czytaj dalej
Sprawdzone w kodzie źródłowym konektora (wersja 20.0) i w podlinkowanych źródłach
Źródła
- Kod modułu: flexigobe_octopia_connector 20.0 (4848da6a): models/octopia_order_actions.py
- Kod modułu: flexigobe_octopia_connector 20.0 (4848da6a): views/octopia_completeness2_views.xml
- flexigotech.com/en/services.html
- flexigotech.com/precios.html
