User: kz Date: 06/02/28 02:33:35 Modified: /dba/connectivity/source/drivers/evoab2/ NDatabaseMetaData.hxx
Log: INTEGRATION: CWS evo2fixes (1.5.24); FILE MERGED 2006/02/15 12:15:30 mmeeks 1.5.24.1: Issue numbers: i#50913#, i#62042#, i#55893#, i#62043# Submitted by: misc, Tor, Jayant, me Reviewed by: mmeeks Fix a number of bugs, make it work with evo 2.4 & 2.6. File Changes: Directory: /dba/connectivity/source/drivers/evoab2/ =================================================== File [changed]: NDatabaseMetaData.hxx Url: http://dba.openoffice.org/source/browse/dba/connectivity/source/drivers/evoab2/NDatabaseMetaData.hxx?r1=1.5&r2=1.6 Delta lines: +31 -5 -------------------- --- NDatabaseMetaData.hxx 19 Jan 2006 17:18:17 -0000 1.5 +++ NDatabaseMetaData.hxx 28 Feb 2006 10:33:33 -0000 1.6 @@ -60,12 +60,38 @@ //************************************************************** //************ Class: OEvoabDatabaseMetaData //************************************************************** + typedef struct{ + gboolean bIsSplittedValue; + GParamSpec *pField; + }ColumnProperty; - const GParamSpec *getField(guint n); - guint getFieldCount(); - sal_Int32 getFieldType(sal_Int32 nCol); - rtl::OUString getFieldTypeName(sal_Int32 nCol); - rtl::OUString getFieldName(sal_Int32 nCol); + typedef enum { + DEFAULT_ADDR_LINE1=1,DEFAULT_ADDR_LINE2,DEFAULT_CITY,DEFAULT_STATE,DEFAULT_COUNTRY,DEFAULT_ZIP, + WORK_ADDR_LINE1,WORK_ADDR_LINE2,WORK_CITY,WORK_STATE,WORK_COUNTRY,WORK_ZIP, + HOME_ADDR_LINE1,HOME_ADDR_LINE2,HOME_CITY,HOME_STATE,HOME_COUNTRY,HOME_ZIP, + OTHER_ADDR_LINE1,OTHER_ADDR_LINE2,OTHER_CITY,OTHER_STATE,OTHER_COUNTRY,OTHER_ZIP + }ColumnNumber; + + typedef struct { + const gchar *pColumnName; + ColumnNumber value; + }SplitEvoColumns; + + static SplitEvoColumns evo_addr[] = { + {"addr-line1",DEFAULT_ADDR_LINE1},{"addr-line2",DEFAULT_ADDR_LINE2},{"city",DEFAULT_CITY},{"state",DEFAULT_STATE},{"country",DEFAULT_COUNTRY},{"zip",DEFAULT_ZIP}, + {"work-addr-line1",WORK_ADDR_LINE1},{"work-addr-line2",WORK_ADDR_LINE2},{"work-city",WORK_CITY},{"work-state",WORK_STATE},{"work-country",WORK_COUNTRY},{"work-zip",WORK_ZIP}, + {"home-addr-line1",HOME_ADDR_LINE1},{"home-addr-line2",HOME_ADDR_LINE2},{"home-addr-City",HOME_CITY},{"home-state",HOME_STATE},{"home-country",HOME_COUNTRY},{"home-zip",HOME_ZIP}, + {"other-addr-line1",OTHER_ADDR_LINE1},{"other-addr-line2",OTHER_ADDR_LINE2},{"other-addr-city",OTHER_CITY},{"other-addr-state",OTHER_STATE},{"other-addr-country",OTHER_COUNTRY},{"other-addr-zip",OTHER_ZIP} + }; + + const ColumnProperty *getField(guint n); + guint getFieldCount() ; + sal_Int32 getFieldType(sal_Int32 nCol) ; + rtl::OUString getFieldTypeName(sal_Int32 nCol) ; + rtl::OUString getFieldName(sal_Int32 nCol) ; + sal_Int32 findEvoabField(const rtl::OUString& aColName); + + void free_column_resources(); class OEvoabDatabaseMetaData : public ODatabaseMetaDataBase { --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
