Many thanks for the responses :) - lost of food for thought!
George, Thanks; I'm aware of the UPS being able to trigger processes; in
fact I'm working toward a control system that will in future help to
handle such incidents; there is a handful of less critical servers
involved as well.
Wol -
We had serious power issues for a few years while the surrounding roads
were under construction. The APC Automatic shutdown process built into
the parachute software (donno if this is what it's still called) seemed
to work well enough. We never had any issues with UniVerse shutting
down or
ok.
UV / Information Flavor
If I create the following and write it out, it seems fine.
X=
X1=DATA
X2=
WRITE X ON FILE,ITEM
If I Edit the Item, it has 2 attribute lines.
001: DATA
002:
Now If I add the following:
X=
X1=DATA
X2=
INS DATA2 BEFORE X2
It doesn't create:
001: DATA
002: DATA2
003:
I'm working on a screen in our webapp where we're using a dojo widjet to create
a drop down with client names. The problem
is that we have 1,000's of clients and when we do a SELECT on this many clients
it takes a while. I know we can index the field but
I was wondering if you can do smart
Hi Chris:
This is a problem we first tried to figure out when we went to the Web. The
easiest way for us was to save off the client select using SAVE.LIST. You
will need a few variableS to keep track of where you are CURRENT.PAGE.NO,
ITEMS.PER.PAGE and NEW.PAGE.NO. Use you math skills you
Chris:
I'm betting the solution also needs indexing, because you want to pick
up where the last list left off and you don't want to wait for a select
to return to save the list. So, SAMPLE isn't really a solution but
indexing is. We do this all the time, but we have to use indexing. In
Doug,
Thanks for the reply. I'm a little confused as to how to execute your
suggestion though.
EXECUTE 'SELECT CLIENT WITH @ID = A] SAMPLE 10' CAPTURING CAPTURED PASSLIST
REC.COUNT = @SELECTED*SYSTEM(11)
IF REC.COUNT THEN
EXECUTE 'SAVE.LIST CLIENT.LIST '
END
RETURN
In the above example we
Bill,
I was curious if you had a quick example? I'm just curious how you guys are
suggesting to do this
Chris
Date: Wed, 20 Jul 2011 11:13:04 -0700
From: wphask...@advantos.net
To: u2-users@listserver.u2ug.org
Subject: Re: [U2] SELECT question, paginated select.
Chris:
I'm betting
Chris:
For instance, we have checks file. A number of our clients have over a
million records in the file. It's indexed on vendor no. and check
date. The index would look like:
00CAPGE15857 (7 digit vendor and 5 digit date)
This is a left justified so it's easy to sort and select. I
Chris,
I agree with Bill, using an index is your best solution. Are you able to apply
any kind of filter criteria to the names? If not here's one of your dilemmas...
If you make your drop down list too small nobody will use it because it will
take too long to get to anyone beyond the A's. If
Bill,
I guess my question is regarding how to traverse the index. In this case the
field we're using is the @ID, so it's
indexed by default. Below you stated that we have to traverse in BASIC, is this
using the SAVE.LIST approach that Doug
talks about?
In your example:
SELECT VENDCHECKS
Curt,
My problem is understanding how to traverse the query. Our dropdown is
paginated, we can specify the # of results per paginated drop-down so it being
super long or short
isn't an issue. The problem is getting the SELECT statements/UniVerse to match
what we want the dropdown to do.
For
Look at the BSCAN directive. It allows you to scan and traverse B-Tree type
files and alternate indices.
Larry Hiscock
Western Computer Services
-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Chris Austin
Sent:
I have no idea what the BSCAN directive is? Is that a UniVerse command? It
seems that there's not really a straightforward consensus on
the solution to this problem.
Chris
From: lar...@wcs-corp.com
To: u2-users@listserver.u2ug.org
Date: Wed, 20 Jul 2011 12:42:10 -0700
Subject: Re: [U2]
We have had similar problems - one solution that works very well is to not
contact the database to do big selects like this. We write such data into
xml files onto the web server and make them accessible via a web service
that is cached. This speeds up performance considerably, it sounds like a
If your objective is:
To get the search results down to something small that the user can deal
with...
I believe the person that mentioned a combo box, would be your Easiest
Solution. However, it may not be the fastest, because you will inevitably
have to use a wildcard search in RETRIEVE to
I'll also add that, I'm fairly new at this myself, so, if you read that and
go... Thats way too resource intensive I realize that, but, its the only
experience I have with your type of problem :)
On Wed, Jul 20, 2011 at 4:05 PM, John Thompson jthompson...@gmail.comwrote:
If your objective is:
Chris:
Indexes aren't created by default. The @ID is hashed into the file
which allows you to retrieve an item via the @ID with a single disk read.
To index, you need to create a dictionary. I create all our index
dictionaries as INDEX_{n} (e.g. INDEX_1, INDEX_2, etc). They're
Which is a great thingunless you're the cat! And then, you'd pray that
a committee be setup to decide on which method to use!
As in anything with web programming (especially with MV), there are
million
ways to skin the cat. Hope that helps.
I thought we discussed this about a year ago, with the solution using SQL on UV
to do your selection, which was able to produce a row number, then only
include
certain row numbers on the final query.
George
-Original Message-
From: u2-users-boun...@listserver.u2ug.org
Chris,
Bscan is a universe command that will let you traverse a secondary index. Say
the last company on the page was ABC Company, your BSCAN commands match value
could be Abc and then step thru the list with a loop. The UV docs description
isn't too bad.
Curt
Chris Austin
Interesting, I wonder if anyone still has an example of this?
Chris
From: ggal...@wyanokegroup.com
To: u2-users@listserver.u2ug.org
Date: Wed, 20 Jul 2011 15:15:58 -0500
Subject: Re: [U2] SELECT question, paginated select.
I thought we discussed this about a year ago, with the solution
OK. Try this
ED DICT CLIENT ROW
0001: I
0002: @1+1
0003:
0004: ROW
0005: 5R
Now, you can SELECT CLIENT WITH . AND WITH ROW =1 AND ROW =20
As long as the selection stays the same, This should work.
George
-Original Message-
From: u2-users-boun...@listserver.u2ug.org
And even easier:
ED DICT CLIENT PAGE
0001: I
0002: @1+1 ; INT((@1+1-2)/20)+1
0003:
0004: PAGE
0005: 5R
0006: S
Making the assumption that 20 rows / page
SELECT CLIENT WITH .. AND WITH PAGE = 1
SELECT CLIENT WITH .. AND WITH PAGE = 14
-Original Message-
From:
George,
Is the dictionary change below used for the SQL solution you mentioned? In
other words, do I have to add this to use the SQL queries
to paginate it based on row? Or is this a trick to use a UniVerse SELECT?
Chris
From: ggal...@wyanokegroup.com
To: u2-users@listserver.u2ug.org
I believe he has created an I descriptor for you. You can use this with a
Universe SELECT.
On Wed, Jul 20, 2011 at 4:33 PM, Chris Austin cjausti...@hotmail.comwrote:
George,
Is the dictionary change below used for the SQL solution you mentioned? In
other words, do I have to add this to use
This works with UV, and not the SQL solution.
However, I did find if you need to do a sorted select, you first have to do the
select
then a second select to pull the rows / pages
SELECT CLIENT WITH NAME LIKE A...
SELECT CLIENT WITH PAGE = 4
SELECT CLIENT WITH NAME LIKE A... AND WITH PAGE = 4
To clarify that statement, if you are SORTING your results you must
make it two statements to get the correct results.
SELECT CLIENT WITH NAME LIKE A... BY NAME
SELECT CLIENT WITH PAGE = 4
SELECT CLIENT WITH NAME LIKE A... BY NAME AND WITH PAGE = 4 Will give
you the page 4 of the unsorted
I just added these two items (ROW and PAGE) to my VOC, so they can be used on
any file now
although I changed the PAGE name to PAGE20, for 20 items per Page.
ED VOC ROW
001: I
002: @1+1
003:
004: ROW
005: 6R
006: S
ED VOC PAGE20
001: I
002: @1+1 ; INT((@1+1-2)/20)+1
003:
004: PAGE
005: 6R
006:
George,
I put PAGE in my CLIENT DICT so it looks like the following:
PAGE
0001 I
0002 @1+1 ; INT((@1+1-2)/20)+1
0003
0004 PAGE
0005 6R
0006 S
After I filed it I got a message stating an I-descriptor needs to be compiled
but I didn't do that. When I do a LIST CLIENT PAGE I see the
page
I've seen this technique described before but it doesn't work for me on
UD7.1. Is there a way of doing this in UniData?
Thx,
Brad.
From: George Gallen ggal...@wyanokegroup.com
To: U2 Users List u2-users@listserver.u2ug.org
Date: 07/20/2011 03:23 PM
Subject:Re: [U2] SELECT
You only need to use the second select if you are sorting (using the BY). I
believe
if you are just doing a select, then you can append the WITH PAGE = x to your
statement.
I don't know how your doing your SELECT from the web page. I don't know if you
can stack selects from it, so it will
I don't know UD. I guess it's a UV thing only.
George
-Original Message-
From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-
boun...@listserver.u2ug.org] On Behalf Of bradley.sch...@usbank.com
Sent: Wednesday, July 20, 2011 5:08 PM
To: U2 Users List
Subject: Re: [U2]
You understand that the value for PAGE is specific to the SELECT / LIST
which is why when you list the names, it displays as page 1, which is
based on that output. When you did the select, it pulled from the page
numbers from that selection.
As to how it works. If I understand correctly
Thank you! We don't do a lot of double select statements in our programs, I
assume you do the 1st SELECT and then do some sort of CAPTURED or PASSLIST
command
to pass the first selected values into the 2nd SELECT.
Chris
From: ggal...@wyanokegroup.com
To: u2-users@listserver.u2ug.org
I'm not sure if this works on Pick flavor but...
ED VOC GETCLIENTS
001: PA
002: SELECT CLIENT BY NAME WITH NAME = I2,SRCH
003: SELECT CLIENT WITH PAGE = I2,PAGNO
NOW, You can get your results with
GETCLIENTS A 4
GETCLIENTS ALEX 6
George
-Original Message-
From:
oops forgot the bracket:
Should read: SELECT CLIENT BY NAME WITH NAME = I2,SRCH]
-Original Message-
From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-
boun...@listserver.u2ug.org] On Behalf Of George Gallen
Sent: Wednesday, July 20, 2011 5:48 PM
To: U2 Users List
Subject:
If your doing the selects from a Basic program,
In order to avoid passlist and a second execute, you can pass a dynamic array
of the commands you want to execute.
CMD1='SELECT CLIENT BY NAME WITH NAME = A]'
CMD1-1='SELECT CLIENT WITH PAGE = 4'
EXECUTE CMD1 [RTNLIST] [CAPTURING]
OR
I setup my VOC as follows:
PA
SELECT CLIENT BY NAME WITH NAME = I2,SRCH]
SELECT CLIENT WITH PAGE = I2,PAGNO
I received an error though:
CHRISGETCLIENTS A 4
6000 record(s) selected to SELECT list #0.
RetrieVe: syntax error. Unexpected symbol. Token was .
Scanned command was SELECT
George,
The first example worked beautifully, thanks for all help! :)
Chris
From: ggal...@wyanokegroup.com
To: u2-users@listserver.u2ug.org
Date: Wed, 20 Jul 2011 16:58:38 -0500
Subject: Re: [U2] SELECT question, paginated select.
If your doing the selects from a Basic program,
In
OK cool, thanks. Just out of curiosity how would you do 2 selects using a
PASSLIST?
Chris
From: ggal...@wyanokegroup.com
To: u2-users@listserver.u2ug.org
Date: Wed, 20 Jul 2011 17:06:50 -0500
Subject: Re: [U2] SELECT question, paginated select.
SORRY, My mistake.
that should have
CMD1=SELECT1
EXECUTE CMD1 RTNLIST [VARNAME]
CMD2=SELECT2
EXECUTE CMD1 PASSLIST [VARNAME] RTNLIST [VARNAME]
Where [VARNAME] is an optional variable name to hold the list
in case you had multiple lists you were working on.
I believe you can hold selectlist variables in a regular array ()'s, but
I just answered my own question right after I sent that last reply..lol. The
PASSLIST way (which I will not be using btw) is below:
SEL.STMT = 'SELECT CLIENT BY NAME WITH NAME = A]'
EXECUTE SEL.STMT CAPTURING CAPTURED PASSLIST
IF (SYSTEM(11)*@SELECTED) THEN
LIST.STMT = 'SELECT CLIENT WITH
Perhaps once you have the initial user input, then fire the backend off as a
phantom - if you need to check progress, write progress inf out to a file that
you could LIST from another session
Ross Ferris
Stamina Software
Visage Better by Design!
Ross, thanks; the processes run in serial from
44 matches
Mail list logo