Re: [U2] OT: Monitoring Program: Can This Be Done?

2013-06-26 Thread Mecki Foerthmann
You really don't want to use TIMEOUT for every user since that can cause 
a lot of trouble.

I only execute it for certain users like shop floor terminals.
I put macros into the sbc files on those PCs so you only click on the 
icon and it logs you on to Linux with the right ID and password for that 
machine and sits on a menu with only 2 options 1. Log on to UD and X to 
exit SBClient.
If you choose 1 it logs you on to UD automatically so machine operators 
don't need to know and remember any user IDs and passwords.
Of course those users have limited access and can only run processes for 
the shop floor like labour bookings.
If the screen is logged on to UD and is idle for 5 minutes UD times out 
and the screen goes back to the Linux menu.
Ever since I put that in we have on average 50 users less logged on at 
any time and don't get even close to running out of licenses any more.


On 26/06/2013 22:47, Susan Lynch wrote:

UniData has a TIMEOUT command that we sometimes put in the VOC LOGIN for
clients whose users let their sessions tie up licenses while sitting idle.

Susan Lynch
F. W. Davison  Company, Inc.

-Original Message-
From:] On Behalf Of Ed Clark



universe has an AUTOLOGOUT command. I think unidata has something similar.
___
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] How do I get the U2 Metadata Manager to work

2013-06-09 Thread Mecki Foerthmann
I can do all that with SSIS, VB.net and/or c# classes too without having 
to install another server, buy extra software and learn a new language.


On 09/06/2013 01:09, Bill Brutzman wrote:

Mecki:

While the old-fashioned approach is decent, it appears that there would be
the fallout of having to manually mop-up the dead rows.

To me... a more robust way is to... have the CF middleware read the Seiki
data... CF clean the old SQL rows... CF would call the new Rocket REST tool
to call a UniBasic sub to write the data to the UD Avante table.

The CF handler might be less than a dozen lines of HTML-like tags... or CF
script.

Upon doing this... there would likely be other data translation apps that
would come to mind... like integrating Avante with other ODBC... United
Parcel Service, employee time clock, shop floor equipment etc.

Likewise, I expect that ASP.net could do most all of the CF part.  Of
course, the main idea here is that a server would be running  agents
(services).  The latest CF 10 has TomCat built-in.

I got turned on to The Zen of REST by the author Scott Davis at a
Philadelphia Emerging Technologies conference.

Slick Willy

-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Mecki Foerthmann
Sent: Saturday, June 8, 2013 3:52 AM
To: u2-users@listserver.u2ug.org
Subject: Re: [U2] How do I get the U2 Metadata Manager to work

Bill,

What I try to achieve is converting production data collected by Seiki
software into labour bookings on our Avante ERP system.
Currently operators use Seiki on the machine and also book the jobs on a
separate screen to update ERP.
So I have one application writing to a SQL Server table and I want to run a
phantom on UD that picks up changes on that table and updates several UD
files using existing business logic when it finds any.
That way the operator doesn't have to enter labour bookings and make
mistakes any more.
I also want to remove the rows from the SQL Server table once they are
marked as completed operations and update SQL Server with changes of the
production schedule to produce loading lists on the machines.

How can a browser or Coldfusion help me with that?
If I really wanted a browser based front end I would most likely use
Designbais or SBXA since I don't see the point and don't have the time
trying to learn yet another new language (or a whole bunch of them) just for
that.

I think I'll just go the old fashioned way and run a SSIS package on SQL
server that checks for changes on the table and writes these to a Samba
share on the UD server as a Tab delimited text file and also updates the
tables Seiki uses for loading lists.
Then my phantom can pick up those changed rows every minute or so and update
my files.
I just wanted a more elegant solution and and see if and how the UD tools
work.

Mecki


On 07/06/2013 23:02, Bill Brutzman wrote:

Mecki:

While it may be counter-intuitive that ColdFusion is very hot...

The compelling gravity in the entire web UniVerse is the idea is the
idea browser front end.

As CF was originally tag-based... if a programmer knows any HTML...
that same programmer already knows much CF.

Where CF shines is middleware to connect to databases... and rapid
application development.

It is worth it to go to adobe.com and check out CF.

A related impossibility is that the CF community is even more gung-ho
that the U2 community.  Who knew?

--Bill


___
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



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


Re: [U2] How do I get the U2 Metadata Manager to work

2013-06-07 Thread Mecki Foerthmann
I know, tried it and it doesn't work on our setup because BCI only seems 
to work if the OS on the UD server is 32 bit.
We were told it didn't matter so they built a Redhat Linux 64 bit 
virtual server and put UD in that.

Now if I try to connect trough BCI I only get memory errors.
AFAIK EDA is only for connecting from SQL Server to U2 so no good for 
what I want to do.


On 07/06/2013 09:39, Symeon Breen wrote:

 And I am still looking for a way to read data from a relational database
in a Basic program.


This has been around for years Mecki - look up the bci functions like
SQLPrepare etc.  Or there is the new EDA function as well.


Rgds
Symeon.


___
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] How do I get the U2 Metadata Manager to work

2013-06-07 Thread Mecki Foerthmann

This is really all new for me, so you have to excuse my ignorance.
What is EDT?
I know EDA but that is for writing data to SQL Server but not for 
reading from it.

At least that's what it says in the documentation.
Doesn't that use replication?

I also have BDT working on 64 bit Linux but how does that help me?

And if you actually have BCI working on 64 bit Linux, which ODBC driver 
did you use?

Are there any 'gotchas' when installing it?
In that regard I am totally at the mercy of our sys admin since he is 
the only one who installs anything on Linux.
He installed a 64 bit ODBC driver and from a Linux shell he can connect 
to the SQL Server box I want to connect to with no problem.
I followed the documentation in setting up BCI but when I try to use 
CONNECT in a Basic program I always get a memory error.


On 07/06/2013 15:57, Symeon Breen wrote:

Hi  - I have udt 7.1 on redhat 64bit and we use BDT ok   ???


Also EDT is for unidata to get access to external data sources like sql
server so that would also solve the problem



-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Mecki Foerthmann
Sent: 07 June 2013 14:54
To: u2-users@listserver.u2ug.org
Subject: Re: [U2] How do I get the U2 Metadata Manager to work

I know, tried it and it doesn't work on our setup because BCI only seems to
work if the OS on the UD server is 32 bit.
We were told it didn't matter so they built a Redhat Linux 64 bit virtual
server and put UD in that.
Now if I try to connect trough BCI I only get memory errors.
AFAIK EDA is only for connecting from SQL Server to U2 so no good for what I
want to do.

On 07/06/2013 09:39, Symeon Breen wrote:

 And I am still looking for a way to read data from a relational
database in a Basic program.


This has been around for years Mecki - look up the bci functions like
SQLPrepare etc.  Or there is the new EDA function as well.


Rgds
Symeon.


___
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



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


Re: [U2] How do I get the U2 Metadata Manager to work

2013-06-07 Thread Mecki Foerthmann

I don't think that is an option for me.
That sounds far too complicated for an old dinosaur like me.

I am no nuclear physicist but even I know that cold fusion is an urban 
myth and doesn't work!
You need temperatures and pressure like in the centre of the sun to get 
fusion going.

And that is VERY hot!
The Ajax I know has been dead for millennia and where I come from rest 
is for after work. :-)


On 07/06/2013 15:51, Bill Brutzman wrote:

Mecki:

Consider using Adobe's ColdFusion as middleware... possibly with the new U2
REST tool.

View = HTML
Middle = CF, U2 ReST
DataBase = U2, SQL

A cool thing about U2 Rest is that... it is fairly easy to leverage existing
UniBasic code... especially Subs.  Rocket has an outstanding three-part
video on how to do AJAX and ReST.  ColdFusion has many desirable features.

--Bill


-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Mecki Foerthmann
Sent: Friday, June 7, 2013 9:54 AM
To: u2-users@listserver.u2ug.org
Subject: Re: [U2] How do I get the U2 Metadata Manager to work

I know, tried it and it doesn't work on our setup because BCI only seems to
work if the OS on the UD server is 32 bit.
We were told it didn't matter so they built a Redhat Linux 64 bit virtual
server and put UD in that.
Now if I try to connect trough BCI I only get memory errors.
AFAIK EDA is only for connecting from SQL Server to U2 so no good for what I
want to do.

On 07/06/2013 09:39, Symeon Breen wrote:

 And I am still looking for a way to read data from a relational
database in a Basic program.


This has been around for years Mecki - look up the bci functions like
SQLPrepare etc.  Or there is the new EDA function as well.


Rgds
Symeon.


___
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



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


[U2] How do I get the U2 Metadata Manager to work

2013-06-06 Thread Mecki Foerthmann
Ever since we finally upgraded UniData at work I have been trying out 
the new tools and don't seem to have much fun with them.

The best one is XAdmin and I use it a lot these days.

IMHO the interface is a bit crude and clunky, but I guess that's Eclipse 
and you can't do much about that.
The BDT is not of much use since I need to make tweaks of the program 
using AE (even if it only to make PRC work) but when I then open it 
again in BDT it reverts to the old version. Looks like it keeps that in 
memory on my PC so any changes made on the server are lost.
Looks nice and shiny but the syntax check isn't really working either. 
99% of the errors shown turn out to be no errors at all.


The latest one I tried is the Metadata Manager.
It installed fine and I can connect to the server and the database no 
problem.
I can see the files and the dictionaries and can even change data on the 
server but that's it.
The metadata tools I want to use are all greyed out, so what am I doing 
wrong?


As stated in the Help I ran MIGRATE.SQL on the server but all I achieved 
is that I now cannot change anything using the old Avante Batch Schema 
Generation process. It goes through the motions but just hangs up at the 
end now.


So at the end I am not overly impressed.
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] How do I get the U2 Metadata Manager to work

2013-06-06 Thread Mecki Foerthmann

I'll keep that refresh option in mind.
Still a hassle and I would prefer if they would just get rid of that 
'feature'.
I also noticed that unassigned variable error that pops up for all 
functions including CALL that return a new variable.
Some people may regard assigning a value before you use a function as 
good coding standard, I don't see the point, though.
I haven't tried this in anger, but I recall that BDT treats all files as 
data files and you can edit data as well.
Maybe this is a feature they could add to keep Dict files and hashed 
files separate so you don't have to look for the BP within 1000 data 
files every time.


I have been using an external editor (mv developer) for several years now.
I always save the program to disk, open it with ED, add a blank line 
somewhere and file it with FIBC.

That takes care of PRC.
Locking works when you open a program externally, so the only chance 
that someone could snatch the program ab incorporate it into another 
project is in that short period between saving in the external editor 
and opening it with ED on the UD server for the first time.
Since I am the only UD programmer in the company it is virtually 
impossible that will ever happen.

Well, and as long as you have OS.ED you can bypass PRC anyway.
OK, if you NEVER EVER fix data with ED then you could probably remove 
it, but who would voluntarily block the only fire escape?


We have a really old version of PRC (3.9) and I can't make a business 
case to invest in new software.

There are other tools like mv.SSIS that I'd rather get first.
Especially since tools like Rocket's Metadata Manager don't seem to work 
or I am too stupid to install them properly.
I managed to get at least VSG to work on one SQL Server 2008 box, but 
that is a really primitive tool and I hate it.


And I am still looking for a way to read data from a relational database 
in a Basic program.



On 06/06/2013 18:30, Tom Whitmore wrote:

Hi Mecki,

One think that I always do with BDT is right-click on the program, select 
refresh, then open the program.  That seems to be the only way to make sure I 
have the current version.

Currently, BDT is sort of working with PRC but it isn't honoring file 
ownership so I'm unable to let the programmers use BDT.  You do need to get some 
programs from Susan for things to work as I have it now.  I'm told the latest version of 
PRC supports BDT.  We are currently testing the new version of PRC but I haven't had an 
opportunity to try BDT on this version..

As far as false errors, the latest version of BDT is greatly improved.  
However, I have noticed couple of false errors:
1) if the numeric subroutine label does not have a : BDT doesn't recognize 
the label (like 99*).
2) LOCATE(J,ORIG.PH,2;XXXPOS) THEN FOUND=1 ELSE FOUND=0 , BDT will report that 
XXXPOS was never assigned a value.  There are other instances of this type of 
problem.

One thing I wish I could do is edit records in hashed files, but I don't see 
how to accomplish this.

Tom Whitmore
RATEX Business Solutions

-Original Message-
From: u2-users-boun...@listserver.u2ug.org 
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Mecki Foerthmann
Sent: Thursday, June 06, 2013 12:06 PM
To: U2 Users List
Subject: [U2] How do I get the U2 Metadata Manager to work

Ever since we finally upgraded UniData at work I have been trying out the new 
tools and don't seem to have much fun with them.
The best one is XAdmin and I use it a lot these days.

IMHO the interface is a bit crude and clunky, but I guess that's Eclipse and 
you can't do much about that.
The BDT is not of much use since I need to make tweaks of the program using AE 
(even if it only to make PRC work) but when I then open it again in BDT it 
reverts to the old version. Looks like it keeps that in memory on my PC so any 
changes made on the server are lost.
Looks nice and shiny but the syntax check isn't really working either.
99% of the errors shown turn out to be no errors at all.

The latest one I tried is the Metadata Manager.
It installed fine and I can connect to the server and the database no problem.
I can see the files and the dictionaries and can even change data on the server 
but that's it.
The metadata tools I want to use are all greyed out, so what am I doing wrong?

As stated in the Help I ran MIGRATE.SQL on the server but all I achieved is 
that I now cannot change anything using the old Avante Batch Schema Generation 
process. It goes through the motions but just hangs up at the end now.

So at the end I am not overly impressed.
___
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

Re: [U2] How do I get the U2 Metadata Manager to work

2013-06-06 Thread Mecki Foerthmann
I downloaded the March 2013 client tools today and will hopefully be 
able to install them tomorrow or early next week.

So yes, my version of BDT is March 2012 IIRC.

The Metadata Manager is March 13, though.
I just ran the install with the default options, clicked on the program 
and selected the server already set up with UCI.
This worked just fine with Xadmin and BDT and as I said before MDM also 
connects fine and displays all the UD accounts and files.

But when I right click on a file all the MDM options are greyed out.
All I can do is open the dictionary and maintain that.

And what about my suggestion at the last U2U to make XAdmin use sudo so 
you can use all functions without having to log on as root?
You may be allowed to log on as root on your test systems but my sys 
admin doesn't give anyone the root password for the production server.


Cheers

Mecki


On 06/06/2013 20:35, Daniel McGrath wrote:

Hi Mecki,

It sounds like you are running a old copy of BDT. Unassigned variable warnings 
from CALL statements was fixed sometime last year. Follow the instructions here 
(http://updates.rocketsoftware.com/u2/) to make sure you have the latest 
versions. I can't recall which version, but if you are on too old of a release, 
that update site won't work for you, so you would have to download the full 
version again before you can use it. The latest full package is MAR2013.

Regards,
Dan

-Original Message-
From: u2-users-boun...@listserver.u2ug.org 
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Mecki Foerthmann
Sent: Thursday, June 06, 2013 1:22 PM
To: u2-users@listserver.u2ug.org
Subject: Re: [U2] How do I get the U2 Metadata Manager to work

I'll keep that refresh option in mind.
Still a hassle and I would prefer if they would just get rid of that 'feature'.
I also noticed that unassigned variable error that pops up for all functions 
including CALL that return a new variable.
Some people may regard assigning a value before you use a function as good 
coding standard, I don't see the point, though.
I haven't tried this in anger, but I recall that BDT treats all files as data 
files and you can edit data as well.
Maybe this is a feature they could add to keep Dict files and hashed files 
separate so you don't have to look for the BP within 1000 data files every time.

I have been using an external editor (mv developer) for several years now.
I always save the program to disk, open it with ED, add a blank line somewhere 
and file it with FIBC.
That takes care of PRC.
Locking works when you open a program externally, so the only chance that 
someone could snatch the program ab incorporate it into another project is in 
that short period between saving in the external editor and opening it with ED 
on the UD server for the first time.
Since I am the only UD programmer in the company it is virtually impossible 
that will ever happen.
Well, and as long as you have OS.ED you can bypass PRC anyway.
OK, if you NEVER EVER fix data with ED then you could probably remove it, but 
who would voluntarily block the only fire escape?

We have a really old version of PRC (3.9) and I can't make a business case to 
invest in new software.
There are other tools like mv.SSIS that I'd rather get first.
Especially since tools like Rocket's Metadata Manager don't seem to work or I 
am too stupid to install them properly.
I managed to get at least VSG to work on one SQL Server 2008 box, but that is a 
really primitive tool and I hate it.

And I am still looking for a way to read data from a relational database in a 
Basic program.


On 06/06/2013 18:30, Tom Whitmore wrote:

Hi Mecki,

One think that I always do with BDT is right-click on the program, select 
refresh, then open the program.  That seems to be the only way to make sure I 
have the current version.

Currently, BDT is sort of working with PRC but it isn't honoring file 
ownership so I'm unable to let the programmers use BDT.  You do need to get some 
programs from Susan for things to work as I have it now.  I'm told the latest version of 
PRC supports BDT.  We are currently testing the new version of PRC but I haven't had an 
opportunity to try BDT on this version..

As far as false errors, the latest version of BDT is greatly improved.  
However, I have noticed couple of false errors:
1) if the numeric subroutine label does not have a : BDT doesn't recognize 
the label (like 99*).
2) LOCATE(J,ORIG.PH,2;XXXPOS) THEN FOUND=1 ELSE FOUND=0 , BDT will report that 
XXXPOS was never assigned a value.  There are other instances of this type of 
problem.

One thing I wish I could do is edit records in hashed files, but I don't see 
how to accomplish this.

Tom Whitmore
RATEX Business Solutions

-Original Message-
From: u2-users-boun...@listserver.u2ug.org 
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Mecki Foerthmann
Sent: Thursday, June 06, 2013 12:06 PM
To: U2 Users List
Subject: [U2] How do I get the U2 Metadata Manager

Re: [U2] Unidata BCI error

2013-06-01 Thread Mecki Foerthmann

Well, that is my guess too.
When we were planning the upgrade we asked our VAR if we needed to build 
a 32 bit Linux server and were told that UD 7.2 would work just fine on 
64 bit Linux.


So how can I connect to a SQL Server or Oracle database from UD and read 
data from it if BCI only works on a 32 bit OS?

Is there maybe another ODBC driver that will work?



On 23/05/2013 17:31, Daniel McGrath wrote:

I've checked our system and have no previous reports of this error.

Since our Linux versions are 32-bit and it seems you are running 64-bit Linux, 
combined with the negative number, I would hazard a guess this is some 32-bit 
on a 64-bit machine related problem.

Regards,
Dan

-Original Message-
From: u2-users-boun...@listserver.u2ug.org 
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Mecki Foerthmann
Sent: Thursday, May 23, 2013 9:56 AM
To: U2 Users List
Subject: [U2] Unidata BCI error

Unidata 7.2 on Redhat 6.2 64.
I got our Sysadmin to install ODBC on our UD server today so I can try to use 
BCI to access data on SQL Server 2008 R2 directly.
After some experimenting we finally got the ODBC part going and can connect to 
the right database from the command line.
He relinked the shared library as stated in the documentation and CONNECT now 
seems to establish a connection to the server.
But then it falls over with this message:
In /usr/ud72/sys/CTLG/c/CONNECT at line 441 insufficient memory, requested size 
= -2074363.
and drops back to a Linux prompt.
The number is always different but always a negative one.
Any clues what may be wrong?

___
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 PreStore to change the KEY of a record?

2013-05-29 Thread Mecki Foerthmann
To stay with the picture of not using a hammer to drive in a screw, I 
would just write a Basic program to do this.

Use the right tool for the job!
Open the file
Execute GET-LIST
Then a loop that generates the new Ids including checking that it 
doesn't already exist, READU record from old Id, WRITE record to new ID, 
DELETE old record.

A few lines of code written in less than a minute.
Compile, generate list, run program, job done!


On 28/05/2013 21:59, Charlie Noah wrote:
Dang, David, you beat me to it. ;^) I was just going to suggest the 
same thing. Just because the OP wanted to use ED (a hammer) to drive 
in a screw doesn't mean that it is the best tool ( a screwdriver). 
Good answer.


Charlie Noah

On 05-28-2013 3:42 PM, David A. Green wrote:

I would take my saved list and copy it to a text editor then using copy
commands and a quick macro convert the list into a bunch of COPY FROM 
FILE.A

BAD.KEY, GOOD.KEY commands.  Then save it as a PA and then execute it.

David A. Green
(480) 813-1725
DAG Consulting

-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of David 
Wolverton

Sent: Tuesday, May 28, 2013 10:48 AM
To: 'U2 Users List'
Subject: [U2] UniData PreStore to change the KEY of a record?

I am always using what I call 'PreStore' command...

In the AE editor, I need to change  Attb 2  from A]thisbad]C]D   to be
A]thisgood]C]D  on a list of items...

So I get the list, AE FILENAME and then...

=FIX 2`R/thisbad/thisgood/`FI`=FIX

Viola!  The data is updated.

I have a need to 'fix' a KEY to a record...

Is there a way to use a PreStore command that could do that? It's 95
records.  Too many to hand edit.  Too few to write a program.  A 
PreStore

would be JUST RIGHT... if there was a way to do it!

DW

___
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



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


[U2] Unidata BCI error

2013-05-23 Thread Mecki Foerthmann

Unidata 7.2 on Redhat 6.2 64.
I got our Sysadmin to install ODBC on our UD server today so I can try 
to use BCI to access data on SQL Server 2008 R2 directly.
After some experimenting we finally got the ODBC part going and can 
connect to the right database from the command line.
He relinked the shared library as stated in the documentation and 
CONNECT now seems to establish a connection to the server.

But then it falls over with this message:
In /usr/ud72/sys/CTLG/c/CONNECT at line 441 insufficient memory, 
requested size = -2074363.

and drops back to a Linux prompt.
The number is always different but always a negative one.
Any clues what may be wrong?

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


Re: [U2] select query..

2013-05-15 Thread Mecki Foerthmann

What do you actually try to achieve?


On 15/05/2013 12:18, Sathya wrote:

Manu Fernandes efv at infodata.lu writes:



Hi

Do you have wildcard characters like [] into KEYVALUE ?
If not, why do you SELECT ; it's the key of file.name ; you can read

directly !

Elsewhere, For performance, set a index on the  at id

Why do you want to use save-list/get-list ?
You can work on LIST1 directly !

manu


Hi Fernandes,

Thanks for your comments. But as Im new to this technology Im not sure how
to proceed with your suggestions.

Can u please be more specific on this approach?

There is no [] symbols in the KEYVALUE. How do I check whether @ID is
indexed?

I will modify it with using LIST1 directly.

Thanks  Regards,
Sathya V.




Hi Experts..

I have one issue here with fetching data from the file.

EXECLINE = SELECT FILE.NAME WITH  at ID = \:KEYVALUE:\
DISPLAY EXECLINE
EXECUTE EXECLINE RTNLIST LIST1
EXECUTE 'SAVE-LIST SOME.LIST' PASSLIST LIST1

LIST.NAME = GET-LIST SOME.LIST
sellist = ''
EXECUTE LIST.NAME RTNLIST sellist CAPTURING junk

Here Im running a loop for a set of KEYVALUEs and for each run the
SSELECT
statement is taking around 30 seconds. When I want to run 1000 loops,
ideally
the run time will be much.

Is there any easier way to do this with less time consumption.

Thanks  Regards,
Sathya V.

___
://listserver.u2ug.org/mailman/listinfo/u2-users

___
U2-Users mailing list
U2-Users at 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] select query..

2013-05-15 Thread Mecki Foerthmann

So you don't need to select at all.
Just use READ record FROM FILE.NAME,KEYVALUE ELSE record = '' in your loop.


On 15/05/2013 12:52, Sathya wrote:

Mecki Foerthmann meckif at gmx.net writes:



___
U2-Users mailing list
U2-Users at listserver.u2ug.org

Actually Im fetching the KEYVALUE data from a flat file and passing the
values one by one to the select command and creating the list.

Then I will write the data into another log file.


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] What tools do you use for data warehouse...

2013-04-26 Thread Mecki Foerthmann

SSIS of course.
Why would anybody want to use anything else?

On 26/04/2013 18:50, Tom Whitmore wrote:

Hi,
I was wondering what tools you use to export data to an SQL data warehouse from 
UniVerse.  This export could occur on multiple flavors of Unix.

What we would need to do is extract the UV data and perform some data 
translations before importing the data into the SQL table.

I know at one point DataStage was a powerful but expensive tool that would 
accomplish this task.

All suggestions are greatly appreciated!
Tom Whitmore
RATEX Business 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


Re: [U2] Date conversion..

2013-03-22 Thread Mecki Foerthmann
I use OCONV(DATE(),'D') and that works just fine because it displays 
today as 22 Mar 2013.


On 22/03/2013 11:19, Martin Phillips wrote:

Hi,

Try
OCONV(DATE(),'DDMY[,A,Z4]')


M


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


Re: [U2] Social Networks for MV

2013-03-16 Thread Mecki Foerthmann
Facebook is pure evil (even George Orwell couldn't imagine something so 
sinister when he wrote 1984) and Twitter is nothing but a waste of time.


On 16/03/2013 01:49, Charlie Noah wrote:
I don't want to offend my friend Tony, but I have to agree with Bob. I 
don't trust anything I see on Facebook, and I won't even look at 
Twitter. The only reason I'm on Facebook at all is to keep in touch 
with family and friends, and to promote my store a little. I don't do 
as much of that as people think I should, but I simply don't have the 
time or inclination to become a Facebook junkie.


Sorry, Tony.

Charlie

Tiny Bear's Wild Bird Store
Home of Safety Net Shipping
http://www.TinyBearWildBirdStore.com
Toll Free: 1-855-TinyBear (855-846-9232)



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


[U2] I Descriptor no longer working in UniSQL after UD upgrade

2013-03-05 Thread Mecki Foerthmann

Hi

we upgraded from UD 5.2/Solaris to UD 7.2/RH about a month ago and so it 
looked fine so far.

Now I had a call that there are purchase orders missing on a Cognos report.
When I investigated I noticed that from the day of the upgrade I have 
rows in the table used for that report with missing dates.


The report is based on a SQL Server 2000 table that gets updated every 
night with Purchasing information from UD using DTS.
We want to track supplier performance so I take a snapshot of the 
outstanding Purchase order deliveries every night and add them to this 
table.

Each row also contains the date the snapshot was done.
Some order line have multiple deliveries so I created a I-type 
dictionary item using REUSE(@DATE).
This is mapped in the schema and was working just fine under 5.2 but now 
there is only a date for the first multivalue.


I created a new subtable using the 7.2 VSG and the result is the same.
The dictionary works just fine from ECL but in SQL only the first row 
has a date and all others are null.


Any idea why this doesn't work anymore under UD 7.2?

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


Re: [U2] *** GMX Spamverdacht *** Re: I Descriptor no longer working in UniSQL after UD upgrade

2013-03-05 Thread Mecki Foerthmann

I don't know about compiling I-descriptors in UD.
Never done it and never needed to.
The dict is marked as MV and has an association as well.
It works just fine from ECL so when I type LIST PODET WITH PO_NBR = 
98587  SCHED_DEL_DATE U_RPT_DATE I get 2 dates in both columns as 
expected.
But when I go to sql and try SELECT SCHED_DEL_DATE,U_RPT_DATE from 
PODET_SCHED_DETAIL1 where PO_NBR = '98587' I get 2 scheduled dates but 
only one report date (current date) in the first row while in the second 
row it is null.
I found a work-around by using an Active-X control in my DTS package, 
but I shouldn't have to do that.
I also noticed that I-descriptors calling a Basic subroutine don't work 
any more through ODBC or OLE-DB even though they work in UniSQL.

Maybe in 7.2 I have to convert them into V-types?
I prefer I-types since I just don't seem to be able to get to grips with 
the V-type syntax.




On 05/03/2013 13:52, David A. Green wrote:

Have your compiled your i-descriptor?  Is it marked as MV?

David A. Green
(480) 813-1725
DAG Consulting

-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Mecki Foerthmann
Sent: Tuesday, March 05, 2013 5:42 AM
To: U2 Users List
Subject: [U2] I Descriptor no longer working in UniSQL after UD upgrade

Hi

we upgraded from UD 5.2/Solaris to UD 7.2/RH about a month ago and so it
looked fine so far.
Now I had a call that there are purchase orders missing on a Cognos report.
When I investigated I noticed that from the day of the upgrade I have rows
in the table used for that report with missing dates.

The report is based on a SQL Server 2000 table that gets updated every night
with Purchasing information from UD using DTS.
We want to track supplier performance so I take a snapshot of the
outstanding Purchase order deliveries every night and add them to this
table.
Each row also contains the date the snapshot was done.
Some order line have multiple deliveries so I created a I-type dictionary
item using REUSE(@DATE).
This is mapped in the schema and was working just fine under 5.2 but now
there is only a date for the first multivalue.

I created a new subtable using the 7.2 VSG and the result is the same.
The dictionary works just fine from ECL but in SQL only the first row has a
date and all others are null.

Any idea why this doesn't work anymore under UD 7.2?

___
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] : Evaluating DCOUNT

2013-02-12 Thread Mecki Foerthmann
The speed increase is more likely due to the use of REMOVE not the RAISE 
since REMOVE works also on values or sub-values and I don't think it 
makes much difference which delimiter you use.


On ADDS Mentor we used to Basic select arrays to variables and then 
READNEXT FROM in a loop since REMOVE was not available on that platform. 
And that was very quick on large arrays too because SELECT TO with 
READNEXT works in a similar way.

This method really only works on arrays with attribute marks, though.

On 12/02/2013 18:42, Tom Whitmore wrote:

Hi,
When you have more than about 1,000 values in a field, changing the value mark to a 
field mark, is significant.  I had a program that needed to work through two fields 
with over 20,000 values.  Initially, I left the strings as value delimited, used a 
for/next loop and assigned the results to a new field delimited string 
using-1.  The program took about 15 minutes to perform the tasks needed.  I 
then raised each string, used remove and concatenated @FM:item.  It was done almost 
immediately, there was no perception of a delay getting to TCL.  To put it in code 
snippet, the first took 15 minutes and the second took maybe a second.

X=20K values
Y=20K values
Z=''
MAX=DCOUNT(X,@VM)
FOR C=1 TO MAX
I1=X1,C
I2=Y1,C
ZC=I1*I2
NEXT C


X=RAISE(20Kvalues)
Y=RASE(20Kvalues)
Z=''
LOOP
REMOVE I1 FROM X  SETTING XPOS
REMOVE I2 FROM Y SETING YPOS
UNTIL I1='' AND I2='' AND XPOS=0 AND YPOS=0
   IF (Z)
   THEN Z:=@AM:I1*I2
   ELSE Z=I1*I2
REPEAT

There are several things:
1) REMOVE is faster than extract, especially when you are working with values
2) Strings are treated different from dynamic arrays even though in theory you 
are doing the same thing (appending to the end of the string).
3) COUNT will scan the string, then the extract will scan the string when it is 
value delimited.  Field marks are indexes so the first scan resolves the 
location where each field begins.

Tom
RATEX Business Solutions

-Original Message-
From: u2-users-boun...@listserver.u2ug.org 
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Dave Laansma
Sent: Tuesday, February 12, 2013 1:21 PM
To: 'U2 Users List'
Subject: Re: [U2] : Evaluating DCOUNT

Hey Allen,

The REMOVE so fastHow fast is it?! Match Game throwback  that I suspect the 
time it takes to interpret the difference between a VM and AM is negligible. I could be wrong.

And as far as using dimensioned arrays, agreed. They do seem to improve speed ... but 
still not in comparison to the REMOVEvirtual bow to the REMOVE god.

Sincerely,
David Laansma
Hubbard Supply Co.
Direct: 810-342-7143
Office: 810-234-8681
Fax: 810-234-6142
www.hubbardsupply.com
Delivering Products, Services and Innovative Solutions

-Original Message-
From: u2-users-boun...@listserver.u2ug.org 
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Allen Egerton
Sent: Monday, February 11, 2013 9:02 AM
To: U2 Users List
Subject: Re: [U2] : Evaluating DCOUNT

David,

You're correct that the remove is faster, and it is because it maintains an 
internal pointer to the next item, as opposed to positioning to it for each 
reference.

And I'm pretty sure that you can make it run even faster with:
LINE.KEYS = RAISE(HEADER.REC200)

As a matter of preference, I would set D1 to 999 or some other numeric value rather than 
a null, only because Universe/Unidata is typeless, and I would be afraid that the null, 
(), might be treated as a zero; but that's just personal fear and preference 
not based on a horror story.


On 2/11/2013 8:30 AM, Dave Laansma wrote:

I would HOPE that it evaluates it each time since the size ofarray  could 
change within the loop.

Personally if the size ofarray  is relatively small, DCOUNT is alright. However 
I've found REMOVE to be EXTREMELY faster and therefore use it whenever possible, even on 
smallarrays.

For example, we have two files, a 'header' and 'detail' file. The keys to the 
'detail' file are stored in attribute200  of the header file. So I'll pull 
the keys out of the header record, such:

LINE.KEYS = HEADER.REC200
D1 = 
LOOP UNTIL D1 = 0
   REMOVE LINE.KEY FROM LINE.KEYS SETTING D1
   loop statements
REPEAT

As opposed to:

FOR V1 = 1 TO DCOUNT(HEADER.REC200,@VM)
   LINE.KEY = HEADER.REC200,V1
   loop statements
NEXT V1

Based on historical dialogs on this subject on this forum, I have seen an 
improvement in overall performance.

Sincerely,
David Laansma
Hubbard Supply Co.
Direct: 810-342-7143
Office: 810-234-8681
Fax: 810-234-6142
www.hubbardsupply.com
Delivering Products, Services and Innovative Solutions

-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Jeffrey
Butera
Sent: Monday, February 11, 2013 7:55 AM
To: u2-users@listserver.u2ug.org
Subject: Re: [U2] : Evaluating DCOUNT

On 02/11/2013 12:14 AM, Peter Cheney wrote:

Hi Everyone,

Does a DCOUNT get evaluated again for each iteration of a loop?

Re: [U2] Record locks (Unidata 7.2)

2013-02-11 Thread Mecki Foerthmann

The lock isn't released since another user set it.

On 10/02/2013 22:35, Peter Cheney wrote:

In the example below what happens to the lock?
Does it release if the write is not executed?
If not shouldn't you have a RELEASE statement at the end after the last END?


-Original Message-
From: u2-users-boun...@listserver.u2ug.org 
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Jon Wells
Sent: Saturday, 9 February 2013 3:57
To: U2 Users List
Subject: Re: [U2] Record locks (Unidata 7.2)

I should add that (in our test account) I switched to the READU statement along 
with a LOCKED clause -

   READU STU.REC FROM STU.FILE, STU.ID LOCKED
 CRT STU.ID: RECORD IS LOCKED
   END THEN
 STU.REC48  = INST.CRED
 STU.REC49  = INET.CRED
 WRITE STU.REC ON STU.FILE, STU.ID
   END

  I locked one of the records in the list I was processing.  When the program 
was working on that record, the CRT statement was executed, and the program 
moved right along processing the rest of the list; and record I had locked was 
not updated.

Looking through the 'UniBasic Commands Reference' PDF, I found 'RECORDLOCKED 
(file.var, rec.id.expr)'.  Perhaps this could be used within a LOOP to control 
things, allowing terminal input where the user can choose what to do about the 
record lock?

I've decided to write the data to a new file, so this is no longer a big issue for me.  If I had created the program using our vendor's tool kit, the generated code would have added all the appropriate gunk the system uses for record locks.  The responses have been interesting as I've been looking for a chance to better understand how Unidata shops handle locks. 


Thank you,
Jon Wells





  From: Tony Gravagno3xk547...@sneakemail.com
To: u2-users@listserver.u2ug.org
Sent: Friday, February 8, 2013 2:30 AM
Subject: Re: [U2] Record locks (Unidata 7.2)

I think people understand exactly what you're saying, but disagree.
Most applications don't use the more rigorous coding for having a Locked clause that 
provides additional information to the user, retries, etc. That's not wrong, 
it's just not necessary ...
depending on the site.

That said, when we used to have a lot of people in an office and a dumb 
terminal beeping was a recognized message to everyone, it was OK
(generally) to just do the READU. These days with more alternative UIs, 
thick-client, thin-client, web services, mobile, etc, there's no one to hear 
that beep. So for modern development I would agree that you really don't want 
an unconditional lock hanging around, you want a Locked clause with logic to 
rollback the transaction and exit gracefully, perhaps with a message sent to 
the site admin.

The penalty for Not having a Locked clause with a new UI is that the port will 
hang, the UI will receive a timeout (which many clients aren't prepared to 
process), and the DBMS port could be sitting there indefinitely with no one 
aware of the condition. This can cascade to multiple ports until suddenly 
everything grinds to a halt and GUI users around the world are unable to access 
the app. I believe some heads will be nodding here because I hear about this 
happening occasionally.

T


From: Wjhonson
Then you're misunderstanding what I'm saying.



From: Kevin King
+1. Well stated.

Woodward, Bob wrote:

In an active user session where users are obtaining a lock for a
length of time, you're right.  There are lots of times, though,

that

lock intervention is not a benefit.  It all depends on the need of

the

application and many situations where I would highly recommend
using the default locking system of READU.
From: Wjhonson
I wouldn't however *recommend* this approach to locking as the

user

can never tell if their terminal is waiting on a lock, or just

hung

in some other odd manner, or perhaps processing a batch of

something.

So it's rather a nasty trick to play on the user, to just use

READU

without a LOCKED clause


___
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

  
---
Note:
This email (inc all attachments) is for the use of the intended recipient(s) 
only.
Privileged or confidential information may be contained in this communication. 
If you have received this email in error, please notify the sender immediately 
and then delete all copies of this message from your computer network. If you 
are not the intended recipient, you must not keep, use, disclose, copy or 
distribute this email without the author's prior permission. If you are the 
intended recipient and you do not wish to receive similar electronic messages 
from us in future, then please respond to the sender to this effect.

Re: [U2] Record locks (Unidata 7.2)

2013-02-08 Thread Mecki Foerthmann

Oh no, you don't have to add a label and you don't have to use GOTO.

TRY_AGAIN = 1
LOOP WHILE TRY_AGAIN
  READU STU.REC FROM STU.FILE, STU.ID LOCKED
CRT STU.ID: RECORD IS LOCKED
SLEEP 2
  END THEN
STU.REC48  = INST.CRED
STU.REC49  = INET.CRED
WRITE STU.REC ON STU.FILE, STU.ID
TRY_AGAIN = 0
  END
REPEAT



On 08/02/2013 18:10, Woodward, Bob wrote:

You should have written it something like this:

TRY.AGAIN:
   READU STU.REC FROM STU.FILE, STU.ID LOCKED
 CRT STU.ID: RECORD IS LOCKED
 SLEEP 2
 GOTO TRY.AGAIN
   END THEN
 STU.REC48  = INST.CRED
 STU.REC49  = INET.CRED
 WRITE STU.REC ON STU.FILE, STU.ID
   END

You have to add the label TRY.AGAIN: so you have a jump point then add the 
SLEEP command for 2 seconds and lastly the GOTO command so after the SLEEP 
expires, execution remains at the READU command.

BobW




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


Re: [U2] Record locks (Unidata 7.2)

2013-02-08 Thread Mecki Foerthmann

On second thought this won't do either since it hasn't got an ELSE clause.

ERR = ''
LOOP
  TRY_AGAIN = 0
  READU STU.REC FROM STU.FILE, STU.ID LOCKED
CRT STU.ID: RECORD IS LOCKED - (Q)uit or Enter
INPUT REPLY:
IF REPLY # 'Q' THEN TRY_AGAIN = 1 ELSE ABORT
  END ELSE STU.REC = ''
UNTIL NOT(TRY_AGAIN) REPEAT
STU.REC48  = INST.CRED
STU.REC49  = INET.CRED
WRITE STU.REC ON STU.FILE, STU.ID





On 08/02/2013 20:12, Mecki Foerthmann wrote:

Oh no, you don't have to add a label and you don't have to use GOTO.

TRY_AGAIN = 1
LOOP WHILE TRY_AGAIN
  READU STU.REC FROM STU.FILE, STU.ID LOCKED
CRT STU.ID: RECORD IS LOCKED
SLEEP 2
  END THEN
STU.REC48  = INST.CRED
STU.REC49  = INET.CRED
WRITE STU.REC ON STU.FILE, STU.ID
TRY_AGAIN = 0
  END
REPEAT



On 08/02/2013 18:10, Woodward, Bob wrote:

You should have written it something like this:

TRY.AGAIN:
   READU STU.REC FROM STU.FILE, STU.ID LOCKED
 CRT STU.ID: RECORD IS LOCKED
 SLEEP 2
 GOTO TRY.AGAIN
   END THEN
 STU.REC48  = INST.CRED
 STU.REC49  = INET.CRED
 WRITE STU.REC ON STU.FILE, STU.ID
   END

You have to add the label TRY.AGAIN: so you have a jump point then 
add the SLEEP command for 2 seconds and lastly the GOTO command so 
after the SLEEP expires, execution remains at the READU command.


BobW




___
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] Record locks (Unidata 7.2)

2013-02-07 Thread Mecki Foerthmann

The READU statement has a LOCKED clause that is true if a record is locked.
You can put all your locking ha logic in there.
READU record FROM filevariable,itemID THEN
   code if record exists and isn't locked (optional)
LOCKED
   code to handle locked record condition (optional)
END ELSE
   code if record doesn't exist (required)
END

Now if you put that into a loop you can display a message and give the 
user the option to try again or abort.
And if you put the code into a subroutine you can use that in all your 
programs with a single line like this.

CALL SR.READU(record,filevariable,ItemID,Option,Err)

On 06/02/2013 21:52, Jon Wells wrote:

Hi all,

I have not looked at the world of record locks since my R83 Pick days.  I'm 
hoping to add the ability for the program I'm working on to:

* Check if a record is locked
* Wait until the lock is removed
* Once the lock is removed, or if the record is not locked:
* Lock the record
* Perform the WRITE statement
I'm hoping someone can share an example of how to accomplish this in UniBasic. 



Thank you,


Jon Wells
Campbell University
___
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] Another job ad written by people who have no clue

2012-11-02 Thread Mecki Foerthmann

Come on Charlie, texting is cool and it is easy.
If I want to talk to my son in France for instance, I send him a text to 
switch on his PC so we can use Skype to actually talk and vice versa.
The workshop sending me a text that my bike is ready to be collected - 
now how cool is that?

You're an American and you guys had letters on your phone keys for ages.
OK if you would have to remember that B is hitting 2 twice and S is 
hitting 7 four times I could see your point, but it's really not that 
difficult when the letters are actually displayed on the keys and you 
soon get the hang of it.
I bought a phone with especially big keys so I can see the letters 
because my eyes are not what they used to be. ;-)
And no, it's not one of those so called smart phones - it cost me just 
15£ including bluetooth and camera - and no contract.


On 02/11/2012 12:07, Charlie Noah wrote:
I'm with you, Bill. My phone makes and receives calls - period. I 
think you might be able to text on it (remember having to press 3 
numbers to get 1 letter?) - but I don't use it. The best part - it 
costs me $99/year! And no, I don't talk on it while driving.


Charlie

Tiny Bear's Wild Bird Store
Home of Safety Net Shipping
http://www.TinyBearWildBirdStore.com
Toll Free: 1-855-TinyBear (855-846-9232)



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


Re: [U2] SB+ question

2012-10-23 Thread Mecki Foerthmann
I always leave one input field usually containing the line number set as 
controlling the other fields but don't allow changes to the field.
You obviously need an input field for the cursor so you can use page up 
or down.


On 23/10/2012 00:46, Lunt, Bruce wrote:

Hi All,

I have a question that relates to how to display multiple pages of data
on an entry screen that does not allow the lines in question to be
modified. What we have is a screen that displays the current status of a
customer. There are 6 different multivalued fields that are all related
but they are just being displayed. There are 2 fields above the
line-item section that do allow modification but the request is for me
to allow the user to page up or down to review all of the line-items. On
inquiry screens this is fairly simple but I don't know how to drive the
pagination when the 6 fields are never even accessed by the screen. I
tried to bump the @CNT field but that didn't work. Can someone suggests
how I should handle this?

All suggestions are greatly appreciated.

Thanks in advance,
Bruce Lunt
___
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] Etymology of Q-Pointer

2012-09-07 Thread Mecki Foerthmann

I guess it always depends on where you come from and what you know.
I would say the account philosophy is much cleaner than having duplicate 
file pointers.

And of course we have accounts in U2 too - it is the working directory.
I have to admit I always hated to work on PI sites - it was not only 
painfully slow the different syntax was a real pain in the backside too.




On 07/09/2012 16:54, Wols Lists wrote:

On 07/09/12 03:19, Charles Stevenson wrote:

A newbie stumped me:   Why are Q-Pointers  Q pointers ?

The Q lingo comes from the dawning days of Pick.
Why was the letter Q chosen?

 Attribute makes sense.
 Synonym makes sense.
 PQ  for Prestored Query makes sense.  PR for Proc would have been
better.

D3 User Guide just says,
 Q-pointers are used in account master dictionaries to point to
other files.
UV User Ref says,
 Q-pointers are file definition synonyms that point to files in
local and remote UniVerse accounts.
Jonathon Sisk's Pick Pocket Guide doesn't help, either.
PI never had Q-pointers.  Clif, did Devcom consider it Questionable?

Seeing as INFORMATION never had any use for q-pointers, I guess that's
why it never had them. Bear in mind, all PI FILEs were referenced by a
file pointer in the VOC where f2 was the data portion os-level filename
and f3 was the dict portion, why would it need a q-pointer?

And I've just remembered another reason - PI doesn't have an MD of any
sort. Given that f2 of a q-pointer is an account, how would PI find the
FILE? PI doesn't have the concept of account in the same way as Pick -
an account was an os-level directory and there was no master list.

So I guess q-pointers didn't exist because (a) they weren't needed and
(b) they would have needed a MAJOR changed in behaviour to implement
them (it could have been done easy enough, but it didn't fit the
philosophy, and I've always admired PI because of the very clean
philosophy).

Cheers,
Wol
___
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] Etymology of Q-Pointer

2012-09-07 Thread Mecki Foerthmann

I have no Idea what you are talking about.
What is wrong with LOCATE A IN B SETTING C ?

On 07/09/2012 20:44, Wols Lists wrote:

On 07/09/12 18:28, Mecki Foerthmann wrote:

I guess it always depends on where you come from and what you know.
I would say the account philosophy is much cleaner than having duplicate
file pointers.
And of course we have accounts in U2 too - it is the working directory.
I have to admit I always hated to work on PI sites - it was not only
painfully slow the different syntax was a real pain in the backside too.

As you say, it's what you know. When we moved from PI to UV, we kept
completely in Prime syntax. When I moved to another site that had come
from the Pick side, the syntax just seemed strange and illogical ...
come on, mixing commas and semicolons as argument separators to the
locate function! (I think I've got the right function...)

Mind you, there were a couple of PI funnies I always cursed - TRANS was
illogical in its handling of raise and lower. I'm sure there was
another one, I can't remember it now.

And iirc PI handled complex compound i-descriptors correctly, unlike UV
which expands them like a C macro with unexpected effects ... Still PI
should get it right, seeing as it invented them!

Cheers,
Wol
___
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] Scrub Hangs Up

2012-08-29 Thread Mecki Foerthmann

I would expect this not to work.
D_INVOICE is a dictionary file so it hasn't got a dictionary.
If you try copy FROM DICT INVOICE TO DICT INVOICE_TEST it should 
probably work.



On 28/08/2012 23:39, Bill Brutzman wrote:

More help is needed...

1.copy FROM DICT D_INVOICE TO DICT D_INVOICE_TEST
Unable to open DICT D_INVOICE file.

2. When I try copying via Rocket's BDT (Basic Developer ToolKit)... Failed to 
copy... unable to open q-pointer.

--Bill


___
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] Variable Interpolation

2012-08-24 Thread Mecki Foerthmann
Sorry but I always thought iterpolation means describing a mathematical 
function like  Y=2X for instance  by producing a graph from it or 
describing key parameters in a system of coordinates (x,y) like where it 
crosses the y- or x-axis, if it rises or falls and in which degree etc. .




On 24/08/2012 04:56, Tony Gravagno wrote:

From: jjuser
Does UniBasic have a way to do variable interpolation (without

writing to

a file, compiling it as a program, and calling it)?


Do you mean something like this?

VAL = 0
CALL @SUB FOO(X,Y);Y=X+1;RETURN( 3, VAL )
CRT VAL ; *  4

That would be Awesome! I don't believe any of the MV platforms do that
because I've been looking for it for 15 years. It can be simulated in
various ways, but you did limit the scope of the challenge.

I think you're trying to avoid this?:

CODE = \ CRT DATE()+20\
EXECUTE PGEN :CODE CAPTURING OUT
* OUT is 16327
In this case the PGEN program reads from TCL, writes, compiles, runs,
and that output gets captured. But at least the mechanism for
performing that task is abstracted from this client/application code.

Cache' allows you to enter code at TCL and then execute it without
saving/compiling. That can also be simulated in U2. I don't think I've
ever seen anyone else ask for it here - certainly no one willing to
pay for it. ;)

Out of curiosity, what's your application for this? And please correct
the above if I've misunderstood the question.

T

___
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] CSV to Array

2012-08-16 Thread Mecki Foerthmann
The moment you start working in the engineering or manufacturing 
industry where it is not uncommon to have double quotes embedded in a 
field (i.e 5 1/4 Steel Bar) your code will bite you.




On 15/08/2012 23:24, David Wolverton wrote:

I've done this in the past by doing this:

SWAP DQUOTE WITH @AM

Now, in theory, every EVEN attribute is a 'quoted' string - don't touch the
commas
Every ODD attribute is a 'non-quoted' string...

Double check me here in case I've lost it... but this should work ... seems
this would be faster as well on larger records.  Only thing you'd have to
test for -- if the first character is a doublequote, we will have a blank
first attribute and should not -- but that could be tested in the END ELSE
section (IF XXX = 1 THEN IF DATASTRING[1,1] = 1 THEN CONTINUE)

DATASTRING = 'A,B,C,D,E,F,G,H,I,J,K,L
NEWSTRING = 
SWAP '' WITH @AM IN DATASTRING
AMCNT = DCOUNT(DATASTRING,@AM)
FOR XXX  =  1 TO AMCNT
   IF MOD(AMCNT,2) = 0 THEN
 NEWSTRING  := @AM: DATASTRINGXXX
   END ELSE
 DATAROW = NEWSTRINGXXX
 SWAP ',' WITH @AM IN DATAROW
 NEWSTRING := @AM:DATAROW
 NEWSTRING-1  = DATAROW
   END
NEXT XXX


-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Wjhonson
Sent: Wednesday, August 15, 2012 4:11 PM
To: u2-users@listserver.u2ug.org
Subject: [U2] CSV to Array


Rex Gozar uploaded this code, and someone (perhaps him) corrected it, but
there's a redundancy here.  I'm trying to fix it, in my own version, mostly
perhaps I *hate* the CONTINUE, but the logic is a bit convoluted eh?  Anyone
spot the redundancy ?

   EQU COMMA TO ','
   EQU DQ TO ''
   BUFFER = TEXT
   BUFPTR = 0
   CPTR = 0
   QUOTESW = @FALSE
   LOOP
  CPTR += 1
  C = BUFFER[CPTR,1]
   WHILE (C NE ) DO
  IF (DQ EQ C) THEN
 IF (QUOTESW) AND (DQ:DQ EQ BUFFER[CPTR,2]) THEN
CPTR += 1
 END ELSE
QUOTESW = NOT(QUOTESW)
CONTINUE
 END
  END
  IF (COMMA EQ C) AND NOT(QUOTESW) THEN
 C = @FM
  END
  BUFPTR += 1
  BUFFER[BUFPTR,1] = C
   REPEAT
   RECORD = BUFFER[1,BUFPTR]
   RETURN
END

___
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] *** GMX Spamverdacht *** UniVerse LIST statement question [not-secure]

2012-07-02 Thread Mecki Foerthmann
Since we don't have outer joins I would build a work file starting with 
selecting all employees, then select the calls and merge them together 
in a loop. How you do it depends on how you want to present the data.
If you're happy with showing the calls as multi values you can build the 
records that way and if you like one row per call you should probably 
have one row per call.

Then report on the work file.
That is the easiest way I can see to include employees who didn't make 
any calls.
I can also think of a few approaches involving stored parameters and 
dictionaries or a dictionary in the employee file that builds the call 
info in a subroutine as multivalues using an index by employee on the 
calls file.
In any case you will most likely need to base your report on the 
employees file not the calls.



On 02/07/2012 14:53, Hennessey, Mark F. wrote:

I need to do a UniVerse LIST statement that would only populate a column if the 
contents met certain criteria.

For example, suppose we have a file with details of telephone usage and that 3 associated 
mulitvalued fields contain date call was made, duration and if the call was a toll call. 
Is it possible to limit the output of the date call made and associated 
columns to a date range without that being a select criteria? If I were to do something 
like:

LIST CALLS EMP.NAME EMP.LOCATION WITH DATE.CALL GE 2012-06-01 AND WITH DATE.CALL LE 
2012-06-30  DURATION TOLL WITH @ID EQ '123456'

I would get zero record if employee 123456 did not make any calls in June. What 
I would like to see is the employer name and location returned with the date, 
duration and toll columns empty. I'm trying to do this in a LIST statement as 
it will be run by U2 Web Services (and for the time being a subroutine is off 
the table...)

Any advice, or an authoritative NO, It can not be done would be greatly 
appreciated.

Mark Hennessey
State of Connecticut
Department of Social Services
Information Technology Services
Child Support Systems
Voice: 860-424-5261
Fax: 860-424-4813



CONFIDENTIAL INFORMATION: The information contained in this e-mail may be 
confidential and protected from general disclosure. If the recipient or reader 
of this e-mail is not the intended recipient or a person responsible to receive 
this e-mail for the intended recipient, please do not disseminate, distribute 
or copy it. If you received this e-mail in error, please notify the sender by 
replying to this message and delete this e-mail immediately. We will take 
immediate and appropriate action to see to it that this mistake is 
corrected.[*LD*]
___
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] Reasons to continue with Software vendor support

2012-06-29 Thread Mecki Foerthmann

I can understand your concern and also the reasoning of your boss.
Since you are dealing with Epicor cancelling the maintenance for ManFact 
will most likely mean that they will cancel your U2 support too.


The company I work for went through the same drama.
'You cancel the support contract for Avante and you can't have support 
for UniData anymore', is what Epicor said.
Since Avante had been heavily modified (mainly by Epicor themselves) 
every call was charged unless we could prove that it was a genuine bug. 
By the time I found the bug and could prove that this was in the 
original code too I could as easily just fix it myself.
What good is paying for support only to get charged nearly every time 
you have a problem?

So management decided to cancel the contract.

But they went to another VAR to have at least Unidata and SB+ under 
support and a resource of experienced programmers that can help out if 
the IT department can't solve a problem with Avante.
Management is happy because they save a substantial amount of money and 
I don't care because I didn't get any help from Epicor anyway and the 
guys working for our new VAR are much better.
So if you ask me - go for it - find another Rocket VAR so your database 
is still supported and give Epicor the boot.




On 29/06/2012 16:46, John Varney wrote:

I have a potential issue coming up. Our CFO seems to want to be more penny
pinching than normal and is trying to get us to discontinue our support from
our main vendor (We currently use ManFact from EpiCor). This seems like a
REALLY bad idea, but it keeps coming up. Can I get some outside opinions on
why we should keep the support going? I'd like as many as possible because
I'd like to put an end to this once and for all. All comments would be
welcome.


___
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] Really trying to understand dynamic file sizing

2012-06-29 Thread Mecki Foerthmann
So if I understand this correctly - a dynamic file will only split when 
it goes into level 2 overflow?
If that is so than wouldn't decreasing the block size as I suggested 
earlier make the file split much earlier than using a larger block size?
Why then don't you just double the modulo, find the next prime and use a 
2K instead of a 4K Block size?
If you have a development sytem with enough disk space just give it a 
try and find out if this increases performance or not and let us know 
how it went.



On 29/06/2012 16:58, Dave Laansma wrote:

Doesn't 1% split load seem a little low?

Sincerely,
David Laansma
IT Manager
Hubbard Supply Co.
Direct: 810-342-7143
Office: 810-234-8681
Fax: 810-234-6142
www.hubbardsupply.com
Delivering Products, Services and Innovative Solutions

-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Doug Averch
Sent: Thursday, June 28, 2012 8:56 PM
To: U2 Users List
Subject: Re: [U2] Really trying to understand dynamic file sizing

On Thu, Jun 28, 2012 at 6:50 PM, Doug Averchdave...@gmail.com  wrote:



126/4064   (Correction, too late to be working on this)


 1  (Correction average Load before split)

And that matches your numbers

Regards,
Doug
www.u2logic.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



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


Re: [U2] Reasons to continue with Software vendor support

2012-06-29 Thread Mecki Foerthmann

Well, we now have 'real' U2 and SB+ licenses.
I don't know how it was done, but I guess 'by the book' Rocket can also 
sell new tranferable licences for whatever price they want to whoever 
they want.

None of Epicors beeswax, really!
Better than loosing a paying customer at least in my book. ;-)

That is the difference between Rocket and corporations like Microsoft, 
IBM, Oracle, Epicor and so on.

Rocket U2 seem to care for their customers 



On 29/06/2012 18:46, Marc Harbeson wrote:

just note, by the book, your u2 licenses which are sold as embedded product
are nontransferable - by the book.

that's not to say you can't outright go buy new u2 licenses - but again,
(depending on Epicor's VAR agreement with Rocket, IBM, et all) you may not
have transferable u2 licenses.

m

On Fri, Jun 29, 2012 at 12:24 PM, Mecki Foerthmannmec...@gmx.net  wrote:


I can understand your concern and also the reasoning of your boss.
Since you are dealing with Epicor cancelling the maintenance for ManFact
will most likely mean that they will cancel your U2 support too.

The company I work for went through the same drama.
'You cancel the support contract for Avante and you can't have support for
UniData anymore', is what Epicor said.
Since Avante had been heavily modified (mainly by Epicor themselves) every
call was charged unless we could prove that it was a genuine bug. By the
time I found the bug and could prove that this was in the original code too
I could as easily just fix it myself.
What good is paying for support only to get charged nearly every time you
have a problem?
So management decided to cancel the contract.

But they went to another VAR to have at least Unidata and SB+ under
support and a resource of experienced programmers that can help out if the
IT department can't solve a problem with Avante.
Management is happy because they save a substantial amount of money and I
don't care because I didn't get any help from Epicor anyway and the guys
working for our new VAR are much better.
So if you ask me - go for it - find another Rocket VAR so your database is
still supported and give Epicor the boot.





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


Re: [U2] Can of worms FILE.STATUS

2012-06-21 Thread Mecki Foerthmann
Well, the average record size is about 640 Bytes and according to the 
Standard deviation of 283 over 95% of records should be smaller than 2K 
so I would use a 2K Blocksize not 4.


Since it's a dynamic file the modulo probably doesn't matter that much - 
but then I am fairly new to dynamic files so I guess 740972 is OK.




On 20/06/2012 18:21, Dave Laansma wrote:

Mecki,

What block size and why?

Sincerely,
David Laansma
IT Manager
Hubbard Supply Co.
Direct: 810-342-7143
Office: 810-234-8681
Fax: 810-234-6142
www.hubbardsupply.com
Delivering Products, Services and Innovative Solutions

-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Mecki
Foerthmann
Sent: Wednesday, June 20, 2012 12:45 PM
To: u2-users@listserver.u2ug.org
Subject: Re: [U2] Can of worms FILE.STATUS

Nothing really -  less than 10% overflow is not too bad.
I would have chosen a smaller block size though.

On 20/06/2012 17:20, Dave Laansma wrote:

I have my thoughts already in place but I'd like to hear input on

this.

What is wrong with this file?



File name(Dynamic File)   = OHL

Number of groups in file (modulo) = 740972

Dynamic hashing, hash type= 0

Split/Merge type  = KEYONLY

Block size= 4096

File has 455028 groups in level one overflow.

Number of records = 4835502

Total number of bytes = 3100999567



Average number of records per group   = 6.5

Standard deviation from average   = 2.4

Average number of bytes per group = 4185.0

Standard deviation from average   = 1856.2



Average number of bytes in a record   = 641.3

Average number of bytes in record ID  = 14.8

Standard deviation from average   = 283.6

Minimum number of bytes in a record   = 133

Maximum number of bytes in a record   = 8622



Minimum number of fields in a record  = 110

Maximum number of fields in a record  = 334

Average number of fields per record   = 218.3

Standard deviation from average   = 47.9

File has 2 over files, 3 prime files



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

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



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


Re: [U2] Regarding: Unidata dictionaries

2012-06-20 Thread Mecki Foerthmann

UniData Dictionaries
Every UniData data file has a corresponding dictionary file. A 
dictionary contains a set of records that define the structure of the 
records in the data file, called D-type records. A dictionary may also 
contain phrases, called PH-type records, and items that calculate or 
manipulate data, called virtual fields, or V-type records. A user may 
also define a dictionary item to store user-defined data, called X-type 
records.


On 20/06/2012 17:18, satya satya wrote:

Hi,

Could you let,me know what is the difference between PH- type records,
D-type records,V-type records,X-type records

Thank you,
Satya
___
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] U2 accounting software question

2012-05-23 Thread Mecki Foerthmann

Or because that's what they know best...

On 23/05/2012 15:13, Bill Brutzman wrote:

To me, this is a question for the accounting department there.

Corporate accountants that I know favor Oracle financials... for their 
functionality, reporting, and ease of use.

--Bill
___
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] Case Statement with only two cases... or for that matter... one case

2012-04-21 Thread Mecki Foerthmann

Well,

I prefer:

IF A = TEST THEN
   GOSUB DO.SOMETHING   ;* Say why
END ELSE
   GOSUB DO.SOMETHING.ELSE  ;* The reason
END

IMO much more readable - because you see immediately that is is a 
conditional branching.
It is also easier maintainable if you want to add some more code later 
or you need more conditions and want to change branching into case.


And of course it will auto-indent correctly in my editor of choice ;-).

On 20/04/2012 23:05, Kate Stanton wrote:

Rather than:

BEGIN CASE
   CASE A = TEST; GOSUB DO.SOMETHING
   CASE 1; GOSUB DO.SOMETHING.ELSE
END CASE

or

IF A = TEST THEN GOSUB DO.SOMETHING ELSE GOSUB DO.SOMETHING.ELSE

I prefer:

IF A = TEST THEN GOSUB DO.SOMETHING ;* Say why
ELSE  GOSUB DO.SOMETHING.ELSE  ;* The reason

lining up the GOSUBs under each other, with comment making it clear why.

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


Re: [U2] Remove items from lsit in DICT

2012-04-06 Thread Mecki Foerthmann

That will not remove the Bs but only replace them with nulls.
You will have to remove the value marks as well.
Of course that will not work on single values and if the last value is a B.
My first thought was to use MODIFY command but I think that can also 
just replace an attribute or value with another value or null.


On 06/04/2012 07:03, Martin Braid wrote:

Or just EV the attribute and then C/B//G and FI twice. Assuming there
are no linked MV attributes that also need messing with. Martin

-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Daniel
McGrath
Sent: 06 April 2012 03:26
To: U2 Users List
Subject: Re: [U2] Remove items from lsit in DICT

G option for C might come in handy here (Global: repeats command until
there are no more matches)

^
C/B^253//G

Regards,
Dan


-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Wjhonson
Sent: Thursday, April 05, 2012 4:17 PM
To: u2-users@listserver.u2ug.org
Subject: Re: [U2] Remove items from lsit in DICT


^
up-arrow-mode
C/B^253//
C
C
C
C
C
C
C



-Original Message-
From: Holt, Jakejh...@samsill.com
To: u2-usersu2-users@listserver.u2ug.org
Sent: Thu, Apr 5, 2012 3:06 pm
Subject: [U2] Remove items from lsit in DICT


This is probably really simple, but I can't seem to find a way without
riting a sub.  Is there an easy way to simply remove items from a MV
ield in a dictionary?

For instance if I have a MV with A, A,A,B,B,B,B,C,C,C and wanted to just
emove the Bs.

Thanks,

Jake Holt  |  samsill  |  Information Technology Director
p) 817-536-1906 x 217 |  5740 Hartman Road Fort Worth TX 76119
jh...@samsill.commailto:jh...@samsill.com   |  www.samsill.com  |
ww.bindersforlife.com

___
2-Users mailing list
2-us...@listserver.u2ug.org
ttp://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


Click
https://www.mailcontrol.com/sr/wQw0zmjPoHdJTZGyOCrrhg==
D2VHiLeE8cjwJ+6UKgOADBjSxIHBYlYk1F8TccP!XTbKg==  to report this email as
spam.


Epicor Software (UK) is a limited company registered in England  Wales.
Registration Number: 2338274.   Registered Office:  6th Floor, One London Wall, 
London EC2Y 5EB
This e-mail is for the use of the intended recipient(s) only. If you have 
received this e-mail in error, please notify the sender immediately and then 
delete it. If you are not the intended recipient, you must not use, disclose or 
distribute this e-mail without the author's prior permission. We have taken 
precautions to minimize the risk of transmitting software viruses, but we 
advise you to carry out your own virus checks on any attachment to this 
message. We cannot accept liability for any loss or damage caused by software 
viruses. Any views and/or opinions expressed in this e-mail are of the author 
only and do not represent the views of Epicor Software (UK) Limited or any 
other company within its group.


This message has been scanned for malware by Websense. www.websense.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] Remove items from lsit in DICT

2012-04-06 Thread Mecki Foerthmann

You could try selecting BY-EXP dictname # B

On 05/04/2012 23:05, Holt, Jake wrote:

This is probably really simple, but I can't seem to find a way without
writing a sub.  Is there an easy way to simply remove items from a MV
field in a dictionary?



For instance if I have a MV with A, A,A,B,B,B,B,C,C,C and wanted to just
remove the Bs.



Thanks,



Jake Holt  |  samsill  |  Information Technology Director
(p) 817-536-1906 x 217 |  5740 Hartman Road Fort Worth TX 76119

jh...@samsill.commailto:jh...@samsill.com   |  www.samsill.com  |
www.bindersforlife.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] Remove items from lsit in DICT

2012-04-06 Thread Mecki Foerthmann

Jake

TRANS will return the raw data, so I'd write a little Basic subroutine, 
compile and catalog it globally and use SUBR( to call it in the dict.
You either loop trough the array and delete the unwanted values or you 
could use SWAP and end up with a 6 liner like this.


SUBROUTINE GETREP(RET.VALUE,ARRAY)
SWAPSTRING = 'B':@VM
SWAP SWAPSTRING WITH '' IN ARRAY
SWAP 'B' WITH '' IN ARRAY
RET.VALUE = ARRAY
RETURN

I haven't used SWAP with @VM so I won't guarantee that it'll work and 
you might have to use LOOP or FOR NEXT in your subroutine after all.

So in the end your line 2 in your DICT item would look something like this:
SUBR(GETREP,TRANS(FILE,F1,1,X))
Sometimes it's just the easiest way and in my experience quite fast too.

Mecki

On 06/04/2012 14:48, Holt, Jake wrote:

I need to do it from a dictionary item:
1: I
2: Trans(FILE,F1,1,X);remove the Bs from @1

Basically I am trying to remove our house rep account from the list of
rep numbers when I trans them to the sales order file.



-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Mecki
Foerthmann
Sent: Friday, April 06, 2012 4:05 AM
To: U2 Users List
Subject: Re: [U2] Remove items from lsit in DICT

You could try selecting BY-EXP dictname # B

On 05/04/2012 23:05, Holt, Jake wrote:

This is probably really simple, but I can't seem to find a way without
writing a sub.  Is there an easy way to simply remove items from a MV
field in a dictionary?



For instance if I have a MV with A, A,A,B,B,B,B,C,C,C and wanted to
just remove the Bs.



Thanks,



Jake Holt  |  samsill  |  Information Technology Director
(p) 817-536-1906 x 217 |  5740 Hartman Road Fort Worth TX 76119

jh...@samsill.commailto:jh...@samsill.com|  www.samsill.com  |
www.bindersforlife.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
___
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] Logging on to UD 7.2 on RH Linux using Active Directory andwinbind

2012-04-06 Thread Mecki Foerthmann

Thanks John,

we will check all those back at work on Tuesday.
This is a sample of the actual error message we see:

*/Illegal user id = (16777216).

Mecki
/*
On 06/04/2012 21:13, John Hester wrote:

One other potential issue just came to mind.  I think AD user names are
returned by winbind in the form domain\user by default.  If your
winbind is configured this way, it could be that udt doesn't like seeing
the backslash character in the user name.  This behaviour can be turned
off with the following setting in smb.conf:

winbind use default domain = yes

You can see how user names are currently being reported by winbind with
wbinfo -u.

-John

-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Mecki
Foerthmann
Sent: Thursday, April 05, 2012 9:08 AM
To: U2 Users List
Subject: [U2] Logging on to UD 7.2 on RH Linux using Active Directory
andwinbind

We are finally in the process of upgrading our old UD 5.2 system on
Solaris to 7.2 running on a virtual RH Linux server.
So far everything seems to work OK.
We can log into the database as the root user fine.
We can log into the database as a local linux user fine.
But we don't want to create local users on the linux box as it is
another set of user accounts / passwords to maintain.
To get round this we are using winbind to allow users to login to the
Linux server with their Windows Active Directory credentials.
This works well however when we come to run the udt command in the data
directory we get the following error Illegal User ID then the UID of
the Winbind user.
There is obviously some check that occurs when udt starts to see if the
user is a valid linux user, udt must not be able to query the
authentication mechanism and therefore will not allow the user to run
udt.
Is there a switch or another way to make this work?

Thanks

Mecki
___
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


[U2] Logging on to UD 7.2 on RH Linux using Active Directory and winbind

2012-04-05 Thread Mecki Foerthmann
We are finally in the process of upgrading our old UD 5.2 system on 
Solaris to 7.2 running on a virtual RH Linux server.

So far everything seems to work OK.
We can log into the database as the root user fine.
We can log into the database as a local linux user fine.
But we don't want to create local users on the linux box as it is 
another set of user accounts / passwords to maintain.
To get round this we are using winbind to allow users to login to the 
Linux server with their Windows Active Directory credentials.
This works well however when we come to run the udt command in the data 
directory we get the following error Illegal User ID then the UID of 
the Winbind user.
There is obviously some check that occurs when udt starts to see if the 
user is a valid linux user, udt must not be able to query the 
authentication mechanism and therefore will not allow the user to run udt.

Is there a switch or another way to make this work?

Thanks

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


Re: [U2] Record lock

2012-03-23 Thread Mecki Foerthmann
I don't know about Universe but UniAdmin displays the time the lock was 
set in UD.


On 23/03/2012 06:06, Namacha, N. (Nicholas) wrote:

Is it possible to know for how long a record has been locked in universe?

Kind Regards
Nicholas Namacha



Nedbank Limited Reg No 1951/09/06. The following link displays
the names of the Nedbank Board of Directors and Company Secretary.
[ http://www.nedbank.co.za/terms/DirectorsNedbank.htm ]
This email is confidential and is intended for the addressee only.
The following link will take you to Nedbank's legal notice.
[ http://www.nedbank.co.za/terms/EmailDisclaimer.htm ]


___
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] Turn a device and inode into file name

2012-03-17 Thread Mecki Foerthmann

You can also use UniAdmin.
That will show the file name as well.

On 17/03/2012 17:12, dia...@aptron.com wrote:

Thanks!!!

Quoting Charles Stevensonstevenson.c...@gmail.com:


Diane -

Here's a short LIST.READU envelope that replaces dev/inode with filenames.

Look up these UV-supplied tools that tie device  Inode to the filename:
 ACCOUNT.FILE.STATS
 LIST.FILE.STATS
 STAT.FILE
 UNIVERSE.STAT.FILE

It relies on regularly running ACCOUNT.FILE.STATS to keep STAT.FILE up
to date.
I added an index to UV's vanilla STAT.FILE and use it to extract the
filename.
See lines 3  30:

01:   PROGRAM SHOW.READU
02: * Abbreviated LIST.READU, but with filenames replacing device/inode.
03: * Relies on indexed I-desc DICT STAT.FILE INODE.DEV:
FILEINODE:.:FILEDEV
04:
05: $COPYRIGHT (c) 2012 Charles D. Stevenson. Permission to use with
attribution granted.
06: $OPTIONS DEFAULT
07:
08:   SENTENCE.OPTS = @SENTENCE[' ',2, 999 ]
09:   BEGIN CASE
10:  CASE NOT( LEN( SENTENCE.OPTS ))   ; * usual case
11: EXECUTE 'LIST.READU EVERY' CAPTURING LRDU
12: LOOP ; * ignore Group lock section
13: UNTIL REMOVE( LRDU, MORE) = Active Record Locks:
14: WHILE MORE
15: REPEAT
16: CRT Active Record Locks:
17:  CASE SENTENCE.OPTS = SIMPLE   ; * LIST.READU's default
18: EXECUTE 'LIST.READU' CAPTURING LRDU
19:  CASE @TRUE ; l * any valid LIST.READU syntax
20: EXECUTE 'LIST.READU ': SENTENCE.OPTS CAPTURING LRDU
21:   END CASE
22:   OPEN 'STAT.FILE' TO F.STAT ELSE STOP 201, 'STAT.FILE'
23:   MORE = @TRUE
24:   LOOP WHILE MORE
25:  LINE = REMOVE( LRDU, MORE )
26:  TRIMMED = TRIM( LINE )
27:  DEV = TRIMMED[ ' ', 1, 1 ]
28:  INODE = TRIMMED[ ' ', 2, 1 ]
29:  IF LEN( DEV ) ! LEN( INODE ) THEN
30: SELECTINDEX 'INODE.DEV', INODE:'.':DEV FROM F.STAT TO 9
31: READNEXT STAT.ID FROM 9 THEN
32:READV FILENAME FROM F.STAT, STAT.ID, 1 THEN
33:   LINE[1,29] = FILENAME '29.L#29'
34:END
35: END
36:  END
37:  CRT LINE
38:   REPEAT
39:   RETURN
40:END

Catalogue it  run as a verb.
Contact me if you have questions.

cds

On 3/16/2012 6:03 PM, dia...@aptron.com wrote:

I swear I wrote a new version of LIST.READU at one time where I dealt
with this and listed the file where the item was locked, but I can't
find it anywhere. And now, of course, I'm obsessed with finding it. If
I find it I'll post it. -Dianne

___
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] Unusual code

2012-03-15 Thread Mecki Foerthmann
The code will perform the Enter Problem codes sub if anything except Y 
or 1 are entered.

So why test for N and 2 at all?
Just to let the terminal beep which doesn't work on a terminal emulator 
anyway?

I would have just used IF THEN ELSE.

On 15/03/2012 19:18, Susan Joslyn wrote:

For multilingual.  I go with 0/1 for no/yes, myself.  But then you can use a
code table - in any language - where the returned value is 1 or 2 and test
for that in the programs.  Also lets the code table or whatever other
validation utility you use deal with the upper and lower case issue.  Final
result is 0/1 and all programs can use that and don't have to be changed
when the language does.

I still wouldn't use that construct, but that could explain why the numeric.

SJ


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


Re: [U2] Including Code - A Best Practice?

2012-02-08 Thread Mecki Foerthmann

Like with most things I'd say it depends.
I have worked with quite a few systems that use standard includes and 
haven't noticed that those were harder to maintain than those that don't.

The reason being that those includes never get changed.
Usually these include equates (TRUE, FALSE, VM, AM etc.), commons, 
opening standard system files (error messages, personal work files and 
so on), housekeeping and/or wrapping up at the end of the program.
Debugging is also no problem since you have compile options that not 
only generate a symbol table but also make the included code visible (in 
UniData just use -Z2 -D).

If you use includes like that then at least 2 of your points become invalid.
That said, I don't understand what you mean with installing updates 
requires compiling the world.
If your software vendor uses includes you haven't got a choice and if 
the software is developed in-house you define the standards.

And one of those standards should be, 'Don't change the standard includes!'.
So I can't see any disadvantage in using includes per se.
To the contrary.
You just copy the parts with the includes (in our case top and bottom) 
of an existing program into an empty item (or create a template) and 
start writing your code and you don't have to worry about your system 
wide standard variables.



On 08/02/2012 15:35, Tom Whitmore wrote:

I would agree that code in includes provides a faster program than making an 
external subroutine.  I had performed tests when milliseconds counted,  but now 
systems are so fast the advantage is not noticeable.

Putting code in includes:
Makes debugging harder
Installing updates requires compiling the world to make sure you get 
all the programs that use that include.
Maintenance costs are higher

 From my perspective, just say NO to code in includes.  The cost is too high 
with no real benefit.

Tom
RATEX Business Solutions

-Original Message-
From: u2-users-boun...@listserver.u2ug.org 
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Baker Hughes
Sent: Wednesday, February 08, 2012 10:15 AM
To: 'dgr...@dagconsulting.com'; 'U2 Users List'
Subject: Re: [U2] Including Code - A Best Practice?

David,

Could you elaborate a little more on your two positive arguments?  Thanks for 
your insights, and all those shared from others so far.

Thank you.
-Baker

-Original Message-
From: u2-users-boun...@listserver.u2ug.org 
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of David A. Green
Sent: Wednesday, February 08, 2012 8:21 AM
To: 'U2 Users List'
Subject: Re: [U2] Including Code - A Best Practice?

I don't think using an INCLUDE is bad, but it must be done in the right way.

Pros:

* It is the fastest way to use reusable code.
* It can be debugged just fine if you use the correct compile arguments.

Cons:

* You must, MUST, address the variable names. I always prefix mine with 
CODE$NAME where CODE is the prefix I've chosen for my INCLUDE and should be 
unique for your system.
* You must recompile all instances if you want the change to be updated 
everywhere.
* More difficult to edit program logic, unless you have a nice editor that 
brings in INCLUDES/INSERTS for you automatically.

David A. Green
(480) 813-1725
DAG Consulting

-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Baker Hughes
Sent: Tuesday, February 07, 2012 4:05 PM
To: U2 Users List (u2-users@listserver.u2ug.org)
Subject: [U2] Including Code - A Best Practice?

A friendly discussion arose recently among some U2/MV Developers about whether 
to include code.

If any of you have opinions about the positive aspects or negative aspects of 
this practice, please respond.  Should it be adopted as a best practice, or 
rejected as special situation use only?

Many shops probably include long sections of variable assignments, or perhaps 
globally opened files.  This is pretty much accepted everywhere as a good 
practice.

In question here is the insertion of actual code - business logic or screen I/O 
programs or code snippets.

Maybe you know of methods to overcome some of the obvious downsides:
unintended reassignment of local variables, difficulty in debugging, others.

What are the positive upsides?  Performance gains?

What is the longest snippet you think should be included, if allowed?

What advantage has included code over a CALL or a Function?  Reuse.  What else?

Can the downsides be mitigated satisfactorily to justify the gains?

Thanks so much.

-Baker

This communication, its contents and any file attachments transmitted with it 
are intended solely for the addressee(s) and may contain confidential 
proprietary information.
Access by any other party without the express written permission of the sender 
is STRICTLY PROHIBITED.
If you have received this communication in error you may not copy, distribute 
or use the contents, attachments or information in any way.  

Re: [U2] Building an Excel File

2012-02-07 Thread Mecki Foerthmann

R.I.P.

On 07/02/2012 17:52, Brian Leach wrote:

what a horrible thought ... some things rightly belong in the trash can of 
history. Jet and Runoff are definitely in that category.

Brian

Sent from my ASUS Eee Pad

Wjhonsonwjhon...@aol.com  wrote:


Dig it up and market it because Universe is no longer offering JET.



-Original Message-
From: Brian Leachbr...@brianleach.co.uk
To: 'U2 Users List'u2-users@listserver.u2ug.org
Sent: Tue, Feb 7, 2012 9:43 am
Subject: Re: [U2] Building an Excel File


IIRC didn't VMARK buy CompuSheet, at around the same time they bought JET?
t's probably lying around on and old QIC somewhere..
I'd just written a JET and Ultiword emulator for UniVerse when they popped
p with JET. Grr.. but a long time ago.

nd back to topic I second the use Tony's tools motion. Why waste time and
oney reinventing the wheel?
You make think your working time is free, but someone's paying for it!)
If you really need to call out from Excel (as opposed to building
preadsheets from the db) you can use VBA and UniObjects.
Brian
-Original Message-
rom: u2-users-boun...@listserver.u2ug.org
mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Charlie Noah
ent: 07 February 2012 16:13
o: U2 Users List
ubject: Re: [U2] Building an Excel File
Amen! I don't think I would want to go back to 9600 baud serial
ommunications, though. My first Reality job was contract programming
or a local service bureau, using an ADDS Viewpoint terminal and 300
aud acoustical coupler. They handed me the terminal, modem and a set of
anuals and said Have fun!. Dang, now I'm telling my age!
EasyCalc ran on Reality as well. Of course, it went the way of many of
he other dinosaurs. Now EasyCalc Googles to a scientific calculator on
ourceForge. I acquired the source code and rights to redistribute, but
hat never went anywhere.
If memory serves, Compusheet used a lot of abs frames for speed. EC was
ll Data/Basic. It was a bit slow recalculating a series of 600+
preadsheets from the bottom up. The others in IT (then called Data
rocessing) didn't think I would be able to get it to work at all, but
t did. The sheets drilled all the way down to class enrollment and
aperclip counts, and rolled it all up to a top level , which they used
o feed their GL.
I probably should have taken this [OT], but I didn't know what effect
hanging the subject would have.
Charlie
On 02-07-2012 9:52 AM, Dianne Ackerman wrote:
Hm, don't remember EasyCalc, but Compusheet was on a Reality system.
It was so much easier when we only had to know what was native in our
own systems and not be concerned with a million different things to
connect to in the outside world!
-Dianne

On 2/7/2012 10:45 AM, Charlie Noah wrote:

Hi Dianne,

You're telling your age here! ;^)

Actually, it was EasyCalc, which was probably very similar to
Compusheet.

Charlie

On 02-07-2012 9:30 AM, Dianne Ackerman wrote:

Compusheet?  I remember working with that!
-Dianne

On 2/7/2012 6:50 AM, Charlie Noah wrote:

Hi Bob,

I don't suppose CrowFlite can be obtained these days, can it? It
looks like Phil has retired. If it were available, would it work
with the newer versions of Excel? What about Open Office?

In the 80s I worked for a university in Florida, where we used a
Pick-based spreadsheet modeled after Lotus 123. I built a series of
spreadsheets which reached down into every aspect of the
university's database, giving upper management an up to the minute
view of the school's financial picture. I think it ended up being
over 600 spreadsheets, but hey, fund accounting is complicated and
we did still have the 32K limit.

Fond memories. ;^)

Regards,
Charlie Noah

Tiny Bear's Wild Bird Store
Everything For The Backyard Bird Enthusiast, Except For The Birds
Info, Forum:  http://www.TinyBearMarketing.com
Store:http://Stores.TinyBearMarketing.com
Toll Free:   1-855-TinyBear (855-846-9232)


On 02-06-2012 10:57 PM, Bob Rasmussen wrote:

Makes one long for CrowFlite, doesn't it?

For those that don't remember, CrowFlite was an add-in to Excel that
allowed it, at a per-cell level, to reach back into a Pick
database and
grab individual pieces of data. In other words, it was a pull
solution
as well as a push.

I'm cc'ing its creator, Phil Gerber, so he can reminisce about the
past
while reveling in the sights among the mountains of Oregon :-)

On Mon, 6 Feb 2012, Tony Gravagno wrote:


Not responding to any particular quote here, just the CSV topic
in general.

Respected colleagues, CSV is not Excel. If you have an end-user
that asks for Excel and you give them a CSV you're just
perpetuating the myth that Pick is a dinosaur. They will gladly
spend tens of thousands of dollars to replace your application
with something that creates real Excel (and PDF) despite the fact
that such things can be attained at low cost or no cost right
now. Trust me, I've seen it happen.

This dove-tails with the reasons why people get 20 people to
support Oracle when they can have 3 

Re: [U2] Passing by Value

2012-01-27 Thread Mecki Foerthmann

Thanks, I'll try it out next time I'm chasing a variable.

On 27/01/2012 22:52, Wols Lists wrote:

On 26/01/12 21:26, Mecki Foerthmann wrote:

What does -X do?


Sorry if this has already been answered, but I guess it's what I know 
as XREF.


It creates a listing of all the variables used, including the lines on 
which they are used.



I'd probably compile it with -Z2, run the program in debug and put a
trace on A.

On 26/01/2012 21:22, u2ug wrote:

BASIC -X !!!


Cheers,
Wol
___
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] Passing by Value

2012-01-27 Thread Mecki Foerthmann

I 100% agree with you Tony.
I really feel put off by the arrogant attitude in his replies.
First asking bloody beginner's questions and then accusing seasoned 
professionals when they offer a (free) solution that they don't know 
what they're talking about.

Who does this guy think he is?

I already put him in my spam filter.
Imho the only way to get rid of trolls is to ignore them.
If we do that they usually get bored and leave after a while or come 
down from their high horse.

He's not the first one and will surely not be the last one either.

Please stop feeding this troll.

Mecki

On 27/01/2012 21:23, Tony Gravagno wrote:

From: Bill Haskett
G-man:
You having a bad day?  :-)

No bro, I just don't like seeing good people being abused ...
again.  I'm just glad I'm not the only one who sees it.

___
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] Passing by Value

2012-01-26 Thread Mecki Foerthmann

What has the length of the program to do with it?
I always abide to the rule that a for next counter in any internal 
subroutine has to be unique.
That way even if the sub is called from within a for next loop the 
counters never conflict.
So it doesn't make any difference whatsoever if a program is 80 or 8000 
lines long.


BTW a program with 8000 lines is usually a sign of poor design.

On 26/01/2012 19:02, Wjhonson wrote:

You've never worked on programs that are 8000 lines long I take it :)




-Original Message-
From: John Hesterjhes...@momtex.com
To: U2 Users Listu2-users@listserver.u2ug.org
Sent: Thu, Jan 26, 2012 10:49 am
Subject: Re: [U2] Passing by Value


I like to use increasing roman numerals:
FOR I = 1 TO COUNTER
  GOSUB PROCESS
EXT I
PROCESS:
OR II = 1 TO COUNTER2
  FOR III = 1 TO COUNTER3
FOR IV = 1 TO COUNTER4

NEXT IV
  NEXT III
EXT II
ETURN
-Original Message-
rom: u2-users-boun...@listserver.u2ug.org
mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Wjhonson
ent: Thursday, January 26, 2012 10:09 AM
o: u2-users@listserver.u2ug.org
ubject: Re: [U2] Passing by Value

n a related note, any clever ideas to localize a variable to a local
ubroutine?
For I = 1 to 10
   GOSUB PROCESS
ext I
top
3000 Lines of code later
PROCESS:
OR I = 1 TO 20
RINT I
EXT I
ETURN
__
2-Users mailing list
2-us...@listserver.u2ug.org
ttp://listserver.u2ug.org/mailman/listinfo/u2-users
__
2-Users mailing list
2-us...@listserver.u2ug.org
ttp://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] Passing by Value

2012-01-26 Thread Mecki Foerthmann

No, you are completely wrong if you think that is only your world.
Who in our game has the luxury working only with their own code?
I have been doing what you describe for over 25 years now and probably 
most of the contributors here do the same thing for a living too and not 
just since yesterday.
And I may have made that silly mistake once or twice as a junior but 
since then it has become second nature.
And in those days we didn't have the luxury of 8000 line programs 
because the limit for any item was 32K and you were forced to use very 
short variable names and couldn't even indent your code because spaces 
are characters too.
In one shop I worked we used X, Y, Z etc. in 'primary' code and in 
internal subroutines XX, YY, ZZ and so on for loop counters.
I personally prefer more meaningful names but can't do that always 
because I try to follow the naming conventions of the code I'm working on.


Even the editor you use is irrelevant since I haven't seen one yet that 
doesn't have a search function.
Just go to the top of the program and search for the variable name you 
intend to use.

If your search comes up negative you're safe to use it.
Simple!

And OTOH how can you make 'rapid changes' to code if you don't 
understand what it is supposed to do and where the varibles come from?


On 26/01/2012 20:16, Wjhonson wrote:

Completely wrong :)
You apparently have the luxury of only working on programs written by yourself.

In my world, we are called upon to make rapid changes in programs written by 
twenty programmers over twenty years.
You haven't specified *how* you ensure that your counters are unique, and by 
the way, the issue is not just counters, but any variable.



-Original Message-
From: Mecki Foerthmannmec...@gmx.net
To: u2-usersu2-users@listserver.u2ug.org
Sent: Thu, Jan 26, 2012 12:13 pm
Subject: Re: [U2] Passing by Value


What has the length of the program to do with it?
  always abide to the rule that a for next counter in any internal
ubroutine has to be unique.
hat way even if the sub is called from within a for next loop the
ounters never conflict.
o it doesn't make any difference whatsoever if a program is 80 or 8000
ines long.
BTW a program with 8000 lines is usually a sign of poor design.
On 26/01/2012 19:02, Wjhonson wrote:
  You've never worked on programs that are 8000 lines long I take it :)




  -Original Message-
  From: John Hesterjhes...@momtex.com
  To: U2 Users Listu2-users@listserver.u2ug.org
  Sent: Thu, Jan 26, 2012 10:49 am
  Subject: Re: [U2] Passing by Value


  I like to use increasing roman numerals:
  FOR I = 1 TO COUNTER
GOSUB PROCESS
  EXT I
  PROCESS:
  OR II = 1 TO COUNTER2
FOR III = 1 TO COUNTER3
  FOR IV = 1 TO COUNTER4

  NEXT IV
NEXT III
  EXT II
  ETURN
  -Original Message-
  rom: u2-users-boun...@listserver.u2ug.org
  mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Wjhonson
  ent: Thursday, January 26, 2012 10:09 AM
  o: u2-users@listserver.u2ug.org
  ubject: Re: [U2] Passing by Value

  n a related note, any clever ideas to localize a variable to a local
  ubroutine?
  For I = 1 to 10
 GOSUB PROCESS
  ext I
  top
  3000 Lines of code later
  PROCESS:
  OR I = 1 TO 20
  RINT I
  EXT I
  ETURN
  __
  2-Users mailing list
  2-us...@listserver.u2ug.org
  ttp://listserver.u2ug.org/mailman/listinfo/u2-users
  __
  2-Users mailing list
  2-us...@listserver.u2ug.org
  ttp://listserver.u2ug.org/mailman/listinfo/u2-users

  ___
  U2-Users mailing list
  U2-Users@listserver.u2ug.org
  http://listserver.u2ug.org/mailman/listinfo/u2-users
__
2-Users mailing list
2-us...@listserver.u2ug.org
ttp://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] Passing by Value

2012-01-26 Thread Mecki Foerthmann

Are you trying to be funny?
Who in his or her right mind would use 1 letter variables in a 8000 line 
program except maybe as loop counter or as throw away variables?

And you have just explained why that is a stupid idea.
And if you have a program like that?
Tough luck, sounds like hard earned money to me.
Happy hunting.

But I guess I better stop feeding the troll.:-X

On 26/01/2012 20:58, Wjhonson wrote:

Mecki you're not paying attention.
You have an 8000 line program that uses a variable A
You didn't write it.  You need to find where that variable is assigned.
You search for A ?

That's not going to work.



-Original Message-
From: Mecki Foerthmannmec...@gmx.net
To: u2-usersu2-users@listserver.u2ug.org
Sent: Thu, Jan 26, 2012 12:55 pm
Subject: Re: [U2] Passing by Value


No, you are completely wrong if you think that is only your world.
ho in our game has the luxury working only with their own code?
  have been doing what you describe for over 25 years now and probably
ost of the contributors here do the same thing for a living too and not
ust since yesterday.
nd I may have made that silly mistake once or twice as a junior but
ince then it has become second nature.
nd in those days we didn't have the luxury of 8000 line programs
ecause the limit for any item was 32K and you were forced to use very
hort variable names and couldn't even indent your code because spaces
re characters too.
n one shop I worked we used X, Y, Z etc. in 'primary' code and in
nternal subroutines XX, YY, ZZ and so on for loop counters.
  personally prefer more meaningful names but can't do that always
ecause I try to follow the naming conventions of the code I'm working on.
Even the editor you use is irrelevant since I haven't seen one yet that
oesn't have a search function.
ust go to the top of the program and search for the variable name you
ntend to use.
f your search comes up negative you're safe to use it.
imple!
And OTOH how can you make 'rapid changes' to code if you don't
nderstand what it is supposed to do and where the varibles come from?
On 26/01/2012 20:16, Wjhonson wrote:
  Completely wrong :)
  You apparently have the luxury of only working on programs written by
ourself.

  In my world, we are called upon to make rapid changes in programs written by
wenty programmers over twenty years.
  You haven't specified *how* you ensure that your counters are unique, and by
he way, the issue is not just counters, but any variable.



  -Original Message-
  From: Mecki Foerthmannmec...@gmx.net
  To: u2-usersu2-users@listserver.u2ug.org
  Sent: Thu, Jan 26, 2012 12:13 pm
  Subject: Re: [U2] Passing by Value


  What has the length of the program to do with it?
always abide to the rule that a for next counter in any internal
  ubroutine has to be unique.
  hat way even if the sub is called from within a for next loop the
  ounters never conflict.
  o it doesn't make any difference whatsoever if a program is 80 or 8000
  ines long.
  BTW a program with 8000 lines is usually a sign of poor design.
  On 26/01/2012 19:02, Wjhonson wrote:
You've never worked on programs that are 8000 lines long I take it :)




-Original Message-
From: John Hesterjhes...@momtex.com
To: U2 Users Listu2-users@listserver.u2ug.org
Sent: Thu, Jan 26, 2012 10:49 am
Subject: Re: [U2] Passing by Value


I like to use increasing roman numerals:
FOR I = 1 TO COUNTER
  GOSUB PROCESS
EXT I
PROCESS:
OR II = 1 TO COUNTER2
  FOR III = 1 TO COUNTER3
FOR IV = 1 TO COUNTER4

NEXT IV
  NEXT III
EXT II
ETURN
-Original Message-
rom: u2-users-boun...@listserver.u2ug.org
mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Wjhonson
ent: Thursday, January 26, 2012 10:09 AM
o: u2-users@listserver.u2ug.org
ubject: Re: [U2] Passing by Value

n a related note, any clever ideas to localize a variable to a local
ubroutine?
For I = 1 to 10
   GOSUB PROCESS
ext I
top
3000 Lines of code later
PROCESS:
OR I = 1 TO 20
RINT I
EXT I
ETURN
__
2-Users mailing list
2-us...@listserver.u2ug.org
ttp://listserver.u2ug.org/mailman/listinfo/u2-users
__
2-Users mailing list
2-us...@listserver.u2ug.org
ttp://listserver.u2ug.org/mailman/listinfo/u2-users

___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users
  __
  2-Users mailing list
  2-us...@listserver.u2ug.org
  ttp://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] Passing by Value

2012-01-26 Thread Mecki Foerthmann

We used CHAIN on ADDS Mentor to combine 2 or more programs.
Like INCLUDE a real bastard to debug, though.

On 26/01/2012 21:01, Charlie Noah wrote:

Hi Mecki,

I remember those 32K limits. I found a way to cheat a bit, though. I 
would split a source program into pieces and INCLUDE the subsequent 
pieces into the first. As long as the object didn't exceed 32K, it 
worked. Ah, those were the days! :-)


Regards,
Charlie Noah

On 01-26-2012 2:54 PM, Mecki Foerthmann wrote:

No, you are completely wrong if you think that is only your world.
Who in our game has the luxury working only with their own code?
I have been doing what you describe for over 25 years now and 
probably most of the contributors here do the same thing for a living 
too and not just since yesterday.
And I may have made that silly mistake once or twice as a junior but 
since then it has become second nature.
And in those days we didn't have the luxury of 8000 line programs 
because the limit for any item was 32K and you were forced to use 
very short variable names and couldn't even indent your code because 
spaces are characters too.
In one shop I worked we used X, Y, Z etc. in 'primary' code and in 
internal subroutines XX, YY, ZZ and so on for loop counters.
I personally prefer more meaningful names but can't do that always 
because I try to follow the naming conventions of the code I'm 
working on.


Even the editor you use is irrelevant since I haven't seen one yet 
that doesn't have a search function.
Just go to the top of the program and search for the variable name 
you intend to use.

If your search comes up negative you're safe to use it.
Simple!

And OTOH how can you make 'rapid changes' to code if you don't 
understand what it is supposed to do and where the varibles come from?


On 26/01/2012 20:16, Wjhonson wrote:

Completely wrong :)
You apparently have the luxury of only working on programs written 
by yourself.


In my world, we are called upon to make rapid changes in programs 
written by twenty programmers over twenty years.
You haven't specified *how* you ensure that your counters are 
unique, and by the way, the issue is not just counters, but any 
variable.




-Original Message-
From: Mecki Foerthmannmec...@gmx.net
To: u2-usersu2-users@listserver.u2ug.org
Sent: Thu, Jan 26, 2012 12:13 pm
Subject: Re: [U2] Passing by Value


What has the length of the program to do with it?
  always abide to the rule that a for next counter in any internal
ubroutine has to be unique.
hat way even if the sub is called from within a for next loop the
ounters never conflict.
o it doesn't make any difference whatsoever if a program is 80 or 8000
ines long.
BTW a program with 8000 lines is usually a sign of poor design.
On 26/01/2012 19:02, Wjhonson wrote:
  You've never worked on programs that are 8000 lines long I take it :)




  -Original Message-
  From: John Hesterjhes...@momtex.com
  To: U2 Users Listu2-users@listserver.u2ug.org
  Sent: Thu, Jan 26, 2012 10:49 am
  Subject: Re: [U2] Passing by Value


  I like to use increasing roman numerals:
  FOR I = 1 TO COUNTER
GOSUB PROCESS
  EXT I
  PROCESS:
  OR II = 1 TO COUNTER2
FOR III = 1 TO COUNTER3
  FOR IV = 1 TO COUNTER4

  NEXT IV
NEXT III
  EXT II
  ETURN
  -Original Message-
  rom: u2-users-boun...@listserver.u2ug.org
  mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Wjhonson
  ent: Thursday, January 26, 2012 10:09 AM
  o: u2-users@listserver.u2ug.org
  ubject: Re: [U2] Passing by Value

  n a related note, any clever ideas to localize a variable to a local
  ubroutine?
  For I = 1 to 10
 GOSUB PROCESS
  ext I
  top
  3000 Lines of code later
  PROCESS:
  OR I = 1 TO 20
  RINT I
  EXT I
  ETURN
  __
  2-Users mailing list
  2-us...@listserver.u2ug.org
  ttp://listserver.u2ug.org/mailman/listinfo/u2-users
  __
  2-Users mailing list
  2-us...@listserver.u2ug.org
  ttp://listserver.u2ug.org/mailman/listinfo/u2-users

  ___
  U2-Users mailing list
  U2-Users@listserver.u2ug.org
  http://listserver.u2ug.org/mailman/listinfo/u2-users
__
2-Users mailing list
2-us...@listserver.u2ug.org
ttp://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


___
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] Passing by Value

2012-01-26 Thread Mecki Foerthmann

What does -X do?
I'd probably compile it with -Z2, run the program in debug and put a 
trace on A.


On 26/01/2012 21:22, u2ug wrote:

BASIC -X  !!!

-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of John Hester
Sent: Thursday, January 26, 2012 4:16 PM
To: U2 Users List
Subject: Re: [U2] Passing by Value

One of these searches should eventually work:

L  A=
L  A =
L A=
L A =

Unless the original author used some kind of ridiculous syntaxt like:

A   = 500

Granted, you're also going to get results for any IF/THEN equality tests
in the mix, but you'd have the exact same issue if the variable were
named I.LIKE.TO.USE.VERY.LOOONG.VARIABLE.NAMES.  You might get more
false positives with A if you also have variables like AA, AAA, BA,
etc., but one can only hope any programmer that incompetent would get
fired before they could leave behind too much code like that.

-John

-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Wjhonson
Sent: Thursday, January 26, 2012 12:59 PM
To: u2-users@listserver.u2ug.org
Subject: Re: [U2] Passing by Value


Mecki you're not paying attention.
You have an 8000 line program that uses a variable A
You didn't write it.  You need to find where that variable is assigned.
You search for A ?

That's not going to work.
___
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] Passing by Value

2012-01-26 Thread Mecki Foerthmann

Not to mention L ;A= and L ;A =

On 26/01/2012 21:15, John Hester wrote:

One of these searches should eventually work:

L  A=
L  A =
L A=
L A =

Unless the original author used some kind of ridiculous syntaxt like:

A   = 500

Granted, you're also going to get results for any IF/THEN equality tests
in the mix, but you'd have the exact same issue if the variable were
named I.LIKE.TO.USE.VERY.LOOONG.VARIABLE.NAMES.  You might get more
false positives with A if you also have variables like AA, AAA, BA,
etc., but one can only hope any programmer that incompetent would get
fired before they could leave behind too much code like that.

-John

-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Wjhonson
Sent: Thursday, January 26, 2012 12:59 PM
To: u2-users@listserver.u2ug.org
Subject: Re: [U2] Passing by Value


Mecki you're not paying attention.
You have an 8000 line program that uses a variable A
You didn't write it.  You need to find where that variable is assigned.
You search for A ?

That's not going to work.
___
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-16 Thread Mecki Foerthmann
I agree, if it took you more than 4 seconds to work that piece of code 
out you shouldn't be a programmer.
But if it requires working out and thus at least twice as long than 
reading a simple if-then-else statement it's definitely not a brilliant 
piece of code.


On 16/01/2012 20:16, Symeon Breen wrote:

H


This has whole topic has been mentioned on here before, and my stance is the
same, if you can not read that code and work it out in 4 seconds, then maybe
you should not be a programmer.  Code is code, read it , understand it, get
over it   



___
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 Mecki Foerthmann

What's wrong with IF S1  S2 THEN SMAX = S1 ELSE SMAX = S2?
Definitely more readable!

If it was hard to write then it should be hard to read, I guess.

On 13/01/2012 17:41, Wjhonson wrote:

SMAX = (S1  S2) * S1 + (S2= S1) * S2

?


___
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] SB Missing Screen

2011-12-23 Thread Mecki Foerthmann
You should use SRC (or F8 in PRC) to check if all processes are actually 
part of your project.
When working on multiple projects it can easily happen that part of one 
project ends up in a different one.
So while everything works fine in development or test when you load it 
parts of the project may be missing.


On 23/12/2011 17:06, Israel, John R. wrote:

You got that right!

Actually, it looks like one of the programs was missed and it was running the 
prior version.  No clue how or why, but I think I am on the right track.

Sorry for the panic message.

Merry Xmas to all!

John






John Israel
Senior ERP Developer

Dayton Superior Corporation
1125 Byers Rd  Miamisburg, OH 45342
Office: 937-866-0711 x44380
Fax: 937-865-9182

johnisr...@daytonsuperior.com

This message w/attachments (message) is intended solely for the use of the 
intended recipient(s) and may contain information that is privileged, 
confidential or proprietary. If you are not an intended recipient, please 
notify the sender, and then please delete and destroy all copies and 
attachments, and be advised that any review or dissemination of, or the taking 
of any action in reliance on, the information contained in or attached to this 
message is prohibited.




-Original Message-
From: u2-users-boun...@listserver.u2ug.org 
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Colin Alfke
Sent: Friday, December 23, 2011 12:05 PM
To: 'U2 Users List'
Subject: Re: [U2] SB Missing Screen

The problem's obvious: you're working during your vacation!!

Sorry, I don't know how PRC pushes the updates - but I'd start with /XP or
/MP and go through the processes to make sure everything's calling what I
expect (guessing that PRC didn't overwrite a current process that is setting
things so it goes straight through).

Good luck and Happy Holidays!

Colin

-Original Message-
From: Israel, John R.

I am dying here!

We use PRC to push our SB stuff from TEST to PILOT and then from PILOT to
LIVE.

I wrote a new process in TEST that works perfectly.  It looks for some txt
files to import.  If found, and you hit F2, it does some validation before
importing.  No problem.

I used PRC to move this to PILOT, but when I run the process in PILOT, the
screen never displays at all, and I start getting the SB.DISP messages as if
I had hit F2.

I have deleted the process and screens from PILOT and re-loaded - no effect.

I have made changes to the process and the screen in TEST and re-loaded - no
effect.

I am not getting any errors, it just does not display the screen and
immediately starts running the code as if the user had hit F2.

I have been trying to get this to display the screen in PILOT for hours (on
my vacation!), but have completely run out of ideas.

Any thoughts?

John Israel
Senior ERP Developer


___
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] Extract first and last name from free-form name

2011-12-14 Thread Mecki Foerthmann

And the list goes on and on and...
That's why free form names are an absolute pain and should be avoided.
It's so much easier to have Title, First Name(s), Last Name(s) fields in 
the input screen and keep them as separate attributes.

You never get it 100% right.
In your list take Dean or Prince for instance - they could be first 
names and not titles at all.
A colleague of mine tried a last name upper to lower case conversion 
including Irish and Scottish names and out of Machine Co it made MacHine Co.

And don't even ask what happened to last names starting with O.:-)


On 14/12/2011 01:02, Charlie Noah wrote:
Great start, but here is a longer list, although still nowhere near 
complete:


Prefixes

Code Description
1st Lt   First Lieutenant
Adm  Admiral
Atty Attorney
Brother  Brother (religious)
Capt Captain
ChiefChief
Cmdr Commander
Col  Colonel
Dean University Dean (includes Assistant and Associate)
Dr   Doctor (Medical or Educator)
ElderElder (religious)
Father   Father (religious)
Gen  General
Gov  Governor
Hon  Honorable (Cabinet Officer, Commissioner, Congressman, Judge, 
etc.)

Lt Col   Lieutenant Colonel
Maj  Major
MSgt Major/Master Sergeant
Mr   Mister
Mrs  Married Woman
Ms   Single or Married Woman
Prince   Prince
Prof Professor (includes Assistant and Associate
RabbiRabbi (religious)
Rev  Reverend (religious)
Sister   Sister (religious)

Suffixes

Code Description
II   The Second
III  The Third
IV   The Fourth
VThe Fifth
CPA  Certified Public Accountant
DDS  Doctor of Dental Medicine
Esq  Esquire
JD   Jurist Doctor
Jr   Junior
Jnr  Junior (British)
LLD  Doctor of Laws
MD   Doctor of Medicine
PhD  Doctorate
Ret  Retired from Armed Forces
RN   Registered Nurse
RPh  Registered Pharmacist
Sr   Senior
Snr  Senior (British)
DO   Doctor of Osteopathy

Perhaps others can add more to the list.

Regards,
Charlie Noah

Tiny Bear's Wild Bird Store
Everything For The Backyard Bird Enthusiast, Except For The Birds
Info, Forum:  http://www.TinyBearMarketing.com
Store:http://Stores.TinyBearMarketing.com


On 12-13-2011 5:12 PM, Wjhonson wrote:

0044:  SUFFIXES = ,JR,SR,MD,III,
0045:  S.NAME = DCOUNT(UM.NAME,' ')
0046:  LAST.WORD.IN.NAME = FIELD(UM.NAME,' ',S.NAME)
0047:  IF INDEX(SUFFIXES,,:LAST.WORD.IN.NAME:,,1) THEN
0048: LAST.NAME = FIELD(UM.NAME,' ',S.NAME-1)
0049:  END ELSE
0050: LAST.NAME = LAST.WORD.IN.NAME
0051:  END
0052:  PREFIXES = ',DR,MR,MS,MISS,MRS,'
0053:  FIRST.WORD.IN.NAME = FIELD(UM.NAME,' ',1)
0054:  IF INDEX(PREFIXES,,:FIRST.WORD.IN.NAME:,,1) THEN
0055: FIRST.NAME = FIELD(UM.NAME,' ',2)
0056:  END ELSE
0057: FIRST.NAME = FIRST.WORD.IN.NAME
0058:  END
___
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] Extract first and last name from free-form name

2011-12-14 Thread Mecki Foerthmann

Just face it - it can't be done!
So what if Dean has 2 first names and is a plumber?

On 14/12/2011 09:57, Symeon Breen wrote:

You need to do a proper lexical analysis in order to work these out

For example

Input : Dean Foster
Lex: title word

Input: Dean Reginald McGraw
Lex: title word word



Then set rules to say a lex of title word is probable worked out as
forename surname  and a lex of title word word is probably title
forename surname   you can assign probabilities against these and build
some self learning in.

It is a whole massive topic.




-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Mecki Foerthmann
Sent: 14 December 2011 08:22
To: u2-users@listserver.u2ug.org
Subject: Re: [U2] Extract first and last name from free-form name

And the list goes on and on and...
That's why free form names are an absolute pain and should be avoided.
It's so much easier to have Title, First Name(s), Last Name(s) fields in the
input screen and keep them as separate attributes.
You never get it 100% right.
In your list take Dean or Prince for instance - they could be first names
and not titles at all.
A colleague of mine tried a last name upper to lower case conversion
including Irish and Scottish names and out of Machine Co it made MacHine Co.
And don't even ask what happened to last names starting with O.:-)


On 14/12/2011 01:02, Charlie Noah wrote:

Great start, but here is a longer list, although still nowhere near
complete:

Prefixes

Code Description
1st Lt   First Lieutenant
Adm  Admiral
Atty Attorney
Brother  Brother (religious)
Capt Captain
ChiefChief
Cmdr Commander
Col  Colonel
Dean University Dean (includes Assistant and Associate)
Dr   Doctor (Medical or Educator)
ElderElder (religious)
Father   Father (religious)
Gen  General
Gov  Governor
Hon  Honorable (Cabinet Officer, Commissioner, Congressman, Judge,
etc.)
Lt Col   Lieutenant Colonel
Maj  Major
MSgt Major/Master Sergeant
Mr   Mister
Mrs  Married Woman
Ms   Single or Married Woman
Prince   Prince
Prof Professor (includes Assistant and Associate
RabbiRabbi (religious)
Rev  Reverend (religious)
Sister   Sister (religious)

Suffixes

Code Description
II   The Second
III  The Third
IV   The Fourth
VThe Fifth
CPA  Certified Public Accountant
DDS  Doctor of Dental Medicine
Esq  Esquire
JD   Jurist Doctor
Jr   Junior
Jnr  Junior (British)
LLD  Doctor of Laws
MD   Doctor of Medicine
PhD  Doctorate
Ret  Retired from Armed Forces
RN   Registered Nurse
RPh  Registered Pharmacist
Sr   Senior
Snr  Senior (British)
DO   Doctor of Osteopathy

Perhaps others can add more to the list.

Regards,
Charlie Noah

Tiny Bear's Wild Bird Store
Everything For The Backyard Bird Enthusiast, Except For The Birds
Info, Forum:  http://www.TinyBearMarketing.com
Store:http://Stores.TinyBearMarketing.com


On 12-13-2011 5:12 PM, Wjhonson wrote:

0044:  SUFFIXES = ,JR,SR,MD,III,
0045:  S.NAME = DCOUNT(UM.NAME,' ')
0046:  LAST.WORD.IN.NAME = FIELD(UM.NAME,' ',S.NAME)
0047:  IF INDEX(SUFFIXES,,:LAST.WORD.IN.NAME:,,1) THEN
0048: LAST.NAME = FIELD(UM.NAME,' ',S.NAME-1)
0049:  END ELSE
0050: LAST.NAME = LAST.WORD.IN.NAME
0051:  END
0052:  PREFIXES = ',DR,MR,MS,MISS,MRS,'
0053:  FIRST.WORD.IN.NAME = FIELD(UM.NAME,' ',1)
0054:  IF INDEX(PREFIXES,,:FIRST.WORD.IN.NAME:,,1) THEN
0055: FIRST.NAME = FIELD(UM.NAME,' ',2)
0056:  END ELSE
0057: FIRST.NAME = FIRST.WORD.IN.NAME
0058:  END
___
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
-
No virus found in this message.
Checked by AVG - www.avg.com
Version: 10.0.1415 / Virus Database: 2102/4079 - Release Date: 12/13/11

___
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] Dynamic Connect TimeOut

2011-11-17 Thread Mecki Foerthmann
You need the AUTOLOGOUT to kill off processes that are left behind if a 
user turns their PC off without disconnecting.

So it's not a good idea to turn that off.
That's why SBClient and I guess DC too send a keep-alive signal to the 
server.
This worked fine under XP but on Win7 machines this doesn't seem to work 
any more.


On 17/11/2011 12:56, asvin.datt...@hsbcib.com wrote:

Hi,

Have you checked the AUTOLOGOUT setting?


  AUTOLOGOUT


 Use AUTOLOGOUT to enable or  disable  automatic  logout.  With
 AUTOLOGOUT enabled, UniVerse logs you out automatically if you
 have not pressed a key within a specified time.

  SYNTAX

AUTOLOGOUT [time]


cheers,

asvin

u2-users-boun...@listserver.u2ug.org wrote on 16/11/2011 16:02:09:


[image removed]
[image removed]

[U2] Dynamic Connect TimeOut

Bill Brutzman

to:

U2 Users List

16/11/2011 16:02

Sent by:

u2-users-boun...@listserver.u2ug.org

Please respond to U2 Users List

A user here with a Windows 7 PC indicates that DC keeps logging him
out... automatically.

He says that he launches DC in the morning... minimizes it... comes
back later... and is presented with the unix login prompt.

We have UniVerse v10.3.6 running on HP-Ux 11i v2.

This problem is new to me.

I presume that he has a timeout parameter specified somewhere in theUx

login.

Help would be appreciated.

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



HSBC Bank plc may be solicited in the course of its placement efforts for
a new issue, by investment clients of the firm for whom the Bank as a firm
already provides other services. It may equally decide to allocate to its
own proprietary book or with an associate of HSBC Group. This represents a
potential conflict of interest. HSBC Bank plc has internal arrangements
designed to ensure that the firm would give unbiased and full advice to
the corporate finance client about the valuation and pricing of the
offering as well as internal systems, controls and procedures to identify
and manage conflicts of interest.

HSBC Bank plc
Registered Office: 8 Canada Square, London E14 5HQ, United Kingdom
Registered in England - Number 14259
Authorised and regulated by the Financial Services Authority.



-
SAVE PAPER - THINK BEFORE YOU PRINT!

This transmission has been issued by a member of the HSBC Group
HSBC for the information of the addressee only and should not be
reproduced and/or distributed to any other person. Each page
attached hereto must be read in conjunction with any disclaimer
which forms part of it. Unless otherwise stated, this transmission
is neither an offer nor the solicitation of an offer to sell or
purchase any investment. Its contents are based on information
obtained from sources believed to be reliable but HSBC makes no
representation and accepts no responsibility or liability as to its
completeness or accuracy.
___
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] Code Collaboration

2011-11-17 Thread Mecki Foerthmann

I think a major problem is the lack of training/documentation.
Great that there are all these new possibilities, but if you have to 
figure everything out yourself it becomes very difficult to keep up with 
the technology.
A lot of VARs (especially ours) are no help if you get the feeling they 
know even less then you do.
It is very frustrating if the business asks, 'can we do that?' and you 
can only answer, 'yes, I know it's possible but I don't know how to make 
it work.'
And how am I to show the young guys all the flash things I have seen in 
demos or heard about here if I can't get them to work myself?


On 17/11/2011 20:55, David Jordan wrote:

The U2UG board has been discussing with Rocket how to encourage excitement that 
U2 is not legacy but is a technology leader.  I was at a presentation of a U2 
VAR and they demonstrated product that would be indistinguishable from any 
other player in open systems, Service architecture, interoperability, web 
intefaces, etc.  How do we get this across to the market.

With collaboration, we need to first excite.   How do we excite people in U2 
technology.   Is it looking at a major enhancement of the BASIC programming 
language or a new one within U2.  What other things do we look at.

Currently young programmers are excited by web technology's, mobile apps, the 
sexy stuff.  They are not interested in the backend, whether Oracle RDBMS, SQL 
Server or U2.  This is a problem across the industry.

The board of the user group are interested in areas to look at and how to 
create infrastructure to make this happen.   If we can reignite excitement in 
the product and create a place for collaboration where that excitement can be 
put to good use then I believe we can achieve success.  However our success 
depends on a group of people not a few individuals.   If this is to occur, it 
is time for people to become involved in shaping a future.

Regards
David Jordan
VP U2UG
___
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] Dynamic Connect TimeOut

2011-11-16 Thread Mecki Foerthmann
I experience the same problem with SBClient and mvDeveloper (UD 5.2 on 
Solaris) ever since I swapped my old PC running XP to a new 64 bit 
Windows 7 PC.

After about an hour and a half of inactivity I get disconnected.
I have the suspicion that Win 7 doesn't send the keep alive that is 
expected.


On 16/11/2011 16:32, Bill Brutzman wrote:

While this user had in the /home directory
.login
The following files were missing
.cshrc
.exrc
.profile

I copied these mia's from another user here and changed the ownership to him
andusers   group.

Perhaps this will fix it.

--Bill

-Original Message-
From: u2-users-boun...@listserver.u2ug.org 
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Steve Romanow
Sent: Wednesday, November 16, 2011 11:06 AM
To: U2 Users List
Subject: Re: [U2] Dynamic Connect TimeOut

Are you using System Builder?

On Wed, Nov 16, 2011 at 11:02 AM, Bill Brutzmanbi...@hkmetalcraft.com  wrote:

A user here with a Windows 7 PC indicates that DC keeps logging him out... 
automatically.

He says that he launches DC in the morning... minimizes it... comes back 
later... and is presented with the unix login prompt.

We have UniVerse v10.3.6 running on HP-Ux 11i v2.

This problem is new to me.

I presume that he has a timeout parameter specified somewhere in the Ux login.

Help would be appreciated.

--Bill
___
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
___
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] Dynamic Connect TimeOut

2011-11-16 Thread Mecki Foerthmann

Yes I have Brian.
That's the first thing I checked and why I think it's something in Win7 
64bit.


On 16/11/2011 17:19, Brian Leach wrote:

Mecki

In mvDeveloper, under Account Settings have you checked 'send keep-alives'?

Brian

-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Mecki Foerthmann
Sent: 16 November 2011 17:06
To: u2-users@listserver.u2ug.org
Subject: Re: [U2] Dynamic Connect TimeOut

I experience the same problem with SBClient and mvDeveloper (UD 5.2 on
Solaris) ever since I swapped my old PC running XP to a new 64 bit
Windows 7 PC.
After about an hour and a half of inactivity I get disconnected.
I have the suspicion that Win 7 doesn't send the keep alive that is
expected.

On 16/11/2011 16:32, Bill Brutzman wrote:

While this user had in the /home directory
.login
The following files were missing
.cshrc
.exrc
.profile

I copied these mia's from another user here and changed the ownership to

himandusers   group.

Perhaps this will fix it.

--Bill

-Original Message-
From: u2-users-boun...@listserver.u2ug.org

[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Steve Romanow

Sent: Wednesday, November 16, 2011 11:06 AM
To: U2 Users List
Subject: Re: [U2] Dynamic Connect TimeOut

Are you using System Builder?

On Wed, Nov 16, 2011 at 11:02 AM, Bill Brutzmanbi...@hkmetalcraft.com

wrote:

A user here with a Windows 7 PC indicates that DC keeps logging him

out... automatically.

He says that he launches DC in the morning... minimizes it... comes back

later... and is presented with the unix login prompt.

We have UniVerse v10.3.6 running on HP-Ux 11i v2.

This problem is new to me.

I presume that he has a timeout parameter specified somewhere in the Ux

login.

Help would be appreciated.

--Bill
___
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
___
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

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


Re: [U2] Dynamic Connect TimeOut

2011-11-16 Thread Mecki Foerthmann

Thanks John,

I'll have a word with the system admin if I actually (need to) have the 
firewall switched on.

Win7 is new to us. I have been the guinea pig and can live with it.
But all new PCs in the company are now Win7 so getting this sorted would 
be nice.


Mecki

On 16/11/2011 19:53, John Thompson wrote:

One thing to note, which you may already know...

The Windows Firewall in WIndows 7 filters inbound and OUTBOUND traffic.

So you may just want to turn it off altogether and see what happens.

On Wed, Nov 16, 2011 at 2:46 PM, Mecki Foerthmannmec...@gmx.net  wrote:


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


Re: [U2] Using 'MATCH'

2011-11-04 Thread Mecki Foerthmann
Well, you still won't find the first occurrence with INDEX() since it 
hasn't got a comma in front.

Using the right tool (in this case LOCATE) for the job always helps!

On 01/11/2011 15:05, Charles Stevenson wrote:

What Wol  George Smith said.

MATCH's raison d'etre is _PATTERN_ matching.

That means:

(a) MATCH is relatively expensive to use for comparing simple literals.

(b) For MATCH, you need to enclose the pattern's literals in embedded 
quotes to ensure that it is not interpreted as a pattern.
Per Wol's M6AWT example:  M6AWT needs to be 'MCAWT' or MATCH will 
reinterpret it as 'M'6A'WT', a 3-piece pattern.
Remember, every time MATCH is going to examine the 2nd argument to 
figure out what pattern you're talking about this time, which brings 
us back to point (a).


(c) MATCH will be confusing to the next maint pgmr: he'll think you're 
talking about PATTERN matching, not simple literals.



George's INDEX() gets it right for shear efficiency,

On 10/31/2011 2:17 PM, George Smith wrote:
If you are trying to look for an arbitrary delimited string, I think 
the safest thing to do is something like IF INDEX(',':X.STRING:',', 
',':X.CODE:',',1)=0 THEN X.STRING=X.STRING:',':X.CODE 

Efficiency matters if you do many iterations.
The LOCATE suggestions are arguably more readable if the rookie pgmr 
following you is not familiar with the INDEX() technique (yet).


You may be surprised if you compare INDEX() performance to 
functionally equivalent constructs using LOCATE, COUNT, MATCH, 
FINDSTR, etc..


If you're building X.STRING as you go, you might want to do something 
like:


   X.STRING = ','
   LOOP
   ... get X.CODE ...
   IF INDEX( X.STRING, (',':X.CODE:','), 1 )ELSE X.STRING:= 
X.CODE:','

   REPEAT
   X.STRING = [ 2, LEN( X.STRING)-2 ]  ; * drop leading  trailing comma



Caveat: All the answers on this thread assume strings of a 
reasonable size.  Today maybe a few, several KB??  Tomorrow???



cds


On 10/31/2011 6:20 PM, Wols Lists wrote:
I notice nobody seems to have pointed out a MAJOR gotcha in using 
MATCH. If your code is as described, you'll avoid it, but what 
validation have you got in place on X.CODE? Is it possible that 
numbers could accidentally get into it? We did something like this 
years ago with a line something like IF TEXT MATCH USER THEN where 
USER was the department code followed by the user's initials. And 
while most departments were alphas, there were a couple of 
alphanumerics. All went well until Albert from M6 ran the code ... 
USER = M6AWT Who can see the landmine just waiting to explode ... 
? Cheers, Wol 



___
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] Using 'MATCH'

2011-10-31 Thread Mecki Foerthmann

I don't get the problem.
Why would you want to do this in the first place?
Why not just convert the commas to @VM, use LOCATE and convert the @VM 
back to commas?


BTW if the first string is HELL or it is the first entry then counting 
,HELL, won't find it either.

KISS!

Mecki

On 31/10/2011 20:41, George Gallen wrote:

Be careful using a straight count,

Because HELL will be found in in the word HELLO for instance, and would not 
be added
Make sure you surround your search criteria with the delimiters being used, as 
noted in one of the replies.

So, ,HELL, would not be found if ,HELLO, were in the list.

George

-Original Message-
From: u2-users-boun...@listserver.u2ug.org 
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Greg Coelho
Sent: Monday, October 31, 2011 4:15 PM
To: U2 Users List
Subject: Re: [U2] Using 'MATCH'

Guys,

Thanks for the great suggestions.  I believe that I did get MATCH confused
with COUNT thinking that it could navigate a delimiter...  In this
situation I'm thinking that just using COUNT would be the best solution. I
do appreciate the diversity of the solutions presented.

Thanks!

Greg



From:   Woodward, Bobbob_woodw...@k2sports.com
To: U2 Users Listu2-users@listserver.u2ug.org
Date:   10/31/2011 01:55 PM
Subject:Re: [U2] Using 'MATCH'
Sent by:u2-users-boun...@listserver.u2ug.org



You might also be able to use COUNT.

IF COUNT(X.STRING,X.CODE) = 0 THEN X.STRING := X.CODE

Not knowing what your potential codes are, though, they may or may not
fit your needs.

___
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] Avoiding deadly embraces

2011-10-27 Thread Mecki Foerthmann

I think Asvin means this ;D

On 27/10/2011 17:33, Wjhonson wrote:

First explain what you mean, then I can answer it.
How do I do what?



Will wrote:  It seems like some of you have only ever worked on rather simple
  systems, built by yourselves :)
  Try working on systems that have been accreting for twenty years,
  and built by sixteen other programmers over that time period.
Asvin wrote: Big grin - how do you do that in internetese?





-Original Message-
From: asvin.dattaniasvin.datt...@hsbcib.com
To: U2 Users Listu2-users@listserver.u2ug.org
Sent: Thu, Oct 27, 2011 2:36 am
Subject: Re: [U2] Avoiding deadly embraces


  To Asvin, you cannot set locks in the same sequence every time.
  This is because, in a sufficiently complex system you will have
  changes to Customer's possibly affecting Orders, Inventory, Payables...
  You can then have changes to Inventory possibly affecting Orders,
  Customers, Receivables...
  You can then have changes to Receivables, affecting Orders,
  Customers, Inventory...
  You can then have changes to Sales Reps affecting Customers,
rders,Payroll...
I did say if you can arrange it - I understand it may not always be
ossible. Whenever you get a deadly embrace, examine the two programs
nvolved and see if you can reorder the READU's. If you can, then that
ill prevent the problem happening again.

  It seems like some of you have only ever worked on rather simple
  systems, built by yourselves :)
  Try working on systems that have been accreting for twenty years,
  and built by sixteen other programmers over that time period.
Big grin - how do you do that in internetese?
cheers,
asvin

SBC Bank plc may be solicited in the course of its placement efforts for
  new issue, by investment clients of the firm for whom the Bank as a firm
lready provides other services. It may equally decide to allocate to its
wn proprietary book or with an associate of HSBC Group. This represents a
otential conflict of interest. HSBC Bank plc has internal arrangements
esigned to ensure that the firm would give unbiased and full advice to
he corporate finance client about the valuation and pricing of the
ffering as well as internal systems, controls and procedures to identify
nd manage conflicts of interest.
HSBC Bank plc
egistered Office: 8 Canada Square, London E14 5HQ, United Kingdom
egistered in England - Number 14259
uthorised and regulated by the Financial Services Authority.
***


AVE PAPER - THINK BEFORE YOU PRINT!
This transmission has been issued by a member of the HSBC Group
HSBC for the information of the addressee only and should not be
eproduced and/or distributed to any other person. Each page
ttached hereto must be read in conjunction with any disclaimer
hich forms part of it. Unless otherwise stated, this transmission
s neither an offer nor the solicitation of an offer to sell or
urchase any investment. Its contents are based on information
btained from sources believed to be reliable but HSBC makes no
epresentation and accepts no responsibility or liability as to its
ompleteness or accuracy.
__
2-Users mailing list
2-us...@listserver.u2ug.org
ttp://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] [UV] LIST.READU EVERY's waiters when there are writes w/o explicit readu.

2011-10-26 Thread Mecki Foerthmann
You are right, you don't always know in advance which records you need 
to lock.
If the processes are human controlled this can be solved by letting each 
user know who is locking whom out and they can solve the problem 
hopefully themselves.
If phantom processes are doing this you don't have this option and you 
may have to employ the error log option or in case of a single file the 
loop with the sleep or even a combination of the two.
If it is really hairy you may have to use transactions and don't 
commit until all records have been written.
If a locking issue hasn't been resolved within such and such a time just 
release all locks and start again.
So far I never had to do that, but AFAIK UniBasic has that feature and 
if you have so much trouble with phantoms locking each other out you 
should probably look at that option too.

Or maybe ask yourself if you really need that many phantoms?
There is no standard solution for every case but with a bit of thought 
every deadlock situation can be avoided or solved.
In my experience locking problems are caused to 99% by users sitting in 
maintenance screens while they are doing something else like playing 
with spread sheets, sitting in meetings or go home without logging off.

User A gets a message that he can't proceed because user B holds a lock.
If he tries to ring user B and can't reach him he rings IT and I kick 
user B out ;-).

Simple as that! Happens about once a week.
I can live with that, but if it would be happening more frequently or 
with phantoms I would do something about it.
In any case if you use READU use the locked clause because only then you 
have the option to bail out and avoid a deadlock.




On 26/10/2011 01:36, Wjhonson wrote:

It is not possible to know in advance all the locks you may wish to set.
That's the problem.



-Original Message-
From: Charles Stevensonstevenson.c...@gmail.com
To: U2 Users Listu2-users@listserver.u2ug.org
Sent: Tue, Oct 25, 2011 5:22 pm
Subject: Re: [U2] [UV] LIST.READU EVERY's waiters when there are writes w/o 
explicit readu.


While Will's articledoes give a good, clear example of a deadly embrace,
nd remediating faulty code is not trivial, the solution is conceptually
rivial and it is exactly the LOCKED clause that saves us.
If you write new code, deadlocks are easy to prevent.
Testing is non-trivial. It generally requires load or stress testing
here mutiple processes vie for the same locks.
In a nutshell: you shouldn't begin writing ANY part of a logical
ransaction until you own ALL necessary locks.  LOCKED clauses help you
rap cases where you can't get one of those needed locks, allowing you
o release all other related locks, (freeing up everything so the
ompeting process can finish its work), then you try again.   No
eadlocks.  QED.
My problem posed at the start of this thread represents a conceptually
rivial project but it will include retrofitting this anti-deadlock
ogic.  Non-trivial hours.  Opportunity costs.  More consistent data!
All MV platforms support this same solution.
If someone else wants to explain it in further detail for the newbies,
lease, be my guest.
cds
On 10/25/2011 12:27 PM, Wjhonson wrote:
  This is deadly embrace

  
http://knol.google.com/k/will-johnson/deadly-embrace-on-pick-systems/4hmquk6fx4gu/816#view

  The Locked clause does not save us from it.  There is no known trivial
olution to the problem, which troubles all multi-table, multi-user database
nvironments.

  Perhaps we should start a new thread to discuss various approaches to the
ssue.
  ___
  U2-Users mailing list
  U2-Users@listserver.u2ug.org
  http://listserver.u2ug.org/mailman/listinfo/u2-users


__
2-Users mailing list
2-us...@listserver.u2ug.org
ttp://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] [UV] LIST.READU EVERY's waiters when there are writes w/o explicit readu.

2011-10-26 Thread Mecki Foerthmann

Come on, get real.
Do you suggest the deadly embrace would be better and he would get his 
results any quicker?


And anyway, an ER doc not getting his lab results because of a mass 
update process running as a phantom encountering a locked record?
And who would hold a lock on those lab results while they are being 
transferred?


Come up with a real life problem and I'll give you a real life solution.
Remember, the impossible I do straight away but miracles may take a bit 
longer!


Mecki

On 26/10/2011 13:45, Robert Porter wrote:

Accountants... How about a ER doc waiting on lab results for cardiac enzymes? I can hear 
it now: Sorry Doc, something else locked the record. Your patient's test request 
was skipped so we could implement a trivial solution that was suggested for deadly 
embrace. Try again, and hope for the best that it goes through this time.



Robert F. Porter, MCSE, CCNA, ZCE, OCP-Java
Lead Sr. Programmer / Analyst
Laboratory Information Services
Ochsner Health System



This transmission (including any attachments) may contain confidential 
information, privileged material (including material protected by the 
solicitor-client or other applicable privileges), or constitute non-public 
information. Any use of this information by anyone other than the intended 
recipient is prohibited. If you have received this transmission in error, 
please immediately reply to the sender and delete this information from your 
system. Use, dissemination, distribution, or reproduction of this transmission 
by unintended recipients is not authorized and may be unlawful.



Wjhonsonwjhon...@aol.com  10/25/2011 1:20 PM

Your second solution only works if one of the processes is controlled by a 
human.
I've encountered deadly embraces between two phantom routines.

Your first solution works, if we have the luxury of skipping locked records.
Some update routines, don't have that luxury as most accountants will let you 
know quite clearly with loud noises and waving of arms.

___
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] Avoiding deadly embraces

2011-10-26 Thread Mecki Foerthmann

What do you think I am doing day in day out?

I work with Avante 9.2 from Epicor and I definitely didn't write that 
myself.
And this isn't the first system I've worked with in nearly 25 years in 
the MV world.
And to be honest I have barely scratched the surface of Avante since I 
only look at the code if it requires modification or there is a problem.
I don't know how many programmers were involved in writing it but I 
guess it was a lot more than 16.
Some of it looks like it's very old since it uses soft locks and it 
contains some really weird and whacky code.


And yes, we have occasional locking issues but never deadly embraces 
because the software is written in a way that helps to prevent or solve 
them.
The software generally uses standard subroutines to read and lock 
records and notifies the user if somebody else holds a lock and who that 
user is.
It could of course be better and display the user name instead of the 
login ID but most people can figure out whom to ring if they are locked out.
Some programs display only the port so they have to ring IT to find out 
who the user is - but with UniAdmin that is no big deal.
Depending what the process does it gives the user the opportunity to try 
again or abort the process or displays the message until the lock is 
released should the process be in the middle of a multi file update.
Other processes can only to be run by one user at a time and prevent 
anybody else from starting the process.
About once a week I get a call because a lock stops somebody from doing 
their job and I have to kick the offending party off the system.
If they loose their work - tough luck - everybody has been told not to 
leave a screen in the middle of something and walk away.

I haven't had a complaint yet even when I kicked the MD off.
Releasing the lock is hardly ever the right solution.
That's why we have an IT department and what we get paid for - keeping 
the system running.


Should I ever encounter problems like the ones you describe I would 
solve them and not whine about it!
And should I struggle to find a solution I would ask the group for 
advice, take it, try it out and be thankful for it.


Can't be done doesn't exist in my vocabulary.

We have shown you a couple of solutions, but of course it is a lot 
easier to insist on the myth of deadly embraces, blame the stupid 
database system and insult your peers.


Mecki

On 26/10/2011 19:52, Wjhonson wrote:



It seems like some of you have only ever worked on rather simple systems, built 
by yourselves :)
Try working on systems that have been accreting for twenty years, and built by 
sixteen other programmers over that time period.

There is no simple deterministic way to avoid deadly embraces through code 
alone.



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


Re: [U2] [UV] LIST.READU EVERY's waiters when there are writes w/o explicit readu.

2011-10-26 Thread Mecki Foerthmann
I never said anything about blindly (I guess that's what you meant) 
skipping records.
I suggested writing the locked record ids somewhere else and process 
them later for Wills not necessarily life-threatening sales rep update 
phantom.

I at least don't feel threatened by accountants.
If somebody is locking the record there must be a reason for it.
If it's a good one or not doesn't matter.
And who knows, when the process tries again a couple of minutes later 
the lock may have been released by then.
That way a lock on a standard blood test doesn't stop the process from 
sending the important lab report next in line for processing to the ER 
doc you talked about.
If it is really life threatening I would find out who holds the lock and 
take severe action instead.
This could be an email or even a message sent directly to the locking 
screen that they are killing somebody in the hospital if they don't get 
out of Dodge immediately.
And if they don't respond within a minute or so just kick them off the 
system. That will release the lock every time.


You may also think about using optimistic locking for some or all of the 
processes that have users in front of them.

You can even put some extra intelligence into that.
So instead of refusing the update of a record because it has changed 
since it was read you can allow the update of empty attributes.

All this can be done with 2 subroutines. One for reads and one for writes.
It requires to write some code of course. But isn't that what we do for 
a living?


Now I have never worked with lab results and came up with several 
solutions within minutes.

Should be very easy to write for a 15 year veteran.
And it sounds like you've done something similar, so what was so 
incredible hard about it?


But maybe what I regard as easy may appear hard to others.

Mecki

On 26/10/2011 21:44, Robert Porter wrote:

I'm suggesting that blinding skipping records is a HORRIBLE idea, and in our case, potentially life 
threatening - literally. You need to get real with your suggestion that coding for deadly embrace situations is a 
very easy solution (your words). Not every phantom is a mass update.  The IS real-life... we're talking 
about 1/2 dozen hospitals plus around 4 dozen clinics all putting orders in and receiving  status updates  
results in real time 24x7, the possibility for such occurrences takes REAL programming responses not off the cuff and 
rather simplistic canned answers. In fact, record locks for patient's lab results occurs all the time. We've taken 
many steps to minimize the possibility of a deadly embrace occurring - such as wrapping READU calls within a single 
subroutine that allows us significant;y better monitoring and control and programming practices. Some processes that 
lock have users in front of them -MLTs, MTs, MDs  PhDs putting in results and interpretations . Some don't  - 
interfaces in- and out-bound to dozens of systems for example. Sorry, but as I've been working with lab results for 
over 15 years now, I know what I'm talking about. It doesn't get any more real... sorry to burst your bubble. So you 
come on ... admit that programming for this is not a very easy solution.

Robert




Mecki Foerthmannmec...@gmx.net  10/26/2011 2:44 PM

Come on, get real.
Do you suggest the deadly embrace would be better and he would get his
results any quicker?

And anyway, an ER doc not getting his lab results because of a mass
update process running as a phantom encountering a locked record?
And who would hold a lock on those lab results while they are being
transferred?

Come up with a real life problem and I'll give you a real life solution.
Remember, the impossible I do straight away but miracles may take a bit
longer!

Mecki

On 26/10/2011 13:45, Robert Porter wrote:

Accountants... How about a ER doc waiting on lab results for cardiac enzymes? I can hear 
it now: Sorry Doc, something else locked the record. Your patient's test request 
was skipped so we could implement a trivial solution that was suggested for deadly 
embrace. Try again, and hope for the best that it goes through this time.



Robert F. Porter, MCSE, CCNA, ZCE, OCP-Java
Lead Sr. Programmer / Analyst
Laboratory Information Services
Ochsner Health System



This transmission (including any attachments) may contain confidential 
information, privileged material (including material protected by the 
solicitor-client or other applicable privileges), or constitute non-public 
information. Any use of this information by anyone other than the intended 
recipient is prohibited. If you have received this transmission in error, 
please immediately reply to the sender and delete this information from your 
system. Use, dissemination, distribution, or reproduction of this transmission 
by unintended recipients is not authorized and may be unlawful.



Wjhonsonwjhon...@aol.com   10/25/2011 1:20 PM

Your second solution only works if one of the processes is controlled by a 
human.
I've 

Re: [U2] [UV] LIST.READU EVERY's waiters when there are writes w/o explicit readu.

2011-10-25 Thread Mecki Foerthmann

Firstly a file isn't empty any more after the first WRITE.
Secondly we have item and not file locking so if the file is empty or 
not is irrelevant.
And last but not least only if you have exclusive use of a work file for 
instance you may not have to worry about locks and waiting since you are 
holding the lock anyway and nobody else should be able to put one on it. 
But since with lousy programming this is still possible following the 
standard 'Never write without a prior lock' just makes sense.

Better safe than sorry!


On 25/10/2011 17:07, Sammartino, Richard wrote:

What if you were writing to an empty file?

Rich
- Original Message -
From: Mecki Foerthmannmec...@gmx.net
To: u2-users@listserver.u2ug.org
Sent: Monday, October 24, 2011 6:30:08 PM
Subject: Re: [U2] [UV] LIST.READU EVERY's waiters when there are writes w/o 
explicit readu.

Now why would anybody want to use a WRITE without a READU?
I can possibly understand that somebody would want to do it with a
WRITEV (i.e writing a flag on a record) but WRITE?
And WRITE totally ignoring locking would be outright stupid.

On 24/10/2011 22:28, Woodward, Bob wrote:

I would think that because you are not trying to obtain the lock in a
WRITE statement, it would not be classified as a waiter.  True, it's
waiting because of the lock but by not trying to obtain the lock, it's
only waiting for the blockage to clear.  If it were to be classified as
a waiter then I would expect to see a LOCKED clause on the WRITE
statement like there is on the READU.  For that matter, I'd expect to
see a WRITEU command as well and the standard WRITE to completely ignore
locking.

Just my guess, though.

BobW

-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Charles
Stevenson
Sent: Monday, October 24, 2011 2:12 PM
To: U2 Users List
Subject: [U2] [UV] LIST.READU EVERY's waiters when there are writes
w/o explicit readu.

UV 10.2.10 on Windows is behaving differently from what I recall.
Are my expectations out of line?

Suppose Session A holds a readu lock; and Session B attempts a WRITE to
same record withOUT!!! 1st explicitly getting the readu lock.
Session B waits for Session A to release the lock before writing the
record.

While Session B is waiting,  does it show up as a waiter in LIST.READU

EVERY?
I expected so,  but it doesn't.


Session A   Session B
_   ___
1A. ED VOC DUMMY
  (this sets the readu lock.)

2A. (stay in editor)2B. run this:
   01:OPEN 'VOC' TO F ELSE STOPM
'nope'
   02: ***READU REC FROM F, 'DUMMY'
ELSE NULL
   03:WRITE '' TO F, 'DUMMY'

3A. Within ED:
   XEQ LIST.READU EVERY


If I UN-comment line 2, LIST.READU EVERY shows something like this:

   Active Read Waiters:  Owner   Waiter
   Device  Inode Userno  Userno
   746117947232860913  61163396


But when I comment out line 2, LIST.READU is silent.
I have not yet explored what the deadlock daemon does.

TIA,
cds


P.S. Yes, yes, Bad Form, Legacy Software, 20 min wait is
configurable, . . . we can talk later.

___
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
___
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] LIST.READU EVERY's waiters when there are writes w/o explicit readu.

2011-10-25 Thread Mecki Foerthmann

Oh yes there is a very easy solution.
If you write a mass update process like in your example you skip the 
records with a lock and write them to an error log file.

That way you never end up in a deadly embrace.
After you finished the mass update you can then check for skipped 
records and update them later.


Or with the LOCKED clause you can let both parties know who is locking 
whom out and resolve the deadlock amicably by getting the sales person 
to exit the sales rep screen and file the customer record in your 
example. Ideally you should use a subroutine that tells you who is 
locking you out instead of READUs anyway.


Mecki

On 25/10/2011 18:27, Wjhonson wrote:

This is deadly embrace

http://knol.google.com/k/will-johnson/deadly-embrace-on-pick-systems/4hmquk6fx4gu/816#view

The Locked clause does not save us from it.  There is no known trivial solution 
to the problem, which troubles all multi-table, multi-user database 
environments.

Perhaps we should start a new thread to discuss various approaches to the issue.
___
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] LIST.READU EVERY's waiters when there are writes w/o explicit readu.

2011-10-25 Thread Mecki Foerthmann
So you just examine the errors at the end of the process and fix them 
automatically.

The accountants will never know ;-)
Where there is a will there is a solution!

On 25/10/2011 19:20, Wjhonson wrote:

Your second solution only works if one of the processes is controlled by a 
human.
I've encountered deadly embraces between two phantom routines.

Your first solution works, if we have the luxury of skipping locked records.
Some update routines, don't have that luxury as most accountants will let you 
know quite clearly with loud noises and waving of arms.



-Original Message-
From: Mecki Foerthmannmec...@gmx.net
To: u2-usersu2-users@listserver.u2ug.org
Sent: Tue, Oct 25, 2011 10:58 am
Subject: Re: [U2] [UV] LIST.READU EVERY's waiters when there are writes w/o 
explicit readu.


Oh yes there is a very easy solution.
f you write a mass update process like in your example you skip the
ecords with a lock and write them to an error log file.
hat way you never end up in a deadly embrace.
fter you finished the mass update you can then check for skipped
ecords and update them later.
Or with the LOCKED clause you can let both parties know who is locking
hom out and resolve the deadlock amicably by getting the sales person
o exit the sales rep screen and file the customer record in your
xample. Ideally you should use a subroutine that tells you who is
ocking you out instead of READUs anyway.
Mecki
On 25/10/2011 18:27, Wjhonson wrote:
  This is deadly embrace

  
http://knol.google.com/k/will-johnson/deadly-embrace-on-pick-systems/4hmquk6fx4gu/816#view

  The Locked clause does not save us from it.  There is no known trivial
olution to the problem, which troubles all multi-table, multi-user database
nvironments.

  Perhaps we should start a new thread to discuss various approaches to the
ssue.
  ___
  U2-Users mailing list
  U2-Users@listserver.u2ug.org
  http://listserver.u2ug.org/mailman/listinfo/u2-users
__
2-Users mailing list
2-us...@listserver.u2ug.org
ttp://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] [UV] LIST.READU EVERY's waiters when there are writes w/o explicit readu.

2011-10-25 Thread Mecki Foerthmann
You could do it all in one program and run only one phantom, but of 
course you can make it a lot more difficult if you want too.

KISS


On 25/10/2011 20:13, Wjhonson wrote:

I know I'll write a phantom to monitor the phantom and write an error log read 
by a third phantom!

I'll be at the top of the matrix in six years!
___
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] DataVu

2011-10-24 Thread Mecki Foerthmann

Yeah right, if you can get it to connect.

On 24/10/2011 22:20, David Jordan wrote:

The cost is a fraction of Cognos and DataVu provides more development 
functionality.  You also don't have the cost of adding an SQL Server database 
and work to copy from UniData to the SQL Server that you would normally do with 
a Cognos environment.   There is a development license and web based licenses 
for users to access the reports.

I am not experienced with MITS, but from my knowledge MITS first role is to 
develop a data warehouse and then has reporting facility against the 
datawarehouse.  It may not be the right tool if you are not building a data 
warehouse, however I may not be correct in that assessment.

DataVu is a tool that allows users to develop visual dashboards and reports 
from working data rather than data warehouse database like Cognos depends on.  
However it would make life easier to probably set up a separate account that 
you put reporting data into.

The product is not so much a matter of learning how to use, but about getting 
your head around how to use it which is no different to other products.

DataVu provides flexibility to achieve functionality at a low cost.  It 
resolves a problem that most sites have of giving users more access to querying 
data themselves.

Regards
David Jordan

-Original Message-
From: u2-users-boun...@listserver.u2ug.org 
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Kebbon Irwin
Sent: Tuesday, 25 October 2011 3:25 AM
To: u2-users@listserver.u2ug.org
Subject: [U2] DataVu





Does anyone have solid experience with this product yet?  I am particularly 
interested in the license costs for a Unidata environment and some sense of 
what development efforts are required and the quality of the results, 
especially when compared with Cognos or MITS or the others in the 
space.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

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


Re: [U2] [UV] LIST.READU EVERY's waiters when there are writes w/o explicit readu.

2011-10-24 Thread Mecki Foerthmann

Now why would anybody want to use a WRITE without a READU?
I can possibly understand that somebody would want to do it with a 
WRITEV (i.e writing a flag on a record) but WRITE?

And WRITE totally ignoring locking would be outright stupid.

On 24/10/2011 22:28, Woodward, Bob wrote:

I would think that because you are not trying to obtain the lock in a
WRITE statement, it would not be classified as a waiter.  True, it's
waiting because of the lock but by not trying to obtain the lock, it's
only waiting for the blockage to clear.  If it were to be classified as
a waiter then I would expect to see a LOCKED clause on the WRITE
statement like there is on the READU.  For that matter, I'd expect to
see a WRITEU command as well and the standard WRITE to completely ignore
locking.

Just my guess, though.

BobW

-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Charles
Stevenson
Sent: Monday, October 24, 2011 2:12 PM
To: U2 Users List
Subject: [U2] [UV] LIST.READU EVERY's waiters when there are writes
w/o explicit readu.

UV 10.2.10 on Windows is behaving differently from what I recall.
Are my expectations out of line?

Suppose Session A holds a readu lock; and Session B attempts a WRITE to
same record withOUT!!! 1st explicitly getting the readu lock.
Session B waits for Session A to release the lock before writing the
record.

While Session B is waiting,  does it show up as a waiter in LIST.READU

EVERY?
I expected so,  but it doesn't.


Session A   Session B
_   ___
1A. ED VOC DUMMY
 (this sets the readu lock.)

2A. (stay in editor)2B. run this:
  01:OPEN 'VOC' TO F ELSE STOPM
'nope'
  02: ***READU REC FROM F, 'DUMMY'
ELSE NULL
  03:WRITE '' TO F, 'DUMMY'

3A. Within ED:
  XEQ LIST.READU EVERY


If I UN-comment line 2, LIST.READU EVERY shows something like this:

  Active Read Waiters:  Owner   Waiter
  Device  Inode Userno  Userno
  746117947232860913  61163396


But when I comment out line 2, LIST.READU is silent.
I have not yet explored what the deadlock daemon does.

TIA,
cds


P.S. Yes, yes, Bad Form, Legacy Software, 20 min wait is
configurable, . . . we can talk later.

___
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] FAST (File Analysis and Sizing Tool)

2011-10-07 Thread Mecki Foerthmann

Well said Charlie.
I was going to say something similar but you beat me to it again. :-)

Mecki


On 07/10/2011 11:08, Charlie Noah wrote:
I agree with Ross here. Updates every 3-4 weeks sounds like an awful 
lot. I get cranky when I have to install updates for any program that 
often.


I've tried to stay out of this and keep my mouth shut, but this 
mudslinging is just too much. It's beginning to sound like a political 
campaign. Besides, I've never been very good at keeping my mouth shut 
anyway. Doug's blatant attack on FAST is flat-out ugly and uncalled 
for. It really doesn't matter whether what he's saying is true or not.


I find Doug's very frequent ads and arrogant attitude extremely 
annoying, and I would not buy from him just for that reason. But, 
that's just me.


A quilting forum my wife belongs to has a policy that one product 
promotional ad (obvious or subtle) is permitted. After that, you get 
moderated out. A website link is always permitted in the signature, of 
course. That may be something worth looking at here.


Charlie Noah
Charles W. Noah Associates
cwn...@comcast.net

http://www.linkedin.com/in/charlienoah

The views and opinions expressed herein are my own (Charlie Noah) and 
do not necessarily reflect the views, positions or policies of any of 
my former, current or future employers, employees, clients, friends, 
enemies or anyone else who might take exception to them.



On 10-07-2011 12:25 AM, Ross Ferris wrote:
Personally I'd be more than a little worried about a product that had 
s many bugs it required fixes every 3-4 weeks, OR was s 
feature poor that it needed that many tweaks


I would have thought if you were selling a product in this space, 
given that the fundamentals of the file structure haven't been 
undergoing any major enhancements recently that I'm aware, an 
offering should be bug free  feature complete.


Just a casual observation  YMMV

Ross Ferris
Stamina Software
Visage  Better by Design!


-Original Message-
From: u2-users-boun...@listserver.u2ug.org 
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Doug Averch

Sent: Wednesday, 5 October 2011 2:52 PM
To: U2 Users List
Subject: Re: [U2] FAST (File Analysis and Sizing Tool)

Hi Eric:

At the U2 University meeting in 2009, one FAST user told me they paid 
$40,000.00.  Yes, that is 40k for FAST.  The pricing was based on the 
number of users the had on their machine.  Obviously, they had a lot 
of users.


In today's world if you are paying Oracle pricing for this tool from 
written in the 80's with a VBA Client Server interface.  There web 
site is talks about Windows NT/2000.  Windows NT support stopped in 
2004.


Come on, let's use a tool made for this century.  No wonder no 
understands
U2 outside of our world. You guys and gals are extolling to virtues 
of a company that has not even updated their web site in 7 years.


[ad]
Try XLr8Resizer plug-in for Eclipse on a trial basis for FREE, or pay 
U2logic only $99.00 per year.  Save you and your company thousands 
and thousands of dollars.  This tool is state of the art.  We update 
all of our tools every 3 to 4 weeks with enhancements and fixes.

[/ad]

Regards,
Doug
www.u2logic.com
U2 Tools for the rest of us
___
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

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


Re: [U2] SLOW

2011-10-07 Thread Mecki Foerthmann

Maybe you should get him to buy FAST?

sorry, couldn't resist either

Mecki

On 07/10/2011 21:21, Drew William Henderson wrote:

with apologies to Jeff and Peggy...and, ok, everyone else, too!

My boss has noticed today that we've been running SLOW, and isn't  happy about 
it.  He wants to  know if SLOW is industry standard, and what other U2 shops 
might be running SLOW.
I told him that I didn't know about other U2 shops, but that I know a lot of 
SQL shops have been running SLOW for years, and seem to be very satisfied.  I 
also let him know that running SLOW on Friday afternoons was almost industry 
standard, but I'm not sure he's buying it.

So, if you're running SLOW in your environment, please let me know; otherwise, 
we might not be running SLOW on Monday morning.

(sorry...couldn't help myself!  Have a good weekend, all!)

Drew Henderson
Director, Enterprise Systems Architecture and Security
Morehead State University
301 Howell-McDowell Bldg
Morehead, Ky 40351
606/783-2445

___
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] The math just doesn't work.

2011-09-29 Thread Mecki Foerthmann

You didn't read Martin's answer, or did you?
So to what value is WIDEZERO set on your UV system?

On 29/09/2011 16:40, Oaks, Harold wrote:

Running Martin's code on a Universe system, got:
(A+B) = C? YOU ROCK
A = 4096.9, B = 106.19, (A+B) = 4203.09, C = 4203.09

Interesting - Universe does better than Unidata at this particular task.

Harold Oaks
Clark County

-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Brian Leach
Sent: Thursday, September 29, 2011 6:21 AM
To: 'U2 Users List'
Subject: Re: [U2] The math just doesn't work.

And just to add to Martin's excellent answer - the normal workround for
any
computer system is to use integral values, scaling and descaling as
required.


In case you think this is a U2 specific limitation, here's the same in
C# as
a console app -

namespace ConsoleApplication1
{
 class Program
 {
 static void Main(string[] args)
 {
float A = 3176.79f;
 float B = 106.19f;
 float C = 3282.98f;
 float D = 920.11f;
 A = A + D;
C = C + D ;
   if((A+B) != C ){
   Console.WriteLine(You lie, A+B = {0}, C= {1},(A+B), C);
   } else{
   Console.WriteLine(you rock);
   }
   pressAnyKey();
 }

 static void pressAnyKey()
 {
 Console.Write(Press any key ...);
 Console.ReadLine();
 }
 }

}
Result -
You lie, A+B = 4203.09, C= 4203.09




-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Martin
Phillips
Sent: 29 September 2011 13:46
To: U2 Users List
Subject: Re: [U2] The math just doesn't work.

Hi George,

As a general rule in programming, comparison of floating point values
for
equality should be avoided. This is because, just as we cannot write the

number one third accurately in decimal notation, so the IEEE floating
point
format used by computer systems cannot store numbers accurately. The
example

that I use when teaching training courses is 14.2 which actually ends up
as
something close to 14.197.

UniVerse gets around this with a wonderful concept called wide zero
that
says, when testing for equality of floating point numbers, they must be
within some specified value of being equal rather than strictly equal.
The
default wide zero error tolerance, set in IEEE format with the WIDEZERO
configuration parameter, is 2.91 * 10^-11 (2^ 035) which is good for
most
business applications but occasionally needs adjusting.

Unidata has a command, SET.WIDEZERO, to serve the same purpose but
defaults
to 0.0 for backward comaptibility.


Martin Phillips
Ladybridge Systems Ltd
17b Coldstream Lane, Hardingstone, Northampton NN4 6DB, England
+44 (0)1604-709200


- Original Message -
From: George Hammerlezhamme...@hubert.com
To:u2-users@listserver.u2ug.org
Sent: Thursday, September 29, 2011 1:30 PM
Subject: [U2] The math just doesn't work.



Can anybody please help?

For some reason A + B does not equal C in the comparison below. Is

there

any trick to get the comparisons to work properly?

Unidata 7.2 on Hp Unix 11+


Top of TEST.COMP in RMH.MAIN, 13 lines, 263 characters.
*--: P
001: A = 3176.79
002: B = 106.19
003: C = 3282.98
004: D = 920.11
005: A = A + D
006: C = C + D
007: IF (A+B) # C THEN
008:   CRT '(A+B) # C? YOU LIE'
009:   CRT 'A = ':A:', B = ':B:', (A+B) = ':(A+B):', C = ':C
010: END ELSE
011:   CRT '(A+B) = C? YOU ROCK'
012:   CRT 'A = ':A:', B = ':B:', (A+B) = ':(A+B):', C = ':C
013: END
Bottom.
*--: FIBR
Filed TEST.COMP in file RMH.MAIN unchanged.

Compiling Unibasic: /db1/ud1/PGM/RMH.MAIN/TEST.COMP in mode 'u'.
compilation finished

(A+B) # C? YOU LIE
A = 4096.9, B = 106.19, (A+B) = 4203.09, C = 4203.09




George Hammerle
Programming Dude
Hubert Company LLC.
9555 Dry Fork Road
Harrison, Ohio 45030
513-367-8974
zhammerle@hubertREMOVE_THIS.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

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] The math just doesn't work.

2011-09-29 Thread Mecki Foerthmann

I actually wonder if this feature is flavour specific?
Pick didn't use floating point arithmetic and IIRC the default precision 
used to be 4.

I'll give it a try tomorrow since we are running UD in Pick flavour at work.

On 29/09/2011 19:32, Oaks, Harold wrote:

Mecki:
Oops, that's right - Martin pointed out it would work in Universe - it
did.

In our uvconfig file the variable setting is
WIDE0 3dc0
which is the default value.

In case anyone wishes to change the value, note that the WIDE0 variable
has an entire appendix devoted to it in the Administering Universe
guide.
Harold

-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Mecki
Foerthmann
Sent: Thursday, September 29, 2011 8:53 AM
To: u2-users@listserver.u2ug.org
Subject: Re: [U2] The math just doesn't work.

You didn't read Martin's answer, or did you?
So to what value is WIDEZERO set on your UV system?

On 29/09/2011 16:40, Oaks, Harold wrote:

Running Martin's code on a Universe system, got:
(A+B) = C? YOU ROCK
A = 4096.9, B = 106.19, (A+B) = 4203.09, C = 4203.09

Interesting - Universe does better than Unidata at this particular

task.

Harold Oaks
Clark County

-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Brian Leach
Sent: Thursday, September 29, 2011 6:21 AM
To: 'U2 Users List'
Subject: Re: [U2] The math just doesn't work.

And just to add to Martin's excellent answer - the normal workround

for

any
computer system is to use integral values, scaling and descaling as
required.


In case you think this is a U2 specific limitation, here's the same in
C# as
a console app -

namespace ConsoleApplication1
{
  class Program
  {
  static void Main(string[] args)
  {
 float A = 3176.79f;
  float B = 106.19f;
  float C = 3282.98f;
  float D = 920.11f;
  A = A + D;
 C = C + D ;
if((A+B) != C ){
Console.WriteLine(You lie, A+B = {0}, C= {1},(A+B),

C);

} else{
Console.WriteLine(you rock);
}
pressAnyKey();
  }

  static void pressAnyKey()
  {
  Console.Write(Press any key ...);
  Console.ReadLine();
  }
  }

}
Result -
You lie, A+B = 4203.09, C= 4203.09




-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Martin
Phillips
Sent: 29 September 2011 13:46
To: U2 Users List
Subject: Re: [U2] The math just doesn't work.

Hi George,

As a general rule in programming, comparison of floating point values
for
equality should be avoided. This is because, just as we cannot write

the

number one third accurately in decimal notation, so the IEEE floating
point
format used by computer systems cannot store numbers accurately. The
example

that I use when teaching training courses is 14.2 which actually ends

up

as
something close to 14.197.

UniVerse gets around this with a wonderful concept called wide zero
that
says, when testing for equality of floating point numbers, they must

be

within some specified value of being equal rather than strictly equal.
The
default wide zero error tolerance, set in IEEE format with the

WIDEZERO

configuration parameter, is 2.91 * 10^-11 (2^ 035) which is good for
most
business applications but occasionally needs adjusting.

Unidata has a command, SET.WIDEZERO, to serve the same purpose but
defaults
to 0.0 for backward comaptibility.


Martin Phillips
Ladybridge Systems Ltd
17b Coldstream Lane, Hardingstone, Northampton NN4 6DB, England
+44 (0)1604-709200


- Original Message -
From: George Hammerlezhamme...@hubert.com
To:u2-users@listserver.u2ug.org
Sent: Thursday, September 29, 2011 1:30 PM
Subject: [U2] The math just doesn't work.



Can anybody please help?

For some reason A + B does not equal C in the comparison below. Is

there

any trick to get the comparisons to work properly?

Unidata 7.2 on Hp Unix 11+


Top of TEST.COMP in RMH.MAIN, 13 lines, 263 characters.
*--: P
001: A = 3176.79
002: B = 106.19
003: C = 3282.98
004: D = 920.11
005: A = A + D
006: C = C + D
007: IF (A+B) # C THEN
008:   CRT '(A+B) # C? YOU LIE'
009:   CRT 'A = ':A:', B = ':B:', (A+B) = ':(A+B):', C = ':C
010: END ELSE
011:   CRT '(A+B) = C? YOU ROCK'
012:   CRT 'A = ':A:', B = ':B:', (A+B) = ':(A+B):', C = ':C
013: END
Bottom.
*--: FIBR
Filed TEST.COMP in file RMH.MAIN unchanged.

Compiling Unibasic: /db1/ud1/PGM/RMH.MAIN/TEST.COMP in mode 'u'.
compilation finished

(A+B) # C? YOU LIE
A = 4096.9, B = 106.19, (A+B) = 4203.09, C = 4203.09




 George Hammerle
 Programming Dude
 Hubert Company LLC.
 9555 Dry Fork Road
 Harrison, Ohio 45030
 513-367-8974
 zhammerle

Re: [U2] I-type Subvalue question

2011-09-13 Thread Mecki Foerthmann
That may be right but most of the examples are for single value 
attributes and most of the problems we face are with multi-valued ones.


On 13/09/2011 02:13, Boydell, Stuart wrote:

For future reference, the doc set comes with a full-text index (the .pdx file) 
that allows you to search (words, phrases, etc) across all the docs in the set.
http://help.adobe.com/en_US/Acrobat/8.0/Standard/help.html?content=WS58a04a822e3e50102bd615109794195ff-7c3d.html


-Original Message-
From: u2-users-boun...@listserver.u2ug.org 
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of John Thompson
Sent: Tuesday, 13 September 2011 11:01
To: U2 Users List
Subject: Re: [U2] I-type Subvalue question

Therein lies my beef with the U2 docs.  A million pdf's with bad search 
features.  You guys are way faster :)

On 9/12/11, Boydell, Stuartstuart.boyd...@spotless.com.au  wrote:

It's documented in the basic reference manual. Look under TRANS()
:)

-Original Message-
On Behalf Of John Thompson
Sent: Tuesday, 13 September 2011 06:39
To: U2 Users List
Subject: Re: [U2] I-type Subvalue question

The @11,1,1  worked.

Weird...  So the output is not the same as whats in the data?

Be nice of them to document that :)



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


--
Sent from my mobile device

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

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


Re: [U2] Unidata 7.1.22 Index Issue

2011-09-09 Thread Mecki Foerthmann

You may have a problem with leading zeroes.
Are there by any chance 2 records with 9 in Record120,2?

On 09/09/2011 04:08, Kevin King wrote:

What can I get you Wally?  We did a CREATE.INDEX WO SHOP.CODE NO.NULLS
followed by BUILD.INDEX WO SHOP.CODE.  The index seems to work fine
immediately after.  If the shop code in the record changes, however, the
index does not seem to reflect the change.  This is evidenced by:

DISABLE INDEX WO
SELECT WO WITH SHOP.CODE = 09
21 items selected
CLEARSELECT
ENABLE.INDEX WO
SELECT WO WITH SHOP.CODE = 09
19 items selected
CLEARSELECT
DISABLE.INDEX WO
SELECT WO WITH SHOP.CODE = 09
21 items selected

What else can I get you?

On Thu, Sep 8, 2011 at 5:58 PM, Wally Terhune
wterh...@rocketsoftware.comwrote:


Not enough information.

Wally Terhune
U2 Support Architect
Rocket Software
4600 South Ulster Street, Suite 1100 ..Denver, CO 80237 ..USA
Tel: +1.720.475.8055
Email: wterh...@rs.com
Web: www.rocketsoftware.com/u2



-Original Message-
From: u2-users-boun...@listserver.u2ug.org [mailto:
u2-users-boun...@listserver.u2ug.org] On Behalf Of Kevin King
Sent: Thursday, September 08, 2011 5:42 PM
To: U2 Users List
Subject: [U2] Unidata 7.1.22 Index Issue

We have a customer on Unidata 7.1.22 running the Prelude application.  They
have an index on a field in a file that looks like this:

Top of SHOP.CODE in DICT WO, 9 lines, 82 characters.
*--: P
001: V
002: EXTRACT(@RECORD,110,2,0)
003:
004: Shop Code
005: 2L
006: S
007:
008: SHOP.CODEýýEXTRACT(@RECORD,110,2,0)
009: WO
Bottom.

Because this field is extracting from @RECORD, we should be able to index
it
without problems, right?  However, the reality is starkly different.  The
other data indexes work fine, but this derived index does not seem to be
getting updated properly.

-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





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


Re: [U2] Lock Status

2011-09-08 Thread Mecki Foerthmann

I dare to disagree.
If you ALWAYS use a subroutine that records the pid, the file, item Id 
and program on a logfile when you want to read and lock a record and 
ALWAYS use a subroutine that removes the info from the logfile to write 
or release this could work.

Otherwise it won't.

On 08/09/2011 20:39, Wjhonson wrote:

This still would not be accurate for the reasons already stated.
The call stack only shows you what routine is on the stack.  If the lock had 
been set for hours, who knows what routine was there previously?
As you yourself stated, locks can persist, after the routine which created them 
has gone away.

The only viable solution is to record the lock at the time it is set.






-Original Message-
From: George Hammerlezhamme...@hubert.com
To: u2-usersu2-users@listserver.u2ug.org
Sent: Thu, Sep 8, 2011 12:36 pm
Subject: Re: [U2] Lock Status



ven if the program ended that locked the item, the lock could still be
aintained if the file variable was passed.
I know this is after the fact but, one option going forward would be to write a
rapper program for READU's and call it LOCK.RECORD. I use this approach
xtensively.
CALL *LOCK.RECORD( R.RECORD, KEY.TO.RECORD, FILE.VARIABLE )
1. If it is a phantom, perform a READU
. If it is a real user, use the LOCKED clause
a. If it is locked, display whom has it locked followed by an INPUT ( if it is
B+, use a DISP ).
b. If it is not locked, lock it.
  This allows them to see who has them locked and contact the guilty party
. NEW OPTION : Once locked, you could get the call stack and record to a file
hich program locked it ( excluding this sub - LOCK.RECORD ). Or you could add
n additional parameter to this sub and pass in the program name.

e already do 1 and 2, but 3 would be an interesting option.

e also have a sub called LOCK.RECORD.ESCAPE that gives the user the option to
scape if the record is locked and it also displays who has them locked. We only
se this option when it is safe to escape and it sends back ESCAPED 1 or 0 so
e can handle the escape properly.


This e-mail and any files transmitted with it are confidential and intended
olely for the use of the individual or company to whom they are addressed. If
ou have received this e-mail in error, please notify the sender immediately and
elete this e-mail including all attachments from your system. Thank you
__
2-Users mailing list
2-us...@listserver.u2ug.org
ttp://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] Lock Status

2011-09-08 Thread Mecki Foerthmann

Now that's a program I'd like to see.
I've been trying to write one that makes cups of coffee, but so far no 
luck.:-D
I always tell my clients when they ask me for things that can't be done 
without rewriting the whole system, that I will do the impossible 
straight away, but miracles may take a bit longer.


Mecki

On 08/09/2011 21:48, Wjhonson wrote:

If you rewrote your system to whip eggs, then it would whip eggs.
But this doesn't fix the underlying issue that there are many systems already 
out there, which cannot whip eggs.

And which you do not have the luxury to rewrite, but have to live with them the 
way they are.
There IS a way to get around this problem, but not retroactively, only 
proactively.





-Original Message-
From: Mecki Foerthmannmec...@gmx.net
To: u2-usersu2-users@listserver.u2ug.org
Sent: Thu, Sep 8, 2011 1:28 pm
Subject: Re: [U2] Lock Status


I dare to disagree.
f you ALWAYS use a subroutine that records the pid, the file, item Id
nd program on a logfile when you want to read and lock a record and
LWAYS use a subroutine that removes the info from the logfile to write
r release this could work.
therwise it won't.
On 08/09/2011 20:39, Wjhonson wrote:
  This still would not be accurate for the reasons already stated.
  The call stack only shows you what routine is on the stack.  If the lock had
een set for hours, who knows what routine was there previously?
  As you yourself stated, locks can persist, after the routine which created
hem has gone away.

  The only viable solution is to record the lock at the time it is set.






  -Original Message-
  From: George Hammerlezhamme...@hubert.com
  To: u2-usersu2-users@listserver.u2ug.org
  Sent: Thu, Sep 8, 2011 12:36 pm
  Subject: Re: [U2] Lock Status



  ven if the program ended that locked the item, the lock could still be
  aintained if the file variable was passed.
  I know this is after the fact but, one option going forward would be to write

  rapper program for READU's and call it LOCK.RECORD. I use this approach
  xtensively.
  CALL *LOCK.RECORD( R.RECORD, KEY.TO.RECORD, FILE.VARIABLE )
  1. If it is a phantom, perform a READU
  . If it is a real user, use the LOCKED clause
  a. If it is locked, display whom has it locked followed by an INPUT ( if it is
  B+, use a DISP ).
  b. If it is not locked, lock it.
This allows them to see who has them locked and contact the guilty party
  . NEW OPTION : Once locked, you could get the call stack and record to a file
  hich program locked it ( excluding this sub - LOCK.RECORD ). Or you could add
  n additional parameter to this sub and pass in the program name.

  e already do 1 and 2, but 3 would be an interesting option.

  e also have a sub called LOCK.RECORD.ESCAPE that gives the user the option to
  scape if the record is locked and it also displays who has them locked. We
nly
  se this option when it is safe to escape and it sends back ESCAPED 1 or 0 so
  e can handle the escape properly.


  This e-mail and any files transmitted with it are confidential and intended
  olely for the use of the individual or company to whom they are addressed. If
  ou have received this e-mail in error, please notify the sender immediately
nd
  elete this e-mail including all attachments from your system. Thank you
  __
  2-Users mailing list
  2-us...@listserver.u2ug.org
  ttp://listserver.u2ug.org/mailman/listinfo/u2-users

  ___
  U2-Users mailing list
  U2-Users@listserver.u2ug.org
  http://listserver.u2ug.org/mailman/listinfo/u2-users
__
2-Users mailing list
2-us...@listserver.u2ug.org
ttp://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] DataVu Query [ad]

2011-09-07 Thread Mecki Foerthmann

It doesn't give me a choice which connector to use.
As I said, I can connect to UD 5.2 and UD 7.2 on two different servers 
with any other client software on my PC (SBClient, UniAdmin, 
mvDeveloper, VSG) by just entering the server name.



On 07/09/2011 02:45, David Jordan wrote:

Hi Mecki

You should not need a jdbc driver, this is why I suspect you maybe using the 
data connector for RDBMs databases instead of U2 data connector which uses 
uniobjects.

David Jordan

-Original Message-
From: u2-users-boun...@listserver.u2ug.org 
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Mecki Foerthmann
Sent: Wednesday, 7 September 2011 9:02 AM
To: u2-users@listserver.u2ug.org
Subject: Re: [U2] DataVu Query [ad]

David,

I bet you are right, but what users want is to be able to install software like 
that without having to search the documentation for hours.
I don't mind if I have to search for and download a JDBC driver from the net to 
connect to SQL Server, DB2 or Oracle data sources but I expect a Rocket product 
to work straight away for U2.
I get a screen that asks me for the UD server name and even though that name 
one works for SB client, VSG, UniAdmin and tools like mvDeveloper it won't 
connect in DataVu.
All I found so far is that I need this driver (hell knows where to get it from) 
and a file called bi.jdbc,drivers (or something like that) that needs to be 
created somewhere by the administrator.
Hell, I am the administrator and I haven't got a clue how to do that!


On 06/09/2011 23:22, David Jordan wrote:

Mecki
You do not need a JDBC driver, it uses uniobjects.   There is a video showing 
how to install and read the documentation.   The installation is not intuitive, 
but it is not hard.   I made the mistake first not to read the documentation 
which takes you through step by step.

Regards
David Jordan

-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Gerd
Forthmann
Sent: Wednesday, 7 September 2011 1:00 AM
To: U2 Users List
Subject: Re: [U2] DataVu Query [ad]

Well, I can't even connect to the host. A get an error message U2DB1004.
I reckon you guys really need to make this a lot easier if you want people tto 
use this and buy the other modules.
In the documentation it says something about a JDBC driver that needs to be 
installed but isn't included in the package and some obscure file that needs to 
be created somewhere and contains connection data but to me this is just Greek 
and doesn't mean anything.
Other products like mvDeveloper just work without having to find a driver 
somewhere and create any files by hand.
I bet you can do better than that.

Mecki
 Original-Nachricht 

Datum: Fri, 2 Sep 2011 17:20:14 +
Von: Daniel McGrathdmcgr...@rocketsoftware.com
An: U2 Users Listu2-users@listserver.u2ug.org
Betreff: Re: [U2] DataVu Query [ad]
Okay, so once you download DV Query there is a quick start guide that
will tell you what you need to do.

You need to run CONVERT.SQL on your files so that it has access to
them, but you don't need to worry about creating the schemas with VSG
or using HS.ADMIN like you would otherwise. Actually, there is a way
to just use UPDATE.SQL.PRIVILEGES to get around this
(https://u2tc.rocketsoftware.com/documentation/1410030.asp), although we 
recommend you do the CONVERT.SQL way.

If you are running older versions of U2 you may need to update
XTOOLSUB, which is also a Tech note on TechConnect.

-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Steve
Romanow
Sent: Friday, September 02, 2011 11:14 AM
To: U2 Users List
Subject: Re: [U2] DataVu Query [ad]

On Fri, Sep 2, 2011 at 1:04 PM, Bill Haskettwphask...@advantos.net
wrote:

Steve:

Really?  I was looking at DataVu for UniData and I understood that I
did need to SQL'ize all my data.  So, if I hosted a number of
accounts I'd have to go through the entire process of figuring how
to duplicate the accounts for SQL file access, keep them all
straight, and fight with all that this entails.

Are you sure I misunderstood this?

Thanks,

Bill Haskett


--
--
- Original Message -
*From:* slestak...@gmail.com
*To:* U2 Users Listu2-users@listserver.u2ug.org
*Date:* 9/2/2011 9:47 AM
*Subject:* Re: [U2] DataVu Query [ad]

On Fri, Sep 2, 2011 at 12:45 PM, John
Thompsonjthompson...@gmail.com
   wrote:

For example:

If my goal was to teach a fairly savvy computer user to get data
out of
U2
into, lets say Excel... without the user coming to ask me to write
some query for them...

What would be the pros/cons of doing the ODBC way, vs. doing it
the DataVu way?

Forgive my ignorance... Does that make sense?

On Fri, Sep 2, 2011 at 12:41 PM, Daniel
McGrathdmcgr...@rocketsoftware.com

wrote:
I'm not entirely sure on what you want here?

DataVu (the free Query and paid

Re: [U2] DataVu Query [ad]

2011-09-07 Thread Mecki Foerthmann

I haven't tried the slashes. Maybe that does the trick.


On 07/09/2011 00:08, Wjhonson wrote:

I also have a weirdness with that server name.
Either it wanted the \\ in front or it didn't I can't remember which.
I do remember fiddling with that field.
Too bad it can't query What drives are you attached to anyway? and give me 
those as options :)











-Original Message-
From: Mecki Foerthmannmec...@gmx.net
To: u2-usersu2-users@listserver.u2ug.org
Sent: Tue, Sep 6, 2011 4:03 pm
Subject: Re: [U2] DataVu Query [ad]


David,
I bet you are right, but what users want is to be able to install
oftware like that without having to search the documentation for hours.
  don't mind if I have to search for and download a JDBC driver from the
et to connect to SQL Server, DB2 or Oracle data sources but I expect a
ocket product to work straight away for U2.
  get a screen that asks me for the UD server name and even though that
ame one works for SB client, VSG, UniAdmin and tools like mvDeveloper
t won't connect in DataVu.
ll I found so far is that I need this driver (hell knows where to get
t from) and a file called bi.jdbc,drivers (or something like that) that
eeds to be created somewhere by the administrator.
ell, I am the administrator and I haven't got a clue how to do that!

n 06/09/2011 23:22, David Jordan wrote:
  Mecki
  You do not need a JDBC driver, it uses uniobjects.   There is a video showing
ow to install and read the documentation.   The installation is not intuitive,
ut it is not hard.   I made the mistake first not to read the documentation
hich takes you through step by step.

  Regards
  David Jordan

  -Original Message-
  From: u2-users-boun...@listserver.u2ug.org 
[mailto:u2-users-boun...@listserver.u2ug.org]
n Behalf Of Gerd Forthmann
  Sent: Wednesday, 7 September 2011 1:00 AM
  To: U2 Users List
  Subject: Re: [U2] DataVu Query [ad]

  Well, I can't even connect to the host. A get an error message U2DB1004.
  I reckon you guys really need to make this a lot easier if you want people tto
se this and buy the other modules.
  In the documentation it says something about a JDBC driver that needs to be
nstalled but isn't included in the package and some obscure file that needs to
e created somewhere and contains connection data but to me this is just Greek
nd doesn't mean anything.
  Other products like mvDeveloper just work without having to find a driver
omewhere and create any files by hand.
  I bet you can do better than that.

  Mecki
   Original-Nachricht 

Datum: Fri, 2 Sep 2011 17:20:14 +
Von: Daniel McGrathdmcgr...@rocketsoftware.com
An: U2 Users Listu2-users@listserver.u2ug.org
Betreff: Re: [U2] DataVu Query [ad]
Okay, so once you download DV Query there is a quick start guide that
will tell you what you need to do.

You need to run CONVERT.SQL on your files so that it has access to
them, but you don't need to worry about creating the schemas with VSG
or using HS.ADMIN like you would otherwise. Actually, there is a way
to just use UPDATE.SQL.PRIVILEGES to get around this
(https://u2tc.rocketsoftware.com/documentation/1410030.asp), although we

ecommend you do the CONVERT.SQL way.

If you are running older versions of U2 you may need to update
XTOOLSUB, which is also a Tech note on TechConnect.

-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Steve
Romanow
Sent: Friday, September 02, 2011 11:14 AM
To: U2 Users List
Subject: Re: [U2] DataVu Query [ad]

On Fri, Sep 2, 2011 at 1:04 PM, Bill Haskettwphask...@advantos.net
wrote:

Steve:

Really?  I was looking at DataVu for UniData and I understood that I
did need to SQL'ize all my data.  So, if I hosted a number of
accounts I'd have to go through the entire process of figuring how
to duplicate the accounts for SQL file access, keep them all
straight, and fight with all that this entails.

Are you sure I misunderstood this?

Thanks,

Bill Haskett


--
--
- Original Message -
*From:* slestak...@gmail.com
*To:* U2 Users Listu2-users@listserver.u2ug.org
*Date:* 9/2/2011 9:47 AM
*Subject:* Re: [U2] DataVu Query [ad]

On Fri, Sep 2, 2011 at 12:45 PM, John
Thompsonjthompson...@gmail.com
   wrote:

For example:

If my goal was to teach a fairly savvy computer user to get data
out of
U2
into, lets say Excel... without the user coming to ask me to write
some query for them...

What would be the pros/cons of doing the ODBC way, vs. doing it
the DataVu way?

Forgive my ignorance... Does that make sense?

On Fri, Sep 2, 2011 at 12:41 PM, Daniel
McGrathdmcgr...@rocketsoftware.com

wrote:
I'm not entirely sure on what you want here?

DataVu (the free Query and paid Report Dashboard products) are
querying, reporting and dashboard tools whereas ODBC is just an
interface.


-Original Message-
From: u2-users-boun...@listserver.u2ug.org [mailto:

Re: [U2] DataVu Query [ad]

2011-09-06 Thread Mecki Foerthmann

David,

I bet you are right, but what users want is to be able to install 
software like that without having to search the documentation for hours.
I don't mind if I have to search for and download a JDBC driver from the 
net to connect to SQL Server, DB2 or Oracle data sources but I expect a 
Rocket product to work straight away for U2.
I get a screen that asks me for the UD server name and even though that 
name one works for SB client, VSG, UniAdmin and tools like mvDeveloper 
it won't connect in DataVu.
All I found so far is that I need this driver (hell knows where to get 
it from) and a file called bi.jdbc,drivers (or something like that) that 
needs to be created somewhere by the administrator.

Hell, I am the administrator and I haven't got a clue how to do that!


On 06/09/2011 23:22, David Jordan wrote:

Mecki
You do not need a JDBC driver, it uses uniobjects.   There is a video showing 
how to install and read the documentation.   The installation is not intuitive, 
but it is not hard.   I made the mistake first not to read the documentation 
which takes you through step by step.

Regards
David Jordan

-Original Message-
From: u2-users-boun...@listserver.u2ug.org 
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Gerd Forthmann
Sent: Wednesday, 7 September 2011 1:00 AM
To: U2 Users List
Subject: Re: [U2] DataVu Query [ad]

Well, I can't even connect to the host. A get an error message U2DB1004.
I reckon you guys really need to make this a lot easier if you want people tto 
use this and buy the other modules.
In the documentation it says something about a JDBC driver that needs to be 
installed but isn't included in the package and some obscure file that needs to 
be created somewhere and contains connection data but to me this is just Greek 
and doesn't mean anything.
Other products like mvDeveloper just work without having to find a driver 
somewhere and create any files by hand.
I bet you can do better than that.

Mecki
 Original-Nachricht 

Datum: Fri, 2 Sep 2011 17:20:14 +
Von: Daniel McGrathdmcgr...@rocketsoftware.com
An: U2 Users Listu2-users@listserver.u2ug.org
Betreff: Re: [U2] DataVu Query [ad]
Okay, so once you download DV Query there is a quick start guide that
will tell you what you need to do.

You need to run CONVERT.SQL on your files so that it has access to
them, but you don't need to worry about creating the schemas with VSG
or using HS.ADMIN like you would otherwise. Actually, there is a way
to just use UPDATE.SQL.PRIVILEGES to get around this
(https://u2tc.rocketsoftware.com/documentation/1410030.asp), although we 
recommend you do the CONVERT.SQL way.

If you are running older versions of U2 you may need to update
XTOOLSUB, which is also a Tech note on TechConnect.

-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Steve
Romanow
Sent: Friday, September 02, 2011 11:14 AM
To: U2 Users List
Subject: Re: [U2] DataVu Query [ad]

On Fri, Sep 2, 2011 at 1:04 PM, Bill Haskettwphask...@advantos.net
wrote:

Steve:

Really?  I was looking at DataVu for UniData and I understood that I
did need to SQL'ize all my data.  So, if I hosted a number of
accounts I'd have to go through the entire process of figuring how
to duplicate the accounts for SQL file access, keep them all
straight, and fight with all that this entails.

Are you sure I misunderstood this?

Thanks,

Bill Haskett


--
--
- Original Message -
*From:* slestak...@gmail.com
*To:* U2 Users Listu2-users@listserver.u2ug.org
*Date:* 9/2/2011 9:47 AM
*Subject:* Re: [U2] DataVu Query [ad]

On Fri, Sep 2, 2011 at 12:45 PM, John
Thompsonjthompson...@gmail.com
  wrote:

For example:

If my goal was to teach a fairly savvy computer user to get data
out of
U2
into, lets say Excel... without the user coming to ask me to write
some query for them...

What would be the pros/cons of doing the ODBC way, vs. doing it
the DataVu way?

Forgive my ignorance... Does that make sense?

On Fri, Sep 2, 2011 at 12:41 PM, Daniel
McGrathdmcgr...@rocketsoftware.com

wrote:
I'm not entirely sure on what you want here?

DataVu (the free Query and paid ReportDashboard products) are
querying, reporting and dashboard tools whereas ODBC is just an
interface.


-Original Message-
From: u2-users-boun...@listserver.u2ug.org [mailto:
u2-users-boun...@listserver.u2ug.org] On Behalf Of John Thompson
Sent: Friday, September 02, 2011 10:36 AM
To: U2 Users List
Subject: Re: [U2] DataVu Query [ad]

Is there a comparison chart of DataVu vs. ODBC?

I am planning on investigating both for reporting purposes, but,
I was just curious if there was anything out there that listed
the pros and cons of both in a nice little table.


On Fri, Sep 2, 2011 at 12:31 PM, Daniel McGrath
dmcgr...@rocketsoftware.com

wrote:
Free as in free beer on the house.

Just install and run. There is 

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

2011-09-02 Thread Mecki Foerthmann

Doug,

Your scenario may work for the classical programmer who just types in 
code that somebody else has written on paper all day, but who actually 
does this these days?

Certainly not me!
And it is not the number of lines of code you can type in a certain 
amount of time, it is the quality of the code and even more the logic 
that counts.
So unless your expensive tool can improve that, I wouldn't waste money 
on it!


And your story about CEOs of fortune 1000 companies being interested in 
the editor you use to write code?

You can tell that to somebody who puts on a hat with a hammer but not me.

Mecki


On 01/09/2011 21:36, Doug Averch wrote:

Hi Mecki:

Let us say, for example, that you can produce 60 lines of debugged code per
hour.  You cost the company $60.00 per hour including benefits.  So the cost
of each line of code is $1.00. You will produce in theory (160/hrs*60)  9600
lines of code per month for a cost of $9600.00.

This amazing tool from U2logic comes along and you produce a extra 10 lines
of code per hour.  You will produce in theory 160/hrs*70) 9670 line of code
for the same cost of 9600.00 saving the company $70.00.  So the $49.00 you
pay U2logic, pays for itself in about a month in this scenario. This math
works if you productivity is only increase by one line per hour.  You only
have to have 49 programming hours in this Eclipse based tool to pay for it,
or about a week and two days.

We use this tool everyday and so does many U2 programmers throughout the
world.  We know I'm more productive than I was using any of my former tools:
VI, or EMACS, or Notepad, or AE, or ED.  If you are not a programmer, then
this, or any tool, as limited value.  But for the rest of us and our boss,
they want us productive and our code clean.

After being at Fortune 1000 companies and showing our software applications,
we would not dare to show anyone how we have to edit program using the
built-in editors in Unidata and Universe.  Before we developed our Eclipse
based editor, every CIO or CTO or CEO or just middle management asked us all
of the time: Is this a DOS tool?  Of course not we would answer and not get
the sale!

Regards,
Doug
www.u2logic.com/tools.html
XLr8Editor for real U2 programmers

On Thu, Sep 1, 2011 at 1:28 AM, Mecki Foerthmannmec...@gmx.net  wrote:


Doug,
How does my company save money if they have to buy and pay an annual
license fee for an editor?
They might as well ban going to the toilet or making and drinking coffee
during working hours.
I probably could be even more productive if the company would pay ME more
and not you.

I can understand that it must be frustrating for you having spent a lot of
time developing a piece of software that nobody wants to buy.
But threatening that we will all loose our jobs and be replaced by 25 year
old kids with no clue if we don't convince our boss to buy your tool won't
change that.
Writing code is time wise the least of my daily tasks.
And I guess like me most of us here are analysts first and coders last.

Mecki

___
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] PC based UniBasic program editor for 64 bit OS

2011-09-01 Thread Mecki Foerthmann

Doug,
How does my company save money if they have to buy and pay an annual 
license fee for an editor?
They might as well ban going to the toilet or making and drinking coffee 
during working hours.
I probably could be even more productive if the company would pay ME 
more and not you.


I can understand that it must be frustrating for you having spent a lot 
of time developing a piece of software that nobody wants to buy.
But threatening that we will all loose our jobs and be replaced by 25 
year old kids with no clue if we don't convince our boss to buy your 
tool won't change that.

Writing code is time wise the least of my daily tasks.
And I guess like me most of us here are analysts first and coders last.

Mecki

On 01/09/2011 02:18, Doug Averch wrote:

Eclipse runs as client software. You have plenty of disk space on your
workstation.  Your workstation CPU is barely registering when you are using
any Eclipse based software.

If you don't want to use a tool that will save your company money, too bad
for you but your boss does.  If you are worried about your client machine
that cost nothing compared to what an unproductive programmer wastes using
antiquated tools, you may not have a job next year.

Do you think any twenty-five year old programmer would be caught dead with
line editor like AE, ED, VIM, EMACS, Notepad+, or whatever?

Regards,
Doug
www.u2logic.com/tools.html
Building tools for the next generation
___
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] Simple Masking of Password Input (Universe Basic)

2011-08-17 Thread Mecki Foerthmann

When I was a Junior programmer I wrote pretty much the same piece of code.
Unfortunately the users hated it!
For the sake of displaying something when they typed a password they 
lost the ability to correct typing mistakes.

Because with INPUT,1 the Backspace key doesn't work!
So I had to go back to the drawing board and eventually ended up writing 
a Line Editor ;-).


On 17/08/2011 18:15, nschroth wrote:

Thanks for all the suggestions.  I went with a variation, using ECHO OFF/ON
and and specific screen position for the input.  Had problems detecting
CHAR(13). Learned that INPUT @ screws up things, so utilized the CRT@ for
positioning.  I'll look into adding backspace handling next. Here is what I
ended up with:

PROMPT ''
INCHAR='X'
PASSWD=''
CRT @(0,5):'Enter Password: ':
ECHO OFF
POS=16
LOOP UNTIL INCHAR=''
CRT @(POS,5):
INPUT INCHAR,1:
PASSWD:=INCHAR
CRT @(POS,5):'*'
POS+=1
REPEAT
ECHO ON



Israel, John R. wrote:

That's actually pretty good!


John Israel
Senior Programmer/Analyst
Dayton Superior Corporation
1125 Byers Road
Miamisburg, OH  45342

-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Mark Eastwood
Sent: Tuesday, August 16, 2011 3:43 PM
To: U2 Users List
Subject: Re: [U2] Simple Masking of Password Input (Universe Basic)

Just a quick sample

   PROMPT ''
   PW=''
   ECHO OFF
   LOOP
  INPUT X,1:
  IF X = '' THEN EXIT
  IF X THEN PRINT '*':
  PW := X
   REPEAT
   ECHO ON
   PRINT
   PRINT PW


-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of nschroth
Sent: Tuesday, August 16, 2011 1:52 PM
To: u2-users@listserver.u2ug.org
Subject: [U2] Simple Masking of Password Input (Universe Basic)


Does anyone have a simple routine for entering a password and only
displaying an asterisk for the character entered?
--
View this message in context:
http://old.nabble.com/Simple-Masking-of-Password-Input-%28Universe-Basic
%29-tp32274238p32274238.html
Sent from the U2 - Users mailing list archive at Nabble.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
___
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] Why Pick U2 ?

2011-07-14 Thread Mecki Foerthmann

So what are libraries?
They are nothing but a collection of subroutines that somebody else has 
written.
And what do you do if you can't find a function in your library that 
does exactly what you need?

You write your own, right?
And by the time you have found the right function in your library you 
could have written the 3 lines of code in Basic that do the same thing 
already.
I write Databasic code every day and have done so for over 20 years and 
hardly ever have use for functions, because if I needed them I would 
have written my own library by.


Mecki



On 14/07/2011 02:25, Rob Sobers wrote:

I have to heartily disagree that U2 has a sophisticated business rules
engine.  U2 Basic is such a limited language.  It barely has functions, and
you have to home brew almost everything.

Microsoft's T-SQL stored procedures are just as horrible to write as U2
Basic programs.  As Jeff Atwood put it -- Stored procedures should be
considered database assembly language. [1] Why do you think Microsoft now
allows you to call CLR code from stored procedures?  Because it's so much
more efficient to work with the data (i.e., enforce the business rules) in a
modern language like C# that has *actual libraries* for doing useful things.

I agree that business rules shouldn't be on the client -- but who says they
have to be in the database?  Look at the ever-so-popular MVC architecture.
  The models (i.e., the code that works with the database and enforces all of
the business rules) are isolated from the views (i.e., the
client/presentation code) entirely.

-Rob

[1]:
http://www.codinghorror.com/blog/2004/10/who-needs-stored-procedures-anyways.html

On Wed, Jul 13, 2011 at 7:29 PM, Kevin Kingprecisonl...@gmail.com  wrote:


+1 for what David said.  Yes, there's the limitation that BASIC is the
only native supported language (not factoring external connectors), but as
a
language native to the environment, this BASIC is really pretty rich by
comparison to the stored procedure languages of other DBs.
___
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] Why Pick U2 ?

2011-07-14 Thread Mecki Foerthmann


I don't even know what JSON is supposed to be good for, so why would I 
want to use a web service that emits it?

I don't have a need for a JSON parser, so why should I write one?
And what if I don't need serialization, compression and PDF generation?
Well, I have tools for generating PDFs, but why would I want to 
serialize or compress U2 data?
If I really needed to do things like that I would probably use java, C# 
or whatever language has been specifically developed for that purpose.

But for what I am doing day in day out Databasic does the job best for me.

You wouldn't use a hammer to drill a hole, would you?
Would you therefore call a hammer inferior to a drill?
Of course you may be able to drive a nail into a piece of wood with a 
drill, but I'd rather use the hammer.

Always use the right tool for the job at hand.


On 14/07/2011 15:11, Rob Sobers wrote:

Yes, and my point is that in the U2/UniBasic ecosystem, those collections of
subroutines are not readily available anywhere.

What if you want to use a web service that emits JSON?  Is it going to take
you 3 lines of code and 5 minutes to write a JSON parser?  And what about
serialization, compression, PDF generation?  These things are useful and not
trivial to write and maintain.

And what language features have been added to UniBasic lately?  I can't
think of any.  No objects, no regular expressions, no lambdas, etc.

-Rob

On Thu, Jul 14, 2011 at 3:27 AM, Mecki Foerthmannmec...@gmx.net  wrote:


So what are libraries?
They are nothing but a collection of subroutines that somebody else has
written.
And what do you do if you can't find a function in your library that does
exactly what you need?
You write your own, right?
And by the time you have found the right function in your library you could
have written the 3 lines of code in Basic that do the same thing already.
I write Databasic code every day and have done so for over 20 years and
hardly ever have use for functions, because if I needed them I would have
written my own library by.

Mecki




On 14/07/2011 02:25, Rob Sobers wrote:


I have to heartily disagree that U2 has a sophisticated business rules
engine.  U2 Basic is such a limited language.  It barely has functions,
and
you have to home brew almost everything.

Microsoft's T-SQL stored procedures are just as horrible to write as U2
Basic programs.  As Jeff Atwood put it -- Stored procedures should be
considered database assembly language. [1] Why do you think Microsoft now
allows you to call CLR code from stored procedures?  Because it's so much
more efficient to work with the data (i.e., enforce the business rules) in
a
modern language like C# that has *actual libraries* for doing useful
things.

I agree that business rules shouldn't be on the client -- but who says
they
have to be in the database?  Look at the ever-so-popular MVC architecture.
  The models (i.e., the code that works with the database and enforces all
of
the business rules) are isolated from the views (i.e., the
client/presentation code) entirely.

-Rob

[1]:
http://www.codinghorror.com/**blog/2004/10/who-needs-stored-**
procedures-anyways.htmlhttp://www.codinghorror.com/blog/2004/10/who-needs-stored-procedures-anyways.html

On Wed, Jul 13, 2011 at 7:29 PM, Kevin Kingprecisonl...@gmail.com
  wrote:

  +1 for what David said.  Yes, there's the limitation that BASIC is the

only native supported language (not factoring external connectors), but
as
a
language native to the environment, this BASIC is really pretty rich by
comparison to the stored procedure languages of other DBs.
__**_
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/**mailman/listinfo/u2-usershttp://listserver.u2ug.org/mailman/listinfo/u2-users

  __**_

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


__**_
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/**mailman/listinfo/u2-usershttp://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] Epicor and Eclipse

2011-07-08 Thread Mecki Foerthmann

Colin
So I wouldn't be allowed to write a single line of code using U2 or SB+ 
if I were one of your customers?
Because that line of code wouldn't be part of your application and 
therefore would invalidate my U2 license, right?

In that case I would never buy any application software from you.
As I see it - I either buy a license for your application and separate 
ones for the database (U2) and development tools (SB+) or I won't buy 
from you at all, it's that simple!

No wonder MV is struggling!


On 08/07/2011 07:06, Colin Alfke wrote:

I believe our licences (as a VAR) with Rocket specify that when we sell UniData and SB+ 
it's part of the application and is only licenced to run the application it's 
sold with. So it sounds valid, although they may have the option to only sell UD and SB+ 
support.

Colin



From: meckif

Well, I don't know Eclipse, but the company I currently work for is
running Avante from Epicor.
When the company wanted to cancel the Avante maintenance agreement
Epicor claimed that this would automatically cancel UniData and SB+
support as well.
Avante maintenance was a total waste of money since the original
software has been heavily modified (and even though the changes were
made by Epicor staff fixing their bugs was still chargeable) and by the
time I could prove to Epicor that a fault was a genuine bug I had
already a fix for it anyway.
Of course we have the source code for Avante.
To cut a long story short - we now have UD and SB+ support through
another VAR and don't deal with Epicor anymore.

Mecki


___
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] Epicor and Eclipse

2011-07-08 Thread Mecki Foerthmann

Tony,

Microsoft isn't struggling and they license Sharepoint only for named 
users and still sell it!
My employer doesn't mind to pay a rather moderate license fee for 160 
seats every year.
But being charged tens of Thousands of Pounds for annual application 
support and every call still costs £100/hr really pissed them off.
It isn't per-seat licensing but greedy software vendors that come up 
with rip-off schemes like that which give MV a bad name.


Mecki



On 08/07/2011 17:53, Tony Gravagno wrote:

From: Mecki Foerthmann
As I see it - I either buy a license for your
application and separate ones for the database (U2)
and development tools (SB+) or I won't buy from you at
all, it's that simple! No wonder MV is struggling!

Under the strict terms of U2 licensing, as defined by IBM
lawyers, most companies here would be violation of the EULA.
Such terms intentionally favor the vendors to allow them to act
if licensing is being abused, though I haven't heard of a single
instance where the more draconian terms were ever invoked.

MV is struggling for many reasons, per-seat licensing a primary
culprit, but I don't think anyone has ever not purchased a MV
license because they felt the licensing didn't support multiple
MV applications on a single system.

T

___
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] Epicor and Eclipse

2011-07-07 Thread Mecki Foerthmann
Well, I don't know Eclipse, but the company I currently work for is 
running Avante from Epicor.
When the company wanted to cancel the Avante maintenance agreement 
Epicor claimed that this would automatically cancel UniData and SB+ 
support as well.
Avante maintenance was a total waste of money since the original 
software has been heavily modified (and even though the changes were 
made by Epicor staff fixing their bugs was still chargeable) and by the 
time I could prove to Epicor that a fault was a genuine bug I had 
already a fix for it anyway.

Of course we have the source code for Avante.
To cut a long story short - we now have UD and SB+ support through 
another VAR and don't deal with Epicor anymore.


Mecki

On 07/07/2011 22:27, Tony Gravagno wrote:

From: David
Have a client who has been on Eclipse since
2000. They are sick to death with the nickle and dime
(read eye gouge) tactics by Activant and want out.

Do you think Open Bravo or any of the other Open
source ERP products could replace it. Obviously with a
lot of customization.

I'm hoping they consider migration to another MV-based platform
rather than doing the multi-whammy : changing DBMS, application,
vendors, and employees.  There are many fine ERP packages based
on MV.  The company should check with Rocket Software, and since
they're considering a full migration anyway I believe they should
also talk with Northgate, InterSystems, and TigerLogic, who all
have vendors with large-scale packages.  If they don't find what
they need, sure, consider going elsewhere.

Yes, to answer the questions, FOSS ERP platforms have been
getting more robust and are worthy of investigation.  I don't
have stats right now but not long ago something like 12 out of
the top 20 SourceForge projects were ERP - not the typical stuff
we see there like torrent client/server, Linux tools, or games.
I've said for years that MV-based ERP vendors were going to lose
their shirts to those other offerings if they didn't learn to
adapt and compete.  Well, here we are.

Hint to MV application vendors:  Open Source your software, sell
support and development services, and market that model to the
mainstream.  That's what your modern competitors are doing.  And
really, isn't that sort of what you've been doing for decades
anyway, just not advertising it?  Then you just need to get the
DBMS vendors to open their eyes and recognize that the per-seat
licensing model has been dead for at least a decade...

Tony Gravagno
Nebula Research and Development
TG@ remove.pleaseNebula-RnD.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] Saying Goodbye... Reasons not to say goodbye.

2011-04-29 Thread Mecki Foerthmann

Doug,


Fine, Eclipse may be a full blown IDE, but I still can download it from 
the net for free and use it without having to pay an annual license fee.

Why?
Because it is open source perhaps?
So where do the 'hundreds of millions of development dollars' come from?
Donated by companies like yours?
Yeah, right!

But that still won't convince my boss to pay for a XLr8Editor license.
I don't need 200 copies of every program I'm working on.
Why would I want to compare the current version with the one before I 
wrote a block of code?
I don't need a fancy tool to tell me that I hadn't written that 
particular piece of code half an hour ago.
I hardly ever use the copy verb, and with the editor I'm currently using 
the clipboard or Save as do the job just fine.

Version control? - No need for it either.
We use PRC and that takes care of that.
It works with SB+ paragraphs and dialog, screen, report writer and field 
definitions too, which I don't think your editor or Windows Team 
Foundation Server will.

Searching for lines of code in BP?
Well, FIND is a bit awkward and I don't fancy Unix commands that much, 
but I seldom have the need for that either.

I wish UniData had the ACC-FIND verb I had on ADDS Mentor, though.
And since I don't just type UniBasic code all day I can't see how I 
could save an hour a day just by using another editor.
Testing and figuring out what users really want and how to convert that 
into code are the most time consuming tasks after all.


And hey, I'm on salary and the job always gets done - so where is the 
saving?
They could lower my salary because with the new tool I'll be sitting 
around twiddling my thumbs for an hour each day of course.

Don't give them any ideas!

but keep trying :-)

Mecki


On 29/04/2011 01:01, Doug Averch wrote:

Hi Mecki:

Whenever we get into discussions about editors, everyone mentions this
editor they got for free or this editor they are using from one of those
other guys or about the one they just cobbled together editor from EMACS,
VIM or Notepad, for instance.  Eclipse is a full blown IDE.  Eclipse has
hundreds of millions of development dollars.  Would Brian and I love have
that much money to create a specific U2 IDE?  Well, we don't have that money
and no one is offering it to any of us.

How does XLr8Editor make me more efficient? Hmm:

Local History:
In Eclipse every change made is saved in local history.  I keep 200 program
changes locally for each program.  If I'm changing a program and want to go
back to my 10:30am revision or look at the changes I made at 10:30am version
against my current version with the built in compare editor. I can.

Copy and Past:
If I want to copy code or data into another directory or file, I never have
to go to telnet or use any other tool because I can copy and paste from
within Eclipse.  I can copy megabytes per second using the U2 UOJ interface
locally faster than you can use the COPY command.

Search:
If I want to search a program file of 7000 programs for a specific line or
segment of code using grep syntax.  I issue the search on my local drive
without impacting the database server and it comes back faster than ESEARCH.
  I can do other things while it is searching.  Eclipse saves all of my
search in history so I don't have to do any of them again.  Eclipse displays
the matching line of code in the search box, so I have to do is click on and
Eclipse opens the editor to that very line.

Version Control:
Eclipse has built in version control.  You can even hookup to Microsoft's
Team Foundation Server because Microsoft built an Eclipse plug-in.  Maybe
Microsoft knows something we should know.  There are other version control
plug-ins for CVS, Subversion, GIT, and Perforce.

If you save an hour a week, at the end of year your savings easily justifies
the cost if you programmers are making a $1.00 per hour.  Really, is free
worth it!

Regards,
Doug
www.u2logic.com/tools.html
XLr8Editor for the Universe and Unidata
___
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] Saying Goodbye... Reasons not to say goodbye.

2011-04-28 Thread Mecki Foerthmann

Doug

Do you really believe staff are more productive if they can play around 
with skins and colours all day?
And I still have to see the office where people use smart phones and 
tabloids instead of PCs.
Fine, maybe the top brass wants to see KPIs and fancy graphics on their 
toys to show off on the golf course?
For that we have tools like Cognos 10 etc., but for the people who do 
the real work these toys would just be a distraction.

Give me a big Monitor screen any time!

I have been using some of the so called state-of-the art technologies 
for some time now and they didn't make my work any easier.

To the contrary.
The screens may look prettier than SB+ 5.2 GUI and they are browser 
based, but developing with Sharepoint for instance is boring and very 
time consuming.

Add business logic and the whole thing becomes a nightmare.

Presentation isn't everything.

Mecki

On 28/04/2011 00:13, Doug Averch wrote:

Hi Ed:

You are focusing to much on the technical side.  Users really don't care how
we programmers do what we do.

Presentation is everything.  The ability to change colors or skins on your
web site.  For example, just look at the Firefox 4 or the new Dell Laptop
with interchangeable tops.  Another example is Android OS for phones went
from market share zero to over 30% today.  Android OS did that by form and
function just as Apple iPhone has in the last 4 years.

We have had a portal for 8 years now.  We used open source scriptaculous,
but it was not attractive.  We use a different tool that caught our users
eyes.  See our home page at www.u2logic.com.

Regards,
Doug
www.u2logic.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


  1   2   3   >