Hello all,
does anyone has a working signature for the EXCEL WORKBOOK->SAVEAS function?
I tryed to reduce to only 2 Params, filename (string) and fileformat (numeric) but allways get the following error :
S:0 P:0 F:OEXCEL / _ALIAS00000002 E: F: --> (); SHEET_SAVEAS; 2; [0]; $WORKBOOK$->SAVEAS(P_FILENAME,"51")
ICCDRV-COM-ERR Error with ICC system occurred, COM method has conflicting or illegal signature in its type library: Illegal optional argument placement
S:-1 P:-56 F:OEXCEL / _ALIAS00000002 E: F: --> (); SHEET_SAVEAS; 3; [-56]; if ($status != 0)
Kind regards
Norbert
------------------------------
Norbert Lauterbach
Infraserv Gmbh & Co. Höchst Kg
Frankfurt DE
------------------------------
Hello all,
I found the Solution for the Problem.
The property "WORKIDENTITY" seems to be very new.
It is not even mentioned at the Documentation : https://learn.microsoft.com/en-us/office/vba/api/excel.workbook.saveas#parameters
So my old Signature for saveas has 11 Parameters, whereas the newly generated signature has 13 Parameters!!!
Also they are all Optional, in this case it is not possible to delete them.
You have to call saveas with all 13 Parameters.
You can use "UT_OPTIONAL" or - if you don't have a value for them.
In the Uniface Documentation you can read :
Passing Optional Parameters
It is possible to mark a parameter of a COM Call-Out operation as optional by specifying a hyphen (-) or the string "UT_OPTIONAL". For example:
hHandle -> FIND (RESULT_, "WHAT", "UT_OPTIONAL", -, -, -, -, -, -, -)
But why is "-" generating an "warning: 1000 - Argument marked as optional.", whereas "UT_OPTIONAL" is not?
Kind regards
Norbert
------------------------------
Norbert Lauterbach
Infraserv Gmbh & Co. Höchst Kg
Frankfurt DE
------------------------------