Razzak, Very interesting... Indeed I knew nothing of this. Review of all code, some written--should I more accurately say slapped together--in DOS days, shows how willy-nilly my naming conventions were. I'm currently--may take a long time, I'm so slow these days--closely reviewing all aspects of the database as it becomes apparent that XE is optimized and my database is not...
I welcome the help and hints. Thank you! Claudine -----Original Message----- From: [email protected] [mailto:[email protected]] On Behalf Of A. Razzak Memon Sent: Thursday, June 29, 2017 11:48 AM To: [email protected] Subject: Re: [RBASE-L] - RE: PROJECT Puzzle Claudine, Using R:BASE X and R:BASE X Enterprise (Version 10) ... Did you know that you can define a table of all controlled column names and data types, that will be enforced when using those columns in a VIEW? By default when an alias column name is used in a view, R:BASE makes the best guess to define the data type. For example, if you define an alias name such as "Full_Name" based on (LastName+,','&FirstName&MiddleName), and if the Full_Name column is not defined anywhere in the database, you will get the data type as "NOTE" when defining a VIEW. If you wish to represent the "Full_Name" as TEXT (60), for example, then you will need to define a controlled column table with such column name and data type to be used when using that column name in a VIEW. Here's how ... CREATE TABLE `Controlled_Column_Names` + (`Full_Name` TEXT (60)) COMMENT ON `Full_Name` IN `Controlled_Column_Names` IS 'Full Name' COMMENT ON TABLE `Controlled_Column_Names` IS 'Controlled Column Names with Data Types to be Used in Views' RETURN You don't have to have any rows in that table. Just a list of columns. Hope that helps! Very Best R:egards, Razzak At 01:11 PM 6/27/2017, Claudine Robbins wrote: >Dan, > >Your comment leads to an eye-opener. When I PROJECT my view, the two >fields I use in the ORDER BY become NOTE fields instead of TEXT which >may partly account for the extreme processing delay. > >I also note that when creating a TEMP table, R:BASE strictly enforces >field definitions and constraints--which the PROJECT command does >not--so whereas a VIEW’s column names/aliases can be anything, >PROJECTing them can accidentally end up in mismatched fields, also my >case in this instance. > >I will definitely review all PROJECT instances in my code. This could >very well trip me up somewhere else. > >Thank you very much. > >Claudine > >From: [email protected] >[mailto:[email protected]] On Behalf Of Dan Goldberg >Sent: Tuesday, June 27, 2017 8:43 AM >To: [email protected] >Subject: [RBASE-L] - RE: PROJECT Puzzle > >Sounds like you need to report it. > >BTW, I avoid project commands as it locks the table. I create the temp >table and insert. > >Dan Goldberg > >From: ><mailto:[email protected]>[email protected] >[mailto:[email protected]] On Behalf Of Claudine Robbins >Sent: Monday, June 26, 2017 11:55 AM >To: <mailto:[email protected]>[email protected] >Subject: [RBASE-L] - PROJECT Puzzle > >Hello all, > >I PROJECT a 7 column, 3 row view into a temporary table. In 9.5 it is >instantaneous, in XE it takes 1:42 minutes. NOTE: PROJECT command in >RRBYW19 is instantaneous with or without an ORDER BY on the SALESINF view. > >PROJECT ttable FROM vtable USING ALL --- 9.5 and XE are instantaneous > >PROJECT ttable FROM vtable USING ALL ORDER BY fieldA --- 9.5 is >instantaneous, XE takes 1:42 minutes > >Remember there are only 3 rows… I scruupulously followed conversion >instructions from 9.5 to XE and encountered no errors of any kind. > >Appreciate any hints or comments. > >TIA, > >Claudine -- You received this message because you are subscribed to the Google Groups "RBASE-L" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout. -- You received this message because you are subscribed to the Google Groups "RBASE-L" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.

