Hej! Ingår tabellerna i huvudformuläret i några joins i underformuläret? Känner igen felet, har du tex En TextBox eller en annan kontroll kopplad till Tabellen ? Då blir det konflikt mellan att TextBoxen har access till Tabellen Nu har jag slutligen löst det här problemet. Fast löst är fel ord, jag har gått runt problemet.Felkod 3197 i Access 2000
Det här felet har jag letat efter en lösning på väldigt länge. Felet beror inte på ett Memo-fält som de flesta säger att det gör.
Felet uppkommer när användaren arbetar i ett formulär med detaljer, typ kunder med ordrar. Ordrarna ligger då i ett underformulär. Felet uppkommer när användaren ska lägga till en ny post i underformuläret, men det kommer inte alltid. När användaren trycker OK på felmedelandet så visas det igen, ungefär tjugo gånger, sedan kan användaren avsluta programmet och börja om igen då det fungerar igen.
Felmeddelande säger att mer än en användare försöker ändra samma data samtidigt, detta är inte fallet då det bara är en användare som arbetar mot den tabellen just då.
Det är mycket svårt att återskapa för man vet inte när det kommer.
Är det någon som har en ide' om vad detta kan beror på?Sv: Felkod 3197 i Access 2000
Sv: Felkod 3197 i Access 2000
Sv: Felkod 3197 i Access 2000
samtidigt som någon annan Sub/Funktion i ditt prog vill skriva till Tabellen
En god regel att du stänger dina recordset i slutet på varje lokal rutin som
har öppnat ditt rs. Ganska lurigt att förklara var och när det sker.Sv: Felkod 3197 i Access 2000
Det jag kom fram till vid en närmare undersökning är att posten sparas innan felmeddelandet visas.
Så steg ett är att undertrycka felmeddelandet (samma meddelande visas cirka tjugo gånger innan användaren kan avbryta), då ser användaren "Error" i varje fält på raden.
Steg 2 är att ladda om formuläret igen.
Märkligt nog tog det lång tid innan jag kom på steg 2, steg 1 har jag använt mig av ett tag och låtit användaren själv stänga formuläret och öppna det igen. Men sen slog det mig en dag att det skulle räcka att ladda om formuläret.
För att kunna göra detta i kod utan att användaren märker det, så måste man ha en händelse där programmet försöker läsa från ett fält och då vid Error 3179 ladda om formuläret.
Så det är lite knep och knåp, men det fungerar.