Autor Thema: DB - Browser  (Gelesen 2021 mal)

Offline lo

  • Frischling
  • *
  • Beiträge: 3
DB - Browser
« am: 13.06.06 - 14:09:23 »
hallo

vielleicht könnt ihr mir weiterhelfen.

ausgehend von einer notes db mit form und feldern würde ich gerne ein agent programmieren, welcher mir die feldwerte auf knopfdruck  ;D in ein geöffnetes (notes fremdes) html formular kopiert.
also von einer view oder einem geöffneten dokument der erste feldwert kopiert, dann im html formular einträgt, das zweite feld kopiert im html formular einträgt, und so weiter. bis zum ende.

kennt einer von euch eine idee wie ich anfangen könnte?

vielen dank.

lo

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: DB - Browser
« Antwort #1 am: 13.06.06 - 14:24:16 »
Drei Fragen:
Wie gut bist Du in der Programmierung von Notes / Domino?
Wo soll das ganze passieren - Client oder Server?
Wozu das ganze?

Bernhard

Offline Untitled

  • Senior Mitglied
  • ****
  • Beiträge: 364
    • Musiker24.ch - Musiker und Bands finden
Re: DB - Browser
« Antwort #2 am: 13.06.06 - 14:50:31 »
Ich habe hier eine (ziemlich komplizierte aber machbare) Lösung:

Füge zuerst in deine Form ein "Microsoft Web Browser"-Control ein (Menu Create -> Object -> Control).

Nun gibts mühe das Control zu markieren, aber du kannst es in der Objektliste (unten links) auswählen. Es sollte nun "Microsoft Web Browser (Control)" heissen. Öffne den Baum mit einem Klick auf das "+". Zuoberst ist ein Event "Properties". Klicke darauf und ändere "(Name)" von "Microsoft Web Browser" zu "wbrMain".

Füge nun im "Globals"-Teil der Form im Teil "Declarations" folgende Deklaration hinzu:
Code
Dim firstNav As Boolean 

Diese Variabel wird gebraucht, damit später das Formular nur einmal versendet wird.

Füge nun im Postopen-Event der Maske folgenden Code ein:
Code
Dim browser As Variant
	
Set browser = Source.GetObject("wbrMain")
	
firstNav = True
	
browser.Navigate "www.google.ch"

Dies bezweckt, dass das Control mal auf die Google-Seite navigiert.

Wähle nun wieder das Control in der Objektliste aus (ACHTUNG: Es heisst nun "wbrMain"). Suche das Event "Progresschange" (NavigateComplete2 hat bei mir nicht richtig funktioniert).

In diesem Event musst du folgenden Code einfügen:
Code
	If progress < progressmax Then
		Exit Sub
	End If
	
	With source
		.Document.Forms(0).q.Value = "diesistmeinsuchstring"
		
		'.Document.Forms(0).feld2.Value = xxx
		'.Document.Forms(0).feld3.Value = yyy
		
		If firstNav Then
			.Document.Forms(0).Submit
			
			firstNav = False
		End If
	End With

Zuerst wird hier überprüft, ob das HTML-Dokument bereits vollständig geladen wurde, falls nicht wird noch ein weiterer Schritt gewartet. Falls das Dokument vollständig geladen wurde, füllt das Script das Textfeld mit einem String und versendet das Formular. Hier wird die Variable "firstNav" gebraucht. Falls diese nicht gesetzt wird, wird durch das "Submit" erneut ein HTML-Formular geladen und das Progresschange-Event wieder aufgerufen (Endlosschleife).

Wie die Felder im Formular heissen, kannst du im Quellcode der Dokumente entnehmen.

Am Besten machst du das Control am Ende mit einer Hide-When-Formel unsichtbar, damit die Benutzer nichts vom Prozess mitkriegen.

Grüsse
Moritz

Offline lo

  • Frischling
  • *
  • Beiträge: 3
Re: DB - Browser
« Antwort #3 am: 13.06.06 - 15:03:57 »
Drei Fragen:
Wie gut bist Du in der Programmierung von Notes / Domino?
   formeln und so sicher, script und javascript so mittelmässig (es fehlen mir nur teilweise die ideen :-(
Wo soll das ganze passieren - Client oder Server?
 client
Wozu das ganze?
leider bekomme ich keinen zugriff auf die datenbank der webappli., der db besitzer hat nen bischen angst vor notes. (keine angst, es ist firmen intern ich bau kein filler)
Bernhard
« Letzte Änderung: 13.06.06 - 15:08:25 von lo »

Offline lo

  • Frischling
  • *
  • Beiträge: 3
Re: DB - Browser
« Antwort #4 am: 13.06.06 - 15:21:18 »
hat nicht schlecht geklappt mit deiner vorlage "untitled". danke. ich werd darauf mal aufbauen und schauen wie weit ich komme.  8)

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz