Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update res_partner.py #57

Open
wants to merge 2 commits into
base: 8.0
Choose a base branch
from
Open

Update res_partner.py #57

wants to merge 2 commits into from

Conversation

cbssolutions
Copy link
Contributor

from mfinante address after the street number exists the city.
now it's writing also the city in res.partners

from mfinante address after the street number exists the city.
now it's writing also the city in res.partners
@yoyo2k
Copy link
Contributor

yoyo2k commented Feb 7, 2015

De ce nu folosești re.compile?

@cbssolutions
Copy link
Contributor Author

Nu-s chiar programator.

De ce nu folosești re.compile?


Reply to this email directly or view it on GitHub
https://github.com/odoo-romania/l10n-romania/pull/57#issuecomment-73366367
.

@yoyo2k
Copy link
Contributor

yoyo2k commented Feb 7, 2015

  1. E good practice să folosești re.compile.
  2. Nu merge prea bine

In [1]: import re

In [2]: adresa ='bd i m 93-105, bl 14, bucuresti'

In [3]: city=re.search(r'\d+.*$',adresa).group()

In [4]: city

Out[4]: '93-105, bl 14, bucuresti'

In [5]: city=re.search(r'\s.*$',city).group().strip()

In [6]: city

Out[6]: 'bl 14, bucuresti'

@yoyo2k
Copy link
Contributor

yoyo2k commented Feb 10, 2015

@alexteodor cum ramane?

@cbssolutions
Copy link
Contributor Author

city=re.split(r'(\w_\d+\w_|,|:|;)',adresa)[-1].strip()

acum iau ce urmeaza dupa un cuvant care are numar dar tot nu-i perfect

daca adresa este: str unirii bucuresti va lua incorect ca city str unirii
bucuresti.

daca adresa este: str unirii, bucuresti va lua corect bucuresti

On Tue, Feb 10, 2015 at 1:13 PM, Adrian Vasile [email protected]
wrote:

@alexteodor https://github.com/alexteodor cum ramane?


Reply to this email directly or view it on GitHub
https://github.com/odoo-romania/l10n-romania/pull/57#issuecomment-73682996
.

Cu respect,
Alexandru
+40788 599 005

city=re.split(r'(\w*\d+\w*|,|:|;)',adresa)[-1].strip()

acum iau ce urmeaza dupa un cuvant care are numar dar tot nu-i perfect

daca adresa este: str unirii bucuresti va lua incorect ca city str unirii bucuresti.

daca adresa este: str unirii, bucuresti va lua corect bucuresti
@feketemihai
Copy link
Owner

Parerea mea ca ar trebui sa iei recursiv de la capat..primul cuvant si il cauti in orase...daca nu il gaseste mai iei un cuvant si il concatenezi si verifici iar...verificarea trebuie facuta pe oras + judet ca sa nu iei un oras cu acelasi nume din alt judet...

@yoyo2k
Copy link
Contributor

yoyo2k commented Feb 12, 2015

Cea mai bună treabă e să scoată bigrame din adresă şi să măsoare distanța între bigram şi oraş/judeţ cu ceva gen Levenstein.
Sau, să pornească de la coada adresei şi să folosească metoda de mai sus.

@yoyo2k
Copy link
Contributor

yoyo2k commented Feb 12, 2015

PS: unicodedata nu e în distribuția python 2+?

@feketemihai
Copy link
Owner

Ba..se pare ca da..nu stiu de ce la mine nu a mers..a trebuit instalat...ciudat...

@cbssolutions
Copy link
Contributor Author

Momentan este vorba doar sa completeze campul de tip char city din
distributia default, deci nu are baza de date cu orase.

Chiar daca ar exista vreo eroare nu ar fi mare; este o facilitate daca
citeste de pe mfinante; cand ia de pe openapi pune campul de city.

2015-02-12 7:41 GMT+02:00 Fekete Mihai [email protected]:

Parerea mea ca ar trebui sa iei recursiv de la capat..primul cuvant si il
cauti in orase...daca nu il gaseste mai iei un cuvant si il concatenezi si
verifici iar...verificarea trebuie facuta pe oras + judet ca sa nu iei un
oras cu acelasi nume din alt judet...


Reply to this email directly or view it on GitHub
https://github.com/odoo-romania/l10n-romania/pull/57#issuecomment-74020753
.

Cu respect,
Alexandru
+40788 599 005

@yoyo2k
Copy link
Contributor

yoyo2k commented Feb 12, 2015

Dacă ai siruta ai și orașele și atunci poți face ceva drăguț. Cu regex, da, poți face dacă ești relativ sigur pe datele de intrare, iar mfinante... nu cred că e

@cbssolutions
Copy link
Contributor Author

Modulul este doar sa ajute operatorul. Nu trebuie ca datele sa fie perfecte
le are in contract/ factura si le poate compara/corecta.
Nu cred ca se pune problema ca datele sa fie perfecte.
La mine cand instalez siruta nu imi cauta corect nici judetele adica daca
scriu a nu imi da toate judetele cu A
On Feb 12, 2015 1:22 PM, "Adrian Vasile" [email protected] wrote:

Dacă ai siruta ai și orașele și atunci poți face ceva drăguț. Cu regex,
da, poți face dacă ești relativ sigur pe datele de intrare, iar mfinante...
nu cred că e


Reply to this email directly or view it on GitHub
https://github.com/odoo-romania/l10n-romania/pull/57#issuecomment-74055713
.

@yoyo2k
Copy link
Contributor

yoyo2k commented Feb 12, 2015

Ctrl-X Ctrl-V atunci :)

Iți spun, asa nu o să reușești niciodată să iei date corecte pentru câmpul ăla.

@cbssolutions
Copy link
Contributor Author

Da-mi un exemplu de pe mfinate la care da gres.
Este vorba de cei care nu vor sa isi instaleze si strazile sau orase/comune
& nu folosesc localizarea geo (localizarea ar trebui sa aiba 6 zecimale)
On Feb 12, 2015 3:17 PM, "Adrian Vasile" [email protected] wrote:

Ctrl-X Ctrl-V atunci :)

Iți spun, asa nu o să reușești niciodată să iei date corecte pentru câmpul
ăla.


Reply to this email directly or view it on GitHub
https://github.com/odoo-romania/l10n-romania/pull/57#issuecomment-74068509
.

@yoyo2k
Copy link
Contributor

yoyo2k commented Feb 12, 2015

o firmă de apartament…
sau RO25613345

In [41]: adresa = 'Simion Bărnuțiu - Timișoara'

In [42]: re.split(r'(\w_\d+\w_|,|:|;)',adresa)[-1].strip()
Out[42]: 'Simion B\xc4\x83rnu\xc8\x9biu - Timi\xc8\x99oara’

sau vechea varianta

In [44]: city=re.search(r'\d+.*$',adresa).group()

AttributeError Traceback (most recent call last)
in ()
----> 1 city=re.search(r'\d+.*$',adresa).group()

AttributeError: 'NoneType' object has no attribute ‘group'

mai repede face utilizatoru cut/paste decât o implementare cu probleme,
să stea să verifice dacă e ok orașu (sărind peste faptu că mai aruncă și
excepții)

PS: când scrii a, atunci caută litera în tot cuvântul, nu trebuie să-nceapă
cu acea literă. Așa funcționează căutarea în odoo (i)like

@cbssolutions
Copy link
Contributor Author

M-ai inchis; cu minus-ul care poate fi si in localitate sau municipiu. Sau
sa punem sa desparta si cu - dar ar putea fi scris baia -mare.

Orice varianta ar fi, eu tot as pune sa completeze si orasul. Oare la
adresa respectiva ce oras apare in open api.

Multumesc pt ilike.
On Feb 12, 2015 3:39 PM, "Adrian Vasile" [email protected] wrote:

o firmă de apartament…
sau RO25613345

In [41]: adresa = 'Simion Bărnuțiu - Timișoara'

In [42]: re.split(r'(\w_\d+\w_|,|:|;)',adresa)[-1].strip()
Out[42]: 'Simion B\xc4\x83rnu\xc8\x9biu - Timi\xc8\x99oara’

sau vechea varianta

In [44]: city=re.search(r'\d+.*$',adresa).group()

AttributeError Traceback (most recent call last)
in ()
----> 1 city=re.search(r'\d+.*$',adresa).group()

AttributeError: 'NoneType' object has no attribute ‘group'

mai repede face utilizatoru cut/paste decât o implementare cu probleme,
să stea să verifice dacă e ok orașu (sărind peste faptu că mai aruncă și
excepții)

PS: când scrii a, atunci caută litera în tot cuvântul, nu trebuie să-nceapă
cu acea literă. Așa funcționează căutarea în odoo (i)like


Reply to this email directly or view it on GitHub
https://github.com/odoo-romania/l10n-romania/pull/57#issuecomment-74071471
.

@yoyo2k
Copy link
Contributor

yoyo2k commented Feb 12, 2015

Timișoara, dar să faci 2 reqs pentru niște date e overkill.
Iar prioritatea e mfin.. acolo sunt datele actuale.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants