PxPlus User Forum

Main Board => Discussions => Programming => Topic started by: Thomas Bock on July 30, 2019, 03:26:23 AM

Title: strange errors 15 with [mysql] connection
Post by: Thomas Bock on July 30, 2019, 03:26:23 AM
We encounter strange errors 15 with [mysql] connections when rewinding the record pointer.

Code: [Select]
-}?tcb(32)
 16
-}open(1)"data/ab/A0FP01"
-}?pth(1)
[MYSQL]koss;mw01_form_para
-}read record(1,key=$$,kno=0)r$
Error #11: Record not found or Duplicate key on write
Last IO to [MYSQL]koss;mw01_form_para, channel 1
-}? key(1,kno=0)
Error #15: Operating system command failed
Last IO to [MYSQL]koss;mw01_form_para, channel 1
MYSQL:0:
-}?ken(1)
SELECT `formular`,`b_menge`,`l_menge`,`r_menge`,`mg_maske`,`me_x`,`art_nr`,`e_preis`,`ep_maske`,
`pe`,`waehrung`, ..., `use_overlay`,`archivdauer` FROM mw01_form_para WHERE `formular` > '' ORDER BY `formular`

Indeed there is no error 15, because the MySQL log files show no errors. The KEY() function works in the expected way with many other tables. But some tables show this error.
As far as I can do some try and error tests there seems to be a dependency to the option NONUMADJ. If set to "N" everything is fine, but if set to "Y" the errors occur. We need to work with "NONUMADJ=Y".
Title: Re: strange errors 15 with [mysql] connection
Post by: dlocke on January 07, 2020, 12:46:40 PM
Hi Thomas

Can you explain how you got this command to open a MYSQL table ?   

open(1)"data/ab/A0FP01"

I 'm looking through the manual and can't find anything on how to do this. 


Don Locke.
Title: Re: strange errors 15 with [mysql] connection
Post by: Thomas Bock on January 08, 2020, 02:08:16 AM
Hi Don

At that time we did some experiments with the Database Conversion Utility. This tool maintains a prefix file.
Take a look at the prefix directive format #4. It enables your programs to work with a SQL-table without changing your existing program code.
Title: Re: strange errors 15 with [mysql] connection
Post by: dlocke on January 08, 2020, 09:27:54 AM
Thanks Thomas

Got it to work thanks for your  help.

Don Locke.