The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.
Revision history for Perl extension SAPRfc.

0.01  Sat May 29 17:47:22 1999
	- original version; created by h2xs 1.19

0.02  Fri Jul 16 19:27:22 1999
   Documentation for modules added
   Examples added to SAPRfc POD
   Numerous bugs fixed in interface discover
   Structure discovery added
   Exceptions added to interface definition

0.03  Mon Jul 19 05:30:00 1999
   Change SAPInterface Exports(), Imports(), Tables methods to return 
     a list of objects insteadof names
   Change SAPRfc connect() method to accept login parameters
   Fix bug in SAPStructure for updating structure with NULL records
   Fix bug with interface discovery for default values - SPACE word
     means put space in field( doh!), literals are single quoted eg.
     'X'.

0.04  Wed Jul 21 17:00:00 1999
  Completely renamed all modules to SAP::xxx standard - sorry guys
    but it is better to bite this one now than later!
  Fixed bug in structure discovery for interface discovery - it was not 
    always picking that a table had a structure.
  Fixed nasty bug in returning import parameter values.
  Created sample IDOC posting program for Purchase Orders

0.05  Sat Sep 04 10:00:00 1999
  Thanks to Frederic Huet who highlighted some bugs:
  Fixed - bad C code for import parameters
  Fixed discovery problem for Date and Time data types - these get a basic
    default value of zeros.

0.10  Sat Sep 11 22:00:00 1999
  Changed the structure routine to not pack and unpack the "whole" value
  all the time - now it keeps track of when component or overall value 
  changes in order to decide when to pack/unpack.

0.11  Sat Oct 04 19:00:00 1999
  Fixed a bug in date checking for Export parameter - did not allow 10 for
  month.
  Changed Structure.pm to default 0's for date and time data types if they are
  null.
  Cleaned up Rfc.xs to remove unused functions, and declarations.

0.12 Sometime on Monday Oct 25th 1999
  Johan Schon pointed out a problem with the t/test.t script $^W = 0 not undef.
  Fixed a problem with the discovery routines where the structures for the standard RFCs
    change between releases 3.x and 4.x+ ( RFC_GET* ).
  Used #defines to remove declarations from Rfc.xs that have caused problems with 
    compilation under Win32 - Fred.
 
0.15 Tuesday 16th  Nov 1999
  DJ sent in problems with warns coming up when using -W and use strict - a lot of these
    warnings have been fixed, but some may still exist?
  Major new release with the xml based rfc message passing ( perl <-> xs ), which also
    includes dynamic memory allocation for working storage - the method xmlrfc in Rfc.pm
    replaces callrfc if you choose to use this functionality.  callrfc remains untouched.
  dumpdef() Methods added to Interface.pm, Table.pm, Export.pm, and Import.pm to allow
    easy printing out of the object definitions - this is essentially a debugging tool.
 
 
0.16 Monday 22th  Nov 1999
  Sorry! - an annoying change has been made so that a $rfc->callrfc or a $rfc->xmlrfc now requires an arguement of an SAP::Interface object instead of the name of the interface.  This change is necessary to allow more than one instance of the same RFC call to be made within a threaded perl application.  This will eventually make the $rfc->addInterface, and $rfc->deleteInterface methods redundant, as the Interface object becomes divorced from the connectin object ( SAP::Rfc ).
  Introduced a new method in SAP::Interface to generate a code stub for a given interface - the method is $iface->Gencode($file);  It take a target source code file as an arguement.  The file is filled with a single method that returns a complete SAP::Interface object for the specified RFC Interface.  This is a time saver for complex interface definitions where you can't afford to have the overhead of using the $rfc->discover routine.
  The same method has been added to the SAP::Structure object so that structure definition code stubs can be automatically generated.  This is particularly useful for IDOC related programs that often will use many different and complex structures.  The examples program idoc.pl in the examples directory of the distribution generates a complete program stub for a given IDOC ( well worth a look ! ).

0.91 Tuesday 20th March, 2001

Completely rewritten the interface to use Inline::C


0.93 Tuesday 29th May, 2001

Added in a module SAP::SOAP that uses SOAP::Lite to support SOAP requests
Fixed INT1 and INT2 support in Structures


0.94 Wednesday 30th May, 2001

Fixed a sort order problem in SAP::Struc using cmp instead of <=> - Thank you Ivo Clarysse.
Tidied up the documentation a bit as it is way out of date.

0.96 Fri Dec 28 13:35:17 GMT 2001 

Fixed a problem with sub nextRow in SAP::Iface, which was due to earlier changes in SAP::Struc.

0.97 Fri Feb 22 09:19:00 GMT 2002 

Fixed a problem with the installer - the version nos were wrong
Added in the SECUDE login parameters

0.98 Fri Tue 26 09:00:00 GMT 2002 

Quote login paramters so that parameters with spaces in them can be passed.

0.99 Fri 19.04.2002
As per a bug fix from Jan Hebler - change the test for the return code for the Inline portion of the rfc call to a string compare - gets rid of yucky warning messages.
Fix problesm with running Inline based programs under Apache/mod_perl
Add in the ability to pass in table values ( rows ) as an array ref of hash refs - the hash refs contain a hash of the table structure key/value pairs.  The same has been done for parameters that have structures.
Note: the whole record/complex parameter values can still be passed in as strings.

1.00 Fri 05.11.2002
Remove dependency on Inline::C ( go back to using pure XS ), and control the exit on bad connects better

1.02 Fri Nov 29 12:27:45 GMT 2002
Rearranged the test suite, and fixed up makesoap.pl etc.
fixed a bug to do with export parameter structures.

1.03 Tue Dec 10 06:34:42 GMT 2002
Fixed a problem with export parameters where empty structures (structures where a value has never been set) are not initialised properly.

1.04 Fri Dec 20 09:42:14 GMT 2002
Fixed a problem with mis-interpreting integers courtesy of Thomas Gobel


1.05 Wed Jan 29 07:00:04 GMT 2003
Fixed a long time (annoying) problem with numeric comparison of alpha
on checking the RETURN_CODE of an RFC call.

1.06 Thu Jan 30 19:30:40 GMT 2003
Added another internal type for structures - h - see EXID/INTYPE (there maybe more in the future)
Lots of useful bits from Martin Kaemmerling, including compile fixes for Aix, and Hashes passed into Parameters for structures etc.


1.07 Mon Feb 24 13:34:09 GMT 2003
  - fixed an old bug with empty BCD field types
  - opefully suppressed a warning arroung $self->{VALUE} for parms

1.08 Wed Mar 19 10:28:19 GMT 2003
  - created a work arround for the autoload of VERSION problem

1.09 Thu Apr  3 07:46:16 BST 2003
  - added support for endianess of INT4s courtesy of Pavel Smirnov
  - Add error() message accessor from the SAP::Rfc object
    courtesy of  Dobrica Pavlinusic

1.10 Fri Apr 25 07:05:11 BST 2003
  - work on tidying up the C code in Rfc.xs

1.11 Thu May  1 11:28:28 BST 2003
  - major revision to include registered RFC with a callback framework
    to enable access from SAP to Perl code.

1.12 Wed May  7 10:04:16 BST 2003
  - fix a bug with empty tables coming in from registered RFC calls

1.13 Tue May 13 16:26:30 BST 2003
  - added patch to fix global symbol load problem on HP-UX with help from
    Gerhard

1.14 Wed May 21 18:04:47 BST 2003
  - fix compile issues under WIN32

1.15 Wed Jun  4 14:33:27 BST 2003
  - fix a bug with returning complex parameter values

1.16 Sun Jun  8 04:59:36 BST 2003
  - remove printf for registered rfcs
  - fix backward compat issue with RfcLastEx, and RfcLast and Solaris

1.17 Fri Aug 29 07:30:19 BST 2003
  - fixed errors for the initial value as found by Oliver Boudry

1.18 Mon Sep  1 10:06:06 BST 2003
  - Oliver Boudry has supplied me with PPD based install packages for Win32.


1.20 Fri Sep 19 07:04:18 NZST 2003
 - Dirk Lachowski discovered a bug in sub DESTROY {} that meant the current open RFC connection was not being automatically cleaned up.