România
Roportal.ro

Datele unui field in variabila

Început de Comcomponente, Mie 14 nov 2012 · 1 răspunsuri · 10.583 vizualizări

Comcomponente1 mesaje#1

Buna tuturor,

In primul rand imi cer scuze daca a mai fost postata intrebarea asta undeva aici, pe forum, dar nu am gasit si m-am gandit sa intreb (si) eu.

Ideea este in felul urmator:

Am o baza de date relativ simpla (2-3 tabele si vreo 3-4 query-uri) care gestioneaza stocul (intrari/iesiri) unei firme.

Voi dezvolta partea care ma intereseaza:

Am o tabela in care introduc intrarile de marfa, data intrarii, pretul produsului cumparat, cantitatea cumparata si data cumpararii marfii si o tabela in care introduc data si valoarea incasarilor (deci, implicit IESIRILE). Tabelele acestea le "unesc" printr-un query care imi afiseaza DATA tranzactiilor, VALOAREA INTRARILOR, VALOAREA IESIRILOR si DIFERENTA (care reprezinta valoarea stocului din ziua respectiva). Aici incepe durerea: pentru a gestiona corect si complet valoarea stocului de marfa, LA VALOAREA INTRARILOR DINTR-O ZI TREBUIE SA ADAUG SI VALOAREA STOCULUI RAMAS (CARE NU S-A VANDUT) DIN ZIUA PRECEDENTA. M-am gandit sa "incerc" cu variabile, adica sa stochez intr-o variabila valoarea "ID"-ului si in alta variabila valoarea "stocului ramas" aferente unei zile si la valoarea "intrarilor" sa adaug valoarea stocata in variabila "stocului ramas" din ziua precedenta (adica "ID"-ul zilei "-1"). Incerc sa va fac o schema pentru a ma intelege cat mai bine si totodata incerc sa urc si o poza cu query-ul "buclucas".

ID DATA INTRARI IESIRI VALOARE_INTRARI-IESIRI

--------------------------------------------------------------------------------------------

1 d1 x1 y1 z1=(x1-y1)

2 d2 x2+z1 y2 z2=(x2+z1-y2)

3 d3 x3+z2 y3 z3=(x3+z2-y3)

4 d4 x4+z3 y4 z4=(x4+z3-y4)

n dn xn+z(n-1) yn zn=(xn+z(n-1)+yn)

post-380777-0-55960800-1352927407_thumb.jpg

post-380777-0-56318300-1352927559_thumb.png

AVETI VREO IDEE CUM AS PUTEA REZOLVA SA IMI IASA SITUATIA CORESPONDENTA CU SCHEMA DE MAI SUS? VA MULTUMESC ANTICIPAT, TUTUROR.

Paul Brahtl2.177 mesaje#2

Dupa cum arata fereastra de query, banuiesc ca e Access baza ta.

Incearca ceva de genul:

select intrari, iesiri, (select isnull(sum(intrari-iesiri),0) from a as b where b.data<a.data)+intrari-iesiri as sold from a

e verificata pe SQL Server 2005, trebuie sa mearga si la tine.

← Înapoi la Office si baze de date