[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Where is my DS sub fields ?



   As far as I can see the digits and fractions restrictions are properly
   retrieved from the wsdl file for numeric values. Unfortunately that is
   not true for the 'maxLength' restriction, which is set in module
   WSDL2R05, procedure cbRestrictionStart(). Therefore the character
   fields of your wsdl, which actually are meant to take numeric values
   (such as "numeric5"), are generated as 128A fields which allows you to
   specify values that are too large. Feel free to change the following
   statements of module WSDL2R05:
   when (i_xPath = cWSDL_SECTION_RESTRICTION_MAXLENGTH);
      value = f_val(XMLSAXParser_getAttributeValueByQName(
                       attrList: cXSD_ATTR_VALUE));
      // if (TypeDef_getLength(type) <> -1);
         TypeDef_setLength(type: value);
      // endif;
   when (i_xPath = cWSDL_SECTION_RESTRICTION_TOTAL_DIGITS);
   Then compile the module and update program WSDL2RPG. Now your DS
   should be generated like this:
   D n1_decimal9_6_t...
   D                 S              9S 6 based(pDummy)
   D n1_numeric10_t  S             10A   varying
   D                                     based(pDummy)
   D n1_numeric2_t   S              2A   varying
   D                                     based(pDummy)
   D n1_numeric3_t   S              3A   varying
   D                                     based(pDummy)
   D n1_numeric4_t   S              4A   varying
   D                                     based(pDummy)
   D n1_numeric5_t   S              5A   varying
   D                                     based(pDummy)
   I do not think that I will backport that fix to v1.13.x. But of course
   I will have fixed it in 1.14beta10 (coming soon).
   Last but not least, please keep in mind, that so far WSDL2RPG does not
   verify any values or enforce any special rules, such as patterns or
   enumerations. That is the obligation of the user of WSDL2RPG. Frankly
   I do not really want to start adding such things because I fear to
   open Pandora's Box.
   Thomas.
   ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx schrieb am 07.07.2011 18:24:40:
   > Von: thomas.raddatz@xxxxxxxxxxx
   > An: ftpapi@xxxxxxxxxxxxxxxxxxxxxx
   > Datum: 07.07.2011 21:38
   > Betreff: Re: Where is my DS sub fields ?
   > Gesendet von: ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx
   >
   > I am at home and hence cannot get deeper into the problem but I
   assume that
   > WSDL2RPG did not retrieve some field length restrictions from the
   WSDL, but
   > used the defaults instead. Hence you may have been able to specify a
   > numeric value with to many fraction digits.
   >
   > I'll try to check that tomorrow, when I am in the office.
   >
   > Thomas.
   >
   > Am 07.07.2011 17:16, schrieb Dhanushka Manjula:
   > >
   > >     Hi,
   > >           1)      No need to down to your knees, This tool with
   HTTPAPI
   > >     are million times smarter than wsdl2ws&  ibm-wsdl2rpg. :)
   > >
   > >     2)      That one line makes everything perfect&  I checked
   each DS
   > >     with wsdl&  all fine. Thank you very much
   > >
   > >     3)      Now soap operation returns some strange errors
   > >       *   HttpError :
   > >
   > >     13: HTTP/1.1 500 Internal Server Error
   > >       * SoapError
   > >
   > >      soap-env:Server: CX_SY_CONVERSION_LOST_DECIMALS:XSLT
   exception.An
   > >     error occurred when deserializing in the simple transformation
   > >
   > >     Think this is a mistake from my side (or server side)&  let me
   try it
   > >     with simple PC application to rectify
   > >
   > >     Ill inform my progress soon..
   > >
   > >     Thanks Again
   > >
   > >     On Thu, Jul 7, 2011 at 2:44 AM,<[1]thomas.raddatz@xxxxxx>
   wrote:
   > >
   > >         You got me down to my knees. The problem is a bug in
   procedure
   > >         produceNameForRpgArray() of module WSDL2R59. Please change
   the
   > >         following lines at the end of the procedure to:
   > >             if (tmpNS = '');
   > >                refTypeName = cGENERATOR_RPG_ARRAY_PREFIX +
   tmpLName;
   > >             else;
   > >                refTypeName = tmpNS + ':' +
   cGENERATOR_RPG_ARRAY_PREFIX +
   > >         tmpLName;
   > >             endif;
   > >          ->  tmpQName = QName_newName(refTypeName);         //
   produce
   > >         qualified name
   > >          ->  tmpQName = TypeDef_produceName(tmpQName: '');  // and
   ensure
   > >       that
   > >         it is unique
   > >             refTypeName = QName_toXml(tmpQName);
   > >             return refTypeName;
   > >         Then compile the module and link program WSDL2RPG like
   this:
   > >           CRTRPGMOD MODULE(RADDATZ/WSDL2R59)
   SRCFILE(RADDATZ/QWSDL2RPG)
   > >             SRCMBR(WSDL2R59) DBGVIEW(*LIST) TRUNCNBR(*NO)
   > >           UPDPGM PGM(RADDATZ/WSDL2RPG) MODULE(RADDATZ/WSDL2R59)
   > >         That should fix the problem.
   > >         Thomas.
   > >         [2]ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx schrieb am
   07.07.2011
   > >       10:32:54:
   > >
   > >       >  Von: [3]dhanushkamanjula@xxxxxxxxx
   > >       >  An: [4]ftpapi@xxxxxxxxxxxxxxxxxxxxxx
   > >
   > >         >  Datum: 07.07.2011 10:51
   > >         >  Betreff: Re: Where is my DS sub fields ?
   > >
   > >       >  Gesendet von: [5]ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx
   > >       >
   > >
   > >       >  Hi Thomas,
   > >       >  Many thank for your quick response,
   > >       >
   > >       >  The request parameters makes me confuse because it is not
   the way
   > >       wsdl was
   > >       >  define
   > >       >
   > >       >  In wsdl this is the way to post a message......
   > >       >
   > >       >    <wsdl:message name="ZbapiAccDocumentPost">
   > >       >      <wsdl:part name="parameters"
   > >       element="tns:ZbapiAccDocumentPost"/>
   > >       >    </wsdl:message>
   > >       >
   > >       >  Inside the post message, it has many parameters (I'm only
   going
   > >       through the
   > >       >  Accountgl yet)
   > >       >
   > >       >  <xsd:element name="ZbapiAccDocumentPost">
   > >       >          <xsd:complexType>
   > >       >            <xsd:sequence>
   > >       >              <xsd:element name="Accountgl"
   > >       type="tns:TableOfBapiacgl09"
   > >       >  minOccurs="0"/>
   > >       >              <xsd:element name="Accountpayable"
   > >       type="tns:TableOfBapiacap09"
   > >       >  minOccurs="0"/>
   > >       >
   > >       >  You can see, the Accountgl type is TableOfBapiacgl09 and
   It was
   > >       define in
   > >       >  someting like this in wsdl
   > >       >
   > >       >        <xsd:complexType name="TableOfBapiacgl09">
   > >       >          <xsd:sequence>
   > >       >            <xsd:element name="item" type="tns:Bapiacgl09"
   > >       minOccurs="0"
   > >       >  maxOccurs="unbounded"/>
   > >       >          </xsd:sequence>
   > >       >        </xsd:complexType>
   > >       >
   > >       >  It name is 'item'&  type is 'Bapiacgl09'
   > >       >
   > >       >        <xsd:complexType name="Bapiacgl09">
   > >       >          <xsd:sequence>
   > >       >            <xsd:element name="ItemnoAcc"
   type="n0:numeric10"/>
   > >       >            <xsd:element name="GlAccount"
   type="n0:char10"/>
   > >       >            <xsd:element name="ItemText" type="n0:char50"/>
   > >       >            <xsd:element name="StatCon" type="n0:char1"/>
   > >       >            <xsd:element name="LogProc" type="n0:char6"/>
   > >       >            <xsd:element name="AcDocNo" type="n0:char10"/>
   > >       >            <xsd:element name="RefKey1" type="n0:char12"/>
   > >       >            <xsd:element name="RefKey2" type="n0:char12"/>
   > >       >            <xsd:element name="RefKey3" type="n0:char20"/>
   > >       >
   > >       >
   > >       >  now 'Bapiacgl09' has fields for ItemnoAcc,GlAccount,,
   ect.
   > >       >
   > >       >  but in RPG stub, it is map to another DS called
   'Bapiackec9' which
   > >       is not
   > >       >  correct..
   > >       >  What should I do?
   > >       >
   > >       >  Thanks
   > >       >
   > >       >
   > >       >  On Thu, Jul 7, 2011 at 1:11 PM,<[6]thomas.raddatz@xxxxxx>
    wrote:
   > >       >
   > >       >  >
   > >
   > >       >  >    I am not sure that I completely unterstand the
   problem.
   > >       >  >    First there is no need for changing the stub module
   in order
   > >     to
   > >       assign
   > >       >  >    data to the SOAP request (post) message.
   > >       >  >    All you have to do is to fill structure
   > >       "tns_ZbapiAccDocumentPost_t"
   > >       >  >    and pass it to procedure
   > >       >  >    ZBAPI_ACC_DOCUMENT_POST_ZbapiAccDocumentPost(). The
   attached
   > >       test
   > >       >  >    program clearly shows how to access the fields of
   structure
   > >       >  >    "Accountgl":
   > >       >  >             // Set the paramater values of the request
   message
   > >       >  >             // of the web service.
   > >       >  >             //    assign values here
   > >       >  >             // Set number of array items:
   > >       >  >             parameters.Accountgl.item.x = 1;
   > >       >  >             // Set array item values:
   > >       >  >
   > >       >  >
   > >
   parameters.Accountgl.item.Bapiackec9(parameters.Accountgl.item.x
   > >       >  >             ).ItemnoAcc = '0000000010';
   > >       >  >
   > >       >  >
   > >
   parameters.Accountgl.item.Bapiackec9(parameters.Accountgl.item.x
   > >       >  >             ).Fieldname = 'string';
   > >       >  >
   > >       >  >
   > >
   parameters.Accountgl.item.Bapiackec9(parameters.Accountgl.item.x
   > >       >  >             ).Character = 'string';
   > >       >  >    Another option to get an overview of the structure
   of the
   > >       messages of
   > >       >  >    a given web service operation is to generate a
   stream file
   > >       showing
   > >       >  >    that structure. In order to produce that stream file
   you need
   > >     to
   > >       >  >    specify PARMSTRUCT(*STMF) and
   > >     STRUCTSTMF('pathofTheStreamfile')
   > >       at the
   > >       >  >    WSDL2RPG command prompt:
   > >       >  >      WSDL2RPG
   > >       URL('wsdl2rpg/wsdl/ZBAPI_ACC_DOCUMENT_POST_WO_AUTH.wsdl')
   > >       >  >        SRCFILE(RADDATZ/QWSDL2RPG) SRCMBR(XXX001 *YES)
   > >       >  >        PARMSTRUCT(*STMF)
   > >       >  >
   > >
   STRUCTSTMF('wsdl2rpg/wsdl/ZBAPI_ACC_DOCUMENT_POST_WO_AUTH.txt')
   > >       >  >    First lines of the stream file:
   > >       >  >    WSDL2RPG Service Request and Response Parameter
   Structures
   > >       >  >
   ----------------------------------------------------------
   > >       >  >    Generated at:  07.07.2011 / 08:46:58
   > >       >  >    WSDL URL    :
   > >
   > >         >  >
   > >
   [1][1][1]file:wsdl2rpg/wsdl/ZBAPI_ACC_DOCUMENT_POST_WO_AUTH.wsdl
   > >
   > >       >  >    Operation   :  tns:ZbapiAccDocumentPost
   > >       >  >    Service Request Parameters
   > >       >  >    --------------------------
   > >       >  >
   i_tns_ZbapiAccDocumentPost(tns_ZbapiAccDocumentPost_t)
   > >       >  >      Accountgl(tns_TableOfBapiacgl09_t)
   > >       >  >        item(tns_RpgArrayOfItem_t)
   > >       >  >          x(10I 0, *ARRAY_INDEX)
   > >       >  >          Bapiackec9(tns_Bapiackec9_t, *STATIC_ARRAY)
   > >       >  >            ItemnoAcc(n1_numeric10_t)
   > >       >  >            Fieldname(n1_char30_t)
   > >       >  >            Character(n1_char18_t)
   > >       >  >      Accountpayable(tns_TableOfBapiacap09_t)
   > >       >  >    Does that answer your question?
   > >       >  >    Thomas.
   > >       >  >    [7]ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx schrieb am
   07.07.2011
   > >       07:25:41:
   > >       >  >    >  Von: [8]dhanushkamanjula@xxxxxxxxx
   > >       >  >    >  An: [9]ftpapi@xxxxxxxxxxxxxxxxxxxxxx
   > >       >  >    >  Datum: 07.07.2011 07:38
   > >       >  >    >  Betreff: Where is my DS sub fields ?
   > >       >  >    >  Gesendet von:
   [10]ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx
   > >       >  >     >
   > >       >  >    >  Hi again,
   > >       >  >    >
   > >       >  >    >  I have a WSDL file. the post message have sub DS
   called
   > >       'Accountgl'
   > >       >  >    which is
   > >       >  >    >  type of TableOfBapiacgl09
   > >       >  >    >  The TableOfBapiacgl09 is define with DS called
   'Bapiacgl09'
   > >       >  >    >
   > >       >  >    >  The 'Bapiacgl09' DS contain sub fields named
   > >       >  >    >  ItemnoAcc,GlAccount,ItemText..ect
   > >       >  >    >
   > >       >  >    >  In my generated STUB source, I can't find those
   sub fields,
   > >       due to
   > >       >  >    that
   > >       >  >    >  reason I have no idea to how to assign the data
   > according to
   > >       SOAP
   > >       >  >    message
   > >       >  >    >
   > >       >  >    >  (not only 'Accountgl' but also 'Accountpayable',
   > >       'Accountreceivable'
   > >       >  >    gives
   > >       >  >    >  same issues)
   > >       >  >    >
   > >       >  >    >  -<Accountgl>
   > >       >  >    >  -<item>
   > >       >  >    >    <ItemnoAcc>0000000010</ItemnoAcc>
   > >       >  >    >    <GlAccount>0051300000</GlAccount>
   > >       >  >    >    <ItemText />
   > >       >  >    >  .
   > >       >  >    >  .
   > >       >  >    >  -</Accountgl>
   > >       >  >    >  -</item>
   > >       >  >    >
   > >       >  >    >
   > >       >  >    >  WSDL, STUB source&  PGM source are attached.
   > >       >  >    >
   > >       >  >    >  Please give me an idea of this...
   > >       >  >    >
   > >       >  >    >  Thanks
   > >       >  >     >  [Anhang "SAP0004.txt" gelöscht von Thomas
   Raddatz/OBI/DE]
   > >       [Anhang
   > >       >  >    >  "SAP0004t.txt" gelöscht von Thomas
   Raddatz/OBI/DE] [Anhang
   > >       >  >    >  "ZBAPI_ACC_DOCUMENT_POST_WO_AUTH.wsdl" gelöscht
   von Thomas
   > >       Raddatz/
   > >       >  >    >  OBI/DE]
   > >       >  >    >
   > >       >  >
   > >
   > >
   ----------------------------------------------------------------------
   > >       >  >    -
   > >       >  >    >  This is the FTPAPI mailing list.  To
   unsubscribe,please go
   > >       to:
   > >
   > >         >  >    >
   > >
   [2][2][11][2]http://www.scottklement.com/mailman/listinfo/ftpapi
   > >
   > >       >  >    >
   > >       >  >
   > >
   > >
   ----------------------------------------------------------------------
   > >       >  >    -
   > >       >  >
   > >       >  >    --
   > >       >  >    IMPORTANT NOTICE:
   > >       >  >    This email is confidential, may be legally
   privileged, and is
   > >       for the
   > >       >  >    intended recipient only. Access, disclosure,
   copying,
   > >       distribution, or
   > >       >  >    reliance on any of it by anyone else is prohibited
   and may be
   > >     a
   > >       >  >    criminal
   > >       >  >    offence. Please delete if obtained in error and
   email
   > >       confirmation to
   > >       >  >    the sender.
   > >       >  >
   > >       >  >  References
   > >       >  >
   > >
   > >         >  >    1.
   > >
   [3][3]file://wsdl2rpg/wsdl/ZBAPI_ACC_DOCUMENT_POST_WO_AUTH.wsdl
   > >         >  >    2.
   > >
   [4][12][4]http://www.scottklement.com/mailman/listinfo/ftpapi
   > >
   > >       >  >
   > >       >  >
   > >
   > >
   ----------------------------------------------------------------------
   > >       -
   > >       >  >  This is the FTPAPI mailing list.  To unsubscribe,
   please go to:
   > >
   > >         >  >
   [5][13][5]http://www.scottklement.com/mailman/listinfo/ftpapi
   > >         >  >
   > >
   > >
   -------------------------------------------------------------------
   > >       ---
   > >         -
   > >         >  >
   > >         >  >
   > >         >
   > >         >
   > >         >  --
   > >
   > >       >  Shoot for the moon, even if you miss, you'll land among
   the stars.
   > >       >
   > >
   > >
   > >
   ----------------------------------------------------------------------
   > >       -
   > >       >  This is the FTPAPI mailing list.  To unsubscribe, please
   go to:
   > >
   > >         >
   [6][14][6]http://www.scottklement.com/mailman/listinfo/ftpapi
   > >
   > >       >
   > >
   > >
   ----------------------------------------------------------------------
   > >       -
   > >       --
   > >       IMPORTANT NOTICE:
   > >       This email is confidential, may be legally privileged, and
   is for
   > >     the
   > >       intended recipient only. Access, disclosure, copying,
   distribution,
   > >     or
   > >       reliance on any of it by anyone else is prohibited and may
   be a
   > >       criminal
   > >       offence. Please delete if obtained in error and email
   confirmation
   > >     to
   > >       the sender.
   > >     References
   > >       1.
   [7]file://wsdl2rpg/wsdl/ZBAPI_ACC_DOCUMENT_POST_WO_AUTH.wsdl
   > >       2.
   [15][8]http://www.scottklement.com/mailman/listinfo/ftpapi
   > >
   > >         3.
   [9]file://wsdl2rpg/wsdl/ZBAPI_ACC_DOCUMENT_POST_WO_AUTH.wsdl
   > >         4.
   [16][10]http://www.scottklement.com/mailman/listinfo/ftpapi
   > >         5.
   [17][11]http://www.scottklement.com/mailman/listinfo/ftpapi
   > >         6.
   [18][12]http://www.scottklement.com/mailman/listinfo/ftpapi
   > >
   -------------------------------------------------------------------
   > >       ----
   > >       This is the FTPAPI mailing list.  To unsubscribe, please go
   to:
   > >       [19][13]http://www.scottklement.com/mailman/listinfo/ftpapi
   > >
   -------------------------------------------------------------------
   > >       ----
   > >
   > >     --
   > >     Shoot for the moon, even if you miss, you'll land among the
   stars.
   > >
   > > References
   > >
   > >     1. [14]mailto:thomas.raddatz@xxxxxx
   > >     2. [15]mailto:ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx
   > >     3. [16]mailto:dhanushkamanjula@xxxxxxxxx
   > >     4. [17]mailto:ftpapi@xxxxxxxxxxxxxxxxxxxxxx
   > >     5. [18]mailto:ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx
   > >     6. [19]mailto:thomas.raddatz@xxxxxx
   > >     7. [20]mailto:ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx
   > >     8. [21]mailto:dhanushkamanjula@xxxxxxxxx
   > >     9. [22]mailto:ftpapi@xxxxxxxxxxxxxxxxxxxxxx
   > >    10. [23]mailto:ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx
   > >    11. [24]http://www.scottklement.com/mailman/listinfo/ftpapi
   > >    12. [25]http://www.scottklement.com/mailman/listinfo/ftpapi
   > >    13. [26]http://www.scottklement.com/mailman/listinfo/ftpapi
   > >    14. [27]http://www.scottklement.com/mailman/listinfo/ftpapi
   > >    15. [28]http://www.scottklement.com/mailman/listinfo/ftpapi
   > >    16. [29]http://www.scottklement.com/mailman/listinfo/ftpapi
   > >    17. [30]http://www.scottklement.com/mailman/listinfo/ftpapi
   > >    18. [31]http://www.scottklement.com/mailman/listinfo/ftpapi
   > >    19. [32]http://www.scottklement.com/mailman/listinfo/ftpapi
   > >
   > >
   > >
   > >
   > >
   ----------------------------------------------------------------------
   -
   > > This is the FTPAPI mailing list.  To unsubscribe, please go to:
   > > [33]http://www.scottklement.com/mailman/listinfo/ftpapi
   > >
   ----------------------------------------------------------------------
   -
   >
   ----------------------------------------------------------------------
   -
   > This is the FTPAPI mailing list.  To unsubscribe, please go to:
   > [34]http://www.scottklement.com/mailman/listinfo/ftpapi
   >
   ----------------------------------------------------------------------
   -
   >

   --
   IMPORTANT NOTICE:
   This email is confidential, may be legally privileged, and is for the
   intended recipient only. Access, disclosure, copying, distribution, or
   reliance on any of it by anyone else is prohibited and may be a
   criminal
   offence. Please delete if obtained in error and email confirmation to
   the sender.

References

   1. file://wsdl2rpg/wsdl/ZBAPI_ACC_DOCUMENT_POST_WO_AUTH.wsdl
   2. http://www.scottklement.com/mailman/listinfo/ftpapi
   3. file://wsdl2rpg/wsdl/ZBAPI_ACC_DOCUMENT_POST_WO_AUTH.wsdl
   4. http://www.scottklement.com/mailman/listinfo/ftpapi
   5. http://www.scottklement.com/mailman/listinfo/ftpapi
   6. http://www.scottklement.com/mailman/listinfo/ftpapi
   7. file://wsdl2rpg/wsdl/ZBAPI_ACC_DOCUMENT_POST_WO_AUTH.wsdl
   8. http://www.scottklement.com/mailman/listinfo/ftpapi
   9. file://wsdl2rpg/wsdl/ZBAPI_ACC_DOCUMENT_POST_WO_AUTH.wsdl
  10. http://www.scottklement.com/mailman/listinfo/ftpapi
  11. http://www.scottklement.com/mailman/listinfo/ftpapi
  12. http://www.scottklement.com/mailman/listinfo/ftpapi
  13. http://www.scottklement.com/mailman/listinfo/ftpapi
  14. mailto:thomas.raddatz@xxxxxx
  15. mailto:ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx
  16. mailto:dhanushkamanjula@xxxxxxxxx
  17. mailto:ftpapi@xxxxxxxxxxxxxxxxxxxxxx
  18. mailto:ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx
  19. mailto:thomas.raddatz@xxxxxx
  20. mailto:ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx
  21. mailto:dhanushkamanjula@xxxxxxxxx
  22. mailto:ftpapi@xxxxxxxxxxxxxxxxxxxxxx
  23. mailto:ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx
  24. http://www.scottklement.com/mailman/listinfo/ftpapi
  25. http://www.scottklement.com/mailman/listinfo/ftpapi
  26. http://www.scottklement.com/mailman/listinfo/ftpapi
  27. http://www.scottklement.com/mailman/listinfo/ftpapi
  28. http://www.scottklement.com/mailman/listinfo/ftpapi
  29. http://www.scottklement.com/mailman/listinfo/ftpapi
  30. http://www.scottklement.com/mailman/listinfo/ftpapi
  31. http://www.scottklement.com/mailman/listinfo/ftpapi
  32. http://www.scottklement.com/mailman/listinfo/ftpapi
  33. http://www.scottklement.com/mailman/listinfo/ftpapi
  34. http://www.scottklement.com/mailman/listinfo/ftpapi
-----------------------------------------------------------------------
This is the FTPAPI mailing list.  To unsubscribe, please go to:
http://www.scottklement.com/mailman/listinfo/ftpapi
-----------------------------------------------------------------------