I'm having a few issues with the python saprfc library. I'm using python saprfc 0.09.
Firstly, unspecified dates don't seem to be passed as 00000000 as I believe they should be; I think this bug has been fixed in some of the other connectors, but it still seems to be an issue in the python one.
Also, there seems to be an issue dealing with numerical values. A lot of numbers are wrong by some number of factors of 10. For example, the following code:
b = conn.discover('BAPI_EXCHRATE_GETCURRENTRATES')
b.DATE.setValue('20061010')
b.DATE_TYPE.setValue('V')
b.RATE_TYPE.setValue('M')
conn.callrfc(b)
print b.EXCH_RATE_LIST.hashRows().next()['EXCH_RATE']
returns 03.11870, whereas the equivalent Ruby prints 0031.18700, which agrees with the SAP GUI.
I was also wondering whether it would it be possible to specify the encoding used by the SAP system, and have saprfc return all strings as unicode? At the moment I have to call str.decode('ISO-8859-1') on every string value I recieve from saprfc, so it would be really useful if the library performed this decoding before returning strings.
Finally, I was also wondering why it's possible to convert a table to an iterator over a list of dicts with bapi.TABLE.hashRows(), but to convert a structure to a hash one has to do bapi.STRUCTURE.structure.toHash(bapi.STRUCTURE.value)? Couldn't this be done with bapi.STRUCTURE.toHash()?