Regler för automatisering¶
Automatiseringsregler tillåter körning av en eller flera fördefinierade åtgärder som svar på en specifik utlösare, t.ex. skapa en aktivitet när ett fält ställs in på ett specifikt värde, eller arkivera en post 7 dagar efter dess senaste uppgradering.
När du skapar en automationsregel gör domänfilter det möjligt att lägga till villkor som måste uppfyllas för att automationsregeln ska köras, t.ex. möjligheten måste vara tilldelad en specifik säljare, eller postens status får inte vara Utkast.
För att skapa en automationsregel med Odoo Studio, gör så här:
Öppna Studio och klicka på Automatiseringar, sedan på Ny.
Ge automatiseringsregeln ett tydligt, meningsfullt namn som identifierar dess syfte.
Välj utlösaren och fyll vid behov i de fält som visas på skärmen baserat på den valda utlösaren.
Klicka på Lägg till en åtgärd, välj sedan Typ av åtgärd och fyll i fälten som visas på skärmen baserat på den åtgärd du har valt.
Klicka på Save & Close eller Save & New.
Example
För att säkerställa uppföljning av mindre nöjda kunder skapar denna automatiseringsregel en aktivitet 3 månader efter att en försäljningsorder skapats för kunder med en nöjdhetsprocent lägre än 30%.
Tips
Använd fliken Anteckningar för att dokumentera syfte och funktion för automatiseringsregler. Detta gör regler lättare att underhålla och underlättar samarbete mellan användare.
För att ändra modellen som automatiseringsregeln riktar sig mot, växla modeller innan du klickar på Automatisering i Studio, eller aktivera utvecklarläge, skapa eller redigera en automatiseringsregel och välj Modell i formuläret Automatiseringsregler.
Automatiseringsregler kan skapas från vilken kanban-etapp som helst genom att klicka på ikonen (Inställningar) som visas när du hovrar över kanban-etappens namn, och sedan välja Automatisering. I detta fall är utlösaren inställd på Etapp är inställd på som standard, men den kan ändras om det behövs.
Utlösare¶
Utlösaren används för att definiera vilken typ av händelse som behöver inträffa för att automatiseringsregeln ska köras. Tillgängliga utlösare beror på modellen. Fem utlösarkategorier är tillgängliga totalt:
Lägga till villkor¶
Domänfilter gör det möjligt att bestämma vilka handlingar en automatiseringsregel ska rikta in sig på eller exkludera. Effektiv filtrering förbättrar den övergripande prestandan eftersom den undviker onödig bearbetning av handlingar som inte påverkas av regeln.
Tips
Aktivera utvecklarläge innan du skapar en automatiseringsregel för att ha maximal flexibilitet när du lägger till domänfilter.
Beroende på den valda utlösaren är det möjligt att definiera ett eller flera villkor som en handling måste uppfylla innan och/eller efter att en utlösare inträffar.
Before Update Domain definierar de villkor en handling måste uppfylla innan utlösarhändelsen inträffar, t.ex. handlingen måste ha
Type = Customer InvoiceochStatus = Posted.Med utvecklarläge aktiverat, klicka på Redigera domän, om tillgängligt, och sedan Ny regel.
Extra villkor, eller i vissa fall Tillämpa på-filter, definierar de villkor en post måste uppfylla efter att utlösarhändelsen inträffar, t.ex. kundfakturan måste ha
Betalningsstatus = Delvis betald.Med utvecklarläge aktiverat vid behov, klicka på Lägg till villkor eller Redigera domän, beroende på vad som är relevant, och sedan Ny regel.
När en utlösare inträffar, t.ex. betalningsstatus för en bokförd kundfaktura uppdateras, kontrollerar automatiseringsregeln de definierade villkoren och utför endast åtgärden om handlingen matchar dessa villkor.
Example
Om den automatiserade åtgärden ska utföras när en e-postadress anges för första gången (i motsats till att ändra en e-postadress) på en befintlig kontakt som är en individuell person snarare än ett företag, använd Email is not set och Is a Company is not set som Before Update Domain och Email is set som Apply on-domän.
Observera
Before Update Domain kontrolleras inte när en handling skapas.
Värden uppdaterade¶
Utlös automatiserade åtgärder när specifika förändringar sker i databasen. De utlösare som är tillgängliga i denna kategori beror på modellen och baseras på vanliga ändringar, såsom att lägga till en specifik tagg (t.ex. till en arbetsuppgift) eller att ange ett fälts värde (t.ex. att ange fältet Användare).
Välj utlösaren och välj sedan ett värde om det krävs.
E-post evenemang¶
Utlösa automatiska åtgärder när du tar emot eller skickar e-post.
Villkor för tidsinställning¶
Utlös automatiserade åtgärder vid en tidpunkt i förhållande till ett datumfält eller till skapandet eller uppdateringen av en handling. Följande utlösare är tillgängliga:
Baserad på datumfält: Åtgärden utlöses en definierad tidsperiod före eller efter datumet för det valda datumfältet.
After creation: Åtgärden utlöses en definierad tidsperiod efter att en handling har skapats och sparats.
After last update: Åtgärden utlöses en definierad tidsperiod efter att en befintlig handling har redigerats och sparats.
Du kan sedan definiera:
en Fördröjning: Ange antalet minuter, timmar, dagar eller månader. För att få en åtgärd utförd före utlösardatumet, ange ett negativt tal. Om du valde utlösaren Baserad på datumfält, måste du också välja det datumfält som ska användas för att bestämma fördröjningen.
Observera
Som standard kontrollerar schemaläggaren tidsutlösta automationsregler var 240:e minut, eller var 4:e timme. Denna frekvens är i allmänhet tillräcklig för fördröjningar som 3 månader efter beställningsdatumet eller 7 dagar efter senaste uppdateringen.
För fördröjningar som är mindre än motsvarande 2400 minuter, eller 40 timmar, räknar systemet om frekvensen för denna kontroll för att säkerställa att mer detaljerade fördröjningar, t.ex. 1 timme före händelsens startdatum och starttid, eller 30 minuter efter skapandet, kan respekteras så nära som möjligt.
Ett meddelande på skärmen visar den möjliga fördröjningen efter den schemalagda utlösningen av regeln.
För att visa eller manuellt redigera schemaläggares frekvens, med utvecklarläge aktiverat, gå till för att se alla schemalagda åtgärder för din databas.
Ange
Automationi sökfältet, och klicka sedan i resultatlistan på Automationsregler: kontrollera och kör. Om så önskas, uppdatera värdet för fältet Kör var. Klicka på Kör manuellt när som helst för att manuellt utlösa denna schemalagda åtgärd.Extra villkor: Klicka på Lägg till villkor, och ange sedan de villkor som måste uppfyllas för att automationsregeln ska köras. Klicka på Ny regel för att lägga till ytterligare ett villkor.
Åtgärden körs när fördröjningen har nåtts och villkoren är uppfyllda.
Example
För att skicka en påminnelse via e-post 30 minuter innan en kalenderhändelse börjar, välj Start (Calendar Event) som datumfält för utlösare och ställ in Delay till -30 Minutes.
Anpassad¶
Utlösa automatiserade åtgärder:
On save: när en post sparas.
On deletion: när en handling raderas.
Vid UI-ändring: när ett fältvärde ändras i formulärvyn, även innan posten sparas.
För utlösarna On save och On UI change måste du must sedan välja det eller de fält som ska användas för att utlösa automatiseringsregeln i fältet When updating.
Varning
Om inget fält har valts i fältet When updating kan den automatiska åtgärden utföras flera gånger per post.
Alternativt kan du också definiera ytterligare villkor som ska uppfyllas för att utlösa automatiseringsregeln i fältet Apply on.
Example
För att utlösa en automatiserad åtgärd vid skapandet av en post, t.ex. när en ny kontakt skapas, välj On save utlösare och använd ID is not set som Before Update Domain och ID is set som Apply on domän. Se till att rätt fält är valt i fältet When updating.
När en ny kontakt sparas tilldelas den automatiskt ett databas-ID, vilket utlöser automatiseringsregeln.
Observera
Utlösaren Vid UI-ändring kan endast användas med åtgärden Verkställ kod och fungerar bara när en ändring görs manuellt. Åtgärden verkställs inte om fältet ändras genom en annan automatiseringsregel.
Extern¶
Utlös automatiserade åtgärder baserat på en specifik händelse i ett externt system eller en extern applikation med hjälp av en webhook.
Efter att webhooken har konfigurerats i Odoo, där webhookens URL genereras och målposten definieras, måste den implementeras i det externa systemet.
Varning
Det är starkt rekommenderat att rådfråga en utvecklare, lösningsarkitekt eller en annan teknisk roll när man beslutar att använda webhooks och under hela implementeringsprocessen. Om de inte är korrekt konfigurerade kan webhooks störa Odoo-databasen och kan ta tid att återställa.
Observera
Det är också möjligt att skapa en automatiserad åtgärd som skickar data till ett externt systems webhook när en händelse inträffar i din Odoo-databas.
Se även
Åtgärder¶
När du har definierat automatiseringsregelns trigger, klicka på Add an action i fliken Actions To Do för att definiera åtgärden som ska utföras.
Tips
Du kan definiera flera åtgärder för samma automatiseringsregel. Som standard verkställs åtgärder i den ordning de definierades.
Detta innebär till exempel att om du definierar en Uppdatera post-åtgärd och sedan en Skicka e-post-åtgärd där e-posten refererar till fältet som uppdaterades, använder e-posten de uppdaterade värdena. Om däremot Skicka e-post-åtgärden definieras före Uppdatera post-åtgärden, använder e-posten värdena som satts innan posten uppdateras.
För att ändra ordningen på definierade åtgärder, klicka på ikonen (draghandtag) bredvid en åtgärd och dra den till önskad position.
Uppdatera rekord¶
Denna åtgärd uppdaterar ett av postens (relaterade) fält. Klicka på fältet Uppgradering och välj eller sök efter det fält som ska uppdateras i listan som öppnas. Om det behövs, klicka på (höger pil) bredvid fältnamnet för att komma åt listan över relaterade fält.
Om du valde ett många till många-fält, välj om fältet ska uppdateras genom att Lägga till, Ta bort, eller Ställa in det till det valda värdet eller genom att Rensa det.
Example
Om du vill att den automatiserade åtgärden ska ta bort en tagg från kundposten, ställ in fältet Uppgradering till Customer > Tags, välj by Removing och välj sedan taggen.
Tips
Alternativt kan du också ställa in ett posts fält dynamiskt med Python-kod. För att göra detta väljer du Beräkna istället för Uppdatera, och anger sedan koden som ska användas för att beräkna fältets värde. Om du till exempel vill att automationsregeln ska beräkna ett anpassat datum- och tidsfält när en arbetsuppgifts prioritet ställs in på Hög (genom att markera arbetsuppgiften med en stjärna), kan du definiera utlösaren Prioritet är inställd på till Hög och definiera åtgärden Uppdatera post enligt följande:
Skapa aktivitet¶
Den här åtgärden används för att schemalägga en ny aktivitet som är kopplad till posten. Välj en Activity Type, ange en Title och en beskrivning, ange sedan när du vill att aktiviteten ska schemaläggas i fältet Due Date In och välj en User type:
För att alltid tilldela aktiviteten till samma användare, välj Specific User och lägg sedan till användaren i fältet Ansvarig;
Om du vill rikta in dig på en användare som är dynamiskt kopplad till posten väljer du Dynamic User (based on record) och ändrar User Field om det behövs.
Example
När ett lead har omvandlats till en möjlighet vill du att den automatiska åtgärden ska ringa upp den användare som är ansvarig för leadet. Det gör du genom att ange Activity Type till Call och User Type till Dynamic User (based on record).
Skicka e-post och skicka SMS¶
Dessa åtgärder används för att skicka ett e-postmeddelande eller ett textmeddelande till en kontakt som är kopplad till en viss post. Det gör du genom att välja eller skapa en Email Template eller en SMS Template och sedan välja hur du vill skicka e-postmeddelandet eller textmeddelandet i fältet Send Email As eller Send SMS As:
Email: för att skicka meddelandet som ett e-postmeddelande till mottagarna i Email Template.
Message: för att lägga upp meddelandet på posten och meddela postens följare.
Note: för att skicka meddelandet som en intern anteckning som är synlig för interna användare i chatten.
SMS (utan anteckning): för att skicka meddelandet som ett textmeddelande till mottagarna av SMS-mallen.
SMS (med anteckning): för att skicka meddelandet som ett textmeddelande till mottagarna av SMS-mallen och lägga upp det som en intern anteckning i chatten.
Note only: för att endast lägga upp meddelandet som en intern anteckning i chatten.
Skicka WhatsApp¶
Viktigt
För att automatisera skickandet av WhatsApp-meddelanden måste en eller flera WhatsApp-mallar skapas.
Denna åtgärd används för att skicka ett WhatsApp-meddelande till en kontakt kopplad till en specifik post. För att göra detta, välj lämplig WhatsApp Template från rullgardinsmenyn.
Lägg till följare och ta bort följare¶
Denna åtgärd används för att prenumerera/avprenumerera befintliga kontakter till/från posten.
Skapa rekord¶
Denna åtgärd används för att skapa en ny post i en valfri modell.
Välj önskad modell i fältet Record to Create; som standard innehåller det den aktuella modellen. Ange ett Name för posten, och om du vill skapa posten i en annan modell väljer du ett fält i fältet Link Field för att länka den post som utlöste skapandet av den nya posten.
Observera
Rullgardinsmenyn som är relaterad till fältet Länkfält innehåller endast en till många-fält som finns på den aktuella modellen och som är länkade till ett många till ett-fält på målmodellen.
Tips
Du kan skapa en annan automatiseringsregel med Uppdatera rekord åtgärder för att uppdatera fälten i den nya posten om det behövs. Till exempel kan du använda en Skapa åtgärd för att skapa en ny projektuppgift och sedan tilldela den till en specifik användare med hjälp av en Uppgradering Record åtgärd.
Utför kod¶
Viktigt
För automatiseringsregler som kräver verkställande av anpassad kod, notera att underhåll av anpassad kod inte ingår i prisplanerna Standard eller Anpassad och medför ytterligare avgifter.
Denna åtgärd används för att exekvera Python-kod. Du kan skriva din kod i fliken Code med hjälp av följande variabler:
env: miljö där åtgärden utlösesmodel: modell av den post där åtgärden utlöses; är en void recordsetpost: post där åtgärden utlöses; kan vara ogiltig
records: postmängd av alla poster som åtgärden utlöses på i multiläge; detta kan lämnas tomttime,datetime,dateutil,timezone: användbara Python-bibliotekfloat_compare: verktygsfunktion för att jämföra flyttal baserat på specifik precisionlog(message, level='info'): loggningsfunktion för att registrera felsökningsinformation i ir.logging-tabellen_logger.info(message): logger för att skicka meddelanden i serverloggarUserError: undantagsklass för varningsmeddelanden riktade till användarenCommand: x2many kommandon namnområdeaction = {...}: för att returnera en åtgärd
Tips
De tillgängliga variablerna beskrivs både i flikarna Code och Help.
Se även
Skicka Webhook-avisering¶
Denna åtgärd används för att skicka en ”POST” API-förfrågan med värdena från de valda Fälten till webhook-URL:en som anges i fältet URL.
Sample Payload ger en förhandsvisning av de data som ingår i begäran med hjälp av data från en slumpmässig post eller dummydata om ingen post finns tillgänglig.
Observera
Det är också möjligt att installera en automatisk åtgärd som använder en webhook för att ta emot data från ett externt system när en fördefinierad händelse inträffar i det systemet.
Utföra befintliga åtgärder¶
Åtgärden används för att utlösa flera åtgärder (kopplade till den aktuella modellen) samtidigt. För att göra detta klickar du på Add a line och sedan, i popup-fönstret Add: Child Actions”, välj en befintlig åtgärd eller klicka på :guilabel:`New för att skapa en ny.