Trouver le nom LONG d'un IBMi
Citation de fred_crrm le 5 avril 2018, 16 h 43 minBonjour,
Le nom Système est un "nom court" et le "nom long" est défini chez nous dans la table de host mais non identifiable parmi toutes les entrées.
Ce nom "long" est potentiellement aussi indiqué chez nous en RDB pour identifier la base de données *Local.
J'aurais besoin d'extraire l'une ou l'autre, voire les 2 informations.
Après quelques recherches, je ne trouve aucune piste, ni commande, ni API.
Avez-vous déjà eu ce besoin ?
Sinon, quelqu'un aurait-il une idée ?
Merci d'avance
FRED
Bonjour,
Le nom Système est un "nom court" et le "nom long" est défini chez nous dans la table de host mais non identifiable parmi toutes les entrées.
Ce nom "long" est potentiellement aussi indiqué chez nous en RDB pour identifier la base de données *Local.
J'aurais besoin d'extraire l'une ou l'autre, voire les 2 informations.
Après quelques recherches, je ne trouve aucune piste, ni commande, ni API.
Avez-vous déjà eu ce besoin ?
Sinon, quelqu'un aurait-il une idée ?
Merci d'avance
FRED
Citation de vazymimil le 5 avril 2018, 17 h 50 mingethostname permet de récupérer le nom d'hôte du système défini dans CHGTCPDMN
Est-ce que ça répond à la question ?
gethostname permet de récupérer le nom d'hôte du système défini dans CHGTCPDMN
Est-ce que ça répond à la question ?
Citation de larry57 le 6 avril 2018, 7 h 49 minBonjour,
Sinon, il y a aussi dasn un SQLRPGLE:
D systemName S 10
exec sql values current server into :systemName;
Larry57
Bonjour,
Sinon, il y a aussi dasn un SQLRPGLE:
D systemName S 10
exec sql values current server into :systemName;
Larry57
Citation de fred_crrm le 6 avril 2018, 10 h 16 minBonjour Larry,
Je viens de faire le micro-programme et cela me restitue exactement ce dont j'ai besoin.
Merci.
FRED
Bonjour Larry,
Je viens de faire le micro-programme et cela me restitue exactement ce dont j'ai besoin.
Merci.
FRED
Citation de fred_crrm le 6 avril 2018, 10 h 18 minCitation de vazymimilgethostname permet de récupérer le nom d'hôte du système défini dans CHGTCPDMN
Est-ce que ça répond à la question ?C'est une commande Unix alors que je cherche une solution OS/400.
Comment intégrer cette commande ? En utilisant QSH ?
Merci de ta réponse
FRED
Citation de vazymimilgethostname permet de récupérer le nom d'hôte du système défini dans CHGTCPDMN
Est-ce que ça répond à la question ?
C'est une commande Unix alors que je cherche une solution OS/400.
Comment intégrer cette commande ? En utilisant QSH ?
Merci de ta réponse
FRED
Citation de vazymimil le 6 avril 2018, 10 h 33 minC'est une api "unix-like", mais on peut l'appeler depuis un rpgle comme ça par exemple
**free
ctl-opt bnddir('QUSAPIBD');dcl-pr gethostname int(10) extproc(*dclcase);
name pointer value;
length int(10) value;
end-pr;dcl-s hostNameStr char(253);
dcl-s hostNameVarying varchar(253);if gethostname(%addr(hostNameStr):%size(hostNameStr)) = 0;
hostNameVarying = %str(%addr(hostNameStr));
else;
*inh1 = *on;
endif;*inlr = *on;
C'est une api "unix-like", mais on peut l'appeler depuis un rpgle comme ça par exemple
**free
ctl-opt bnddir('QUSAPIBD');
dcl-pr gethostname int(10) extproc(*dclcase);
name pointer value;
length int(10) value;
end-pr;
dcl-s hostNameStr char(253);
dcl-s hostNameVarying varchar(253);
if gethostname(%addr(hostNameStr):%size(hostNameStr)) = 0;
hostNameVarying = %str(%addr(hostNameStr));
else;
*inh1 = *on;
endif;
*inlr = *on;
Citation de fred_crrm le 6 avril 2018, 11 h 32 minCitation de vazymimilC'est une api "unix-like", mais on peut l'appeler depuis un rpgle comme ça par exemple
**free
ctl-opt bnddir('QUSAPIBD');dcl-pr gethostname int(10) extproc(*dclcase);
name pointer value;
length int(10) value;
end-pr;dcl-s hostNameStr char(253);
dcl-s hostNameVarying varchar(253);if gethostname(%addr(hostNameStr):%size(hostNameStr)) = 0;
hostNameVarying = %str(%addr(hostNameStr));
else;
*inh1 = *on;
endif;*inlr = *on;
Merci pour ton explication technique.
FRED
Citation de vazymimilC'est une api "unix-like", mais on peut l'appeler depuis un rpgle comme ça par exemple
**free
ctl-opt bnddir('QUSAPIBD');dcl-pr gethostname int(10) extproc(*dclcase);
name pointer value;
length int(10) value;
end-pr;dcl-s hostNameStr char(253);
dcl-s hostNameVarying varchar(253);if gethostname(%addr(hostNameStr):%size(hostNameStr)) = 0;
hostNameVarying = %str(%addr(hostNameStr));
else;
*inh1 = *on;
endif;*inlr = *on;
Merci pour ton explication technique.
FRED
Citation de remit le 11 avril 2018, 13 h 03 minIl y a aussi la commande hostname de Qshell. Par exemple dans un CL :
QSH CMD('hostname>/temp/hostname.txt')
DLTF FILE(UNE_BIB/HOSTNAME)
MONMSG MSGID(CPF0000)
CRTPF FILE(UNE_BIB/HOSTNAME) RCDLEN(50)
CPYFRMIMPF FROMSTMF('/temp/hostname.txt') +
TOFILE(UNE_BIB/HOSTNAME) RCDDLM(*CRLF)
RMVLNK OBJLNK('/temp/hostnam.txt')
Le nom est dans UNE_BIB/HOSTNAME.
Il y a aussi la commande hostname de Qshell. Par exemple dans un CL :
QSH CMD('hostname>/temp/hostname.txt')
DLTF FILE(UNE_BIB/HOSTNAME)
MONMSG MSGID(CPF0000)
CRTPF FILE(UNE_BIB/HOSTNAME) RCDLEN(50)
CPYFRMIMPF FROMSTMF('/temp/hostname.txt') +
TOFILE(UNE_BIB/HOSTNAME) RCDDLM(*CRLF)
RMVLNK OBJLNK('/temp/hostnam.txt')
Le nom est dans UNE_BIB/HOSTNAME.
Citation de remit le 11 janvier 2019, 18 h 17 min. . . ou encore :
SELECT HOST_NAME FROM QSYS2/SYSTEM_STATUS_INFO
. . . ou encore :
SELECT HOST_NAME FROM QSYS2/SYSTEM_STATUS_INFO
Citation de fred_crrm le 21 janvier 2019, 15 h 01 minBonjour,
J'ai fini par faire un petit programme :
h dftactgrp( *no ) actgrp( *caller )
D systemName S 10
c *entry plist
c parm systemName
/FREE
exec sql values current server into :systemName;
*inlr = *on;
/END-FREELa commande SELECT HOST_NAME FROM QSYS2/SYSTEM_STATUS_INFO n'est pas disponible en V7R1.
Merci de ton aide
FRED
Bonjour,
J'ai fini par faire un petit programme :
h dftactgrp( *no ) actgrp( *caller )
D systemName S 10
c *entry plist
c parm systemName
/FREE
exec sql values current server into :systemName;
*inlr = *on;
/END-FREE
La commande SELECT HOST_NAME FROM QSYS2/SYSTEM_STATUS_INFO n'est pas disponible en V7R1.
Merci de ton aide
FRED