[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
r5884 - trunk/gnue-common/src/datasources/drivers/appserver/Schema/Disco
From: |
johannes |
Subject: |
r5884 - trunk/gnue-common/src/datasources/drivers/appserver/Schema/Discovery |
Date: |
Fri, 11 Jun 2004 12:38:07 -0500 (CDT) |
Author: johannes
Date: 2004-06-11 12:38:06 -0500 (Fri, 11 Jun 2004)
New Revision: 5884
Modified:
trunk/gnue-common/src/datasources/drivers/appserver/Schema/Discovery/Introspection.py
Log:
Return correct length-attributes for gnue_id's and reference-properties
Modified:
trunk/gnue-common/src/datasources/drivers/appserver/Schema/Discovery/Introspection.py
===================================================================
---
trunk/gnue-common/src/datasources/drivers/appserver/Schema/Discovery/Introspection.py
2004-06-11 16:39:06 UTC (rev 5883)
+++
trunk/gnue-common/src/datasources/drivers/appserver/Schema/Discovery/Introspection.py
2004-06-11 17:38:06 UTC (rev 5884)
@@ -167,10 +167,16 @@
for rec in sess.fetch (sessId, listId, 0, sess.count (sessId, listId)):
name = "%s_%s" % (self._modules [rec [1]], rec [2])
+ nativetype = rec [3]
- if rec [3] == 'number':
+ if name == 'gnue_id' or '_' in nativetype:
+ length = 32
+ else:
+ length = rec [4]
+
+ if nativetype == 'number':
datatype = 'number'
- elif rec [3] in ['date', 'datetime']:
+ elif nativetype in ['date', 'datetime']:
datatype = 'date'
else:
datatype = 'text'
@@ -178,15 +184,11 @@
attrs = {'id' : "%s.%s" % (parent.id, name.lower ()),
'name' : name,
'datatype' : datatype,
- 'precision' : rec [5],
- 'nativetype': 'unknown',
- 'length' : rec [4],
+ 'precision' : rec [5] or 0,
+ 'nativetype': nativetype,
+ 'length' : length,
'required' : 0}
- # reference properties have a fixed length
- if '_' in datatype:
- attrs ['length'] = 32
-
result.append (GIntrospection.Schema (attrs))
#
@@ -207,10 +209,16 @@
continue
name = "%s_%s" % (self._modules [rec [1]], rec [2] [3:])
+ nativetype = rec [3]
- if rec [3] == 'number':
+ if '_' in nativetype:
+ length = 32
+ else:
+ length = rec [4]
+
+ if nativetype == 'number':
datatype = 'number'
- elif rec [3] in ['date', 'datetime']:
+ elif nativetype in ['date', 'datetime']:
datatype = 'date'
else:
datatype = 'text'
@@ -219,14 +227,10 @@
'name' : name,
'datatype' : datatype,
'precision' : rec [5],
- 'nativetype': 'unknown',
- 'length' : rec [4],
+ 'nativetype': nativetype,
+ 'length' : length,
'required' : 0}
- # reference properties have a fixed length
- if '_' in datatype:
- attrs ['length'] = 32
-
result.append (GIntrospection.Schema (attrs))
return result
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- r5884 - trunk/gnue-common/src/datasources/drivers/appserver/Schema/Discovery,
johannes <=