Skip to Content

Odoo - Personalizowana Automatyzacja CRM

Jak stworzyć nowego taska i przypisać go do projektu, gdy będzie w określonym etapie?
September 28, 2025 by
Odoo - Personalizowana Automatyzacja CRM
Dawid Gacek
| No comments yet

Jedną z największych zalet Odoo jest głęboka integracja między aplikacjami. Standardowo, gdy oferta sprzedaży usługi (moduł Sales) zostanie zaakceptowana, system może automatycznie utworzyć nowy projekt lub zadanie w module Projekty. To świetna funkcja, ale co w sytuacji, gdy potrzebujemy uruchomić działania operacyjne jeszcze zanim klient podpisze umowę?

Standardowo możemy ustalić planowane aktywności bazując na spodziewanej dacie zamknięcia, a co jeśli chcemy aby wyzwalaczem było samo przeciągnięcie szansy do danego etapu procesu?

Wyobraź sobie sytuację: Twój handlowiec przesuwa szansę sprzedaży w lejku CRM do etapu "Propozycja". W tym momencie zespół techniczny musi przygotować szczegółową wycenę lub wstępny plan działania. Jak zapewnić, że to zadanie zostanie utworzone i przypisane za każdym razem, bezbłędnie i natychmiast?

Tu z pomocą przychodzą Automatyzacje!

Czym są Akcje Automatyczne w Odoo? 

Automatyzacje to spersonalizowane akcje, które uruchamiają się na podstawie jakiegoś wyzwalacza. 

Obraz przedstawiający gdzie znaleźć zakładkę automatyzacje w Odoo CRM.

Aby znaleźć manu automatyzacji, należy kliknąć  przy Etapie, do którego chcemy dodać automatyzację (widoczne po najechaniu na etap).

Wyzwalaczem może być na przykład dodanie tagu, webhook lub przesunięcie do danego etapu (wśród wielu innych). Akcje to na przykład aktualizacja rekordu, wysłanie SMSa lub wykonanie kodu. 

Obraz przedstawiający Typy automatyzacji oraz konfigurację automatyzacji w Odoo.

Widok tworzenia automatyzacji dla etapu "Propozycja".

Bardzo dużo akcji może zostać zdefiniowanych bez znajomości programowania, jednak czasem, gdy potrzebujemy niestandardowego działania, znajomość programowania może być niezbędna. Odoo pozwala nam zdefiniować kod źródłowy, który zostanie wykonany. To bardzo potężna opcja.

Praktyczny przykład: Automatyczne tworzenie zadania krok po kroku

Nasz cel: Gdy Szansa Sprzedaży (Lead) zostanie przesunięta do etapu "Propozycja", system ma automatycznie utworzyć nowe zadanie w projekcie o nazwie "Wyceny dla Klientów". W tym przykładzie, prosty kod pozwoli na dodanie Taska do istniejącego Projektu.

Krok 1: Znajdź menu automatyzacji

W widoku Kanban modułu CRM, najedź kursorem na nagłówek etapu, do którego chcesz dodać regułę (w naszym przypadku "Propozycja"). Kliknij w ikonę koła zębatego, a następnie wybierz z menu opcję "Automatyzacje".

Krok 2: Skonfiguruj akcję

W formularzu tworzenia automatyzacji nadajemy jej nazwę (np. "Utwórz zadanie do wyceny") i wybieramy typ akcji. W naszym przypadku, ponieważ chcemy stworzyć zupełnie nowy rekord w innej aplikacji, wybieramy opcję "Wykonaj kod w Pythonie".

Krok 3: Dodaj kod i zapisz

Teraz czas na najważniejszą część. Wklej poniższy kod w zakładce "Kod do wykonania". Kod niezbędny do wykonania tej automatyzacji to zaledwie kilka linii, i wygląda następująco:

# Wyszukaj projekt o konkretnej nazwie
project = env['project.project'].search([('name', '=', 'Wyceny dla Klientów')], limit=1)

# Jeśli projekt został znaleziony, utwórz nowe zadanie
if project:
    env['project.task'].create({
        'name': f"Przygotuj propozycję dla: {record.name}",
        'project_id': project.id,
        # Tutaj można dodać inne pola, np. przypisanie do użytkownika
        # 'user_ids': [env.user.id],
    })
# Jeśli projekt nie istnieje, wyświetl błąd
else:
    raise UserError("Nie znaleziono projektu 'Wyceny dla Klientów'! Upewnij się, że projekt istnieje.")

Co tutaj się dzieje?

  • project = env[...]​ - Wyszukujemy w systemie projekt o nazwie "Wyceny dla Klientów"
  • if project:​ - Sprawdzamy, czy udało się go znaleźć
  • env['project.task'].create({...})​ - Jeśli tak, tworzymy nowy rekord (zadanie) w modelu project.task
    • 'name': f"..."​ - Dynamicznie nadajemy zadaniu nazwę, wstawiając w nią nazwę szansy sprzedaży (record.name), od której pochodzi
    • 'project_id': project.id​ - Przypisujemy nowe zadanie do ID projektu, który znaleźliśmy wcześniej
  • else: raise UserError(...)​ - Jeśli projekt nie zostanie znaleziony, system wyświetli komunikat błędu

I to tyle! Od teraz każde przesunięcie szansy sprzedaży do etapu "Propozycja" natychmiastowo utworzy zadanie dla odpowiedniego zespołu, eliminując ryzyko przeoczenia i przyspieszając proces przygotowania oferty.

Ważna informacja o licencjach

Pełna funkcjonalność Automatyzacji, w tym wykonywanie kodu w Pythonie, jest dostępna w Odoo Enterprise (licencja Custom). W wersji Odoo Community istnieje podobny mechanizm "Automatyzacji", jednak jego możliwości mogą być bardziej ograniczone (jeśli nie możesz tego u siebie znaleźć, sprawdź czy moduł automations​ jest zainstalowany).

Odoo - Personalizowana Automatyzacja CRM
Dawid Gacek September 28, 2025
Share this post
Archiwum
Sign in to leave a comment
Odoo Experience 2025: Odoo 19 nadchodzi, dzień drugi.
Odoo 19 dla Twojej Branży