Podrška #25652
ZatvorenModul MAT, semafori
100%
Povezani tiketi 2 (0 otvoreno — 2 zatvorenih)
Izmjenjeno od Saša Vranić prije oko 13 godina
sada treba riješiti semafore na modulu mat
čišćenje opcija ažuriranja itd...
Izmjenjeno od Saša Vranić prije oko 13 godina
ubacio novi mat_semaphores.prg na osnovu fakt_semaphores.prg fajla
https://github.com/knowhow/F18_knowhow/commit/a1f3aabc606ac196d20549960ee4a7296c0feb9f
i sada u njemu stavljam semafore za ove 4 mat tabele
Izmjenjeno od Saša Vranić prije oko 13 godina
ubacio sve četiri tabele u semafore
https://github.com/knowhow/F18_knowhow/commit/31a320769ff0146be7d479e822c514a6dc12b57b
Izmjenjeno od Saša Vranić prije oko 13 godina
sada te semafore postavimo u a_dbfs definicije da bi se radila sinhronizacija
Izmjenjeno od Saša Vranić prije oko 13 godina
ubacio u a_dbfs matricu pozive semafora za mat modul
https://github.com/knowhow/F18_knowhow/commit/952cb37fa4aba835baad5e90ef5c7a0d1827e280
ubacio i tabelu mat_karkon kao tip šifrarnik semafor
Izmjenjeno od Ernad Husremović prije oko 13 godina
ovdje si se nešto puno zadržao ?
molim te da nastaviš sa verbose režimom ticketiranja
Izmjenjeno od Saša Vranić prije oko 13 godina
ne nisam se puno zadržao nego sa nakon zadnjeg posta na tiketu bio u ... i ležao jer mi je muka
Izmjenjeno od Saša Vranić prije oko 13 godina
semafore ubacio i semafori rade...
naredni korak je čišćenje funkcije ažuriranja i ubacivanje update sql funkcija
Izmjenjeno od Saša Vranić prije oko 13 godina
ali mi je trenutno loše pa nikako da nastavim
Izmjenjeno od Saša Vranić prije oko 13 godina
probam nastaviti...
postojeća funkcija ažuriranja mat naloga je koliko toliko čista
https://github.com/knowhow/F18_knowhow/blob/master/mat/mat_unos_naloga.prg#L538
mogu reći najčišća do sada viđeno :)
ali je ipak treba razbiti na neke logične cjeline
- provjera naloga prije ažuriranja
- ažuriranje dbf-a
- ažuriranje sql
- itd...
Izmjenjeno od Saša Vranić prije oko 13 godina
prije svega ću izdvojiti ažuriranje u zaseban prg fajl
https://github.com/knowhow/F18_knowhow/commit/cecd5028d1bf605fe726ccbd4c1b8127fb64ec99
Izmjenjeno od Saša Vranić prije oko 13 godina
sredio funkcije ažuriranja, dotjerao, ispeglao itd....
https://github.com/knowhow/F18_knowhow/commit/c21c37dfd737e2e87299449f09a989b7cb565d89
sada ostaje da napravim sql ažuriranje...
Izmjenjeno od Saša Vranić prije oko 13 godina
pođonio sam fin funkciju za ažuriranje naloga u sql bazu, pošto su iste tabele i skoro ista polja
https://github.com/knowhow/F18_knowhow/commit/26474f24d2b93b98093fd2ed1cd428e8558e8710
Izmjenjeno od Saša Vranić prije oko 13 godina
pokušao da napravim jedan MAT nalog ali imam lock-required grešku
Error DBFCDX/1022 Lock required Called from (b)FIELDBLOCK(0) Called from GATHER(89) Called from OSVCIJSIF(1018) Called from EDITPRIPR(232) Called from MAT_PRIPR_KEY_HANDLER(481) Called from (b)MAT_KNJIZI_NALOG(113) Called from OBJDBEDIT(177) Called from MAT_KNJIZI_NALOG(113) Called from MAT_KNJIZENJE_NALOGA(36) Called from (b)TMATMOD_MMENUSTANDARD(68) Called from MENU_SC(1783) Called from TMATMOD:MMENUSTANDARD(140) Called from TMATMOD:MMENU(51) Called from TMATMOD:RUN(149) Called from MAINMAT(31)
Izmjenjeno od Saša Vranić prije oko 13 godina
po uzoru na
https://github.com/knowhow/F18_knowhow/commit/ca3509d33d1ac80cc1cb3879a
sa tiketa #25610
napravio i u mat-u
https://github.com/knowhow/F18_knowhow/commit/40d3bbfd894fee755b96cab271f7824117b2f2e2
međutim i dalje ista greška
Izmjenjeno od Ernad Husremović prije oko 13 godina
- Status promijenjeno iz Novo u Dodijeljeno
- Prioritet promijenjeno iz Normalan u Odmah riješiti
teško mi je pratiti na ovaj način na koji izvještavaš. opiši na kojoj ti se tabeli problem dešava, na kojoj tačci u kodu
Izmjenjeno od Ernad Husremović prije oko 13 godina
generalno izjveštavanje ti je nepregledno stalno stavljaš commit-e. nikada se ne pozicioniraš na određenu liniju i dijelove koji su najinteresantniji u kontekstu konkretnog problema
Izmjenjeno od Saša Vranić prije oko 13 godina
hm... to je ova linija i funkcija
https://github.com/knowhow/F18_knowhow/blob/master/mat/mat_unos_naloga.prg#L948
radi scatter("q") gather("q")
pa na gather-u ispada
međutim veoma upitno je ovdje čemu radi scatter i gather, koliko vidim ništa se ne mijenja u samom šifrarniku !?
Ovu funkciju apsolutno treba ispraviti !
Izmjenjeno od Ernad Husremović prije oko 13 godina
gledajući izvještaj o grešci vidim da se koristi gather funkcija. ona se uopšte ne treba koristiti.
vjerovatno još jednom trebaš pregledati implemetnaciju semafora u FAKT
Izmjenjeno od Ernad Husremović prije oko 13 godina
Saša Vranić je napisao/la:
hm... to je ova linija i funkcija
https://github.com/knowhow/F18_knowhow/blob/master/mat/mat_unos_naloga.prg#L948
radi scatter("q") gather("q")
pa na gather-u ispada
međutim veoma upitno je ovdje čemu radi scatter i gather, koliko vidim ništa se ne mijenja u samom šifrarniku !?
Ovu funkciju apsolutno treba ispraviti !
ne diraj to !
te funkcije su legacy !
Izmjenjeno od Ernad Husremović prije oko 13 godina
gledaš i ideš u pogrešnom smjeru.
Izmjenjeno od Ernad Husremović prije oko 13 godina
vidim sada da je kod koji pominješ veoma sličan update-u vpc cijene u KALK-u
baš sam na refactoring ticketu (nešto update sql refactor) to prikazivao. izgleda da nisi na to obratio pažnju
Izmjenjeno od Ernad Husremović prije oko 13 godina
kada sam rekao "ne diraj" mislim na to da mijenjaš funkcije gather i scatter...
trebaš detaljno iščitati moje aktivnosti refactoring-a F18 koda.
Izmjenjeno od Saša Vranić prije oko 13 godina
da da, sad vidim na ovom primjeru
https://github.com/knowhow/F18_knowhow/blob/fbe48747cafd1930d8/kalk/kalk_magacin_utils.prg#L625
Izmjenjeno od Saša Vranić prije oko 13 godina
hm da... scatter("q") pa onda qnc, qmpc itd... dešava se promjena
Izmjenjeno od Saša Vranić prije oko 13 godina
ok, ovdje treba primjeniti identično kao na gornjem primjeru nove funkcije
Izmjenjeno od Saša Vranić prije oko 13 godina
dobro, korigovao sam funkciju
https://github.com/knowhow/F18_knowhow/commit/40a25071fc15e108a7532a46b6aeb411af669d8c
sada se koristi update_rec_dbf_and_server()
https://github.com/knowhow/F18_knowhow/blob/master/mat/mat_unos_naloga.prg#L1026
Izmjenjeno od Saša Vranić prije oko 13 godina
Dobro, nakon ovoga nalog mogu napraviti u pripremi, mogu ga i štampati ali ažurirati NE
Javlja mi da nalog nije odštampan.
Izmjenjeno od Saša Vranić prije oko 13 godina
to je ova funkcija
https://github.com/knowhow/F18_knowhow/blob/master/mat/mat_azuriranje.prg#L112
a poziva se odavde
https://github.com/knowhow/F18_knowhow/blob/master/mat/mat_azuriranje.prg#L39
Izmjenjeno od Saša Vranić prije oko 13 godina
pronašao sam razlog, pogrešan naziv funkcije kod štampe
https://github.com/knowhow/F18_knowhow/commit/6c1af3a1dbd6a33cf8a2a9fb50b93a6bf85e9f22
kod čišćenja greška
Izmjenjeno od Saša Vranić prije oko 13 godina
dobro, kod ažuriranja sql se fino ažurira, provjerio sam na serveru sve četiri tabele
međutim dbf neće, radi greške
Error DBFCDX/1001 Open error: mat_panal.dbf (DOS Error 2) Called from __DBAPP(0) Called from _MAT_AZUR_DBF(443) Called from AZUR_MAT(160) Called from MAT_PRIPR_KEY_HANDLER(515) Called from (b)MAT_KNJIZI_NALOG(113) Called from OBJDBEDIT(177) Called from MAT_KNJIZI_NALOG(113) Called from MAT_KNJIZENJE_NALOGA(36) Called from (b)TMATMOD_MMENUSTANDARD(68) Called from MENU_SC(1783) Called from TMATMOD:MMENUSTANDARD(140) Called from TMATMOD:MMENU(51) Called from TMATMOD:RUN(149) Called from MAINMAT(31)
da, ovdje se koristi append from
https://github.com/knowhow/F18_knowhow/blob/master/mat/mat_azuriranje.prg#L442
Izmjenjeno od Saša Vranić prije oko 13 godina
ovo treba promjeniti svakako...
treba napraviti standardni append podataka
do while !EOF() uzmi... stavi... enddo
Izmjenjeno od Ernad Husremović prije oko 13 godina
https://github.com/knowhow/F18_knowhow/blob/master/mat/mat_azuriranje.prg#L442
ovaj link će već kod sljedeće promjene na ovom fajlu biti out-of-date. koristi tekući commit. znači umjesto "/master/" imaš mogućnost da koristiš neki commit "/bjjbajbjbjbj/"
Izmjenjeno od Saša Vranić prije oko 13 godina
Modifikovao sam funkciju ažuriranja podataka u dbf.
https://github.com/knowhow/F18_knowhow/commit/ed9fe29f80d45898ca798459ccbbd55c972d1f1c
znači napravio sam klasičnu append blank strukturu
https://github.com/knowhow/F18_knowhow/blob/master/mat/mat_azuriranje.prg#L443
ali sada dobijam skroz drugu grešku
Error BASE/1132 Bound error: array access Called from F18_GATHER(202) Called from UPDATE_REC_ON_SERVER(44) Called from UPDATE_REC_DBF_AND_SERVER(63) Called from _MAT_AZUR_DBF(454) Called from AZUR_MAT(160) Called from MAT_PRIPR_KEY_HANDLER(515) Called from (b)MAT_KNJIZI_NALOG(113) Called from OBJDBEDIT(177) Called from MAT_KNJIZI_NALOG(113) Called from MAT_KNJIZENJE_NALOGA(36) Called from (b)TMATMOD_MMENUSTANDARD(68) Called from MENU_SC(1783) Called from TMATMOD:MMENUSTANDARD(140)
da, to je puširanje podataka na server a to mi u ovom slučaju ne treba !!!
Kako praviti bivše scatter() gather() klauzule na lokalnim bazama koje ne trebaju osvježavanje na server ????
Izmjenjeno od Ernad Husremović prije oko 13 godina
napravio dbf_update_rec
nisam testirao, ali računam da će proraditi
Izmjenjeno od Ernad Husremović prije oko 13 godina
update dbf bez slanja na server¶
local _fields ... // pročitaj _fields := dbf_get_rec() // snimi dbf_update_rec(_fields) ..
Izmjenjeno od Saša Vranić prije oko 13 godina
Nije ti ova funkcija dobra, ispravio je:
https://github.com/knowhow/F18_knowhow/commit/dd22ee19b2abf21ef7895a6a61abdef91bed2c9e
sada radi kako treba, nalog se ažurira
Izmjenjeno od Ernad Husremović prije oko 13 godina
Saša Vranić je napisao/la:
Nije ti ova funkcija dobra, ispravio je:
https://github.com/knowhow/F18_knowhow/commit/dd22ee19b2abf21ef7895a6a61abdef91bed2c9e
sada radi kako treba, nalog se ažurira
evo kako trebaš ticketirati.
primjeti da od "dd22ee19b2abf21ef7895a6a61abdef91bed2c9e" veći dio sa desne strane možeš otkinuti - dovoljno je napisati "dd22ee19b2abf"
Imaš view file za određeni commit, i tu se pozicioniraš na liniju:
pa kažeš dbf_update_rec radi
Izmjenjeno od Ernad Husremović prije oko 13 godina
međutim ti izgleda sa svojim vi editorom "uništiš" formatiranje prg-a
to sam i ranije primjetio.
Izmjenjeno od Ernad Husremović prije oko 13 godina
Izmjenjeno od Ernad Husremović prije oko 13 godina
uradio retab da iščistim fajl od tab-ova.
sada je funkcija dobro formatirana
Izmjenjeno od Saša Vranić prije oko 13 godina
ok, podesio ovo kod sebe, testirao sada je tab zapravo određen broj space-ova
Izmjenjeno od Saša Vranić prije oko 13 godina
- Status promijenjeno iz Dodijeljeno u Zatvoreno
- % završeno promijenjeno iz 30 u 100
ok, ovo mogu sada zatvoriti