Page 1 of 1

Method not found with 5 parameters in OD 22.3

Posted: Fri Jan 27, 2023 4:29 am
by pid_user
When we are trying to fetch data for our queries in middle tier database connection mode, we are facing following error-
Method not found with 5 parameters: OpenDentBusiness.DataConnectionCancelable.GetTableConAlreadyOpen.

can you please confirm the data type and number(count) of parameters(params) to be passed to DtoGetTable to get data for query.

Re: Method not found with 5 parameters in OD 22.3

Posted: Fri Jan 27, 2023 4:36 pm
by jsalmon
The most recent version of v22.3 no longer has that method with 5 params; it is now 7 params. It sounds like your version of Open Dental on the workstation does not match the version of your Middle Tier server. It is most commonly the Middle Tier server that is left behind in version. But you shouldn't be able to connect to your Middle Tier when the versions mismatch like that... curious.
Regardless, I just verified that it works in the most recent v22.3.44 so either update to that or make sure that both the server and workstations have the same version of Open Dental installed.

Re: Method not found with 5 parameters in OD 22.3

Posted: Mon Jan 30, 2023 3:32 am
by pid_user
Thanks @jsalmon
Can you also please confirm the datatype of all the params in that method. It would be really beneficial for us to pass queries.
Also, when i try to perform update or insert over preference table with 7 params in connection object. it does not update any value and no error is displayed though and output from update is-
"<DataTable><Name></Name><Cols></Cols><Cells></Cells></DataTable>"


following method is called-
OpenDentBusiness.DataConnectionCancelable.GetTableConAlreadyOpen

Re: Method not found with 5 parameters in OD 22.3

Posted: Mon Jan 30, 2023 9:51 am
by jsalmon

Code: Select all

public static DataTable GetTableConAlreadyOpen(int serverThread,string command,bool wasSqlValidated,bool isSqlAllowedReportServer=false,bool hasStackTrace=false,bool suppressMessage=false,bool useReportServer=false)
https://github.com/OpenDental/opendenta ... celable.cs

Middle Tier servers will run user queries as a MySQL user with lower permission (often not allowed to manipulate data). You might be running into that scenario. Manipulating data should be done through our API though.