Passage V18 Log CSM : Retrouver une méthode par son ID

# 17 : Vérification des méthodes orphelines :
Avertissement : La ressource méthode CC4D d’id 15447 n’est utilisée nulle part(0;0)

1/ Y a t il un moyen simple pour retrouver cette ressource méthode à partir de son ID ?
Faut il écrire du code ?
2/ Que veut dire (0;0) qu’on retrouve après chaque annotation ?

Nota : Pour # 8 : Vérification des images de la librairie :
On retrouve (facilement) les ID Image dans le menu Développement/Boite à Outils/Bibliothèque Image

Un petit coup de compactage avec le CSM et le problème sera résolu :muscle:

Quel intérêt de la retrouver vu qu’elle n’apparaît nulle part :thinking:, c’est justement le problème.

Il FAUT lancer une réparation de la base pour que ces méthodes orphelines réapparaissent et que vous puissiez ainsi les supprimer simplement.

Bonjour,

Ce sont en général des méthodes qui étaient associées à des objets de formulaire et qui n’ont pas été effacées alors que l’objet a été, lui, supprimé.

Si vous effectuez une réparation de votre structure, ces méthodes apparaitrons dans la liste des méthodes projet avec un libellé qui permet de les identifier rapidement (désolé, je ne me souviens plus exactement mais il me semble que le nom commence par un _ et contient le terme orphan ou recovered). Vous pouvez ainsi voir le code et décider de les supprimer, ou pas.

1 Like

Il m’est arrivé d’y retrouver du code que j’étais bien content de ne pas avoir à réécrire…

Problème qui n’existe plus en mode projet…

C’est paradoxal car il s’agit plus d’un bug qu’autre chose. Ceux sont des méthodes rattachées à des objets que VOUS avez VOLONTAIREMENT supprimés donc NORMALEMENT, il n’y a rien que vous souhaitiez conserver… Vous le dites vous même, cela n’arrive plus (et heureusement) en mode projet.

Merci pour vos réponses, on lancera la réparation cette nuit.

En avançant dans cette longue liste, nous avons aussi :

[Cloture].Page.Page0.Image 867 fait référence à une image obsolète. ID de l’image dans la bibliothèque = 867, Nom = Bouton 2000 Premier enreg…(0,0)

Nous n’avons pas de ce type de bouton dans ce formulaire…
(Ils ont été remplacés depuis très longtemps)

La réparation de la structure va t’elle aussi régler ce Pb ?

Cela correspond à une image de la bibliothèque qui doit être au format PICT qui n’est plus pris en charge par le système.

Pour la retrouver vous pouvez faire une recherche par son nom :

1 Like

Certaines images correspondaient aux anciens boutons 2000 que 4D proposait (il y a longtemps). Nous les avons trouvées dans la bibliothèque et supprimées.
Le log faisait aussi référence à une image PICT en page0 du formulaire. Nous l’avons trouvée cachée derriere le rectangle de fond de formulaire avec Edition/Chercher dans le développement comme indiqué par “vdl”. Merci

Nous avons trouvé le temps de lancer la réparation de la structure ce midi.

1/ Pour les méthodes orphelines, nous les avons retrouvées comme indiqué par “vdl” en tête des méthodes projet sous le générique __orphan__283

Nous avons dans la liste en vérification des formulaires projet, plusieurs :
Avertissement : STR# 8007,3(0;0)
Que faut il faire ?

Cela correspond à l’ancienne gestion des chaines de localisation, basée sur les ressources macOS.
Il est préférable d’éponger cette dette technique au fur et à mesure de la mise à jour de votre code en utilisant des fichiers xliff (https://doc.4d.com/4Dv18/4D/18/Annexe-B-Architecture-XLIFF.300-4575737.fr.html)

1 Like

Ça ne m’arrive plus en v17, j’ai l’impression, mais ce bug a duré longtemps (v11 jusqu’à v15 au moins). Pas bien grave du moment que le CSM les retrouve et permet de les supprimer.

Malheureusement non, je l’ai eu encore hier sur une v18.2 NB :unamused:

Ça fait parti des bugs qui reviennent régulièrement; un autre du même style c’est celui des points d’arrêts dans l’éditeur d’exécution qui sont toujours présent alors que la méthode où ils étaient n’existe plus…:roll_eyes:

Bin tu fais comme je fais depuis la v11 : 1/ supprimer la méthode objet (MO), 2/ supprimer l’objet. Je n’ai jamais d’orphelin comme ça - c’est devenu réflexe, va falloir que je me désintoxique…

En théorie, quand tu ouvres un formulaire et que tu supprimes un objet qui a une MO, 4D est obligé de garder cette MO, sinon tu ne pourras plus faire “fichier/version enregistrée”, il ne pourra supprimer réellement la MO qu’à l’enregistrement du formulaire.

Sauf que là, j’ai supprimé carrément un formulaire et du coup je me retrouve avec une méthode orpheline par MO de chaque objet qui composait mon formulaire… :roll_eyes:

Bon, après ouverture d’un incident TAOW, réponse de 4D : Standard Behaviour…
Donc, il est “normal” d’avoir des méthodes orphelines et de devoir réparer sa structure suite à la suppression d’un formulaire…