HP CloudSystem Matrix/Matrix Operating Environment 7.2 Integration Interfaces API and CLI Operations Reference Guide
 serviceData.append([ipAddress.ipAddress, ipAddress.ipAssignmentType, ipAddress.allocationHours, 
str(locale.currency(val=ipAddress.allocationCost, symbol=False, grouping=True))])
 return len(ipAddresses.ipAddressUsageDetail) 
 def get_servicetable(self, service):
 serviceinfotable = [[]]
 serviceinfotable[0] = ["Service", get_servicename(service)]
 serviceinfotable.append(["Organization", get_organization(service)])
 serviceinfotable.append(["Billing code", get_billingcode(service)])
 serviceinfotable.append(["Owner", get_owner(service)])
 serviceinfotable.append(["Created on", get_startdate(service)])
 serviceinfotable.append(["Deleted on", get_enddate(service)])
 tService = Table(serviceinfotable, style=[('LINEABOVE', (0, 0), (-1, 0), 0.25, colors.black),
 ('LINEBELOW', (0, -1), (-1, -1), 0.25, colors.black), 
 ('FONTSIZE', (0, 0), (-1, -1), 6),
 ('INNERGRID', (0, 0), (-1, -1), 0.25, colors.black), 
 ('BOX', (0, 0), (-1, -1), 0.25, colors.black), 
 ('BACKGROUND', (0, 0), (1, 0), colors.blue), 
 ('TEXTCOLOR', (0, 0), (1, 0), colors.white)])
 tService.hAlign = "LEFT"
 return tService
 def get_servicedetailstable(self, service):
 tServiceData = [[]]
 tServiceData[0] = ["Fixed Cost ($)", str(locale.currency(val=service.resourceUsageDetail.fixedCost, 
symbol=False, grouping=True)), "", ""]
 s = 2 + self.addserversdetails(service.resourceUsageDetail.servers, tServiceData)
 d = s + self.adddisksdetails(service.resourceUsageDetail.disks, tServiceData) + 2
 self.addipaddressesdetails(service.resourceUsageDetail.ipAddresses, tServiceData)
 tService = Table(tServiceData, style = [('LINEBELOW', (0, 0), (-1, 0), 0.5, colors.black),
 ('SPAN',(1,0),(-1,0)),
 ('FONTSIZE', (0, 0), (-1, -1), 6),
 ('LINEBELOW', (0, 1), (-1, 1), 0.5, colors.black),
 ('LINEABOVE', (0, 1), (-1, 1), 0.5, colors.black),
 ('SPAN',(0,1),(-1,1)),
 ('LINEBELOW', (0, s+1), (-1, s+1), 0.5, colors.black),
 ('LINEABOVE', (0, s+1), (-1, s+1), 0.5, colors.black),
 ('SPAN',(0,s+1),(-1,s+1)), 
 ('LINEBELOW', (0, d+1), (-1, d+1), 0.5, colors.black),
 ('LINEABOVE', (0, d+1), (-1, d+1), 0.5, colors.black),
 ('SPAN',(0,d+1),(-1,d+1)), 
 ('BOX', (0, 0), (-1, -1), 0.25, colors.black),
 ('TEXTCOLOR', (0, 0), (-1, -1), colors.black)])
 tService.hAlign = "LEFT"
 return tService
 def format_data(self):
 dataPeriod = self.period.getPeriodObj(self.chargebackservice)
 paging = self.chargebackservice.factory.create('paging')
 paging.pageIndex = PAGE_INDEX
 paging.pageSize = PAGE_SIZE
 Elements = []
 if self.chargebackservice :
 filters = []
 if self.filters :
 filters = self.filters.getFiltersObj(self.chargebackservice)
 if len(filters) > 0:
 print "[" + str(datetime.datetime.now()) + "]" + "getServiceUsageDetailPage: start" 
 result = self.chargebackservice.service.getServiceUsageDetailPage(dataPeriod, paging, filters)
 print "[" + str(datetime.datetime.now()) + "]" + "getServiceUsageDetailPage: end"
 else:
 result = self.chargebackservice.service.getServiceUsageDetailPage(dataPeriod, paging)
 if (result.pagingInformation) and (result.serviceUsageDetail) and (len(result.serviceUsageDetail) 
> 0) : 
 pages = result.pagingInformation
 services = result.serviceUsageDetail
 Elements.extend(report_Summary(len(services), self.period))
 Elements.append(Paragraph(''' ''', styleSheet["BodyText"]))
 for service in services:
 Elements.append(self.get_servicetable(service))
 Elements.append(Paragraph(''' ''', styleSheet["BodyText"]))
 Elements.append(self.get_servicedetailstable(service))
 Elements.append(PageBreak()) 
 else:
 print "Result: " + result
 return Elements
 def generate (self, outputfile):
 usageReport = root.reports.reports.Report(self.title, self.footer)
114 Sample Python Client










