Skip to main content

Morning All (South African Time!),

I have a server upgrade coming up for a 65 user customer currently on D3 Linux 10.2.

The plan is to go bleeding edge to 10.4 so have started the research and busy playing on a dev server.

First off I see FSI and a totally new installation procedure.  Last time I used FSI was 20 yrs back when a customer had D3/Windows on WindowsNT - still have nightmares about WindowsNT :)

So the point of my post is to ask for any hints and gotchas from those who have already done a similar migration, as I see there are a number of difference so it's not going to be a filesave & restore kind of migration.

We use MVSP and we shell out to Linux occasionally to kick off Bash & PHP scripts. We also use the spooler to kick off Python scripts to create PDFs and/or email reports.

Any pointers will be gratefully accepted!

Have a great weekend!

Thanks

Tom



------------------------------
Tom Power
Owner
Power Business Systems
Benoni ZA
------------------------------

Morning All (South African Time!),

I have a server upgrade coming up for a 65 user customer currently on D3 Linux 10.2.

The plan is to go bleeding edge to 10.4 so have started the research and busy playing on a dev server.

First off I see FSI and a totally new installation procedure.  Last time I used FSI was 20 yrs back when a customer had D3/Windows on WindowsNT - still have nightmares about WindowsNT :)

So the point of my post is to ask for any hints and gotchas from those who have already done a similar migration, as I see there are a number of difference so it's not going to be a filesave & restore kind of migration.

We use MVSP and we shell out to Linux occasionally to kick off Bash & PHP scripts. We also use the spooler to kick off Python scripts to create PDFs and/or email reports.

Any pointers will be gratefully accepted!

Have a great weekend!

Thanks

Tom



------------------------------
Tom Power
Owner
Power Business Systems
Benoni ZA
------------------------------

A couple of points:

  1. make sure you use the "restore-accounts (r" to restore into the FSI. (see Installation Guide)
  2.  see "Shell Execution" in Release Notes. The way this works will quite likely effect you.
  3. see "Calling Python from BASIC". All programs must be flash compiled.

It would have been nice if Basic programs were stored as separate files in a FSI directory so you can use modern tooling (git, vscode etc). Since they're also using Apache Thrift as the RPC mechanism, would be nice if that was opened to the extent of allowing external procedures to use the D3 DBMS.



------------------------------
Bryan Buchanan
Manager
WebbTide Systems Pty Ltd
Morayfield QLD AU
------------------------------

A couple of points:

  1. make sure you use the "restore-accounts (r" to restore into the FSI. (see Installation Guide)
  2.  see "Shell Execution" in Release Notes. The way this works will quite likely effect you.
  3. see "Calling Python from BASIC". All programs must be flash compiled.

It would have been nice if Basic programs were stored as separate files in a FSI directory so you can use modern tooling (git, vscode etc). Since they're also using Apache Thrift as the RPC mechanism, would be nice if that was opened to the extent of allowing external procedures to use the D3 DBMS.



------------------------------
Bryan Buchanan
Manager
WebbTide Systems Pty Ltd
Morayfield QLD AU
------------------------------

Thanks Bryan!



------------------------------
Tom Power
Owner
Power Business Systems
Benoni ZA
------------------------------

A couple of points:

  1. make sure you use the "restore-accounts (r" to restore into the FSI. (see Installation Guide)
  2.  see "Shell Execution" in Release Notes. The way this works will quite likely effect you.
  3. see "Calling Python from BASIC". All programs must be flash compiled.

It would have been nice if Basic programs were stored as separate files in a FSI directory so you can use modern tooling (git, vscode etc). Since they're also using Apache Thrift as the RPC mechanism, would be nice if that was opened to the extent of allowing external procedures to use the D3 DBMS.



------------------------------
Bryan Buchanan
Manager
WebbTide Systems Pty Ltd
Morayfield QLD AU
------------------------------

Hi Bryan,

You can set up BASIC files to be directories (and so have the programs directly accessible from the OS level), but there may be some drawbacks (I don't know, for example, if such configurations will include the BASIC code in D3 backups). I've tried this out, and what I do is:

CREATE-FILE DICT MY.BP 3

Then I edit the DICT MY.BP MY.BP record and replace it with this:

001: Q
002:
003: unix:/path/to/MY.BP

(Where "/path/to/MY.BP" is a valid directory in Linux with appropriate access permissions). With this the source code is available from the OS level and can be accessed by any tools that can get to the directory!

As I said, my disclaimer is that there may be unforeseen side effects of this, so use with caution!



------------------------------
Martin Shields
Senior Technical Consultant
Meier Business Systems PTY LTD
Carnegie VIC AU
------------------------------

Hi Bryan,

You can set up BASIC files to be directories (and so have the programs directly accessible from the OS level), but there may be some drawbacks (I don't know, for example, if such configurations will include the BASIC code in D3 backups). I've tried this out, and what I do is:

CREATE-FILE DICT MY.BP 3

Then I edit the DICT MY.BP MY.BP record and replace it with this:

001: Q
002:
003: unix:/path/to/MY.BP

(Where "/path/to/MY.BP" is a valid directory in Linux with appropriate access permissions). With this the source code is available from the OS level and can be accessed by any tools that can get to the directory!

As I said, my disclaimer is that there may be unforeseen side effects of this, so use with caution!



------------------------------
Martin Shields
Senior Technical Consultant
Meier Business Systems PTY LTD
Carnegie VIC AU
------------------------------

Hmm..... that's very clever. Seems to work. The only side effect (I can see ATM) is that the unix directory is not saved on a file-save tape.

:CREATE-FILE DICT TMP 3

[417] file 'TMP' created; base = 4582432, modulo = 3
:ED DICT TMP TMP
top
.P
001 Q
eoi 001
.I
001+.
001+unix:/tmp
001+
eoi 001
.f
top
.
001 Q
.
002 .
.r/.//
002 
.fi
[221] 'TMP' filed.

:ED TMP TEST
new item
top
.I
001+PRINT 'HELLO'
002+
top
.FI
[221] 'TEST' filed.
:BASIC TMP TEST
TEST
.
[241] Successful compile!   1 frame(s) used.
:RUN TMP TEST
HELLO

:exit

< Connect time= 7 Mins.; CPU= 0 Units; LPTR pages= 0        >
[pick@vmc /]$ vi /tmp/TEST

[pick@vmc /]$ ap
:BASIC TMP TEST
TEST
.
[241] Successful compile!   1 frame(s) used.
:RUN TMP TEST
HELLO
WORLD

Thanks Martin !



------------------------------
Bryan Buchanan
Manager
WebbTide Systems Pty Ltd
Morayfield QLD AU
------------------------------

Hmm..... that's very clever. Seems to work. The only side effect (I can see ATM) is that the unix directory is not saved on a file-save tape.

:CREATE-FILE DICT TMP 3

[417] file 'TMP' created; base = 4582432, modulo = 3
:ED DICT TMP TMP
top
.P
001 Q
eoi 001
.I
001+.
001+unix:/tmp
001+
eoi 001
.f
top
.
001 Q
.
002 .
.r/.//
002 
.fi
[221] 'TMP' filed.

:ED TMP TEST
new item
top
.I
001+PRINT 'HELLO'
002+
top
.FI
[221] 'TEST' filed.
:BASIC TMP TEST
TEST
.
[241] Successful compile!   1 frame(s) used.
:RUN TMP TEST
HELLO

:exit

< Connect time= 7 Mins.; CPU= 0 Units; LPTR pages= 0        >
[pick@vmc /]$ vi /tmp/TEST

[pick@vmc /]$ ap
:BASIC TMP TEST
TEST
.
[241] Successful compile!   1 frame(s) used.
:RUN TMP TEST
HELLO
WORLD

Thanks Martin !



------------------------------
Bryan Buchanan
Manager
WebbTide Systems Pty Ltd
Morayfield QLD AU
------------------------------

...and if you're running hot-backup the unix dir won't be replicated.



------------------------------
Bryan Buchanan
Manager
WebbTide Systems Pty Ltd
Morayfield QLD AU
------------------------------

Morning All (South African Time!),

I have a server upgrade coming up for a 65 user customer currently on D3 Linux 10.2.

The plan is to go bleeding edge to 10.4 so have started the research and busy playing on a dev server.

First off I see FSI and a totally new installation procedure.  Last time I used FSI was 20 yrs back when a customer had D3/Windows on WindowsNT - still have nightmares about WindowsNT :)

So the point of my post is to ask for any hints and gotchas from those who have already done a similar migration, as I see there are a number of difference so it's not going to be a filesave & restore kind of migration.

We use MVSP and we shell out to Linux occasionally to kick off Bash & PHP scripts. We also use the spooler to kick off Python scripts to create PDFs and/or email reports.

Any pointers will be gratefully accepted!

Have a great weekend!

Thanks

Tom



------------------------------
Tom Power
Owner
Power Business Systems
Benoni ZA
------------------------------

Howzit Tom, I lived in JHB for 20 years started my Pick career there in 1985 . Moved to the USA in 1998. Anyway I currently work for a company with an in-house developed Pick system. We actually use D3 on Linux 10.2 and we also use MVSP and are also looking to upgrade to 10.4 in the near future . So I'm very interested in your upgrade journey maybe I should wait till you've worked through all the challenges and are up and running on 10.4 . :) .  I can relate about FSIs as well. The first company I worked for in the USA was actually run by 2 South Africans and there were also 4 other South Africans including myself who worked there. We had had a package written in Pick. Most of our bigger clients used D3 on Linux but a few used D3NT , what a nightmare to support. 



------------------------------
Neil Pratt
Systems Analyst / Programmer
Daily Express Inc
US
------------------------------