>>
APLDN Home

>>
Events

>>
Trainings

>>
APL Books

>>
APLDN Links

>>
Discussion Groups

>>
Downloads

>>
Articles

>>
Library

>>
Learning Tools

>>
APLDN User IO

>>
APL2000.com




General

Author Thread: Incompatible WS
M.A.Gaveau
Incompatible WS
Posted: Friday, October 08, 2004 6:35 AM (EST)

I realised recently that I have a lot of Worskpaces that I can no longer load with the version 5 of APL+WIN,  because they are incompatible (error message INCOMPATIBLE WS)
I can load them with APLWIN v4 (message OBSOLETE INTERNAL WS…..), and if I resave them, they become compatible with APLWIN v5.0.

Is there any automatic procedure to make these old workspaces compatible with version 5 or must I perform “manually” the above  procedure for each workspace ??!

 

Actually, I process experimental data with APL+WIN and I put specific functions in small workspaces stored in the different data directories. I realise that because of  this problem of incompatibility, I should perhaps store these functions in another way (for example by using  ]outascii). I would like to have your opinion about this problem and to know if there is an automatic way to do the job (changing the old workspaces in a2a files for example)?

 

Thank you for your help,

 

Marc-André Gaveau


Comments:

Author Thread:
Support
Incompatible WS
Posted: Friday, October 08, 2004 9:12 AM (EST)
This matter is addressed in the version 5 Release Notes.

APL2000 Support

     

brent.hildebrand
Incompatible WS
Posted: Friday, October 08, 2004 9:33 AM (EST)

The release notes (README.TXT) suggest using ]in and ]out, or using WSTOFILE and FILETOWS.  One way to automate the process would be to simply using APL+Win v4, development version, as an ActiveX session, and then using either v4 or v5,  XLOAD each workspace you have, and then SAVE it.  Looping through all your workspaces.

 

     

brent.hildebrand
Incompatible WS
Posted: Friday, October 08, 2004 2:38 PM (EST)

Here is a snipet of code to do the above:

 

      'wse' Œwi 'Create' 'APLW.WSEngine'
      'wse' Œwi 'XSysCall' 'XLOAD' 'path\ws_name'
      'wse' Œwi 'XSysCall' 'SAVE' 'path\ws_name'

 

You substitude a real workspace for path\ws_name, and do it for all the workspaces you want to convert.   Also be sure that APL+Win v4.0 is registered as your workspace engine as it will load all the older workspaces, and when saved from 4.0, they can be loaded into 5.x.  Another advantage of doing it this way (I think) is that it preserves function TimeStamps is that is important to you. 

     

M.A.Gaveau
Incompatible WS
Posted: Friday, October 08, 2004 6:20 PM (EST)

Thak you very much for the code. I think it is an efficient way to convert the workspaces and it will help me a lot because I am not at all familiar with this technique of using APL+Win as an ActiveX session.

 

Marc-André Gaveau

     

M.A.Gaveau
Incompatible WS
Posted: Monday, October 11, 2004 6:14 AM (EST)

Your code works very well, Brent.

I have just to be careful with runtime workspaces, because if there is a serialization mismatch, I save an empty workspace over the initial runtime workspace (bad surprise !). So I  test  the dimension of

 'wse' Œwi 'XSysCall' 'WSID'

which is 0 in case of CLEAR WS.

I don't know how to catch the message after a workspace has been loaded. It would be interesting, in order to save the workspace only when this message contains 'OBSOLETE REPRESENTATION ....'. Is it possible ?

 

Thanks

 

Marc-André Gaveau 

 

     

brent.hildebrand
Re: Incompatible Workspace
Posted: Monday, October 11, 2004 12:58 PM (EST)

Always Backup everything!  As for trapping OBSOLETE...,  you won't get this error message for workspace versions before v3.6 using v4.0 of the Interpreter (I think), but they still will not load in v5.0.  You can always read the []DM in the ActiveX session.  As for serialization mismatch - that is an issue, and a reason to backup everything before proceding.   If you want to live more dangerously, I believe the first 4 bytes of a workspace file as stored on disk is the version number of that workspace.

 

'myworkspace.w3' Œntie ¯1
      Œnread ¯1,323,1 0
36

 

APL+Win v5.0 using version 36 (3.6).

 

And, the 4 bytes starting at 28 bytes is the []WSTS, using the SECREP f rom the DATES workspace, you can calculate the timestamp in []TS format.  You might be able to replace the timestamp in the workspace if that is important to you.  Did I say, backup everything?  I'm sure that twiddling a stored workspace is a dangerous thing, so be warned.

 

Œnread ¯1,323,1,28
781951220
SECREP 781951220+2524521600
2004 10 11 8 40 20

 

I believe that the above will work for runtime workspaces also, but you still need the correct serial number in order to read the workspace into the development interpreter.  The above code was eluded to in a Tool talk in a prior Users Conference.   Did I remind you to back up everything first?  If you write a useful tool to do the conversion, post it here, so we can use it after we back up everything.  I have a few thousand workspaces lying around, which I also have backed up.....

     

brent.hildebrand
Re: Incompatible Workspace
Posted: Monday, October 11, 2004 4:47 PM (EST)
I just tried the []WSTS stuff above, and they are not the same for runtime and development copies of the same workspace. So don't trust it. Backup everything and be careful. :)

     

M.A.Gaveau
Re: Incompatible Workspace
Posted: Wednesday, October 13, 2004 5:44 PM (EST)

Your way to get the WS version works well , Brent, and I shall use it. Thanks.

I backup all my files moreless regularly and I had a copy of the runtime workspace that  I have lost, but after that, I decided to check that I had a copy of all my files .

 

[]WSTS is not very important for me ( a lot of my worskpaces contain already the date in their names, for example XXX_yymmdd,  because they contain specific functions to process data of the corresponding date ) and  I shall not take the risk of replacing directly the time stamp in the workspace (I don't want to live so dangerously).

 

I certainly shall write a small tool to do the conversion (I have already begun, but I check the different steps ). I have a question : where, in this web site, can I post the corresponding workspace when it will be ready? ( it does not seem that I can join it to the message )

 

Marc-André Gaveau

  

     

Jairo.Lopez
Re: Incompatible Workspace
Posted: Wednesday, October 13, 2004 5:48 PM (EST)
You can post your extremely useful workspace to the "Downloads\APL+Win Interpreter\User Contributed Files" or "Downloads\APL+Win Interpreter\Partner Contributed Files".
The only difference if you want the ws to be public (User Contributed Files) or just available to APLDN members (Partner Contributed Files).

     

M.A.Gaveau
Re: Incompatible Workspace
Posted: Wednesday, November 03, 2004 4:27 AM (EST)

I have posted a workspace CONVERTWS.W3 to "Downloads\APL+Win Interpreter\User Contributed Files", to do the conversion of old workspaces.

It works on my computers and I hope it will be useful to some of you.

However, be careful , backup your workspace files before processing.

 

Marc-André Gaveau

     

Gregory.Boldt
Re: Incompatible Workspace
Posted: Monday, August 15, 2005 10:13 AM (EST)
I downloaded your CONVERTWS.W3 but I cannot seem to get it to work for purposes. I am trying to convert w3's from version 2 to 5.2. As per the 'describe' variable, I executed the DOS commands (using the version 5.2 aplwCo.dll). From the CONVERTWS.w3 I am executing "0 Convertoldws 'c:\temp\' " and the program is kicking out on line 24 with a []wi error: exception 80004005. I also noticed that the program incorrectly identified the workspaces in the temp folder as being from version 3.4? Any help you can provide would be appreciated! Thanks.

     

Support
Re: Incompatible Workspace
Posted: Monday, August 15, 2005 2:59 PM (EST)

Gregory, your problem is likely to be that you have APL+Win version  5 registered as the ActiveX server and not version 4, the version required to use the CONVERTWS workspace.  This is stated in the describe variable in the workspace.

If you don't have a license for version 4 of APL+Win, as a courtesy, we will convert the workspaces for you using the CONVERTWS workspace.  Package your workspaces in a zip file and send them to support@apl2000.com and they'll promptly be returned to you once converted.

APL2000 Support

     

M.A.Gaveau
Re: Incompatible Workspace
Posted: Friday, September 23, 2005 5:07 PM (EST)

The workspace CONVERTWS.W3 that contains functions to convert automatically old workspaces incompatible with version 5 of APL+Win, has been modified :
It now takes into account files with an uppercase extension (‘.W3’), that were not converted by the previous version of CONVERTWS.
It can be downloaded from the « APL+Win Interpreter Downloads > User Contributed Files » section.

 

M.A.Gaveau

     

M.A.Gaveau
Re: Incompatible Workspace
Posted: Friday, September 30, 2005 5:32 PM (EST)

Davin Church noticed that the workspace CONVERTWS.W3 had internal damage :
It had been replaced by a repaired version that  can be downloaded from the « APL+Win Interpreter Downloads > User Contributed Files » section.

 

Marc-André Gaveau

 

     



APL2000 Official Web Site

The influence of each human being on others in this life is a kind of immortality.
--- John Quincy Adams

APLDN Home   |    |  Events   |  Trainings   |  APL Books   |  APLDN Links   |    |  Discussion Groups   |    |  Downloads   |  Articles   |  Library   |  Learning Tools   |  APLDN User IO   |  APL2000.com   |