LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Dynamic Dispatch method won't compile - why?

Solved!
Go to solution

I can't figure this out.  I have 2 sibling child classes, and they and their parent have Dyno-Dispatch methods called "Set IO Data.vi" and "Get IO Data.vi".  The Get vi's compile just fine on both siblings and the parent.  But the Set vi won't compile for just ONE of the siblings - I always get the error: "This VI doesn't match other VIs in the method, Connector Pane Terminal(s) are different. All VIs that implement a method of a LabVIEW class must match Connector Panes. To correct this, compare Connector Pane of both this VI and the VI of an ancestor class that implements this method."  I compare & compare - maybe it's right in front of me and I can't see it.  It is late.  So here's a screenshot of both siblings and their parent's Set panel.  The connector panes, the FP objects are all identical (except for the class objects, obviously), but I cannot get the Set method for child class "DMC-30017(IO)" to compile to save my life! I've deleted it, rebuilt it, renamed it, tried everything.  Very weird.  Can anybody see it? Much thanks as always, paul

0 Kudos
Message 1 of 5
(1,942 Views)

The settings of the inputs in connector pane has to match as well (required, recommended or optional). I would rename the broken method and then try to re-create it by right clicking on the class and selecting New->VI for Override. If still not working, can you attach the code in LabVIEW 2018 or a previous version?

Lucian
CLA
Message 2 of 5
(1,927 Views)

Well, this is interesting.  I hadn't created VI's for override before this.  When I tried, it only gave me just a few of the ancestor's VI's/methods, and I don't see why.  Anyway, I've confirmed that the terminals, connector panes, are identical, so I've attached Whole Wazoo in version 2015.  The difficulty I'm having is the class called "DMC-30017 IO.lvclass".  Thanks  for any light you can shed - paul

0 Kudos
Message 3 of 5
(1,877 Views)
Solution
Accepted by topic author PaulOfElora

In your Set IO Data for the DMC-30017 class, the IO_PointParams&Data is set to "Required" in the connector pane while the parent has it set to "Recommended".  Again, EVERYTHING on the connector pane must match.


GCentral
There are only two ways to tell somebody thanks: Kudos and Marked Solutions
Unofficial Forum Rules and Guidelines
"Not that we are sufficient in ourselves to claim anything as coming from us, but our sufficiency is from God" - 2 Corinthians 3:5
Message 4 of 5
(1,871 Views)

Hah! When I created it, I had  the tool options set to "Required" inputs but for whatever reason it didn't on that vi, odd.  Thanks so much for giving me a 2nd pair of eyes, Crossrulz! paul

0 Kudos
Message 5 of 5
(1,854 Views)