Stringgrid i baza danych

0

Moj problem wygląda nastepująco. Mam zrobić program oparty na bazie danych, w którym znajduje się jej edycja, zapis i różne bajery. No więc:

  1. Na screenie mam dwie niezależne tabelki. Z jedej dodaje do drugiej. W pierwszej mam listę produktów, która będzie właśnie moją bazą danych. W tej drugiej tabelce dane przechowywane są w "pamięci" i nie są zapisywane do bazy danych. Problem jest w tym jak je połączyć. Przy dodawaniu produktu, wpsiuje ilość sztuk jaką chce dodać - wtedy odejmuje mi ilość sztuk w pierwszej tabelce i przenosi wartość sztuk do drugiej. Czy można zrobić tak, aby przy usunięciu przywrócić stan (ilość produktów) do konkretnej pozycji w pierwszej tabeli? Jak powiązać te dwie pozycję, aby program dodawał do konkretnej pozycji, bo nie może do pierwszej lepszej?
    http://img364.imageshack.us/img364/138/programowaniedj8.png

  2. Dlaczego przy sumie i ilości produktów pokazują mi się 0, zamiast wyniku? Mam taką procedurę do liczenia produktów

    if form3.lista.RowCount<2 then
       begin
         c:=form3.lista.RowCount-1;
             for c := 1 to c-1 do
               suma_pro:=suma_pro+StrToInt(form3.lista.Cells[5,c]);
       end;
 

a do sumy

 begin
 if form3.lista.RowCount<2 then
   for i:=1 to form3.lista.RowCount-1 do
     suma:=suma+(StrToInt(form3.lista.cells[4,i])*StrToInt(form3.lista.cells[5,i]));
     result:=suma;
 end;
 
  1. Zapisywanie bazy działa, ale podczas odczytu nie da się jej załadować. Pojawia się tylko niezrozumiały kod w jednej kolumnie.
    http://img233.imageshack.us/img233/463/programowanie2xl7.png

0

nie prościej zrobić po ludzku - jakaś baza (choćby FB) + DBGrid

0

A jeszcze łatwiej na SQLite

0

Problem w tym, że jest to program na zaliczenie do szkoły i nie da się tak zrobić. DBGrid to chyba komponent dodawany, a nie który jest już w Delphi, a na takich muszę operować :( A z inną bazą danych też nie da rady, bo muszę to zrobić właśnie tak jak robie.

0

Zależy jakie masz delphi. Ja w moim standardowo mam komponenty bazodanowe. Co do silnika. SQLite czy FB Embeded to jedna dll'ka. SQLite ma własną klasę jako API czyli jeden diabeł jak to wyświetlisz a odpadnie obsługa pliku (dodawanie, usuwanie, modyfikacja rekordów).

1 użytkowników online, w tym zalogowanych: 0, gości: 1