Browse all forums dedicated to the Rocket MultiValue product family.
Recently active
When reading uv/errlog events, I would like to know what the call return stack was when the error occurred.In other words, the same info one gets from PORT.STATUS LAYER.STACK, or RAID "T" trace command, or SYSTEM(9001) function call. Create a UVCONFIG parameter for verbose error logging if you think it will be too burdensome to inflict on unsuspecting customers, but with today's system speed and storage capabilities, I think most would opt for more info. Business case: uv/errlog is an underappreciated but powerful tool for application quality improvement by working patterns of errors, correcting data, & -- most importantly! – finding & correcting root causes. Sometimes it is hard to resolve nebulous errors like:- Bad data "Y" for conversion "D2/". Unconverted data used for selection.- RetrieVe: syntax error. Unexpected symbol. Token was "ALL". Scanned command was . . .- Verb `VAN` is not in your VOC- Program "XYZ": Line 1234, Variable "ABC" previously undefined. Empty stri
Hi AllHas anyone found a suitable extension such that PyCharm works well - as intended?My use is sans extension and my use is "as is" from a full-screen form, however, the editor has some rather great enhancements for other languages (Python obvious)Thanks------------------------------Stefano GallottaManaging MemberSimply Red Open SystemsMilnerton ZA------------------------------
I was wondering if someone could comment on the use of the WIN.GETFTP host subroutine. Every time we use it, it spits out a message "Invalid conversion type NO". We have always set the type to "0" for ASCII when we make the call, but no matter what we set it to, we always get this message (and have for many years and versions of wIntegrate). We currently use v6.4.0.What is it complaining about?------------------------------Nelson SchrothpresidentC3CompleteShop LLCHarrison OH US------------------------------
We currently have two dll installed one for pdf creation and one for qr creation, we did both of them back in 2012. And of course our notes from then are spars. We'd like to add another dll for excel creation. I'm assuming that in 2015 we were using Visual Studio 2012 to compile and link the C code. We're using VS2019 to do the same for the new dll. dumpbin for the original two dll's shows linker version 11 (which I believe is VS2012). When we manually install the dll into bin and add the entry to gci.admin (and confirm the addition to the registry). we can't get the new dll to show up in GCI.NTMAP.B (the exist two dll's do, with there functions listed).My question(s). Is there any log file that shows any hint of why the new dll wouldn't load? Or if VS2019 would not work on win2012r2 or universe 11.2.4?I also, walked through the auto creation of the multiply example (ie gci.admin,
Hey everyone, complete noob here who has been tasked with implementing some stuff with uopy.We have been reviewing the security of our proposed setup and have a few questions around uopy, the Unix user and the UniVerse user that we can't find any definitive answers for, so I'm hoping somebody in the community can lead us to the right bit of documentation for these:1. It seems that uopy has the capability to run SH commands (limited by the VOC?). Is there a way to completely disable SH? My limited understanding is that the VOC can be written to by the UniVerse user so can they re-enable access to SH by themselves?2. The uopy library seems to require a Unix user to operate. If we disable the shell in /etc/passwd (or point their shell entry to /bin/false or something), would that have the effect of also disabling SH access via UniVerse?3. If we have to have a Unix user for our uopy to operate, can be make ownership of all their files read-only so they can't be modified?&
hello folks,I try to define a euro.CVT configuration usable on CUI and GUI with sbclient.We want to store euro symbol on char(158) 0x9e working on windows-1252, euro U+20AC is 0x80 char(128)so, I define a config file euro.CVT like this : [input] 0x9E=0x80 [output] 0x80=0x9E [display] and I set it in SBclient Nationality Setup so, it works correctly on GUI mode but on CUI I receive bad char.- at basic INPUT I receive char(95) - at display the oem2ansi is not done and the display show badchar from codpage/font 'Ç' (0x80) 'hard position into font ... . can you share any idea how to setup correctly to use CUI/GUI together with the same config ? PS : working on universe, CONVERT_EURO is 0 (off)regardsmanu
MultiValue Integration Server version 1.3.1 has been released on June 28 2022 for the below platforms/versions:AIX POWER 7.1, 7.2AlmaLinux 8Amazon Linux 2CentOS 7, 8Oracle Enterprise Linux x86 7, 8RedHat Enterprise Linux Intel 7, 8Rocky Linux 8SuSE Linux Enterprise Server Intel 11.0, 12.0, 15.0Windows Windows 10, Windows 11, 2016, 2019, 2022This product is available to order immediately via your Rocket software provider or by logging into your RBC account at https://rbc.rocketsoftware.com or https://rbcint.rocketsoftware.com.Additional Product Information is available on the Product Availability Matrix at https://rbc.rocketsoftware.com/matrix.asp or https://rbcint.rocketsoftware.com/matrix.aspFor any questions on product availability, please
I'm developing a subroutine that will copy a record from one file to another.Depending on the value of one of the input arguments, the target record will be overwritten if it already exists in the target file.Upon confirmation of a successful copy, and depending on the value of another input argument, the source record could potentially be deleted.I'm looking for methods of confirming the copy was successful; i.e., the target record is identical to the source record.Any suggestions?------------------------------Shawn WaldieManager, Enterprise Application DevelopmentRocket Forum Shared AccountLos Angeles CA US------------------------------
We will soon upgrade UV storage to solid state. A couple times in my life I've seen fast I/O bring unanticipated timing issues when file updates happen sooner than anticipated by the application design. I'm struggling to remember details. One was a multi-write logical transaction where, at some point, some files were moved to a much faster disk or bus than the others, so the writes got temporarily out of synch, creating unanticipated confusion for nearly simultaneous queries. It wasn't a problem when everything was slower. Would anyone care to share any such gotchas they've seen, particularly when moving to solid state storage? (It does seem an odd thing to complain about: my system is too fast.)------------------------------Chuck StevensonDBA / SW DeveloperPomeroyUS------------------------------
Hi I am looking to support a scenario where multiple users share a single workstation and want to work in my SBXA application within the context and constraints of their own user accounts.I'd like to make this switch of user accounts (which is frequent) as quick and painless as possible. And my initial thoughts are to explore smart cards/NFC cards and readers to achieve this.Wondering if anyone has given some thought to how one might go about integrating smartcard/NFC readers with SBXA.Initial thoughts are to explore custom control in SB/XA written in .NET and have it listen for commands and invoke BASIC program to login/logout etc.Not sure if there will be any way to programmatically log a different user in, or whether the SH.SEC.API can decrypt a password, or whether switch of users can occur without knowing the password.Note windows single sign on is not and cannot be used.I would welcome some idea or alternative approaches that the community has implemented to address a similar cha
Good morning Rocketeers!Thanks much for the very helpful replies to my last thread...has already proven valuable.For D3, I would like to know what Rocket suggests for regular tuning, maintenance, administration.If possible, I had hoped to hear from the general D3 Rocketeer community, what practices they adopted for tuning, maintenance, and administration of the D3 database...THX in advance for your helpful replies!~Doc------------------------------[Doc] [Ruckel][IT Guy][Southwest Traders][Temecula] [CA] [USA][Doc]------------------------------
We utilize 4 connection pools used by our Web Service calls. Occasionally we have had web services timing out and not even reaching our U2 programs. I was hoping for some ideas on how we might check the connection pools to determine when they are overly busy, or calls are backing up/timing out. We have not found a way to determine this. Our web team contacts us when their calls are failing and we must dig around looking for a problem. Hoping there might be some "tools" that would specifically target the health of the connection pools.------------------------------Nelson SchrothpresidentC3CompleteShop LLCHarrison OH US------------------------------
When developing RESTful service APIs or server side code used for jRemote (e.g. ODBC) it can be cumbersome to use logging and/or temporary writes to a file to trouble shoot the send/receive messages in your jBC server side code. In jBASE 5.8, when you start jbase_agent you can optionally include the following options: -S single session -d (enable debugging) -Jr (redirect debugging to another device) -J[D,d] (force the program/subroutine into the debugger at start up) Note that the -J options are standard jBASE program execution options for debugging. The difference between the D and d are that the D will force a debug on all EXECUTEs whereas the d drops into the debugger on the first program being executed. This may be a requirement especially if this is a RESTful API then the initial program will be an EXECUTE from the jbase_agent worker process.The advantage of using -JD or -Jd is not having place a DEBUG statement in your code. Though you may still find this easier depending on your
Good afternoon D3 folks!What is best D3 DBMS practice when it comes to deleting or RESIZE-ing data sections from a files dictionary?If we don't delete these data sections (we use them as work files when compiling report data) we end resizing too many of these data sections/work files. If I delete them, FOF gets populated with much meaningless data.Thank you in advance for your helpful reply/ies!~Doc
Historically, multi-value environments have been somewhat lax in enforcing use of locks when updating files. The locking system is voluntary and, if applications choose not to use locks, data integrity issues may arise. Two processes performing a read/modify/write update of the same record may overlap with one overwriting the other.There is a simple rule that eliminates this problem. Never write or delete a record without locking it first. This could be a simple update lock that protects the specific record or a file lock that effectively locks all records in the file.It is important to understand the significance of the locking system being voluntary. A badly written program that updates a record without locking it is not affected by the locks set by well written programs that follow the rules.This situation should never have been allowed. Attempting to write or delete a record without a lock should lead to some form of application error, however, such a rule cannot be retrospectively
When working in Unidata, I was able to toggle on a display of each executed line as they were executed. What is the equivalent command in Universe please?In Unidata at the debugger command, I would type 'V' to view source before executing the line. In Universe, I can type I or L to show the source line (or Z to display the next 10), but this isn't a toggle. It only does the one line you are on it seems. In Unidata, once the V was toggled 'on', I could do a command to execute the next 50 instructions and would see the source of each line for those 50. So my question is, how can I see the source for each line executed without typing in the 'L' at every line? Thanks!!------------------------------Kathleen HambrickProgrammer at Colwell------------------------------
Hi allI'm trying to work with a session pool in uopy and I'd like to be able to switch between different sessions as it can be done using the command ic_setsession in the uvic32.dll API.I create them in this fashion: sesiones = [] for i in range(10): sesiones.append( uopy.connect(host='...', user='...', password='...', account='...', encoding='cp850', service=uopy.UV_SERVICE, port=31438)) Is there a way to do this?How can I make sesiones[i] the active session at will?------------------------------Hector CortigueraRocket Forum Shared Account------------------------------
The Rocket MultiValue R&D team understands your applications depend on a stable, high-quality version of UniVerse as you plan upgrades and enhancements to your application(s). To incorporate customer application testing, we are extending our UniVerse 12.2.1 quality assurance (QA) cycle. UniVerse 12.2.1 will be worth the wait and will include: UV BASIC profiling for application performance analysis and insight to help you quickly determine bottlenecks and performance improvement areas in your BASIC code A 3rd mode allowing you to run with the system buffer off and in single-process mode 50+ enhancements 150+ bug fixes Our plan is to complete QA near the end of July and release on August 30th.------------------------------Christine RizzaMV Product ManagerRocket Softwarecrizza@rocketsoftware.com------------------------------
Hi,I've been using a small BASIC program I wrote as my shell environment. Originally for UniVerse, I ported it to D3 and it seems to be working relatively well. The big gains have been getting a permanent history file with arrow keys to navigate the history. The tab completion is also helpful and having a prompt with which account I'm currently in is useful.You can pull the NSH file and update the DEFINE statements for D3 and your specific platform and them compile it. D3 10.2 and earlier does require some more work as it doesn't support the DEFINE statement so you'll need to use a cleaner program to strip out the conditional code I have to support multiple platforms. GitHub - Krowemoh/NovaShell: A Fancier ShellLet me know if you need any help setting it up! This should work with vt100 and wy50.------------------------------Nivethan ThiyagarajahProgrammerAsynchron Systems IncToronto ON CA------------------------------
I have a customer that wants to leave Auto-Extend Field Length (from /USER.FLAGS) set to "N" so that their users can't type beyond the size of the input. However, now they want to dip a credit card and the encrypted value returned from the chip reader is a few hundred bytes long, far too long for a single input. Is there a way to enable the extended field length on just one prompt?In character mode, doing a DATA "@12" in the process before on the prompt does the trick nicely. However, that doesn't work on GUI. Hitting Ctrl-End before the card is dipped works to extend the field length but the customer (understandably) doesn't want their users to have to press Ctrl-End before every dip. Is there anything that can be set to enable the extended field length automatically but only on a single prompt?------------------------------Kevin KingPresidentPrecision Solutions, Inc.Longmont CO US------------------------------
We have a behavior that we have been trying to track down for quite some time and it keeps flaring up.We are on AIX 7.1, Unidata 8.2.2, but also does it on 7.3.3We have nfa connections that will create thousands of these processes "nfauser 29753982 13697148 14 19:28:43 - 0:01 udtsvr -u -o/usr/ud/tmp" A single nfauser connection or a couple of the same will start up remotely, reaching over to another server via a nfa FX pointer. Normally its fine and works like it should, we have thousands of these daily at least and they are fine. A few applications will cause it sporadically. Below is an example we were able to create that does it, though I had to run 3 or more at once to get it to do it:From ECL command line = "SELECT ORDY CONVO.KEYS.BAD" will trip the condition if ran 3x during testing from our system called "DP" to our "DOCK" system.:ED DICT ORDY CONVO.KEYS.BADTop of "CONVO.KEYS.BAD" in "DICT ORDY", 6 lines, 54 characters.001: V002: SUBR('GET.CONVO.KEYS.BAD',@ID)003:004: Convo.key
hello,If I want to use U2PY (not UOPY) I do not understand what type of connection (identification/authentification) occurs ? Is it a heritance of the current (shell) session on the server ? and by the way which uvengine is used ? (uvsh, uvapi_..., ?) . Thanks for any detail.Manu
By storing your data in internal format in your MV database, you can easily convert the data to a desired display format. One of the most common uses for conversion codes is dealing with dates. In MV the internal representation of the date is an integer. For example the internal format for "04 Dec 2014" is 17140. Those familiar with U2 BASIC know they can get the internal format to the display date format by using the OCONV function. I.e PRINT OCONV(17140, "D") The 'D' is the Date conversion code and it is used with both the ICONV function as well as the OCONV function. With the introduction of the u2py modulo, these functions have been exposed as methods of the u2py.DynArray object. python> test = u2py.DynArray("04 Dec 2014")python> itest = test.iconv("D")python> itest<u2py.DynArray value=b'17140'> Since the itest variable now has a date in internal format, you can use a different conversion code to get other display formats. python> itest.oconv("D4
I'm trying to conditionally compile some code but I can't seem to get the IFDEF to work.This is the source code below, I would expect to see 'Not defined.' but running the program results in 'Defined' being printed. This D3 10.2.2 on Windows if that helps.*$IFDEF PLATFORM.D3PRINT 'Defined.'$ELSEPRINT 'Not defined.'$ENDIF*PRINT 'Always print'Thank you
Hi,What is the correct way to reset page headers and numbers when using the BASIC "HEADING" statement after issuing a PRINTER CLOSE statement?We have a program that generates multiple reports based on the same SELECT list.???? Each report must start at page number 1.The only time it works is by issuing the following statements: * PRINTER ON * HEADING ...... * PAGE 1This, however, generates a blank first page on each report.How can we correct this?-- Best regards and keep safe,Vincent ???Kim??? ElliottITC CoordinatorBearings & Accessories Ltd.83 Harbour StreetKingstonJamaica, W.I.Tel: 876-922-1950Cell: 876-315-2739Email:vincent.e@bearingsandaccessories.com
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.