Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Delphi query in query

[es] :: Pascal / Delphi / Kylix :: Delphi query in query

Strane: 1 2

[ Pregleda: 4466 | Odgovora: 30 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

popmilan76

Član broj: 295089
Poruke: 1337
*.dynamic.sbb.rs.



+5 Profil

icon Delphi query in query26.04.2014. u 11:34 - pre 121 meseci
Treba da napravim razliku vrednosti izmedju dve tabele...imam jednu tabelu u koju stavljam vrednosti,recimo ima ih 5,i drugu tabelu gde su mi sve vrednosti artikala,recimo ima ih 500,treba da mi ova prva tabela sa tim vrednostim nadje svog parnjaka u drugoj tabeli i da se oduzme vrednost u koloni kolicina....


 
Odgovor na temu

captPicard
programer
more i planine

Član broj: 216084
Poruke: 1119



+19 Profil

icon Re: Delphi query in query26.04.2014. u 13:07 - pre 121 meseci
Ovako nešto?

Code:
select distinct a.sifra, a.kolicina - p.kolicina from artikli a, promet p where
a.sifra = p.sifra


Dodaš sum ako treba (ne znan kako ti je točno složena tabela) i group by sifra.
F
 
Odgovor na temu

popmilan76

Član broj: 295089
Poruke: 1337
*.dynamic.sbb.rs.



+5 Profil

icon Re: Delphi query in query26.04.2014. u 14:13 - pre 121 meseci
da,da....evo sada sam pokusao i uspelo je,ipak hvala na odgovoru...reci mi captigard,kada budes imao vremena da ti posaljem ovo sto sada radim,pa da vidis,valja li sta,,,,
U stvari,trebalo bi da mi oduzme u drugoj tabeli,da izmeni bas u tabeli,ne da na pravim kveri...
 
Odgovor na temu

captPicard
programer
more i planine

Član broj: 216084
Poruke: 1119



+19 Profil

icon Re: Delphi query in query26.04.2014. u 17:34 - pre 121 meseci
Nemam instaliran skype na novom pc-u, instaliram ga pa ti se javim, možda već sutra
Inače, ako radiš stanje zaliha, nema potrebe da taj podatak imaš zapisan već ga izvlačiš u trenutku kada ti treba.
F
 
Odgovor na temu

popmilan76

Član broj: 295089
Poruke: 1337
*.dynamic.sbb.rs.



+5 Profil

icon Re: Delphi query in query26.04.2014. u 18:28 - pre 121 meseci
OK,radim zalihe,i kada radim prodaju,to mi se zapisuje u privremenu bazu,gde za novu prodaju krece kao prazna,pa hoce da pre nego je izbrisem,odradim oduzimanje zaliha iz druge tabele....
 
Odgovor na temu

shablagoo

Član broj: 320631
Poruke: 17
*.dynamic.isp.telekom.rs.



+2 Profil

icon Re: Delphi query in query27.04.2014. u 00:47 - pre 121 meseci
Svojevremeno sam radio neke fakturice. Korišćen je XE2 i standardne dbGo komponente.
 
Odgovor na temu

captPicard
programer
more i planine

Član broj: 216084
Poruke: 1119



+19 Profil

icon Re: Delphi query in query27.04.2014. u 01:28 - pre 121 meseci
Citat:
popmilan76:
OK,radim zalihe,i kada radim prodaju,to mi se zapisuje u privremenu bazu,gde za novu prodaju krece kao prazna,pa hoce da pre nego je izbrisem,odradim oduzimanje zaliha iz druge tabele....

Mislim da ne radiš dobro ako brišeš prodaju a čuvaš samo količine.
F
 
Odgovor na temu

popmilan76

Član broj: 295089
Poruke: 1337
*.dynamic.sbb.rs.



+5 Profil

icon Re: Delphi query in query27.04.2014. u 07:11 - pre 121 meseci
Moze biti da nisam dobro zamislio,ali ako odmah pravim razliku,cim je prodajem,mozda neku stavku pogresim,pa ima mogicnost da je brisem,a ja sam je vec oduzeo iz zaliha,ako je brisem treba onda da je dodajem,sto mi je malo komplikovano,hteo sam da kada sam siguran da zelim da izdam racun,pre nego sto obrisem tu prodaju,da mi oduzme samo zalihe,jer pre nego je obrisem ti podaci iz trenutne prodaje mi idu u arhivu,tj.prebacuju se tamo,tako da mogu da pravim i neke izvestaje o prodaji....
 
Odgovor na temu

captPicard
programer
more i planine

Član broj: 216084
Poruke: 1119



+19 Profil

icon Re: Delphi query in query27.04.2014. u 15:30 - pre 121 meseci
Tebi mora baza biti složena npr. ovako:

Code (delphi):
tblUlazStavke
----------
BrojDokumenta PK
RedniBroj PK
SifraArtikla
Kolicina

tblIzlazStavke
----------
BrojDokumenta PK
RedniBroj PK
SifraArtikla
Kolicina


Na taj način ništa ne moraš brisati i možeš u bilo kojem trenutku dobiti stanje nekog artikla iz onog querya gore. (Tu sam ti dao samo tablice za stavke, možeš napraviti jednu tablicu pa još dodati PK TipDokumenta ili možeš sa odvojenim tablicama, dodaš onda još tblUlaz i tblIzlaz gdje idu zaglavlja dokumenata).
F
 
Odgovor na temu

popmilan76

Član broj: 295089
Poruke: 1337
*.dynamic.sbb.rs.



+5 Profil

icon Re: Delphi query in query27.04.2014. u 18:30 - pre 121 meseci
OK,za to,postoji li neka mogucnost da ja to uradim,i da vrsim update glavne tabele,znaci oduzme od zaliha,i taj update upise za odgovarajuci artikal u glavnpj tabeli
 
Odgovor na temu

captPicard
programer
more i planine

Član broj: 216084
Poruke: 1119



+19 Profil

icon Re: Delphi query in query27.04.2014. u 19:43 - pre 121 meseci
Pa možeš kod knjiženja dokumenta pokrenuti onaj query i zapisati to u tabelu npr. Artikli ili gdje to već čuvaš, ali ponavljam, nema potrebe to raditi. U trenutku kada korisnik traži izvještaj možš dobiti te podatke. Ovako sa zapisivanjem uvijek postoji mogućnost pogreške.
F
 
Odgovor na temu

shablagoo

Član broj: 320631
Poruke: 17
*.dynamic.isp.telekom.rs.



+2 Profil

icon Re: Delphi query in query27.04.2014. u 21:21 - pre 121 meseci
Tebi treba nešto ovako? Nisam stigao sve da prevedem.
 
Odgovor na temu

popmilan76

Član broj: 295089
Poruke: 1337
*.dynamic.sbb.rs.



+5 Profil

icon Re: Delphi query in query27.04.2014. u 22:33 - pre 121 meseci
Slicno,samo sto je umesto faktura broj racuna,s tim sto hocu da mi oduzima zalihe,ali ne odmah kada ih ubacim,vec kada treba da mi izda racun...
 
Odgovor na temu

popmilan76

Član broj: 295089
Poruke: 1337
*.dynamic.sbb.rs.



+5 Profil

icon Re: Delphi query in query29.04.2014. u 18:39 - pre 121 meseci
Ovaj sto je napisao captigared je okej,samo ima tu jedan problem,a to je:imam dve tabele,jedna artikli,druga arhiva...i poslusao sam captigard i sve mi prebacuje u arhivu,i onda pravimtabelu koja oduzima artikal - arhiva zalihe,ali problem je sledeci,to radi samo ako u obe tabele ima ista sifra,pa onda napravi razliku,ali ako nema u arhivi(tj,nista se ne proda
) ne izlazi nista,kao da ne postoji taj artikal na zalihama...
 
Odgovor na temu

komplikator
Programer / sys. inženjering
CRO

Član broj: 29755
Poruke: 158
*.adsl.net.t-com.hr.

ICQ: 13387003


+8 Profil

icon Re: Delphi query in query30.04.2014. u 08:10 - pre 121 meseci
Pratim tvoje posteve od kad si na forumu počeo pisati o onom svom programu blagajne. Očigledno je da napreduješ, no gubiš dosta vremena metodama pokušaja i pogreške. Lijepo je sam doći do nekog zaključka i nešto napraviti, no što je projekt kompleksniji ti ti je ta metoda uzaludnija i sporija. Trenutno gubiš vrijeme na nešto što ljudi rade tamo negdje još od prije 90'tih godina. Davnih dana je za vođenje stanja zaliha i praćenje prometa razvijeno nekoliko mehanizama. Zbilja nema smisla izmišljati ih jer je puno mudrih umova tražilo riješenje i na kraju su se iskristalizirale 3 ili 4 moguće metode, ovisne o očekivanoj količini stavaka, metodi vođenja skladišta i sl. Preporučujem ti da uzmeš neki gotovi i ispitani program ili više njih i pogledaš kako su složene baze. Ne ih kopirati, nego samo pogledaj kako su ustrojene i što se kamo veže, čisto da dobiješ viziju i osjećaj.

Vidjećeš da ova tvoja postojeća metoda s prepisivanjem i brisanjem pada u vodu kad se posvetiš prosječnoj prodajnoj, prosječnoj nabavno cijeni i kad kreneš u fifo, lifo, ponderiranu vrijednost i sl. Za brz izračun zaliha i sl. uglavnom se koristi neka tablica sa stanjima koja se znatno komplicira kod konkurentnog pristupa više korisnika, za sve prometne transakcije moraš imati prometne tablice iz kojih se vidi od kamo je što i kako nastao, a iste ti kod manje količine stavaka zamjenjuju ove tablice sa stanjima jer sve računaš dinamički - u letu. Ako ne želiš raditi batch obrade (ažuriranje stanja) ili ih raditi na kraju svake transakcije (što je dosta naporno) tada ta ažuriranja složiš da ih odrađuje sama baza uglavnom uporabom triggera na bazi, no BDE i Paradox (ako se sjećam ni access) to nemaju. Ima i u tome zamki (triggerima) i treba ih pažljivo i mudro koristiti. Ako želiš različit utjecaj na stanje skladišta i prometa tada promet složiš sa različitim statusima dokumenta. Npr. rezervacije, izdano no tek treba fakturirati, kod proizvođača (pc servisi, kafići, restorani, cvjećari) imaš i vođenje rpoizvodnje i razduživanje. Primjerice, cvjećari unaprijed naprave 10 vjenaca, razdužuju robu sa skladišta i pretvaraju je u proizvod, istovremeno tog cvijeća, vrpce, trave i žice nemaš na skladištu i ne možeš ih nekome prodati no pojavljuje se proizvod, a proizvod nije prodan sve dok ga netko ne kupi. Tu ti osim vrsta dokumenata ulogu igraju i statusi dokumenata i njihova proknjižavanja.

Sve ovo te vodi prema izboru neke inteligentnije baze i baze koja bolje čuva referentni integritet nego što to čini Paradox.
Vidim da pišete o BDE i DbGo (ADO). Na žalost oboje je odavno pregazilo vrijeme i imaju velikih manjkavosti. BDE je bio zakon svih zakona no više zbilja nema smisla, Paradox kao baza također. dbGO je strašno ovisan o M$-u. i iznimno mušićav. Ne pišem ovo bezveze. Koristio sam godinama BDE (napustio ga je i sam Borland, a poslije i CodeGear i Embarcadero i drže ga samo zbog naslijedstva) i bio je dobar kad nije bilo boljega. dbGo je bio kao nešto univerzalno s čime možeš sve od svud, ovo, ono... no ispalo je poprilično problematično i sporo, ovisno o ODBC-u. verziji drivera, providera bla, bla... U Delphiju se davnih dana pojavio DBX na kojem se temelji puno više od običnih desktop ili RDBMS baza, no istina djelomično je ograničen driverima ovisno o verziji baze. DBX je najintegriraniji u Delphi i tebalo bi ga razmotriti i poigrati se njime čisto da dobiješ bolji uvid i znanje o ozbiljnom radu sa bazama (client dataset, vidjeti što je to dataset delta, kada se podaci osvježavaju, kada i zašto povlače, commitanje i ograničavanje na samo nužan skup podataka i sl.). I Paradox i BDE će tužno umrijeti već na idućoj generaciji OS-a. koji promjeni politiku file lockinga ili raw pristupa fajlovima preko SMB-a. Da ne spominjem da se već godinama programi koji rade s bazama preko mreže ne koriste ničim grugim osim TCP/IP-a. što ima višestruke razloge i opravdanja. Jedini je u tome u produkciji ostao valjda još Clarion, a čak i oni okreču ploču (a koliko vidim i odlaze u povijest).

Radio sam 2 godine u firmi koja je koristila dbGO za rad s MSSQL-om. Super baza, sve M$-ovo, rekao bi čovjek - prirodno i razumnjivo. Kad su skvatili ograničenja i mane dbGO-a. tj. ADO-a. bilo je kasno. Odlučili smo se na novi razvoj i pokušali migrirati ADO u MSDAC no bezuspješno jer je moj prethodnik izveo takve zavrzlame svojstvene za ADO da je migracija ispala nemoguća. I sad svakog dana plaćaju ceh korištenja ADO-a.

Preporučujem ti Firebird koji je izvrsna baza (besplatna), SQLite također može dosta toga, a koji će ti dobro doći poželiš li raditi nešto za mobilne uređaje ili nešto slično. Za pristup imaš native kontrole. IBX je još uvijek donekle kompatibilan s FB, imaš IBX, a uz novi Delphi ti dolaze FireDAC kontrole koje su očigledno delphijeva budućnost i vjerojatno će uz DBX istisnuti sve ostale vrste pristupa bazama iz Delphija, i to vjerojatno već za godinu-dvije. Želiš li nešto besplatno, univerzalno i portabilno imaš ZEOS DBO / ZEOS Lib. ZeosLib ti može biti interesantan zbog toga što radi s lazarusom i lakše ćeš portati postojeći kod na lazarus pošeliš li multiplatformsko i besplatno programiranje. Slično ću ti savjetovati za reporter - bježi od QR-a. FastReports dolaze u nekoj prilagođenoj verziji uz Delphi već par godina i sam Borland (tj. Embarcadero) se okrenuo njemu. U samom je vrhu, znatno bolji od QR-a. i također radi na lazarusu (doduše mislim sourcevi dolaze uz neku jaču komercijalnu verziju) i smatra se nekom budućnosti.

Šteta je ograničavati se tehnologijama starim 15 godina, pa čak u svrhu učenja jer ćeš na njima naučiti malo, i velika je vjerojatnost naučiti dosta toga pogrešnog (klasične zamke autoinkrementa, rada bez pravih transakcija, rada s kompletnim tablicama, filtriranja na clientu, row-level updateovi i preračuni po clientu, itd, itd...). Ta ograničenja su smislena za firme koje su nešto razvile i producirale pa se sad od toga na žalost više ne mogu maknuti.

Nadam se da ti nisam dosadan i ne popujem, pišem ti zbilja dobronamjerno. Ako učiš, nauči više i nauči nešto od čega imaš više koristi i što ima neku budućnost.
God is real unless is declared as integer.
 
Odgovor na temu

shablagoo

Član broj: 320631
Poruke: 17
*.dynamic.isp.telekom.rs.



+2 Profil

icon Re: Delphi query in query30.04.2014. u 09:47 - pre 121 meseci
Lepo rečeno.
 
Odgovor na temu

popmilan76

Član broj: 295089
Poruke: 1337
*.dynamic.sbb.rs.



+5 Profil

icon Re: Delphi query in query30.04.2014. u 10:12 - pre 121 meseci
Sve ja to znam,a sve si ti to i lepo rekao,ali sve te baze i stari delphi je zbog okruzenja sa kojim firma radim,nisam ja to uveo,vec neko iznad mene,tako da bih i ja rado sve to promenio,ali sta cu posle,tj,kome to posle radio....Programi za nekog iskusnog zaista nisu problem,za mene u nekim delovioma jesu,jer po vokaciji nisam programer,radim drugi posao,a ovo je iz hobija i za sopstvene potrebe...

Naravno da ne mislim da popujes,posto si ocigledno u ovom poslu dosta dugo,a ja samo pocetnik,koji hoce nesto da nauci....Hvala ti svakako na dobronamernom savetu...

[Ovu poruku je menjao popmilan76 dana 30.04.2014. u 11:51 GMT+1]
 
Odgovor na temu

popmilan76

Član broj: 295089
Poruke: 1337
*.dynamic.sbb.rs.



+5 Profil

icon Re: Delphi query in query30.04.2014. u 22:13 - pre 121 meseci
Napravio sam ovakav query zalihe,ali mi ne oduzima nesto dobro,pa mi recite gde gresim.....evo ga sql


select distinct artikli.sifra,artikli.artikal,artikli.jedinicamere,artikli.cena,sum(artikli.zalihe)- sum(arhiva.kolicina) as Zalihe from artikli,arhiva
where artikli.sifra = arhiva.sifra
group by artikli.sifra,artikli.artikal,artikli.jedinicamere,artikli.cena
 
Odgovor na temu

captPicard
programer
more i planine

Član broj: 216084
Poruke: 1119



+19 Profil

icon Re: Delphi query in query01.05.2014. u 00:29 - pre 121 meseci
Kako to misliš da ti ne oduzima nešto dobro?
F
 
Odgovor na temu

popmilan76

Član broj: 295089
Poruke: 1337
*.dynamic.sbb.rs.



+5 Profil

icon Re: Delphi query in query01.05.2014. u 07:43 - pre 121 meseci
Ne oduzima mi dobro ovo zalihe od kolicina..daje pogresan rezultat......imam dve tabele,artikli i arhiva,prva je ulaz (zalihe),druga je utrosak(kolicina).....i ta razlika mi nije dobra...ne znam zasto....
 
Odgovor na temu

[es] :: Pascal / Delphi / Kylix :: Delphi query in query

Strane: 1 2

[ Pregleda: 4466 | Odgovora: 30 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.