[Résolu] Scénario bloqué à l'ouverture par une erreur interne

Bonsoir tout le monde.

Tout d’abord un grand merci à toute la communauté qui nous permet d’utiliser une très belle application domotique. Félicitations.

J’ai un énorme problème !!!
Je viens de passer tout mon après-midi à créer un scénario et naturellement « la buse que je suis » a oublié de faire une sauvegarde de temps en temps. Résultat à la toute fin, mais réellement lors du dernier clic sur sauvegarde, une erreur est apparue et depuis là il m’est impossible d’ouvrir ce scénario pour le dupliquer ou le modifier. Sniff :cry:

En état actif ou inactif il indique la même erreur à savoir :
erreur à la ligne 1733
Message de l’erreur : Uncaught TypeError: Cannot read property ‹ expressions › of undefined

Voici le bout de code correspondant :

   retour += '<legend class="legendHidden">ACTION</legend>';
    if (isset(_subElement.expressions) && isset(_subElement.expressions[0])) {
      expression = _subElement.expressions[0]
      if (expression.type == 'element' && isset(expression.element.subElements) && isset(expression.element.subElements[0].expressions[0])) {
        retour += '<div class="blocPreview">'+expression.element.subElements[0].expressions[0].expression.substring(0,200)+'</div>'
      } else {
        retour += '<div class="blocPreview">'+_subElement.expressions[0].expression.substring(0,200)+'</div>'
      }
    } else {
      retour += '<div class="blocPreview"></div>'
    }
    retour += '</div>';
    retour += '<div class="subElementFields">';
    retour += '<legend >ACTION</legend><br/>';
    retour += getAddButton();
    retour += '</div>';
    retour += '<div class="expressions">';
    retour += '<div class="sortable empty" ></div>';

La ligne 1733 est celle-ci:

if (expression.type == 'element' && isset(expression.element.subElements) && isset(expression.element.subElements[0].expressions[0])) {

Pensez-vous qu’il y aura une possibilité de retrouver le travail effectuer ou alors je vais devoir tout recommencer ?

Edit: J’oubliais, ma version de Jeedom est la v4.0.38 par VM sur un NAS.

Merci d’avance pour votre aide. J’espère que je vais pouvoir récupérer ce scénario.
A bientôt

Bonjour,
Je sais pas trop pourquoi tu as ca et surtout pourquoi tu es le seul a l’avoir mais je viens de pousser une correction en alpha/beta (pas de date de monter plus haut pour le moment)

Bonjour Loïc.

Merci beaucoup pour la mise à jour. Je vais la tester de suite en rentrant ce soir.

Tout de même cela m’inquiète un peu que tu dises que je suis le seul à avoir cette erreur. J’avais espéré que vous aviez déjà été saisi de la sorte.
Hummm. D’autant plus que s’il s’agit d’un cas unique on va pas faire travailler tout le monde ou refaire une version que pour moi.

Du coup si la mise à jour n’a pas fonctionné, tant pis je vais me reprendre une journée pour le refaire.

Mais c’est vraiment bizarre car le scénario est joué et fait les actions demandées. Sauf qu’il est impossible de l’ouvrir en mode Edition.

En tout cas merci pour tout et je te tiens au courant ce soir ou demain au plus tard.

Bonne journée

Bonsoir Loïc

Je tiens réellement à te remercier car grâce à la mise à jour (4.1.3) j’ai à nouveau accès à mon scénario. Trop top :grinning:

Ne voulant pas rester en « Alpha », j’ai fait une copie du scénario et suis repassé en 4.0.38.
Mais non :pleading_face:, ce n’est pas tous les jours Noël !!! Le scénario ne s’est pas ouvert…

Bon pas grave, j’ai remis en 4.1.3, et je suis repassé en stable pour la vérification des mises à jour.
Perso j’ai rien contre d’être testeur, mais si j’ai des éléments bloquants lors d’une mise à jour, ma femme risque de ne pas être compréhensive très longtemps et je vais devoir retirer tous mes bidules… Je préfère du coup rester en stable :hugs:

Bref, bravo pour cette considération exceptionnelle des problèmes que les utilisateurs peuvent rencontrés. Je viens de gagner une journée :star_struck:

Merci encore pour ce sauvetage. A très bientôt mais j’espère uniquement avec de bonnes nouvelles :innocent:

@Loic, ce n’est pas un cas isolé. J’ai le même défaut, à la même ligne.
Ça ne se passe que sur un de mes scénarios, que je viens de modifier.
Ca ne me l’a pas fait sur mes sauvegardes intermédiaires, mais ça l’a fait toute à la fin. Peut-être une question de longueur du scénario? Ou d’imbrication de blocs dans les autres (perso j’utilise 3 niveaux, et le 3iéme niveau je ne l’ai rajouté qu’à la toute fin).

Bref, ça ne sera pas inutile de pousser ta modif en stable à l’occasion.

Je viens de reporter les modification en beta

Bonsoir,

J’ai une erreur un peu similaire, en 4.0.62.

J’ai voulu sauvegarder un résultat json dans un block commentaire, pour l’avoir sous la main, pour le parser plus facilement dans un block code. Malheureusement, à la sauvegarde du scénario, j’ai eu une erreur, et je ne peux plus l’ouvrir. J’ai l’erreur javascript suivante:


Fichier	Ligne	Message
http://jeedom/core/php/getResource.php?file=desktop/js/scenario.js&md5=4367937e02c05360e2e8b320efe5f021&lang=fr_FR	1703	Uncaught TypeError: expression.expression.substring is not a function
Uncaught TypeError: expression.expression.substring is not a function
    at addSubElement (getResource.php?file=desktop/js/scenario.js&md5=4367937e02c05360e2e8b320efe5f021&lang=fr_FR:1703)
    at addElement (getResource.php?file=desktop/js/scenario.js&md5=4367937e02c05360e2e8b320efe5f021&lang=fr_FR:1858)
    at Object.success (getResource.php?file=desktop/js/scenario.js&md5=4367937e02c05360e2e8b320efe5f021&lang=fr_FR:1221)
    at Object.success (getResource.php?file=core/js/private.class.js&md5=b8db8507901b84d70b6da0fc7ba03668&lang=fr_FR:117)
    at c (jquery.min.js?md5=220afd743d9e9643852e31a135a9f3ae:2)
    at Object.fireWith [as resolveWith] (jquery.min.js?md5=220afd743d9e9643852e31a135a9f3ae:2)
    at l (jquery.min.js?md5=220afd743d9e9643852e31a135a9f3ae:2)
    at XMLHttpRequest.<anonymous> (jquery.min.js?md5=220afd743d9e9643852e31a135a9f3ae:2)

et voici le json que j’ai stocké en commentaire:

{"response_code":0,"power":"on","sleep":0,"volume":77,"mute":false,"max_volume":161,"input":"hdmi1","input_text":"Orange","distribution_enable":true,"sound_program":"surr_decoder","surr_decoder_type":"dts_neo6_cinema","direct":false,"enhancer":true,"tone_control":{"mode":"auto","bass":2,"treble":-3},"dialogue_level":0,"subwoofer_volume":0,"link_control":"standard","link_audio_delay":"balanced","disable_flags":0,"contents_display":true,"actual_volume":{"mode":"db","value":-42.0,"unit":"dB"},"extra_bass":false,"adaptive_drc":false}

Est-ce que quelqu’un aurait une astuce pour supprimer ce block commentaire, pour que je puisse retrouver mon scenario?

UPDATE: j’ai pris mon courage à 2 mains, et je suis allé purger mon commentaire directement dans la bdd :wink: J’ai pu retrouver mon scénario sain et sauf.

Cordialement,
Philippe

1 « J'aime »

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.