|
Scott,
Just thought you may know of a PTF or something. It was working well before
the upgrade!
I can post code if you want, but we are going to do some timings first to
try to pinpoint a time gap.
I really appreciate your help as well as the rest of the list.
Just in case I can speed up the parsing of the ZPL (mostly all are ZPL) here
is the code:
// get the file from the IFS
Flags = O_RDONLY;
Fd = open(%Trim(File) : Flags);
if Fd< 0;
die('open(): file not found');
endif;
// read the file
Len = Read(Fd: %addr(RecBufA): %size(RecBufA));
// close the file
CallP Close(Fd);
// translate the line of text into EBCDIC
Len = %len(%trim(RecBufA));
Translate(Len: RecBufA: 'QTCPEBC');
// If ZPLII change inverse to regular
DoW 1 = 1;
Z = %Scan('¬POI':RecBufa:Z);
If Z> 0;
%Subst(RecBufa:Z+1:3) = 'PON';
Z += 1;
Else;
Leave;
EndIf;
EndDo;
// Clear the buffer codes
RecBufa= '~CC¬¬XA¬JMA¬FS¬XZ¬XA¬SS,,,1223¬FS¬XZ¬XA¬MN ¬FS¬XZ'+
'¬XA¬MMT¬FS¬XZ¬XA¬MD+10¬FS¬XZ¬XA¬PR5¬FS¬XZ¬XA¬IDR:*.GRF¬XZ'+
'¬XA¬IDR:*.*¬XZ¬XA¬MCY¬XZ' + %Trim(RecBufa);
Len = %Len(%Trim(RecBufA));
// translate the line of text back to ASCII
Translate(Len: RecBufA: 'QTCPASC');
Thanks again,
Craig
-----Original Message-----
From: midrange-l-bounces@xxxxxxxxxxxx
[mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf Of Scott Klement
Sent: Wednesday, January 26, 2011 10:07 AM
To: midrange-l@xxxxxxxxxxxx
Subject: Re: Time increase going from V5R4 to V7R1
Hi Craig,
On 1/26/2011 7:08 AM, Craig Jacobsen wrote:
Yes, I'm using HTTPAPI and FTPAPI to accomplish the label printing.Hmmm... I wasn't fishing for credit, Craig. I was merely pointing out that
Thank you and you deserve a lot of credit for that!
the IFS APIs are part of IBM i, they are not 'Scott's Stuff'.
FTPAPI and HTTPAPI are my stuff... are you having performance problems with
them?
What if it is the part from #4 down that is slow?Please remember that the following quotation is the sum total of knowledge
How can I make that part faster?
that I have about step #4:
4) The file is translated to EBCDIC, parsed, some control charactersThis says that you're doing three things:
are put in depending on ZPL,EPL, and then translated back to ASCII
1) Translating to EBCDIC, initially, then translating back.
In my experience, this takes a millisecond or so... can't account for a
10 second increase in time (unless you're doing something wrong?) So unless
your benchmarking points to the ASCII/EBCDIC translation as a problem area,
I'd do nothing here.
2) 'parsed'
Yeah. I know exactly one word about this part of the program. Are you
doing this parsing efficiently? Or is it taking a long time? Do you even
know how long it's taking?
3) inserted some ZPL or EPL control characters.
... are you doing that efficiently? Or is it taking a long time? Are you
doing something that could be optmized (such as reading the file one byte at
a time) or not?
Do you see my problem? I know nothing about your routines. If we worked
together, and you asked me for help with this, I'd start by inserting code
to determine where the slowdown is -- the same thing I recommended in my
earlier message to you! Once I determined where the problem is, I'd read
the code and think about how to optimize it.
But, in this case, I can't read the code, and you haven't identified the
problem spot... How much further can I take this?
--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list
To post a message email: MIDRANGE-L@xxxxxxxxxxxx To subscribe, unsubscribe,
or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting, please take a
moment to review the archives at http://archive.midrange.com/midrange-l.
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.