đŸ€– Claude pravi novi programski modul "sam-samcijat" na "Odoo" open-source platformi


Problem

Uočio sam da Telemach računi prilikom pripreme plaćanja nemaju dobru referencu. Odmah je bilo uočljivo da je AI OCR modul pogreơno popunjavao polje ulaznog računa referenca za plaćanje. Međutim, nakon ơto sam to ispravio primjetio sam da i dalje nudi staru referencu. Nisam mogao skontati odakle je izvlači pa sam pitao Claude-a.

Nađi “root cause”

Claude je naĆĄao uzrok - payment referenca se ne vadi iz hedera ulaznog računa, kako sam ja to očekivao, nego iz 432 linije knjiĆŸenja (Dobavljač).

Claude istraĆŸuje odakle dolazi pogreĆĄna referenca

Faktura UF/25/12/0007 ima ispravnu payment_reference = 9034061270, ali payment wizard nudi 1360. Claude je pronaĆĄao da payable linija (konto 4320000) ima name = "1360".

Claude pronalazi root cause

ZaĆĄto se name ne aĆŸurira?

Naravno, slijedilo je pitanje “zaĆĄto?”. Claude je pretraĆŸio kod i pronaĆĄao problem u account_move_line.py:

Claude analizira _compute_name metodu

Metoda _compute_name na linijama 461-485 aĆŸurira payable line name samo ako:

  • line.name je prazan, ILI
  • line._origin.name == line._origin.move_id.payment_reference

PoĆĄto je payable line’s name inicijalno postavljen na “1360” (ne iz payment_reference), uvjet pada i name se nikada ne aĆŸurira kada se payment_reference promijeni.

Claude počinje sa fix-om u l10n_ba modulu

Claude je odmah nastavio sa aĆŸuriranjem modula l10n_ba na kome sam radio:

Claude aĆŸurira l10n_ba modul

Dodao je write metodu koja sinkronizira payable/receivable line name kada se payment_reference ili ref aĆŸurira.

Halo Claude đŸ€–, ne barkaj mi po l10n_ba!

Ali tu sam reagovao - ne ĆŸelim tu logiku u l10n_ba modulu!

Revert l10n_ba promjena

Rekao sam mu da vrati to nazad i da napravi novi modul.

l10n_ba_payment_reference

Claude me je bez pogovora posluĆĄao:

Claude kreira novi modul

  1. Revertovao l10n_ba promjene
  2. Kreirao novi modul l10n_ba_payment_reference

Novi modul sa svom strukturom

  • __manifest__.py sa opisom i AGPL-3 licencom
  • models/account_move.py sa logikom
  • README.md sa dokumentacijom
  • pyproject.toml za package management
  • Inicijalizirao git i kreirao GitHub repozitorij

Instalacija u produkciju

UspjeĆĄna instalacija

Instalacija je bila uspjeĆĄna. Novi modul l10n_ba_payment_reference:

  1. Kreiran sa dedikovanom funkcionalnoơću za sinkronizaciju payment_reference/ref sa payable line name
  2. GitHub repo kreiran na https://github.com/bringout/odoo-bringout-l10n_ba_payment_reference
  3. Instaliran u produkciju

Rezime

Kada aĆŸurirate payment_reference ili ref polje na ulaznom računu, payable/receivable linija name polje će se automatski aĆŸurirati. To osigurava da payment communication polje pokazuje ispravnu referencu prilikom kreiranja plaćanja iz ulaznih računa.

Ova sesija je trajala nekih 20 minuta.

Ocjena

Ovaj zadatak Claude je uradio sa čistom peticom! 🏆

Video


Napomena

Članak je izgenerisao Claude, Ernad pregledao.