Subscribe for automatic updates: RSS icon RSS

Login icon Sign in for full access | Help icon Help
Advanced search

Pages: [1]
  Reply  |  Print  
Author Topic: BAM automated class auto generated error  (Read 18844 times)
Asnidzal M.
Posts: 28


« on: March 29, 2014, 03:07:22 am »

Hello,

This is my first time i am trying to use Business Application Modeler(BAM), i try refer to training video but i'm using Informix rather than genero DB. But, it looks like genero engine(BAM) generate the automated function/class for the project except  class for <database_name>_dbxdata. The error :

Waiting for background dependencies computation to complete.
*** Building 'Application_1' [21:30:28] ***
Building using setup GSTSETUPDIR="/home/informix/fourjs/gst/gst/bin/src/ag/tpl/dbapp3.0"
The 'Databases' node contains no file to link. Nothing to link.
Compiling '/home/informix/sapwin2.50/ytestbam.4fdm'
/home/informix/sapwin2.50/sismak2.4db:/sismak2/a006/a006nopel@notNull:warning:(GS-11150) Column 'a006nopel' allows null values but is referred by primary key 'IDX_a006_1'.
/home/informix/sapwin2.50/ytestbam_uidata.4gl:10:12:10:26:error:(-8403) Module sismak2_dbxdata does not exist.
/home/informix/sapwin2.50/ytestbam_uidata.4gl:179:8:179:74:error:(-6606) No member function 'sismak2_dbxdata_a006_setDefaultValuesFromDBSchema' for class 'sismak2_dbxdata' defined.
/home/informix/sapwin2.50/ytestbam_uidata.4gl:197:8:197:83:error:(-6606) No member function 'sismak2_dbxdata_a006_IDX_a006_1_insertRowByKey' for class 'sismak2_dbxdata' defined.
/home/informix/sapwin2.50/ytestbam_uidata.4gl:242:8:242:93:error:(-6606) No member function 'sismak2_dbxdata_a006_IDX_a006_1_updateRowByKey' for class 'sismak2_dbxdata' defined.
/home/informix/sapwin2.50/ytestbam_uidata.4gl:272:8:272:97:error:(-6606) No member function 'sismak2_dbxdata_a006_IDX_a006_1_deleteRowByKey' for class 'sismak2_dbxdata' defined.
/home/informix/sapwin2.50/ytestbam_uidata.4gl:299:8:299:101:error:(-6606) No member function 'sismak2_dbxdata_a006_IDX_a006_1_deleteRowByKeyWithConcurrentAccess' for class 'sismak2_dbxdata' defined.
/home/informix/sapwin2.50/ytestbam_uidata.4gl:331:8:331:107:error:(-6606) No member function 'sismak2_dbxdata_a006_IDX_a006_1_checkRowByKeyWithConcurrentAccess' for class 'sismak2_dbxdata' defined.
*** Failure [21:30:30] ***


From the above error messages, 'Module sismak2_dbxdata' should be automated generate by BAM/genero engine, i also try to open one of the generated 4gl file (ytestbam_uidata.4gl), at top of the file also have a command to call the sismak2_dbxdata, but the class/files did not exist..


--This code is generated with the template dbapp3.0
--Warning: Enter your changes within a <BLOCK> or <POINT> section, otherwise they will be lost.
{<POINT Name="user.comments">} {</POINT>}
--------------------------------------------------------------------------------
--Importing modules
IMPORT FGL sismak2_dbxdata
IMPORT FGL libdbappCore
IMPORT FGL libdbappSql
{<POINT Name="import">} {</POINT>}


so what should i do to make it auto generate the xxx_dbxdata class ?

Thanks,

Asnidzal
Bernard M.
Four Js
Posts: 45


« Reply #1 on: March 31, 2014, 12:23:14 pm »

Hi Asnidzal,

The (GS-11150) warning shouldn't prevent the application to build anyway, but there must be a problem with your compiled database.

Just one quick thought, in Project Manager, under your Database node, do you have a .4db or a .4dbx file?

You should have a .4dbx, so if you have a .4db do a right-click 'Rename' on it in the Projects view and simply add a 'x' at the end of its name. Then you can compile it (right-click 'Compile File') to generate the corresponding <dbname>_dbxconstraints.4gl and <dbname>_dbxdata.4gl files.

Let me know if it is the issue.

Regards,
Bernard
Asnidzal M.
Posts: 28


« Reply #2 on: April 01, 2014, 02:49:23 am »

Hi Bernard,

Thank you. The problem solved after i add 'x' at the end of .4db file and recompile it again. I thought that it will automatically create the file(4dbx) after compile the project. I have another question regarding BAM :

1. Is it posibble to mix the program(module) that using BAM and also manually coding(4gl) in one project(application/system)?

2. If posible, how do we pass a global variable that create at manually coding 4gl file to a module that create from BAM in same project or application ? eg, we want to pass a variable login and ACL status from manually coding program to program that generated from BAM  ?

Thanks,

Asnidzal
Bernard M.
Four Js
Posts: 45


« Reply #3 on: April 01, 2014, 12:56:37 pm »

Hi Asnidzal,

It is still possible to add your own .4gl to the Application node of the BAM project.

Then you just need to add the IMPORT FGL <your_4gl> instruction in the "import" POINT:

{<POINT Name="import" Status="MODIFIED">}
IMPORT FGL your_4gl
{</POINT>}

..of the BAM Intermediate .4gl files wanted.

For global variables, you have just to make sure you add the PUBLIC keyword before DEFINE in your .4gl module.

Then inside the code, in the POINT and BLOCK sections, you can call any function or use any global variable defined in your own .4gl module.

Regards,
Bernard
Asnidzal M.
Posts: 28


« Reply #4 on: April 01, 2014, 03:53:49 pm »

Ok. Thank you.
Pages: [1]
  Reply  |  Print  
 
Jump to:  

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines