VoiceGuide IVR Software Main Page
Jump to content

Retrieving 'text' fields in DB Query module

Recommended Posts

Somehow VoiceGuide doesn't recognize the SQL results.

 

We've one table that contains the customers of us. The customer calls and will be asked to enter his/her customercode. After this, the database will be accessed but a disconnect is the result:

 

09178 0 [Klantcode] Number Input
09188 0 [Klantcode] Playing (klantcode.wav)
09238 0 PlaySoundStart ok [C:\Program Files\VoiceGuide\Scripts\Maraex Technology\klantcode.wav]
16288 0 Play End line[0] (id=209198)
16298 0 LsGetNbrsPlayWelcMsg EV_PLAY_FINISHED
17210 0 tapie monitordigits 50 2
17220 0 LsGetNbrsRxDigits [2]
17230 0 [Klantcode] Number Input 2
17961 0 tapie monitordigits 48 2
17971 0 LsGetNbrsRxDigits [0]
17981 0 [Klantcode] Number Input 20
18702 0 tapie monitordigits 48 2
18712 0 LsGetNbrsRxDigits [0]
18722 0 [Klantcode] Number Input 200
19673 0 tapie monitordigits 50 2
19673 0 LsGetNbrsRxDigits [2]
19683 0 [Klantcode] Number Input 2002
20444 0 tapie monitordigits 48 2
20454 0 LsGetNbrsRxDigits [0]
20454 0 [Klantcode] Number Input 20020
21155 0 tapie monitordigits 48 2
21165 0 LsGetNbrsRxDigits [0]
21165 0 [Klantcode] Number Input 200200
21796 0 tapie monitordigits 49 2
21796 0 LsGetNbrsRxDigits [1]
21806 0 [Klantcode] Number Input 2002001
21816 0 CID at RunModule% []
21816 0 [Klantcode_database] DB Query
21826 0 ODBC mode used 
22247 0 RVreplace start: [SELECT city from debcre where id='$RV[Klantcode]']
22247 0 CID at RvProcessAndReplace []
22257 0 RVreplace end: [SELECT city from debcre where id='2002001']
22267 0 About to execute Retrieve Operation [SELECT city from debcre where id='2002001']
22277 0 [Klantcode_database] row count=1
22277 0 ERROR: RunModule:0:13:Type mismatch:VgMulti
22287 0 Hanging up call...

 

22277 0 ERROR: RunModule:0:13:Type mismatch:VgMulti

 

Type mismatch? The value result is of type "text" (attribuut city=text). The database will give a result. (row count=1) Using a SQL client, i get the right result (value=Leiden)

 

When i change de sql statement to SELECT 'city' from debcre where id='2002001' i'll get the result 'city' and Voiceguide will continue with the script.

First i thought it maybe that the result has more words, but that is not the issue.

 

As database system i use MySQL with the ODBC driver from the mysql website.

Share this post


Link to post

not really sure why you are getting this error - seems like a straightforward query... and it looks like an entry was found as we see:

 

[Klantcode_database] row count=1

 

... have you tried changing the type of 'city' columns from 'text' to 'char' ?

 

getting a result of 'city' when using the statement:

 

SELECT 'city' from debcre where id='2002001'

 

seems a bit odd to me as well, but I'm not an SQL guru...

 

the only thing I can suggest is to try a few tests to see for what types of situations the system works and at which stage it breaks...

 

I'd try using a different database (just for a test) or maybe attempt to retrieve different types data...

 

Once we know better what does work and what doesn't we can better diagnose where the problem lies

Share this post


Link to post

Try this one

 

SELECT CONVERT(char(5),ID) AS ID

FROM Table1

WHERE CONVERT(char(5),ID)='12345'

 

Aaron

Share this post


Link to post

yes, i just ran into this same problem. changing the type from text to varchar seems to work fine for me, as the support team suggested. i guess voiceguide doesn't like or doesn't even recognize the text type. hopefully this helps.

Share this post


Link to post

We have just ran some tests with MS Access database and VoiceGuide correctly retrieved and spoke both 'Text' and 'Memo' type fields.

 

What database were you using?

Share this post


Link to post

I had the same error myself using a PostgreSQL database (PostgreSQL ODBC driver) on a remote system. I did a simple SELECT * FROM Members SQL query and received the following error in the log file:

 

162145.17 11 ERROR 5.2.1011 RunModule:0:13:Type Mismatch:VoiceGuide

 

The Members table has TEXT fields. I tried the same query on a different table that did not have TEXT fields, and it seemed to work fine.

Share this post


Link to post

Just for the record, changing the TEXT columns in the Members table to VARCHAR(255) fixes the problem, as was the case with earlier posts.

Share this post


Link to post

Thanks for the information.

 

We'll set up a test soon to replicate the problem and fix it.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×