jSAVF v1.82
jSAVF peut ouvrir un fichier de sauvegarde (SAVF, ISO9660 ou bande magnétique AWSTAPE) avec le menu ou par glisser-deposer. Une fois le fichier ouvert, vous pouvez consulter la liste des objets contenus dans la sauvegarde dans une fenêtre d'aspect similaire à la commande DSPSAVF. Vous pouvez exporter cette liste avec le menu Imprimer vers un fichier texte dans un format similaire à celui produit par la commande DSPSAVF *PRINT. Vous pouvez trier les objets affichés avec les entêtes de la liste selon un ou plusieurs critères, et les rechercher par leur nom.
L'analyse du format d'un fichier SAVF est réalisée à l'aide d'un bon éditeur hexadécimal qui supporte EBCDIC et d'infos trouvées sur le forum archive.midrange.com (en particulier les deux algorithmes de checksum propriétaires à IBM). jSAVF supporte les SAVF non compressés (*NO), compressés avec l'ancienne méthode de compression (*YES avant la V5R3, *LOW depuis lors), ainsi que les méthodes plus récentes (*MEDIUM, *HIGH, et zlib depuis la V7R5).
La structure interne de certains types d'objets a été analysée et ils sont soit affichables dans l'interface de jSAVF sous forme de spool soit exportables dans des fichiers.
- Les objets de type *DTAARA (zones de données) de tous les types (*CHAR, *DEC, *LGL) sont affichables et exportables au format texte tel que la commande DSPDTAARA les afficherait, ou plus sommairement tel que la commande RTVDTAARA les présenterait.
- Les objets de type *FILE avec attribut SAVF (fichiers SAVF) inclus dans un SAVF sont extractible sous forme de fichiers SAVF valides, qui peuvent à leur tour être ouverts avec jSAVF.
- Les données des objets de type *STMF dans des sauvegardes IFS sont extractibles sans conversion.
- Les membres source des objets de type *FILE avec attribut PF (fichiers sources physiques tels QCBLLESRC, QCLLESRC, QCLESRC, QRPGLESRC, QSQLLESRC,
...) sont exportables dans au formats texte, source, ou CSV:
- Le format source exporte les champs SRCSEQ, SRCDAT, SRCDTA séparés par un espace, sans tronquer les espaces en fin de ligne.
- Le format CSV exporte ces trois champs entourés de guillemets, séparés par des virgules, sans espace en fin de ligne, et en doublant les guillemets inclus dans les champs.
- Le format texte n'exporte que le champ SRCDTA sans les espaces en fin de ligne.
- Le contenu des tables de base de donnée ou fichiers physiques non source sont exportables dans au format CSV:
- Les champs des types suivants sont supportés: NUMERIC, DECIMAL, TINYINT, SMALLINT, INTEGER, BIGINT, FLOAT, REAL, DOUBLE, DATE, TIME, TIMESTAMP, CHAR, BINARY, VARCHAR, VARBINARY, GRAPHIC, VARGRAPHIC, DBCS, CLOB, BLOB, DBCLOB, ROWID
- Les champs NULL sont exportés sans guillemets.
- Selon le format, il est possible que certains champs texte soient décodés de manière incorrecte si jSAVF n'arrive pas à en déterminer l'encodage.
- Il est possible que certaines tables avec de longues valeurs dans des champs CLOB ou BLOB ne soient pas exportables completement. Le contenu des champs BLOB est représenté en hexadécimal.
- Les champs de type ROWID ne sont affichés correctement que lorsqu'ils sont définis avec REFSHIFT(H).
- De manière expérimentale, le contenu des vues de déboguage *SOURCE, *LIST inclues dans certains objets de type *PGM, *MODULE, *SRVPGM à la compilation.
- Pour les autres types l'analyse se poursuit, pendant ce temps la forme brute des objets et membres est exportable compressée ou décompressée.
Les controles de validité qui sont effectués sur les fichiers SAVF par jSAVF sont:
- La taille du fichier est controlée par rapport aux informations de l'entête du SAVF, pour s'assurer qu'il n'est pas tronqué.
- Les blocs lus par jSAVF sont controlés par rapport aux checksums stockés dans le fichier. jSAVF va controler l'intégrité d'une partie du SAVF à l'ouverture lors de l'indexation du SAVF, et controlera les blocs nécessaires à l'affichage ou l'export de chaque objet que vous exportez ou affichez.
- Il y a un menu permettant de vérifier l'intégrité de tous les blocs du SAVF en une seule fois, ainsi que le checksum global du fichier.
Prérequis
- Les conversions de données EBCDIC -> Unicode nécéssitent des pages de code Java optionelles dans certaines versions du JRE. Si vous installez un JRE, veillez à ce que toutes les options soient cochées, sinon certain SAVF risquent de ne pas être lisibles.
- jSAVF nécéssite un OpenJDK 21 ou plus récent, son installer pour Windows en inclue une image modulaire minimale. Si vous êtes sous Linux ou que vous en avez déjà un quelque part vous pouvez télécharger l'archive jSAVF plus petite au lieu de l'installer pour économiser de la bande passante.
Limites
- jSAVF intègre un support limité des fichiers SAVF portant sur le système de fichiers IFS (commande SAV).
- jSAVF peut parfois échouer à lire des fichiers SAVF produits avec des commandes de sauvegarde SAV* exotiques ou issus de très anciennes version d'OS/400.
Si vous avez un problème avec jSAVF vous pouvez me contacter pour tenter de le résoudre, mais je vous remercie de ne pas m'envoyer de fichiers de sauvegarde sans confirmer avec le propriétaire de la machine et les parties prennantes qu'ils sont bien d'accord pour des questions de confidentialé et de sécurité. Et merci de ne pas m'envoyer de fichier de sauvegarde sans en avoir préalablement discuté avec moi.
Dernières actualités: [ v1.82 ] [ v1.81 ] [ v1.80 ] [ v1.72 ] [ v1.71 ] [ v1.70 ] [ v1.60 ] [ v1.51 ] [ v1.50 ] [ v1.40 ] [ v1.32 ] [ v1.31 ] [ v1.30 ]
Téléchargements: [ jSAVF (1 MiB, Linux JARs only) ] [ jSAVF (1 MiB, Windows JARs only) ] [ jSAVF (32 MiB, Windows Installer, includes OpenJDK 21.0.1+12 x64) ]