Re: [U2] Speeding up processing through large dynamic table

2008-11-17 Thread Scott Ballinger
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

[U2] unidata hashed convert to dir?

2008-11-17 Thread slestak
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

[U2] Unix nfiles & phantoms

2008-11-17 Thread Norman, David (SAAS)
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

RE: [U2] Speeding up processing through large dynamic table

2008-11-17 Thread Ken Wallis
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

RE: [U2] Speeding up processing through large dynamic table

2008-11-17 Thread David A. Green
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

RE: [U2] Pentaho/ETL Tools

2008-11-17 Thread Ross Ferris
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

[U2] CodeSmith, .netTiers, code generation, etc

2008-11-17 Thread Tony G
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

RE: [U2] concurrent connections on a pooled license

2008-11-17 Thread Hugh Yang
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:

RE: [U2] Speeding up processing through large dynamic table

2008-11-17 Thread Colin Alfke
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

RE: [U2] Speeding up processing through large dynamic table

2008-11-17 Thread David Wolverton
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

RE: [U2] Speeding up processing through large dynamic table

2008-11-17 Thread George Gallen
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

RE: [U2] Speeding up processing through large dynamic table

2008-11-17 Thread Marvin R. Fisher
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

RE: [U2] Automatic Invoice - PO Matching Software

2008-11-17 Thread Tony G
> 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

RE: [U2] Speeding up processing through large dynamic table

2008-11-17 Thread BNeylon
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

RE: [U2] Speeding up processing through large dynamic table

2008-11-17 Thread Tony G
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 >

RE: [U2] Speeding up processing through large dynamic table

2008-11-17 Thread George Gallen
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

RE: [U2] Setting return code when a Universe process terminates

2008-11-17 Thread Charles_Shaffer
>> 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

RE: [U2] Automatic Invoice - PO Matching Software

2008-11-17 Thread Steven Horwitz
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

RE: [U2] Speeding up processing through large dynamic table

2008-11-17 Thread Dave Laansma
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

RE: [U2] Speeding up processing through large dynamic table

2008-11-17 Thread Marvin R. Fisher
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

RE: [U2] Speeding up processing through large dynamic table

2008-11-17 Thread Marvin R. Fisher
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

Re: [U2] Speeding up processing through large dynamic table

2008-11-17 Thread Charles_Shaffer
>>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/

RE: [U2] Speeding up processing through large dynamic table

2008-11-17 Thread Tom Dodds
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/ -

RE: [U2] Speeding up processing through large dynamic table

2008-11-17 Thread David Wolverton
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

Re: [U2] Speeding up processing through large dynamic table

2008-11-17 Thread Anthony W. Youngman
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.

RE: [U2] Pentaho/ETL Tools

2008-11-17 Thread Tom Dodds
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

RE: [U2] Automatic Invoice - PO Matching Software

2008-11-17 Thread Tom Dodds
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/

Re: [U2] Speeding up processing through large dynamic table

2008-11-17 Thread Allen Egerton
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 =

RE: [U2] Setting return code when a Universe process terminates

2008-11-17 Thread Symeon Breen
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

RE: [U2] Speeding up processing through large dynamic table

2008-11-17 Thread George Gallen
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,

RE: [U2] Speeding up processing through large dynamic table

2008-11-17 Thread Dave Laansma
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.

Re: [U2] Speeding up processing through large dynamic table

2008-11-17 Thread Mecki Foerthmann
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

RE: [U2] Speeding up processing through large dynamic table

2008-11-17 Thread Marvin R. Fisher
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

Re: [U2] Speeding up processing through large dynamic table

2008-11-17 Thread David Beaty
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

RE: [U2] Speeding up processing through large dynamic table

2008-11-17 Thread George Gallen
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

RE: [U2] Speeding up processing through large dynamic table

2008-11-17 Thread u2ug
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

RE: [U2] Speeding up processing through large dynamic table

2008-11-17 Thread Joshua Gallant
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.

[U2] Speeding up processing through large dynamic table

2008-11-17 Thread David Laansma
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,

RE: [U2] Automatic Invoice - PO Matching Software

2008-11-17 Thread Glen Batchelor
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

RE: [U2] Automatic Invoice - PO Matching Software

2008-11-17 Thread Charles_Shaffer
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

RE: [U2] Setting return code when a Universe process terminates

2008-11-17 Thread George Gallen
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

RE: [U2] Setting return code when a Universe process terminates

2008-11-17 Thread Charles_Shaffer
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

RE: [U2] Automatic Invoice - PO Matching Software

2008-11-17 Thread George Gallen
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

RE: [U2] Automatic Invoice - PO Matching Software

2008-11-17 Thread Les Hewkin
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

RE: [U2] Setting return code when a Universe process terminates

2008-11-17 Thread Symeon Breen
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)=

RE: [U2] Automatic Invoice - PO Matching Software

2008-11-17 Thread Charles_Shaffer
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

Re: [U2] Setting return code when a Universe process terminates

2008-11-17 Thread Charles_Shaffer
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

Re: [U2] Automatic Invoice - PO Matching Software

2008-11-17 Thread MAJ Programming
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

Re: [U2] SELECT-READNEXT That's odd

2008-11-17 Thread MAJ Programming
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,

Re: [U2] Setting return code when a Universe process terminates

2008-11-17 Thread bradley . schrag
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

RE: [U2] Automatic Invoice - PO Matching Software

2008-11-17 Thread Morawa, Hans
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

Re: [U2][UV] Performance Improvement Hpux 11.23 & 11.31 (Itianium)

2008-11-17 Thread Adrian Merrall
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

Re: [U2] Automatic Invoice - PO Matching Software

2008-11-17 Thread Mats Carlid
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

RE: [U2] Automatic Invoice - PO Matching Software

2008-11-17 Thread Tony G
> 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

RE: [U2] concurrent connections on a pooled license

2008-11-17 Thread Symeon Breen
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

RE: [U2] SELECT-READNEXT That's odd

2008-11-17 Thread Anthony Youngman
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