Wczesniej w ogóle nie mialem tej tabeli w programie. Jest to program bazodanowy przechowujacy informacje o skargach i zazaleniach klientów, zawiera jedna glowna tabele z podstawowymi informacjami jak nr kolejny, data, klient, produkt, partia itd. Do tego istnieje kilka pomniejszych tabel przechowujacych inne informacje, jak np. tabela z notatkami, posiadajaca nr zazalenia, imie nazwisko osoby dodajacej komentarz i tresc - ludzie dodaja tam rózne wpisy podczas prowadzenia sprawy, dochodzenia gdzie na linii produkcji powstalo zaniedbanie. Takich tabel jest jeszcze kilka. Wsyztskie tworze tym samym schematem, wszystkie posiadaja klucz Primary Key który jest definiowany jako Autoincrement (czyli w przypadku SQL Servera nalezy ustawic wlasciwosc Is Identity na 'Yes'), - to pomaga w tworzeniu relacji pomiedzy tabela glowna i pomniejszymi, oraz filtrowaniu. Dodam, ze wszystkie dzialaja bez zarzutu. Na pewnym etapie pisania programu pojawila sie potrzeba stworzenia nowej 'sekcji' o nazwie 'dochodzenie', gdzie wyznacza sie osobe odpowiedzialna za dokladne przeanalizowanie wszystkich okolicznosci zaistnialych w procesie tworzenia danej partii produktu, przegladu maszyn itp. Na tym etapie tworzone sa cykliczne raporty, powinny one byc zapisywane do tabeli, polaczone z tabela glowna.
Po utworzeniu odpowiedniej tabeli, dodalem kompnent do w programie i odwolalem sie do niego po kliknieciu na odpowiedzni przycisk:
- Kod: Zaznacz cały
ADOdane->Tinvest->Insert();
(...)
ADOdane->Tinvest->Post();
wtedy pojawil sie wspomniany blad.
Dodam moze tylko, ze po samym wywolaniu
- Kod: Zaznacz cały
ADOdane->Tinvest->Insert();
nic sie jeszcze nie dzieje, dopiero gdy program próbuje wykonac
- Kod: Zaznacz cały
ADOdane->Tinvest->Post();
program staje.
Nie próbowalem szczerze mówiac wylaczyc funkcji autoinkrementacji, bo jej potrzebuje, poza tym wszystkie inne tabele tez maja zdefiniowane takie wlasnie pole ID i nie ma z tym problemu, ale sprawdze równiez i to.