Avatar billede renekoemler Nybegynder
04. oktober 2003 - 11:55 Der er 10 kommentarer og
1 løsning

GoBack-funktion i NotesDokument

Hej,

her er en lille hurtig.

I en af mine applikationer, der primært tilgås via web, har jeg brug for at lave en "tilbage" ('history.back()')funktion. Vi bruger pt. version 5.

Hidtil har jeg brugt et $$Return-felt med følgede absolutte reference: "[/ddsweb/udvdoc.nsf/front?OpenView]", men nu vil mine brugere bare gerne tilbage til der hvor de kom fra - web-mæssigt - når de gemmer et dokument.

Skal koden stå i WebQuerySave eller i QuerySave?
Jeg kan ikke umiddelbart få lov til at skrive noget JavaScript i de to - kan jeg kalde scriptet fra et andet sted?

Eller er der en meget smartere løsning?

/bedste hilsner
/rené
06. oktober 2003 - 11:28 #1
Som du er inde på, kan man ikke skrive JavaScript i WebQuerySave. Men hvad med at lave en action-knap, der først kører en submit (og derved gemmer dokumentet)og dernæst history.back()?
Avatar billede renekoemler Nybegynder
06. oktober 2003 - 11:51 #2
Det lyder fornuftigt - er ikke så stiv i JS hvad skeal der stå når man vil submitte?
Avatar billede pr0gm4n Nybegynder
06. oktober 2003 - 12:02 #3
Når du er fortrolig med $$Return så bliv ved med at bruge det. Men i stedet for at udfylde feltet med en absoulut reference, så lad det få værdien fra CGI-variablen 'HTTP_Referer'
06. oktober 2003 - 12:07 #4
Du kan skrive sådan her:
var frm = document.forms[0];
frm.submit();
history.back()
Avatar billede renekoemler Nybegynder
06. oktober 2003 - 19:41 #5
hej begge,

jeg har prøvet kaspertm's løsning med succes - lav lige et svar til point.
pr=gm4n - kan man "bare" skrive "[HTTP_Referer]" i properties til $$Return?
Avatar billede renekoemler Nybegynder
06. oktober 2003 - 22:32 #6
Var lidt for hurtig. Det lader til at JavaScriptet ikke får gemt dokumnetet, men tilbage funktioner virker OK. Når jeg lave en enkelt knap med med en hotspot, generere Notes selv en submit knap.....der virker men der får jeg Form Proceeded skærmen frem.

Min "gamle knap" med:

@Command([FileSave]];
@Command([FileCloseWindow])
gør tricket med sender tilbage til $$Return's absolutte adresse.

Da selve oprettelsen af dokumneter er PW beskyttet kan jeg desværre ikke giver jer adgang til at prøve - ærgeligt men det siger min administrator ;-)
Avatar billede renekoemler Nybegynder
06. oktober 2003 - 22:38 #7
Har lige prøvet at lave et $$Return-felt:
"[HTTP_Referer]"

det gør det heller ikke - dokumentet gemmes/lukkes (af @Commader'ne på knappen) - men jeg får en file not found skærm ud af retur adressen
Avatar billede pr0gm4n Nybegynder
07. oktober 2003 - 11:12 #8
Nej du skal oprette et felt der er navngivet som CGI-variablen. Dette felt kan du så benytte i din videre beregning i $$Return.

Følgende er sakset fra hjælpen:
When a field is named after a CGI variable, Domino copies the field value from the CGI environment and places it in the field. This feature is useful in computed-for-display fields and for determining "hide when" conditions.
  1.    Create a field and give it the name of a CGI variable.
For example, to obtain the IP address of the user submitting the form, add a field named Remote_Addr to the form.
  2.    Select the hide-when field properties "Previewed for Editing" and "Opened for editing" so users cannot enter information in it.
Avatar billede renekoemler Nybegynder
07. oktober 2003 - 20:20 #9
Har forsøgt - men jeg må skrive noget forkert - dokumentet bliver ikke gemt og jeg får returneret en hvid skærm med url'en for min egen side.

I hjælpen står oxo:

To capture this information in a Web application:
Create a field with the name of a CGI variable.
Create an agent whose script contains a CGI variable as a DocumentContext property.

Hvad er det for en agent der skal laves - hvor skal den sættes ind henne ? - hmmmmmmmm
Avatar billede renekoemler Nybegynder
07. oktober 2003 - 20:31 #10
NU kan jeg få dokumentet gemt - men får at vide at den ikke kan finde siden.
feltet HTTP_Referer er sat til TEXT og EDITABLE
$$Return Value = "[HTTP_Referer]"
Avatar billede pr0gm4n Nybegynder
08. oktober 2003 - 13:42 #11
Hjælpen er ikke så præcis på dette område. Det virker nogle steder som om den er skrevet af folk, hvis primære fokus er Script - og ikke gode gamle formula. Lidt ligesom når man ser de applikationer folk laver rundt omkring ;-)

Det forhold, at der omtales en agent, omhandler kun, at man som udvikler også kan tilgå disse variabler via context-dokumentet. Men det er jo ikke ikke relevant for dig.

Jeg har lige siddet og testet lidt, og jeg kan heller ikke få HTTP_Referer til at returnere noget :-| Jeg prøvede et par af de andre CGI variabler det virkede fint - er ikke helt klar over hvori problemet består; men du kan jo selv forsøge med en af de andre CGI variabler og se hvorledes det virker - eller burde virke.

Og så kan det være at forklaringen på den udeblevne HTTP_Referer dukker op.
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