Browse all forums dedicated to the Rocket MultiValue product family.
Recently active
hello,While using the release 11.x of UV if I want to start a process at the start of Universe on Windows, I'm used to define a ScheduledTask with Trigger OnEvent with a subscription like this <QueryList> <Query Id="0" Path="UniVerse"> <Select Path="UniVerse"> *[EventData[Data="UniVerse (log daemon) started"]] </Select> </Query> </QueryList> but, on release 12, I do not get the "UniVerse (log daemon) started" anymore , the only event I can imagine usable is <EventData> <Data> C:\\U2\\UV\\bin\\uvcleanupd.exe Uvcleanupd Daemon started by pid (11828) </Data> </EventData> ok, I must analyse the Data value in my process because EventLog Triggers use limited xpath query and do not support *[EventData[contains(Data,"Uvcleanupd Daemon started")]]Is anyone have another idea on uv/win r12 ? many thanks------------------------------Manu Fernandes------------------------------
Once the UniRPC daemon spawns either a uvcs or uvserver service and the service has established a UniVerse session, is it possible from within the session to determine if the connection is secured via SSL/TLS?The uvcs sessions run the *UOLOGIN subroutine and uvserver sessions run the *ODBCLOGIN subroutine, so there is a possibility to perform BASIC code to query the security status of the current session. I just have not found a way to determine the security status of the session.------------------------------Gregor ScottSoftware ArchitectPentana Solutions Pty LtdMount Waverley VIC Australia------------------------------
A fancier shell for Universe on Linux that has support for persistent history and history searching. It also has easy access to the help files through a MAN command.https://github.com/Krowemoh/NovaShellI've been use it daily for about 6 months now so hopefully its at a point where it's usable by more than just me. I use vt100 and viewpoint as my terminal type usually so that is the most tested but a few other terminal modes should work as well.Let me know if anyone has any ideas or issues, the big thing I'd like to add is color but the ANSI escape codes don't seem to work and I don't want to use the terminal codes.------------------------------Nivethan ThiyagarajahProgrammerAsynchron Systems IncToronto ON CA------------------------------
Excellent information sir, thank you.On Wed, Jun 1, 2022 at 4:00 AM Jonathan Smith via Rocket Forum wrote:> Kevin, In terms of intervals and how cleanupd works I have covered this in> several technical presentations in the past. I'd have to check to see...> Invite your colleagues to join the Rocket Forum and grow our expert> network.> ------------------------------> [image: Rocket Software] > Rocket U2 | UniVerse & UniData> > Post New Message Online> > Invite your colleagues to join the Rocket Forum and grow our expert> network. Share this link. > Re: Unidata 8.1 [AIX] - Cleanupd and Record Locks> > Reply to Group Online> > [image: Jonathan Smith]> > Jun 1, 2022 5:58 AM> Jonathan Smith> > Kevin,>> In terms of intervals and how cleanupd works I have covered this in> several technical presentations in the past. I'd have to check to see if> they are still posted on the Rocket sites. Please excuse the length of> response but this should answer all your questions.>> The cleanupd.log in the
Please advise With the ongoing power failures, we are experiencing that users are beingkicked off from their pc's or terminals , But the user session is still openon the server. In other words, when doing a LISTU it still shows theseusers as being logged on. Is there a config/timeout-setting that can logoffthese dead sessions automatically after e.g. 1 minute? RegardsLappies Labuschagne -- This email has been checked for viruses by Avast antivirus software.https://www.avast.com/antivirus
We are writing a deployment process for Azure and need to be able to set a Bash error if the deployment process generates an error. The script is executed from the shell level with "uv DEPLOYSCRIPT' and it will exit back to the shell when done. So far, after each test, I'm seeing a Bash exit code 0... How do I force an exit error, better yet with a message such as 'exit 1 FAILED TO COMPILE ABCD EFGH'...------------------------------Jeff TeterWoodforest National BankThe Woodlands, TX------------------------------
Im trying to create a program that will call the AE command for me when typing 'ED' at TCL, but will leave anyone else in the 'ed' editor. I got that to work pretty easily but not sure how to make it work for a second level - such as after a select. Suggestions anyone? I don't want to give up my AE! But remembering to not type 'ED' isnt likely after 37 years! Last place we just all used AE so we replaced ED with AE, can't do that here :(Thanks------------------------------Kathleen HambrickProgrammer at Colwell------------------------------
If you have ever used D3, you may have interacted with the PEQS file which contains the hold entries for print jobs. Out of the box, jBASE stores its hold entries in a header/detail style: The header can be found in jspool_log keyed by DEVJOBS*job The detail is under the jobs directory and then under the relevant formqueue_n directory. Both jspool_log and jobs are located under the directory defined by the environment variable JBCSPOOLERDIR.Use jdiag if you're not sure where JBCSPOOLERDIR points.At the end of this post is the source code for a jEDI driver that will put the above header/detail and make it appear like the PEQS file.To use this (once it's compiled/cataloged): create-file peqs type=object class=peqsjedi You should get the following output: [ 417 ] File peqs]D created , type = OBJECT [ 417 ] File peqs created , type = OBJECT We can now list it: $ LIST peqs PAGE 1 11:00:16
Hi allAnyone out there been able to "connect" to Windows drives other than C: ?I've setup a network drive called 'S' and try as I may D3 will not "see" this.I've looked into the hosts file and the D3 manual (last restort) but nada.It works fine if you stick with C: but any other network defined drive #.Anyone else had this - or have a solution?RegardsStefano------------------------------Stefano GallottaManaging MemberSimply Red Open SystemsMilnerton ZA------------------------------
jEDI that allows you to access the XML file as if it was a standard jBASE hashed file During a training class for jBASE, I was aided by Charles Barouch, Jenna Hernandez and Tyler McDonough in designing a jEDI to access XML files.I want to thank them for their contributions and the brainstorming session. This blossomed into the jEDI attached to this post and may be handy for anyone needing to access XML files from jBASE. When run against a 500,000 record XML file with a size of 94Mb, it can access all the items in the file in just under 2 minutes. Why have to read and decode an XML file that looks like this <CATALOG><PLANT><XMLROW>1</XMLROW><COMMON>Buttercup</COMMON><BOTANICAL>Erythronium americanum</BOTANICAL><ZONE>21</ZONE><LIGHT>Mostly Shady</LIGHT><PRICE>$12.59</PRICE><AVAILABILITY>12,599</AVAILABILITY></PLANT><PLANT><XMLROW>2</XMLROW><COMMON>Greek Valerian&
The Rocket MultiValue team is pleased to announce the availability of the Rocket MV BASIC for Visual Studio Code 1.6.0 extension, now available on the Visual Studio Code Marketplace. Rocket MV BASIC for VS Code (MVVS) allows BASIC developers to edit, compile, and now debug their BASIC applications in one of the most popular development environments, Microsoft Visual Studio Code. The release of MVVS 1.6.0 includes a preview of the Debugging functionality. By detecting and analyzing errors in your BASIC code, the Debugging feature makes it easy to debug and fix BASIC programs. The 1.6.0 Debugging feature is considered an MVP (Minimal Viable Product) and we will continue to enhance and refine it over a series of releases. MVVS version 1.6.0 includes: Debugging (MVP* version) - version 1.6.0 allows debugging of BASIC programs when the extension is connected to a UniVerse server Supported MVP Debugging Operations: Break Point Continue Step-In, Ou
Had a couple of D3 Linux systems who were having trouble getting host authentication to work on Linux version 8 systems authenticating to Active Directory Original test: Using AD user, got "invalid user or password" loop upon entering "d3" Using local user in /etc/password it worked Findings: By default, AD integrated with PAM uses Windows GPO policies ( like local users, blah blah ) When you SSH and log into Linux, you are being authenticated with a token to AD, the user is run through the PAM SSHD module ( identical to D3 module ) When you enter "d3" at the bash shell to get into D3, it does a query against a different PAM module called d3 ( identical to sshd ). That PAM module ( d3 ) is not authorized to run PAM authentication. Consequently, it cannot query active directory with a token. Solution: Add this line to /etc/sssd/sssd.conf: ad_gpo_map_interactive = +d3 You'll then need to reboot D3 and maybe Linux as well.------------------------------Brian S. CramPrincipal Technical
A common practice in legacy multi-value applications is/was to write controlling records to denote a user being logged in, or running a specific menu option.A problem with that design is if the program doesn't wrap-up normally (either due to a bug or the session was logged off or perhaps dropped into the debugger and the user aborted) the control record is left in place.jabba to the rescue!!A very useful feature of dynamic objects (written in jabba which is an extension to the jBC language) is that if a class has a destructor method, that method will be called when jBASE wraps up the work-space/session.Example:WRAPUP_TEST.b PROGRAM WRAPUP_TEST INCLUDE JWRAPUP_SESSION.h OPEN 'CONTROL' TO F.control ELSE STOP 201,'CONTROL' WRITE TIMEDATE() ON F.control,@LOGNAME LOOP CRT "Waiting to be killed...": INPUT cont,1_ CRT "We weren't killed....don't touch the keyboard" REPEAT The above program will write a timestamp to the file CONTROL for the logged in user name (@LOGNAME). It th
I just took a case with a guy who was using READU and WRITEU to lock and retain a lock on a file. The reads and writes would work for a while, then after a week or so, a group lock would be set that prevented the WRITEU. No apparent reason. Then he remembered that he had a CALLX on the file. Turned out there was a bug in the trigger that was creating an item ID for an audit file. Circumstances sometimes led to the ID being more than 100 bytes long causing the CALLX to fail and strand the group lock. He found and fixed the issue.Thing is, he's lucky that the trigger was failing in a way that caused a lock contention that triggered ( pun intended ) an investigation. If the trigger had failed in some other way that allowed the main process to continue without error, the update to the file would also have failed without overt warning. Yes, there would most likely be something in the ERRORS or RUNTIME-ERRORS files, but nothing that would have sent the process into the debugger or anything e
Is the accuterm documentation available online here in the Rocket site?I am attempting to FTD data into a spreadsheet where a given column is a calculation. Example column a divided by column b placed into column c. I can put the expression into the data field I will download and the expression executes BUT the data filled in the excel sheet is the result. I want the formula to be loaded into that column, not the result. The display should look the same BUT with the expression in the field, where changing column a or b alters column c automatically.Does anyone know how this could be accomplished?------------------------------Kathleen HambrickProgrammer at Colwell------------------------------
Hello,We have a legacy application that is supported by an analyst that will be retiring. We are looking to find a vendor that can help support the application. Some details:Some Details:• Software: Rocket U2 UniVerse • Version is: 11.2.5 in Prime Information format• Emulator: SecureCRT • Operating system: UNIX Solaris 10 (SunOS 5.10)• It is running on virtual Solaris: 64-bit amd64 kernel modulesIf anyone knows of or can recommend any vendors that provide AMS for an application built on Rocket U2 Universe, I would appreciate the information.Thanks,Darcy
A friend of mine got bit by an upgrade from PHP 5 to PHP 7. He was accessing the MVS Toolkit from PHP by creating a URI and retrieving data by passing that URI to file_get_contents then parsing the returned JSON object as follows:$uri = "https://xx.xx.xx.xx:8181/ws/wso?param=whatever";$jsonStr = file_get_contents($uri);Because security has become a lot tighter over the last few years, that code resulted in an SSL failure error. He was able to correct this by adding the following code:$uri = "https://xx.xx.xx.xx:8181/ws/wso?param=whatever"; $arrContextOptions=array("ssl"=>array("verify_peer"=>false,"verify_peer_name"=>false,),); $jsonStr = file_get_contents($uri, false , stream_context_create($arrContextOptions));------------------------------Brian S. CramPrincipal Technical Support EngineerRocket Software------------------------------
If you're using Linux there's a trick you can use to run procs as bash scripts.First we'll use "vi" to create our proc/script:$ vi ~/bin/jqlselIn vi type the following:!!which jpqWhich should result in something like the following (on line 1)/opt/jbase/CurrentVersion/bin/jpqNow prefix with the bash prefix required by typing I#!<escape>resulting in#!/opt/jbase/CurrentVersion/bin/jpqNow we can proceed with our proc as normal#!/opt/jbase/CurrentVersion/bin/jpqPQH<<Enter selection command>>pH<<Enter command>>PNext make it executable $ chmod +x jqlsel And now we can run it like any command: $ jqlsel Enter selection command: SELECT mycust SAMPLE 10 Enter command: SORT mycust BY LASTNAME ------------------------------Peter FalsonRocket Internal - All Brands------------------------------
SUBROUTINE XMLJEDI(parameters, jedi_command, item_id, data_record, defer_commit, error_code)* 04/27/22 by Dan Ell, Tyler McDonaugh, Jenna Hernandez, Charles Barouch *! ********************************************************************** *! Creates an xpath model of all the tags in an XML document *! and treats the XML document like a read-only jBASE file. *! ********************************************************************** *!! Add this to the current directory to create a jEDI file for XML!! ED . SAMPLE.XML! .I JBC__SOB JediInitSUB XMLJEDI filename=/big/tmp/SampleLarge.xml,xmlmap=SAMPLE.MAP,dict=SAMPLE.XML]D! 001 JBC__SOB JediInitSUB XMLJEDI filename=/big/tmp/SampleLarge.xml,xmlmap=SAMPLE.MAP,dict=SAMPLE.XML]D! .FI!! xmlmap is the item ID to XML.MAPS which holds this information!! ED XML.MAPS SAMPLE.MAP! 001 Sample PLANT xml file <-- Description (not used in this program)! 002 PLANT <-- Record tag pre-defined (not in this program), <Record> ... </Record>! 003
A new jEDI that allows you to access the XML file (currently read-only) as if it was a standard jBASE hashed file with the key being the row of the XML file.XMLJEDI is the JEDI program. MAKEXML will generate a sample XML item with however many data items you want. TEXTXML allows you to test for best blocksize for the XML file. With this new JEDI, you can add dict= portion of param and it will create DICT items when the XML is first mapped. You can also specify the blocksize. When run against a 500,000 record XML file with a size of 94Mb, it can LIST the file in 3 minutes and 24 seconds. Here is an example of the jEDI stub for a sample xml file called /big/tmp/SampleLarge.xml : jsh>ED . SAMPLE.XML<Enter>New Record SAMPLE.XML TOP I<Enter> 001+ JBC__SOB JediInitSUB XMLJEDI filename=/big/tmp/SampleLarge.xml,xmlmap=SAMPLE.MAP,dict=SAMPLE.XML]D,blocksize=63488<Enter> 002+<Enter> FI<Enter> After you add the jEDI stub to the current directory, you creat
I'm working on a script to copy files at the Linux level from one folder to another. The commands are:SH -c"find CIF.IMAGES -type f -exec mv {} /bl1/newfolder \\;"CIF.IMAGES is a folder in my account and I'm trying to move all of the files to the newfolder in /bl1. The issue is that the paragraph interpreter is seeing the "\\" as an unmatched quote and fails, so nothing gets moved.Suggestions?------------------------------Jeff TeterWoodforest National BankThe Woodlands, TX------------------------------
------------------------------Jill OrsiniInside Sales MVRocket Internal - All Brands------------------------------
In jBASE 5.8, an enhancement to the BASIC (aka jBC) compiler has made comparisons against '' (empty string) dramatically faster.Historically it was quicker to compare the LEN() of a variable against 0 to test if a variable was '' (NULL). For example if you're on 5.7 (or earlier) try the sample code. workVar = STR('the quick brown fox jumps over the lazy dog', 10000) startTime = SYSTEM(12) FOR I = 1 TO 10000 IF workVar NE '' THEN END NEXT I CRT 'First FOR loop took: ':SYSTEM(12)-startTime startTime = SYSTEM(12) FOR I = 1 TO 10000 IF LEN(workVar) THEN END NEXT I CRT 'Second FOR loop took: ':SYSTEM(12)-startTime On 5.8 the statement: IF workVAR NE '' THEN now gets compiled to a special function (this is also true for EQ '') that performs the same as IF LEN(workVar) NE 0 THEN so the sample program (above) will produce similar results (depending on system usage).------------------------------Peter FalsonRocket Internal - All Brands------------------------------
Voting for DBTA Readers' Choice Awards is open now through Wednesday, May 11, 2022. DBTA will feature the award winners in a special section of the August edition of DBTA Magazine, and at www.DBTA.com. Rocket Software is proud to have Rocket Software MultiValue Suite (D3, UniVerse, UniData, jBASE and OpenQM) in the "Best MultiValue Database" category. Your organization has invested in your business-critical MultiValue-based applications over the course of years. And ensuring those applications can adapt and grow alongside your organization means more return on those investments for years to come. Rocket Software offers the largest range of modernization solutions for the MultiValue (MV) Application Platform that help you avoid risky, costly replatforming initiatives. Analysts like IDC, Gartner and Forrester agree that modernization strategies continue to move to the top of the list for most CIOs. Let Rocket be the engine in your modernization journey and help you develop and implement
Already have an account? Login
No account yet? Create an account
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.