Avatar billede mmmtm Nybegynder
29. marts 2003 - 13:48 Der er 7 kommentarer og
1 løsning

@formula ønskes "oversat" til Lotus Script

Jeg bruger subjectlinjen i en memoform til en mail-in database til forskellige parametre. Jeg adskiller dem med forskellige tegn, for at kunne isolere dem nemt:
Ex: Subject = Administration_3&Overskriv#Nyhedsbrev
FIELD Afdeling:=@Left(Subject;"_");
FIELD Kode:=@Left(@Right(Subject;"_");1);
FIELD Handling:=@Left(@Right(Subject;"&");"#");
FIELD Titel:=@Right(Subject;"#");

Dette fungerer fint, men da jeg bruger "Afdeling" til at oprette et Readersfield, knækker filmen - eftersom at @formula tilsyneladende ikke kan oprette readersfelter. Så dokumentet skal derefter åbnes og gemmes, før at READACCESS propertien bliver sat. Jeg har lavet en anden agent der efterfølgende sætter denne property i lotus script, men jeg vil hellere have det hele samlet i een (lotusscript) agent.
Så jeg har brug for at få ovst. "oversat" til lotusscript, inkl. noget der svarer til: doc.GetfirstItem("Readers").IsReaders=True.
Agenten skal kører i "Before new mail arrives", og jeg har brug for hele koden inkl. dim'er og set'er.
Avatar billede mmmtm Nybegynder
29. marts 2003 - 13:52 #1
..eller evt. et tip til at få @formula til at sætte READACCESS propertien på Readers. Det er oprettet korrekt som et multivalue readersfield, og får også værdierne korrekt - det er kun propertien der ikke slår igennem.
Avatar billede jogii Nybegynder
29. marts 2003 - 17:41 #2
En hurtig metode:

Brug LS funtionen EVALUATE. Med den kan du interface til @Formula

f.eks.
dim vaerdi as Variant
vaerdi = Evaluate( {@Left(Subject;"_")}, doc )
doc.Afdeling = vaerdi(0)
vaerdi = Evaluate( {@Left(@Right(Subject;"_");1)}, doc )
doc.Kode = vaerdi(0)

@Formula kan desværre ikke sætte sikkerhedstypen for et felt.

//Jörg
Avatar billede jogii Nybegynder
29. marts 2003 - 18:07 #3
eller den frække uden mellemvariabel

doc.Afdeling = Evaluate( {@Left(Subject;"_")}, doc)(0)
doc.Kode = Evaluate( {@Left(@Right(Subject;"_");1)}, doc)(0)
Avatar billede mmmtm Nybegynder
31. marts 2003 - 15:17 #4
Umiddelbart ligner Evaluate en god løsning. Men feltet Readers er et multivalue field, og hvis jeg bruger evaluate der:
vaerdi = Evaluate({"BB-"+@ProperCase(Afdeling): "BB_Administrator"},doc)
doc.Readers = vaerdi(0)   
..får jeg ikke "BB_Administrator" med ?
Avatar billede mmmtm Nybegynder
31. marts 2003 - 15:53 #5
Nåh - sidstnævnte fik jeg klaret med Item.AppendToTextList, så det ser rigtig godt ud.
Kan første teste det på server imorgen - så jeg vender (forhåbenligt :-)tilbage med point der.
Avatar billede mmmtm Nybegynder
04. april 2003 - 15:44 #6
jogii:Det virkede fint. Men nu var det jo ikke hele svaret jeg fik...så lige et tillægsspørgsmål:
Kan man ikke give mindre point end sat fra starten ?
Kan man ikke fortryde et "afvist svar" og acceptere det istedet ?
Avatar billede jogii Nybegynder
04. april 2003 - 16:13 #7
Så meget kender jeg ikke til dette her system, men jeg har da set andre oprette svar til deres egne spørgsmål og tage point tilbage ved at tildele dem til sig selv.
Avatar billede mmmtm Nybegynder
04. april 2003 - 17:33 #8
Ja - men det er vist den eneste måde man kan lukke et ikke-besvaret spørgsmål på. Men så skidt da, du får alle point'ene alligevel.
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester