INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Problem mit "Find Callers" Funktion



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

06.11.2019, 11:22
Beitrag #1

Lien_Alere Offline
LV-Testengineer
*


Beiträge: 26
Registriert seit: Feb 2011

2018
2004
DE


Deutschland
Problem mit "Find Callers" Funktion
Hallo,

leider habe ich bei meiner Recherche nichts zu meinem Problem im Internet gefunden, deswegen wende ich mich an euch.

LabView bietet die Funktion "Find Callers", welche für die Entwicklung von Programmen sehr nützlich ist, um ggf. auch "Dead Code" zu finden. Jedoch habe ich jetzt das Problem, dass diese Funktion in meinem Fall nicht funktioniert. Ich habe ein Projekt mit verschiedenen LabView Klassen. In einer Klasse ist ein protected VI (A.vi), welches in einem anderen public Klassen VI (B.vi) aufgerufen wird. Wenn ich nun die "Find Callers" Funktion auf A.vi anwende, sagt mir LabView, dass kein Caller gefunden wurde.
Zudem wird das VI A.vi auch bei der Ausführung der Funktion "Find Items with No Callers" mit Rechtsklick auf Projekt im Projektexplorer angezeigt. Somit kann ich überhaupt nicht auf diese Funktion vertrauen.

Meine Vermutung ist, dass diese Funktion nicht Klassenübergreifend funtkioniert. Innerhalb einer Klasse funktioniert diese Funktion.

Könnte mir hier jemand bei dem Problem helfen?

Viele Grüße!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
09.11.2019, 00:01
Beitrag #2

joerg.hampel Offline
hampel-soft.com
*


Beiträge: 15
Registriert seit: Mar 2015

16, 18, 19, 20
2007
EN

97082
Deutschland
RE: Problem mit "Find Callers" Funktion
Verwendest Du Dynamic Dispatch für den Aufruf der Methode? Das würde das Verhalten erklären, die Methode wird ja dynamisch aufgerufen.

Joerg Hampel | CLA, CPI & LabVIEW Champion | hampel-soft.com
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
11.11.2019, 14:29
Beitrag #3

Lien_Alere Offline
LV-Testengineer
*


Beiträge: 26
Registriert seit: Feb 2011

2018
2004
DE


Deutschland
RE: Problem mit "Find Callers" Funktion
Hallo Joerg,

da hast du recht. Das VI ist ein "dynamic dispatch" VI. Gibt es denn eine alternative VIs in "dynamic dispatch" VIs zu finden? Kann man diese VIs irgendwie alle laden bevor man sucht?

Viele Grüße
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
11.11.2019, 14:46
Beitrag #4

joerg.hampel Offline
hampel-soft.com
*


Beiträge: 15
Registriert seit: Mar 2015

16, 18, 19, 20
2007
EN

97082
Deutschland
RE: Problem mit "Find Callers" Funktion

Akzeptierte Lösung

Nicht dass ich wüsste, sorry.

Da Dynamic Dispatch erst zur Laufzeit anhand des Objekts entscheidet, welche Methode ausgeführt wird, ist da zur Entwicklungszeit vermutlich wenig zu machen...

Joerg Hampel | CLA, CPI & LabVIEW Champion | hampel-soft.com
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
12.11.2019, 09:49
Beitrag #5

Lien_Alere Offline
LV-Testengineer
*


Beiträge: 26
Registriert seit: Feb 2011

2018
2004
DE


Deutschland
RE: Problem mit "Find Callers" Funktion
Vielen Dank für deine Hilfe Joerg!!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
03.12.2019, 11:20 (Dieser Beitrag wurde zuletzt bearbeitet: 04.12.2019 11:58 von Lien_Alere.)
Beitrag #6

Lien_Alere Offline
LV-Testengineer
*


Beiträge: 26
Registriert seit: Feb 2011

2018
2004
DE


Deutschland
RE: Problem mit "Find Callers" Funktion

Akzeptierte Lösung

Hallo,

falls noch jemand Interesse hat. Hier mal ein VI, um ein Projekt mit dynamischen VIs zu durchsuchen und "VIs without callers" zu ermitteln.
Es hat mir sehr geholfen "Dead Code" VIs anzeigen zu lassen.

Grund: Da ich eine große LabView VI Bibliothek optimieren musste, sind viele VIs unbrauchbar geworden. Ich habe erstmal alles programmiert ohne die alten VIs gleich zu löschen. Dadurch sind natürlich nicht verwendete VIs entstanden. Da die Bibliothek sehr groß war, wäre es sehr aufwendig gewesen alle VIs durchzuschauen. Deswegen ist die "Find VIs without Callers" Funktion auch sehr praktisch, jedoch wie schon oben beschrieben nur für statische VIs zu gebrauchen. Aus diesem Grund habe ich mir meine eigene Funktion geschrieben.

Wenn jemand das VI in einer niederen LV-Version benötigt, einfach anschreiben.

Zusatz: Was ich vergessen habe zu sagen, ich separiere die VIs nochmal. Es werden somit VIs in bestimmten Ordnern ignoriert. Diese Funktion kann entfernt oder angepasst werden.

Viele Grüße


Angehängte Datei(en)
18.0 .vi  FindVIsWithoutCallers.vi (Größe: 33,89 KB / Downloads: 185)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  NI Vision Builder - Find Circular Edge HFM Praktikantin 0 2.757 28.08.2015 09:08
Letzter Beitrag: HFM Praktikantin
  Problem mit Funktion "Werte prüfen und erzwingen" Roter Milan 5 6.813 25.01.2012 10:42
Letzter Beitrag: Hook1986

Gehe zu: