OK to może inaczej bo też będę potrzebował mały magazyn dopisać.
Mam następujace tabele
produkty
"id" INT +AI
"nazwa" VARCHAR [100]
"opis" LONGTEXT
"minimum w magazynie" DECIMAL [4,0]
dostawy
"id" INT +AI
"Rachunek_nr " VARCHAR [25]
"Data_dostawy" DATE
"Dostawca" VARCHAR [100]
"produkty_id" INT[11]
"ilosc" DECIMAL [6,0]
i chodzi mi o formularz który do tabeli dostawy będzie tworzyć wpisy 'ala' PZ przyjecie do magazynu zawierające datę , nr_rachunku, nazwę dostawcy oraz kilka pozycji z produktami i ilością
I teraz
mam na formie pola EDIT: Rachunek_nr, Data_dostawy, Nazwa_dostwacy
oraz nie wiem jak dopisywać produkty z tabeli produkty
tak aby uzyskać takie wpisy
1 Rachunek1 wczoraj Sklep1 Produkt 1 Ilość A
2 Rachunek1 wczoraj Sklep1 Produkt 2 Ilość B
3 Rachunek1 wczoraj Sklep1 Produkt 3 Ilość C
4 Rachunek2 dzisiaj Sklep4 Produkt 1 Ilość X
5 Rachunek2 dzisiaj Sklep4 Produkt 5 Ilość Y
6 Rachunek2 dzisiaj Sklep4 Produkt 9 Ilość Z
7 Rachunek3 dzisiaj Sklep6 Produkt 1 Ilość V
kombinuje tak ze do StringGrida bede dodawał poszczególne produkty i ilość
procedure TForm1.Button2Click(Sender: TObject);
begin
StringGrid1.FixedRows:=1;
StringGrid1.FixedCols:=1;
with StringGrid1 do
begin
StringGrid1.RowCount:= rc+2;
Cells[0, rc+1]:= IntToStr(rc+1);
Cells[1, rc+1]:= DBComboBox1.Text; // produkt_id
Cells[2, rc+1]:= DBComboBox2.Text; // produkt nazwa
Cells[3, rc+1]:= Edit1.Text; // ilość
rc:= rc + 1;
end;
end;
end.
i to mi działa.
następnie trzeba by to dodać do tabeli myślałem nad czymś takim jeszcze nie testowałem
procedure TForm1.BTN_Dodaj(Sender: TObject);
begin
for i := 1 to rc do begin
INSERT INTO dostawi (Rachunek_nr, Data_dostawy, Dostawca, produkty_id, ilość )
VALUES (EDIT1.TEXT, EDIT2.TEXT, EDIT3.TEXT, StringGrid1.Cells[2,rc];StringGrid1.Cells[4,rc];);
rc = rc -1;
end;
rc:= 0;
StringGrid1.Clean;
end;