EBD 3.5.2

This new release represents a new advancement in functionality distribution and reuse of code, expanding the range of elements that can be repackaged and redistributed to virtually all objects that are part of an application EBD. The new consultation on better structuring the data model, facilitating the separation between data and presentation.

We highlight the following new features in this version:

  • New object "Query"
The new object "Query" allows you to create predefined queries on one or more tables, and later use as data sources in sections of type "Query" in the widget or by using the EBDML "execdatasource".
Query objects have all the flexibility of the section of type "Table", as the extra fields or calculated fields with EBDML code, and also let you customize the aliases of the tables and fields selected to facilitate access to the data once run the query.

  • Application Distribution in Packages
From version 3.5, generated with EBD Packages can include virtually all the objects that make up an application:
Tables, Pages, Sections, Areas, WebServices, etc ...
With this extension, you can use packages to distribute not only reusable resources as widgets or libraries, but also to distribute a complete application.
The new package installation system checks the dependencies of all objects installed, allowing separate an application into packets to facilitate installation and updates of the different objects.

List of all changes in this version:

EBD version 3.5.2 - 2/23/2010

  • [Req912] Section.show function uses the doctype of the current zone if none is specified by parameter.
  • [Req] New instruction 'eBD: Syncronize' that allows to synchronize access to global variables between competing requests from the same session.
  • [Packages] Update installer to run the post-install callbacks at the end of the installation package. The callback for a widget section depends on other objects have been installed (widget event) that may be later in the package. So you have to run the callback after installing all the objects.
  • [Req] New function #[eBDDate.CurrentMilis] to provide the epoch date in milliseconds.
  • [eBDML] New type of XML parser "Recordset" (in eBD:XMLParse) for parsing simple XML structures that returns an array of hashes.
  • [eBDML] Optimized eBD:Linkto.
  • [Bug] Now you can access to ".filepath" from EBDML code  in objects Query fields.
  • [Bug] Fixed bug when store EBDML code into a field, and by not refresh properly (need to compile 2 times).
  • [Bug] Resolved, in Oracle DDBB driver, the query object's error was not generating the query to alias the fields correctly.
  • [Bug] Fixed the error occurred in Oracle when the preview of a failed Query (no filtering was to quote the SQL query names).
  • [Bug715] Solved the problem in eBD:UPDATE, not updating the field "_publicado" in all records, but only in the first.
  • [Bug711] Fixed bug that doubled objects in the packages when update it.
  • [Bug716] Add the possibility to add all fields in a Query section, instead of one by one.
  • [Bug713] Now appears an error message if a Query section is created in wrong way
  • [Bug714] Solved the problem of the Query section giving Internal Server Error by using a predefined query.
  • [Bug524] Fixed eBDServer error was not doing the timeout correctly in Win32 (60 seconds by default).

EBD version 3.5.1 - 1/22/2010

  • [Req837] New parameter "AllowSessionFrom" in ebd.xml config file (for instance) that lets you declare a list of IP from which you can log in without validating the source IP.
  • [Req911] Added the possibility of using EBDML code in fields of queries.
  • [eBDSections.setDOMContent] This adds a '\ at the beginning of function.
  • [Req910] Enhanced edition parameter screen of the widget section.
  • [Req909] Added doctype parameter in Section.show with fullpage = 1.
  • [Req] Fixed error 500 which gave the instruction eBD:DESEREALIZE if failed JSON module, now generates an error in the log.
  • [Req] Modified ebd.xml file to allow configure the number of records to log in per user in the table "LoginCorrectos" using the tag: MaxLoginRecords.
  • [Req] New function #[eBDResponse.add_style(url)] (equivalent to "add_script" but for css files).
  • [Req] Added ENCODING parameter in eBD:XMLParse instruction, to specify the encoding and it don't pasrsing automatically the first line of XML.
  • [Req] Added support for remote users to Sun's LDAP service. Also fixed some small bugs in parameter validation in the user form.
  • [Bug] Fixed the problem that you could not see eBDML aid in the editor.
  • [Bug] Resolved an error in eBD:EXECDATASOURCE that occurred if no Query object was found.
  • [Bug707] Modified literal search, now you can search within folders literal.
  • [Bug706] Fixed problem with Extra Field in Query section.
By which to create an extra field in a Query section and attempt to introduce a DDBB function, the popup is closed automatically, without letting go of the DDBB function.
  • [Bug705] Solved the error in widgets that removed the global query to return values in the data sources. Also has been amended to prevent releases global queries from another object.
  • [Bug703] Resolved bug in eBD:INSERT where the datasource is ignored when making an insert.
  • [Bug704] Fixed the error of eBD:UPDATE by which to do it on a table where we have a date as a key field, it converts the date when checking whether the record exists, and always says no.
  • [Bug] The instruction eBD:INCLUDE pass additional parameters in a Case-sentitive.
*** NOTE: This can cause compatibility problems with existing codes that do not pass the additional parameters in capital letters and collected with EBD:ARGS lowercase.

EBD version 3.5.02 - 12/24/2009

  • [Req] Modified the instructions eBD:FOREACH and eBD:FETCHROW for the QUERY parameter to vill be evaluated.
  • [Req] New function #[eBDResponse.add_script(url)] that allows add a Javascript file in the response header but check it is not repeated.
  • [Bug] Fixed error 503 when trying to download the code file of a function (in libraries).
  • [Bug] Added XMLNS attribute to the "method" of SOAP calls to Web Services .NET to fully identify of NS parameters.

EBD version 3.5.01 - 12/17/2009

  • [Bug] Solve the problem in which objects Queries by dragging relations to compile the package.
  • [Req] Created widgets' own attributes. Each section can define your own list of attributes (in the Settings screen) and use the function #[eBDWidget.getAttribute(name)] to retrieve it anywhere (datasources, events, ...)
The attributes are transported using an encrypted URL of the event generated by #[eBDWidget.eventsURL].
  • New function #[eBDSection.UniqueID], which returns a unique numeric identifier for the execution of the current section.Widgets automatically send this value in the URL of your events, so that when running #[eBDSection.UniqueID] in a widget event we receive the same value that was in the main code execution.
  • [Bug] Solved the error 403 when to create an instant messaging service.
  • Modified in the Instantmessenger to use the _idRegistro instead of "username" to identify contacts.
  • New parameter "section_containers" for encrypted URLs Section.show forcing the insertion of container elements
  • New function eBDSection.setDOMContent(dom_node, html)
  •     Function setDOMContent loads all SCRIPT in the head, proving they are not already loaded.
  •     The STYLE is loaded on the DOM node itself.
  •     Function eBDSection.show used setDOMContent to embed the html received.
  •     Now eBDSection.show parameters are (in the encrypted URL):
        idsection -> section ID (already existing)
        section -> section name

        idpage -> page ID
        page -> page name

        idzone -> zone ID
        zone -> zone name

        full_page[1|0] -> boolean indicating whether to generate the full HTML content (to use that url directly in an IFRAME).

        ** If using "section" but not specified page or area, is understood that it is a global section.

EBD version 3.5.0 - 11/26/2009

  • Automatic Redirection to '/' (home or index) after a logout of kind "?Logout=1".
  • [Packages] Literal values are packaged. The locations are only referenced but it should exist in the target instance all the locations used in the package (identified by 'language').
  • [Packages] Displays information about the original object if no object is compatible for reference.
  • [Packages] Can be packaged folders of static files.
  • [Widgets] Only warning error when using SQL queries in Datasources if you can not get the selected fields.
  • [Widgets] You can select objects of type Query from the Datasources of a Widget.
  • [Start] Added extra fields in the object Query.
  • [eBDML] New parameter COUNT in EXECDATASOURCE instruction to collect in a variable the value of 'select count(*)'.
 (only 'select_count' query is executed if the limit is defined, but in any case always returns the value).
  • [Req720] You can use functions for boolean parameter values of the widgets.
  • [Req735] You can define "open" datasources in a widget, do not require a specific field structure.
  • [Widget] New flag in the parameters of the section widget that allows overwrite from eBD:INCLUDE.
  • [Req829] The Java and .NET function names not dependent on the ID. It automatically updates the source code (changing the classname) when compiling the class if format is still EBDv3.4.
  • [Req714] New parameter EVENT in eBD:CALL to run events for a widget from the widget eBDML code itself.
  • From EBDv3.5, packages generated with EBD can include virtually all the objects that make up an application:
Tables, Pages, Sections, Areas, Web Services, etc ...
With this extension, you can use packages to distribute not only reusable resources as widgets or libraries, but also to distribute a complete application.
The new package installation system checks the dependencies of all objects installed, allowing separate an application into packets to facilitate installation and updates of the different objects.
  • [Req844] You may use a HASHREF as ROW on FILEPATH.
  • [Req843] Scheduled Tasks can be packaged.
  • [Req836] Processes can be added to packages.
  • [Packages] SQL Tables are created automatically when you install it from a package (only if are eBD type tables, not linked tables).
  • [Req822] EXECDATASOURCE instruction can now run predefined queries (with filters, order by and limit).
  • [Packages] Autoresolution of  referenced objects from a package (but not included in).
  • [Packages] Objects Query can be packaged.
  • [Req782] Sections can be added to packages.
  • [Req839] New object "Predefined Query" that can generate queries as an object.
  • [Packages] Global sections can be packaged.
  • [Req] Web Services can be addede to packages.
  • [Req806] Zones can be packaged.
  • New function #[eBDResponse.get_head_content()] that returns the content of the HEAD automatically generated when you run sections (tags styles and scripts).
  • [eBDML] can be used eBD:INCLUDE from dynamic files and Web Services to run sections.
  • [eBDML] New parameters PAGE and ZONE in eBD:INCLUDE for including sections from other pages or zones (identified by name).
  • [XMLTable] You can now display the full content of the result of a WSDL Web Service, although no indication of any parameter.
  • [Req769] Pages can be added to packages.
  • [Req738] New option to set which page we show when a 403 error is detected.
  • [Req734] Server objects can be added to packages.
  • [Req679] Tables can be added to packages.
  • [Bug685] Solved the problem where a view that contains a date field, if we give a default value and check the read-only option, we can not change the value, but if we press the calendar button and change the date, the value of the form is changed.
  • [Bug696] This solves the problem of incorrectly nested table in the Tables section, using a template eBDML.
  • If the section table has enabled the checkbox "include table html", the eBDML start and end of the template are executed before and after this table, respectively. In this case, if the start eBDML want to open a table with headers and fill in the registration eBDML not work well because it will automatically fill in the table included. In EBDv3.3 the eBDML start and end of the template is executed within that tabla_html, so the problem did not occur.
  • [Bug698] Improve instruction eBD:IMAPGet to not fail if not sent the parameter "search".
  • [Bug691] Improvement Chart section when use a chart type SVG, that are including within the HEAD of the page the script to create the image so that the chart came out of the page.
  • [Bug689] Fixed error in eBDSync that excluding any folder named "files".
  • [Bug688] Fixed the problem by calling a WebApp by GET method, which gave a 403 error.
  • [Bug675] Solved the problem by which to create a temporary file and use ebd:infofile, the temporary file disappears.
  • [Bug] Fixed bug where not filtered literals at the root of the screen "Literals" where idCarpeta = 0.
  • [Bug687] Field Email is improved to accept email ".info".
  • [Bug686] Solved the problem of Sendmail function, that showing visibly the bcc messages.
  • [Bug684] Fixed the default value in the parameters to accept "0" as value.
  • [Bug694] Solved the problem where you could not designate a variable (from a library) with the same name as the library name.
  • [Bug656] Fixed bug where the number of processes "ebd_worker" grew abnormally, despite the value set to "/app/conf/ebd_config.xml", running or ebd_server graceful restart.
  • [Bug] Solved the bug where affinity cookies were not sent in eBDClient.
  • [Bug699] Fixed literal editing function by wich not allowing save the settings.
  • [Bug] Fixed error when accessing the body of a multipart message in IMAP instructions.
  • [Bug] Solved the error that is generated on receiving empty headers of a Java WebApp.
  • [Bug] Improved random number generator.
  • [Bug] Fixed bug in ebd_top which did not contain data from TServer.