Menu

#435 integer property return None

open
nobody
com (105)
5
2009-07-10
2009-07-10
No

With Pywin32 Build 210..213,
self.TransSeqNo always return None

I also try
self._oleobj_.invoke(1, 0, 3, True) #disp_id, LCID, (PROP+METHOD), ResultNeeded
the result is the same.

While VB & Delphi return integer data correctly.

What went wrong ?

# Reference
# VB: Property TransSeqNo As Long
# TLB: HRESULT TransSeqNo([out, retval] long *pVal)

class IFpTransaction(DispatchBaseClass):
"""IFpTransaction Interface"""
CLSID = IID('{FD4E0B96-CF0B-11D3-BCEC-005004125A39}')
coclass_clsid = IID('{FD4E0B97-CF0B-11D3-BCEC-005004125A39}')
_prop_map_get_ = {
"AuthId": (16, 2, (17, 0), (), "AuthId", None),
"CurrencyCode": (29, 2, (8, 0), (), "CurrencyCode", None),
# Method 'FinishTime' returns object of type 'ITimeStamp'
"FinishTime": (23, 2, (9, 0), (), "FinishTime", '{2A09B624-7836-4620-A35F-2417B2653DF6}'),
"FormattedMoney": (10, 2, (8, 0), (), "FormattedMoney", None),
"FpId": (9, 2, (17, 0), (), "FpId", None),
"FuellingModeId": (17, 2, (17, 0), (), "FuellingModeId", None),
"GradeDescriptor": (21, 2, (17, 0), (), "GradeDescriptor", None),
"GradeId": (8, 2, (17, 0), (), "GradeId", None),
"GradeOptionNo": (20, 2, (17, 0), (), "GradeOptionNo", None),
"Money": (12, 2, (4, 0), (), "Money", None),
"MoneyDue": (7, 2, (4, 0), (), "MoneyDue", None),
"MoneyDueValid": (5, 2, (11, 0), (), "MoneyDueValid", None),
"Price": (11, 2, (4, 0), (), "Price", None),
"PriceGroupId": (18, 2, (17, 0), (), "PriceGroupId", None),
"PriceSetId": (19, 2, (17, 0), (), "PriceSetId", None),
"SecurityTelegram": (30, 2, (8209, 0), (), "SecurityTelegram", None),
"SecurityTelegramTypePSS": (31, 2, (8209, 0), (), "SecurityTelegramTypePSS", None),
"ServiceModeId": (2, 2, (17, 0), (), "ServiceModeId", None),
"StartLimit": (27, 2, (4, 0), (), "StartLimit", None),
"StartLimitType": (26, 2, (3, 0), (), "StartLimitType", None),
# Method 'StartTime' returns object of type 'ITimeStamp'
"StartTime": (22, 2, (9, 0), (), "StartTime", '{2A09B624-7836-4620-A35F-2417B2653DF6}'),
"Supervised": (28, 2, (11, 0), (), "Supervised", None),
"TransErrorCode": (25, 2, (3, 0), (), "TransErrorCode", None),
"TransInfoMask": (3, 2, (17, 0), (), "TransInfoMask", None),
"TransLockId": (4, 2, (17, 0), (), "TransLockId", None),
"TransSeqNo": (1, 2, (3, 0), (), "TransSeqNo", None),
"TransTerminationStatus": (24, 2, (17, 0), (), "TransTerminationStatus", None),
"Volume": (6, 2, (4, 0), (), "Volume", None),
}

IFpTransaction_vtables_dispatch_ = 1
IFpTransaction_vtables_ = [
(( u'TransSeqNo' , u'pVal' , ), 1, (1, (), [ (16387, 10, None, None) , ], 1 , 2 , 4 , 0 , 28 , (3, 0, None, None) , 0 , )),
(( u'ServiceModeId' , u'pVal' , ), 2, (2, (), [ (16401, 10, None, None) , ], 1 , 2 , 4 , 0 , 32 , (3, 0, None, None) , 0 , )),
(( u'TransInfoMask' , u'pVal' , ), 3, (3, (), [ (16401, 10, None, None) , ], 1 , 2 , 4 , 0 , 36 , (3, 0, None, None) , 64 , )),
(( u'TransLockId' , u'pVal' , ), 4, (4, (), [ (16401, 10, None, None) , ], 1 , 2 , 4 , 0 , 40 , (3, 0, None, None) , 0 , )),
(( u'MoneyDueValid' , u'pVal' , ), 5, (5, (), [ (16395, 10, None, None) , ], 1 , 2 , 4 , 0 , 44 , (3, 0, None, None) , 0 , )),
(( u'Volume' , u'pVal' , ), 6, (6, (), [ (16388, 10, None, None) , ], 1 , 2 , 4 , 0 , 48 , (3, 0, None, None) , 0 , )),
(( u'MoneyDue' , u'pVal' , ), 7, (7, (), [ (16388, 10, None, None) , ], 1 , 2 , 4 , 0 , 52 , (3, 0, None, None) , 0 , )),
(( u'GradeId' , u'pVal' , ), 8, (8, (), [ (16401, 10, None, None) , ], 1 , 2 , 4 , 0 , 56 , (3, 0, None, None) , 0 , )),
(( u'FpId' , u'pVal' , ), 9, (9, (), [ (16401, 10, None, None) , ], 1 , 2 , 4 , 0 , 60 , (3, 0, None, None) , 0 , )),
(( u'FormattedMoney' , u'pVal' , ), 10, (10, (), [ (16392, 10, None, None) , ], 1 , 2 , 4 , 0 , 64 , (3, 0, None, None) , 0 , )),
(( u'Price' , u'pVal' , ), 11, (11, (), [ (16388, 10, None, None) , ], 1 , 2 , 4 , 0 , 68 , (3, 0, None, None) , 0 , )),
(( u'Money' , u'pVal' , ), 12, (12, (), [ (16388, 10, None, None) , ], 1 , 2 , 4 , 0 , 72 , (3, 0, None, None) , 0 , )),
(( u'lock' , u'PosId' , ), 13, (13, (), [ (17, 1, None, None) , ], 1 , 1 , 4 , 0 , 76 , (3, 0, None, None) , 0 , )),
(( u'unlock' , u'PosId' , ), 14, (14, (), [ (17, 1, None, None) , ], 1 , 1 , 4 , 0 , 80 , (3, 0, None, None) , 0 , )),
(( u'Clear' , u'PosId' , ), 15, (15, (), [ (17, 1, None, None) , ], 1 , 1 , 4 , 0 , 84 , (3, 0, None, None) , 0 , )),
(( u'AuthId' , u'pVal' , ), 16, (16, (), [ (16401, 10, None, None) , ], 1 , 2 , 4 , 0 , 88 , (3, 0, None, None) , 0 , )),
(( u'FuellingModeId' , u'pVal' , ), 17, (17, (), [ (16401, 10, None, None) , ], 1 , 2 , 4 , 0 , 92 , (3, 0, None, None) , 0 , )),
(( u'PriceGroupId' , u'pVal' , ), 18, (18, (), [ (16401, 10, None, None) , ], 1 , 2 , 4 , 0 , 96 , (3, 0, None, None) , 0 , )),
(( u'PriceSetId' , u'pVal' , ), 19, (19, (), [ (16401, 10, None, None) , ], 1 , 2 , 4 , 0 , 100 , (3, 0, None, None) , 0 , )),
(( u'GradeOptionNo' , u'pVal' , ), 20, (20, (), [ (16401, 10, None, None) , ], 1 , 2 , 4 , 0 , 104 , (3, 0, None, None) , 0 , )),
(( u'GradeDescriptor' , u'pVal' , ), 21, (21, (), [ (16401, 10, None, None) , ], 1 , 2 , 4 , 0 , 108 , (3, 0, None, None) , 64 , )),
(( u'StartTime' , u'pVal' , ), 22, (22, (), [ (16393, 10, None, "IID('{2A09B624-7836-4620-A35F-2417B2653DF6}')") , ], 1 , 2 , 4 , 0 , 112 , (3, 0, None, None) , 0 , )),
(( u'FinishTime' , u'pVal' , ), 23, (23, (), [ (16393, 10, None, "IID('{2A09B624-7836-4620-A35F-2417B2653DF6}')") , ], 1 , 2 , 4 , 0 , 116 , (3, 0, None, None) , 0 , )),
(( u'TransTerminationStatus' , u'pVal' , ), 24, (24, (), [ (16401, 10, None, None) , ], 1 , 2 , 4 , 0 , 120 , (3, 0, None, None) , 0 , )),
(( u'TransErrorCode' , u'pVal' , ), 25, (25, (), [ (16387, 10, None, None) , ], 1 , 2 , 4 , 0 , 124 , (3, 0, None, None) , 0 , )),
(( u'StartLimitType' , u'pVal' , ), 26, (26, (), [ (16387, 10, None, None) , ], 1 , 2 , 4 , 0 , 128 , (3, 0, None, None) , 0 , )),
(( u'StartLimit' , u'pVal' , ), 27, (27, (), [ (16388, 10, None, None) , ], 1 , 2 , 4 , 0 , 132 , (3, 0, None, None) , 0 , )),
(( u'Supervised' , u'pVal' , ), 28, (28, (), [ (16395, 10, None, None) , ], 1 , 2 , 4 , 0 , 136 , (3, 0, None, None) , 0 , )),
(( u'CurrencyCode' , u'pVal' , ), 29, (29, (), [ (16392, 10, None, None) , ], 1 , 2 , 4 , 0 , 140 , (3, 0, None, None) , 0 , )),
(( u'SecurityTelegram' , u'pVal' , ), 30, (30, (), [ (24593, 10, None, None) , ], 1 , 2 , 4 , 0 , 144 , (3, 0, None, None) , 0 , )),
(( u'SecurityTelegramTypePSS' , u'pVal' , ), 31, (31, (), [ (24593, 10, None, None) , ], 1 , 2 , 4 , 0 , 148 , (3, 0, None, None) , 0 , )),
(( u'ClearAndAddReceiptItem' , u'PosId' , u'ClearSeqParms' , ), 32, (32, (), [ (17, 1, None, None) ,
(9, 1, None, "IID('{3460EA4B-31E3-451B-92E2-94A05D8BC379}')") , ], 1 , 1 , 4 , 0 , 152 , (3, 0, None, None) , 0 , )),
(( u'ClearWithParms' , u'PosId' , u'pClearTransParms' , ), 33, (33, (), [ (17, 1, None, None) ,
(9, 1, None, "IID('{B1DF33BE-0A54-4D8A-8F5A-827B49209555}')") , ], 1 , 1 , 4 , 0 , 156 , (3, 0, None, None) , 0 , )),
]

Discussion

  • Santi Wangkerkoon

     
  • Santi Wangkerkoon

    .py file generated from makepy

     
  • Santi Wangkerkoon

    Usage Pattern
    The code below shows minimum step to the problem.

    # full interface is in attached file 'interface_py.zip'
    FcServer = Dispatch('PSS.Forecourt')
    FcConfig = Dispatch(FcServer, None, IID('{9C255624-C1B0-11D3-BCDC-005004125A39}'))
    FcServer.HostName = 'localhost'
    FcServer.PosId = 9
    FcServer.Initialize()
    FcServer.FcLogon('POS,APPL_ID=APP01')

    pumpID = 1
    for xf in FcConfig.FuellingPoints.Item(pumpID).TransCollection:
    print(xf.GradeOptionNo) # numeric eg. 1
    print(xf.TransSeqNo) # always None !