Really? Which fat bloke programmed that. I think that's a bug; it should just 
return false to say that it is not able to process that variable. 
Though comparing a file variable to "" or whatever is not a good move, what 
happens when the variable is a file descriptor?





On Thu, Sep 1, 2016 at 4:14 PM +0800, "Daniel Klein" <[email protected]> 
wrote:










The IOCTL() function is very useful to find out things about a file but if you 
try to use it on a variable that is not a file variable then the program will 
drop to the debugger.

The jBASE-way to programmatically determine if it is working with a file 
variable is to use the ON ERROR clause in an OPEN statement, e.g.

OPEN filename TO filevar ON ERROR
   CRT filename : ' is not a file variable'
END

On Wed, Aug 31, 2016 at 11:39 PM, Jim Idle <[email protected]> wrote:
Google emails is fickle some times:
http://www.jbase.com/r5/knowledgebase/manuals/3.0/30manpages/man/sup22_IOCTL.htm

Jim
On Thu, Sep 1, 2016 at 11:39 AM, Jim Idle <[email protected]> wrote:
I think that that is still a pretty poor way to code it, but if they have it 
already, then recoding the logic to do better initialization is probably too 
much work.
However, I seem to remember coming across this in the dim and distant past. 
What you need is to use the IOCTL function, that will tell you details about 
the variable if it is a file variable. If it is not a file variable 
(uninitialized or 0 or "" depending on emulation flavor) then it either tells 
you that, or it returns false. Easy to use and the documentatin is here:

On Thu, Sep 1, 2016 at 9:26 AM, 'Ed Clark' via jBASE <[email protected]> 
wrote:
There is a thread on the mvdbms google group asking about it. I think the 
original requestor was asking because they are doing a migration and keep 
stumbling over  IF FILEVAR=“” THEN….which worked on the old platform but aborts 
on the new one if the file is already open. Probably something related to 
COMMON which is initialized to to an empty string or 0 in some places and 
unassigned in other. If you’re keeping a file in COMMON to avoid repeated 
OPENs, you need to check.
The universe DESCRINFO distinguishes between database files and sequential 
files as well as between strings, arrays, and unassigned variables. I guess you 
could write a generalized logging procedure that could take either a hashed or 
sequential file as a parameter and write appropriately, or a string or empty 
variable and return the logged message in that.
On Aug 31, 2016, at 6:41 PM, Jim Idle <[email protected]> wrote:
I can't think how that would possibly be useful within a reasonably designed 
program - why do you need it, out of curiosity?
The only way I know of is to write a trivial C function to do the same. 
Jim






On Thu, Sep 1, 2016 at 4:35 AM +0800, "'Ed Clark' via jBASE" 
<[email protected]> wrote:










universe has a basic function DESCRINFO that returns the “type” of a 
variable—it is a simple variable, a file variable, a select list, assigned or 
unassigned, and so forth.
Is there an equivalent in jBase?

-- 
-- 
IMPORTANT: T24/Globus posts are no longer accepted on this forum.

To post, send email to [email protected]
To unsubscribe, send email to [email protected]
For more options, visit this group at http://groups.google.com/group/jBASE?hl=en

--- 
You received this message because you are subscribed to the Google Groups 
"jBASE" 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.








-- 

-- 

IMPORTANT: T24/Globus posts are no longer accepted on this forum.

 

To post, send email to [email protected]

To unsubscribe, send email to [email protected]

For more options, visit this group at http://groups.google.com/group/jBASE?hl=en



--- 

You received this message because you are subscribed to the Google Groups 
"jBASE" 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.








-- 

-- 

IMPORTANT: T24/Globus posts are no longer accepted on this forum.

 

To post, send email to [email protected]

To unsubscribe, send email to [email protected]

For more options, visit this group at http://groups.google.com/group/jBASE?hl=en



--- 

You received this message because you are subscribed to the Google Groups 
"jBASE" 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.










-- 

-- 

IMPORTANT: T24/Globus posts are no longer accepted on this forum.

 

To post, send email to [email protected]

To unsubscribe, send email to [email protected]

For more options, visit this group at http://groups.google.com/group/jBASE?hl=en



--- 

You received this message because you are subscribed to the Google Groups 
"jBASE" 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.








-- 

-- 

IMPORTANT: T24/Globus posts are no longer accepted on this forum.

 

To post, send email to [email protected]

To unsubscribe, send email to [email protected]

For more options, visit this group at http://groups.google.com/group/jBASE?hl=en



--- 

You received this message because you are subscribed to the Google Groups 
"jBASE" 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.






-- 
-- 
IMPORTANT: T24/Globus posts are no longer accepted on this forum.

To post, send email to [email protected]
To unsubscribe, send email to [email protected]
For more options, visit this group at http://groups.google.com/group/jBASE?hl=en

--- 
You received this message because you are subscribed to the Google Groups 
"jBASE" 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.

Reply via email to