Skip to Main Content
Python Programming On Win32
book

Python Programming On Win32

by Andy Robinson, Mark Hammond
January 2000
Intermediate to advanced content levelIntermediate to advanced
672 pages
21h 46m
English
O'Reilly Media, Inc.
Content preview from Python Programming On Win32

More About Transactions

You’ll want to add and edit individual transactions. This leads to more fundamental design considerations. You need to expose Transaction class as a COM server. You also need to think about how to create these transactions and manage their lifecycles and about the right choice of patterns. One option is to make a COMTransaction class the same way we did for COMBookset.

The overall goal is to make sure that code that works with transactions in VB is as similar as possible to the corresponding code in Python. The VB code to create and add a new transaction looks like this:

    Dim newtran As Object
    
    Set newtran = CreateObject("Doubletalk.Transaction")
    newtran.setDateString "31/12/99"
    newtran.setComment "Python on Windows Royalty Cheque"
    newtran.addLine "MyCo.Assets.NCA.CurAss.Cash", 5000
    newtran.addLastLine "MyCo.Capital.PL.Income.Writing"
    
    BookServer.Add newtran

There is another choice, however. Adding a factory method to BookServer gives a new transaction (outside of the BookSet but otherwise fully formed). In this case there is no need to register the class at all; it’s never created directly from the registry. Microsoft Office uses this model a lot. Most of the Excel objects are obtained from the application object’s factory methods and are not directly creatable. If you go this way, your VB code to add a transaction looks like this:

 Dim newtran As Object Set newtran = BookServer.CreateTransaction newtran.setDateString "31/3/2000" newtran.setComment "Even more ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Qt5 Python GUI Programming Cookbook

Qt5 Python GUI Programming Cookbook

B.M. Harwani

Publisher Resources

ISBN: 1565926218Supplemental ContentErrata Page