[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
r5767 - in trunk/gnue-reports: src/adapters/filters/Labels/labels utils
From: |
dneighbo |
Subject: |
r5767 - in trunk/gnue-reports: src/adapters/filters/Labels/labels utils |
Date: |
Wed, 28 Apr 2004 13:28:22 -0500 (CDT) |
Author: dneighbo
Date: 2004-04-28 13:28:20 -0500 (Wed, 28 Apr 2004)
New Revision: 5767
Added:
trunk/gnue-reports/utils/create-label-list.py
Modified:
trunk/gnue-reports/src/adapters/filters/Labels/labels/LabelSpecs.py
Log:
LabelSpecs.py modified to have parameter that does NOT map alias to
measurements. This parameter is defaulted to map to not break existing
code.
create-label-list.py has been added to create docbook article of
available supported labels for a label-def.dat file.
Modified: trunk/gnue-reports/src/adapters/filters/Labels/labels/LabelSpecs.py
===================================================================
--- trunk/gnue-reports/src/adapters/filters/Labels/labels/LabelSpecs.py
2004-04-27 12:49:37 UTC (rev 5766)
+++ trunk/gnue-reports/src/adapters/filters/Labels/labels/LabelSpecs.py
2004-04-28 18:28:20 UTC (rev 5767)
@@ -51,11 +51,14 @@
def startElement(self, name, attrs):
if name == "labeldef":
- self._measurements = attrs._attrs
-
- self._labelSpecs[string.upper(attrs['name'])] = self._measurements
+ if _mapAlias == 1:
+ self._measurements = attrs._attrs
+ self._labelSpecs[string.upper(attrs['name'])] = self._measurements
elif name == "alias":
- self._labelSpecs[string.upper(attrs['brand'] + ' ' + attrs['part'])]
= self._measurements
+ if _mapAlias == 1:
+ self._labelSpecs[string.upper(attrs['brand'] + ' ' +
attrs['part'])] = self._measurements
+ else:
+ self._labelSpecs[string.upper(attrs['brand'] + ' ' +
attrs['part'])] = attrs._attrs
self._text = ""
@@ -72,8 +75,10 @@
#
# Load all label defs
#
-def initLabelDefs(file):
+def initLabelDefs(file, mapAlias = 1):
global _loaded
+ global _mapAlias
+ _mapAlias = mapAlias
if not _loaded:
parser = make_parser()
parser.setContentHandler(MyHandler())
@@ -85,7 +90,7 @@
#
def getByName(name):
- return _labelSpecs[name.upper()]
+ return _labelSpecs[name]
#
Added: trunk/gnue-reports/utils/create-label-list.py
===================================================================
--- trunk/gnue-reports/utils/create-label-list.py 2004-04-27 12:49:37 UTC
(rev 5766)
+++ trunk/gnue-reports/utils/create-label-list.py 2004-04-28 18:28:20 UTC
(rev 5767)
@@ -0,0 +1,132 @@
+#!/usr/bin/env python
+#
+# This file is part of GNU Enterprise.
+#
+# GNU Enterprise is free software; you can redistribute it
+# and/or modify it under the terms of the GNU General Public
+# License as published by the Free Software Foundation; either
+# version 2, or (at your option) any later version.
+#
+# GNU Enterprise is distributed in the hope that it will be
+# useful, but WITHOUT ANY WARRANTY; without even the implied
+# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+# PURPOSE. See the GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public
+# License along with program; see the file COPYING. If not,
+# write to the Free Software Foundation, Inc., 59 Temple Place
+# - Suite 330, Boston, MA 02111-1307, USA.
+#
+# Copyright 2001-2004 Free Software Foundation
+#
+# FILE:
+# create-label-list.py
+#
+# DESCRIPTION:
+#
+# NOTES:
+
+import sys
+from gnue.reports.adapters.filters.Labels.labels import *
+
+class CreateLabelList:
+
+ def run(self):
+
+ LabelDef = {}
+
+ ## Assign Label Data File to parse
+ try:
+ LabelDataFile = sys.argv[1]
+ except:
+ print "You must define a Labels Data File."
+ sys.exit()
+
+ ## Determine if output file is to file or stdout
+ try:
+ LabelListFile = sys.argv[2]
+ try:
+ LabelListOutput = open(LabelListFile, "w")
+ except:
+ print "Cannot open %s for writing." % (LabelListFile)
+ except:
+ print "You must define and output file."
+
+
+ ## Load Data Def File w/o Mapping Alias Names Into Memory
+ LabelDef = LabelSpecs.initLabelDefs(LabelDataFile, 0)
+
+
+ self.WriteHeader(LabelListOutput, LabelDef)
+ self.WriteContent(LabelDef, LabelDataFile, LabelListOutput)
+ self.WriteFooter(LabelListOutput)
+
+ ## Close output file
+ LabelListOutput.close
+
+
+
+
+ def WriteContent(self, LabelInfo, InputFile, OutputFile):
+
+
+ ## Roll through each Alias and gather details
+ for key in LabelInfo.keys():
+ OutputFile.write("<row>\n")
+ AliasInfo = LabelSpecs.getByName(key)
+ for data in AliasInfo.keys():
+ OutputFile.write(("<entry>%s</entry>\n") %
(AliasInfo[data].encode('ascii','replace')))
+# OutputFile.write((" %s : %s\n") % (data.encode('ascii','replace'),
AliasInfo[data].encode('ascii','replace')))
+ OutputFile.write("</row>\n")
+
+
+
+
+
+
+ def WriteHeader(self, OutputFile, LabelInfo):
+ OutputFile.write("""<!doctype article public "-//OASIS//DTD DocBook
V4.0//EN">
+
+<article>
+ <articleinfo>
+ <title>
+ Supported Label Filters
+ </title>
+ <subtitle>GNU Enterprise Reports</subtitle>
+ </articleinfo>
+<para>
+<table frame='all'><title>Supported Labels</title>
+<tgroup cols='4' align='left' colsep='1' rowsep='1'>
+<thead>
+<row>
+ <entry>Category</entry>
+ <entry>Brand</entry>
+ <entry>Part #</entry>
+ <entry>Description</entry>
+</row>
+</thead>
+<tfoot>
+<row>
+ <entry></entry>
+ <entry></entry>
+ <entry>Total Labels Supported:</entry>
+""")
+ OutputFile.write(("<entry>%s</entry>") % (len(LabelInfo)))
+ OutputFile.write("""</row>
+</tfoot>
+<tbody>
+""")
+
+
+
+ def WriteFooter(self, OutputFile):
+ OutputFile.write("""</tbody>
+</tgroup>
+</table>
+</para>
+</article>
+""")
+
+
+if __name__ == '__main__':
+ CreateLabelList().run()
\ No newline at end of file
Property changes on: trunk/gnue-reports/utils/create-label-list.py
___________________________________________________________________
Name: svn:executable
+ *
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- r5767 - in trunk/gnue-reports: src/adapters/filters/Labels/labels utils,
dneighbo <=