Exécuter des transferts de fichiers
Cette rubrique fournit des informations détaillées sur les actions résultant de l'exécution de transferts de fichiers.
Cette rubrique contient les sujets suivants :
Convertir des jeux de caractères
L'échange de données entre différentes plateformes système requiert la conversion des jeux de caractères. Ceci est effectué automatiquement grâce aux Table de codes (CODE). Le transfert peut être structuré, en autorisant ainsi l'échange des fichiers avec des champs compressés et binaires dans des environnements système hétérogènes. Tous les transferts réseau sont encodés par défaut.
Connexion de l'agent
Pour chaque transfert de fichier, une connexion distincte est établie entre les agents. Les agents des systèmes d'exploitation OS/400, Windows, Unix, z/OS et NSK gèrent les transferts de fichiers via des threads supplémentaires. Une fois le transfert de fichier terminé, la connexion correspondante est automatiquement fermée. S'il existe malgré tout des connexions ouvertes non utilisées, elles sont fermées après l'expiration du temps indiqué dans le code FT_CONNECTION_TIMEOUT (variable UC_HOSTCHAR_DEFAULT, voir UC_HOSTCHAR_DEFAULT - Caractéristiques de l'hôte).
L'ancien protocole de transfert de fichier est utilisé si l'un ou les deux agents concernés utilisent Automation Engine version 8.00A ou inférieure. Dans ce cas, une seule connexion est établie entre les agents pour tous les transferts de fichiers. Le système vérifie si une connexion a déjà été établie entre les deux agents avant de démarrer le transfert de fichier. Dans ce cas, cette connexion est utilisée et aucune tentative d'établir une connexion n'est réalisée. Lorsque le transfert de fichier est terminé, le système contrôle que la connexion qui est encore utilisée n'est pas fermée.
Remarques :
- Aucun message ne s'affiche si les fichiers transférés sont vides (Windows et UNIX).
-
Des problèmes peuvent survenir pendant les transferts de fichiers si l'agent Windows démarre à partir d'un emplacement UNC, car vos fichiers mappés (StatusStore) ne peuvent pas être utilisés (plantage de l'agent, par exemple).
Recommandations : Démarrez l'agent à partir d'un répertoire local ou en spécifiant un répertoire local absolu dans la variable d'agent UC_EX_PATH_TEMP du fichier INI de l'agent.
- Afin d'optimiser le transfert, vous pouvez spécifier des paramètres pour la taille du cache TCP/IP dans certains agents. L'administrateur utilise à cet effet la section [TCP/IP] du fichier INI.
Chaque transfert de fichiers commence par établir une connexion entre l'agent source et l'agent cible. Deux méthodes sont possibles pour transférer des fichiers :
-
Avec un fichier temporaire créé dans le dossier cible
Le fichier à transférer obtient un nom dans le système cible. Ce nom est constitué d'un T et d'une chaîne de 7 caractères alphanumériques, tels que TAAFLEFM. Cette chaine provient du RunID du transfert de fichier qui garantit l'unicité du nom du fichier. Le RunID est converti en cette chaîne via la fonction de script RUNNR2ALPHA.
Dans le nouveau protocole FT, un séparateur et un ID de fichier sont également ajoutés à la chaîne. Ces éléments permettent la différenciation, car tous les fichiers sont gérés via le RunID du transfert de fichiers.
Une fois le transfert de fichier exécuté avec succès, le fichier reçoit le nom spécifié dans l'objet Transfert de fichier.
Voir aussi ALPHA2RUNNR.
-
Sans fichier temporaire
Le fichier à transférer obtient le nom spécifié dans l'objet Transfert de fichier.
Remarques :
- La méthode utilisée dans les transferts de fichiers est définie dans le fichier INI de l'agent cible (
parameter ft_temp_file=
). - Un fichier remporaire n'est pas créé si le transfert de fichier étend ou remplace un fichier existant, mais le nouveau contenu est inséré directement dans les fichiers concernés.
Avantage des fichiers temporaires
- Les fichiers n'obtenant leur nom qu'après avoir été transférés avec succès, cela simplifie la gestion des autres étapes de traitement.
- Si une erreur se produit, le fichier temporaire du système cible est supprimé. Les fichiers qui n'ont pas été entièrement transférés ne sont pas supprimés sur les ordinateurs UNIX et Windows. Par conséquent, l'agent n'a pas à recommencer le transfert de fichiers en cas de reprises. Pour plus d'informations, voir Reprendre des transferts de fichiers.
Fichiers temporaires dans la structure de fichiers de l'agent source
Lorsqu'un agent source effectue un transfert de fichier, il crée deux fichiers temporaires :
- un fichier de stockage de statut avec l'extension .sts
- un rapport de transfert de fichier avec l'extension .ftx.
L'emplacement de ces fichiers est déterminé par le jeu de variables UC_EX_PATH_JOBREPORT défini dans la section [VARIABLES] du fichier .ini de configuration de l'agent.
L'agent utilise ces fichiers pour reconstruire le transfert de fichier si l'agent redémarre ou si un transfert échoue. Lorsque le transfert de fichier est correctement terminé, les fichiers sont automatiquement supprimés. Si le transfert de fichier n'arrive pas à redémarrer, les fichiers restent sur le système de fichier. Le nombre de jours pendant lequel les fichiers de statut sont conservés est déterminé par la valeur du code FT_RESTARTINFO_LIFETIME dans la variable UC_HOSTCHAR_DEFAULT.
Pour plus d'informations, voir Liste des variables d'agents et UC_HOSTCHAR_DEFAULT - Caractéristiques de l'hôte.
Groupes d'agents dans les transferts de fichiers
Un transfert de fichier permet de sélectionner un groupe d'agents comme source ou comme cible. Il n'est pas possible de sélectionner un groupe d'agents dans les deux. Il en résulte les deux scénarios suivants :
- Transferts de fichier d'un seul agent vers plusieurs agents cibles (groupe d'agents).
-
Transferts de fichier de plusieurs agents (groupe d'agents) vers un seul agent cible.
Important ! Les fichiers ne peuvent pas avoir le même nom. Sinon, le transfert de fichier écrase les fichiers ou ne peut pas transférer le fichier s'il est utilisé par des processus parallèles à cet instant.
Afin d'éviter ce problème, insérez la variable suivante dans le nom du fichier cible : &<FT_SRC_HOST>.
Le transfert de fichier remplace cette variable par le nom de l'agent d'origine du fichier.
Par exemple :
C:\temp\&<FT_SRC_HOST>_test*.txt
Transférer un fichier donné
Un transfert de fichier obtient le statut ENDED_NOT_OK si le fichier concerné n'est pas disponible.
Transférer des fichiers à l'aide de caractères génériques
Un transfert de fichier obtient le statut ENDED_EMPTY si aucun fichier ne correspond au filtre spécifié. Si au moins un fichier a été trouvé, son statut est ENDED_OK.
Pour des raisons de sécurité, il est recommandé de définir le paramètre login_check=yes sur yes dans le fichier INI de l'agent UNIX. Avec ce paramètre, le mot de passe spécifié dans l'objet Login affecté au transfert de fichier est vérifié. Si vous le définissez sur non, seul le nom de l'utilisateur est vérifié.
Sous VMS, chaque fichier texte nécessite un délimiteur. Le paramètre FileEndDelimiter= du fichier INI détermine si l'agent VMS doit en ajouter un.
Voir aussi :