Bonjour à tous,
je vous expose mon problème,
Je crée une chaine de taches, cependant le nombre de ligne augmente énormément, par conséquent je voulais savoir s'il était possible de décomposer mon programme en suite de fonction.
Cependant mon nombre de ligne est vraiment immense, je l'ai optimisé comme je pouvais cependant lorsqu'il faut que je rajoute des boucles, tout se complique et je dois modifier les retours a la ligne, etc...
Je souhaiterai donc créer un export pour chacune de mes taches et puis, me créer un nouveau projet où je ferai appel à mes fonctions lorsque j'en ai besoin.
J'ai bien essayé de passer par "code" ou même "script" mais sans résultats..
Avez vous une solution ?
Merci d'avance
Créer des fonctions et les appeler
Re: Créer des fonctions et les appeler
Bonjour
Il est possible de saisir un label qui sera invariant :
Pour utiliser des fonctions communes à plusieurs scripts :
-En début de chaque script, faire un include d'un fichier qui contient ces fonctions communes.
- Puis dans chaque script, appeler une ou plusieurs fonctions contenues dans ce fichier.
Exemple :
fonctions.js contient notamment :
Dans le script, il peut être fait appel à une de ces fonctions.
exemple :
Bonne journée.
Je suis toujours un fan d'Actiona le logiciel que JMGR a conçu et réalisé.
Pour ne pas avoir à faire les mises à jour des numéros de lignetout se complique et je dois modifier les retours a la ligne, etc...
Il est possible de saisir un label qui sera invariant :
Pour utiliser des fonctions communes à plusieurs scripts :
-En début de chaque script, faire un include d'un fichier qui contient ces fonctions communes.
- Puis dans chaque script, appeler une ou plusieurs fonctions contenues dans ce fichier.
Exemple :
Code: Select all
include "fonctions.js";
Code: Select all
function date_formatee(date_)
{
if ( date_.getHours() < 10){ hour = "0" + date_.getHours()} else { hour = date_.getHours()};
if ( date_.getMinutes() < 10){ minute = "0" + date_.getMinutes()} else { minute = date_.getMinutes()};
if ( date_.getSeconds() < 10){ second = "0" + date_.getSeconds()} else {second = date_.getSeconds()};
var date_f = " " + hour + ":" + minute + ":" + second;
return date_f
} // fin function
function fin_trait_normal(ctr_fichier_in,nb_arts_in_total,date_debut)
{
date_actuelle= new Date()
date_actuelle_f = date_formatee(date_actuelle);
Console.print(" Heure fin trait : " + date_actuelle_f );
affichage_percent(ctr_fichier_in,nb_arts_in_total,date_debut)
fich_chemin_complet= rep_actiona + "\\" + "sons" + "\\" + "100.wav"
rc= son_percent(fich_chemin_complet,2000);
Execution.stop();
} // fin function
//=====================
Dans le script, il peut être fait appel à une de ces fonctions.
exemple :
Code: Select all
rc= fin_trait_normal(ctr_fichier_in,nb_arts_in_total,date_debut)
Je suis toujours un fan d'Actiona le logiciel que JMGR a conçu et réalisé.
Re: Créer des fonctions et les appeler
Bonjour,
Tout d'abord je te remercie pour toutes ces informations et pour les réponses claires que tu m'as apporté !
En ce qui concerne les labels, peux-tu m'en dire plus sur le fonctionnement et sur leur mise en place ? Cela semble génial pour éviter d'éditer sans cesse mon programme !
En second lieu, je voulais me pencher un peu plus sur les "scripts". En effet dans ton exemple, il s'agit de javascript, je voulais savoir si par exemple, il était possible que cet include, soit un .ascr ?
Je m'explique, quand je parlais de fonctions, je n'ai peut-être utiliser le bon terme, je parlais d'un ensemble de clic, déplacement de souris, d'entré clavier, etc...
Dans mon exemple : Est-il possible de par exemple transformer ces lignes en "script" (je ne sais pas si le terme est approprié) afin quelles ne forment plus qu'une seule ligne.
Et ainsi mon code passerait d'un 50 aine de lignes, à une dizaine !
Je te remercie d'avance,
Cordialement
EDIT : pour le label j'ai trouvé les informations assez simplement, merci !
Tout d'abord je te remercie pour toutes ces informations et pour les réponses claires que tu m'as apporté !
En ce qui concerne les labels, peux-tu m'en dire plus sur le fonctionnement et sur leur mise en place ? Cela semble génial pour éviter d'éditer sans cesse mon programme !
En second lieu, je voulais me pencher un peu plus sur les "scripts". En effet dans ton exemple, il s'agit de javascript, je voulais savoir si par exemple, il était possible que cet include, soit un .ascr ?
Je m'explique, quand je parlais de fonctions, je n'ai peut-être utiliser le bon terme, je parlais d'un ensemble de clic, déplacement de souris, d'entré clavier, etc...
Dans mon exemple : Est-il possible de par exemple transformer ces lignes en "script" (je ne sais pas si le terme est approprié) afin quelles ne forment plus qu'une seule ligne.
Et ainsi mon code passerait d'un 50 aine de lignes, à une dizaine !
Je te remercie d'avance,
Cordialement
EDIT : pour le label j'ai trouvé les informations assez simplement, merci !
Re: Créer des fonctions et les appeler
Bonjour,
Exemple de recherche d'image + positionnement souris sur image + Clic
Pour voir tout ce qu'on peut faire en code : https://wiki.actiona.tools/doku.php?id=en:code
Cordialement
Exemple de recherche d'image + positionnement souris sur image + Clic
Code: Select all
//=====
var souris=new Mouse()
var IMG_a_trouver = new Image( "C:/temp/tofind.jpg");
IMG_= Image.takeScreenshot();
Search_IMG_ =IMG_.findSubImage(IMG_a_trouver,
{
confidenceMinimum: 80,
downPyramidCount: 1,
searchExpansion: 15
})
if (Search_IMG_) // on a trouvé
{
souris.move(Search_IMG_.position)
souris.click();
}
else
{
// on n'a pas trouvé
// suivant le script , on arrête (via Execution.stop() ) ou on fait une nouvelle tentative (via l'instruction Script.nextLine)
}
//=====
Cordialement
Re: Créer des fonctions et les appeler
Super, je te remercie pour ces informations !
Je vais donc voir s'il est intéressant pour moi de refaire mon code en "brut" !
Merci à toi,
Bien cordialement
Je vais donc voir s'il est intéressant pour moi de refaire mon code en "brut" !
Merci à toi,
Bien cordialement