Re: [U2] [OT] Interview Questions

2013-10-09 Thread Rex Gozar
Kevin,

You want people who are smart and get things done --
http://www.joelonsoftware.com/articles/fog73.html

rex

On Wed, Oct 9, 2013 at 4:39 AM, Brian Leach br...@brianleach.co.uk wrote:
 Kevin

 I remember a long time back working for a consultancy in Oxford we had long
 and ineffective interview processes.
 Then we took on a client that was an institute of personnel directors, and
 found they published some very good materials on how to conduct interviews.

 The main lesson was to have a very clear set of goals and criteria drawn up
 and agreed before you go in, and a clear way to assess against that. Sounds
 obvious, but we weren't doing that.

 When we did it was much easier to decide whether they had demonstrated that
 they had met those criteria and we could be more analytical especially at
 the first interview stage.

 That was more valuable than trying to come up with clever questions.

 Technical assessment is a different story. For that, a clear task to perform
 with measurable criteria for correctness.

 Brian





 ___
 U2-Users mailing list
 U2-Users@listserver.u2ug.org
 http://listserver.u2ug.org/mailman/listinfo/u2-users
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Signature Capture and use

2013-06-06 Thread Rex Gozar
I'm guessing you are not running a .net GUI frontend application.

We have signature pads connected to our telnet-based Universe system.

(a) We use AccuTerm to fire an exe on the client PC.
(b) The client exe is a .net program with manufacturer's dll's that
communicate with the signature pad.
(c) When the user OKs the signature, the client exe sends the
signature bytes to the application server via sockets, then exits.

We had tried to use network shares for (c) but they proved to be unreliable.

In a future version, I want to create a client exe with a socket
listener built-in and run it like a service. That way, the application
server can use a socket connection directly with the exe (instead of
firing off the exe via AccuTerm).  Theoretically, such an exe could be
used via javascript in a browser-based application too.

rex

On Thu, Jun 6, 2013 at 3:59 PM, Oaks, Harold harold.o...@clark.wa.gov wrote:
 I'm sure some of you are implementing signature pad capture to a
 Universe system.  What are you using and doing?
 I'd like to look into adding that feature to our jail system.

 Thanks-
 Harold Oaks
 Clark County, WA

 This e-mail and related attachments and any response may be subject to public 
 disclosure under state law.
 ___
 U2-Users mailing list
 U2-Users@listserver.u2ug.org
 http://listserver.u2ug.org/mailman/listinfo/u2-users
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Inverting/Pivoting a table

2012-09-11 Thread Rex Gozar
Not a function, but there are some subroutines that flip posted on PickWiki:

http://www.pickwiki.com/cgi-bin/wiki.pl?Row2Col

AND

http://www.pickwiki.com/cgi-bin/wiki.pl?Row2Col_II

rex
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Variable Interpolation

2012-08-24 Thread Rex Gozar
The OP is describing an evaluate function that executes code on the
fly based on variable values.  See JavaScript's eval() function for a
similar concept.

For example, maybe I have some variables like WIDGET and EVENT, and I
want to dynamically generate the label to an internal subroutine:

EVALUATE('GOSUB ':WIDGET:'.':EVENT)

rex
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] CSV to Array

2012-08-16 Thread Rex Gozar
It is tempting to use SWAP or CONVERT statements when parsing CSV, but
they never handle all the possible cases correctly.  You have to look
at each character and keep track of state.

rex
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] EXIT ; EXIT inside a loop

2012-04-20 Thread Rex Gozar
See FIND and/or FINDSTR in the BASIC reference guide.

On Fri, Apr 20, 2012 at 8:30 AM, Dave Laansma
dlaan...@hubbardsupply.com wrote:

 This example was brought up because I'm essentially 'searching' through
 a 3-dimensional table and when I find a specific string in a sub-value,
 I need to abort the search all together. I cannot bring myself to use
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] EXIT ; EXIT inside a loop

2012-04-20 Thread Rex Gozar
read the documentation -- you can step thru occurences

On Fri, Apr 20, 2012 at 8:44 AM, Dave Laansma
dlaan...@hubbardsupply.com wrote:
 I won't know it's the right string until I perform a few tests on it,
 thus the 'twists'.

 Sincerely,
 David Laansma



 -Original Message-
 From: u2-users-boun...@listserver.u2ug.org
 [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Rex Gozar
 Sent: Friday, April 20, 2012 8:40 AM
 To: U2 Users List
 Subject: Re: [U2] EXIT ; EXIT inside a loop

 See FIND and/or FINDSTR in the BASIC reference guide.

 On Fri, Apr 20, 2012 at 8:30 AM, Dave Laansma
 dlaan...@hubbardsupply.com wrote:

 This example was brought up because I'm essentially 'searching'
 through a 3-dimensional table and when I find a specific string in a
 sub-value, I need to abort the search all together. I cannot bring
 myself to use
 ___
 U2-Users mailing list
 U2-Users@listserver.u2ug.org
 http://listserver.u2ug.org/mailman/listinfo/u2-users
 ___
 U2-Users mailing list
 U2-Users@listserver.u2ug.org
 http://listserver.u2ug.org/mailman/listinfo/u2-users
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] EXIT ; EXIT inside a loop

2012-04-19 Thread Rex Gozar
or use the UNTIL or WHILE clauses on the FOR-NEXT

On Thu, Apr 19, 2012 at 4:46 PM, David A. Green
dgr...@dagconsulting.com wrote:
 Without testing I would say no.  The EXIT is a branching statement, a GOTO
 in disguise.

 Using a LOOP WHILE REPEAT construct might be better.

 David A. Green
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] EXIT ; EXIT inside a loop

2012-04-19 Thread Rex Gozar
you can exit with a GOTO (poor practice); otherwise you'll need to
reorganize your code to use UNTIL/WHILE.

On Thu, Apr 19, 2012 at 4:59 PM, Boydell, Stuart
stuart.boyd...@spotless.com.au wrote:
 It would work, until someone moved the twisted logic into a gosub. 
 Personally, I'm not a fan of exits, I think they can get buried. I would use 
 the [while|until] clause instead and build the logic betwixt accordingly:
 for A1 = 1 to X until G = H
 for A2 = 1 to Y until G = H
 retwisted logic (agh)
 next A1
 next A2

 Stuart
 
 From: Dave Laansma
 Sent: 20-Apr-12 6:36
 To: u2-users@listserver.u2ug.org
 Subject: [U2] EXIT ; EXIT inside a loop

 Given:



 FOR A1 = 1 TO X

  FOR A2 = 1 TO Y

    little twisted logic

    IF G = H THEN EXIT ; EXIT

    twisted little logic

  NEXT A2

  twisting little logic

 NEXT A1

 little twisting logic



 The question is, if G = H, will the two EXIT commands drop out of both
 loops, skipping BOTH twisted little logic and twisting little logic,
 and resume execution at little twisting logic ?



 PLOUGH



 Sincerely,

 David Laansma

 IT Manager

 Hubbard Supply Co.

 Direct: 810-342-7143

 Office: 810-234-8681

 Fax: 810-234-6142

 www.hubbardsupply.comhttp://www.hubbardsupply.com 
 http://www.hubbardsupply.com

 Delivering Products, Services and Innovative Solutions



 ___
 U2-Users mailing list
 U2-Users@listserver.u2ug.org
 http://listserver.u2ug.org/mailman/listinfo/u2-users



 ___
 U2-Users mailing list
 U2-Users@listserver.u2ug.org
 http://listserver.u2ug.org/mailman/listinfo/u2-users
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] EXIT ; EXIT inside a loop

2012-04-19 Thread Rex Gozar
BTW are you really just trying to do a FINDSTR?
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Detecting idle time in INPUT statement.

2012-03-27 Thread Rex Gozar
I know the OP wanted to know how long a user session has been idle,
but real problem is the second person waiting for the lock to be
released.

The best practice is to always have LOCKED clauses on your READU's,
and never to block on a lock, i.e. a user input process should hit
the locked clause and report who has the desired record locked, and
giving the user an out if they cannot access the record at this time.
Batch and phantom processes should not block either, waiting 5-10
seconds and retrying up to specific number of times (say 10), then
skipping over the record and leaving it for subsequent processing.

rex
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Detecting idle time in INPUT statement.

2012-03-27 Thread Rex Gozar
It does not matter if a system is old or not, you gotta keep it up to
date.  Maintenance programming means adding LOCKED clauses that
should have been there in the first place.  I doubt it would take more
than a few hours; probably less time than writing and debugging some
off-the-wall input timer routine.  There probably aren't that many
critical READU's.  On my system, for the number of programs I have in
the system, I only have a third as many READU's.
rex
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Detecting idle time in INPUT statement.

2012-03-27 Thread Rex Gozar
The OP's system probably doesn't have three thousand READU statements;
I'm willing to guess a few hundred.  And out of that few hundred,
maybe a dozen of those READU's block user access during normal
day-to-day operation.  And yet a CEO, manager, whatever wouldn't have
a problem implementing some input-timing thingy?

rex
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Detecting idle time in INPUT statement.

2012-03-27 Thread Rex Gozar
He already has the use-case; someone in some specific screen/program
is getting locked out.  That's where you start.

On Tue, Mar 27, 2012 at 3:54 PM, George Gallen ggal...@wyanokegroup.com wrote:
 The tough part isn't so much the qty of but knowing which ones are the 
 important
 Ones that will most likely be affected. Depending on the turnover of staff, 
 the
 Current staff might not know the code that well, and pinpointing the top 
 programs
 That should be converted first could be a shot in the dark.
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Passing by Value

2012-01-26 Thread Rex Gozar
Put the variable in parentheses to pass by value, e.g.

CALL MYSUB((VAR1))

rex

On Thu, Jan 26, 2012 at 9:39 AM, Kebbon Irwin kebbon.ir...@sympatico.ca wrote:

 Unidata 7.1
 I think this has come up before (side question: how do you search the 
 archives?)...  I think it is possible to pass a parameter by value instead of 
 by reference.  This, of course, means that any changes to the parameter in 
 the called subroutine are localized and its original value in the calling 
 routine is unchanged there.  Does anyone do this?  If so, how?Cheers,Kebbon
 ___
 U2-Users mailing list
 U2-Users@listserver.u2ug.org
 http://listserver.u2ug.org/mailman/listinfo/u2-users
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Brilliant? or not?

2012-01-13 Thread Rex Gozar
SMAX = MAXIMUM(S1:@FM:S2)

seems clearer...
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] !COMO subroutine documentation

2011-12-29 Thread Rex Gozar
ED APP.PROGS COMO

to see the arguments described within the program comments.

rex
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Unidata 7.1 Unresponsive UO Connection

2011-12-02 Thread Rex Gozar
My u2pipe has been available on PickWiki since 2006.  If can be used
with PHP, ColdFusion, ASP.NET, raw sockets, etc.

http://www.pickwiki.com/cgi-bin/wiki.pl?U2pipe

rex

On Thu, Dec 1, 2011 at 11:57 PM, Kevin King precisonl...@gmail.com wrote:
 Having waited YEARS for a PHP connector into U2, I finally got tired of
 waiting...
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Universe 10.2.9

2011-12-01 Thread Rex Gozar
What do you mean by way too many system calls?  Are you comparing
this to previous performance numbers?

rex
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Code Collaboration

2011-11-21 Thread Rex Gozar
Collaboration happens when two or more people have the same itch to
scratch.  Someone thinks to himself I've got to pass PICK data in
JSON and starts looking for projects that do that.  It does not
happen the other way around, where you might stumble upon a project
and say to yourself, hmm, a PICK to JSON project -- I think I'll
collaborate on that.  The PickWiki to MediaWiki project, my u2pipe
stuff, and a bunch of others have been mentioned in this list plenty
of times for people with an itch to take notice.  Advertising a
project does not drive thoughtful collaboration; having a genuine itch
that demands scratching does.

This goes back to my earlier point that if you want a bunch of people
actively collaborating on a project, it has to be big -- big enough to
scratch a bunch of itches.

rex
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Code Collaboration

2011-11-21 Thread Rex Gozar
Sure advertising works, Will, but I'll bet you don't buy feminine
products just because you see the ads on TV :)

rex

On Mon, Nov 21, 2011 at 12:23 PM, Wjhonson wjhon...@aol.com wrote:

 So advertising doesn't work.
 That's a new twist.
 I don't share your belief that people will by nature gravitate towards 
 unadvertised web space
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Code Collaboration

2011-11-21 Thread Rex Gozar
So Will, if you are saying you have a burning need for a better PICK
collaboration site then go for it.  Build it.  Advertise it.  And
those people in the community that share your need will undoubtedly
join you in building a better site.  Perhaps there are people in your
local PICK users group that would want to help in the initial stages.

rex
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Code Collaboration

2011-11-21 Thread Rex Gozar
To everybody in the community,

Who else has a burning need for a new collaboration website?

rex

On Mon, Nov 21, 2011 at 1:52 PM, Wjhonson wjhon...@aol.com wrote:

 No I'm saying we are currently holding, right here, a white board discussion 
 for how to go about it.
 That involves not one person, but a community.
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Code Collaboration

2011-11-18 Thread Rex Gozar
FYI - PickWiki does have an RSS feed.

Also, have any of you considered Brian's U2 User wiki/website?  The
wiki has a WYSIWYG editor, and the website has forums.  And the site
may already have an RSS feed or email notifications.

But let's face it, nobody's going to change or tweak your program code
just because they can.  If your code is useful to them, then they
might download and use it.  And in the slim chance they make an
improvement that they think might make a difference to someone else's
life, they might make the time to post their mod.  There are hundreds,
if not thousands, of software projects publicly available that no one
takes any interest in -- why should a PICK project be any different?
Sure, code snippets get discussed and rewritten here, but that's
because it is a snippet, not a complete program.

This is not a tool or convenience problem.  Most people are simply not
inspired to share what they know; those that are inspired are already
sharing.

On Fri, Nov 18, 2011 at 2:03 PM, Wjhonson wjhon...@aol.com wrote:
 No it (PickWiki) doesn't (bring changes to me).  That's the problem I see.
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Code Collaboration

2011-11-18 Thread Rex Gozar
I wasn't saying that no one's interested, but rather those that are
interested are already doing something to collaborate and contribute.
You got your knol thing going, Tony has got his blog, Steve's got
his GH and BB, and so on.  A lack of tools isn't going to stop someone
that's inspired to share.

But I was saying that we need to set our expectations realistically.
I don't expect the average PICK guy with his head down getting the job
done is going to look up long enough to tweak my u2pipe program.

rex

On Fri, Nov 18, 2011 at 2:50 PM, Wjhonson wjhon...@aol.com wrote:
 Rex I have to disagree that no one's interested.  I'm interested, and I think 
 there are others who are as well.
 Whether or not we've all going to be interested in a new text editor, or a 
 faster sort routine, or a BASIC tool to parse XML that remains to be seen.
 But the way we're going about it right now, to me, doesn't work.  It's broken.
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Code Collaboration

2011-11-17 Thread Rex Gozar
Collaborating just for the sake of collaborating is a dead end.  So is
setting up an infrastructure with the goal of simply encouraging
collaboration.  People need to be excited about the *end results* and
potential of a project, and out of that group a tiny percentage will
want to actively contribute. I don't think past collaboration projects
died because of a lack of proper infrastructure; they died because
they lacked a grandiose, targeted result.

rex
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Mercurial/TortoiseHg source version control

2011-11-16 Thread Rex Gozar
If others in your company are using Mercurial and the idea is to keep
everyone's source in the same repository, I would recommend exploring
Mercurial first.  Perhaps you can ask your sql guys for Mercurial help
since they are already using it.

rex

On Tue, Nov 15, 2011 at 6:37 PM, Wols Lists antli...@youngman.org.uk wrote:
 On 15/11/11 23:13, Barber, Bonnie wrote:

 Thanks I will get a copy of git and take a look at it so we have an
 alternate recommendation just in case mercurial does not work out.
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Code Collaboration

2011-11-16 Thread Rex Gozar
I personally find most projects uninteresting; I assume others do too.
 I think people would gladly collaborate on a project that gave them
significant benefit, not just some incremental gain.

rex

 Attempts at making Pick code collaboration projects have been mostly 
 unsuccessful.  Why?
 How can we create a true collaborative project and Would Anyone Come ?
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Code Collaboration

2011-11-16 Thread Rex Gozar
So what collaborative project do you want to start?  What do you want to build?
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Mercurial/TortoiseHg source version control

2011-11-15 Thread Rex Gozar
Bonnie,

I use CVS (currently porting my scripts to use Mercurial) for Universe
program version control.

A lot depends on your version control paradigm; many software
developers checkout their source code and build their software
from scratch.  This is what I do here; I make changes to the source
code repository, build the software accounts, then upgrade existing
sites with the new software.

Some developers don't build their software, but rather modify
production programs on the fly and use version control software to
track their changes.  Making changes in a development account and
copying into production is a variant on this approach.

The different approaches to software changes require different
capabilities.  Which approach is closer to your development method?

rex

On Tue, Nov 15, 2011 at 10:38 AM, Barber, Bonnie
bonnie.bar...@perseusbooks.com wrote:
 Does or has anyone on this list used Mercurial (UNIX) or TortoiseHg (windows) 
 for Universe program version control.
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Mercurial/TortoiseHg source version control

2011-11-15 Thread Rex Gozar
Tom,

Would it possible to export all the source code from PRC into a flat
file/directory format for Mercurial?

rex

On Tue, Nov 15, 2011 at 11:05 AM, Tom Whitmore tewhitm...@ratex.com wrote:
 We use PRC, which is a PICK based product.  We have seen a marked 
 improvement in the whole development cycle since using PRC.
 Tom Whitmore
 RATEX Business Solutions
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Mercurial/TortoiseHg source version control

2011-11-15 Thread Rex Gozar
Bonnie,

For CVS here, I setup TortoiseCVS to SSH into the linux machine and
checkout/checkin changes to the repository.  For Mercurial/TortoiseHg
there should be something similar, e.g. hg push
ssh://hguser@192.168.1.5/hg/, so you can push your changes to your
designated repository.  Is your repository on the AIX box?  Then ssh
is probably your best bet.

Right now I am using cygwin on my development PC so I can port and
test my shell scripts, so I do not have experience with TortoiseHg yet
-- just command line stuff.  Let me know what you do to get it going
so I can copy your settings!

rex

What I do not understand is how to get the programs back out to make changes.
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Mercurial/TortoiseHg source version control

2011-11-15 Thread Rex Gozar
Does anyone know if PRC has a built-in feature to export all source
code into a flat-file/directory format?  Either for the head version
or the entire repository?  If it does, does it also import?  It might
be nice to be able to allow on the fly changes to the development
repository, and still use build tools for a daily build and smoke
test.

rex
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Mercurial/TortoiseHg source version control

2011-11-15 Thread Rex Gozar
Tom,

I keep dictionaries, procs, Q-pointers, programs, and includes in CVS
and Mercurial.  What do you mean by PICK aware?

rex
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Mercurial/TortoiseHg source version control

2011-11-15 Thread Rex Gozar
Wol,

Even with DVCS, the convention is to designate one of the repositories
as the master so everyone can pull/push (checkin/checkout) their
changes that end up in a tagged release.  The change in mindset has
more to do with file versions in CVS and Subversion versus change
sets in dvcs.

rex

 The thing to bear in mind is that if you're used to a conventional VCS with
 a master repository, a DVCS requires a major change to your mindset to use
 it in the way it is meant to be used. You can still use it the old-fashioned
 way, but you won't be using the power it is capable of.
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] PC based UniBasic program editor for 64 bit OS

2011-08-31 Thread Rex Gozar
I use Notepad++.  Instructions for configuring Notepad++ to do
UniBasic syntax highlighting:

http://www.pickwiki.com/cgi-bin/wiki.pl?NotepadPlusPlus

rex

On Wed, Aug 31, 2011 at 2:03 PM, Buffington, Wyatt
wgbuffing...@hydro.mb.ca wrote:
 Can anyone suggest a good editor for 64 bit OS systems that allows people to 
 edit UniBasic programs?
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Simple Masking of Password Input (Universe Basic)

2011-08-18 Thread Rex Gozar
Displays asterisks for characters entered.  Displays extra asterisks
when password is less than seven characters.  Enjoy.

rex


  SUBROUTINE GET.PASSWD(RESPONSE)
* PASSWORD INPUT ROUTINE
**
  EQU BS TO CHAR(8)
  EQU CR TO CHAR(13)
  BUFFER = SPACE(255)
  BUFPTR = 0
  PROMPT ''
  LOOP
 C = KEYIN()
  UNTIL C EQ CR DO
 IF C EQ BS THEN
IF 0 LT BUFPTR THEN
   DISPLAY BS: :BS:
END
BUFPTR -= 1
IF BUFPTR LT 0 THEN BUFPTR = 0
 END ELSE
BUFPTR += 1
IF 255 LT BUFPTR THEN BUFPTR = 255
BUFFER[BUFPTR,1] = C
DISPLAY *:
 END
  REPEAT
  PADCNT = 7 - BUFPTR
  IF 0 LT PADCNT THEN
 DISPLAY STR(*, PADCNT):
  END
  RESPONSE = BUFFER[1,BUFPTR]
  RETURN
   END

On Tue, Aug 16, 2011 at 2:51 PM, nschroth ngschr...@yahoo.com wrote:

 Does anyone have a simple routine for entering a password and only displaying
 an asterisk for the character entered?

___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Comparing numeric strings

2011-08-12 Thread Rex Gozar
In July I added to PickWiki:

http://www.pickwiki.com/cgi-bin/wiki.pl?UniVerse_Tips_And_Tricks#Forcing_string_comparison_on_numbers

rex

On Fri, Aug 12, 2011 at 8:15 AM, Rob Sobers rsob...@gmail.com wrote:
 Say you have two strings that happen to be numeric:

 FOO = 401.0101
 BAR = 401.0101000

 Since UniBasic is untyped, even though I've wrapped each value in quotes ,
 they are treated as numbers.  As a result, FOO EQ BAR evaluates to @TRUE.
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Comparing numeric strings

2011-08-12 Thread Rex Gozar
COMPARE() works, just be careful if you're using it for sorting
strings.  Compiling and running the following test program:

GET(ARG.) A ELSE ABORT
GET(ARG.) B ELSE ABORT
X = COMPARE(A, B)
IS.LESS.THAN = (X LT 0)
DISPLAY (IF IS.LESS.THAN THEN less ELSE greater): than
LOCATE(A, B; FOUND; AL) ELSE NULL
IS.LESS.THAN = (FOUND EQ 1)
DISPLAY (IF IS.LESS.THAN THEN less ELSE greater): than
END

Gives the expected results most of the time:

TEST 1 2
less than
less than

TEST A B
less than
less than

But give different results when the second parameter is a substring of
the first:

TEST AAA AA
less than
greater than

Apparently COMPARE() and LOCATE() use a different algorithm
internally.  LOCATE() gives results similar to SSELECT  and SORT.

rex
Universe 10.3.7
Pick Flavor


On Fri, Aug 12, 2011 at 1:19 PM, u2ug simpson-u...@gerzio.ca wrote:
 Have you looked at the COMPARE() function ?
 Does the trick under universe.
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] UV 11.1 64-bit on Cisco UCS with NetApp Filer?

2011-08-10 Thread Rex Gozar
Adam,

Have you checked different performance stats?

http://www.cyberciti.biz/tips/linux-disk-performance-monitoring-howto.html

What does avgqu-sz look like?  It should be low (ideally less than 1).
 If it tends to spike (over 10 when using a 1 second interval), do the
spikes correlate to the times that you're waiting for user response?
That would indicate that the SAN is unable to keep up with user
requests.

Do the performance metrics suggest any other bottlenecks?  You may
need to run the metrics on both the vm and the underlying os.

rex

On Tue, Aug 9, 2011 at 10:16 AM, Adam Taylor adam.tay...@inxi.com wrote:
 We recently upgraded and virtualized our UniVerse servers to UV 11.1 64-bit 
 on a Cisco UCS B Series platform with a NetApp 3040A/A Filer.  Going to 
 64-bit with an upgrade in the virtualized environment, we expected to see a 
 noticeable (if not significant) increase in performance than we were 
 achieving on our old physical 32-bit server.  However, not only has 
 performance not notably increased, we are having random slowdowns in various 
 areas of the system that were not occurring before.  I say random, because 
 while it does seem to affect certain areas more, it is not consistent.
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Using SSL, with .Net to make a connection to Linux/Unix

2011-08-04 Thread Rex Gozar
I am not suggesting that you inspect the actual data passed (I know it
is encrypted), but rather what packets are being passed?  Are
handshakes failing? Are responses missing? -- when compared to the
working connection.  Do the packets give you an additional clue as to
what is failing?

Technically, you are not making wireshark work with uvtelnetd.  You
would put a hub (not a switch) between the client and server, and plug
a separate machine with wireshark into the hub.  From this machine you
could monitor traffic between the other two machines.  Alternately,
wireshark could be on the client machine monitoring traffic to/from
the server IP.

Wireshark may reveal nothing -- the problem could be within the
encrypted data being passed.  But typically protocols pass packets
back and forth to establish the connection before sending the data,
and if it is failing at this level wireshark may make it obvious.

rex

On Wed, Aug 3, 2011 at 6:27 PM, Michael Pflugfelder
mpflugfel...@ratex.com wrote:
 Rex,

 How could I make Wireshark work with uvtelnetd.  My understanding is that 
 uvtelnetd is passing encrypted data.  I haven't used Wireshark a whole lot, 
 but I believe that it can't decrypt the data on the stream.
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Using SSL, with .Net to make a connection to Linux/Unix

2011-08-02 Thread Rex Gozar
Michael,

It may help to put a packet-sniffer (wireshark) on your network to see
what packets are being exchanged when the vendor app attempts to
connect to uvtelnetd.  The requests/responses may help to determine
the problem.  It may also help to compare the traffic between the
working (windows) and non-working (linux) connections.

rex

 We are working with our vendor to replace a front-end application written in 
 Delphi with a new front-end application written in .net.  The vendor has 
 decided to remove support for SSH and telnet completely.  The only connection 
 they will make is to a UniVerse server running uvtelnetd.  The way I 
 understand this, it is simply Telnet over SSL.  They have this process 
 working with a UniVerse server running on Windows.  We are now trying to make 
 it work with our UniVerse server running on linux and it will not connect.
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] JSON

2011-07-15 Thread Rex Gozar
George,

Individual MV's are pretty simple, but associated MV's can get interesting:

{
idCode: 178,
cusName: U2Logic,
contacts: [
{
name: David Aitken,
cellPhone: 303-555-1234
},
{
name: Doug Averch,
cellPhone: 303-555-6728
},
{
name: Carmen Electra,
cellPhone: 303-555-7726
}
]
}

rex
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Record Locks - How long should they last for? (Opinion)

2011-07-13 Thread Rex Gozar
Based on your description, you are using a pessimistic locking
approach (similar to a telnet user) for a web application, so choosing
a timeout would be arbitrary.  Your heartbeat idea could be tied in
to avoid having to manually release records.

It seems like a bad idea to force a connectionless, stateless web
browser to act like a connected, stateful telnet session.

Why not switch to an optimistic locking approach?  Checksum the
original data (record) when it is passed to the browser.  When
returned from the browser, lock the record and checksum it again. If
the checksums match proceed with the write; otherwise, send a message
back to the browser allowing the user to cancel or resubmit their
changes.  This way, record locks should only last a few milliseconds.

rex
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Verifying file existence

2011-06-28 Thread Rex Gozar
FYI - For Universe users out there, you can use the READV...0 (zero) trick:

OPENPATH /some/remote/directory TO FILE ELSE ABORT
READV SCRAP FROM FILE, large-binary-filename, 0 THEN
   IS.CREATED = @TRUE
END ELSE
   IS.CREATED = @FALSE
END

(Don't know if it works on Unidata)

rex

On Tue, Jun 28, 2011 at 12:54 PM, Kebbon Irwin
kebbon.ir...@sympatico.ca wrote:
 UD 7.1
 RHEL Nahant 4
 I am looking for an elegant way to verify a [large binary] file in a remote 
 directory has been created.
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Coversion Code for Date

2011-06-03 Thread Rex Gozar
FYI -

DY4MD- and D4-YMD will output -M-DD for single digit months.
D4-YMD[4,2,2] will properly output -MM-DD.

rex
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Coversion Code for Date

2011-06-03 Thread Rex Gozar
Forgot to mention on Windows, Universe 10.3.7, Pick flavor:

On Fri, Jun 3, 2011 at 5:04 PM, Rex Gozar rgo...@gmail.com wrote:
 FYI -

 DY4MD- and D4-YMD will output -M-DD for single digit months.
 D4-YMD[4,2,2] will properly output -MM-DD.

 rex

___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] [UV] Emulate SQL MAX() function at TCL

2011-05-27 Thread Rex Gozar
You could try:

SELECT FILE
READLIST IDS ELSE ABORT
MAX.ID = MAXIMUM(IDS)

rex

On Fri, May 27, 2011 at 6:40 AM, Wols Lists antli...@youngman.org.uk wrote:
 On 27/05/11 07:03, Boydell, Stuart wrote:
 Just wondering if anyone has a neat trick for picking up the highest ID from 
 a file. Where the file ID is an integer.

 With UVSQL I would SELECT MAX(@ID) FROM TABLE; - however, the program I need 
 to do this within has the file (table) open and if I try to execute it 
 returns the error 'Non-SQL re-entrant query calls are not allowed.'
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] [UD] Extract a line with a CR and/or LF character in it.

2011-05-26 Thread Rex Gozar
For any CSV processing, you must process character by character.  Use
OSBREAD to get a block of characters and start parsing.  Strings like
1,ABC,2 adapter,, can only be correctly parsed by looking at each
character and applying the simple CSV rules.  Using CONVERT statements
only makes the process more complex and inaccurate.

rex

On Thu, May 26, 2011 at 8:14 AM, George Gallen ggal...@wyanokegroup.com wrote:
 In your subroutine, if you first convert @FM - char(250)
 Then do your line scan, when your inside a quote , if you encounter a 
 char(250)
    convert it to a char(253)
 once your done, convert char(250) back to @FM

 If when your scanning, everytime you encounter a , you flip the quoteon value
 from 0 - 1 - 0  it shouldn't matter if you encounter double quotes
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] [UD] Extract a line with a CR and/or LF character in it.

2011-05-26 Thread Rex Gozar
On Thu, May 26, 2011 at 8:24 AM, George Gallen ggal...@wyanokegroup.com wrote:
 This shouldn't be a problem if your using  to flip a QuoteOn flag.

 field description here

 first quote would trigger the flag on
 the first double quote would trigger the flag off, then on again
 the second doub quote would trigger the flag off, then on again
 the last quote would trigger the flag off

George,

In your example, the escaped double quotes would get eaten.

rex
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Error 4 22 from PHP exec of uv on AIX

2011-05-06 Thread Rex Gozar
Have you tried  instead of ; to separate the cd and uv commands?

rex

On Fri, May 6, 2011 at 11:56 AM, John Thompson jthompson...@gmail.com wrote:
 I thought I would resurrect an old issue I found on the mailing list...

 As I am not a mailing list junky (google and web forums have spoiled me),
 I'm not entirely sure how to reply directly to the old post...

 Original Post 
 From:

 Ross Morrissey
 Fri, 24 Jul 2009 14:11:56 -0700

 This is a bit of a stumper (for me, anyway).

 I'm having issues trying to exec uv from PHP on AIX.

 Things work just fine in Windows (Apache or IIS) or Linux (Apache) so I know
 my PHP syntax is fine.

 On the AIX (5.2 uv 10.2.7) box:

 Using PHP, I can exec 'echo 1 + 2 | bc' and get 3
 I can run this at the shell as user nobody: 'cd /u2/uv/HS.SALES;
 /u2/uv/bin/uv display 42'
 I can get a CGI script to return 'cd /u2/uv/HS.SALES; /u2/uv/bin/uv display
 42' correctly

 With PHP, I can't exec ' /u2/uv/bin/uv display 42' (after a chdir).

 UV throws this error (into the Apache logs):

 An error has occurred during uniVerse initialization
 Please contact the system administrator Error code: 4 22

 The codes translate into:

 4. System V semaphores are probably not configured in the kernel.

 22. (EINVAL) Invalid argument. Here are some examples of invalid
 arguments: dismounting a nonmounted device, mentioning an unknown
 signal in signal, reading or writing a file for which seek has generated a
 negative pointer. EINVAL is also set by math functions.

 Has anyone else bumped into this?  IBM support suggested it might be an
 issue with SIGTTOU but this seems unlikely to me - especially for a one-line
 command.  PHP is a bit outside their bailiwick.

 Thanks, Ross.

 End of Original Post 


 I am having the exact same problem.  I have tried using nohup before
 called universe.

 There is something about when apache calls the php script, then the
 php script executing universe, that universe does not like...

 Anyone ever figure out a way around this?


 --
 John Thompson
 ___
 U2-Users mailing list
 U2-Users@listserver.u2ug.org
 http://listserver.u2ug.org/mailman/listinfo/u2-users

___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Error 4 22 from PHP exec of uv on AIX

2011-05-06 Thread Rex Gozar
As a workaround, you could try u2pipe:

http://www.pickwiki.com/cgi-bin/wiki.pl?U2pipe

You wouldn't need to install it as a inet service, just use it as a
pipe.  For example:

echo display 42|/usr/local/bin/u2pipe (or wherever you install it)

To configure u2pipe, you edit /etc/u2pipe.ini to enter the user,
password, and account.  Any commands you pipe to it will run in
universe and the output will go to stdout.

rex
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Reliability doesn't raise enough issues to keep the list busy

2011-05-04 Thread Rex Gozar
When I see the demand for U2 or Pick programmers rise, then I'll
believe the market is growing.

rex

On Wed, May 4, 2011 at 3:46 AM, George Land
george.l...@aptsolutions.net wrote:
 I doubt you'll ever believe me, until Rocket send you your branded
 skateboard that is!


 On 03/05/2011 17:52, fft2...@aol.com fft2...@aol.com wrote:

 We'll all believe you, when they are published.
 What's the link again?
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Saying Goodbye...

2011-04-27 Thread Rex Gozar
Make them awesome.

flame

The problem is not the maturity of the interfaces, but the maturity
of the developer community.  Too many Pick programmers see the latest
technology as here today, gone tomorrow so they are not inspired to
learn it, much less create feature-rich software that implements it.
That's not to say that some of the more vocal developers on this list
do not use modern technologies, but I think the critical mass still
thinks green screen is faster = better software.

Software development is about making the USER awesome at what they do.
 There are a lot ways to do that, but ignoring newer technologies
because they may be replaced tomorrow is just retarded.  You don't
create web apps because you have no clue how to write HTML, CSS, and
javascript.  You don't create GUI apps because haven't spent the time
to learn Visual Whatever.  Stop treating every problem like a nail
because you only have a hammer in your toolbox.

/flame

Make them (the users) awesome, and we won't have to worry about
leaving U2, or its marketing, or whether the VP's on the golf course
are talking about SAP.  With awesome users, the VP's will be talking
about how they can extend their U2 applications.

rex
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Question about uvbackup dd and uvrestore

2011-04-15 Thread Rex Gozar
Unless you need record-level restores, I would recommend using tar
to backup your Universe accounts.

rex
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Unidata Encrypt Function

2011-04-15 Thread Rex Gozar
EQU ALGORITHM$SHA1 TO SHA1
EQU DATALOC$STRING TO 1
EQU DATALOC$FILE TO 2
RESULT = 
ERRCODE = DIGEST(ALGORITHM$SHA1, TEXT, DATALOC$STRING, RESULT)
RESULT = UPCASE(OCONV(RESULT, MX))

rex
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Question about uvbackup dd and uvrestore

2011-04-14 Thread Rex Gozar
Universe admin documentation has the disclaimer:

Note: uvrestore does not support reading from stdin.

You'll need to gunzip the backup file to disk before you can uvrestore it.

rex

On Wed, Apr 13, 2011 at 9:12 PM, Augusto Alonso aalo...@quiter.com wrote:
 Hi all.
 I'm trying to pipe uvbackup (universe) and gzip in order to compress backups
 on the fly.
 I've done it with success. But the problem arise when I try to uvrestore
 from it.

 A simple test that you can try:

 RHEL:/u2/uv# find HS.SALES | bin/uvbackup -v -f - |dd of=hs_sales.bk

 Backup Date   : Wed Apr 13 21:22:29 2011
 Reel Number   : 1
 Image Type    : Full Backup (ver9 UNIX)
 Block Size    : 8192 bytes
 NLS on        : False
 Label         :

 Current device(s): stdout
  Backing up HS.SALES
  Backing up HS.SALES/VOC.u
  Backing up HS.SALES/D_VOC
  Backing up HS.SALES/VOCLIB
  Backing up HS.SALES/D_VOCLIB
  Backing up HS.SALES/CUSTOMER
  Backing up HS.SALES/CUSTOMER.u
  Backing up HS.SALES/D_CUSTOMER
  Backing up HS.SALES/D_CUSTOMER.u
  Backing up HS.SALES/PRODUCTS
  Backing up HS.SALES/PRODUCTS.u
  Backing up HS.SALES/D_PRODUCTS
  Backing up HS.SALES/D_PRODUCTS.u
  Backing up HS.SALES/STATES
  Backing up HS.SALES/STATES.u
  Backing up HS.SALES/D_STATES
  Backing up HS.SALES/D_STATES.u
  Backing up HS.SALES/HS_FILE_A000
  Backing up HS.SALES/D_HS_FILE_A000
  Backing up HS.SALES/.hs_fileinfo
  Backing up HS.SALES/VOC
  Backing up HS.SALES/.uvconfig
  Backing up HS.SALES/uvconfig
  Backing up HS.SALES/puntouvconfig

 Total files: 24  Total bytes : 97273  Elapsed Time: 00:00:01
 12 operating system files processed, 0 broken, totalling 41444 data bytes.
 12 UniVerse files processed, 0 corrupted.
 939 UniVerse records processed, 0 corrupted, totalling 55829 data bytes.
 -1073742616 extended keys processed, 0 not supported at specified revision
 level.

 EndOfUvbackup
 288+0 records in
 288+0 records out


 RHEL:/u2/uv# dd if=hs_sales.bk | bin/uvrestore  -v -i -t /dev/stdin

 Backup Date   : Wed Apr 13 21:22:29 2011
 Reel Number   : 1
 Image Type    : Full Backup (ver9 UNIX)
 Block Size    : 8192 bytes
 NLS on        : False
 FastWrite On  : False
 Label         :

 Current device(s): /dev/stdin

 WARNING: Block 1 checksum value of 0 does not match computed checksum
         of -6667.  Integrity of block questionable.  Continue (Y/N)?
  intended publication of source code.               *

 Total files: 0  Total bytes : 0  Elapsed Time: 12:00:00
 0 operating system files processed, 0 broken, totalling 0 data bytes.
 0 UniVerse files processed, 0 corrupted.
 0 UniVerse records processed, 0 corrupted, totalling 0 data bytes.
 -1073742632 extended keys processed, 0 not supported at specified revision
 level.

 EndOfUvrestore
 26+0 records in
 25+0 records out
 RHEL:/u2/uv#


 Could someone explain why this happen?

 And the backup is all right, because it works if you change the syntax
 (without pipe):

 RHEL:/u2/uv# bin/uvrestore  -v -i -t hs_sales.bk

 Backup Date   : Wed Apr 13 21:22:29 2011
 Reel Number   : 1
 Image Type    : Full Backup (ver9 UNIX)
 Block Size    : 8192 bytes
 NLS on        : False
 FastWrite On  : False
 Label         :

 Current device(s): /u2/uv/hs_sales.bk
  HS.SALES (Apr 13 21:22:29)
  HS.SALES/VOC.u (Apr 13 21:22:29)
  HS.SALES/D_VOC (Apr 13 21:22:29)
  HS.SALES/VOCLIB (Apr 13 21:22:29)
  HS.SALES/D_VOCLIB (Apr 13 21:22:29)
  HS.SALES/CUSTOMER (Apr 13 21:22:29)
  HS.SALES/CUSTOMER.u (Apr 13 21:22:29)
  HS.SALES/D_CUSTOMER (Apr 13 21:22:29)
  HS.SALES/D_CUSTOMER.u (Apr 13 21:22:29)
  HS.SALES/PRODUCTS (Apr 13 21:22:29)
  HS.SALES/PRODUCTS.u (Apr 13 21:22:29)
  HS.SALES/D_PRODUCTS (Apr 13 21:22:29)
  HS.SALES/D_PRODUCTS.u (Apr 13 21:22:29)
  HS.SALES/STATES (Apr 13 21:22:29)
  HS.SALES/STATES.u (Apr 13 21:22:29)
  HS.SALES/D_STATES (Apr 13 21:22:29)
  HS.SALES/D_STATES.u (Apr 13 21:22:29)
  HS.SALES/HS_FILE_A000 (Apr 13 21:22:29)
  HS.SALES/D_HS_FILE_A000 (Apr 13 21:22:29)
  HS.SALES/.hs_fileinfo (Apr 13 21:22:29)
  HS.SALES/VOC (Apr 13 21:22:29)
  HS.SALES/.uvconfig (Apr 13 21:22:29)
  HS.SALES/uvconfig (Apr 13 21:22:29)
  HS.SALES/puntouvconfig (Apr 13 21:22:29)

 Total files: 0  Total bytes : 0  Elapsed Time: 12:00:00
 0 operating system files processed, 0 broken, totalling 0 data bytes.
 0 UniVerse files processed, 0 corrupted.
 0 UniVerse records processed, 0 corrupted, totalling 0 data bytes.
 -1073742632 extended keys processed, 0 not supported at specified revision
 level.

 EndOfUvrestore
 RHEL:/u2/uv#


 Any suggestion?
 Regards
 --
 Augusto Alonso
 IT manager
 QUITER SERVICIOS CENTRALES
 Zoco Gran Santander, 1ª planta - 39011 Santander - España
 Telf: +34 902233323 - Fax: +34 902234280

 AVISO LEGAL: Este mensaje contiene información destinada exclusivamente al
 usuario de destino, pudiendo contener información confidencial o protegida
 legalmente. Si, por un error de envío o transmisión, ha recibido este
 mensaje y usted no es el destinatario del mismo, por favor, notifique de
 este hecho al remitente y no 

Re: [U2] Is this worth rewriting?

2011-03-04 Thread Rex Gozar
good comprehension = faster, accurate programming (that's programming,
not code execution)

We all want fast and accurate programming.  To improve comprehension,
you have to write code to (a) reveal its logical structure, and (b)
reveal the business rules implemented in the code.

Sorry, but structures like:

IF A:B:C NE '' THEN CUM(M) = A+B+C

(concatenating variables as a string, then performing numeric
operations on them) slows down the comprehension process.  And for
what benefit?  To me, that's just a lazy programmer that doesn't want
to type a few extra keystrokes.

Another structure caused a number of comments:

IF condition THEN statement ELSE
   other-statement
END

(inline THEN followed by block ELSE). It appears that some readers saw
the # in the condition and assumed an If Not Not structure at
first, missing the THEN.

I find it interesting that no one has commented on the fact that
CUM(M) gets conditionally reinitialized, and whether or not that is
important.  But it proves my points that neither the structure nor
business rules are clear within the OP's code.

You can have 2 years programming experience, or 20, it does not
matter.  Better structure and variable naming will vastly improve
program accuracy. (On the other hand, I could make this code really,
really fast if it didn't have to be accurate!)

rex
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Is this worth rewriting?

2011-03-04 Thread Rex Gozar
Symeon wrote:
 I still think all of these constructs as just sooo basic that if you can't
 just read them either which way,  then you had better think about another
 career.

They are basic, but even good programmers will occasionally ASSUME
they understand what's going on when they really don't and introduce
new bugs.  The risk is always mitigated with better structure.

rex
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Is this worth rewriting?

2011-03-04 Thread Rex Gozar
George wrote:
 Actually, A:B:C NE '' THEN CUMM(M) = A+B+C
 doesn't slow anything down...

I think you're talking about execution speed; I was talking about
comprehension.  What data type is A?  Apparently, it can be an empty
string or a number.  But more importantly, what does it represent?
Quantity?  Dollars?  Mileage?  Yes, you would have to change the
program to create self-documenting code to show the business rules.

Technically, A:B:C NE  might be slower than A# or B# or C#
because the system would have to malloc and free string space for the
temporary variable.  But that's not my point; it would be faster to
comprehend if I wrote something like:

IF (SALE.AMT) OR (TAX.AMT) OR (SHIPPING.AMT) THEN
   * reinitialize the month with actual amounts
   CUMM(MONTH) = SALE.AMT + TAX.AMT + SHIPPING.AMT
END

(or whatever the OP's code is supposed to represent)

rex
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Git and U2

2011-03-02 Thread Rex Gozar
I use CVS with Universe.  I chose to use shell scripts to build
Universe accounts; I use the same scripts for both Linux and Windows
(via cygwin).

rex
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Is this worth rewriting?

2011-03-02 Thread Rex Gozar
Optimization is about getting rid of bottlenecks in the code.  Does
this code snippet really represent a significant percentage of the
total processing time?  Really, what percent?  If you can't quantify
it, don't change it.

rex
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] How to Clear Empty VM marks in Field

2011-01-31 Thread Rex Gozar
George said:
If the field were just a VM, trim would have left it there.

Actually, if recordx is just a VM, TRIM(recordx,@VM) will trim out
the single value-mark, resulting in  (empty field).  Tested in
Universe 10.2

rex
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Reading a Unix file from another machine.

2010-11-09 Thread Rex Gozar
If the binary file it truly 7 bit, try dos2unix -c 7bit master 
newfile, then see if you can cat newfile.

rex

On Tue, Nov 9, 2010 at 7:28 PM, Adrian Overs u2u...@gmail.com wrote:
 Hi Roy,
 What you need to do is to add a line feed LF char(10) to your carriage
 returns char(13).
 This can either be done at unix level by cat file | tr '\l' '\l\015'  file2
 (15 being the octal equivalent of 13)
 or
 programatically by
 CHANGE(RECORD,CHAR(13),CHAR(10):CHAR(13),-1)
 I don't have an AIX machine in front of me at the moment so I may not be
 100% correct on the syntax but that shout give you something to play around
 with.

 On Wed, Nov 10, 2010 at 9:05 AM, Roy Beard r...@cfl.rr.com wrote:

 Hi all,



 I am trying to read a Unix file from and old aix machine.  The people who
 sent it will not bend in how they sent it.

 What I got was in binary format so I used 'od' to convert it to ascii.
  When
 I tried to cat the file before trying to READSEQ records it looked like
 gibberish!

 I realized that if I set my Term type to vt100, I could read it but the
 carriage returns were just ^M after each record.  After trying 'sed' I gave
 up.



 Universe will not read the file at all.  I still get gibberish even on the
 converted file.



 Any ideas?  There must be a way to do this.  What am I missing?



 Thanks,



 Roy

 ___
 U2-Users mailing list
 U2-Users@listserver.u2ug.org
 http://listserver.u2ug.org/mailman/listinfo/u2-users

 ___
 U2-Users mailing list
 U2-Users@listserver.u2ug.org
 http://listserver.u2ug.org/mailman/listinfo/u2-users

___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Unidata Hashing

2010-09-20 Thread Rex Gozar
You can convert the result to hex, for example:

ERRCODE = DIGEST(ALGORITHM$SHA1, TEXT, DATALOC$STRING, RESULT)
RESULT = UPCASE(OCONV(RESULT, MX))
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Sequential Files Question

2010-09-09 Thread Rex Gozar
Al,

Look at the CREATE statement in your documentation.  Works for both
Windows and *nix.  Frankly, I'm amazed how complicated people are
making this.

OPENSEQ PATH TO SEQFILE THEN
   WEOFSEQ SEQFILE ON ERROR
  ABORTM WEOFSEQ FAILED!
   END
END ELSE
   CREATE SEQFILE ELSE
  ABORTM OPENSEQ AND CREATE FAILED!
   END
END
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Sequential Files Question

2010-09-09 Thread Rex Gozar
OPENSEQ PATH TO SEQFILE THEN
  WEOFSEQ SEQFILE ON ERROR
 ABORTM WEOFSEQ FAILED!
  END
END ELSE
  * instead of CREATE statement (on Windows)
  PCPERFORM echo:PATH
  OPENSEQ PATH TO SEQFILE ELSE
 ABORTM OPENSEQ FAILED!
  END
END
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] UI standards

2010-07-12 Thread Rex Gozar
As far as UI standards for data entry applications are concerned, I
recommend Microsoft's User Experience Guidelines as a starting point.
Google msdn windows 7 user experience guidelines, navigate to the
MSDN page, find the PDF link and download the document.

Most business people use Microsoft products daily.  If your
application follows the same basic layouts and uses the same keyboard
shortcuts, your users will quickly learn your application; as a bonus,
your application will teach them how to use their MS products.
However, if your application works contrary to MS products, or
requires them to memorize a different command set, then they'll
despise you and your product.

Have your developers read the book GUI Bloopers to avoid stupid GUI layouts.

Also User Interface Design for Programmers is helpful.
http://www.joelonsoftware.com/uibook/fog000249.html  When is it
okay to break out and show off a new interface?  When it matches the
user's imaginary model, not the developers!

Finally, desktop and web applications are starting to blur into one
another, so it's okay to borrow practices and standards from one and
implement them in the other.
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] I've run out of quotes

2010-06-18 Thread Rex Gozar
I haven't seen this one, so I thought I'd throw it in:

* use ~ within the VAR instead of \ to code everything inline
VAR = \mysql --user username -e LOAD DATA infile
'/mnt/mount/FILE.TXT' REPLACE INTO TABLE database.updates FIELDS
TERMINATED BY ',' LINES TERMINATED BY '~n' (Emailaddress, Reference)
SET UpdateType = 'D', DateAdded = current_timestamp(); LOAD DATA
infile '/mnt/mount/FILE.TXT' REPLACE INTO TABLE database.updates
FIELDS TERMINATED BY ',' LINES TERMINATED BY '~n' (Emailaddress,
Reference) SET UpdateType = 'A', DateAdded = current_timestamp();
database\

* convert so ~n becomes \n
CONVERT ~ TO \ IN VAR

* we'll wrap the command in double quotes when executing SH -c,
* so we need to double them within VAR
EQU DQ TO ''
VAR = CHANGE(VAR, DQ, DQ:DQ)

* now execute the shell command wrapped in double quotes
EXECUTE SH -c :DQUOTE(VAR)


*NOTE* in testing it seems \n in the VAR string may be changed by SH
-c into n, so look out for that behavior on your system.
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Langauge Def for Notepad++

2010-06-01 Thread Rex Gozar
I've added my notepad++ syntax highlighter notes to PickWiki:

http://www.pickwiki.com/cgi-bin/wiki.pl?NotepadPlusPlus

rex
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] QSORT (Or something like that)

2010-05-24 Thread Rex Gozar
You can find these subroutines on PickWiki.com:

CALL ROW2COL(A)  ;* flip fields to values
CALL QUICKSORT(A, 1, AR)   ;* sort on first value
CALL ROW2COL(A)  ;* flip back

rex
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] OPENSEQ and Abnormal termination of UV

2010-05-19 Thread Rex Gozar
 Anthony W. Youngman pi...@thewolery.demon.co.uk
 'Yings, yow graley yin! Suz ae rikt dheu,' said the blue man, taking the
 thimble. 'What *is* he?' said Magrat. 'They're gnomes,' said Nanny. The man
 lowered the thimble. 'Pictsies!' Carpe Jugulum, Terry Pratchett 1998
 Visit the MaVerick web-site - http://www.maverick-dbms.org Open Source
 Pick

Anthony,

Did you know that clicking on your maverick link in your signature
brings up the janitor's warehouse website?
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Quick poll - how many use 3-tier or N-tier Architecture

2010-04-09 Thread Rex Gozar
a.  Two tiers: frontend GUI and backend U2 basic.
b.  We don't use  Websphere.
c.  We use u2pipe to connect ColdFusion/PHP/C# applications to the
U2 backend business logic.
d.  No java.
e.  Yes, we use C#.
f.  We also use ColdFusion and PHP to frontend our applications.

Under normal circumstances, UniObjects with webservices would have
been would have been my first choice; however,  we use u2pipe due to
some pre-existing constraints in our hosting environments.

rex
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Examples of working ENCRYPT function?

2010-03-04 Thread Rex Gozar

Kevin,

For what it's worth, I'm posting some code we have working here.  A 
couple things to note: (a) the encryption process passes back 
non-printable characters along with the base64 that breaks the 
decryption process, so I strip them out. (b) I've noticed that some 
algorithms supported on earlier releases are not supported on later ones.


Universe 10.1.18 (Windows)

  FUNCTION ENCRYPT64(TEXT)
*
  EQU ALGORITHM$ TO RC4
  EQU ACTION$ENCRYPT TO 1
  EQU ACTION$ENCRYPT.BASE64 TO 2
  EQU ACTION$DECRYPT TO 3
  EQU ACTION$DECRYPT.BASE64 TO 4
  EQU DATALOC$STRING TO 1
  EQU DATALOC$FILE TO 2
  EQU KEY$ TO ABCDEFGHIJKLMNOP
  EQU KEYLOC$DATA TO 1
  EQU KEYLOC$FILE TO 2
  EQU KEYACTION$ACTUAL.KEY TO 1
  EQU KEYACTION$DERIVE.KEY TO 2
  EQU SALT$ TO 
  EQU IV$ TO 
  EQU RESULTLOC$STRING TO 1
  EQU RESULTLOC$FILE TO 2
*
  IF UNASSIGNED(TEXT) THEN
 ABORTM TEXT IS UNASSIGNED!
  END
  IF TEXT =  THEN
 RETURN ()
  END
*
  RESULT = 
*
  ERRCODE = ENCRYPT(ALGORITHM$, ACTION$ENCRYPT.BASE64,
 (TEXT), DATALOC$STRING,
 KEY$, KEYLOC$DATA, KEYACTION$ACTUAL.KEY,
 SALT$, IV$,
 RESULT, RESULTLOC$STRING)
*
  IF ERRCODE THEN
 ABORTM ENCRYPT64: ERRCODE :ERRCODE
  END
*
* get rid of non-printable characters
*
  RESULT = OCONV(RESULT, MCP)
  CONVERT . TO  IN RESULT
*
* return to caller
*
  RETURN (RESULT)
   END


Kevin King wrote:

Thanks Bob.  I'm at the giving up stage with Unidata 6.1 on AIX.
Besides, I need something that can span a few different releases so I'm
looking elsewhere.

-Kevin
http://www.PrecisOnline.com
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users



___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] UV time milliseconds option

2010-02-15 Thread Rex Gozar

When I run this on UV 10.1.18 (windows):

$OPTIONS TIME.MILLISECOND
STIME = SYSTEM(12)
NAP 500
ETIME = SYSTEM(12)
DISPLAY STIME
DISPLAY ETIME
DISPLAY (ETIME-STIME)
END

I get the output:

40473687
40474187
500

Are you saying you get 1000 when you the same code?

rex

John Rodgers wrote:

We run UniVerse 9.6 on HP-UX

We run PICK flavor accounts to accommodate our SB+ applications

 


I am having trouble pinning down the cause of a performance issue so I
want to record the progress of program.

 


I need timestamps in milliseconds.

I tried the $OPTIONS TIME.MILLISECOND

So SYSTEM(12) should return the required value

 

 


START.TIME = 38694   ;*  TIME()

START.SYS12 = 38694000   ;*

@TIME = 38694


CPU TIME = 17280 ;*   from SYSTEM(9)

 


NAP 500

 

NEW TIME = 38695000  ;*   SYSTEM(12)

ELAPSE TIME = 1000   ;*  SYSTEM(12) - START.SYS12

CPU ELAPSE = 10  

 

 


That's not right.

Without the nap.

 NEW.TIME is always = START.SYS12

  ie  = START.TIME : '000'

 


I have tried variation on the theme of $OPTIONS

With and without various 'FLAVOR' keywords.

 

 


What am I missing?

 

 


Cheers

 

 


JR

 

 


John Rodgers

MasterPack Project Team

Masonite International

Tel:  (813) 2612396 ext 3036

 

 

 

 

 

 

 





 

 


___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users



___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] UniRPC returning 39125

2010-01-06 Thread Rex Gozar

David,

Does the account have both VOC and VOCLIB files?  I ran into a similar 
situation where my VOCLIB was corrupted.


rex

David Wolverton wrote:

Yes - same user/password...
Yes - Absolute Pathname

I'm calling UniData from UniVerse using Intercall calls 


Has worked in the past .. running UV 10.3.0.4116 (PE)  and UD 7.1.9.3260
(real license)

The process uses ic_opensession so it should be 'database agnostic' on the
connection...

DW

-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Brian Leach
Sent: Wednesday, January 06, 2010 11:21 AM
To: 'U2 Users List'
Subject: Re: [U2] UniRPC returning 39125

Hi David

Are you going in as the same user you would use to telnet?
If not, does the user have permission on that account directory?

Are you using an absolute pathname for the account, and if not, does it work
if you do?

Regards

Brian 


-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of David Wolverton 
Sent: 06 January 2010 5:13 PM

To: 'U2 Users List'
Subject: [U2] UniRPC returning 39125

I have a connection throwing 39125 when I try to RPC

That means 'bad account' - yet the account connect data looks perfect to
me...

Anyone else seen 39125 during RPC?  Any guidance?


___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users
No virus found in this incoming message.
Checked by AVG - www.avg.com
Version: 9.0.725 / Virus Database: 270.14.126/2601 - Release Date: 01/05/10
19:35:00

___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users



___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] UniRPC returning 39125

2010-01-06 Thread Rex Gozar

David,

Sorry, I'm not sure about Unidata, but when I used InterCall with 
Universe it did not recognize a directory as an account unless it had 
both a VOC and a VOCLIB.  In my situation, I had a zero-byte VOCLIB 
which caused ic_opensession to fail with a bad account error.  Perhaps 
Unidata also has required files???  Can you ud up into the directory 
from the OS when logged in as the specified user?


rex

David Wolverton wrote:
In UniData I need a VOCLIB?  I don't see any such critter out there... 


___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] UniRPC returning 39125

2010-01-06 Thread Rex Gozar

David,

Also, are you using a literal string within a C program?  Of course, 
backslashes within windows paths will need to be escaped.


rex

___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Capturing output from a Command line program?

2009-10-23 Thread Rex Gozar

Richard,

When Universe shells down via the DOS command, it (Universe) doesn't 
reliably handle standard output and/or error.  The result is that DOS 
output isn't always captured when EXECUTE'd (it seems to depend on the 
command).


A more reliable strategy is to redirect the command output into a type 1 
or 19 file, then READ it in.


rex

Richard Blackman wrote:
Hi All, 


I am trying to capture the output from an EXECUTE statement on a command
line program but nothing is being captured, even though I know there is some
output.

Here is the command

 CMD = 'C:\usr\lib\sendmail -t  ':EMAIL.TEMPFILE:''
 EXECUTE DOS /c:CMD CAPTURING TRASH

Cheers,

Richard Blackman



___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Universe web connectivity

2009-09-23 Thread Rex Gozar

Matthew,

First, I want to mention that there are a number of writeups already on 
the PickWiki website:


http://www.pickwiki.com/cgi-bin/wiki.pl?CreateWebInterfaces

We use u2pipe for our customers' websites.  We don't need to install 
UniObjects on hosted webservers (many hosting services don't let you 
install them.)  Currently, the websites are written in either ASP, PHP, 
or ColdFusion.


The upside is that it doesn't tie up a U2 license for the duration of a 
user session, and that's its downside too -- it's possible for telnet 
users to eat up all the available licenses.


You say you're looking to develop a web solution for our product -- 
what kind of product is it?  Will you host the website for all your 
customers, or will they each have their own deployment?  Will it be a 
heavy traffic site, or low traffic geared towards internal employees or 
selected customers?  Are you looking to create the next FaceBook?


rex

___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Appending strings (was General guidelines on indexing)

2009-07-09 Thread Rex Gozar
Allocating all the required memory upfront is key to better performance. 
 Different platforms have different optimizations, so I use the 
following  buffer concept in my programs so they have roughly the same 
performance regardless of platform.


I wrote about it on u2ugWiki and PickWiki:

http://212.241.202.162/cms/cmswiki.wsp?id=173

http://www.pickwiki.com/cgi-bin/wiki.pl?How-To_Improve_Large_String_Performance_Using_Buffers


rex

___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] u2blog.org?

2009-06-10 Thread Rex Gozar

When I asked, I got this response from David Murray, August 2008:

As I am no longer in the U2 marketplace, I have decided to close the 
u2blog web site.


rex

Tony G wrote:

About a year ago I added u2blog.org to my list of blog
affiliates.  I have no idea who owns it or whether it's still
maintained.  Anyone here know?  Until it's identified I've
removed it from my list.


___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Personal Edition Modulo Limits

2009-06-05 Thread Rex Gozar
I guess I don't understand your dilemma... you previously did a uvbackup 
of your account(s), then moved it to your dev machine and did a 
uvrestore.  All I'm suggesting is that you use zip/unzip instead of 
uvbackup/uvrestore.


What do you mean by How do I get those accounts...into universe?  The 
accounts and files are already in universe -- moving it to a different 
machine doesn't change that (unless you switch between intel and 
non-intel processors).


rex

Stephen Prater wrote:
How do I get those accounts / files into universe on the dev machine?  
ACCOUNT-RESTORE?


___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Personal Edition Modulo Limits

2009-06-05 Thread Rex Gozar

Ok,

Once they are unzipped into a directory, you can set it up in UV.ACCOUNT 
manually (just a record with field 11 containing the path), or you can 
LOGTO the path, e.g.


LOGTO /tmp/SALES.ACCOUNT  (unix - case sensitive)

or

LOGTO C:/temp/sales.account  (windows - not case sensitive)

Once you get into the account, you can start resizing those large files 
over 10007.


rex

Stephen Prater wrote:
No, I just don't understand Universe, or you might have underestimated 
the depths of my newbieness.


___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Personal Edition Modulo Limits

2009-06-04 Thread Rex Gozar
Don't use uvbackup/uvrestore.  Use either tar or zip to get the account 
onto the other machine.  Then resize the files over 10007 modulo.


To get an approximate separation, use the total size in bytes:

INT( (total_bytes / 10007) / 512 ) = approx_separation

Since this is a development/testing account, you should not care too 
much if the file goes into overflow.


rex

Stephen Prater wrote:
I ran uvrestore with -V and you're right - it's not copying records for 
files where the modulo is too large.


is there anything I can do?


___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Personal Edition Modulo Limits

2009-06-02 Thread Rex Gozar
I'll add to Augusto's response that you will also need to resize any 
dynamic files that are over the 10007 modulo.


rex

Augusto Alonso wrote:

Hi.
I've made some tests and proved you can workaround palying wirh the 
separation.
You need to decrease the modulo under 10007. So increase your separation 
(in power of 2) as you need.
For example, a file with a TYPE,MODULE,SEPARATION of 18, 26573, 8 could 
be resized as 18, 9973, 32 without loosing of performance.

Regards,
-Augusto Alonso


___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Help with encryption

2009-05-12 Thread Rex Gozar

  FUNCTION MD5SUM(TEXT)
* Return an MD5 hash
* CVS $Revision: 1.2 $ $Date: 2009/04/14 17:13:27 $
**
  EQU ALGORITHM$MD5 TO MD5
  EQU DATALOC$STRING TO 1
  EQU DATALOC$FILE TO 2
  RESULT = 
  ERRCODE = DIGEST(ALGORITHM$MD5, TEXT, DATALOC$STRING, RESULT)
  RESULT = UPCASE(OCONV(RESULT, MX))
  RETURN (RESULT)
   END


IT-Laure Hansen wrote:

Does anyone know how to cause MD5 hashing in Universe? UV 10.2.3 on Win2003
server. I am hoping for a Basic command that I can run on a desired piece of
data. Reading documentation so far hasn't helped, am I wanting to do something
that is not available to me?

Thanks in advance!

Laure Hansen,
City of Redwood City - Information Technology
1017 Middlefield Road - Redwood City, CA 94063
Office 650-780-7087 - Cell 650-207-3235 - Fax 650-556-9204
lhan...@redwoodcity.orgmailto:lhan...@redwoodcity.org

P Please think green before printing this e-mail

Subscribe to receive Redwood City E-News, news releases,
or other documents via email: Click here to
register/subscribehttp://www.redwoodcity.org/eGov/login.aspx?ref=/egov/index
.aspx
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/

---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


Re: [U2] Any limitation in UniVerse decimal places

2009-05-07 Thread Rex Gozar
(This response assumes that your upstream UniVerse billing application 
is totalling decimal amounts.)


I don't know of specific limitations concerning decimal places, but I do 
know that precision differences in floating point math cause unexpected 
behavior.


If you're trying to total dollar amounts in a program, it's a best 
practice to ICONV them into integers before any math operations -- this 
eliminates all floating point problems.


AFAIK the query language RETRIEVE (i.e. LIST, SORT) performs math 
operations on the data as-stored in the record, then applies the OCONV 
before displaying the total (also avoiding floating point problems).


rex

apogee79 wrote:

I shall explain the problem that I am encountering in the best detailed way
that I can. I am working on a billing application (running on UniVerse),
which sends details to a downstream application for invoicing. If several
invoice groups are sent in one shot, where the total is approximately more
that $20 million, an error occurs, due to rounding off. But when those
invoice groups are sent one at a time, this condition does not occur. Is
there any upper limit that is set in the configuration parameters? Can
anyone please throw some light on this?

G

---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


Re: [U2] UV to SAP migration disaster

2009-04-21 Thread Rex Gozar

It's fun to think of UV as the underdog and how the cards are stacked
against us.  It's fun to be in the I told you so crowd when the
competitor fails.

But it doesn't matter if the competitor wins or loses; the reality is
that another UV site has bit the dust.  WE LOST -- that's my real concern.

What didn't happen to prevent this conclusion?  While it seems
politically correct to point the finger at incompetent management, or
ineffective vendor marketing, there's possibly another contributing
factor, one that we as a group seem reluctant to talk about... the fact 
that we (U2 professionals) have dropped the ball.  I can't help but 
think that if Shane Co. had a complete, cost-effective U2 application 
that supported all aspects of their business, there would have been no 
reason to move away from it to SAP.


Management doesn't really care about pretty pixels nor usability.  If 
that's what they're telling you, then they probably think they're doing 
you a favor by putting it in terms you can understand.


Ladies and gentlemen, it's always about money.  Being a group of 
experienced U2 business analysts, you'd think we'd know by now that it's 
always about (a) increasing revenue, (b) reducing expense, (c) bringing 
in more customers, (d) getting more business from the customers we have, 
and (e) reducing risk.  Every discussion with management must be framed 
exclusively in these terms.  Only then will management give you the 
right to contribute your opinion to a decision.  As a side benefit, they 
will be wary of competitor salesmen that cannot articulate specific 
revenue and expense advantages.  Hard dollar figures, i.e. money, 
speaks louder than marketing.


You want to put a new GUI on that old application?  Management won't 
stop you if you can prove it will make money or reduce support cost. 
But don't be fooled; some bulls**t cost analysis won't buy you any 
credibility with management.  Don't expect management will do this 
analysis for you; if they could, they'd already be doing it.


Back to prevention -- it takes a very deliberate and thoughtful 
cost-justification strategy to build up your existing U2 application. 
You need to progressively add the features it needs to ward off attacks 
from SAP or other enterprise products.



rex
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


Re: [U2] UV to SAP migration disaster

2009-04-21 Thread Rex Gozar
But it's always about the money.  If the current UV system is perceived 
to be incomplete, management is FORCED to decide between buy or build -- 
both take money.  And they will automatically lean towards the solution 
they are familiar with (just like we do.)


As UV professionals, we need to address this human dynamic: Mr.NewGuy 
came from a place where he used Feature X.  Your UV application 
doesn't have Feature X, so Mr.NewGuy sees the it as incomplete or 
lacking. Mr.NewGuy knows first-hand that this feature benefits the 
business (i.e. makes or saves money).  Have too many of these missing 
features and Mr.NewGuy has no choice but to SPEND MONEY and replace the 
whole system.  Real or not, Mr.NewGuy feels the pressure to do SOMETHING 
because he FEELS the old system is losing money.


So how do we address this?

Strategy 1: Don't fool yourself.  Just because you have a working 
application in production doesn't mean it couldn't be significantly better.


Strategy 2: Anticipate and implement useful features.  Study your 
competitor's systems and stay informed of the latest solutions to 
business problems.  Don't have Excel export capability? Get it.  Don't 
have mobile applications? Get them.


Strategy 3: Always make your managers look good.  Mr.NewGuy has revenue 
and budget goals -- build an application that meets those goals.  If 
Mr.NewGuy is meeting his business goals, there's no reason for him to 
tell the CEO or board to buy a new system.


Strategy 4: Always have a higher ratio of revenue projects vs. 
infrastructure projects.  Face the fact that GUI'izing you legacy 
application is an infrastructure project and will more than likely cost 
the company more than it gains.  Balance infrastructure projects against 
a larger number of revenue projects, or perhaps even rolling 
infrastructure changes into your revenue projects.  Stop doing those 
quick and dirty reports that everyone wants but don't generate any 
revenue or savings.


Strategy 5: Sell your U2 application to management.  YOU need to 
constantly market your product to management (but of course you really 
need to believe in it first).  By product I mean both your U2 
application and the services you provide to benefit the company.


rex

Jeff Schasny wrote:
 Unfortunately, its not always about the money. In many cases its about a
 change of  leadership where the new guy on top wants his own personal
 favorite software. I have been personally involved with at least 2
 instances where a new CFO has insisted that the ERP solution with which
 he/she/it is most familiar was instituted without regard for cost...
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


Re: [U2] Uniobjects

2009-04-21 Thread Rex Gozar
The unishared/unirpc/unirpcservices file has a timeout parameter, 
defaulting to 3600 seconds.  I think you can change it to zero for an 
indefinite login.


Jonathan Leckie wrote:

Is it possible to keep a Uniobjects connexion open?  Or is it possible to have 
a trigger that would allow an event that could allow the state change to be 
seen and re-opened?

---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


Re: [U2] UV to SAP migration disaster

2009-04-20 Thread Rex Gozar
I guess the basic premise of your argument is that the PHB's are 
listening to 90-day-wonder windows programmers, and they encouraged said 
PHB's that they needed to replace the UV database.


I don't buy it.

Even PHB's don't go spending millions of dollars on SAP just because 
their 25 year old windows programmers don't think UV is productive.


In the case of Shane Co. the PHB's decided to spend millions of dollars 
-- and no one bothered to do an ROI study?  Or it was fabricated by a 
bunch of idiots without any concept of reality?


At some point, Shane Co. must have been doing good.  They were 
expanding.  It seems a short time ago I heard they opened a new store 
here in Orlando, FL.  (Or maybe they weren't doing that good after all 
and the expansion was a feeble attempt at opening new markets to 
generate revenue.)


During this expansion, one of the PHB's must have said we AREN'T 
getting what we need from IT; let's look into other solutions.  Or 
maybe they said, we CAN'T get what we need.  (The former speaking to 
an unwillingness to address needs; the latter, lacking capability to do so.)


And this brings me back to my original question: what was Shane Co.'s 
REAL reason for deciding to migrate away from UV?  If Universe is 
supposed to be a superior environment for building and deploying 
business solutions, why couldn't their existing IT staff deliver?  Why?


It's too easy to characterize management decisions like this as 
frivolous or political.  But it's irresponsible to ignore the true 
business reasons behind these decisions, dooming ourselves to repeat 
history's mistakes.


rex

JPB-U2UG wrote:
I can't speak for everyone but if it's anything like at our place, it's 
due to lack of education. UniVerse is contains all of our business logic 
and Microsoft is used for our presentation layer, desktop and web. We 
have 3 programmers working on UniVerse with an average age of 55. In our 
windows area we have 10 programmers with an average age of 25. Most of 
the people coming out of the colleges and universities only know one 
platform Microsoft. They are taught nothing...

---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


Re: [U2] UV to SAP migration disaster

2009-04-17 Thread Rex Gozar

I've been wondering why the Shane Co. felt the need to migrate away from UV.

* Was their IT staff unable to meet business requirements due to the 
limitations of UV?


* Was their IT staff to blame, rather than the UV database environment? 
(i.e. understaffed, lack of skills, etc.)


At any rate, it appears that either (or both) caused Shane Co. 
management to look for a different solution.  Under the assumption if 
it ain't broke, don't fix it I would think that management thought 
something was broken, and they needed to spend money to fix it.


Does anyone have any first-hand knowledge of the specifics?  Anyone care 
to share their insights?


rex

John Hester wrote:

There were a few posts back in January about Denver jewelry retailer
Shane Co. and their disastrous migration from UV to SAP.  Today they're
starring in an eWeek slideshow about I.T. disasters:

---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


Re: [U2] universe sockets

2009-04-14 Thread Rex Gozar

I wrote u2pipe with a simple request/response socket model in mind:

http://www.pickwiki.com/cgi-bin/wiki.pl?U2pipe

You can also see other possible ways to do this:

http://www.pickwiki.com/cgi-bin/wiki.pl?CreateWebInterfaces

rex

doug chanco wrote:

If anyone has a pick server socket solution they would like to share I'd
appriciate it (answering requests and spawning a program to handle each
incoming request) otherwise I may go the route of moving the socket server
to the OS (using init.d to handle incoming requests and to spawn a program
to handle each request).

---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


Re: [U2] universe sockets

2009-04-14 Thread Rex Gozar
On windows, u2pipe uses wininetd; on unix or linux it can be used with 
either inetd or xinetd (with xinetd you can limit the number of 
simultaneous connections; pending requests get queued.)


I'm not sure I understand your question, but wininetd/inetd/xinetd can 
listen on any port you specify, receiving raw requests from any system 
and sending back any kind of response data.  So the requester (i.e. 
client) can be a browser, web server, or ANY other program that can 
interact with sockets.


While you can write a socket listener in Universe basic, it can't be 
completely fault tolerant; the process can block or hang. 
Wininetd/u2pipe sidesteps the issue by spawning a new process for each 
individual request.


rex

doug chanco wrote:
is it tied to wininetd/the client? (could I for example just open a raw 
socket to whatever port I bound it to and send/receive data from any 
system)?


from what I can gather this is tied to the client system, which makes 
sense since you refer to it as a way to connect a web server to a pick DBMS

---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


Re: [U2][UD] Named pipe issue.

2009-01-15 Thread Rex Gozar

Dan,

I don't think you can rely on the C daemon blocking on open(); it's 
supposed to err out on non-existing files.  It may be better to use the 
O_NONBLOCK and check the error code in a timed loop.


rex

Dan McGrath wrote:

While the C daemon is blocking at open, the Phantom apparently
successfully opens the pipe and writes to it without error. None of the
error logging code is touched and the logging after is.

---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


Re: [U2] [UV] PHP/Perl

2008-10-24 Thread Rex Gozar

Jeff, Charles,

I basically used the same strategy when I wrote u2pipe, which is a C 
program that uses InterCall to connect with the U2 database.  To add 
functionality, I add a Unibasic subroutine and a method in whatever web 
language -- right now ColdFusion and PHP, and looking to add ASP.NET soon.


U2pipe relies on an external socket listener: xinetd for linux, inetd 
for AIX, and wininetd for Windows.  The socket listener does not have to 
be on the same machine as U2 as long as it's reachable via the 
network.  Using config files, multiple connections can be made (one 
socket port mapped to one U2 connection).  I'm working on a connection 
pooling version, but it's not ready for prime time.


The web server doesn't need to be on the same network.  All of our 
deployments use a remote web hosting solution.  So the web server is 
hosted in one state, while the actual U2 database is in another.


The code and documentation is on www.PickWiki.com.

Jeff Butera wrote:
In a nutshell, I wrote a small C program which leverages Intercall to make 
connections to the database.  This is a lightweight program which requires 
little to no maintenance.  In short, the C program is merely the connection 
between Perl and Unidata, passing commands from Perl to a single subroutine 
on the Unidata side.  That subroutine, in turn, does all the work and then 
returns the data back to Perl.

---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


Re: [U2] [UV] PHP

2008-10-23 Thread Rex Gozar

There are several ways to do this.  Check out PickWiki:

http://www.pickwiki.com/cgi-bin/wiki.pl?Accessing_U2_From_PHP

Brutzman, Bill wrote:

Is there a way to do PHP with UniVerse?

---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


Re: [U2] Dynamic Array oddity very useful

2008-08-20 Thread Rex Gozar
Depending on undocumented behavior is usually a bad idea.  Just because 
A0 = 'ZZZ' happens to work in this release is no guarantee that the 
vendor will continue to support this behavior in the future.  The fact 
this doesn't work in other Pick flavors or variants makes me want to shy 
away from this construct.


rex
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


Re: [U2] What Next?

2008-08-20 Thread Rex Gozar

Al,

Software development is inherently an exercise in climbing steep 
learning curves - an exercise in problem solving - and the learning 
curves don't disappear -- Steve McConnell


I find that Steve's quote equally applies to professional development; 
growing as an application developer is a continuous exercise in climbing 
steep learning curves that don't disappear.


So you want to stay in application development and support... 
reasonably employed.  Here's my two cents:


Learn to program in C.  If you want to stay in the construction side of 
development, the aptitude to understand C is what separates the men from 
the boys.  Notice that it's an aptitude; some people just don't have 
the brain cells that understand memory allocation, let alone pointers 
and recursion.  Not everyone who calls themselves a programmer has 
this aptitude.  Many productive Pick programmers fail to develop 
skills outside of Pick because the other languages don't make sense to them.


If you can make sense of C, then a whole other world of programming 
languages opens up.  Java, JavaScript, PHP, Perl, VC++, C# and all of 
the other so-called curly brace languages.  I recommend getting the 
book Teach Yourself C in 21 Days from your library or bookstore. 
Remember: the reason for learning C is to provide a stable stepping 
stone to other similar languages.  In this day and age, I'd recommend C# 
as your next language: Eric Sink referred to it as Java done right.


Also on the construction side of development, get Mike Gunderloy's 
Coder to Developer to familiarize yourself with the different software 
tools available.  Most Pick shops don't do daily builds and regression 
tests, and you'll want to see how the other half lives.


If you don't know them already, you must learn XHTML, CSS, and 
JavaScript.  Almost every modern product has some kind of web display or 
interaction, so there's no excuse to be ignorant of them.


I see the biggest strike against Pick in general is it's perceived lack 
connectivity to other applications.  It's not true, but it seems that 
way.  Why? Because most Pickies are ignorant of how the big SQL apps 
work, plus unfamiliarity with UniObjects, BCI, and other connection 
techniques creates doubt -- a doubt that there's a simply easy way to 
move data back and forth between apps.  So Mr. SQL says, convert that 
Pick database to SQL because it removes that doubt.  To counter this 
perception, we need to be masters of connectivity.  Become *fluent* in 
the technologies to connect U2 with the outside world.


Construction and maintenance are maybe the most visible aspect of 
application development, but probably not the most important.  Analysis 
and design are.  To grow in these areas requires study, whether that's 
taking courses or reading books.   Read all the Steve McConnell books 
you can find.  Learn how to create function specs and system 
architecture designs.  Learn about design patterns.  Find out what 
MVC is.


Learn accounting and business processes.  The Accounting Game is a 
good book for newbies to get a grasp on both bookkeeping and general 
accounting concepts.  Most other books focus exclusively on the 
concepts, which are easy enough to understand.  The hard part of 
accounting is learning the specific accounts to debit/credit for a 
specific transaction; most of the time this is learned on the job.  The 
Accounting Game does a better-than-average job teaching the 
transaction/account relationship.


Last, consider getting a CS degree if you don't have one.  I hesitate to 
recommend this, but I know most job postings list it as a requirement. 
I think it will pay off in the long run.


I realize that this is a long list of stuff to learn.  And the steep 
learning curves won't disappear.  You need to ask yourself if this is 
the path you really, really want to take.


rex
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


  1   2   >