Avatar billede leif Seniormester
09. august 2008 - 18:47 Der er 24 kommentarer og
1 løsning

Lav Knap om til Web edition

Hej,

Jeg har følgende kode på en knap i Actions som fungerer upåklageligt i Notes, men hvordan kan jeg implimentere det samme på Web ?

//Code start
@Command([EditDocument]; "1");
_person := @UserName;


@If (!@IsValid; @Return(0);
        @Do(FIELD Status := "Type3";FIELD StatusPerson := _person;@PostedCommand([FileSave]);@PostedCommand([FileCloseWindow])))
//Code end


På forhånd tak

/Leif
Avatar billede kehob Nybegynder
19. september 2008 - 20:35 #1
@IsValid virker ikke på web.

Noget tyder på at du anvender @failure("fejl....") i din input validering og dette giver ikke særlige gode resultater på web. Derfor laver man typisk validering via javascript inden man sender den til serveren.

/Kenneth
Avatar billede leif Seniormester
19. september 2008 - 21:42 #2
kehob -> Ja, det gør jeg, men ikke på felterne Status og StatusPerson da det er Computed Fields, men knappen optræder ikke engang på web siden, så spørgsmålet lyder på hvordan får jeg en knap ud på websiden som reelt gør det samme ?
Avatar billede leif Seniormester
19. september 2008 - 21:44 #3
Formen virker ellers uden problemer på webben, det er kun de "skide" knapper der er problemet
Avatar billede leif Seniormester
21. september 2008 - 16:10 #4
Fandt en løsning:
Opret en Button på selve formen i stedet for i Actionbaren og tilføj følgende Formula:
_person := @UserName;

FIELD Status := "Type3";FIELD StatusPerson := _person;
@True
Avatar billede leif Seniormester
21. september 2008 - 16:10 #5
Smid et svar kehob
Avatar billede leif Seniormester
21. september 2008 - 16:16 #6
Var lige hurtig nok, den opdaterer pænt siden i Browseren med den nye værdi, men den har faktisk ikke gemt noget.
Avatar billede kehob Nybegynder
21. september 2008 - 18:59 #7
Tilføj...

@PostedCommand([FileSave]);@PostedCommand([FileCloseWindow]))

for at gemme dokumentet
Avatar billede kehob Nybegynder
21. september 2008 - 19:04 #8
Anvender du stadig @failure?
Avatar billede kehob Nybegynder
21. september 2008 - 19:24 #9
Hvis du stadig vælger at anvende @failure.. så lav evt. din inputValidation sådan her

@If(@ThisValue!=""; @Success; @Failure(@ThisName+": Feltet må ikke være tomt"+"<br /><a href=\"java script: self.history.back();\">Tilbage</a><br />"))

Altså lav en "Tilbage" knap, så dine bruger får mulighed for at komme tilbage og lave de nødvendige rettelser
Avatar billede kehob Nybegynder
21. september 2008 - 19:28 #10
Hvis du vælger at lave din inputvalidering i javascript så kunne du tilføje en lignende kode til din onSubmit event

var fld = document.forms[0].Text;
if (fld.value=='')
{
    alert(fld.name+": Flet må ikke være tomt");
    fld.focus();
}

Sådan kan validering se ud af et text felt og bemærk at felt navne i js er case sensitive
Avatar billede leif Seniormester
21. september 2008 - 19:37 #11
Lige netop det felt jeg vil ændre er der IKKE validering på.

Omformulering:
Jeg skal bruge en knap på en Webside som sætter en bestemt værdi i et bestemt felt i formen. (I Notes klienten har jeg det til at fungere)
Avatar billede leif Seniormester
21. september 2008 - 19:42 #12
Hvis jeg laver den som du så anbefaler:
_person := @UserName;

FIELD Status := "Type3";FIELD StatusPerson := _person;
@PostedCommand([FileSave]);@PostedCommand([FileCloseWindow])


Så lukker den blot formen, men opdaterer ikke feltet Status med værdien Type3
Avatar billede kehob Nybegynder
21. september 2008 - 19:44 #13
Hvis vi tager din oprindelige kode og fjerne @isvalid og så lægger den i din nye knap så har vi noget der ligner det her:

@Command([EditDocument]; "1");
_person := @UserName;


@Do(FIELD Status := "Type3";FIELD StatusPerson := _person;@PostedCommand([FileSave]);@PostedCommand([FileCloseWindow]))


og det burde virke...
Avatar billede kehob Nybegynder
21. september 2008 - 19:46 #14
Jeg kan se at har lagt flere spørgsmål ind omkring notes/web ting... er du igang med at gøre en eksiterende løsning tilgængelig fra web?
Avatar billede leif Seniormester
21. september 2008 - 19:49 #15
Noget af løsningen skal ja, nu bruges på Web.
Avatar billede leif Seniormester
21. september 2008 - 19:55 #16
Og det er en løsning jeg selv har bygget op
Avatar billede kehob Nybegynder
21. september 2008 - 20:10 #17
Jeg kan godt give dig nogle gode råd her og der, men det virker som om du ikke har store erfaring med Notes/domino/web. Du er velkommen til at give kontakte mig, hvis du ønsker assistance (konsulent bistand) til din løsning.
Avatar billede kehob Nybegynder
21. september 2008 - 20:14 #18
Har du fået ovenstående til at virke?
Avatar billede leif Seniormester
21. september 2008 - 21:13 #19
Det eneste der sker er at formen lukker og jeg kommer tilbage til viewet, men feltet Status eller StatusPerson opdateres ikke



Min erfaring ligger primært når folk bruger Notes Klient, men ikke Web :-)
Avatar billede kehob Nybegynder
21. september 2008 - 22:55 #20
Lav en ny agent "UpdateStatus"
On event: Agent list
Target: None


Sub Initialize
    Dim Session As New NotesSession
    Dim Doc As notesDocument
   
    Set Doc = Session.DocumentContext
   
    Doc.Status = "Type3"
    Doc.StatusPerson = Session.EffectiveUserName
    Call Doc.Save(False, False)
   
End Sub


Tilføj en ny knap på formen:

@Command([ToolsRunMacro]; "(UpdateStatus)");
@PostedCommand([FileCloseWindow])
Avatar billede leif Seniormester
22. september 2008 - 21:51 #21
kehob -> Kanon
Avatar billede leif Seniormester
22. september 2008 - 21:51 #22
Det virker jo perfekt
Avatar billede leif Seniormester
22. september 2008 - 21:53 #23
Smid et svar.
Avatar billede leif Seniormester
22. september 2008 - 21:58 #24
Damn, det lettede lige mit hjerte for den ene opgave så skulle der så vidt jeg kan se ikke så langt endnu før den kan gå online, når jeg altså lige gennemskuer den "sidste" den med at Tilføje Bemærkning, men jeg prøver lige at rode, så vender jeg tilbage på den.
Avatar billede kehob Nybegynder
22. september 2008 - 22:40 #25
svar
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