Source code for simple_report.docx.document

#coding: utf-8
'''
Created on 24.11.2011

@author: prefer
'''

from simple_report.core.document_wrap import DocumentOpenXML
from simple_report.docx.wordprocessing_ml import (
    CommonPropertiesDOCX, ContentTypesXMLFile, DocumentRelsXMLFile)


[docs]class DocumentDOCX(DocumentOpenXML): """ Отчет в формате docx """ def __init__(self, *args, **kwargs): super(DocumentDOCX, self).__init__(*args, **kwargs) self.common_properties = CommonPropertiesDOCX.create( self.extract_folder, self._tags ) self.content_types = ContentTypesXMLFile.create( self.extract_folder, self._tags ) self.main_rels = DocumentRelsXMLFile.create( self.extract_folder, self._tags ) self.word.doc_rels = self.main_rels @property
[docs] def word(self): return self.common_properties.main
[docs] def build(self, dst_file): """ Сборка отчета :param: dst_file: путь до выходного файла :type: dst_file: str """ self.word.build() self.content_types.build() self.main_rels.build() super(DocumentDOCX, self).build(dst_file)
[docs] def set_params(self, *args, **kwargs): """ Установка параметров отчета """ self.word.set_params(*args, **kwargs)
[docs] def get_all_parameters(self): """ Получение всех параметров """ return self.word.get_all_parameters()
[docs] def get_section(self, section_name): """ Получение секции из таблицы в docx :param: section_name: название секции :type: section_name: str """ return self.word.get_section(section_name)