3rd:External Database class builder

From wiki.visual-prolog.com

Jump to: navigation, search

Contents

EDB Class Builder


This little tool generates VIP code, and a complete VIP class to include in a VIP7 project where you need to use the external database (chainDB class). All you need to enter is the domain declaration, and EDB_Class_Builder will generate all the files for the class, and all the chaindb:: calls to save, index and retrieve the data.


History

EDB Class Builder used to be part of VIC.

Example

Say you want a database of people, with telephone numbers, age etc. You define your domain as (eg)

domains
       person=person(chaindb::ref,person_data).
       person_data=person_data(name,age,tel_no,address,hobbies).
       name=string.

etc.

Type in this data to EDB_Class_Builder, and it will generate:

person.i
person.cl
person.pro

When you save these files, a subfolder will be created for your project called /person where the files are written, together with person.pack, and person.ph. The generated .i file for the above will contain:

domains
       person_dom= person_dom(ref,person_dat).
       person_dat= person_dat(name,age,tel_no,address,hobbies).
                   name=string.
                   age=integer.
                   address=string_list.
                   hobbies=something.
       return_person_dom=  return_person_dom(person_dom);
                           ret_fail_person_dom(string Description).
predicates
   add_person_dat          :(person_dat) ->return_person_dom     procedure (i).
   delete_Person_dom       :(name)       ->boolean               procedure (i).
   replace_Person_dom      :(person_dom)                         procedure (i).
   get_by_1st_arg          :(string Name)->return_person_dom     procedure (i).
   get_by_ref_Person_dom   :(chainDB::ref)->person_dom           procedure (i).
   rebuild_index_Person_dom:()                                   procedure ().
   nd_Person_dom           :(person_dom,positive Nth)            nondeterm (o).

You will also need to include the class "btree" in your project.

Download

from here : Link not found August 04, 2013

You will also need the "btree" class. I will upload this soon, but meanwhile please just email me from http://www.acsumama.com/contact.htm

Personal tools