Oprettet tir. d. 23. november 2004 kl. 13:21:44

markou
markou (12.265 point. Point ude: 400)

Læse data fra et notatfelt

Hvordan kan jeg gennemgå indholdet af et notatfelt for at søge efter et kundenummer f.eks. T9010342 og en dato f.eks. 23-11-2004 og et klokkeslet 10:43 - hvor kundenummer, dato og klokkeslet værdierne ikke kendes i forvejen....

Jeg har en lang række mails som mit system importere fra Exchange til en tabel tblEmail. Nu skal alle mails så gennemgås og for hver mail skal der oprettes en post i tabellen tblEmailretur hvor kundenummer, dato og klokkeslet skal indsættes (dette kan jeg godt selv lave). Spg. er bare hvordan jeg finder dataerne fra notatfeltet...

Skrevet tir. d. 23. november 2004 kl. 13:23:29| #1

jensen363
jensen363 (27.721 point)
Notatfelter er desværre ikke navigerbare/søgbare felter

Skrevet tir. d. 23. november 2004 kl. 14:26:22| #2

overchord
overchord (35.177 point)
Det bliver stort set umulight idet jeg ogsaa antager at disse kan forekomme vilkaarlige steder i teksten. Du skulle  soege igennem hvert nontat felt bogtstav for bogstav og med variable streng-laengder saavidt jeg kan se det og siden du ikke har noget eksisterende data kan du ikke slaa op om det er valideret data der findes.
Med mindre emailen er struktureret paa et helt 100% fast maade saa du kan finde kundenummeret fordi det altid staar som tegnene nummer 115-123 er det ikke muligt.

Skrevet ons. d. 24. november 2004 kl. 00:51:29| #3

staticdata
staticdata (14.984 point)
Hvis du kender længden på det, du søger, kan du vel loope over mid(notattekst,i,len) fra 1 og frem? Vel at mærke i VB. Nu ved jeg så ikke hvad du mener med "f.eks. kundenummer OG en dato..." Skal der være både-og? Hvis du kan, vil jeg nok foreslå at redesigne basen, så du har de relevante oplysninger i egne felter.

Skrevet ons. d. 24. november 2004 kl. 09:17:26| #4

charlotterj
charlotterj (13.330 point)
Eller hvis du ved, at der altid står "Kundenummer" foran, så kan du bruge InStr til at finde positionen for "Kundenummer" og derefter lægge et passende antal pladser til.

Kan du fortælle lidt mere om dine mails! Er der en fast struktur i dem? Jeg går ud fra, at det f.eks. er mails fra kunder, som du vil have struktureret i en ny tabel?

Skrevet ons. d. 24. november 2004 kl. 21:37:32| #5

markou
markou (12.265 point)
Det er mails fra udførende personale, som indberetter via et system på wap. Der flyver så en mail af sted som serveren henter.
Samtidig undersøger en access database på serveren hvert 30. sekund om der er kommet nye beskeder i indbakken, såfremt der er importeres de til access databasen. Problemet er jo, at teksten i mailen (body) importeres til eet felt i databasen (ingen ide om hvordan dette kan gøres anderledes) - dvs. det før omtalte notatfelt.
Beskeden er opdelt som følger

Kundenummer (altid T######) - kundens navn (variabel længde) - arbejde udført den "dato" (altid ##-##-####) klokken "kl" (altid ##-##-####).

Problemet er således kundens navn som er variabel...... måske jeg kan søge efter nummer to "-" og så tælle antal tegn herefter - altså "- arbejde udført den" så har jeg jo placering for dato.

Jeg kan ikke ændre i designet for mailen, da den kommer fra en underleverandør :-(

Skrevet ons. d. 24. november 2004 kl. 23:14:56| #6

Vil det sige, at du har en mail, som kan se således ud (med præcis de mellemrum og bindestreger osv)?:

T9010342 - Ole Olsen - arbejde udført den 24-11-2004 Klokken 23:14:12

Skrevet ons. d. 24. november 2004 kl. 23:26:43| #7

staticdata
staticdata (14.984 point)
Som charlotterj skriver, og hvis thomasj har ret, så skulle det være til at overkomme. Læs til første "-", her er kundenummer. Læs til anden "-" her er navn, og læs til næste dato/klokkeslet, og vupti, så har du dét også.

Skrevet tor. d. 25. november 2004 kl. 07:28:37| #8

markou
markou (12.265 point)
> thomasjepsen
Ja præcis sådan - hver gang - dog med den undtagelse af kundenavn (i dit tilfælde Ole Olsen) kan være forskellig længde...
Jeg skal vel så "læse" til det andet "-" og lægge 20 tegn til (med mellemrum) så står jeg foran dato... og ligesådan med klokkeslet???
Men hvordan gør jeg det???

Skrevet tor. d. 25. november 2004 kl. 08:54:07| #9

charlotterj
charlotterj (13.330 point)
Jeg ville nok lave det i en VB-funktion, hvor du løber hele tabellen gennem og udskiller de forskellige parametre og smider dem over i en ny tabel. Men det kræver vist en del arbejde (for mig i hvert fald). Måske Thomasjepsen eller Staticdata hurtigere kan ruske en løsning op af lommen?

Skrevet tor. d. 25. november 2004 kl. 13:43:31| #10

markou
markou (12.265 point)
> charlotterj
Det er faktisk måden, som jeg havde tænkt mig at lave den på. Jeg kan sagtens lave gennemløbet og "kopieringen" til den ny tabel... mit problem er bare hvordan jeg finder dato, klokkeslet m.v. i notatfeltet...

Skrevet tor. d. 25. november 2004 kl. 14:30:43| #11

staticdata
staticdata (14.984 point)
Du kan læse 12 tegn ad gangen og teste v.h.a. IsDate om det skulle være en dato. Jeg håber så, at klokken kommer lige efter.

Skrevet tor. d. 23. juni 2005 kl. 11:19:52| #12

staticdata
staticdata (14.984 point)
..tak for points..

Skriv et indlæg




Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] [img]link til billede[/img]
Web- og emailadresser omdannes automatisk til links

Log ind

   

   

Seneste spørgsmål

Formular med flere paramtre

Oprettet den 9. februar 2012 kl. 16.48
stuegnu giver 100 point for svar | Giv et svar »

Kodemodul ???

Oprettet den 8. februar 2012 kl. 17.05
olejohn giver 200 point for svar | Giv et svar »

Tabeller og forespørgsler er usynlige

Oprettet den 8. februar 2012 kl. 15.33
jensch giver 60 point for svar | Giv et svar »

Seneste guides

Installer win 7
Den gode bruger


   




Tips & Tricks fra PC World

Teaser billede

Gør dig selv en tjeneste: Køb et ordentligt SD-kort

Der kan være meget stor hastighedsforskel på to umiddelbare ens SD-kort. Se her hvad du skal være opmærksom på, når du køber ekstra hukommelse til din mobil, tablet eller kamera.


Anmeldelser fra PC World

Teaser billede

Test: Denne super-tablet er iPads hårdeste konkurrent

Eee Pad Transformer Prime er frygtindgydende med sin quadcore processor og evne til at trylle sig om til bærbar. Apple bør kigge i bagspejlet, for Asus' tablet-pc kommer buldrende - og gør det...


Seneste blogindlæg

Teaser billede

Tvangslukke spørgsmål: Hvad er den bedste løsning?

Hej Vi har mange åbne spørgsmål på Eksperten. Vi ville gerne tvangslukke dem - så et spørgsmål efter f.eks. 6 måneder lukkes. Men der er et par uklarheder som ville være gode at få lidt input til:...


Nyheder fra PC World

Teaser billede

Gratis flysimulator fra Microsoft

Den legendariske Flight Simulator fra Microsoft genopstår den 29. februar - og denne gang er spillet gratis.


Nyheder fra Computerworld

Teaser billede

Bank: Derfor er login uden NemID helt i orden

Der er ikke hold i påstanden om sikkerhedsproblemer i forbindelse med bankkunders login uden brug af NemID, lyder det fra Nykredit Bank.


Kurser
Samarbejdspartnere

Udgiver · © 2012 IDG Danmark A/S · Hørkær 18 · 2730 Herlev · Tlf.: 77 300 300 · Fax: 77 300 301 · Brug af personoplysninger