har följande tabeller. Som det låter så skriver du in i en ny post? Det finns ett snarlikt exempel i Orders.mdb som följer med Access 2000. Om du inte har den kan du ladda ner den från www.mvps.org/access/resources/downloads.htm Gå på mitt sista förslag.access relationsproblem
kunder innehåller kundid | företagsnamn
order innehåller orderid | kundid
orderdetaljer innehåller orderid | produktid | pris | antal
produkter innehåller produktid | produktnamn | pris
har gjort ett formulär för att plocka fram och spara info.
innehåller följande fält.
kunder.företagsnamn, order.kundid, orderdetaljer.orderid, orderdetaljer.produktid orderdetaljer.antal, produkter.produktnamn och produkter.pris
När jag skriver in en 1 i orderdetaljer.produktid får jag fram produktinfon i formuläret. allt det fungerar.
Men nu till mitt problem.
Hur får jag in produktpriset i orderdetaljer? lyckas inte med det. orderid och produktid och antal får jag in eftersom det är siffror som jag själv skriver in men jag lyckas inte att överföra priset automatiskt. HUr gör man det???
De förstnämnda i varje tabell har primärnycklar utom i orderdetalj där jag inte har någon och alla är relation till varandraSv: access relationsproblem
Då får du en ny tom rad i den tabell där du skriver in som du beskriver.
Du måste hämta informationen som du vill komplettera med.
Dvs en fråga eller sql-satts som kombinerar den tabell du skriver till med den tabell du har känd information i.
Relationerna gör att du då får upp information. Du får dock inte värden automatiskt till den tabell du skriver till, vilket jag förmodar är orderdetaljer.
Personligen skulle jag föredra att ha en obunden combobox som hämtade produkterna.
Tar du med hela tabellen som som värden i comboboxen får du 3 kolumner. När du väljer i den kan dessa tre kolumners värde överföras till textboxarna som hör till orderdetaljer. Du skapar ett makro som aktiveras när du hoppar ur combon eller när du ändrar den. Kommandot i makrot heter sätt värde och från "cboProdukt.kolumn(0)" till "txtProduktID", "cboProdukt.kolumn(1)" till "txtProduktNamn", "cboProdukt.kolumn(3)" till "txtProduktPris". Makrot görs då i tre rader och fyller 3 textboxar. Om du inte behöver namnet kan du hoppa över det.
Föreslår också att du har en räknare som själv sätter värdet på produktid och orderid. Då behöver du inte skriva det och eliminerar risken för dubbletter.
/AnnSv: access relationsproblem
Sv: access relationsproblem
Använd guiden för comboboxar och lägg till alla tre värdena från din tabell i den ordning du vill söka efter produkten (eller ännu hellre gör först en fråga av den och sortera den också på det som är lämpligt och använd den när du gör comboboxen).
Skapa ett makro där du lägger in ett kommando sätt värde, för varje värde från comboboxen som du vill ska in i tabellen som du baserat formuläret på (dvs 3 "rader" med kommandon). Sista raden i makrot kan också vara kommandot uppdatera.
Lägg in i comboboxens egenskaper att den ska köra det makrot så fort den ändras.
/Ann