Release Notes

Release Notes (runtime at the end of the textfile and Hardware and software requirements)

4.11 SP23

Revision:29832 fix: flatwrite(excel style) now working with wide filename.
Revision:29619 fix: xmlmatch() and xmlmatchfile() can handle matching after finding (and skipping) an unknown element.
Revision:29601 fix: flatdoc,xmldoc and interchanges are limited by memory and symbol table size. (Max 2 billion for all)
Revision:29600 fix: Fixed substr() leaking temporary variables when it's on the left, and the string type of the inserting and inserted strings need changing.
Revision:29584 fix: filesize() will report the size of larger files, now capped at 2gb rather than return 0 for a too large file.
Revision:29521 fix: Fix an error with all groups catching the end tag for the group as text outside an element.
Revision:29459 fix: Fixed end tag problems when reading a sequence embedded in another group.
Revision:29458 feature: First parameter for xtradecreatemessagerx/tx changed to be a blob rather than ANSI string.
Revision:29332 fix: Add procedure name to trace for EXEC SQL CALL and EXEC SQL PROCEDURE.
Revision:29290 feature: When importing an IMP file, and there may be a custom code conflict, a dialog pops up giving choices on what to do about the conflict, and whether to remember that choice for the rest of the import.
Revision:29263 feature: Export IMP split into two options - "Export IMP" and "Export IMP with code".
Revision:29260 feature: Export IMP split into two options - "Export IMP" and "Export IMP with code".
Revision:29243 fix: Fixed a bit of bad inheritance to make adding a @RETURN_VALUE to a classic mapping work again.
Revision:29232 fix: Text outside xml tags fires an error.
Revision:29230 fix: Text outside xml tags fires an error.
Revision:29057 fix: Can estimate data structure from json which includes numbers that have exponents.
Revision:29053 fix: jsonread() allows exponents in json numbers.
Revision:29035 fix: Function IDs for bytestooututf8() fixed so it doesn't replace edifile() respectively.
Revision:28991 fix: validating xml was converting pcdata's to current codepage before checking lengths. This was a bug waiting to happen for data that doesn't fit in the current codepage.
Revision:28951 fix: xmlread() now handles comments _after_ elements and before closing tag.
Revision:28941 fix custom input then files are bigger then 0.5mb and use memory mode.
Revision:28937 fix: Validating xsd:int allows negative integers.
Revision:28919 fix: ibzXtradeLoadDataStructure and ibzXtradeSaveDataStructure functions are no longer helped in DS, and raise an error in EDI-C compiler, as the xTrade Interpreter wrappper have deprecated them for years.
Revision:28900 fix: JSON Key dialog allows non-EDI-C variable names as labels, and wraps them in "quotes".
Revision:28855 fix: XML element names starting with a number will be wrapped with quotes in the PGM.
Revision:28742 fix: Fixed polarity of comparison for min/max/inclusive/exclusive for xml double type.
Revision:28740 fix: Fixed total/fractional digits validation for XML facet advanced dialog.
Revision:28731 fix: substr (...) = "..." fixed.
Revision:28730 fix: JSON number detection improved for exponent numbers.
Revision:28668 fix: When loading a bad cep into the interpreter, skip checking for tracename, and just return.
Revision:28667 fix: INSERT INTO ... varchar(max) column working now. It was fine in SELECT, but not as a parameter. nvarchar(max) also fixed.
Revision:28632 fix: Removed check for UNS segment in a group. That's exactly where it should be!
Revision:28591 Feature TM Removed setting for maxFetchTransactionCount, Added a method to view specific transaction page without using the next and previous buttons.
Revision:28456 fix: jsonread() handles all valid json escape sequences, not just \u
Revision:28326 fix: Auto-json typing now detects if there's anything after the exponent of a number.
Revision:28283 feature: Extended maximum record separator length from 2 to 3 characters.
Revision:28204 fix: Remove wrong checks for string length after a utf8 to wstring conversion. This was failing on surrogate pairs 
Revision:28200 fix: Better auto detect for valid json numbers.
Revision:28174 fix: SQL Inheritance for CEPs fixed. Database collection (and current database) shared by a shared pointer when appropriate. (ie, loadcep(...,"i"), edic() and edicm() ).

4.11 SP21

Fix archive, was broken in 4.11SP18

4.11 SP20

Only runtime

4.11 SP19

 Only runtime

4.11 SP18

 

Fix:  routing with <routingcep.cep> working again.

 

4.11 SP17

TM: Its not possible to comment any transaction

Fix: Adapter does not stop by failed to create interpreter error.

Fix: Adapter Verified() failed.Failed to Create Interpreter instance. Then change default way to rtdll. 

 

 

4.11 SP16

Fix: TM non file searches with no results showed the loading bar indefinitely.

4.11 SP15

Feature: TM added a cancel button for refresh, and changed file search to stack in one large list.
Removed NotifyTaskCompletion.cs since it is no longer used.

Feature: Transaction View now got a loading bar and shows text for empty list.

Fix: Added handling of readonly files in the folder input adapter.
A new setting called REMOVEREADONLY must be turned on in order for read only files to work.
Without the setting the adapter instead skips read only files with a warning.
Renamed a const, added the text "warning" to the name to conform with other names of the same type.

Fix: TM transaction views loading bar was shown incorrectly.

Fix: POP3 attachment was being saved as a wide string converted to local codepage, rather than as a blob.

4.11 SP14

Feature: CURLOPT_KEYPASSWD, CURLOPT_SSLKEYTYPE and CURLOPT_SSLCERTTYPE to HTTP client in/out adapters
Feature: Added PATCH to HTTP client in/out adapters.
Fix: bug where body was not received when error code (400 and above) was in the reply from the http server.

4.11 SP13

Fix: When editing a forward adapter, and you're changing from "none" as destination, no longer update the adapters being changed.

WebTm: Added "Search" button

4.11 SP12

Feature: WebTM search for Logged data.  

Fix: Changed email out adapter c# dll interface from string to byte[] when attaching... attachments. This stops strings from being translated via the current codepage to widestring to go into COM.

 

 4.11 SP11

Fix: Inqueue

Fix: Where opening transaction details window from transaction flowchart always opened the top-most transaction in the flowchart, regardless of which transaction was double clicked on. Added Integration name to the header in the flow chart, when applicable.

 

4.11 SP10

Feature: Added DELETE method to HTTP Server Input adapter.

Fix: routing matching now uses different code to do match, and can now match "*SOMETHING*" properly.
Changed pattern matching in EDI-C to process wildcard pattern to regex string, then to regex it.
namematch() also changed to new algorithm.
fix: EDI-C routing will wrap XML paths that need it in ""s.
fix: string table issues with post-compiling led to stray characters in trace.
fix: SQL runnow.

 

4.11 SP9

Feature HTTP Server Input adapter now handles HTTP Basic Authentication.

Feature HTTPclient DELETE http command added to http client adapter.

Feature added 4.9.6 rtdll in install package.       

 

TM        Added JSON as option for text highlighting in the MessageData panel

              TM        Adapter-metadata don’t show

              TM        Feature search infile and outfile with control f.

              TM        Feature processing search added

4.11 SP8
Only in Edic

4.11 SP7

fix: folder adapter can write 0 size files
fix: IMPORTANT - Editing Advanced routing works again. Last version wrongly put @ in front of variable paths.
feature: argv[10] in extra/pre/post process ceps will now contain convert trace name, allowing extra processes to add their traces to the proper trace location.
feature: argv[11] in extra/pre/post process ceps will now contain convert logfile name, allowing extra processes to add their logs to the proper logfile location.

 

4.11 SP6

fix TM clear error fix TM crash bug on start/stop adapter fix IS use old RTDLL works

 

 

 

 

4.11 SP5
feature: Enable the CURLOPT_HTTPAUTH setting for HttpCliInput and HttpCliOutput. This is necessary to support the use of NTLM authentication
feature: Exceldll added
fix(ftp/out): Use RENAME when moving files over sftp
fix Remote id works in TM columns.
fix(email out): Don't send an extra empty attachment in the email adapter

4.11 SP4
fix(http): Add http headers to the requests of HttpCliInput
feature: If Admin detects license problems, it will bring up the license box, rather than an unhelpful error message and a missing license file will bring up the same dialog, but with one license entry showing the missing file's name.
Admin
Bug fix reorganize integrtions,adapters,etc....


4.11 SP2
Bugfix use of pre process program
  TM Fix
Unfinished transactions didn't work.
XML parsed view locked the panel
Auto-refresh missing
Parent adapter name column missing

   Admin
Admin Increase route criteria column size to 8000 chars in Admin. Should give us a bit of headroom for edi-c routing.
Feature Changed CEP edit boxes to show Inspect as well as Browse buttons. Inspect button shows CEP information, and any notes stored from a mapping.

4.11 SP1
CURL update to 7.51.0
Bugfix use of pre process program

4.11 SP0
Unicode added (see runtime info at the end).
Crash dumps always on with an limited of 250MB.
EDIC Routing added
Multi RTDLL added
HTTP in/out adapters using CURL instead of .NET
HTTP server file size increased form 16 Mb to 250Mb

TM
Page view
Setting for encoding
Start and stop adapters

 

4.10 SP1

TM Search added
TM Start/Stop integrations adapters added
Admin - When adapters, scheduled tasks or conversions have Trace Level Active, they will show a breakpoint overlay icon on the tree to be easy to spot.
Admin You can now put in adapter, integration, schedule etc ID's, and search on them too.
Admin - Ctrl-C works in left tree, and any tree showing adapters etc.
Admin - Ctrl-C works in right list too.
fix: Allow implicit SSL to be selected for email output adapters
FTP adapters: add a timeout to the ftp adapters, Defaults to 5 minutes of slow transfer speeds
Delete event log messages relating to a transaction when the transaction is deleted
Avoid deleting input transaction which are referenced by more than one output transaction
Update cURL to version 4.48
Postnet fix then downloading multipel message
Admin Rearranging of notifications of CEP changes between tabs. Checking of valid log/envelope/route paths when a conversion changes


4.10 SP0
Database uppdate for FTP. Take backup of database before uppgrade if you need to downgrade.
FTP out "Move to path" redone.
FTP in/out "Account" added.
FTP in/out Postnet and Run Custom Command once, better gui.
Fixed bugs:
Admin then loading cep.
Routing after unknown elments in XML structure(need to recompily .cep from EDSfile.)
Archive mappings updated to latest DS, and a bug in "copy" transaction files fixed.
zipcompress trace arguments lengthened.

 

4.9 SP6


Admin, validates ceps fields for:
Conversion, conversion pre and post process.
Adapter extra processes.
Scheduled task.
CRM Out and HTTP Client out response ceps.
Stop server state influencing start / stop options in Admin.
Admin - Selected items on Integration panel have some menu items disabled. (ie, selected out adapter)
TM fixed bug where user custom SQL text was not added to search query.

4.9 SP5
TM bugs fixed from 4.9SP4


4.9 SP4

New features
HTTP Post from EDIC
Saved Search to database


Fixed bugs
TM improved speed and memory use.
Admin improved speed.
Search in admin.
HTTP adapter trace .
SFTP certificate .
Reprocess in TM.
Custom Icon in TM.

Http adapters:
Added Headers from response to metadata for HTTP and CRM input. Added response headers to the verify response cep that can be set for http client output adapter.
Added PUT option in HTTP client out.
Removed check for HTTPHEADERFILTER, as its a list type property and can occur zero times.
Protocol trace is now activated both by separate setting for this purpose and if Edi-C trace is active.
Added setting to change security protocol in HTTP client adapters. Setting remains for use under advanced tab for now.
Setting name: SECURITYPROTOCOL
Supported values: "ssl3", "tls", "tls11", "tls12"

Folder input adapter:
Reverted to not copying file to local dir when input file is "do not remove". As doing so will allow "read-only" files to work.
Fixed bug where remote id was the wrong file-path.
New logic that always move/copies file to local dir before adapter framework takes over and inserts the message in the queue. Before this was not the case when the option "keepfile" was active. This ensures the file is readable and makes the next change easier.
If sessions ended after file was moved copied to local com dir, but before the message framework had taken control over the data the file would be left in local com dir forever. This is now fixed by checking the com-dir first for left over files.

Folder output adapter:
Fixed bug when writefile returned -1 on error, and error check in code checked it with 0 for error.

4.9 SP3
New Requirement
.NET Framework 4.5

New features
-WebTM users and groups added (more info https://inobiz.zendesk.com/hc/en-us/sections/200941091-WebTM)
-Administration program see eventlog for inadapater/outadapter/integrations
-FTPout added to set temporary directory
-FTPin/out SSL options added
-Trance on conversion added in Administration program
Fixed bugs
-TM takes time to refrech log files
-TM se all transaction state's.
-Administration program, picking items for integrations now uses a pick button. Doubling clicking on the current item already finds it in the lower tree. double clicking in the lower tree pops up the properties box.
-Administration program, max route hits and unknown adapter handler are set now on OK
-Administration program, adding a new (eg) adapter when in the integration view will select the new item in the tree.
-Administration program, made tree building more efficient.

 

4.9 SP2
Fixed Bugs Administration Program
Adding logvalues to new convertions

 

4.9 SP1
New features
-Search in in-transactions.
-Control trace for conversion under conversion.
-ServerActivity.log renamed with date: ServerActivity_CCYYMMDD.log
-FTP adapter added more settings: PORT (Legacy active/port mode),PASV (Legacy passive mode),EPRT (Modern active/port mode, will try PORT after if EPRT fails),EPSV (Modern passive mode, will try PASV after if EPSV fails)

Fixed Bugs
-Selected adapter/conversion more obvious in integration dialog.

-Archive deletes all files then choosing move.
Fixed Bugs Administration Program
-Crash bugs with schedules and clone.
-Refreshes better.
-Http server response.
-Creating a new adapter “data transfer mode” set to memory.
-Adapter add/delete extra parameters.
-Routing under in adapter.
-Extra processing prefilled.


4.9
New features
- Changes to configuration are logged, together with time and user name.
- Adapters have different error handling. More option, and less downtime.
- New adapter for MS Dynamics CRM online.
- Much improved user interface in Administration Program and Transaction Monitor.
Old concept of Companies/Nodes gone, folders allows for user to make custom tree now.
Consistent use of same tree-view everywhere
Larger easier to read dialogues, new dialogue for integrations and more.
Integrations are automatically daisy-chained in tree if connected via forward adapters.
Events are searchable.
Transaction steps visually displayed.

- Builtin HTTP server will display transactions in browser, called WebTM. Adress: http://127.0.0.1:24780/WebTM_treeview.html
- License usage statistics included under license info.


Compatibility changes
- COM interface to control server is changed to require user name for most actions. Commands like "RunNow(long ID)" are changed to "RunNow2(long ID, BSTR User)" and so on.
- Adapters don't stop as often as before, and standard behaviour when creating new adapter is to never stop, just keep retrying. Where IS versions below 4.9 would stop, this version simply sends out an error classed event and keeps on trying to send or receive as before.
- Downgrading to 4.8 or below is not supported. But can be done, with manual labour.

Bug fixes
- Broken append on folder output adapter
- Events not deleted when transactions deleted
- Extra process data not read back into server as message
- IS table "IBZLGINEXTDATA" not cleared on archiving
- Adapter metadata not working on http client output adapter
- SQL input adapter doesn't update data source
- Reprocess not working
- Transaction Monitor shows wrong transactions when clicking in tree
- Transaction Monitor crashes when same name is used in some places
- Cloning doesn't copy routing and envelope values
- Using multiple Administration Programs messes up database row id columns
- Many small changes regarding gui problems, errors and inconsistencies.


4.8 SP3
Split implemented
in/out FTP adapter improved
FTP PostNet fixed
Error notifications which gathers several errors
TM clear error improved
TM counter
Archive bug fixed
Rtwp restarts
Advanced routing bug fixed

4.8 SP2
Fixed problems with FTP settings.
Mutex added on admin so only one user can edit items.
Metadata in HTTP output fixed.
MSMQ more options added.

4.8 SP1
Fixes problems with FTP In ".." name list

Fixes problems with FTP rename


[#1476] Inobiz Server error when converting a file due to routing. 3 Closed
[#1477] Memory error when incrementing xmlptr variable when executing OLD .CEP files


4.8 SP0 news:
RTS
RTS stands for Runtime Server. And that’s exactly what it is. Remember that all Inobiz mappings are
compiled to a binary script format with a file ending “.cep”. These scripts need a runtime engine to
execute. In 4.8 version of integration server all mappings are run under a specially made separate
server in order to isolate the mappings on a windows process level. This will increase robustness of
the whole server.
RT as dll
Previous versions of Integration server did not allow the script-engine to be updated without
updating the complete installation of integration server. This was due to RT being compiled into the
server; it was one file for the whole server core. Starting with version 4.8 of integration server (and
10 of DS) this is no longer the case. RT is stored as a separate exchangeable dll-file. The advantage is
obvious, Inobiz can offer better service to existing customers that need new features and don’t have
the time to go through tedious upgrade procedures.
Large file support improvement
As DS 10 offers a more accessible way to run what we call large file mappings or serially processed
mappings, integration server has been upgraded to so that no special adapters are needed to run
these kinds of mappings. Note: A serially processed mapping uses much less memory then a regular 2
Inobiz TechForum 2012-12-05
mapping which allows it to map more or less any sized input file. There are however a few
restrictions when using serial mappings minor. Contact us to learn more about this.
cURL based adapters
In a last step to upgrade our communications package FTP input and output adapters now use the
open-source project libcurl. This replaces components from Dart Communications. We are now less
platform dependent and have a very stable codebase for our ftp communication adapters. This step
also takes us closer to offering communications functions from within our mapping script language
Edi-C.

SFTP
A strong reason behind the upgrade to using libcurl instead of Dart was the need for Inobiz to
support SFTP without an Enterprise communication package. Which means SFTP is now available as
a choice in the standard ftp adapter.
Http client input
A feature that has been requested for a while now shows up. It works the same way as the output
adapter for HTTP, with the exception that the input data is static, which means it is not coming from
a mapping but a setting or a file.

New http server
With new ambitions on the horizon and a desire to upgrade our communications package to a
codebase we ourselves reside over a new http server has been made and incorporated into
integration server. The server is made by Inobiz and is super light and completely customisable. This
is an internal change for now, but it opens up for new features planned for future Integration server
versions. One example is being able to control Integration server via web-interface.
Routing without mapping the file
It is now possible to use a mapping purely for routing a message. Add to integration and check “Pass
through – ignore conversion”.
Transaction monitor updates
Here are the notable changes that have been made to transaction monitor.

? Icons displaying if an adapter/scheduled/integration is running
? Being able to insert messages on adapters
? Opening transaction properties in its on window.
? Adding custom columns showing data logged inside mapping
? Yellow notification when transaction has logs items (instead of red/blue). (Since it is not
possible to correctly classify what the log value signifies)

 

 


4.7 SP3
Bugfixes:
-[#1422] callquiet (#1422)
-[#1413] pop3/smtp/folderin rcfatal changes to rcerror
-[#1446] Clone in admin program generates duplicate GUID
-[#1442] Listbox with "User defined log names" is not populated on conversion definition

TM
-[#1406] search 2 logged values

 

4.7 SP2
Bugfixes:
- Email input and output adapter.
- Administration program, memory leak.

Features:
- Transaction Monitor, insert test message in adapter.

4.7 sp1
- new features in SMTP adapter
- replaces search dialog in Transaction monitor
- see attached bug-fixes and feature requests

4.7

Events added*.
Upgrade of Transaction Monitor.
Upgrade of Archive.
Upgrade of Admin.
Advanced Routing added*
Test of Outadapter added.
Pass through route fixed.
SSL SMTP Maill added.
Node renamed to Company.

*See manual.

 

 

Runtime change Log:

4.11 SP23

Revision:29832 fix: flatwrite(excel style) now working with wide filename.
Revision:29619 fix: xmlmatch() and xmlmatchfile() can handle matching after finding (and skipping) an unknown element.
Revision:29601 fix: flatdoc,xmldoc and interchanges are limited by memory and symbol table size. (Max 2 billion for all)
Revision:29600 fix: Fixed substr() leaking temporary variables when it's on the left, and the string type of the inserting and inserted strings need changing.
Revision:29584 fix: filesize() will report the size of larger files, now capped at 2gb rather than return 0 for a too large file.
Revision:29521 fix: Fix an error with all groups catching the end tag for the group as text outside an element.
Revision:29459 fix: Fixed end tag problems when reading a sequence embedded in another group.
Revision:29458 feature: First parameter for xtradecreatemessagerx/tx changed to be a blob rather than ANSI string.
Revision:29332 fix: Add procedure name to trace for EXEC SQL CALL and EXEC SQL PROCEDURE.
Revision:29232 fix: Text outside xml tags fires an error.
Revision:29230 fix: Text outside xml tags fires an error.
Revision:29053 fix: jsonread() allows exponents in json numbers.
Revision:29035 fix: Function IDs for bytestooututf8() fixed so it doesn't replace edifile() respectively.
Revision:28991 fix: validating xml was converting pcdata's to current codepage before checking lengths. This was a bug waiting to happen for data that doesn't fit in the current codepage.
Revision:28951 fix: xmlread() now handles comments _after_ elements and before closing tag.
Revision:28941 fix custom input then files are bigger then 0.5mb and use memory mode.
Revision:28937 fix: Validating xsd:int allows negative integers.
Revision:28919 fix: ibzXtradeLoadDataStructure and ibzXtradeSaveDataStructure functions are no longer helped in DS, and raise an error in EDI-C compiler, as the xTrade Interpreter wrappper have deprecated them for years.
Revision:28900 fix: JSON Key dialog allows non-EDI-C variable names as labels, and wraps them in "quotes".
Revision:28855 fix: XML element names starting with a number will be wrapped with quotes in the PGM.
Revision:28742 fix: Fixed polarity of comparison for min/max/inclusive/exclusive for xml double type.
Revision:28740 fix: Fixed total/fractional digits validation for XML facet advanced dialog.
Revision:28731 fix: substr (...) = "..." fixed.
Revision:28730 fix: JSON number detection improved for exponent numbers.
Revision:28668 fix: When loading a bad cep into the interpreter, skip checking for tracename, and just return.
Revision:28667 fix: INSERT INTO ... varchar(max) column working now. It was fine in SELECT, but not as a parameter. nvarchar(max) also fixed.
Revision:28632 fix: Removed check for UNS segment in a group. That's exactly where it should be!
Revision:28591 Feature TM Removed setting for maxFetchTransactionCount, Added a method to view specific transaction page without using the next and previous buttons.
Revision:28456 fix: jsonread() handles all valid json escape sequences, not just \u
Revision:28326 fix: Auto-json typing now detects if there's anything after the exponent of a number.
Revision:28283 feature: Extended maximum record separator length from 2 to 3 characters.
Revision:28204 fix: Remove wrong checks for string length after a utf8 to wstring conversion. This was failing on surrogate pairs, eg ??
Revision:28200 fix: Better auto detect for valid json numbers.
Revision:28174 fix: SQL Inheritance for CEPs fixed. Database collection (and current database) shared by a shared pointer when appropriate. (ie, loadcep(...,"i"), edic() and edicm() ).

 

4.11 SP22

28107: *fix: Filedate() - keeps wide filename for call to C's stat(), and now gives correct response.

4.11 SP 20

27956: feature/fix: When a wide or utf-8 string could not be converted to an ANSI/Codepaged string, show at least some of the string that can not be converted.
27935: fix: jsonread() - in an array of objects, if a sub-object had read in a null for it's object, it removed the sub-object definition from later uses (ie, the next item in an array, etc)

27918: Added %F to in format of dateformat()

4.11 SP 19

27842 fix: Remove check for constants / temporaries before calling edicm(). The documentation does allow to call it with non-variable parameters, and their values are just not retrieved.

 

4.11 SP 18

27789 fix: flatread(x12) now uses memory mapped reading mechanism, instead of being capped at 128k inout file sizes.

27760 fix: When editing an attribute or pcdata, the advanced validation (ie, enum) was being lost unless the Advanced dialog was used.
fix: Length counted string for loading cep actually respects the length, and does not assumed \0 termination.

27696 Fix: Missed a change needed when migrating over 26457:"*fix/feature: On failed SQL FETCH (or a single select, resulting in no records), any bound variables (or INTOs) will be cleared, and NULL flag set." from trunk.

27694 fix/feature: If jsonread() hits a UTF8 BOM at the start, it skips over it. BOMs should not be there, but the real world does not always follow the rules - and this is a harmless mistake if we skip over it.

27619 Fix: a temp variable leak in xmlfindkey().

27588 feature: LDAP added to curl

27570 fix: Compiler compiling quoted strings in SQL statements as 'single' quoted again.
Added project dependency.

27527 fix: Strings being used as datetime parameters were failing poorly when a date with no time was being passed in. Now "2019-03-05" works, and "2019-03-05 0:0:0" is not required.

27510 Added EXEC SQL OPTIONS EMBEDSELECT / NOEMBEDSELECT. This turns on/off parameterisation for SQL statements. This is used by EXEC SQL SELECT,DECLARE and CALL. This is useful for some situations like SQL Functions, where ODBC does not provide parameter information. Turning this feature off does lose benefits like caching of statement processing, more traffic to / from the SQL server, and hitting maximum statement lengths, so should only be used for the minimum needed.

27459 fix/feature: On failed SQL FETCH (or a single select, resulting in no records), any bound variables (or INTOs) will be cleared, and NULL flag set.

27456 fix: Take DS11's random() function and backported it. This fixed sign problems. (ie, random(1,2) could produce 1,2,-1 and -2...)

 

4.11 SP16

27289 adddate() handled 19/20th century correctly.

26936 fix: Stored Procedure test dialog handles nvarchar(max) parameters now, not just big ones.

26861 fix: Escaped strings at the end of a flat file had an extra \0 in them.
Test added to catch this.

26833 feature: Added 'F' flag to flatread/write meaning lengths use characters rather than byte length of strings. Particularly useful for utf8 strings. Also added checkbox to flat source/target mapping settings.

4.11 SP15

26713 fix: flatread(),flatmatch() and flatreadfirst() all use optional enclose character, rather than defaulting to \0 (NUL) which caused problems on a flat file with embedded NULs.
26712 fix: Remove do {...} while (0) around non-repetitive (eg) record loops. It was causing confusion with older mappings with custom code, and not adding anything.
26712 fix: Changed "Inobiz - Log:" http header to "Inobiz-Log" for webceps.
Added jtools.natvis for easier debugging.
26667 fix: Allow element parameter (ie, an12) to be longer than 4 characters.
26604 fix: Allowing reading of empty json object when all children are conditional. Ie, "object" : { }
26546 fix: Fixed crash when a blank fcn file is created.
26408 fix: Fixed relative path base resulution used by edics.
26405 fix: No longer add #ERROR# to generated pgm when processing an unused RETURN_VALUE "column".
26404 fix: When edifact is set to UNOY, use utf8 string conversion, not codepaged string conversion.
26403 fix: Also read UNB.S001.0001 when showing edifact in source/target (debug) panes.
26402 fix: Fixed address() to report edifact pointer dimensions correctly.
26394 fix: When reading a nvarchar(>512), it was being padded out with \0.
26393 fix: Actually use the set codepage in UNB.SOO1.0001 when encoding data for writing in ediwrite().
26282 feature: fileisreadonly() and filereadonlyset() functions added.
26282 fix: direxist(), dirname(),filecopy(),filedate(),filedelete(),filemove(),filename(),fileappend(), filesize(),filerename() all adapted to work with wide/narrow/utf8 filename parameters
26281 fix: No longer strip away the "r" flag (read and ignore unknown elements) when doing jsonread().
26263 fix: xmlwritenode() returns 1 for success again, as it used to, and as it's documented to do.
26259 fix: Fixed arithmetic when one or both sides are wide strings, ie: 7 + towide ("5") will now work. An edge case, but was still wrong.
26258 fix: xmlwritenode(doc, doc.el[n], ...) no longer writes doc.el[n+1], doc.el[n+2] .... as well. (ie, it only writes the chosen elements, not its siblings.
26252 fix: Fixed a temp variable leak in zipuncompress when the second parameter is a temp variable, ie, zipuncompress (..., sVar & sOtherVar, ...)
26232 fix: fix: xml and json validation will now work with wide strings, not just codepaged and utf8 strings.

4.11 SP14
26116 fix: Reading in json arrays into a repetitive root works now/again.

26080 fix: Allow unicode trunk to process json arrays at root when estimating structure from a json file.

25968 feature: Added bintohex() function.
25967 feature: Made "Enclose record separators" button on Flat Source setting dialog bigger.

25967 fix: This option checks for enclosed record separators.

25964 fix: Check for valid json number redone to match exact rules on www.json.org, including exponent.

25896 fix: xmlvalidate() was turned off internally. Working again, and seems quite nice.

25818 fix: xtradesetattribute fixed so it doesn't use attribute name as attribute property as well.

25813 fix: JsonRead() wll no longer clear already read in xml/json trees.

 

4.11 SP13

25818 fix: xtradesetattribute fixed so it doesn't use attribute name as attribute property as well.
25813 fix: JsonRead() wll no longer clear already read in xml/json trees.
25777 fix: Changed %*s to %.*s so counted strings will be handled better (ie, no stray extra characters in traces)
25752 feature: EDI-C's trace() command, and external API trace setting commands now affect different trace variables. If _either_ is set, then trace is active.
25737 fix: edic() was crashing as the child cep's log object was being used shortly _before_ being initialised. edicm() was fine.
25699 fix: SQL nested mappings won't break the pointer replace code by putting in "" in the pointer stack.
25588 fix: Don't free temporary variable when assigning an integer to a wide string. That comes later, and did result in a double free. (Just caused a warning, but good to be tidy).

 4.11 SP12

25545: fix/feature: if the "T" flat is set, flatread() will treat escape characters literally, and will allow line breaks or other record separators inside escaped fields.
Added "enclose record separators" option to Flat | Source settings dialog.

4.11 SP11

fix/feature: FlatReadFirst()/flatreadnext() will close the handle to the file being read when reading has run out of data, rather than waiting for the Interpreter to close.

4.11 SP10

25186 fix: ediread() etc will respect separators set in UNA segment.
25185 fix: Fixed flatreadnext() to not reinitialise position in input file.

25087 fix: EXEC SQL CALL fixed mismatch of wide/narrow names for querying information about stored procedures.
25070 fix: Facets with utf8 contents (ie, pattern matching) are now acceptable to EDI-C Compiler.
25058 fix: const AAA = "ÅÖÄ"; Now works. const strings could not support non-ansi characters.
25050 fix: Trying to assign an ???ptr to a string now causes an error, rather than a warning. Other bad assignments already caused errors, so it's more consistent.
25046 feature: EDI-C compiler will no longer complain about non-ascii SQL commands, but will encode them in ceps as utf8 strings. They will not be compatible with older Interpreters, but will cause an EDI-C error message.
25046 feature: SQL/ODBC wrapper code convert commands to Unicode and then talk to ODBC.
25046 feature: getdatabase() / setdatabase() functions can use wide strings now.
25043 fix: Big xml files with unknown elements were going into an infinite loop as the std::ifstream class was not reporting the file size correctly! Most oddd. Using a different method to measure file size now.
25016 fix: fill ("", ...) and fill (..., 0) will no longer generate an error.
25016 fix:namematch () with utf8 strings will be promoted to wide and use wregex.
25004 fix: EXEC SQL IMMEDIATE will now set SQLSTATE, rather than leaving it as 00000.
25006 fix: Close trace handle when switching between ceps, so we don;t get trace lines in wrong trace file. (ie, method () call should be traced in parent log, not child ceps' log)
24997 fix: Allow "ignore unknown elements" to work for children of the document root, not just inside child elements.

4.11 SP9

24909  Bug fixed when checking for child of ALL groupRevision: 24909

24780  fix:  #import followed by #region followed by global variable declaration works now.

24791 feature: Added utf8 to BSTR ability to EDIC com wrapper.

24790 feature: You can use \uXXXX to insert Unicode characters in a string. Using \u will make that string be utf8, so it cannot exist with \x also in the string  (just use \u00xx instead!)

24787 fix: Wide string parameters to com methods work now with com

24786 fix: Sorted out auto populating elements, like UNH->UNT, when the UNH has wide string contents.

24781 fix: Fixed rare bug where an edifact element has wide string data, but it's being autoset by ediwrite (), and that causes string type confusion, (ie, number of messages) and hence crashes.

24779 fix: Removed bugged xml root name check. Lukcily, it only caused a problem if a child element of the root had the same name as the root.

24774 fix: ediwrite()'s processing of UNB.S001.001 to derive the codepage can handle a wide string input.

24768 fix: SQL FETCH and GET will accept fewer variables than there are columns. This is the pre-Unicode behaviour, so has been restored for compatibility. A note will be made in a trace file about the mismatch. Too many variables did and will cause an error.

24765 fix: Returning a NULL'd string/integer from a function works again.

 

4.11 SP8
24733 feature: Used EXEC SQL OPTION STRICT to govern whether binding to an integer will check if there are too many digits for a 32 bit integer.
24732 fix: negative operator fixed. ie, i = 6; i = -i; will now result in -6, not 0!

4.11 SP7

24712 convert encoding of variable to be displayed in 'parsed output' to current codepage
24691 fix: Change edi-c's random() to use the seedless threadsafe rand_s function instead of seeding by time(NULL), which could have the same seed value in interpreters started near simultaneously.

4.11SP6

 

24631 feature:  EDI-C code like      a == b;   will now create a compiler warning, instead of only being detected at runtime, with trace on.
24306 feature:  Improved eanchecksum() to work with other lengths of barcodes, and added tests.
24291 flatwrite EDIFACT style, since EDIFACT D01 more elements in UNB segment, caused date and time to be inserted in wrong place
24274 xmlmatch() fixed to pay attention to "ignore unknown attribute" (etc) flags.
24265 createdynamic()/releasedynamic() have proper help text, and no longer raise a warning - these are encouraged now for curl.

 

 

4.11SP5

24209 A JSON object with children can be set to predefined value 'null'. This did not happened earlier, gave a runtime error.
24201 fix: When fetching a text/longvarchar(and n version) columns, a NULL column would affect all following columns.
24164 fix-compat. Fetching data from a null sql column will set the resulting string to "", instead of SQLNULL. This is the older behaviour.
24094 Edicm() fixed utf8 probelm
24078 fix: SQL connect may set current database string badly, if a child cep inherits sql handles, and makes a fresh connection to an already opened database.
24066 EDIFACT Largefile added
24042 FlatRead(), ediread((), Fileexist(), logexist(), readfile(), readfilebin(), have all been made to work with wide, narrow and utf8 filenames.
24043 fix SQL DECIMAL (and FLOAT etc will also allocate room for the decimal point, so the last digit will no longer be thrown away).SQL number types can now be bound to EDI-C integers, *IF* they are 9 digits or less, with no decimal places.
24014 fix: trace() will put itself into the tracelog if it's being turned on, or off. It will only be invisible if it's going from off to off.
24013 fix: Fixed varxxxx(max) columns being read in properly when they contain NULL. Resulting string will contain SQNULL.
23964 fix: flatcopy copies over utf8 and wide strings too, and does not assume all are codepage strings.
23956 EXEC SQL CONNECT BY "connection string" introduced. If you connect to the same DSN multiple times, or with the same connection strings, you get multiple connections. You can use getdatabase()/setdatabase() to switch between them. Previously this was a failure.

4.11 SP3

23923 getini() and setini() functions can have all parameters be wide/utf8 as well as classic strings.
23921 getini() and setini() functions will check for / or \ in the ini filename, and resolve the path relative to cep location.
23893 jsonwrite() function can now check for value types set in DS and write the value according to settings. Error message if type does not conform to value data.


4.11 SP2
23836 jsonwrite(): Fixed writing a number like: .1234 to be written with a leading 0, ie 0.1234
23834 fix Change SQL statement parsing to use a string type, rather than pointers in a buffer - too many times the buffer ended up not ending with a \0, and the statement was corrupted.
23829 fix Removed clever ' stuff, we use "string" in edi-c, and strings will be converted to 'string' as needed. If a string is the last thing in the statement, it will be null terminated, so the interpreter no longer gets confused.
23827 fix Changed compilers sql processing to notice when text is in sql quotes 's and to not add extra spaces in there.
This was messing up
WHERE col LIKE '%wildcard%'
clauses.
23822 fix Fixed an off by one error in edicm(), used for pre/post and extra processes.
23811 fix for image sql type in column data. (longvarbainary)
23786 fix JSON do not write ending number or string if aary is conditional
23777 feature: ignoreentity working for json as well as xml. You can now do: DOCUMENT.BBB.bbb._value_ = ignoreentity & "{ \"1\" : \"Örebro\" }"; and get unescaped json out.
23774 fix(json): Don't write "numbers" starting with a leading zero as a json number
23769 fix Treat SQL_BINARTY types as Blobs, not strings.

 

 

4.11 SP1

23713 fix edicm working.
23706 json Fixed mandatory/conditional key when value has been assigned a value, even an empty string.
23651 jsonwrite() can handle wide / utf8 filenames now.

 


4.11 SP0

In the new Unicode versions of RT it is not normally necessary to “manually” convert to
different character encodings. This is done automatically as long as the encoding is
known. When XML/JSON/EDIFACT transaction file/messages are read the data is internally
stored as UTF-8. For other files/messages ( X12, flat-file etc.) the data is internally
also stored as UTF-8 strings. Conversion to UTF-8 is made by using the character set code
in EDIFACT files or current codepage for other types of files. When writing XML files
internally stored UTF-8 strings are converted to the encoding as specified in the XML
xmlns:encoding attribute. When this option is not specified, UTF-8 is assumed. JSON files
are normally written in the UTF-8 format. EDIFACT files are encoded according the character
set defined in the element UNB.S001.0001. Flat files can be written data UTF-8 encoded or
any other encoding by calling the function setencoding() prior to the flatwrite() call.

All the built-in functions in EDI-C “knows” the current encoding of all strings.
Earlier versions of the EDI-C programming language did not have this automatic Unicode
support. This resulted in that some built-in functions were needed to handle different
character encodings. The functions that were used for this purpose were: convert(),
replace(), translate() and toutf8()
convert ()
We strongly recommend to only use this function for converting to and from EBCDIC.
For all other conversions, use the new built-in functions: toansi(), toutf8() or towide().
replace()
This function has sometimes been used to replace UTF-8 encoded characters to single byte
characters like : Å, Ä, Ö, å, ä and ö. The same function has also been used to convert
these Swedish single byte characters to their UTF-8 representationIn the new Unicode
version, these types of conversions are done automatically. If the user by some reason
want to convert ANSI strings containing Swedish characters to UTF-8, use the function
toutf8(). Other functions that can be used are toansi() and towide().
In the new version, when compiling mappings with containing call to replace() and one
of the parameters is a non-ASCII string, a compiler warning will be issued.
translate ()
Do not use this function to translate to or from non-ASCII strings. In the new Unicode
version of EDI-C, all strings that contain non-ASCII characters are internally stored
in the UTF-8 format. To convert such a string to some 8-bit character format do like:
// Set target encoding
setencoding (“ISO-8859-1”);
string sTarget = toansi (sSomeString);
// Reset to current encoding
setencoding (“Windows-1252”);
toutf8()
This function is normally not needed in the new EDI-C version. It may be used when some
ANSI string is read from a file and this file contains non-ASCII characters.


23497 New DS option for controlling how lead-in field separator should be treated for flat files
23232 New parameter to flatwrite() specifying which encoding should be used when writing file
23049 Increased buffer size when tracing an SQL statement using integer columns. Prevents bug with trace when inserting large numbers.
22932 Bug in flatwrite() X12, IEA control number was written with wrong length
22881 For unknown elements, better hadling of CDATA
23121 Accept reading EDIFACT files with encoding UNOY (UTF-8)
23119 Stricter check encoding (character set) when reading/writing EDIFACT file

 


4.10 SP1
22810 * Added *.inc as a valid include file type, adding to fcn.
22716 XMLwrite :Fixed xml mand/cond status
22778 Allocate more memory for facets regular expression pattern
22774 ODBC told to use odbc v3, and date/time structures updated to take advantage.
22799 Classic Excel wrapper gets a mutex, so EDI-C only ever has one Excel instance running.
22767 Don't skip empty fields when parsing the first column of a flat file
22763 Add quotedprintable(encode/decode) functions to EDI-C
22760 Update cURL to version 4.48

 

4.10 SP0
22752 Data to char/nchar columns will be chopped off, to prevent sql errors. Later versions of EDI-C will introduce a SQL OPTIONS STRICT ON/OFF command to regulate this.
22749 Fixed a new flatread ("m") Excel style bug.
22744 Added new types to flat fields to know what type of Excel cell to write (number, alpha, date, formula etc) when using Excel.Helper dll.
22735 * Trace for if (p) improved, and xmlptr p = blah... (); if (!p) now works too.
22727 Fix to xmlfindvalue () when it only has 4 parameters.
22726 Trace output changed, to be tab separated with more columns, and no interrupting headers.
22725 Excel write: Don't increment row counter for empty record
22721 zipcompress() trace arguments lengthened to make it easier to diagnose archiving problems.
22718 * XML processing instructions better handling
22711 jsonread() will now respect the "ignore unknown element" and "silently ignore" flags, like xmlread() xmlmatch(),xmlmatchfile(),JsonMatch() and jsonmatchfile() all have an optional last parameter for read flags, just as xmlread() and JsonRead(). If any read flags are set in the mapping, the optional match flags parameter will be used in code generation, otherwise it will be left off, to help with compatibility with older Interpreters.----
22703 COM changes, so we can call IDispatch::Invoke with too few parameters for optional parameters.
22698 Excel Read does pattern matching better now. Excel helper can set "current sheet" name, not jus by index.
22693 xml validation accepts pcdata/attribute lengths larger than 65000
22690 xmlread() - when element under XML root was unknown and 'Accept unknown elements' was set, reading was stopped
22674 xmlread check if pointer to child is null in function that reads element children - fixes a rare read bug.
22671 println("") is not swallowed in the callback stage, so works again.
22666 xmlwrite() conditional/mandatory element
22665 jsonread () - Fix to permit empty objects , ie: "iain" : {}
22664 Better check for mandatory/conditional elements in xmlwrite()
22658 Write xml elements if the are empty but are mandatory, xmlwrite()
22643 Fixed a bug in xmlread() with all groups and parseskip child items.
22642 logerrorfunc() and loginfofunc() functions will be given priority over external callbacks. That's why they are there, after all!
22639 xtrade functions auto load xtmapfunc.dll. xtradeload()/unload() are backwards compatible stubs now.
22627 Added row pattern matching method to Excel.Helper dll. Excel flat file loading now goes straight into flat tree. Excel memory reading does not have to go via a temp file for Excel.Helper calls.
22625 Better error text when data for fields longer than defied
22624 Fixed bigint column type for SQL INSERT.
22617 Removed some memory leaks in interpreter when using StructOpen/StructClose, used by Admin.
22616 EDIFACT, fixed reading last char in IEA record
22613 Removed unnecessary prologue text from flat/edi/xml Parsed Data text. Shown in Source/Target data panes in DS.
22605 sha() function implemented. Trace now adds ...more after 400. It had two checks, and I found a second place.
22593 Better check on conditional elements


Integration Server 4.9 sp6
ID Change
22593 Better check on conditional elements
22590 Issue warning if try to free earlier freed tempoarary variable (internal)
22586 Fixed tostring() EDI-C function.
22581 Better check for conditional and mandatory attributes
22568 xmlread() can now handle parseskip elements as direct children of all groups.
22542 xmlread() better check for 'accept unknown' attributes
22541 xmlread() write mandatory attributes under xml root (xmlwrite)
22529 *Fixed base64decode() bug which added extra \0's to end of decoded blob to round length up to 3.
22525 xmlread(), Unknown elements in All groups handled now.
22523 xmlread(), Handled unknown elements using recursive parser, to handle, (eg) <A>...<A>...</A>...</A>.
22521 xmlread(), When doing parseskip elements, bypass a bug with skipping elements, which had same names, nested.
22520 table(), Fixed crashing bug in table() when there's no match.
22518 xmlwrite(), do not write BOM characters at the beginning of UTF-8 files
22504 flatread () "excel" style read will return 0 on failure, instead of 1 wrongly.
22492 use GetLoadedCepVersion() to get cep file version
22487 xmlread(), default encoding is UTF-8
22484 Writing element when mandatory/conditional
22473 flatread(), Bug in x12 read - a test of end of file should have been done

Integration Server 4.9 sp5
22377 Added to xmlwrite parameter b/B ignore writing bom characters
22371 readanyfile () checks to make sure file is not bigger than 2Gb before trying.
22329 XmlReadDocument() can handel more then one xml stucture.
Integration Server 4.9 sp4
22319   SQL INSERT can take SQLNULL string for any nullable column, and also take "" for nullable columns, except text columns (ie, VARCHAR) and blobs.
22306   xmlread() - max attribute len changed to 100000.
22293   tableload() and tablematch() updated to add optional separator parameter, and a default-if-key-not-found parameter respectively.
22277   Added new Excel file library option to EDI-C. If this optional library is not installed, EDI-C will fall back to using Excel automation.
22269   Check for bad initial paths in xmlfindkey/value commands and fail quietly.
22266   dateformat() Fixed week number bug with old format.
22241   xmlfindkey/value can handle integers as keys too.
22236   Added base64encode() and base64decode() functions.
22222   substr() on the left now two options: 1. len >= 0 same as before, 2. len < 0 replace len chars with what is on right side of assignment operator
22211   xmlwrite (..., "m") writes BOM characters to memory buffer, ready for writing to disk.
22208   datetime() with new % specifiers fixed to better handle bad specifiers.
22191   errors being returned from a com method will show the com object name too, not Method.Method.
22187   execenv() can now return 6 for "Caled by .Net wrapper"
22167   dateformat() rewritten. Can now use "old" or "new" format specifiers. See help file.
22124   Fixed occurs() bug.
22118   Can assign SQLNULL to a string variable, and use that in SQL INSERT to optionally set a column to NULL.
22116   xmlwrite(). Fixed bug with "do not write header" flag.
22092   SQL INSERT works with datetime again.
22057   occurs() and search() made more efficient.
22014   println("") works indentically to println()
21964   jsonwrite(): Numbers can be written as strings, by appending "\xFF\xFF"
21958   SQL INSERT changed to use parameterised values, rather than a long Exec Direct string. Changed to handle an Oracle bug, and become more efficient.
21951   jsonwrite(): No double quotes around numbers. Examples: 1, -1, 1.2, -1.3
21930   Handle REF VARIANT com method parameters better
21925   jsonread() now handles arrays at root of json file.
21918   Using _inp() and _outp() will cause compile errors now.
21915   New EDI-C function 'edicheckce' to check for mandatory composites/elements
21911   xmlfindkey() fixed to handle no-key-found.
Integration Server 4.9 sp3
21804 xmldata(), flatdata() and edidata(): Added second optional "i" flag parameter to silently make any error be "false".
21799 Fixed a crashing bug in xmlfindvalue().
21792 Fixed pointers in Debug window not showing <empty/assigned> properly.
21789 table(), tableload(), tablematch () redone to handle line endings (\n and \r) better. Table maximum increased to 10.
21750 xml attribute limit lengthed to 2047 characters.
21744 xtradeisloaded() function added.
21743 xTrade helper dll will be unloaded by xtradeunload() and by Interpreter exiting. Error messages from xtrade functions made more uniform.
21704 "parseskip" elements will ignore unassigned attributes.
21615 readfile() with relative filename will try relative to current cep location first, before trying relative to current working directory.
21645 Fixed memory leak in flatmove() function.
21570 xml element type "parseskip" implemented for xmlread.
21509 COM object method calls handle VT_VARIANT ref parameters better
21484 jsonread() skips over UTF-8 bom marker
Integration Server 4.9 sp1
21336 Bug with flatwrite and empty flat tree (ie, no records etc)
21198 Fixed bug in dynamic object mthod call when trace is on, and a parameter is super long
21196 new function 'getlastlogmessage'
21193 new function 'xmlwritenode'
Integration Server 4.9 sp0
21172 New predefined variable ignoreentity. Example: <A>ccccc</A> A.pcdata = ignoreentity & "<B>Hello</B>" result is: <A><B>Hello</B>/A>
21090 Added getcurrentusername edi-c command.
21081 New functions xmlfindkey() and xmlfindvalue().
21018 Trace disabled for Function and COM method calls.
21016 Fixed acceptance of unknown elements before known ones, even when flag is not set.
21007 if (x) is a valid test for pointer types (eg xmlptr). If the pointer is valid, the "true" branch is taken, else the "false" branch is taken.
20972 Changed ismethod () to walk a function's parameter tree, rather than its symbol table. Now returns correct number of parameters, and does not get confused by (eg) internal variables used for switch statements.
20969 When a line like a == b; is encountered in edi-c, and trace is on, there will be a warning about the line.
20968 edi-c dynamic trace had a potential bug with parameters that had % characters.
20967 Escaped % char in trace format input
20954 In flatwrite with "edifact" style, Created BGM like: BGM+241:::+993544' Should be: BGM+241+993544'
20950 Added new "t" flag (kAcceptSilently) to xmlread. If you've chosen Accept Unknown Thingy(tm), then you get a loginfo that the unknown thingy has been ignored. With the "t" flag, you don't get that warning.
20894 Added lots of error handling to lock functions. Any mismatch between acquires and closes will cause an error, as will closing a handle with live acquires. The interpreter will tidy up, but still cause an Error to be reported. When an interpreter is closed, any live sync locks will be Error'd and closed.
20887 changed debug step handling to be better when leaving Functions
20883 When a COM function returns vtEmpty from a function / get method / out parameter, turn that into "" in edi-c.
20882 Added third parameter (seconds offset) to timestamp() function.
20877 Changed timestamp() function to be more flexible Added clVariable string setters for char *, and removed many (ECHAR *) casts, to make life a bit smoother for utf16 transition Added clVariable string set function which just takes string length.
20875 New EDI-C functions: lockcreatesemaphore() lockacquire() lockreleasesemaphore() lockclose()
20870 Added traceison() command.
20868 In call to 'xmlread', new new file mode parameter 'h', accept XML document without XML header In call to 'xmlwrite', new new file mode parameter 'h', do not write XML header
20841 com.method calls show a return of void, rather than showing nothing for a method with no return code.
20837 bug fix in trace for comparing long strings. show "void" as return type for a dynamic call that has no return.
20834 In EDI-C, Dynamic method calls write to trace out as well. Should make debugging use of dynamic objects a LOT easier.
20812 Accept root node in file to be like AAA:BBB but declared in structure as BBB Do not regard this as an unknown element
20798 Bug fixed - when element data contain a EDIFACT special character like : + ' ? then replace them with 2 chars where the first character is the release char ?. Result will be like ?: ?+ ?' ?? String will be longer - for each release char add 1 to length - this was not done.
20793 Default EDIFACT release character (?) was not defined.
20756 Routing improved
20715 When writing EDIFACT element data, ignore chars with value lower than space. If data contained \ and \n, length was not calculated properly. This has worked in earler versions of 'ediwrite'. This bug was introduced when 'ediwrite' was optimized.
Integration Server 4.8 sp5
20679 Did not write mandatory XML children
20637 Trace line number improved.
20634 Excel mappings show grid while debugging also.
20591 regexp now works without external dll. Lib path added to rtdll for boost libs,
20550 Interpreter better able to handle (some!) user defined types in COM method parameters, by assuming the type passed by the user (ie, string or integer) is valid. VT_(U)I8 now made to be a string, as it overflows an integer.
20534 Better handling of undefined elements when parsing XML files
20508 flatwrite (..., "m") with excel flat style now works, saving xls file to a temporary file, then loading it to the string.
20493 For Oracle database, exchange square brackets [ ] with double quote "
20491 Fixed bug - top level file has empty sibling. This ok but do not check for mandatory recoirds and fields in it
20476 New function 'flatcheckmandatory', can replace 'flatcheckm' '
20446 jsonwrite changes so empty elements are written. Replace "null" with "".
20418 xmlread() handles case when several ending undeclared elements occur as children to a declared element
20413 jsonwrite () : When mandatory but empty key/values are there, show them as null or {}.
20397 For flatwrite and xmlwrite, if file mode parameter is 'D', delete all data in tree after write, not the tree itself
20393 For ediwrite, if file mode parameter is 'D', delete all data in tree after write, not the tree itself
20349 xmlread : Allow different root node names in file and in structure
20347 Better error message when trying to assign void function "return" value to a variable
Integration Server 4.8 sp3
20263 xmlwrite - Fix in 'WriteElement' - do not write 1St empty conditional elements
20185 flatread from Excel files gets cell range to read much more efficiently
20154 max number of XML docs sets to 20
20153 Advanced routing: Better handling of substring like: xx[1,5]
20118 In function 'DeleteDataInElement' (used by xmlread and xmldelete edi-c functions), do not remove xml:version
20117 xmlwrite & xmlwritefirst/next/last functions: Checking for spaces in function WriteAnyXmlData was done in a wrong way. Should NOT IMMEDIATELY return false when empty attributes and pcdata.
20092 program () and program (0) return just the filename of the originating source of a cep.
19982 Better error message when EDIFACT element data contains invalid characters
19972 delete entity data only at highest level
19971 When deleteting data in xml tree - ignore entities
19935 Increased buffer holding variable name for SQL ... INTO :longname from 79 to 512. You can use tree variables (ie, XML.element.subelement.pcdata, so you're not limited to one variable's length.
19927 When xml:preserve is set, allow pcdata content as " ".
Integration Server 4.8 sp2
19843 bug fixed when comparing two xmlptr values in an if (ptrA == ptrB).
19838 Fix for com calls. b = obj.SomeFunc (); and b = obj.SomeProperty; look the same in the cep, so we need to potentially try both in the interpreter.
19817 EDI-C command "getobject" added, to complement "createobject". Useful for getting objects by Moniker, ie, in Active Directory, Office, etc.
19814 COM interop from EDI-C redone.
19779 urlunescape bug with long strings fixed
Integration Server 4.8 sp1
19739 Memory access bug when reading variable length fields flat file with file style "minimized" and routing.
19731 Trace fixed to give full output when writing to disk.
19725 Bug fix in ++xmlptr_variable
19717 EDI-C's sleep function now respects the fQuit flag too.
19696 urlescape replaced with a less clever, brute force approach, replacing any character that's not A-Z,a-z or 0-9 with the %xx version. Fixed problems with urls with ?'s in.
Integration Server 4.8 sp0
19563 SQLSTATE will be initialised to 00000 at start time of interpreter.
19550 When stored procedure has format ABC.DEF they must be enclosed by the " character.
19503 movefile() improved to be safer.
19492 edifile() and listfile() now open in readonly too.
19491 Made ediread() and xmlread() open the file in readonly mode, not requiring write access.
Integration Server 4.7 sp 3
19350 fixed a bug in xmlwritelast, crashing if xmlwritefirst has not been called yet.
19338 Function 'readfiletoansi' did not exclude BOM chars in length
19314 New function 'readfiletoansi' UTF-16 to ANSI UTF-8 to ANSI Else as it is
19253 Function memory leak in 'xmlcopy'
19190 Better error message when bug in EDI-C interpreter: missing calls to 'FreeTemporary' Previous message was like '..exhausted cache..'.
19185 call() and callquiet() temporary variable leak - fixed
19179 Changes in EDXML_READ_JSON.CPP EDXML_WRITE_JSON.CPP
19174 dynamic and object types now appear in debug variables. fixed a bug in releaseobject() - the internal data was not being cleared, so any use of a dynamic variable afterwards would crash, not complain.
19163 CR/LF after each object only if "n" in 3:rd parameter in jsonwrite() function call
19159 Function jsonwrite() write UTF-8 characters
19151 xmlwrite() gave sometimes empty XML elements
19127 jsonread() and jsonwrite() introduced
19125 xmlwrite() - If element is conditional but a child attribute is mandatory - always write the element with attribute even if it is empty
19104 Removed runtime warnings for assigning xmlptrs to "null" pointers. Runtime warning for *using* null pointers remains.
19067 xmlwrite() - Write attributes of element even if they are empty but declared "mandatory/required"
Integration Server 4.7 sp 2
18938 callas() now has correct return code - should be process exit code
18934 Edi-C function call() changed so that it returns exit code of called program instead of process id.
18814 flatread() with excel style - Fixed bug that meant we only ever read from the first worksheet in excel.
18783 Added function: xtradesetattribute()
Integration Server 4.7 sp 1
18650 Fixed a buffer problem bug in flatread(), when a record label is longer than the next line.
18535 Function edicm() ends with releasing SQL handles which were not closed in program
Integration Server 4.7 sp 1
18500 flatread() with excel style - Worked around an oddity in excel which asked to save a file, even with no changes.
18426 Zip functions error messages now mention which file they failed with.
18335 SqlInsert now works with codepages, and unicode columns.
18334 edi-c's codepageset and codepageget commands are working now. codepageset (), codepageset ("") and codepageset ("0") all set to default (of 0, or 'built in') codepageset (1256) sets codepage directly codepageset ("cs") sets codepage via locale info - but ONLY on Vista or later.
18274 Extended check when null xmlptr is used in arithmetic
18232 xmlread() - Allow undeclared xml elements
18141 fixed bug for negative decimal values
18135 new tradacom parser
18080 Fixed a bug in tracing edi-c functions.
18023 new file style SIE
18011 fixed advanced routing bug
17957 Finished changing call(), callas() and callquiet() edi-c commands.
17950 Advanced routing is now done entirely in the interpreter - no compiler modules affected
17898 Function call() returned 16 bit integer value - changed so it returns 32 bit integer value
17865 EXEC SQL DECLARE xxx CURSOR START (n) STOP (n) Function SqlFetch - used SQLFetchScroll
17776 Removed the requirement for a record to have at least one field.
Integration Server 4.6 sp3
17544 bug when indexing XML elements like Doc.Elem[2].pcdata
17445 better error messages
17442 advanced routing

 

 


Hardware and software requirements

Minimal hardware:
• 512 MB RAM
• 100 MB free HDD space
Recommended hardware:
• Dual core processor
• 2 GB RAM
• 30 GB free HDD space
Software requirements:
• Windows XP SP2, Vista, Server 2003, Server 2008 (x86 and x64 variants), Server 2008 R2, Server 2012, Server 2012 R2
• SQL Server 2005, 2008, 2008 R2,2012, 2012 R2, 2014 including Express variants
• .NET Framework 2.0
• .NET Framework 4.0

Installation
Close all Integration Server applications and run the installer as administrator. If the Integration
Server service is running, you will be asked whether you want to have it shut down by the installer or stop it
manually. Setup will not continue unless the service is stopped.
Setup now prompts for user credentials for Integration Server service (ibzis.exe), this can be set so that users in
a domain setting can set up a security context and, for instance, access restricted network resources. You have the
choice between running as the local system account and a custom account.
After setup have finished, please follow the Installation and Configuration chapters of the help file to get further
information. There is now a configuration wizards which will assist you in initial setup of Integration Server, it’s
automatically run the first time System Configuration is started.

Have more questions? Submit a request

0 Comments

Please sign in to leave a comment.
Powered by Zendesk