28 juillet 2025

Personnaliser le Makefile pour conserver les sources des programmes Cobol

Lors des générations, HR Access rédige puis compile les programmes exécutables. Puis les sources sont détruits. Il peut être intéressant de conserver ces sources pour :

  • Relecture de code
  • Recompilation après adaptations manuelles
  • Recompilation après migration technique

Pour cela, on pourra par exemple :

  • Créer un répertoire $SIGACS/prod/cbl
  • Adapter le fichier $SIGACS/adm/cfg/Makefile pour y ajouter une copie et compression du source


Par exemple sur ce chapitre (à reproduire sur les autre en adaptant les suffixes) :

#-----------------------------------------------------------------
#       Build the dynamically loadable module from a .pco
#       Pro*Cobol program.
#

.pco.gnt: $(*).pco
        @echo "--- "
        @echo "---    $(*).pco  -->  $(*).gnt "
        @echo "--- "
        @echo "$(PROCOB) $(PROFLAGS) iname=$(*).pco oname=$(*).cbl"

        @cp $(*).pco ${SIGACS}/prod/cbl; gzip -f $(*).pco

        @cd `dirname $(*)`; $(PROCOB) $(PROFLAGS) iname=$(*).pco oname=$(*).cbl
        @$(COB_VAR) cd `dirname $(*)` ; $(COB) -vP -u $(COBFLAGS) $(*).cbl
        @chmod 775 $(*).gnt

A noter : dans le Makefile les commandes doivent être précédées de tabulations (et non d'espaces)

12 juillet 2025

Collecter les données et produire un rapport AWR Oracle

Avec le pack "Diagnostic" Oracle permet d'obtenir un rapport d'activité grâce à AWR (Automatic Workload Repository). 

Un premier paramétrage consiste à définir un intervalle et une rétention (dans cet exemple : de 20mn et 30j - soit 43200 minutes). Pour cela des droits administrateur sont nécessaires :

sqlplus / as sysdba
SQL> begin
  2  dbms_workload_repository.modify_snapshot_settings(RETENTION=>43200, INTERVAL=>20);
3  end;
4  /
PL/SQL procedure successfully completed.

SQL> select *  from dba_hist_wr_control;

DBID,SNAP_INTERVAL,RETENTION,TOPNSQL,CON_ID,SRC_DBID,SRC_DBNAME
1260426948,+00000 00:20:00.0,+00030 00:00:00.0,DEFAULT,0,1260426948,hr9


Pour que ce rapport AWR ne soit pas vide (c'est à dire plein de commentaire "No data exists for this section of the report") il est aussi nécessaire d'activer le pack et les statistiques :


SQL> ALTER SYSTEM set CONTROL_MANAGEMENT_PACK_ACCESS = 'DIAGNOSTIC+TUNING';

1 juillet 2025

Quand Vim ou Karaf perturbent les copier/coller avec des 00~ ou des \e[200~

 Dans certains cas, accéder à Vim ou à la console cliente SSH de Karaf vient perturber les copier coller (clic droit sous Putty).

Par exemple :


Logging in as karaf
   _____ _                 __      __                    __  ______   __  ___
  / ___/(_)___ ___  __  __/ /___ _/ /____  __  _______  /  |/  /__ \ /  |/  /
  \__ \/ / __ `__ \/ / / / / __ `/ __/ _ \/ / / / ___/ / /|_/ /__/ // /|_/ /
 ___/ / / / / / / / /_/ / / /_/ / /_/ __ / /_/ / /    / /  / // __// /  / /
/____/_/_/ /_/ /_/\__,_/_/\__,_/\__/\___/\__,_/_/    /_/  /_//____/_/  /_/

Simulateur M2M (5.6.0)
Apache Karaf Runtime (4.4.6)
simulateur-m2m> shutdown -f
hr9dev@lnxsrv001:/hr9dsn> ls -l | grep sim

lrwxrwxrwx 1 hr9dev users 21 2024-10-21 11:35 simulateur-m2m -> simulateur-m2m-5.6.0/
drwxr-xr-x 9 hr9dev users 27 2025-07-01 06:32 simulateur-m2m-5.6.0
drwxr-xr-x 8 hr9dev users 79 2025-05-20 14:30 simulateur-m2m-5.7.0

Copier coller Putty du nom de répertoire (sélection puis clic droit) ... Boum :

hr9dev@lnxsrv001:/hr9dsn> rm 00~simulateur-m2m01~

En fin de ce post on vous explique le pourquoi du comment (c'est lié au mode de collage entre crochets, ou "bracketed paste mode" ... "When bracketed paste mode is set, pasted text is bracketed with control sequences so that the program can differentiate pasted text from typed-in text") ...

Pour supprimer ce fonctionnement, dans votre session, tapez (l'avant dernier caractère est un L minuscule) :

printf "\e[?2004l"

(sous Vim exécutez ":set paste" )