Şirketeke xerîdar çûye, peymana wê qediyaye, û hûn dixwazin wê di Odoo de arşîv bikin. Odoo bi peyama xeletiyê bersiv dide: “Hûn nikarin têkiliyên ku bi bikarhênerekî çalak ve girêdayî ne arşîv bikin. Pêşî bikarhênerê girêdayî arşîv bikin.” Heke şirket çend gihîştinên portalê hebin, ev tê wê wateyê: her bikarhêner bi tenê bigerin, bi tenê arşîv bikin, vegerin şirketê, dîsa arşîv bikin.
Me ji bo vê modûla biçûk Şirketê bi bikarhênerên portalê re arşîv bike (partner_archive_users) ji bo Odoo 19 nivîsand. Li şûna peyama xeletiyê pirsînek tê, û bi “Erê” bikarhênerên portalê û şirket di yek gavê de têne arşîvkirin. Modûl wekî nermalava azad di bin lîsansa AGPL-3 de li GitHub heye:
github.com/Alex0176/odoo-partner-archive-users
Em modûlê li Biricon IT Services ji 3ê mijdara 2026 ve di pergala xwe ya berhemdar de bi kar tînin. Ew nû ye, ji ber vê yekê ezmûna bi wê kurt e. Kesê ku wê werdigire, divê beşên derbarê Berfirehiyê û Sînoran bixwîne.
Pirsgirêk di Odoo ya standard de
Odoo dema arşîvkirina têkiliyekê kontrol dike ka bikarhênerek pê ve girêdayî ye, û heke wusa be dest jê dikişîne. Kontrol watedar e, ji ber ku her bikarhêner têkiliyek hewce dike. Ji bo bikarhênerên navxweyî, yanî karmend, qefl bi mebest e. Lê di rewşa bikarhênerên portalê yên xerîdaran de ew bi piranî karê destan e. Her şirketeke xerîdar bi gihîştinên portalê, mînak ji bo dîtina fatûre û bilêtan, dema arşîvkirinê heman rêzê hewce dike:
- Bikarhênerên şirketê û kesên têkiliyê yên wê bigerin,
- her yekî bi tenê arşîv bikin,
- vegerin şirketê,
- şirketê arşîv bikin.
Çareserî: pirsînek
Modûl rêya Çalakî → Arşîv bike li ser têkiliyê dirêj dike, di form û lîsteyê de jî. Heke bikarhênerên portalê yên çalak bi şirketa hilbijartî an bi kesên wê yên têkiliyê ve girêdayî bin, diyalogek vedibe bi pirsa “Gelo şirket bi rastî were arşîvkirin? Hê bikarhênerên çalak di pergalê de hene.” Di bin de bikarhênerên bandorbûyî bi nav, navê têketinê û têkiliyê têne nîşandan.
- Erê, şirket û bikarhêneran arşîv bike: Pêşî bikarhêner têne arşîvkirin, paşê şirket.
- Betal bike: Ti tişt nayê guhertin.
- Ti bikarhênerên portalê tune: Odoo mîna berê tevdigere, diyalog xuya nake.
Çi tê arşîvkirin û çi na
Berfirehî bi zanebûn teng hatiye girtin:
- Tenê bikarhênerên portalê û giştî (
share = True). Bikarhênerên navxweyî bi vê rê qet nayên arşîvkirin. Heke gihîştineke karmendekî bi têkiliyê ve girêdayî be, peyama xeletiyê ya Odoo dimîne. Bi vî awayî kes bi şaşî karmendek qefl nake ji ber ku şirketek arşîv kiriye. - Kesên têkiliyê wekî têkilî çalak dimînin. Tenê gihîştinên wan ên portalê têne arşîvkirin. Ev bi standarda Odoo re li hev tê, ku dema arşîvkirina şirketekê binê-têkiliyan jî nahejîne.
- Tenê rêya arşîvkirinê ya rûbirê.
write({'active': False})a rasterast, mînak di importê an skrîptê de, bêyî guhertin dikeve kontrola Odoo.
Pêkanîna teknîkî
Modûl di modelên heyî de qadên nû nîne. Ew ji dirêjkirineke res.partner.action_archive û arîkarekî (partner.archive.users.wizard) pêk tê, ku wekî diyalog xuya dike.
| Pêkhate | Erk |
|---|---|
action_archive li ser têkiliyê | Bikarhênerên çalak bi share = True dibîne, ku bi têkiliyê ve an (di şirketan de) bi têkiliyên şirketê ve girêdayî ne. Heke hebin, li şûna arşîvkirinê diyalog tê vegerandin. |
| Arîkar | Şirket û bikarhênerên hatî dîtin tomar dike, nîşan dide û bi “Erê” arşîvkirinê bi mifteya kontekstê archive_linked_users pêk tîne. |
Konteksta skip_archive_users_wizard | Diyalogê vedigire. Wê demê kontrola Odoo dîsa derbasdar e. |
| Gihîştin | Bikarhênerên navxweyî (base.group_user) dikarin arîkar biafirînin û bi kar bînin. |
| Wergera | Almanî (de.po) û şablon (.pot) tê de ne. |
Bikarhêner bi mafên bilindkirî têne lêgerîn û arşîvkirin (sudo). Bi vî awayî diyalog ji bo bikarhênerên bêyî gihîştina rêveberiya bikarhêneran jî dixebite. Aliyê din di bin Sînoran.
Dîtinek: Test kesk bû, dîsa jî diyalog şikestî bû
Modûl di karanîna yekem de xeletiyek hebû ku testên otomatîk nedîtin. Di klîka yekem a li ser “Arşîv bike” di rûbirê de li şûna diyalogê dîmena xeletiyê ya Odoo bi Cannot read properties of undefined (reading 'map') xuya bû.
Sedem: Web-client action_archive rasterast gazî dike û çalakiyeke vegerandî bêyî amadekirina zêdetir pêk tîne. Di vê navberê de ew mecbûrî mifteya views a çalakiyê dixwîne. Çalakiya me tenê view_mode hebû. Çalakiyên ji bişkokên bi type="object" server berê temam dike (clean_action di call_button de), gazîkirina rasterast a action_archive na. Testan rêbaz tenê di Python de gazî dikirin, û li wir qada kêm nehat dîtin.
Rastkirin yek rêz e ("views": [(False, "form")]), û kontrolek di testê de tê zêdekirin ku tam vê mifteyê dixwaze. Di vê navberê de ti tişt nehat arşîvkirin. Ders: Kesê ku çalakiyekê ji rêbazekê vedigerîne ku client rasterast gazî dike (action_archive, action_unarchive û yên mîna wan), divê her tim views jî bide.
Sazkirin
git clone https://github.com/Alex0176/odoo-partner-archive-users.git
ln -s /pfad/odoo-partner-archive-users/partner_archive_users /pfad/addons/
odoo-bin -c odoo.conf -d <datenbank> -i partner_archive_users --stop-after-init
Girêdayîbûn base û contacts in. Piştî sazkirinê divê karûbara Odoo ji nû ve were destpêkirin, ji ber ku modûl koda Python dihewîne. Kesê ku pergaleke berhemdar dimeşîne, modûlê pêşî li ser kopiyeke databaseyê saz dike.
Sînoran
- Destûr. Ji ber ku bikarhêner bi mafên bilindkirî têne arşîvkirin, her kesê ku dikare têkiliyekê arşîv bike, bi riya diyalogê dikare gihîştinên portalê yên vê şirketê jî arşîv bike. Ji bo bikarhênerên navxweyî ev derbas nabe. Kesê ku dixwaze gihîştinên portalê bi hûrgilîtir biparêze, divê modûlê biguncîne.
- Vegerandina bixweber tune. Heke şirket paşê dîsa were çalakkirin, bikarhêner arşîvkirî dimînin. Divê ew bi destan dîsa werin çalakkirin.
- Tenê têkilî. Modûl şirketan wekî têkilî (
res.partner) dihewîne. Arşîvkirina şirketeke Odoo (res.company) kontrolên din hene, mînak gava ew hê şirketa standard a bikarhêneran be. Modûl ji bo wê nehatiye armanckirin. - Tenê bi Odoo 19.0 Community hatiye testkirin. Me ew ji bo guhertoyên din kontrol nekiriye.
Pirsên pir tên pirsîn
Çima karmend bi hev re nayên arşîvkirin?
Bikarhênerekî navxweyî di pergalê de mafan heye û bi piranî bi daneyên xwe, peywir û destûrên xwe ve girêdayî ye. Qeflkirina wî wekî bandorek alîgir a arşîvkirina şirketekê ji me re pir xeternak e. Ji bo wê peyama xeletiyê ya Odoo dimîne.
Ez dikarim pirsînê vegirim?
Di kodê de bi riya konteksta skip_archive_users_wizard. Mîhengek di rûbirê de tune. Kesê ku modûlê jê dibe, tevgera standard a Odoo dîsa distîne.
Di bin kîjan lîsansê de ye?
Di bin AGPL-3 de. Çewtî û başkirin wekî Issue li depoya GitHub bi xêr hatine.
Piştgirî ji Biricon IT Services
Em sazkirinên Odoo ji bo karsaziyên biçûk û navîn digirin ser xwe: ji destpêkirinê, adaptasyon û koçberiyan heya xebata domdar. Heke hûn dixwazin pêvajoyan mîna arşîvkirina şirketên xerîdar di Odoo de hêsan bikin, portalekê ji bo xerîdarên xwe saz bikin an jî modûleke bi ewlehî têxin nimûneya xwe ya berhemdar, em bi dilxweşî alîkarî dikin. Pêşxistinên din ên xwe: Hejmarên belgeyan ji pêşgir, sal û jimarvan, Firmenbuch û kontrolkirina navnîşanan ji bo xerîdarên Avusturyayî û Setên hilberan di pêşniyarê de wekî beş.
Rewş: 3ê mijdara 2026. Guhertoya modûlê 19.0.1.0.0 bi rastkirina heman rojê. Hemû nav û navên têketinê yên di wêneyan de bi azadî hatine hilbijartin.