Help try to restore Pick D3 to OpenQM

421 views
Skip to first unread message

Aquilino Edwin

unread,
Feb 24, 2025, 1:57:38 PM2/24/25
to Pick and MultiValue Databases
I am able to run OpenQM Rev 2.6-6 (Ladybridge Systems, 2007) in Fedora using Docker. I understand that there is no official support for OpenSource, but I am hoping to find some documentation on how to use it. Could someone kindly guide me on how to restore a save from "FILE>SAVE of pick"? I am aware that SD does not support FILE.SAVE on pseudotape to invoke T.DET or T.REW to initiate the file load and ultimately 'restore-account'. Could someone please point me in the right direction on how to migrate my accounts to OpenQM 2.6-6?  Also, do I need the "pick0" in D3 to migrate to OpenQM to define tapes and devices?

Brian Speirs

unread,
Feb 24, 2025, 2:12:48 PM2/24/25
to Pick and MultiValue Databases
Hi,
I am having to guess a lot here as we migrated from UV rather than Pick (and I don't have the GPL help files on hand right now - but you can download them from www.rushflat.co.nz ). Working off the commercial help files, you will need to do something like this:

set.device /path/to/tape/file AS
restore-accounts /path/to/dest/folder NO.OBJECT
t.rew
t.det

If the AS format in the set.device command doesn't work, you could try R83 - or just leave it off (in which case, the set.device command tries to figure out the tape format).
HTH,

Brian

Steven Martin Trimble

unread,
Feb 24, 2025, 2:38:46 PM2/24/25
to mvd...@googlegroups.com
check out the documentation: https://scarl.cdmiweb.com/
click on 'Index' - review ACCOUNT.RESTORE, ACCOUNT.SAVE, T.DUMP

Computerized Data Mgmt Inc
Steven Trimble
(501) 772-3450 cell/text


On Mon, Feb 24, 2025 at 12:57 PM Aquilino Edwin <aquilin...@gmail.com> wrote:
I am able to run OpenQM Rev 2.6-6 (Ladybridge Systems, 2007) in Fedora using Docker. I understand that there is no official support for OpenSource, but I am hoping to find some documentation on how to use it. Could someone kindly guide me on how to restore a save from "FILE>SAVE of pick"? I am aware that SD does not support FILE.SAVE on pseudotape to invoke T.DET or T.REW to initiate the file load and ultimately 'restore-account'. Could someone please point me in the right direction on how to migrate my accounts to OpenQM 2.6-6?  Also, do I need the "pick0" in D3 to migrate to OpenQM to define tapes and devices?

--
You received this message because you are subscribed to
the "Pick and MultiValue Databases" group.
To post, email to: mvd...@googlegroups.com
To unsubscribe, email to: mvdbms+un...@googlegroups.com
For more options, visit http://groups.google.com/group/mvdbms
---
You received this message because you are subscribed to the Google Groups "Pick and MultiValue Databases" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mvdbms+un...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/mvdbms/ef6be455-c4c6-4fa7-a78c-f31df6b7150an%40googlegroups.com.

Aquilino Edwin

unread,
Feb 25, 2025, 11:07:54 AM2/25/25
to Pick and MultiValue Databases
Thanks Brian and Steven I will try to restore it once I read the documentation.  

Aquilino Edwin

unread,
Feb 25, 2025, 7:49:52 PM2/25/25
to Pick and MultiValue Databases
Tried the commands below but not data has been restored.

:set.device /qmdata/qm/picktmp
BOT
Attached '/qmdata/qm/picktmp', block size 500
:
:t-rew
BOT
Block size : 500
:restore-accounts /qmdata/pick0 POSITIONED
Unrecognised block type
IBUF = |▒X▒g▒\]▒▒6▒▒▒§▒▒*▒M|▒O▒▒VE_KI▒{▒<▒fҵN▒▒▒d*?>▒|▒▒(▒▒▒<▒▒▒Kjp▒=▒▒
                                                                       ▒▒▒▒▒2▒▒5ψ▒a$˨Ȯ▒h
▒-7▒▒l▒,▒ղ▒▒▒▒▒i▒2▒q▒▒Y▒W▒M▒▒▒bi;▒M▒▒▒4eQ▒▒▒▒▒▒U▒▒▒Vu▒▒`▒4u▒u▒/▒▒WY▒▒YlR▒▒▒Y▒eU▒٪▒r퓋mu
▒/ʤ8▒▒▒▒(1▒▒۾▒▒f▒▒6딡x▒s▒,▒▒b▒XW▒▒▒Үhy▒[▒^e▒]▒\▒o▒mU/▒u▒7wj~ZQg▒M▒ի7▒j▒x[▒wg▒BRelΛݡ▒▒v▒▒
▒q▒▒▒▒▒▒▒W▒▒▒▒▒▒▒▒▒▒O▒▒▒▒▒▒▒▒▒▒c▒c1▒▒li2_3&▒X▒CR▒▒m▒▒8O0▒▒▒▒0▒eQf▒▒p▒KL▒7▒mUATNo_
DGLS▒▒▒▒XV{ѷ▒yjX3_!&▒▒▒▒-vU▒▒▒▒j▒▒۔▒f▒▒▒-6Ez▒▒▒X▒▒n%▒d▒▒?▒▒▒Y}▒▒▒▒▒▒?▒▒▒▒C▒▒x|x▒▒▒?~▒▒▒▒
▒:~▒▒▒▒9̑0;f▒▒▒7▒no▒rp▒▒6w▒&sCTОǬ7▒y▒.Y޸▒▒▒▒?▒▒#,▒▒▒▒U▒▒q▒▒GPQh▒rSo▒"
                                                              ▒▒)▒▒5
                                                                    JLh]V▒▒6▒ݾ▒▒s▒Q▒▒x▒▒
            i▒ݮ!▒</=mw^|
End of reel detected. Please enter name if next reel (blank to quit):

Restore Completed.

:

Steven Martin Trimble

unread,
Feb 26, 2025, 9:23:52 AM2/26/25
to mvd...@googlegroups.com
if you have a commercial QM license (get at least a 3 user), it has a program called 'QMSAVE'
click here: https://qmhelp.cdmiweb.com/ and then find 'QMSAVE'
you can modify the code to suit your needs.
then the commercial QM version has 'QMRESTORE' which you can also find here: https://qmhelp.cdmiweb.com/

works really well. there are some gotchas depending on the D3 environment.
It is basically ACCOUNT.SAVE and ACCOUNT.RESTORE
good luck

CDMI
Steven Trimble
(501) 772-3450 cell/text

Aquilino Edwin

unread,
Feb 26, 2025, 11:31:27 AM2/26/25
to Pick and MultiValue Databases
Good morning,  I found the article from your link "How to transfer data from other Multivalue System" unfortunately, I don't have a commercial license for QM.  Can I compile a source code, if it's available to run in D3 7.4.2 on/Linux RHEL5 environment?  

Thanks

Steven Martin Trimble

unread,
Feb 26, 2025, 11:49:28 AM2/26/25
to mvd...@googlegroups.com
You could get a 'trial' version of commercial QM
The GPL release does not have this procedure

CDMI
Steven Trimble
(501) 772-3450 cell/text

Aquilino Edwin

unread,
Feb 26, 2025, 12:18:08 PM2/26/25
to Pick and MultiValue Databases
I will contact Rocket to inquire about obtaining the trial keys. I understand that D3 will no longer receive enhancements, so I am exploring options to modernize our system, and QM may be a solution.

Aquilino Edwin

unread,
Feb 26, 2025, 1:40:52 PM2/26/25
to Pick and MultiValue Databases
It appears that Rocket Software is no longer prioritizing OpenQM and D3. The lack of trial downloads for Pick D3 and OpenQM hints that they have no plans for these products. Their focus now seems to be shifting primarily toward UniData, UniVerse, and jBASE MVs.

Steven Martin Trimble

unread,
Feb 26, 2025, 2:01:13 PM2/26/25
to mvd...@googlegroups.com
I started using QM from Ladybridge around 2006. Have not looked back.
The commercial version has everything needed for my clients.
Fast, (was inexpensive), light weight, and at that time, I got 10years support, plus AccuTerm for QM.
I now only use QM/Linux because well, you know Windows.
I also use the web server designed by EasyCo named Coyote. It literally runs inside of QM (available for D3 as well).
I had a client where we had up to 200 service reps running 'apps' on the single user USB/AccuTerm of QM/Windows.
The software would 'phone home' to the 'mother ship' for database upload / download and software changes with QM's feature of one QM system talking / updating to another QM seamlessly. Cool stuff.
good sir! and have fun

CDMI
Steven Trimble
(501) 772-3450 cell/text

Aquilino Edwin

unread,
Feb 26, 2025, 3:31:33 PM2/26/25
to Pick and MultiValue Databases
Hi Steven,

Thanks for the brief history. I'm working on this project because Rocket is charging almost $6,000 for a 10-user license of their D3/LX. I'm hesitant to upgrade due to the uncertainty of its future; the product will likely be end-of-life (EOL) in the next couple of years.

My goal is to modernize our current RHEL5 (data not encrypted and still using Telnet port 23' YIKES!) by migrating it to a modern system hopefully using it as a web server backend. While I have a strong background in e-commerce development and plenty of time to dedicate to building a new system, I'm not a Pick developer. First, I will need to modernize the Linux operating system, then I will see the possibility of migrating the database either by copying and pasting the pick BP 'file/progam' directly to QM or SD.  I realize this is a tall order, given my lack of Pick experience, but I'm committed to exploring options.

The previous developer on this project only provided a link to Pick documentation to get me started.  https://www3.rocketsoftware.com/rocketd3/support/documentation/d3nt/92/refman/

Thanks,
AE

Nivethan T

unread,
Feb 26, 2025, 5:38:51 PM2/26/25
to Pick and MultiValue Databases
Hi Aquilino,

As someone who does work in Pick, I'd agree with you that Rocket seems to be focusing on the U2 product lines more than anything.

The UniVerse forums has someone asking about switching from mvBase to another Pick system as well but I'm not sure if it's too helpful.

I work for Asynchron Systems and we've done a few migrations across flavors now and we recently updated a UniVerse on RHEL 5 to a modern Linux. You can reach out through our website just to have a call.


I'm not super handy with QM as we've done D3 to UV and mvBase to UV, but a hacky alternative that you can  do is to rip the data out into flat files and load them into QM. This would miss any triggers and indexes that files might have which you would need to recreate. You would also want to get a copy of the old MD and then copy over the relevant entries onto the new system. This might be time consuming but it's a manual way of migrating a system.

Brian Speirs

unread,
Feb 26, 2025, 7:27:26 PM2/26/25
to Pick and MultiValue Databases
If you can get the install script (or executable for Windows), then you can install QM with a "personal" licence. You do this by entering the word PERSONAL in the licence number field on the licencing screen.

Once you have QM installed, you can get the QMSAVE program from the BP file in the QMSYS account. Load this onto your D3 machine, compile it, and run it. The documentation says:

A full description of how to modify, compile and run this tool is included in the source code. The extracted data is moved to one or more export files, each with a numeric suffix and limited to a size set in the source code. Unless the exported data is visible from the QM system, the files should then be moved using binary mode FTP, removable hard drive or other data transfer method.

Commercial QM then has the QMRESTORE program to process this file. Given you have the source code and can look at the contents of the transfer file(s), you may be able to reverse engineer this.

Another option would be to use AccuTerm's file transfer programs. But that would require you to manually create every file on the QM system, and the overall process would be slow.

As has been posted elsewhere, creating CSV transfer files (or similar) is trivial, and the transfer files can be easily imported into QM.

Cheers,

Brian

martinp...@ladybridge.com

unread,
Feb 27, 2025, 5:40:37 AM2/27/25
to mvd...@googlegroups.com

Recent communications from Rocket have given a strong indication that the commercial OpenQM product is no longer being actively marketed. Although licences are still available, users are being encouraged to move OpenQM applications to UniVerse or jBASE. It appears that D3 users are similarly affected.

 

The GPL version of OpenQM is 17 years old and lacks the many later developments that have been invaluable to application developers. It also is for Linux only.

 

As the original developer of OpenQM, I never thought that I would say this but I would not advocate migration of your existing Pick application to the commercial OpenQM product.

 

 

Martin Phillips

philippe GRACIA

unread,
Feb 27, 2025, 8:26:05 AM2/27/25
to mvd...@googlegroups.com
hello martins! can you give the link about this communication ? we're using D3 and looking for something else for future...


--
You received this message because you are subscribed to
the "Pick and MultiValue Databases" group.
To post, email to: mvd...@googlegroups.com
To unsubscribe, email to: mvdbms+un...@googlegroups.com
For more options, visit http://groups.google.com/group/mvdbms
---
You received this message because you are subscribed to the Google Groups "Pick and MultiValue Databases" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mvdbms+un...@googlegroups.com.

Bill H

unread,
Feb 27, 2025, 11:56:02 AM2/27/25
to Pick and MultiValue Databases
Many years ago I migrated from D3 to UniData.  Although the end result works wonderfully, there are some aspects of D3 I miss and the migration was more difficult than it had to be.  If I was to do it now I'd migrate from D3 to UniVerse.  It sounds like Rocket is simply buying product then killing it to ease their support and development of MV.  I guess this makes sense, it has always been the Microsoft model.

Bill

tomma...@aircraftspruce.com

unread,
Feb 27, 2025, 1:48:37 PM2/27/25
to mvd...@googlegroups.com

I spoke to Brian at Rocket. D3 isn’t going anywhere, but they are not developing any new features. Just bug fixes and other patches.

 

As for migrating to a web GUI, I would be interested to know what Universe and/or jBase provide that makes that work.  I’m currently using an OSFI library that I developed to access D3 like a generic DB, but it doesn’t’ support calling subroutines.  I’m doing that with triggers which works but it’s not ideal or efficient.

 

Tom

Aquilino Edwin

unread,
Feb 27, 2025, 2:02:26 PM2/27/25
to mvd...@googlegroups.com
Hi Martin,

 Thank you for your honest feedback. I appreciate getting input from the original developer of OpenQM. I have a question regarding running OpenQM on modern Linux with a very old system. Our current system is dated "07 Jun 2004 6386 D3 Release Version 7.4.2.LINUX." We plan to run OpenQM (or Universe) on a modern OS (penetration testing for the Linux host), maybe for a year or two while we buy the time to find a suitable replacement and modernize our stack. What considerations in your opinion should I take to ensure a smooth transition?  Thank you!!  

AE

--
You received this message because you are subscribed to
the "Pick and MultiValue Databases" group.
To post, email to: mvd...@googlegroups.com
To unsubscribe, email to: mvdbms+un...@googlegroups.com
For more options, visit http://groups.google.com/group/mvdbms
---
You received this message because you are subscribed to the Google Groups "Pick and MultiValue Databases" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mvdbms+un...@googlegroups.com.

Steven Martin Trimble

unread,
Feb 27, 2025, 2:22:16 PM2/27/25
to mvd...@googlegroups.com
for many years now, I have incorporated the Coyote server into mvBASE, D3, and openQM.
Coyote resides within the database itself (ie: not outside looking in) and you have (2) methods of creating HTML page results. Coyote uses the PICK Basic programming language along with the html language.
One of the ways to program reminds me of PROC. You literally write the HTML and 'file it'. It may contain PICK/Basic call subroutines so opening, reading, writing, deleting is just like any other PICK/BASIC programming with the exception of presentation. Presentation is browser based.
The other way to program requires a pre-compiler within Coyote. I have been using it since its inception. Never been hacked.
Really fun stuff. I love not being limited to the number of columns / rows (terminal based presentation). The browser does a lot of the heavy lifting. And printing. Well, I don't have to worry about any of it. Let the browser do it.

CDMI
Steven Trimble
(501) 772-3450 cell/text

tomma...@aircraftspruce.com

unread,
Feb 27, 2025, 2:55:32 PM2/27/25
to mvd...@googlegroups.com

Steve,

 

I was going to have a look at Coyote.  I don’t see anything about https in their docs. Do they not support it? And if they don’t, how are you doing this securely?

Nivethan T

unread,
Feb 27, 2025, 3:07:05 PM2/27/25
to Pick and MultiValue Databases
Tom,

At the risk of derailing the thread, UniVerse has a few ways of doing web stuff, you have MVIS which is a java server that you can use to do subroutine calls. You also have UniObjects which let's you communicate to UniVerse. Intercall is another option for C.

I've wrapped the intercall library with nodejs so you can trigger subroutine calls that way as well:

geneb

unread,
Feb 27, 2025, 3:18:09 PM2/27/25
to tommarracci via Pick and MultiValue Databases

On 2/27/2025 10:48 AM, tommarracci via Pick and MultiValue Databases wrote:
>
> I spoke to Brian at Rocket. D3 isn’t going anywhere, but they are not
> developing any new features. Just bug fixes and other patches.
>
> As for migrating to a web GUI, I would be interested to know what
> Universe and/or jBase provide that makes that work.  I’m currently
> using an OSFI library that I developed to access D3 like a generic DB,
> but it doesn’t’ support calling subroutines.  I’m doing that with
> triggers which works but it’s not ideal or efficient.
>
> Tom
>
>
Tom 99% of my client stuff is written in either C# or VB.Net and I'm
leaning heavily on the MVSP API for D3.  It works very well.

I think there's going to be an update of the MVSP library soon that will
allow using .Net under Linux as well.


g.

tomma...@aircraftspruce.com

unread,
Feb 27, 2025, 3:31:19 PM2/27/25
to mvd...@googlegroups.com

Steve,

 

The download available that I can find is 32bit. To your knowledge, is there a Coyote version for D3/Linux that is 64 bit?

Steven Martin Trimble

unread,
Feb 27, 2025, 3:40:11 PM2/27/25
to mvd...@googlegroups.com
I use lets encrypt and a 'virtual host' via Apache:
<VirtualHost 173.195.146.81:443>
  ServerName cdmiweb.com

CDMI
Steven Trimble
(501) 772-3450 cell/text

tomma...@aircraftspruce.com

unread,
Feb 27, 2025, 3:42:49 PM2/27/25
to mvd...@googlegroups.com

Hmm. How does the request get to Coyote? I thought Coyote was the web server software as well.

Steven Martin Trimble

unread,
Feb 27, 2025, 3:44:34 PM2/27/25
to mvd...@googlegroups.com
As far as I know, there is no 32bit Coyote daemon.
I run 64bit Rocky Linux 8.10 and/or CentOS 7 and install the 32bit libraries necessary to  run openQM and Coyote.
Doug Dimitru is the author of Coyote / owner of Easy Co.

CDMI
Steven Trimble
(501) 772-3450 cell/text

tomma...@aircraftspruce.com

unread,
Feb 27, 2025, 3:49:40 PM2/27/25
to mvd...@googlegroups.com

Ok, last question:  If I already have some C programs in my px_user.o linked to my D3/Linux 10.2. How can I include Coyote? It looks like it takes over px_user and I lose my own custom code. Is that something you’ve had to deal with?

Steven Martin Trimble

unread,
Feb 27, 2025, 3:55:10 PM2/27/25
to mvd...@googlegroups.com
My config is:
Linux
Apache
openQM or D3 or mvBASE
PHP

I let Apache handle anything static (like images, etc) and let Coyote handle ALL dynamic presentations.
And of course, the way Coyote works, you can 'insert' dynamic 'on the fly data' within a static template.
I do a lot of that. Create the template with 'tags' and let the PICK/BASIC program build the needed html along with the data. I use 'SWAP' to handle things like this.
Works quite well. Resilient and very scalable.
Since Coyote runs as 'phantom(s)', user licenses are not impacted.
So, take a 3 to 10 user openQM license and run 100plus or more web users.
If you are not using QM (which has QMNet), Coyote also has the ability to perform RPC call(s) to other servers running 'strictly' as RPC servers to gather data if need be.

CDMI
Steven Trimble
(501) 772-3450 cell/text

Steven Martin Trimble

unread,
Feb 27, 2025, 3:56:59 PM2/27/25
to mvd...@googlegroups.com
Coyote runs as phantom(s). I am totally ignorant about C
sorry

CDMI
Steven Trimble
(501) 772-3450 cell/text

Steven Martin Trimble

unread,
Feb 27, 2025, 4:07:27 PM2/27/25
to mvd...@googlegroups.com
here is method 1 of a Coyote html page (kind of like PROC no compiling)
here is the actual link: https://cdmiweb.com/qmd/BASE64.HTM
notice the above link is 'secure'

QM has a base 64 function.

<!DOCTYPE HTML>
<html>
<head>
<TITLE>Base64 by CDMI</TITLE>
<meta name="copyright" content="&copy; 2015 cdmiweb.com All rights reserved.">
<meta name="creator" content="cdmiweb.com">
<meta name="author" content="cdmiweb.com">
<meta name="publisher" content="cdmiweb.com http://www.cdmiweb.com/">
<meta name="title" content="cdmiweb.com">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel=StyleSheet href="DOCS_01.CSS" type="text/css" media="screen">
<style  type="text/css">
{
@import "compass/css3";
$text: black;
$shadow: #cccccc;
$outline: #ffffff;
$selected: #CC3300;
$unselected: #cccccc;

div {
  margin: 0 0 0.75em 0;
}

input[type="radio"] {
    display: none;
}
input[type="radio"] + label {
    color: $text;
    font-family: Arial, sans-serif;
    font-size: 16px;
}
input[type="radio"] + label span {
    box-shadow: 0 0 0 2px $shadow;
    display: inline-block;
    width: 24px;
    height: 24px;
    margin: -1px 7px 0 0;
    vertical-align: middle;
    cursor: pointer;
    border-radius: 50%;
}

input[type="radio"] + label span {
  border: 8px solid $outline;
  background-color: $unselected;
}

input[type="radio"]:checked + label span{
  background-color: $selected;
}
</style>
</head>
<body>
<form name="BASE64" method="post">

<table width="600px" bgcolor="#FFFFFF">
<tr><td class="errmsg">|RAW(ERR$MSG)|</td></tr>
<tr>
<td valign="top">
 <table width="100%">
  <tr>
   <td width="15%">
    <div>
     <input type="radio" id="radio01" name="mode" value="O" />
     <label for="radio01"><span></span>oCONV</label>
    </div>
    <div>
     <input type="radio" id="radio02" name="mode" value="I" />
     <label for="radio02"><span></span>iCONV</label>
    </div>
   </td>
   <td>Value to convert<br><input type="text" name="RAWSTR" value="|RAW(RAWSTR)|" size="60"></td>
  </tr>
 </table>
</td>
</tr>
<tr>
<td align="center">
<input type="submit" name="SUBMIT" value="Submit">&nbsp;&nbsp;&nbsp;
<input type="submit" name="CLOSEIT" value="Close" onClick="self.close();return false">&nbsp;&nbsp;&nbsp;
<input type="submit" name="PRINTIT" value="Print" onClick="javascript:window.print();return false">
</td>
</tr>
<tr>
 <td bgcolor="#FFF">Base 64 on |RAW(RAWSTR)| using <b>|RAW(MODE)|conv</b> returns:<br>|RAW(STR)|</td>
</tr>
</table>
</form>
<pre>
PicLan-IP/BASIC | |
!
* 01-21-16 smt base64 oconv and iconv
!
RAWSTR = '' ; ERR$MSG = '' ; STR = ''
PL_GETVAR MODE FROM \mode\ ELSE
 PL_GETVAR MODE FROM \MODE\ ELSE MODE = '' ; GOTO 20000
END
PL_PRINT \ \
PL_PRINT \base64.htm\
PL_PRINT \mode \:MODE
MODE = OCONV(MODE,"MCU")
IF MODE <> \O\ THEN MODE = \I\
PL_GETVAR RAWSTR FROM \rawstr\ ELSE
 PL_GETVAR RAWSTR FROM \RAWSTR\ ELSE RAWSTR = '' ; GOTO 20000
END
PL_PRINT \rawstr \:RAWSTR
IF MODE = \O\ THEN STR = OCONV(RAWSTR,"B64") ELSE STR = ICONV(RAWSTR,"B64")
!
20000 *
!
</pre>
</body>
</html>

So, from the example above, from <pre> to </pre> is PICK/Basic (in the case openQM)
Prior to the <pre> is html presentation
Very simple. The PL_PRINT is Coyote's method of printing to the screen or to a $COMO file in openQM.

CDMI
Steven Trimble
(501) 772-3450 cell/text

CDMI - Steve T

unread,
Feb 27, 2025, 4:46:59 PM2/27/25
to Pick and MultiValue Databases
Earlier in this thread I said:  As far as I know, there is no 32bit Coyote daemon.
My fat fingers. It should have said:  As far as I know, there is no 64bit Coyote daemon.
My apologies

tomma...@aircraftspruce.com

unread,
Feb 27, 2025, 5:06:19 PM2/27/25
to mvd...@googlegroups.com

No worries. Looks like PIPES is the default method anyway so no linking will be required. 

 

I dabbled in something like this a couple of years ago before I knew about Coyote. It’s an Apache module that I created in C++ that works like PHP.  It compiles and executes basic code on the fly.  I used my OSFI interface to access pick data and implemented all of the pick statements and functions that would be permissible in this environment.  Pretty much everything but INPUT and a handful of device type statements that I wasn’t going to use anyway.  Use PRINT to output HTML or exit code mode and output html inline (just like PHP).  For example:

 

<!DOCTYPE html>

<html>

<head>

<title>

<*

 PRINT ‘here is my page title’

 

* note I’m using <* *> as beginning and ending sentinels to process Basic code

 

*>

</title>

</head>

<body>

<*

  For I = 1 to 100

 Print ‘hello world for the ‘:i:’th time’

  Next i

*>

</body>

</html>

bdeck...@gmail.com

unread,
Feb 28, 2025, 2:41:28 PM2/28/25
to mvd...@googlegroups.com
A few things of interest are n JBASE.
- high performance rest server
- enhanced locking models including web session based locking with timeouts.
- remote debugger makes it easier to debug restful services in basic
- dynamic object variable type.
- inbuilt methods fromjson() and tojson() to/from dynamic objects 
- true native compiling via native c compiler for fast, on the tin performance.
- classes and methods in basic 
- direct c inlining
And more.


Sent from my iPhone

On Feb 27, 2025, at 1:07 PM, Nivethan T <thniv...@gmail.com> wrote:



Aquilino Edwin

unread,
Feb 28, 2025, 4:43:58 PM2/28/25
to Pick and MultiValue Databases
Good day sir,

Is it easy to migrate Pick files and dictionaries from D3 to jBase? I will download jBase and try it if Rocket will not just kill it in a couple of years.  My long term plan is to implement a web-based GUI client/console (similar to Cockpit) frontend . I want to move away from traditional terminal connections like Telnet and eliminate the need for software installation on my users computers. Security is a major concern in our current infrastructure (Old Linux should be decom), especially since passing penetration testing is critical. I will try jBase and contact Rocket for a trial or 2-user license.

Thank you!
AE

bdeck...@gmail.com

unread,
Mar 2, 2025, 9:59:23 PM3/2/25
to mvd...@googlegroups.com, and MultiValue Databases Pick
Regarding killing JBASE.  I have observed rocket hiring many new MV developers and I would estimate the majority are assigned to JBASE.  From the time Rocket purchased, to now, the team is much larger.  Rocket calls JBASE a "progressive, roadmapped product". 

2) regarding ease of migration, Rocket has been working on a project to add D3 Functionslity to jBASE such as case insensitivity, %functions, user exits, and more.  I believe most, if not all of this has been released.  Rocket wants to give users options and also a smooth path from D3 to JBASE.  I would be happy to help off line so that we don't hijack the thread.  If you get a copy, make sure to ask for the D3 compatibility kit, or at least read up on d3 emulation on JBASE before setting off on an attempt.  My cell is 303.905.4110 if you would like some pointers.  Disclaimer: I work for Rocket but have been using JBASE for decades, long before I came here.


Sent from my iPhone

On Feb 28, 2025, at 2:44 PM, Aquilino Edwin <aquilin...@gmail.com> wrote:

Good day sir,
Reply all
Reply to author
Forward
0 new messages