[ popmilan76 @ 23.09.2023. 14:56 ] @
Imam dbgrid koji pokaziuje rezultate iz jednog queryija,i imam dodato polje (nije iz baze,vec je calc fields),koje se zove ostatak,a treba da oduzme vrednost iz drugog reda sa vrednošću iz prvog reda,i sve tako do kraja dbgrid,dakle treci sa drugim,cetvrti sa trecim itd...E sada zanima me,jer to uopšte može iz eventa oncalc ili mora iz adoqueryija?
[ savkic @ 24.09.2023. 11:24 ] @
Dakle, vrednost iz jednog sloga (prethodnog poziva za OnCalc) ti treba u narednom (trenutni poziv za OnCalc).
Moze, ali moras ubaciti i neku globalnu (ili na formi) promenljivu koja ce cuvati te vrednosti izmedju poziva OnCalc eventa.
[ popmilan76 @ 27.09.2023. 17:43 ] @
Odradim ovaj deo petlje,gde imam globalnu varijablu,i to je broj,ali kada ga saljem na calc fields,uvek mi računa tu varijablu,kao poslednji broj iz te petlje....
[ savkic @ 28.09.2023. 13:24 ] @
Pusti kroz debugger pa prati sta se desava nista drugo ti ne moze pomoci.
Ili zaboravi na onCalc polja, predji na TCLientDataset i sam upisi podatke u taj dataset sa vrednostima koje ti trebaju.
[ _deran_ @ 28.09.2023. 20:17 ] @
Mozes sa Lookup da dodjes do bilo kojeg podatka iz TDataSet (TADOQuery itd) bez da se pozicioniras na njega, pa tako dodjes do podataka iz prethodnog reda. Ovo sto je Savkic rekao ce brze da ti radi, ali ako nemas mnogo podataka onda ti je ovo mozda jednostavnije.
Trebace ti neko pravilo po kojem bi znao koji je prethodni red, neki redni broj sloga ili tako nesto.
Ako koristis MS SQL neki malo noviji, podatke iz prethodnog reda mozes da uzmes sa window funkcijom "LAG", pogledaj na netu.