Héritage
Si les paramètres disponibles ne répondent pas aux attentes et que des modifications plus approfondies sont nécessaires, il est possible d’hériter des méthodes de la classe de base dans le script Python du plugin.
Exemple : réordonner l’en-tête du rapport
Pour changer l’apparence de la section en-tête en tant que premier, une classe héritée du même nom (ReportUtility) doit être créée.
Ensuite, la méthode Report.py cenheader doit être copiée dans le script et la modification requise peut y être effectuée.
def ModifyActiveProgram(Operator: CENPyOlpProgramModifyOperator): # ======== create a PDF Report =============
pdf = ReportUtility()
pdf.setLanguage("fr")
pdf.createAuxCommandsPDFReport(Operator, "")# ============================================
class ReportUtility(ReportUtility):
'''
inherited Class "ReportUtility" for PDF Reports from report.py Base
'''
# re-order my own Report Header, inherited Method from Base Class
def cenheader(self, Operator, path, portrLands):
'''
Defines the customized Header of the PDF Report, underneath common Header
'''
# general Infos Table
self.ln(4)
self.header_table(Operator)
self.ln(20)
# Rendering logo:
filepath = path + self.__headerLogo
if not exists(filepath):
fu = FileUtility()
filepath = fu.CENIT_LOGO_FOLDER + "\\" + self.__headerLogo
if exists(filepath):
hpos = 140
if portrLands == "L":
hpos = 200
self.image(filepath, 10, 60, 100)Was this page helpful?