Re: Error status number -30038. - MySQL Database

Mike Aubury <[email protected]>
Newsgroups gmane.comp.lang.4gl.aubit.general
Message-ID <CAGAq4WGZ=o237M4Bzmt3Y6g9v3yX8D0G2mToQvJuNYwDBP84nQ@mail.gmail.com>
Is it possible to get a small working example - I think the above
references a "globals.4gl" - and I'd need a .sql to recreate the table..
It might just be something silly - like the form is not properly
downshifting the column name or something similar...

Does it work if you use the form you compiled against informix ?
if so, can you compare the outputs for

A4GL_PACKER=PACKED fdecompile cust1

(replace the 'cust1' with whatever the form is called - no file name
extension)





On 7 December 2012 22:31, Horacio Villanueva <[email protected]> wrote:

>
> Hi Guys,
>
> I have a problem to query a MySQL table and Fill data on a Form
> (Same code on Informix works greats...)
>
>
>
>
> The error is:
>
> Err:Program ./Menu stopped at 'query_cust1.4gl', line number 61.
> Error status number -30038.
> Field name not found.
>
> 4gl function call stack :
>     customer.4gl (Line 13) calls  query_cust1()
>     MAIN
>
>
> Environment:
> export AUBITDIR=/opt/aubit4gl
> export AUBITDIR_SRC=/opt/aubit4glsrc
> export AWK=gawk
> #
> export PATH=$PATH:$AUBITDIR/bin
> export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$AUBITDIR/lib
> #
> export A4GL_PRINTSCRKEY=CONTROL-P
> export A4GL_PRINTSCRFILE=+$DBSCREENOUT
> export ODDOPTIONS=N
> #
> ## MySQL Connection
> export LEXDIALECT=INFORMIX
> export A4GL_SQLTYPE=mysql
> export A4GL_LEXTYPE=C
> ## Database User/Password
> export A4GL_SQLACL=Aubit_to_MySQL
> # -EOF-
>
>
>
> The 4gl Code:
>
>
> #query_cust1.4gl
> GLOBALS "globals.4gl"
> ########################################
> FUNCTION query_cust1()
> ########################################
> DEFINE q_cust CHAR(200),
>                 selstmt CHAR(250),
>                 answer CHAR(1),
>                 found_some SMALLINT,
>                 invalid_resp SMALLINT
> WHILE TRUE
>         DISPLAY
>         " Press Accept to search for customer data, Cancel to exit w/out
> searching."
>         AT 15,1 ATTRIBUTE (REVERSE, YELLOW)
>         LET int_flag = FALSE
>         CONSTRUCT BY NAME q_cust ON customers.customerNumber,
>                                         customers.customerName,
>                                         customers.addressLine1,
>                                         customers.addressLine2,
>                                         customers.city,
>                                         customers.state,
>                                         customers.postalCode,
>                                         customers.contactLastName,
>                                         customers.contactFirstName,
>                                         customers.phone
>         IF int_flag THEN
>                 LET int_flag = FALSE
>                 EXIT WHILE
>         END IF
>         --* User hasn't pressed Cancel, clear out selection instructions
>         DISPLAY
>         " "
>         AT 15, 1
>         --* Check to see if user has entered search criteria
>         IF q_cust = " 1=1" THEN
>                 IF NOT answer_yes("Do you really want to see all
> customers? (n/y):")
>                         THEN
>                         CONTINUE WHILE
>                 END IF
>         END IF
>         --* Create and prepare the SELECT statement
>         LET selstmt = "SELECT * FROM customers WHERE ", q_cust CLIPPED
>         PREPARE st_selcust FROM selstmt
>         DECLARE c_cust CURSOR FOR st_selcust
>         --* Execute the SELECT statement and open the cursor to access the
> rows
>         OPEN c_cust
>         --* Fetch first row. If fetch successful, rows found
>         LET found_some = 0
>         FETCH c_cust INTO gr_customer.*
>         IF (status = 0) THEN
>                 LET found_some = 1
>         END IF
>         WHILE (found_some = 1)
>                 --* Display first customer
>                 DISPLAY BY NAME gr_customer.*
>                 --* Fetch next customer (fetch ahead)
>                 FETCH NEXT c_cust INTO gr_customer.*
>                 IF (status = NOTFOUND) THEN
>                         LET found_some = -1
>                         EXIT WHILE
>                 END IF
>                 --* Ask user if going to view next row
>                 IF NOT answer_yes("Display next customer? (n/y):") THEN
>                         LET found_some = -2
>                 END IF
>         END WHILE
>         --* Notify user of various "error" conditions
>         CASE found_some
>                 WHEN -1
>                 CALL msg("End of selected customers.")
>                 WHEN 0
>                 CALL msg("No customers match search criteria.")
>                 WHEN -2
>                 CALL msg("Display terminated at your request.")
>         END CASE
>         CLOSE c_cust
> END WHILE
> DISPLAY
> " "
> AT 15,1
> CLEAR FORM
> END FUNCTION -- query_cust1 --
>
>
> The Per Form is:
>
> DATABASE stores_demo
> SCREEN
> {
> Customer Number : [f000 ] Customer Name : [f001 ]
> Address: [f002 ]
>          [f003 ]
> City : [f004 ] State:[f5] Zip Code:[f006 ]
> Contact Name: [f007 ][f008 ]
> Telephone : [f009 ]
> }
> TABLES
> customers
> ATTRIBUTES
>         f000 = customers.customerNumber, NOENTRY;
>         f001 = customers.customerName;
>         f002 = customers.addressLine1;
>         f003 = customers.addressLine2;
>         f004 = customers.city;
>         f5 = customers.state, UPSHIFT;
>         f006 = customers.postalCode;
>         f007 = customers.contactFirstName;
>         f008 = customers.contactLastName;
>         f009 = customers.phone, PICTURE = "###-###-#### XXXXX";
>
>
> The Structure of the Table is:
>
> mysql> show columns from customers;
> +------------------------+-------------+------+-----+---------+-------+
> | Field                  | Type        | Null | Key | Default | Extra |
> +------------------------+-------------+------+-----+---------+-------+
> | customerNumber         | int(11)     | NO   | PRI | NULL    |       |
> | customerName           | varchar(50) | NO   |     | NULL    |       |
> | contactLastName        | varchar(50) | NO   |     | NULL    |       |
> | contactFirstName       | varchar(50) | NO   |     | NULL    |       |
> | phone                  | varchar(50) | NO   |     | NULL    |       |
> | addressLine1           | varchar(50) | NO   |     | NULL    |       |
> | addressLine2           | varchar(50) | YES  |     | NULL    |       |
> | city                   | varchar(50) | NO   |     | NULL    |       |
> | state                  | varchar(50) | YES  |     | NULL    |       |
> | postalCode             | varchar(15) | YES  |     | NULL    |       |
> | country                | varchar(50) | NO   |     | NULL    |       |
> | salesRepEmployeeNumber | int(11)     | YES  |     | NULL    |       |
> | creditLimit            | double      | YES  |     | NULL    |       |
> +------------------------+-------------+------+-----+---------+-------+
>
>
>
> Hope can you guide me to solve this.
>
> --thanks--
> --
> Salu2
> Un cerebro holgazán es la morada del demonio, y ese demonio se llama
> Alzheimer
>
>
> ------------------------------------------------------------------------------
> LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
> Remotely access PCs and mobile devices and provide instant support
> Improve your efficiency, and focus on delivering more value-add services
> Discover what IT Professionals Know. Rescue delivers
> http://p.sf.net/sfu/logmein_12329d2d
> _______________________________________________
> Aubit4gl-discuss mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/aubit4gl-discuss
>
>

------------------------------------------------------------------------------
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d

_______________________________________________
Aubit4gl-discuss mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/aubit4gl-discuss
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.