|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : octobre 2007 Messages : 8 ![]() |
Bonjour,
J'ai une requête sous XI que je lance dans une première fenêtre, contenant une macro qui ouvre une seconde fenêtre BO appelant une requête qui me permet de rappatrier puis de faire un export des données en *.txt. la macro est une boucle qui me permet de faire un rappatriement puis export par pays. mon problème est qu'entre deux rafraîchissement de données, la première fenêtre m'affiche un message de serveur occupé (cf PJ) et tant que je ne clique pas sur cette fenêtre pour la ramener au premier plan, la macro s'arrête là, je n'ai pas forcément besoin de cliquer sur réessayer pour que l'execution de la macro continue. avec du VB classique je pourrais utiliser la commande "DisplayAlerts = False", mais cette commande est inconnue du VB BO. Petite précision : cette macro a été créée sous V5 et fonctionnait très bien, sans affichage du pop-up "serveur occupé". Auriez-vous une idée ? |
|
|
00
|
|
|
#2 |
![]() ![]() Bruno ROMAN-RUIZ Inscription : décembre 2006 Messages : 2 183 ![]() |
Salut,
Difficile de te répondre sans voir le code et difficile de visualiser ces histoires de fenêtre ... Mais deux questions utilises tu le ForceCompute ? ta fenêtre est un objet que tu peux activer tu peux aussi faire cliquer dessus avec ton code
__________________
Précisez la VERSION ! Règles du forum Business Objects et FAQ BO"A vouloir repousser ses limites ... On risque d'en prendre connaissance !!!" |
|
|
00
|
|
|
#3 | ||
|
Invité de passage
![]() Inscription : octobre 2007 Messages : 8 ![]() |
Merci de ton aide,
je ne connais pas cette commande ForceCompute, à quoi sert-elle ? ci-dessous le code de ma requête : ___________________________________________________ Code :
merci encore, Xavier |
||
|
|
00
|
|
|
#4 | ||
![]() ![]() Bruno ROMAN-RUIZ Inscription : décembre 2006 Messages : 2 183 ![]() |
ForceCompute provoque le recalcul du document
J'ai bien peur de ne pouvoir t'aider car je suis habitué au VB de 6.5.1 et je pense qu'en XIR2 c'est différent par exemple je n'utilise pas le Call BODoc.DataProviders("Req").ConvertTo(boExpAsciiTab, 1, appath & "SRC\Export_" & pays) moi je fais une boucle sur les dataproviders et quand je suis sur le bon j'exporte Code :
__________________
Précisez la VERSION ! Règles du forum Business Objects et FAQ BO"A vouloir repousser ses limites ... On risque d'en prendre connaissance !!!" |
||
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Inscription : octobre 2007 Messages : 8 ![]() |
merci encore pour le temps que tu passes sur mon problème.
effectivement, n'ayant qu'un seul fournisseur de données, je n'ai pas l'utilité de la boucle, mais c'est toujours bon à prendre ;-). Je vais changer l'eau du bocal en attendant Ayana... |
|
|
00
|
|
|
#6 | ||
|
Membre émérite
![]() Inscription : décembre 2005 Messages : 901 ![]() |
Rhalalala, à l'heure du déjeuner, ben le poisson, il cherche de quoi manger
.Bon, je t'avouerais que la macro n'est pas ce que j'ai le plus utilisé en BO mais bon, je vais y réfléchir. C'est un problème de lien entre les pages, mais la question c'est comment le régler .Il faut trouver le moyen de réactiver ta 1e page. Peut-être avec : Code :
NB : s'il te plaît M'sieur Xavier bibolo, mets ton code entre les balises [CODE][/CODE], ça sera plus lisible NB 2 : dans ton code, tu as des lignes double (BOApp0.Interactive = True). C'est en commentaire je te l'accorde, mais ça ne sert à rien de surcharger ton code NB 3 : un peu plus de commentaires sur la signification des variables, en particulier BOApp1, BOApp0 et BOApp. Elles sont importantes, si quelqu'un veut reprendre le code, ça sera plus simple avec les commentaires, même pour toi si tu le reprends avec 2 semaines de vacances, je peux te l'assurer, je parle en connaissance de cause .D'ailleurs il faudra m'expliquer à quoi sert BOApp1 ....
__________________
--= Ayana =-- Modératrice B.I. Règles du forum BO Team BAB - Spécialistes BO Rubrique BI de developpez.com |
||
|
|
00
|
|
|
#7 |
|
Invité de passage
![]() Inscription : octobre 2007 Messages : 8 ![]() |
Merci Ayana pour ton conseil, malheureusement j'ai essayé l'ajout du BOApp.Visible=False et ça ne fonctionne pas.
Ce qui m'intrigue le plus c'est que je n'ai jamais eu ce message sous V5, uniquement depuis que je suis passé à XI. NB: j'ai mis le code entre balise NB3: j'ai ajouté des commentaires à mon code |
|
|
00
|
|
|
#8 |
![]() ![]() Bruno ROMAN-RUIZ Inscription : décembre 2006 Messages : 2 183 ![]() |
J'essaierais Activate qui s'applique en version 6 à :
Dataprovider Document Report WIndow rien que ça ...
__________________
Précisez la VERSION ! Règles du forum Business Objects et FAQ BO"A vouloir repousser ses limites ... On risque d'en prendre connaissance !!!" |
|
|
00
|
|
|
#9 |
|
Membre émérite
![]() Inscription : décembre 2005 Messages : 901 ![]() |
Le moteur de calcul de BO a changé entre le v6 et la XI, d'où le changement de nom radical aussi
Il y a aussi des problèmes avec les prompts, dus à ces modifications sur le moteur ... Peux-tu me dire ce que cela a fait avec le BOApp.Visible=False ? Cela ne faisait rien du tout ou cela provoquait une autre erreur ? Je vais y réfléchir, peut-être que la nuit porte conseil. Mais je t'avoue que 3 fenêtres pour faire un export au format txt de toutes les combinaisons de fichiers possibles (mois x pays) me semble bizarre ... Ce que tu avais, c'était une invite pour choisir le mois. Et une fois que tu as le mois, tu fais un export pour tous les pays de ta liste. C'est bien ça ?
__________________
--= Ayana =-- Modératrice B.I. Règles du forum BO Team BAB - Spécialistes BO Rubrique BI de developpez.com |
|
|
00
|
|
|
#10 | |
|
Membre émérite
![]() Inscription : décembre 2005 Messages : 901 ![]() |
Citation:
__________________
--= Ayana =-- Modératrice B.I. Règles du forum BO Team BAB - Spécialistes BO Rubrique BI de developpez.com |
|
|
|
00
|
|
|
#11 |
![]() ![]() Bruno ROMAN-RUIZ Inscription : décembre 2006 Messages : 2 183 ![]() |
Sub Activate() bien sûr
![]() Ta remarque était pertinente pour quelqu'un qui découvre Pas précis le garçon
__________________
Précisez la VERSION ! Règles du forum Business Objects et FAQ BO"A vouloir repousser ses limites ... On risque d'en prendre connaissance !!!" |
|
|
00
|
|
|
#12 |
|
Invité de passage
![]() Inscription : octobre 2007 Messages : 8 ![]() |
Je reprends, comme je n'avais pas l'air d'être très clair dans mes explications.
J'ai trois paramètres pour mon extraction dont deux variables : le mois de mise à jour, le pays et la devise (qui est toujours * pour la monnaie locale d'où le codage en dur dans la macro BODoc.VARIABLES.Item(3).Value = "*") 1-la macro demande le mois de mise à jour 2-elle va chercher le premier pays de la liste que j'ai déclaré 3-elle lance la première extraction pour le premier pays de la liste 4-elle convertit les données en ASCII séparées par des tabulations 5-elle enregistre en fichier *.txt les données rappatriées pour le premier pays en le nommant Export_"pays".txt 6-elle reboucle sur le 2- avec le second pays NB : si je n'ouvre pas une deuxième fenêtre intermédiaire, la requête d'extraction se lance dès son ouverture, avant que la macro n'ait enregistré le paramètre pays. 7-après la dernière valeur pays elle ferme les fenêtres et quitte l'application. concernant le BoApp.visible = false, ça ne changeait rien au problème, la fenêtre disparaît mais il faut vraiment une action sur la fenêtre principale pour déclencher la souvegarde en fichier *.txt |
|
|
00
|
|
|
#13 |
|
Membre émérite
![]() Inscription : décembre 2005 Messages : 901 ![]() |
Oui, donc je pense qu'on avait bien compris le problème
Mais c'est beaucoup plus clair comme ça Tu as essayé avec BOApp0.Activate() ?
__________________
--= Ayana =-- Modératrice B.I. Règles du forum BO Team BAB - Spécialistes BO Rubrique BI de developpez.com |
|
|
00
|
|
|
#14 |
|
Invité de passage
![]() Inscription : octobre 2007 Messages : 8 ![]() |
oui j'ai essayé mais ça ne lui plait pas non plus, il me renvoie le message "Erreur de compilation - objet attendu : ="
|
|
|
00
|
|
|
#15 | ||
|
Invité de passage
![]() Inscription : octobre 2007 Messages : 8 ![]() |
J'ai enfin trouvé la solution, le principe est simple, éviter l'interaction entre les fenêtres pour ne pas avoir de message d'erreur.
Il faut donc lancer la macro et la requête d'extraction dans la même fenêtre. ça donne le code suivant : Code :
@+ pour de nouveaux problèmes Xavier |
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com