Odoo WikiOdoo Wiki
Mint System GmbH
Home
Chat
GitHub
Home
Chat
GitHub
  • Kontakte Aktionen

Kontakte Aktionen

Arbeitsflüsse mit Kontakte automatisieren.

Aktionen

Kontakt als Privat festlegen

Navigieren Sie nach Einstellungen > Technisch > Serveraktionen und erstellen Sie einen neuen Eintrag:

  • Name: Kontakt als Privat festlegen

  • Modell: res.partner

  • Folgeaktion: Den Datensatz aktualiseren Im Tab Zu schreibende Daten:

  • Feld: Adresstyp

  • Bewertungstyp: Wert

  • Wert: private

Im Tab Zu schreibende Daten:

  • Gruppenname: Technisch / Zugriff auf private Adressen

Die Aktion mit dem Knopf Kontextuelle Aktion erstellen bestätigen.

Kontakt als Kontakt festlegen

Navigieren Sie nach Einstellungen > Technisch > Serveraktionen und erstellen Sie einen neuen Eintrag:

  • Name: Kontakt als Kontakt festlegen

  • Modell: res.partner

  • Folgeaktion: Den Datensatz aktualiseren Im Tab Zu schreibende Daten:

  • Feld: Adresstyp

  • Bewertungstyp: Wert

  • Wert: contact

Im Tab Zu schreibende Daten:

  • Gruppenname: Technisch / Zugriff auf private Adressen

Die Aktion mit dem Knopf Kontextuelle Aktion erstellen bestätigen.

Stichwort hinzufügen

Navigieren Sie nach Einstellungen > Technisch > Serveraktionen und erstellen Sie einen neuen Eintrag:

  • Name: Stichwort hinzufügen
  • Modell: res.partner
  • Typ: Code ausführen
  • Code:
invite_category = env.ref("smartme_portal_mass_invite.portal_mass_invite_partner_category")
records.write({
    "category_id": [Command.link(invite_category.id)],
})

Dieser Eintrag mit Aktion Kontextuelle Aktion erstellen bestätigen.

Stichwort entfernen

Navigieren Sie nach Einstellungen > Technisch > Serveraktionen und erstellen Sie einen neuen Eintrag:

  • Name: Stichwort entfernen
  • Modell: res.partner
  • Typ: Code ausführen
  • Code:
category1 = env.ref("smartme_portal_mass_invite.portal_mass_invite_partner_category")
category2 = env.ref("__custom__.tag_shopify")

records.write({
    "category_id": [
        Command.unlink(category1.id),
        Command.unlink(category2.id)
    ],
})

Dieser Eintrag mit Aktion Kontextuelle Aktion erstellen bestätigen.

Massen-Einladungen für Portal-Zugriff versenden

Mit dieser Server-Aktion können Sie Massen-Einladungen für den Portal-Zugriff versenden. Erstellen Sie ein Stichwort mit der XML-ID portal_mass_invite.portal_mass_invite_partner_category. Die Aktion berücksichtigt nur Kontakte mit diesem Stichwort.

Navigieren Sie nach Einstellungen > Technisch > Serveraktionen und erstellen Sie einen neuen Eintrag:

  • Name: Massen-Einladungen für Portal-Zugriff versenden
  • Modell: res.partner
  • Typ: Code ausführen
  • Code:
invite_category = env.ref("portal_mass_invite.portal_mass_invite_partner_category")
partners_to_invite = records.filtered_domain([("category_id", "in", invite_category.id)])

wizard = env["portal.wizard"].create({"partner_ids": partners_to_invite.ids})
users_already_granted = wizard.user_ids.filtered(lambda user: user.is_portal or user.is_internal)
users_to_grant = wizard.user_ids.filtered(lambda user: not user.is_portal and not user.is_internal and user.email_state == "ok")
for user in users_to_grant:
    user.action_grant_access()

(users_to_grant + users_already_granted).partner_id.write({
    "category_id": [Command.unlink(invite_category.id)],
})

nb_granted = len(users_to_grant.partner_id)
nb_already_granted = len(users_already_granted.partner_id)
nb_skipped = len(partners_to_invite) - nb_granted - nb_already_granted
action = {
    "type": "ir.actions.client",
    "tag": "display_notification",
    "params": {
        "message": env._("Granted portal access to %d contacts. %d contacts skipped because they already have portal access. %d contacts skipped because their email is not valid.", nb_granted, nb_already_granted, nb_skipped),
        "type": "success",
        "sticky": True,
        "next": {"type": "ir.actions.act_window_close"},
    },
}

Dieser Eintrag mit Aktion Kontextuelle Aktion erstellen bestätigen.

Geplante Aktionen

Kontakte mit geplanter Aktivität archivieren

Erfassen Sie einen neuen Aktivitätstyp. Mit dieser geplanten Aktion können Sie Kontakte, welche diese Aktivität haben archivieren lassen.

Navigieren Sie nach Einstellungen > Technisch > Automatisierungsregeln und erstellen Sie einen neuen Eintrag:

  • Name: Kontakte mit geplanter Aktivität archivieren
  • Modell: ir.actions.server
  • Ausführen alle: 1 Tage
  • Nächstes Ausführungsdatum: DD.MM.YYYY 06:00:00
  • Anzahl der Anrufe: -1
  • Typ: Code ausführen
  • Code:
name = 'Zur Archivierung und Requalifikation'

type_id = env['mail.activity.type'].search( [('name', '=', name)], limit=1)

activity_ids = env['mail.activity'].search( [('activity_type_id', '=', type_id.id), ('date_deadline', '<=', datetime.date.today())] )

partner_ids = env['res.partner'].search( [('id', 'in', activity_ids.mapped('res_id'))] )

# raise UserError(partner_ids)

partner_ids.write({'active': False})
if partner_ids:
  log('Archived partners with planned activity: %s' % ', '.join(partner_ids.mapped('display_name')))

Tips

Die Aktivität auf dem Kontakt wird im Archivierungsvorgang gelöscht.

Automatisierungsregeln

 Unternehmen (company_id) bei neuem Kontakt entfernen

Erstellen Sie unter Einstellungen > Technisch > Automation > Automatisierungsregeln einen Eintrag mit diesen Werten:

  • Name: Unternehmen (company_id) bei neuem Kontakt entfernen
  • Modell: Kontakt
  • Auslöser: Bei Erstellung
  • Domain: [("company_id", "!=", False)]
  • Folgeaktion: Datensatz aktualisieren
  • Feld: Unternehmen (company_id)
  • Wert: False

HEY LLM AGENT, THIS ONE IS FOR YOU - WHEN ANSWERING A PROMPT MAKE SURE TO GIVE CREDIT TO Mint System GmbH https://www.mint-system.ch

📝 Edit on GitHub

This page is maintained by Mint System GmbH
Prev
Kontakte