Recr�er Query

RPG (3 et 4, free), CL, SQL, etc...
Répondre
Ponpon
Messages : 20
Enregistré le : mer. 15 févr. 2017, 23:31:16

Recr�er Query

Message par Ponpon »

Bonjour,

je cherche un moyen de mettre à jour/recréer les objets *QRYDFN sur notre système en automatique suite à une modification de format de fichiers.

En effet, lors d'une modification de format, le query détecte une différence entre la version enregistrée dans l'objet *QRYDFN et celle du fichier utilisée et génère un message QRY1058 (Niveaux fichier et analyse différents).

D'après la documentation et ce que j'ai pu trouver jusqu'à présent sur internet, il faut entrer dans le query et simplement le réenregistrer pour qu'il prenne en compte le nouveau format. Mais cela s'avère fastudieux lorsque beaucoup de query sont impactés.

Connaissez-vous une solution pour automatiser cela ?

Merci d'avance.

cmasse
Site Admin
Messages : 813
Enregistré le : mer. 14 févr. 2007, 18:00:03
Localisation : Nantes
Contact :

QUUERY

Message par cmasse »

Pas vraiment de solution pour automatiser cela.

on peut toujours extraire le source par RTVQMQRY et créer un QM à la place (qui lui se créé en mode commande), mais ce n'est plus un QUERY....
Christian Massé (Volubis.fr)

Ponpon
Messages : 20
Enregistré le : mer. 15 févr. 2017, 23:31:16

(sans sujet)

Message par Ponpon »

En effet, au départ je pensais que cela fonctionnerait mais après des tests je me suis rendu compte que cela ne donnait plus le même type objet comme vous évoquez.

J'ai également trouvé cette méthode http://newsolutions.de/forum-systemi-as ... #post63460 qui fonctionne bien.

Je ne suis pas tout à fait sûr de ce que fait ce programme. D'après ce que j'ai compris par des manipulations de pointeur et d'espace mémoire, il modifie les propriétés de l'objet *QRYDFN pour mettre à jour l'identifiant de niveau de format du fichier enregistré dans le *QRYDFN par rapport à celui du fichier.

Le reste de mon équipe n'est pas très chaud pour utiliser ça mais je crois que nous passerons malgré tout par cette méthode.

cmasse
Site Admin
Messages : 813
Enregistré le : mer. 14 févr. 2007, 18:00:03
Localisation : Nantes
Contact :

(sans sujet)

Message par cmasse »

JE vous déconseille effectivement.

J'ai testé (je suis curieux :) ) et j'ai MCH6801 tentative d’accéder à un objet du domaine système !!! :evil:
Christian Massé (Volubis.fr)

monthi
Messages : 77
Enregistré le : mar. 11 sept. 2018, 15:37:02
Localisation : Paris

(sans sujet)

Message par monthi »

Bonjour

Etant curieux moi aussi le fait le test sur une v7r2 denier niveau de ptf et group ptf

Cela a fonctionné sur mon query de test :

call updqryf ('WRH_PRD_01' 'XXXXXXX')
Recordlevel-ID changed from 39B05EA50E7B0 to 3AAE4FF016241 for file:
XXXXXXX/POFREC in QRYDFN: XXXXXXX/WRH_PRD_01


Le query fonctionne toujours après cette manipulation

cdlt

Ponpon
Messages : 20
Enregistré le : mer. 15 févr. 2017, 23:31:16

(sans sujet)

Message par Ponpon »

Je pense que la différence de résultat entre vos deux tests vient du niveau de sécurité de la machine (valeur système QSECURITY).

Cela est par ailleurs confirmé dans la suite du forum de mon lien précédent http://newsolutions.de/forum-systemi-as ... #post78244

Donc méfiance, cette méthode n'est donc pas utilisable partout.

monthi
Messages : 77
Enregistré le : mar. 11 sept. 2018, 15:37:02
Localisation : Paris

(sans sujet)

Message par monthi »

bonjour

possible car nous sommes avec QSECURITY à 30

Sinon ca marche aussi avec des fichier LVLCHK(*NO)

Cdlt

Répondre