As has been mentioned, UV optimizes for sequential processing of @AM
delimited lists, thus greatly reducing the need for REMOVE and SELECT TO
type work-arounds. Not mentioned: SWAP is virtually instantaneous. Whatever
is causing the OP's process to slow down, it is not the FOR/NEXT
construct, nor
Multi-faceted question.
1. I seem to remember a method to convert a hashed file to a dir file.
Might be Universe resize syntax I am remembering. Is that functionality
available in Unidata? I am using Unidata 6.1 on aix.
2. I am considering trying to keep my DICT files as DIR type so they can be
G'day,
We recently had an issue with nfiles on our HP-UX 11i (UV10.0.16)
system, where we hadn't been increasing nfiles after adding extra
UniVerse users and were getting close to the nfiles limit. We've now
adjusted nfiles accordingly, but realised we don't know whether phantoms
should be taken in
Much as I agree with Colin's comments on simply REMOVEing the two values you
want inside your loop, I can't help but think that Dave has some evil bad
stuff he needs to do with the rest of IN.LINE that relies on the raised mark
characters.
What I'd just like to point out though is that if there
David,
Try this trick:
A11 = DCOUNT(IN.TAB,@AM)
Pos = 1
FOR A1 = 1 TO A11
IN.LINE = FIELD(IN.TAB[Pos, ], @AM, 1)
Pos += COL2()
*SWAP @VM WITH @AM IN IN.LINE
CUST.NUM = IN.LINE<1, 1>
CUST.DESC = IN.LINE<1, 2>
NEXT A1
Thanks,
David A. Green
www.dagconsulting.com
(480) 813-1725
Received this in the mail, and as it relates to the product in question
(Pentaho), thought it may be relevant. The Webinar is complementary, so
if you can afford the time, price is right!
Event Title:
Database Trends and Applications Survey Results: The Freshest BI Data
from the Journal of Ente
I've been doing some work with code generation using MV databases
as the source and .NET classes as the target. Has anyone here
been down this path? I welcome anyone interested in this topic
to have a look at a new blog posting here:
remove.pleaseNebula-RnD.com/blog/tech/mv/2008/11/mvcodegen1.ht
Symeon
Thanks for your quick reply. I have read your thread about "UO Connection
Pooling stats". Could you tell me how many pooled licenses you use on that
web site? How do you estimate the number of pooled licenses you needed for a
web site or web application?
Thanks
Hugh
Symeon Breen wrote:
Oh my - I'm not sure with all that swapping that you'll come out much ahead.
You're missing the "point" of remove. If your array is well built your code
simply becomes:
LOOP
REMOVE CUST.NUM FROM IN.TAB SETTING MARK
REMOVE CUST.DESC FROM IN.TAB SETTING MARK
(do your thing)
WHILE MARK DO REPEAT
If
Or again, you could 'build up' your IN.LINE like this:
If you string were **huge** this might be faster as long as the size of each
@AM was not too big...
IN.LINE = ""
LOOP
REMOVE TEMP.IN.LINE FROM IN.TAB SETTING MARK
BEGIN CASE
CASE MARK = 0 OR MARK = 1 OR MARK = 2
(do my th
0001: TESTDYN=""
0002: TESTDYN<-1>="HELLO":CHAR(253):"THERE"
0003: TESTDYN<-1>="UNTIL":CHAR(253):"ANOTHER"
0004: SELECT TESTDYN
0005: LOOP
0006: READNEXT ID ELSE EXIT
0007: PRINT ID
0008: REPEAT
0009: STOP
0010: END
This only returns
HELLO
UNTIL
My first test did not have @vm's and it looked like
I think a lot of us need to brush up on how remove works.
Marvin R. Fisher
Technical Resource Group
A Pipeline Group Company
2850 Red Hill Ave.
Suite 110
Santa Ana, CA 92705
Tel (949) 296-8380 ext. 620
Fax (949) 756-0029
Pipeline Software Statement: This email message is confidential and may be
l
> From:Glen Batchelor
> I hope that your PO number is visually unique, because
> it will be difficult to locate and match by text in
> any OCR unless it's:
>
> 1) in the same physical place on every invoice
> 2) always starts or ends with the same unique string
>
> Many newer OCR+PDF convertor
You can make use of the change in the delimiter flag. I have a remove
boiler plate;
DELIM = -1
ATT = 1
VAL = 1
SV = 1
LOOP
REMOVE PIECE FROM RECORD SETTING DELIM
CRT '<':ATT:',':VAL:',':SV:'> = ':PIECE
BEGIN CASE
CASE DELIM = 2
ATT += 1
VAL
And unless there is a need to work with attributes rather than
values, eliminate the SWAP to get:
CUST.NUM = IN.LINE<1,1>
CUST.DESC = IN.LINE<1,2>
> From: Joshua Gallant
> Try something like this instead:
>
> LOOP
> REMOVE IN.LINE FROM IN.TAB SETTING MARK
> SWAP @VM WITH @AM IN IN.LINE
>
that's what I thought.but it works! (coool)
> -Original Message-
> From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED] Behalf Of
> Marvin R. Fisher
> Sent: Monday, November 17, 2008 3:00 PM
> To: u2-users@listserver.u2ug.org
> Subject: RE: [U2] Speeding up processing through large dyn
>> So no rexec but to do it remotely you just call the web page
>> from your other app/website/javascript etc.
So the client browser requests a page from the IIS server and the IIS
server requests myPage.php from the U2 server which causes the PHP
processor on the U2 server to make the exec call
Hi Hans,
You may want to look at an imaging software that used to be called Optio IDC
Enterprise. Optio Software was acquired by Bottomline technologies. The
software engine is the best I have seen for imaging repeating data (fax and
print). You set it once for one trading partner and it teaches
That is what I was afraid of. Okay. So after listening to all of your
comments (thus far since there is an annoying delay in these messages),
here is what I like the best:
SWAP CHAR(9) WITH "" IN IN.TAB
SWAP CHAR(10) WITH "" IN IN.TAB
SWAP @VM WITH CHAR(9) IN IN.TAB
SWAP @SM WITH CHAR(10) IN IN
The REMOVE 'stops' at every @VM and @AM. ...
See my earlier response.
Marvin R. Fisher
Technical Resource Group
A Pipeline Group Company
2850 Red Hill Ave.
Suite 110
Santa Ana, CA 92705
Tel (949) 296-8380 ext. 620
Fax (949) 756-0029
Pipeline Software Statement: This email message is confiden
But it is not a file - it's an array.
Marvin R. Fisher
Technical Resource Group
A Pipeline Group Company
2850 Red Hill Ave.
Suite 110
Santa Ana, CA 92705
Tel (949) 296-8380 ext. 620
Fax (949) 756-0029
Pipeline Software Statement: This email message is confidential and may be
legally privileged. T
>>READNEXT could be an option
Agreed. I've found that using SELECT lists is considerably faster than
dynamic arrays.
Charles Shaffer
Senior Analyst
NTN-Bower Corporation
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/
y tips
> on speeding this up?
> ---
> 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/
-
If you don't want to 'swap' all the other markers with 'strings' (SWAP @VM
WITH "<>" IN RECORD) then you have to 'build' the line item up -- keep
removing until you see the remove hit the @AM and then process the line...
DW
> -Original Message-
> From: [EMAIL PROTECTED]
> [mailto:[EMAIL
In message <[EMAIL PROTECTED]>,
Joshua Gallant <[EMAIL PROTECTED]> writes
>When running through an array with a for next loop the last item
>processed isn't remembered so the program needs to traverse the entire
>array for each record and will slow down as you get to records later in
>the process.
You could contact [EMAIL PROTECTED] to look at myviewpoint.
Tom
-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Jeff Butera
Sent: Friday, November 14, 2008 9:45 PM
To: u2-users@listserver.u2ug.org
Subject: [U2] Pentaho/ETL Tools
We're in the midst of c
isit http://listserver.u2ug.org/
__ Information from ESET NOD32 Antivirus, version of virus signature
database 3617 (20081117) __
The message was checked by ESET NOD32 Antivirus.
http://www.eset.com
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/
Joshua Gallant wrote:
When running through an array with a for next loop the last item
processed isn't remembered so the program needs to traverse the entire
array for each record and will slow down as you get to records later in
the process.
Instead of this:
A11 = DCOUNT(IN.TAB,@AM)
FOR A1 =
Ahh subtle difference our udt box is A web server but not our main one. Our
main web farm is based on win iis . Udt is on linux which comes with apache
by default. So no rexec but to do it remotely you just call the web page
from your other app/website/javascript etc.
-Original Message-
F
I believe that the later versions of UV does keep a current pointer, so
the REMOVE shouldn't be much faster, as long as you don't write back to the
dynamic
array.
George
> -Original Message-
> From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED] Behalf Of Joshua Gallant
> Sent: Monday,
Oh my goodness! This is incredible.
Okay, now I have a mixture of @VM and @AM in the table. The REMOVE
'stops' at every @VM and @AM. I only want it to 'stop' at @AMs. How do
I do that?
David Laansma
IT Manager
Hubbard Supply Co.
Direct: 810-342-7143
Office:810-234-8681
Fax: 810-234-6142
www.
READNEXT could be an option
SELECT IN.TAB
LOOP WHILE READNEXT IN.LINE DO
CUST.NUM=IN.LINE<1,1>
CUST.DESC=IN.LINE<1,2>
REPEAT
this should be lightning-fast regardless how big IN.TAB is.
David Laansma wrote:
Is there a way to speed up spinning through a very large dynamic table? Here is
a s
So the remove pointer (mark) works like the example believes it should...
SWAP @VM WITH CHAR(0) IN IN.TAB
LOOP
REMOVE IN.LINE FROM IN.TAB SETTING MARK
SWAP CHAR(0) WITH @AM IN IN.LINE
* SWAP @VM WITH @AM IN IN.LINE
CUST.NUM = IN.LINE<1>
CUST.DESC = IN.LINE<2>
WHILE MARK DO
REPEAT
Ma
If the array IN.TAB is only attributed, with say the customer number &
description with pipe delimited you can use REMOVE:
LOOP
REMOVE IN.LINE FROM IN.TAB SETTING MORE
UNTIL IN.LINE = "" DO
CUST.NUM = FIELD(IN.LINE,"|",1)
CUST.DESC = FIELD(IN.LINE,"|",2)
REPEAT
What if you eliminated the SWAP
and changed:
CUST.NUM = IN.LINE<1,1>
CUST.DESC = IN.LINE<1,2>
How long does it take?
George
> -Original Message-
> From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED] Behalf Of David Laansma
> Sent: Monday, November 17, 2008 1:10 PM
> To: u2-users@list
Check into REMOVE , it should speed this up quite a bit.
> -Original Message-
> From: [EMAIL PROTECTED] [mailto:owner-u2-
> [EMAIL PROTECTED] On Behalf Of David Laansma
> Sent: November 17, 2008 1:10 PM
> To: u2-users@listserver.u2ug.org
> Subject: [U2] Speeding up processing through large
When running through an array with a for next loop the last item
processed isn't remembered so the program needs to traverse the entire
array for each record and will slow down as you get to records later in
the process.
Instead of this:
A11 = DCOUNT(IN.TAB,@AM)
FOR A1 = 1 TO A11
IN.LINE = IN.
Is there a way to speed up spinning through a very large dynamic table? Here is
a sample of my program:
A11 = DCOUNT(IN.TAB,@AM)
FOR A1 = 1 TO A11
IN.LINE = IN.TAB
SWAP @VM WITH @AM IN IN.LINE
CUST.NUM = IN.LINE<1>
CUST.DESC = IN.LINE<2>
NEXT A1
A11 is 85,000+ and as this loop goes on,
We transform nearly everything into either PDF or PS and attach it using
automatic or manual "PDF attachments" which is just a list of PDF keys in
each respective item. If you're on Linux I can shoot you some pointers on
how to do it yourself with free Linux tools and a couple for-fee tools.
I
Lee,
Thanks. I will definitely check this out. I am guessing that you take
the CSV files and site specific processing with them.
> Hi we use an OCR product called Invoices from Readsoft.
Charles Shaffer
Senior Analyst
NTN-Bower Corporation
---
u2-users mailing list
u2-users@listserver.u2u
What about if you had a unix directory call ../truefalse
If the output of UD/UV program is good, then "touch ../truefalse/PID"
If the output of UD/UV program is false, then "/bin/rm ../truefalse/PID"
then
RUN BP $udtProgram ; cat ../truefalse/`method-of-returning-current-pid`
I can't remember h
Symeon,
Nice. Since exec is used, your U2 server must also be your web server,
right? In our environment here, the U2 server is a different machine than
the web server. I wonder, is there and rexec equivalent in PHP and has
anyone done this remotely?
> $udtCmd="LANG=en_US.UTF-8;export LANG
What we do (although not automatic) is our system checks every hour
for any documents in a specific directory (SMB mounted on Unix)
(placed there by the scanning process - running XP).
When it discovers documents, it assigns it a "scan number" and moves
the document into a holding directory, the
Hi we use an OCR product called Invoices from Readsoft. This looks for
the data you want and captures it. It then remembers the format for the
supplier. The best thing is it works. We do 1.5 million invoices a year
like this. It produces a csv file containing the captured data and
details of where
Again a similar thing in php - I look for a certain string in the output and
use that as a return code
$udtCmd="LANG=en_US.UTF-8;export LANGcd
/usr/ud/accounts/$account;/usr/ud71/bin/udt RUN $BP $prog";
$result = array();
exec( $udtCmd, &$result);
foreach ( $result as $v )
{
if (substr($v,0,6)=
I am very interested in the data capture part of this. The Universe
integration should be doable with UniObjects. PO/Invoice matching will be
application specific, but doable. Capturing data from electronic
documents should be doable as well, Being able to capture data off of
paper document
We do something similar here. In a UNIX shell script we call a Unidata
sub and capture the output into a log file.
echo Running BP $udtProgram >> $logfilepath
$UDTBIN/udt< I'm trying to write some Universe programs that plug into an
> existing perl framework. For this to work these programs nee
This sounds like some format of EDI, whereby either the fields are mapped
programmatically or there are published standards (214's etc) that both
sides can follow.
IMHO even with EDI being in the US for the last 20+ years, it still usually
comes down to manual programming. At least that's my exper
I agree. Unless there is a logical need to go backwards, I only go backwards
when deleting mv'd data from attributes. Far better than maintaining a mv
pointer and branching when going forward.
Mark Johnson
- Original Message -
From: "Anthony Youngman" <[EMAIL PROTECTED]>
To:
Sent: Monday,
Ian, I tried for a long time to figure out a way to do this entirely from
within UD. Couldn't figure it out. I hit two walls. First, the exit code
that nix receives is the status of the udt command. If you're program runs
at all, you get a '0'. The second wall was when I tried setting an
enviro
Hi Tony,
To put my enquiry into perspective I simply looking for a electronic
invoice processing system. The product needs to able to scan invoices
regardless how they are delivered, whether they arrive electronically,
or by fax or by email or mail, and then automatically match them to
purchase or
Stewart,
On Fri, Nov 14, 2008 at 12:49 PM, Mitchell, Stewart <
[EMAIL PROTECTED]> wrote:
> Hi All,
>
> We have been doing some performance testing on HP-UX 11.23 & 11.31 and I
> though I would share some of our findings.
>
Without giving away any confidential information, could you give us a roug
Tony,
obvious or not - I think You missed something.
Electronic invoices are common goods in some coutnries.
Here in Sweden even for personal invoices - e.g. I get
my electricity bill as a message when i log in to my bank.
Business is moving on and some large companies will not
accept invoices
> From: Hans Morawa
> We are looking for a electronic invoice processing system that
matches
> invoice with purchase orders automatically and works on/or with
a
> UniVerse platform and is available in Australia.
( Really hoping I'm not missing something obvious. *gulp* )
Hans, I don't understand
No - a pooled connection is a single dedicated connection to your iis
application process. You can set the number of pools to use using
UniObjects.MaxPoolSize and UniObjects.MinPoolSize. Obviously each connection
pool uses a connection pool licence.
If you do not use connection pooling then the p
The other problem with counting backwards is if you've got a lot of fields.
BASIC has optimisations for scanning forward through a list. I don't think it
scans backwards very well. Go backwards and the result is not likely to be
pretty.
The only time I normally go backwards is when I have a hab
56 matches
Mail list logo