Problem with the latest update of Eviews 8
Moderators: EViews Gareth, EViews Moderator
Problem with the latest update of Eviews 8
A program which imports data from Excel files, stores them in an Eviews databank and creates a number of tables does not work in Eviews 8 after update to Built 2nd July 2014. It appears that the program looks for data (time series) only in the databank and no longer in the workfile. I have checked that the very same program does work in Eviews 7 and in Eviews 8 Built 5 April 2014. Is there a new feature in this version or is it a bug?
-
- Fe ddaethom, fe welon, fe amcangyfrifon
- Posts: 13319
- Joined: Tue Sep 16, 2008 5:38 pm
Re: Problem with the latest update of Eviews 8
Could you provide more details on exactly what is not working?
Follow us on Twitter @IHSEViews
Re: Problem with the latest update of Eviews 8
I have realised I was not exact enough in describing my problem. The program doesn't run on a 64-bit machine but it does run without problems on a 32-bit machine where I have not updated Eviews to the latest Built 2nd July 2014 version. In fact, the program encounters the same problem in Eviews 7 on the 64-bit machine. Sorry for the confusion.
The error message is
Syntax error in "GDPRCOMPA(1, 1) = C:\DATA\EVIEWS\CBM\FORECAST EXERCISE JUNE 2014 BMPE_R1\TEMPLATES
\MODDAT110714.EDB::PRIVCONS.@DISPLAYNAME".
The path is to the databank where the variable is not stored, while it does exist in the workfile. The program stops on the line
gdpRcompA(!xx, 1) = {%aa}.@displayname
and PRIVCONS is the first variable in the group g1 from which {%aa} is taken. The problem starts earlier, in the line
%aa = g1.@seriesname(!zz)
where %aa gets the path to the databank. !zz is a counter.
The relevant part of the program is attached.
-
- EViews Developer
- Posts: 161
- Joined: Wed Sep 17, 2008 10:39 am
Re: Problem with the latest update of Eviews 8
I've looked over the file you sent but I'm still a bit confused.
My best guess is that the difference in behaviour has happened before you get to the beginning of the program fragment you posted.
If you look at 'View...Group Members' for the group g1 before any of the code you posted executes, does it look different between the two versions?
Also, I couldn't tell whether the issue was that EViwes was running differently on two different machines or running differently between two builds or versions?
If it's running differently between the two machines, you might want to compare the 'Database Registry' settings on the machines and see if anything is different. Use 'Options... Database Registry' from the main EViews program menu to see the settings.
Chris
My best guess is that the difference in behaviour has happened before you get to the beginning of the program fragment you posted.
If you look at 'View...Group Members' for the group g1 before any of the code you posted executes, does it look different between the two versions?
Also, I couldn't tell whether the issue was that EViwes was running differently on two different machines or running differently between two builds or versions?
If it's running differently between the two machines, you might want to compare the 'Database Registry' settings on the machines and see if anything is different. Use 'Options... Database Registry' from the main EViews program menu to see the settings.
Chris
Re: Problem with the latest update of Eviews 8
Thank you very much for the advise. It helped me to circumvent the problem which, however, still remains.
First, it is not a problem of two builds, I have updated Eviews on the other computed to the same built and nothing has changed.
Second, Eviews is running differently on two machines, but there is the 64-bit version on one machine and 32-bit version on the other. It is the former that creates problems. I am using the same Eviews program that was copied from one computer to the other. Could the two versions show a different behaviour?
The program runs to the end on the 64-bit version only when the option "Default database in search path" in Database Registry is set to "Do not include in search". In the case of inclusion at the end or at the beginning of search order, the program stops and shows an error. In the 32-bit version, the program runs without problems whatever the setting in database registry. In both cases there are no registered databases.
In the 64-bit version (when default database is included in the search path) the group g1 includes variables with a path to the databank, while in the 32-bit version such path is not shown. The program itself runs the same command sequence twice. First time for quarterly data, then it opens a databank and saves the series, then a second time for annual data. It is only in the second round (for annual data) that the error occurs. I tried to close the databank but it didn't help.
Thanks to your advise, I know now how to circumvent the problem (by excluding the databank from the search path) but this might complicate programming in the future so I would really be grateful for more help.
I am attaching the whole program.
First, it is not a problem of two builds, I have updated Eviews on the other computed to the same built and nothing has changed.
Second, Eviews is running differently on two machines, but there is the 64-bit version on one machine and 32-bit version on the other. It is the former that creates problems. I am using the same Eviews program that was copied from one computer to the other. Could the two versions show a different behaviour?
The program runs to the end on the 64-bit version only when the option "Default database in search path" in Database Registry is set to "Do not include in search". In the case of inclusion at the end or at the beginning of search order, the program stops and shows an error. In the 32-bit version, the program runs without problems whatever the setting in database registry. In both cases there are no registered databases.
In the 64-bit version (when default database is included in the search path) the group g1 includes variables with a path to the databank, while in the 32-bit version such path is not shown. The program itself runs the same command sequence twice. First time for quarterly data, then it opens a databank and saves the series, then a second time for annual data. It is only in the second round (for annual data) that the error occurs. I tried to close the databank but it didn't help.
Thanks to your advise, I know now how to circumvent the problem (by excluding the databank from the search path) but this might complicate programming in the future so I would really be grateful for more help.
I am attaching the whole program.
- Attachments
-
- aggreg.prg
- (17.4 KiB) Downloaded 335 times
-
- EViews Developer
- Posts: 870
- Joined: Tue Sep 16, 2008 3:50 pm
Re: Problem with the latest update of Eviews 8
This is a kludge but I believe will produce more consistent results regardless of EViews settings.
At the beginning of the program but just after
add the following lines
The idea is to set your default database to NONE. But since EViews does not have a specific command to do so, we create a database and then delete it which then sets the default database to NONE.
At the beginning of the program but just after
Code: Select all
cd %datapath
add the following lines
Code: Select all
dbcreate foo
dbdelete foo
The idea is to set your default database to NONE. But since EViews does not have a specific command to do so, we create a database and then delete it which then sets the default database to NONE.
-
- Fe ddaethom, fe welon, fe amcangyfrifon
- Posts: 13319
- Joined: Tue Sep 16, 2008 5:38 pm
Re: Problem with the latest update of Eviews 8
EViews Jason wrote: But since EViews does not have a specific command to do so,
Yet
Follow us on Twitter @IHSEViews
Re: Problem with the latest update of Eviews 8
Excellent Idea. I was trying to achieve this by closing the bank but it didn't work. The problem is that I do
open a database in order to save the data and I certainly do not want to delete it. Is the only solution to stick to the 32-bit computer?
open a database in order to save the data and I certainly do not want to delete it. Is the only solution to stick to the 32-bit computer?
-
- EViews Developer
- Posts: 870
- Joined: Tue Sep 16, 2008 3:50 pm
Re: Problem with the latest update of Eviews 8
I literally meant to create a database named 'foo' and then delete it. As of right now, deleting an database is the only way to set the default database to NONE. But in order to do so, we need a database to delete. This is why I proposed to create a temporary one and them immediately delete it.
Re: Problem with the latest update of Eviews 8
It doesn't work in a program, as far as I can see. As soon as the temporary database foo is deleted, the previously used database becomes the default database.
Example:
wfcreate bab a 2000 2010
series aa=1
dbcreate d1
store aa
dbcreate foo
dbdelete foo
At the end of the above program the default database is d1.
Example:
wfcreate bab a 2000 2010
series aa=1
dbcreate d1
store aa
dbcreate foo
dbdelete foo
At the end of the above program the default database is d1.
-
- EViews Developer
- Posts: 870
- Joined: Tue Sep 16, 2008 3:50 pm
Re: Problem with the latest update of Eviews 8
I didnt realize you were creating additional databases prior. The default database can change under certain conditions to one of the previously open databases. To insure those conditions are not met, you will need to close ('dbclose') the other databases. So just before 'dbcreate foo', close all open databases.
Code: Select all
dbclose d1
dbclose d2 'if there is a d2
'etc
'...
dbcreate foo
Re: Problem with the latest update of Eviews 8
It does work!
For some reason CLOSE @db doesn't work, while CLOSE d1 does (when d1 is a specific databank name).
Thank you so much for your help!
For some reason CLOSE @db doesn't work, while CLOSE d1 does (when d1 is a specific databank name).
Thank you so much for your help!
Who is online
Users browsing this forum: No registered users and 35 guests