OVH Cloud OVH Cloud

Planifier lancement plusieurs bases

8 réponses
Avatar
casa
Bonjour,

j'utilise le planificateur de tache mais cela me pose des problèmes de temps
en temps, en effet le temps d'exécution de la base1 est x minutes et si le
traitement est beaucoup long que le temps moyen , cela pertube la base2 qui
se lance à T+temps moyen + 30 minutes (accès à des données communes).
Je n'ai pas retrouver sur la FAQ le code VBA pour enchainer ces traitements .
Qui aurais çà ou une idée lumineuse pour éviter que les bases "s'emmelent
les pinceaux". Bref attendre que la base1 est terminée pour lancer Base2
etc...
Merci d'avance,
Casa
--
casa

8 réponses

Avatar
Raymond [mvp]
Bonsoir.

il existe toujours une solution.
mais, il faut savoir:
- est-ce que ces deux bases sont les seules a être lancées ou existe-t-il un
nombre indéterminé de bases à lancer ?
- base1 pourrait-elle lancer base2 en fin de traitement ? 30 ' semblent une
marge confortable

--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://www.mpfa.info/ pour débuter sur le forum.
Inscrivez-vous à la Newsletter TechNet. 100 T-shirts à gagner pour les
premiers inscrits !
http://www.microsoft.com/france/technet/presentation/flash/default.mspx


"casa" a écrit dans le message de news:

| Bonjour,
|
| j'utilise le planificateur de tache mais cela me pose des problèmes de
temps
| en temps, en effet le temps d'exécution de la base1 est x minutes et si
le
| traitement est beaucoup long que le temps moyen , cela pertube la base2
qui
| se lance à T+temps moyen + 30 minutes (accès à des données communes).
| Je n'ai pas retrouver sur la FAQ le code VBA pour enchainer ces
traitements .
| Qui aurais çà ou une idée lumineuse pour éviter que les bases "s'emmelent
| les pinceaux". Bref attendre que la base1 est terminée pour lancer Base2
| etc...
| Merci d'avance,
| Casa
| --
| casa
Avatar
casa
Bonsoir,

j'ai environ 8 bases à lancer. Si je comprends un peu votre idée, puis-je
faire une base unique qui lancerait les autres bases les unes à la suite des
autres avec une automation style createobjet(,"access.application")
Cela vous semble-t'il une bonne idée ? ou y-a t'il mieux ?

--
casa



Bonsoir.

il existe toujours une solution.
mais, il faut savoir:
- est-ce que ces deux bases sont les seules a être lancées ou existe-t-il un
nombre indéterminé de bases à lancer ?
- base1 pourrait-elle lancer base2 en fin de traitement ? 30 ' semblent une
marge confortable

--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://www.mpfa.info/ pour débuter sur le forum.
Inscrivez-vous à la Newsletter TechNet. 100 T-shirts à gagner pour les
premiers inscrits !
http://www.microsoft.com/france/technet/presentation/flash/default.mspx


"casa" a écrit dans le message de news:

| Bonjour,
|
| j'utilise le planificateur de tache mais cela me pose des problèmes de
temps
| en temps, en effet le temps d'exécution de la base1 est x minutes et si
le
| traitement est beaucoup long que le temps moyen , cela pertube la base2
qui
| se lance à T+temps moyen + 30 minutes (accès à des données communes).
| Je n'ai pas retrouver sur la FAQ le code VBA pour enchainer ces
traitements .
| Qui aurais çà ou une idée lumineuse pour éviter que les bases "s'emmelent
| les pinceaux". Bref attendre que la base1 est terminée pour lancer Base2
| etc...
| Merci d'avance,
| Casa
| --
| casa





Avatar
Raymond [mvp]
Bonjour.

sans passer par automatisation, il peut y avoir moyen de lancer les bases
par un shell.
le seul problème étant: faut-il passer des paramètres aux bases ? faut-il
démarrer les bases par des procédures spéciales ? ne serait-ce pas qu'un
seul état à lancer ? .... ?
sans entrer dans le détail, il faudrait un peu plus de précisions.

--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://www.mpfa.info/ pour débuter sur le forum.
Inscrivez-vous à la Newsletter TechNet. 100 T-shirts à gagner pour les
premiers inscrits !
http://www.microsoft.com/france/technet/presentation/flash/default.mspx


"casa" a écrit dans le message de news:

| Bonsoir,
|
| j'ai environ 8 bases à lancer. Si je comprends un peu votre idée, puis-je
| faire une base unique qui lancerait les autres bases les unes à la suite
des
| autres avec une automation style createobjet(,"access.application")
| Cela vous semble-t'il une bonne idée ? ou y-a t'il mieux ?
|
| --
| casa
Avatar
casa
Bonjour,

Non, il n'y a pas besoin de passer d'autres arguments aux bases, ni le même
formule à lancer. En gros, il s'agit de lancer un traitement spécifique sur
chaque base frontale. Chaque base accède à une grosse base centrale et pour
éviter tout conflit de lecture et d'écriture dans celle-ci, les traitements
ne sont pas simultanés

la nuit portant conseil, que pensez-vous de la solution suivante ?
à chaque traitement, générer un fichier de fin de tache dont la présence ou
non sera vérifiée par le lancement de la base suivante. Si le fichier
n'existe pas, Le traitement serait mis en attente par une boucle.

casa



Bonjour.

sans passer par automatisation, il peut y avoir moyen de lancer les bases
par un shell.
le seul problème étant: faut-il passer des paramètres aux bases ? faut-il
démarrer les bases par des procédures spéciales ? ne serait-ce pas qu'un
seul état à lancer ? .... ?
sans entrer dans le détail, il faudrait un peu plus de précisions.

--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://www.mpfa.info/ pour débuter sur le forum.
Inscrivez-vous à la Newsletter TechNet. 100 T-shirts à gagner pour les
premiers inscrits !
http://www.microsoft.com/france/technet/presentation/flash/default.mspx


"casa" a écrit dans le message de news:

| Bonsoir,
|
| j'ai environ 8 bases à lancer. Si je comprends un peu votre idée, puis-je
| faire une base unique qui lancerait les autres bases les unes à la suite
des
| autres avec une automation style createobjet(,"access.application")
| Cela vous semble-t'il une bonne idée ? ou y-a t'il mieux ?
|
| --
| casa





Avatar
G.Genier
Bonjour,

Plus simple :

Créer un fichier lancement.bat avec dedans :
"c:cheminInstallAccessAccess.exe" "c:cheminVersMaBase1mabase.mdb" -->
possiblité de rajouter /x nomMacro pour executer nomMacro à l'ouverture
"c:cheminInstallAccessAccess.exe" "c:cheminVersMaBase2mabase.mdb" -->
possiblité de rajouter /x nomMacro pour executer nomMacro à l'ouverture
"c:cheminInstallAccessAccess.exe" "c:cheminVersMaBase3mabase.mdb" -->
possiblité de rajouter /x nomMacro pour executer nomMacro à l'ouverture

Ensuite plannifier ce fichier.

Vous en pensez quoi ?

Cordialement.

"casa" a écrit dans le message de
news:
Bonjour,

Non, il n'y a pas besoin de passer d'autres arguments aux bases, ni le
même

formule à lancer. En gros, il s'agit de lancer un traitement spécifique
sur

chaque base frontale. Chaque base accède à une grosse base centrale et
pour

éviter tout conflit de lecture et d'écriture dans celle-ci, les
traitements

ne sont pas simultanés

la nuit portant conseil, que pensez-vous de la solution suivante ?
à chaque traitement, générer un fichier de fin de tache dont la présence
ou

non sera vérifiée par le lancement de la base suivante. Si le fichier
n'existe pas, Le traitement serait mis en attente par une boucle.

casa



Bonjour.

sans passer par automatisation, il peut y avoir moyen de lancer les
bases


par un shell.
le seul problème étant: faut-il passer des paramètres aux bases ?
faut-il


démarrer les bases par des procédures spéciales ? ne serait-ce pas qu'un
seul état à lancer ? .... ?
sans entrer dans le détail, il faudrait un peu plus de précisions.

--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://www.mpfa.info/ pour débuter sur le forum.
Inscrivez-vous à la Newsletter TechNet. 100 T-shirts à gagner pour les
premiers inscrits !
http://www.microsoft.com/france/technet/presentation/flash/default.mspx


"casa" a écrit dans le message de news:

| Bonsoir,
|
| j'ai environ 8 bases à lancer. Si je comprends un peu votre idée,
puis-je


| faire une base unique qui lancerait les autres bases les unes à la
suite


des
| autres avec une automation style createobjet(,"access.application")
| Cela vous semble-t'il une bonne idée ? ou y-a t'il mieux ?
|
| --
| casa







Avatar
Raymond [mvp]
au lieu d'un fichier tu crées une table dans la base principale avec 1 seul
enregistrement et 1 seul champ qui a la valeur oui/non pour dire que c'est
en cours de traitement ou non.
lorsque tu lances ta base tu testes la valeur et si c'est oui, tu attends
quelques minutes.

--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://www.mpfa.info/ pour débuter sur le forum.
Inscrivez-vous à la Newsletter TechNet. 100 T-shirts à gagner pour les
premiers inscrits !
http://www.microsoft.com/france/technet/presentation/flash/default.mspx


"casa" a écrit dans le message de news:

| Bonjour,
|
| Non, il n'y a pas besoin de passer d'autres arguments aux bases, ni le
même
| formule à lancer. En gros, il s'agit de lancer un traitement spécifique
sur
| chaque base frontale. Chaque base accède à une grosse base centrale et
pour
| éviter tout conflit de lecture et d'écriture dans celle-ci, les
traitements
| ne sont pas simultanés
|
| la nuit portant conseil, que pensez-vous de la solution suivante ?
| à chaque traitement, générer un fichier de fin de tache dont la présence
ou
| non sera vérifiée par le lancement de la base suivante. Si le fichier
| n'existe pas, Le traitement serait mis en attente par une boucle.
|
| casa
Avatar
G.Genier
Personnellement cette méthode me parait bien compliqué même si elle est très
jolie :)

"Raymond [mvp]" a écrit dans le message
de news:%
au lieu d'un fichier tu crées une table dans la base principale avec 1
seul

enregistrement et 1 seul champ qui a la valeur oui/non pour dire que c'est
en cours de traitement ou non.
lorsque tu lances ta base tu testes la valeur et si c'est oui, tu attends
quelques minutes.

--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://www.mpfa.info/ pour débuter sur le forum.
Inscrivez-vous à la Newsletter TechNet. 100 T-shirts à gagner pour les
premiers inscrits !
http://www.microsoft.com/france/technet/presentation/flash/default.mspx


"casa" a écrit dans le message de news:

| Bonjour,
|
| Non, il n'y a pas besoin de passer d'autres arguments aux bases, ni le
même
| formule à lancer. En gros, il s'agit de lancer un traitement spécifique
sur
| chaque base frontale. Chaque base accède à une grosse base centrale et
pour
| éviter tout conflit de lecture et d'écriture dans celle-ci, les
traitements
| ne sont pas simultanés
|
| la nuit portant conseil, que pensez-vous de la solution suivante ?
| à chaque traitement, générer un fichier de fin de tache dont la
présence

ou
| non sera vérifiée par le lancement de la base suivante. Si le fichier
| n'existe pas, Le traitement serait mis en attente par une boucle.
|
| casa




Avatar
casa
Super cette idée, solution plus facile à gérer. merci raymond.
--
casa



au lieu d'un fichier tu crées une table dans la base principale avec 1 seul
enregistrement et 1 seul champ qui a la valeur oui/non pour dire que c'est
en cours de traitement ou non.
lorsque tu lances ta base tu testes la valeur et si c'est oui, tu attends
quelques minutes.

--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://www.mpfa.info/ pour débuter sur le forum.
Inscrivez-vous à la Newsletter TechNet. 100 T-shirts à gagner pour les
premiers inscrits !
http://www.microsoft.com/france/technet/presentation/flash/default.mspx


"casa" a écrit dans le message de news:

| Bonjour,
|
| Non, il n'y a pas besoin de passer d'autres arguments aux bases, ni le
même
| formule à lancer. En gros, il s'agit de lancer un traitement spécifique
sur
| chaque base frontale. Chaque base accède à une grosse base centrale et
pour
| éviter tout conflit de lecture et d'écriture dans celle-ci, les
traitements
| ne sont pas simultanés
|
| la nuit portant conseil, que pensez-vous de la solution suivante ?
| à chaque traitement, générer un fichier de fin de tache dont la présence
ou
| non sera vérifiée par le lancement de la base suivante. Si le fichier
| n'existe pas, Le traitement serait mis en attente par une boucle.
|
| casa