08. december 2004 - 17:48Der er
45 kommentarer og 1 løsning
Udvælgelse og overflytning af felt fra en tabel til en anden?
Hejsa.. Jeg sidder med en Telemarketing database hvor Telemarketingmedarbejderne skal have mulighed for på samme tid at arbejde med én tabel selvfølgelig indsat i en Form.... Dette vil sige at de alle ser de samme Feldter med "Firmanavn" og telefonnummer. (Fra eks. tabellen "TeleMarketingEmner") Når man trykker på et felt, bliver dette felt låst!, og ingen andre kan nu åbne dette felt.. Hvis Telemarketingmedarbejderen ønsker at tage "ejerskab" over denne kunde, vælger hun sine initialer under "Owner". HEREFTER spørge hun kunden om han/hun er interesseret i Produktet og kunden siger Ja eller nej.... SIGER kunden JA, Trykker Telemarketingdamen punktet for JA af og "SAVE AND UPDATE". Dette skulle så gøre at kunden bliver overflyttet fra Tabellen "TelemarketingEmner" til "Customers"....
Håber at i kan forstå hele ramsen... :)
Så hvis vi lige skal opsumere: Først: Aktivering og sælger låsning af "Potentiel Kunde".. Anden: Overføring af kunde fra Tabellen "TeleMarketingEmner" til "Customer" Med venlig hilse Jack
Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
Det nemmeste for dig at gøre, ar at lave en tilføjelsesforespørgsel.
Databasevindue > Fanen Forespørgsler > Ny.
Gå i menuen Forespørgsler og vælg typen: Tilføjelsesforespørgsel.
Du skal indsætte den tabel, der skal levere data (TeleMarketingEmner) og indsætter relevante data. Hvis felterne hedder det samme i begge tabeller, vil Access foreslå det relevante felt.
Der skal ikke bruge nogen guide (wizard). Blot vælge ny og en simpel udvælgelsesforespørgsel. Først inde i forespørgselsdesignet vælger du en tilføjelsesforespørgsel.
Godt nu er jeg ved at linke de to databaser sammen.. således at Fra "CallList" To "Contacts": Include All Revords from Calllist and only those rebords from Contacts Where the Joined Fields are Equal... Lyder det ikke rigtigt??
Både for feltet CompanyName og WorkPhone...
Hvordan får jeg den så til at overfører ved hjælp af et tryk på en Knap?? og så den kun overføre lige den Person som jeg har åbnet i min formular.. (Altså kun det fedt i tabellen)?
jeg har sat Contact tabellen og CallList tabellen ind... Fra dem har jeg sat RelationsPil fra CallList!Comanyname til Contact!CompanyName og samme med WorkPhone feltet?? forkert?
Du skal kun have den tabel der skal levere data "TelemarketingEmner".
Når du har den inde i forespørgselsdesignet (uden at vælge felter), går du op på den vandrette menulinie og vælger det punkt der i den danske version hedder "Forespørgsler". Her åbner du dialogboksen og finder Tilføjelsesforespørgsel (Og jeg ved ikke hvad det hedder i den engelske version). Men der skal poppe en ny boks op, der beder dig indtaste den tabel der skal modtage data (Customer). Herefter trykker du på OK.
Tilbage til forespørgelsdesignet. Nu vælger du de felter der skal overføres. Hvis felterne hedder det samme i begge tabeller, vil Access foreslå et "modtagerfelt", og det accepterer du bare.
Nu vil Access overføre ALLE poster. Du skal have indsat et kriterie, men det synes jeg vi skal vente med til tilføjelsen er færdig. Du kan jo blot slette alle data i Customer og så prøve igen.
GudfriMigVel om den ikke gjorde det... Det er jo lige det.. nu skal vi have lavet således at denne funktion KUN sker ved Tryk af en knap og kun den bruger som der er i FormVinduet på det givende tidspunkt..
Den SKAL overføre alle poster, da vi ikke har indsat et kriterie endnu. Du gør nu dette:
Åbn forespørgslen i Designvisning og i det unikke felt, der kendetegner kunden indtaster du:
[Forms]![FORMULARNAVN]![ID PÅ UNIK KUNDE]
På denne måde refererer du til din formular, og kun kunden med det aktuelle ID vil blive overført.
Du sletter kunden fra "TeleMarketingsEmner" på stort set samme måde som med en tiloføjelsesforespørgsel, blot vælger du en Sletteforespørgsel i stedet for. Husk dit kriterie, ellers vil du slette ALLE poster i "TeleMarketingsEmner".
Du får en advarsler om, at du er ved at tilføje en post. Den kan du omgå således:
Docmd.SetWarnings = False Docmd.OpenQuery "NAVNET PÅ DIN TILFØJELSESFORESPØRGSEL" Docmd.OpenQuery "NAVNET PÅ DIN SLETTEFORESPØRGSEL" MsgBox "Dataoverførslen er afsluttet." Docmd.SetWarnings = True
Når du bruger Warnings = False, skal du altid huske at sætte dem til True ige, ellrs vil ALLE advarsler forblive frakoblede i HELE applikationen, hvilket betyder, at du ikke vil blive promptet for fatale fejl.
Docmd.SetWarnings False Docmd.OpenQuery "NAVNET PÅ DIN TILFØJELSESFORESPØRGSEL" Docmd.OpenQuery "NAVNET PÅ DIN SLETTEFORESPØRGSEL" MsgBox "Dataoverførslen er afsluttet." Docmd.SetWarnings True
Og så lige den sidste ting!!! hihihi Update samme Form, OG viderSend telemarketing Medarbejdere til "Form!Kunderoversig" formen. (Hvor hun skriver de resterende Oplysninger om kunden ned...)
Men når hun ankommer i "Form!kundeoversig" er det den "Nye" brugers informationer der er slået op?? Sidste for iaften.. hihi Har flere til dig imorgen og 100 Nye Points. :)
Den går vist ikke, idet du jo har slettet kunden fra "TeleMarketingsEmner". Du skal nok tage det i eet hug:
Docmd.SetWarnings False Docmd.OpenQuery "NAVNET PÅ DIN TILFØJELSESFORESPØRGSEL" DoCmd.OpenForm "Kundeoversig" Forms!Kundeoversig!ID.SetFocus DoCmd.FindRecord Me!ID Docmd.OpenQuery "NAVNET PÅ DIN SLETTEFORESPØRGSEL" MsgBox "Dataoverførslen er afsluttet." Docmd.SetWarnings True
I din sletteforespørgsel, skal du så referere til "Kundeoversig" i stedet for til "TeleMarketingsEmner".
hejsa mugz.. måtte lynløbe igår da jeg fik en grim opringning.. men er på job igen nu og arbejder videre på databasen nu.. Please skriv når du er på så laver jeg lige en ny med 100Points mere til dig for hjælp idag. :)
FOR NU GÅR D HER PROJEKT FANDEME FREMA når du sidder bagpå.. :) hihi
Tak skal du have. Jeg spekulerede godt nok på, hvor du blev af iaftes. Jeg synes at vi skal tage een ting af gangen og gøre dette færdigt, inden vi starter med noget nyt.
Jeg har kun ringe mulighed for at være på nettet i arbejdstiden, men vil ind imellem checke min webmail.
Overførselfunktionen fra 20:28:59 virker fint MEN den tager ikke alle Oplysninger med over?? Den tager kun de oplysninger som er indlæst i tabellen på forhånd altså CompanyName og PhoneNumber, Felterne FirstName, LastName og Owner kommer ikke med over.... Somom disse oplysninger ikke er GEMT i tabellen?? For Hvis jeg UDFYLDER FirstName, LastName og Owner, Lukker Formen og åbner den igen OG så Trykker "JaTak" knappen kommer alt med over..... Somom den mangler en gem funktion... Jeg har dog også prøvet at indsætte FirstName, LastName og Owner og så gemme og trykke jatak men virker stadig ikke... (Formen skal lukkes og åbnes..) Giver det mening hos dig?
Jeg søger egentlig koden til at lukke en den active FORM, Genåbne den, Slå op på "Emnet" som var slået op før lukning, og sÅ: Docmd.OpenQuery "NAVNET PÅ DIN TILFØJELSESFORESPØRGSEL" DoCmd.OpenForm "Kundeoversig" Forms!Kundeoversig!ID.SetFocus DoCmd.FindRecord Me!ID Docmd.OpenQuery "NAVNET PÅ DIN SLETTEFORESPØRGSEL" MsgBox "Dataoverførslen er afsluttet." Docmd.SetWarnings True
Det er tilsyneladende en ny post (eller en rettelse til en eksisterende post) du ønsker at overføre.
Hvis det er en rettelse, kan du nøjes med en Me.Refresh, som ajourfører en eksisterende post. Altså:
Docmd.SetWarnings False Me.Refresh Docmd.OpenQuery "NAVNET PÅ DIN TILFØJELSESFORESPØRGSEL" DoCmd.OpenForm "Kundeoversig" Forms!Kundeoversig!ID.SetFocus DoCmd.FindRecord Me!ID Docmd.OpenQuery "NAVNET PÅ DIN SLETTEFORESPØRGSEL" MsgBox "Dataoverførslen er afsluttet." Docmd.SetWarnings True
Hvis det er en helt ny post, må vi en anden vej, men prøv om ikke Me.Refresh kan løse problemet. Gør det ikke det, vil jeg gerne vide om det er en helt ny post du opretter i "TeleMarketingsEmner"
ja jeg kan selvfølgelig ikke "DoCmd.FindRecord Me!CallTabelId" når tabellen Formen har været lukket!!/(¤&%#¤ hihi
Kan jeg gøre noget så den husker hvor jeg var før den lukkede? eller noget andet smart... (Troede lidt det var hvad den SetFocus funktion Gjorde.. :( )
ved ud hvad mester.. din Me.Refresh virkede... nu er det lige som det skal være... da som du sagde var det en tilføjelse til et allerede etableret Emne og ikke en NyIndsættelse...
en lille Svipser... Når jeg så vender tilbage til "CallList" altså hvor alle "CompanyName" og "PhoneNumber" står (10000-15000 af dem) så står der i toppen.. #Deleted hvor den gamle kunde var... Den forsvinder ikke ved "Me.Refresh".. Hva gør man her... han forsvinder jo når jeg lukker og åbner..
Anden Del af dette Spm. var omkring Låsning... da dette skal laves til et Flerbruger system (Som du jo allerede har lært mig! hihi :) ) vil jeg gerne låse så når EN TelemarketingsBanan har "Taget" en kunde og arbejder med ham i et åbent vindu, at de andre ikke også kan tage ham og de sidder og ringer til den samme....
Hvordan gør vi lige det?? De har selvfølgelig forskellige logins hvis det kan hjælpe...
En Refdresh er ikke nok til at fjerne / tilføje posdter i formularen / tabellen. Der skal en Requery til. Men så stiller formularen sig på første post i forespørgslen. Men prøv denne:
Dim bookm Docmd.SetWarnings False bookm = Me.Bookmark Me.Requery Me.Bookmark = bookm Docmd.OpenQuery "NAVNET PÅ DIN TILFØJELSESFORESPØRGSEL" DoCmd.OpenForm "Kundeoversig" Forms!Kundeoversig!ID.SetFocus DoCmd.FindRecord Me!ID Docmd.OpenQuery "NAVNET PÅ DIN SLETTEFORESPØRGSEL" MsgBox "Dataoverførslen er afsluttet." Docmd.SetWarnings True
øhhhhh Jamen den må godt stille sig "whereEver" da det jo er en REN opdatering af informationerne i CallList'en... (Altså selv en LukForm OG ÅbenSammeForm er en løsning lige i dette tilfølge..)
Du kan nok ikke teste låsningen før der er flere brugere på. Jeg har ikke den store erfaring med låsningen. I stedet for at lukke og åbne, kan du bare køre en Requery. Den vil køre den underliggende Forespørgsel / tabel:
Me.Requery Docmd.OpenQuery "NAVNET PÅ DIN TILFØJELSESFORESPØRGSEL" DoCmd.OpenForm "Kundeoversig" Forms!Kundeoversig!ID.SetFocus DoCmd.FindRecord Me!ID Docmd.OpenQuery "NAVNET PÅ DIN SLETTEFORESPØRGSEL" MsgBox "Dataoverførslen er afsluttet." Docmd.SetWarnings True
Hejsa MugZ idag har jeg lavet et nyt spm. så jeg kan få færdiggjort mit mailMerge.. please kom ind og gi en hånd. :) http://www.eksperten.dk/spm/569673
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.