Envoyer valeurs sur pageWeb. ?

Bonjour,
Je developpe sous mac pour windows
Sous “2016r4.1”

Je voudrais “controler” une page web…
Plus precisement, envoyer des valeurs dans des champs sur la pageweb
Est-il plus simple de passer par le “htmlviewer” de xojo ou de controler directement “internet explorer”?

Et… Par quelle methode me conseilleriez vous d’envoyer mes donnees…?
Y a t il un moyen type sendkey ou autre ?

En un mot, ce que vous vous proposez de faire est possible grce au HTMLViewer executeJavaScript. Cependant, c’est du sur mesure. Il vous faudra analyser la page afin d’en connatre le nom des champs que vous voulez remplir, ainsi que celui du bouton de validation. Je vous recommande d’utiliser les outils de dveloppement du navigateur pour identifier ces lments.

Ensuite, les lments HTML et commandes JavaScript tudier sont :
https://www.w3schools.com/tags/tag_input.asp
https://www.w3schools.com/jsref/met_document_getelementbyid.asp
https://www.w3schools.com/jsref/met_html_click.asp

[quote=327665:@Michel Bujardet]En un mot, ce que vous vous proposez de faire est possible grâce au HTMLViewer executeJavaScript. Cependant, c’est du sur mesure. Il vous faudra analyser la page afin d’en connaître le nom des champs que vous voulez remplir, ainsi que celui du bouton de validation. Je vous recommande d’utiliser les outils de développement du navigateur pour identifier ces éléments.

Ensuite, les éléments HTML et commandes JavaScript à étudier sont :
https://www.w3schools.com/tags/tag_input.asp
https://www.w3schools.com/jsref/met_document_getelementbyid.asp
https://www.w3schools.com/jsref/met_html_click.asp[/quote]
Merci…
J’ai plus qu’a…

[quote=327665:@Michel Bujardet]En un mot, ce que vous vous proposez de faire est possible grâce au HTMLViewer executeJavaScript. Cependant, c’est du sur mesure. Il vous faudra analyser la page afin d’en connaître le nom des champs que vous voulez remplir, ainsi que celui du bouton de validation. Je vous recommande d’utiliser les outils de développement du navigateur pour identifier ces éléments.

Ensuite, les éléments HTML et commandes JavaScript à étudier sont :
https://www.w3schools.com/tags/tag_input.asp
https://www.w3schools.com/jsref/met_document_getelementbyid.asp
https://www.w3schools.com/jsref/met_html_click.asp[/quote]

je commence a travailler dessus… j’ai repéré les noms des zone du formulaire que je dois remplir…
vous me dites d’utiliser “executejavascript”,
c’est une propriété dans xojo…?
je ne peux pas avec du code vb faire une recherche dans “ce qui a été chargé” dans le htmlviewer pour modifier les valeurs du code directement…?
(je dis ça, en y connaissant pas grand chose à ce mode de fonctionnement…)

http://documentation.xojo.com/index.php/HTMLViewer.ExecuteJavaScript

Je vous ai mis des liens vers les principales pages sur W3Schools.com plus haut pour reprer les champs et en changer les valeurs. Voici un exemple.

HTMLViewer1.ExecuteJavaScript("document.getElementById(‘nomuser’).value=‘Napoleon Bonaparte’; ")

Le champ dont l’id est “nomuser” sera rempli avec “Napoleon Bonaparte”. C’est pour cela que vous avez besoin de reprer l’id des champs que vous voulez modifier.

[quote=328040:@Michel Bujardet]http://documentation.xojo.com/index.php/HTMLViewer.ExecuteJavaScript

Je vous ai mis des liens vers les principales pages sur W3Schools.com plus haut pour repérer les champs et en changer les valeurs. Voici un exemple.

HTMLViewer1.ExecuteJavaScript("document.getElementById(‘nomuser’).value=‘Napoleon Bonaparte’; ")

Le champ dont l’id est “nomuser” sera rempli avec “Napoleon Bonaparte”. C’est pour cela que vous avez besoin de repérer l’id des champs que vous voulez modifier.[/quote]
Oui…
Desolé… J’avais mal approfondi…

Je rencontre un soucis dans le htmlviewer…
Lorsqu’il charge la page demandée, avant d’arriver sur mon formulaire, je dois selectionner en cliquant sur un bouton, un element qui se charge dans un pop-up…
Et la… J’ai compris que je passe dans un event du htmlviewer " new window"… Mais je ne sais pas comment l’autoriser pour pouvoir continuer…
Dur… !!!

Pouvez-vous poster l’URL du site ? Cela facilitera la comprhension et permettra de faire des tests.

Merci de prendre le temps de m’aider,
Malheureusement, c’est sur de l’intranet entreprise…
Innacessible depuis le net…

En fait je dois cliquer sur un icone, qui m’ouvre une nouvelle fenetre en popup, je selectionne un type d’affectation puis ce popup se referme en inscrivant dans une espece de textfield mon choix ce qui alimente une combobox de noms… (Suivant ma selection…)

Je n’ai pas regarder dans le code de la page (puisque ce n’etait pas celle ci qui m’interessait pour mon projet)
Si je pouvais ecrire " en dur " la valeur… Mais je pense que le popup ne doit pas faire qu’ecrire… Il doit sans doute envoyer d’autres parametres…

J’ai le meme soucis avec un autre popup qui est un calendrier… Il ne s’ouvre pas…

Ceci dit si dans le htmlviewer, vous vous connecter sur facebook ( pour avoir fait l’essai…)
Si vous cliquez sur un lien qui vous dirige vers une autre page, style youtube, elle ne s’ouvre pas… On passe dans l’event “new window” du html viewer… Je pense qu’en trouvant comment ouvrir cette autre fenetre… On regle le soucis…

A moins que ca chang depuis… mais, Le (htmlviewer) de base ne prend pas en charge les popupWindow…
Tu aura besoin du plugin ( MBSWebUIDelegate )…
va voir l’exemple “WebUIDelegate.rbp” qui utilise “RunJavaScriptAlertPanelWithMessage”
C’est la seule faon que j’ai t capable de rpondre a un popupAlert

tu trouve tout ca sur le site de ( monkeybreadsoftware )

Juste un avertissement:
J’ai vu plusieurs differences dans l’utilisation et le comportement du HTMLviewer entre Mac et Window…
Donc a chaque fois que tu fais un step ( test ) sur mac… Va voir si c’est la meme chose sur window.
Avant de continuer et de ne plus savoir ou est le probleme

[quote=328091:@julien assayah]En fait je dois cliquer sur un icone, qui m’ouvre une nouvelle fenetre en popup, je selectionne un type d’affectation puis ce popup se referme en inscrivant dans une espece de textfield mon choix ce qui alimente une combobox de noms… (Suivant ma selection…)
[/quote]

Dommage. J’aurais voulu tester avant de poster une solution. Je vais chercher un exemple de page fonctionnant ainsi sur le web, et posterai une solution en pur Xojo.

Je viens de bien regarder ce que fait HTMLViewer avec un popup JavaScript. NewWindow se produit bien, mais jamais l’URL demandé par JavaScript n’est jamais disponible.

La seule possibilité est donc le plugin, en effet
http://www.monkeybreadsoftware.net/class-htmlviewer.shtml

Dans la doc xe xojo le code en exemple de la newwindow fait l’affaire, il ouvre la nouvelle fenetre…!