besoin d'aide pour un automate de saisie

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
yohanb767
Niveau 5
Niveau 5
Messages : 117
Enregistré le : mer. 28 déc. 2016 14:09
Status : Hors ligne

besoin d'aide pour un automate de saisie

#1

Message par yohanb767 »

Bonjour à tous , j'ai écris un petit script (je suis débutant) et j'aurai aimer apporter un petit plus dessus (c'est avant tout un automate sur un logiciel connu "SAP" car poste à répétition de saisie

Quand je suis dans la fenêtre portant de titre "Gestion des avis de réception: écran principal"
j'aimerai quand lançant le script si dessous que dans un premier temps il vienne enregistrer les chiffres contenu dans la première cellule ou je fait un mouseclick et mettre la condition suivante , si le résultat et égal à 260662700 continuer le programme sinon l’arrêter

aller sur la cellule ça pas de soucis mais par contre la surligner et la copier dans une variable je ne vois pas
quelqu'un aurai t'il une piste

j'espere que quelqu'un pourra m'aider merci d'avance

If WinActive("Gestion des avis de réception: écran principal") Then
   ;Symptômes client
   BlockInput(1)

   MouseClick("left", 538, 359, 1, 0)

   MouseClick("left", 120, 488, 1, 0)
   Send("CR15")
   ;Fact Nfac
   Send("{TAB 8}")
   Send("NFACT")
   ;Destination
   Send("{TAB 2}")
   Send("RETOUR EXPEDITEUR")
   ;Direction
   Send("{TAB 2}")
   Send("REPARATION SIMPLE")
   ;Précision
   MouseClick("left", 190, 577, 1, 0)
   Sleep(200)
   MouseClick("left", 217, 578, 1, 5)
   ;Devis
   MouseClick("left", 124, 263, 1, 5)
   MouseClick("left", 175, 295, 2, 5)
   MouseClick("left", 175, 295, 2, 0)
   ;Enregistrer
   MouseClick("left", 234, 51, 1, 0)
   BlockInput(0)
Else
   Exit
EndIf
Modifié en dernier par orax le lun. 03 avr. 2017 16:10, modifié 1 fois.
Raison : Ajout des balises pour le code.
Avatar du membre
parazitenew
Niveau 7
Niveau 7
Messages : 310
Enregistré le : sam. 10 déc. 2011 15:08
Localisation : Algerie
Status : Hors ligne

Re: besoin d'aide pour un automate de saisie

#2

Message par parazitenew »

Bonjour, essayes avec ControlGetText() où l'id peut être récupéré avec Autoit Window Info
yohanb767
Niveau 5
Niveau 5
Messages : 117
Enregistré le : mer. 28 déc. 2016 14:09
Status : Hors ligne

Re: besoin d'aide pour un automate de saisie

#3

Message par yohanb767 »

Merci parazitenew !
je vais essayer avec ControlGetTex car je ne peux pas recupérer l'ID sur la page c'est une fenetre du logiciel SAP et pas moyen d'avoir l'ID exact
merci de ta réponse
bonne journée à toi
yohanb767
Niveau 5
Niveau 5
Messages : 117
Enregistré le : mer. 28 déc. 2016 14:09
Status : Hors ligne

Re: besoin d'aide pour un automate de saisie

#4

Message par yohanb767 »

Si quelqu'un à autre chose pour m'aider car j'ai essayer avec ControlGetTex mais il faut vraiment qu'il vienne chercher ce qui est écris dans cet emplacement du logiciel SAP (538, 359, 1, 0)
à savoir que je ne peux pas récupérer l'ID (dans SAP c'est impossible) donc il faut juste lire ce qui est écris à l'emplacement ou pointe la souris avec le script de saisie
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11773
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: besoin d'aide pour un automate de saisie

#5

Message par Tlem »

Bonjour.
Si vous n'avez vraiment pas la possibilité d'utiliser les informations de la fenêtre avec Window Info ou Contrôle Viewer et que seuls les coordonnées sont disponibles, suivant les indications que vous nous avez communiqué, alors faites la séquence :

Code : Tout sélectionner

MouseClick("left", 538, 359, 1, 0) ; Clic et focus dans la zone sensé contenir le nombre à tester.
Send("^a") ; Pour sélectionner la totalité des infos du champs
Local $sData = ClipGet() ; On récupère les données par le presse papier

If $sData <> "260662700" Exit ; Si différent de 260662700 on quitte le script

;La suite de votre code
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: besoin d'aide pour un automate de saisie

#6

Message par mikell »

If $sData <> "260662700" ZEN Exit
:mrgreen:
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11773
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: besoin d'aide pour un automate de saisie

#7

Message par Tlem »

Oui, je voulais faire comme cela, mais j'ai trouvé la décomposition des étapes plus parlante pour quelqu'un qui est limité aux Send et MouseClick ! ^^
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Répondre