HP Matrix Operating Environment Software manual

Models: Matrix Operating Environment Software

1 111
Download 111 pages 21.04 Kb
Page 99
Image 99

if len (self.service) >0:

servicefilter = chargebackservice.factory.create('serviceFilter') servicefilter.filterAttribute = attributefilter.SERVICE_NAME servicefilter.filterOperator = operatorfilter.EQUAL servicefilter.serviceFilterValue = self.service servicefilter.filterConnector = connectorfilter.AND filterCollection.append(servicefilter)

if len(filterCollection) > 0: filterCollection[0].filterConnector = connectorfilter.NONE

return filterCollection

def get_servicename(serviceUsage):

return str(serviceUsage.serviceInformation.name)

def get_organization(serviceUsage):

return str(serviceUsage.serviceInformation.organizationId)

def get_billingcode(serviceUsage):

return str(serviceUsage.serviceInformation.billingCode)

def get_owner(serviceUsage):

return str(serviceUsage.serviceInformation.owner)

def get_startdate(serviceUsage):

return str(serviceUsage.serviceInformation.startDate)

def get_enddate(serviceUsage): try:

return str(serviceUsage.serviceInformation.endDate) except:

return ""

def report_Summary(number_of_service, period): result = [[]]

result[0] = Paragraph(''' ''', styleSheet["BodyText"])

summarytable = [[]]

now = datetime.datetime.now()

summarytable[0] = ["Date run: ", now.strftime("%Y-%m-%d")]

start_date = datetime.datetime.strptime (period.start, "%Y-%m-%d") end_date = datetime.datetime.strptime (period.end, "%Y-%m-%d") days = end_date - start_date

periodStr = "{0} to {1} ({2} days)"

summarytable.append(["Reporting period: ", periodStr.format(period.start, period.end, str(days.days))])

summarytable.append(["Number of services: ", number_of_service])

t = Table(summarytable, style=[('LINEABOVE', (0,0), (-1,0), 0.25, colors.black), ('LINEBELOW', (0,-1), (-1,-1), 0.25, colors.black), ('FONTSIZE', (0,0), (0,2), 9),

('FONTSIZE', (1,0), (1,2), 8),

('BOX', (0,0), (-1,-1), 0.25, colors.black)]

)

t.hAlign = "LEFT" result.append(t)

result.append(Paragraph(''' ''',styleSheet["BodyText"]))

result.append(Paragraph(''' ''',styleSheet["BodyText"]))

return result

class ServiceUsageReport (object):

def __init__ (self, periodInformation, connection, filters=None, title="Title", footer="Footer"): self.title = title

self.data = footer self.footer = "" self.period = periodInformation self.filters = filters self.chargebackservice = connection.client

def get_serviceCost(self, serviceUsage):

disckCost = serviceUsage.resourceUsageSummary.DiskUsageSummary.allocationCost ipCost = serviceUsage.resourceUsageSummary.IpAddressUsageSummary.allocationCost serversCost = serviceUsage.resourceUsageSummary.ServerUsageSummary.allocationCost fixedCost = serviceUsage.resourceUsageSummary.fixedCost

return disckCost + ipCost + serversCost + fixedCost

def get_totalServices(self, services): return len(services)

def format_data(self):

Elements = []

if self.chargebackservice :

dataPeriod = self.period.getPeriodObj(self.chargebackservice) paging = self.chargebackservice.factory.create('paging')

99

Page 99
Image 99
HP Matrix Operating Environment Software manual