Re: [U2] [UD] Corrupted compiled code

2011-12-21 Thread Wally Terhune
I'm not recalling customers reporting problems like this (except for one case I 
have with you, Bill regarding a program creating a print job that goes into a 
loop once every few years). 

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 Bill Haskett
Sent: Tuesday, December 20, 2011 8:40 PM
To: U2 Mail List
Subject: [U2] [UD] Corrupted compiled code

I've been using UD for a number of years.  I'm currently using v7.2.7.  
Occasionally, the compiled code gets corrupted.  I notice when a client calls 
and indicates something doesn't work.  Today I couldn't create an A/P check.  
After a few hours I tracked down the following message:

In E:\Abo\BP\BP\_APCHECK at line 60 can not use debugger for background job In 
E:\Abo\BP\BP\_M.APCHECK at line 343 Phantom run basic error, exit 4.

Line 60 of APCHECK looks like:

IF GUIMODE THEN SuppressCRT = 1 ELSE SuppressCRT = 0

I figured I'd left a DEBUG statement in APCHECK when I called M.APCHECK 
(which executes APCHECK from a phantom).  I didn't!  
Everything looked good.  I finally added a simple VOC debug-record-writev to 
theAPCHECK program , recompiled it and reran the process.  All worked fine!  
I took out the debug code and everything works fine.  So, recompiling was all 
it took because the object code was corrupted somehow.

Yesterday, I spent 12 hours tracking down an intermittent browser crash for one 
of our clients and finally came to a BUILD.HEADING program I've been using 
since 1995.  What happened was that SYSTEM(2) was returning the value 1024 
instead of 80.  So, when I created a three line heading and centered stuff on 
each line, instead of 30 (or so) spaces created on each side of the heading 
line I had about 450.  When the heading info was added to the ECL command the 
line was too long and barfed when it was executed.  No error message appeared 
anywhere so it was with a lot of effort I was able to track this down.  Upon 
adding a writev-debug-line and recompiling, everything started working just 
fine.  I removed the debug line and all is working well.

Naturally I've recompiled everything and rebooted the server, but this is a 
major pain in the a$$!  Does anyone know why code that's been used for months, 
and maybe years, would get corrupted like this?  Everything is compiled with 
the '-Z2' option and all cataloging is local (DIRECT FORCE).

Thanks,

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] [UD] Corrupted compiled code

2011-12-21 Thread Bob Wyatt
I've seen the problem going back 10+ years on UniData 5.X. The issue was
reported to UniData, we worked with support for a while, but we never
achieved the point of being able to identify the cause. This was on Solaris.
A couple of years later, another client saw it in 6.X on AIX, but it was not
reported to UniData - it happened with one program and was not reproducible
once the steps Bill describes had been taken . Neither client elected to
compile and re-catalog their software collection proactively.

*DISCLAIMOR - the actual UniData version afflicted may be different from
those indicated above - memory seems to get cheaper and less reliable as it
ages

Bob Wyatt

-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Wally Terhune
Sent: Wednesday, December 21, 2011 8:55 AM
To: U2 Users List
Subject: Re: [U2] [UD] Corrupted compiled code

I'm not recalling customers reporting problems like this (except for one
case I have with you, Bill regarding a program creating a print job that
goes into a loop once every few years). 

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 Bill Haskett
Sent: Tuesday, December 20, 2011 8:40 PM
To: U2 Mail List
Subject: [U2] [UD] Corrupted compiled code

I've been using UD for a number of years.  I'm currently using v7.2.7.  
Occasionally, the compiled code gets corrupted.  I notice when a client
calls and indicates something doesn't work.  Today I couldn't create an A/P
check.  After a few hours I tracked down the following message:

In E:\Abo\BP\BP\_APCHECK at line 60 can not use debugger for background job
In E:\Abo\BP\BP\_M.APCHECK at line 343 Phantom run basic error, exit 4.

Line 60 of APCHECK looks like:

IF GUIMODE THEN SuppressCRT = 1 ELSE SuppressCRT = 0

I figured I'd left a DEBUG statement in APCHECK when I called
M.APCHECK (which executes APCHECK from a phantom).  I didn't!  
Everything looked good.  I finally added a simple VOC debug-record-writev to
theAPCHECK program , recompiled it and reran the process.  All worked
fine!  I took out the debug code and everything works fine.  So, recompiling
was all it took because the object code was corrupted somehow.

Yesterday, I spent 12 hours tracking down an intermittent browser crash for
one of our clients and finally came to a BUILD.HEADING program I've been
using since 1995.  What happened was that SYSTEM(2) was returning the value
1024 instead of 80.  So, when I created a three line heading and centered
stuff on each line, instead of 30 (or so) spaces created on each side of the
heading line I had about 450.  When the heading info was added to the ECL
command the line was too long and barfed when it was executed.  No error
message appeared anywhere so it was with a lot of effort I was able to track
this down.  Upon adding a writev-debug-line and recompiling, everything
started working just fine.  I removed the debug line and all is working
well.

Naturally I've recompiled everything and rebooted the server, but this is a
major pain in the a$$!  Does anyone know why code that's been used for
months, and maybe years, would get corrupted like this?  Everything is
compiled with the '-Z2' option and all cataloging is local (DIRECT FORCE).

Thanks,

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


Re: [U2] [UD] Corrupted compiled code

2011-12-21 Thread Bill Haskett
Darn!  I was hoping you'd remember something, like recompiling while 
someone is using the program in UO would corrupt the object is 18 days.  
Or, the GETPTR function returns 1024 via UO if the object is corrupted.  
I do not want to think our environment is unique.  :-(


Thanks again and have a nice holiday season.

Bill


- Original Message -
*From:* wterh...@rocketsoftware.com
*To:* U2 Users List u2-users@listserver.u2ug.org
*Date:* 12/21/2011 5:55 AM
*Subject:* Re: [U2] [UD] Corrupted compiled code

I'm not recalling customers reporting problems like this (except for one case I 
have with you, Bill regarding a program creating a print job that goes into a 
loop once every few years).

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 Bill Haskett
Sent: Tuesday, December 20, 2011 8:40 PM
To: U2 Mail List
Subject: [U2] [UD] Corrupted compiled code

I've been using UD for a number of years.  I'm currently using v7.2.7.
Occasionally, the compiled code gets corrupted.  I notice when a client calls 
and indicates something doesn't work.  Today I couldn't create an A/P check.  
After a few hours I tracked down the following message:

In E:\Abo\BP\BP\_APCHECK at line 60 can not use debugger for background job In 
E:\Abo\BP\BP\_M.APCHECK at line 343 Phantom run basic error, exit 4.

Line 60 of APCHECK looks like:

IF GUIMODE THEN SuppressCRT = 1 ELSE SuppressCRT = 0

I figured I'd left a DEBUG statement in APCHECK when I called M.APCHECK (which 
executes APCHECK from a phantom).  I didn't!
Everything looked good.  I finally added a simple VOC debug-record-writev to 
theAPCHECK program , recompiled it and reran the process.  All worked fine!  
I took out the debug code and everything works fine.  So, recompiling was all it took 
because the object code was corrupted somehow.

Yesterday, I spent 12 hours tracking down an intermittent browser crash for one 
of our clients and finally came to a BUILD.HEADING program I've been using 
since 1995.  What happened was that SYSTEM(2) was returning the value 1024 
instead of 80.  So, when I created a three line heading and centered stuff on 
each line, instead of 30 (or so) spaces created on each side of the heading 
line I had about 450.  When the heading info was added to the ECL command the 
line was too long and barfed when it was executed.  No error message appeared 
anywhere so it was with a lot of effort I was able to track this down.  Upon 
adding a writev-debug-line and recompiling, everything started working just 
fine.  I removed the debug line and all is working well.

Naturally I've recompiled everything and rebooted the server, but this is a 
major pain in the a$$!  Does anyone know why code that's been used for months, 
and maybe years, would get corrupted like this?  Everything is compiled with 
the '-Z2' option and all cataloging is local (DIRECT FORCE).

Thanks,

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


Re: [U2] [UD] Corrupted compiled code

2011-12-21 Thread Wally Terhune
Though I have to agree with Bob Wyatt: memory seems to get cheaper and less 
reliable as it ages :-(

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 Bill Haskett
Sent: Wednesday, December 21, 2011 10:23 AM
To: U2 Users List
Subject: Re: [U2] [UD] Corrupted compiled code

Darn!  I was hoping you'd remember something, like recompiling while someone is 
using the program in UO would corrupt the object is 18 days.  
Or, the GETPTR function returns 1024 via UO if the object is corrupted.  
I do not want to think our environment is unique.  :-(

Thanks again and have a nice holiday season.

Bill


- Original Message -
*From:* wterh...@rocketsoftware.com
*To:* U2 Users List u2-users@listserver.u2ug.org
*Date:* 12/21/2011 5:55 AM
*Subject:* Re: [U2] [UD] Corrupted compiled code
 I'm not recalling customers reporting problems like this (except for one case 
 I have with you, Bill regarding a program creating a print job that goes into 
 a loop once every few years).
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Corrupted compiled code

2011-12-21 Thread John Hatherill
It sounds crazy but humor me. I have seen when commands are imbedded in a 
variable name in some systems it has problems. That's why I go out of my way 
not to put them in my variable names.  In this case CRT.  Rename the variable 
and see what happens?  It's a long shot but stranger things have happened.

John W Hatherill
-Original Message-
From: Bill Haskett [mailto:wphask...@advantos.net] 
Sent: Tuesday, December 20, 2011 7:40 PM
To: U2 Mail List
Subject: [U2] [UD] Corrupted compiled code

I've been using UD for a number of years.  I'm currently using v7.2.7.  
Occasionally, the compiled code gets corrupted.  I notice when a client 
calls and indicates something doesn't work.  Today I couldn't create an 
A/P check.  After a few hours I tracked down the following message:

In E:\Abo\BP\BP\_APCHECK at line 60 can not use debugger for background job
In E:\Abo\BP\BP\_M.APCHECK at line 343 Phantom run basic error, exit 4.

Line 60 of APCHECK looks like:

IF GUIMODE THEN SuppressCRT = 1 ELSE SuppressCRT = 0

I figured I'd left a DEBUG statement in APCHECK when I called 
M.APCHECK (which executes APCHECK from a phantom).  I didn't!  
Everything looked good.  I finally added a simple VOC 
debug-record-writev to theAPCHECK program , recompiled it and reran 
the process.  All worked fine!  I took out the debug code and everything 
works fine.  So, recompiling was all it took because the object code was 
corrupted somehow.

Yesterday, I spent 12 hours tracking down an intermittent browser crash 
for one of our clients and finally came to a BUILD.HEADING program I've 
been using since 1995.  What happened was that SYSTEM(2) was returning 
the value 1024 instead of 80.  So, when I created a three line heading 
and centered stuff on each line, instead of 30 (or so) spaces created on 
each side of the heading line I had about 450.  When the heading info 
was added to the ECL command the line was too long and barfed when it 
was executed.  No error message appeared anywhere so it was with a lot 
of effort I was able to track this down.  Upon adding a 
writev-debug-line and recompiling, everything started working just 
fine.  I removed the debug line and all is working well.

Naturally I've recompiled everything and rebooted the server, but this 
is a major pain in the a$$!  Does anyone know why code that's been used 
for months, and maybe years, would get corrupted like this?  Everything 
is compiled with the '-Z2' option and all cataloging is local (DIRECT 
FORCE).

Thanks,

Bill

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


Re: [U2] [UD] Corrupted compiled code

2011-12-21 Thread Wols Lists

On 21/12/11 17:38, Wally Terhune wrote:

Though I have to agree with Bob Wyatt: memory seems to get cheaper and less 
reliable as it ages :-(


I was thinking memory ... possibly bad?

Does Unidata store its programs in shared memory? Could the memory have 
got corrupted and it takes a recompile to move it and reset it? Long 
shot I know, but stranger things have happened (and as memory gets 
faster and the lines get narrower, random corruption gets more likely).


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


Re: [U2] [UD] Corrupted compiled code

2011-12-21 Thread Wally Terhune
I was actually thinking of my personal memory about UniData problems reported 
these past 21 years.

Bill said his programs were CATALOG ... DIRECT - so unless he places his source 
files under UDTHOME\sys\CTLG - his object code is not managed by sbcs or stored 
in shared memory. Each udt process will have to malloc private memory to load 
all of the objects it runs.

Each time he starts a new udt process and runs the problem program, that object 
code is read from disk and loaded into private process memory. There isn't any 
cache or such for this application setup.

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 Wols Lists
Sent: Wednesday, December 21, 2011 1:54 PM
To: u2-users@listserver.u2ug.org
Subject: Re: [U2] [UD] Corrupted compiled code

On 21/12/11 17:38, Wally Terhune wrote:
 Though I have to agree with Bob Wyatt: memory seems to get cheaper 
 and less reliable as it ages :-(

I was thinking memory ... possibly bad?

Does Unidata store its programs in shared memory? Could the memory have got 
corrupted and it takes a recompile to move it and reset it? Long shot I know, 
but stranger things have happened (and as memory gets faster and the lines get 
narrower, random corruption gets more likely).

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


[U2] Is there any ORM's for Universe. NHibernate, Entity Framework etc

2011-12-21 Thread Tony Gravagno
From : Adrian Halid

 Has anybody tried or found an ORM for Universe.
 
 I am looking at something along the lines of 
 NHibernate or Entity Framework.

[AD]

Yes, and to my knowledge there is only one.  mv.NET includes a
component called Solution Objects.  You start with your standard
dictionary defs.  You add details required for strongly typed
properties to create Extended definitions.  You then define
business objects which aggregate files and BASIC rules, and
define strongly typed collections and relationships amongst the
various classes.  Then you generate C# or VB.NET code which you
then compile into a DLL.  The new modules are as capable as those
of NHibernate or EF for validating data, supporting read-only
properties, managing cascading updates, etc.  You have all of the
source and can walk through and change the functionality if
required.  The code is generated off of templates (like
CodeSmith) which you can change to effect global changes to your
apps.  Direct file read/write is managed for you, or you can
choose to have I/O go through your BASIC code (which is more
in-line with the way we all prefer to do it).

You can give your finalized library to clients or colleagues to
represent their view into your platform.  Some VARs want to offer
their more sophisticated clients a new advanced interface into
the app - this is it.  Give them a DLL and support it just like
any other component of your app (for free or fee).  As a service
I offer to build and support SDKs like this for VARs.

Since you're in Australia, I recommend you contact T-Data Pty
Ltd, as they are your regional resellers for mv.NET.  As a
worldwide Distributor I'll also be happy to answer all questions,
and to provide mv.NET and related development services.

Before Solution Objects, I created a MV provider for CSLA and
..netTiers, and I wrote my own Visual Studio plugin which
generates strongly typed classes from a MV datasource.  I was
also writing a plugin based on the FOSS SQLite provider, which
allows all Database Explorer functionality from VS, so that we
could create EF libraries from MV as easily as we could from SQL
Server.  This was fun and the tools were very useful to me for
that kind of work.  But given that there is almost no market in
this community for such things, and my time for tool development
was limited, I decided to direct all of my efforts in this area
toward helping to make Solution Objects the kind of solution that
we all want in this kind of tool.  There really isn't anything
else like this in this market, so not only is mv.NET Solution
Objects the only option, but it also happens to be a very good
one.

HTH

Tony Gravagno
Nebula Research and Development
TG@ remove.pleaseNebula-RnD.com
Nebula RD sells mv.NET and other Pick/MultiValue products
worldwide, and provides related development services
remove.pleaseNebula-RnD.com/blog
Visit PickWiki.com! Contribute!
http://Twitter.com/TonyGravagno


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


Re: [U2] Is there any ORM's for Universe. NHibernate, Entity Framework etc

2011-12-21 Thread Robert Houben
[AD]
Actually, there is another alternative.  FusionWare's Managed Provider allows 
you to create a strongly typed dataset, and you can use this to create a Data 
Access Layer.  The strongly typed dataset is actually a Microsoft DataSet 
object, not a proprietary object of any sort.  To see more, view any of the 
Nothin' but .NET series at http://www.youtube.com/fusionwareint

We also provide similar functionality for Java environments through our Java 
Data Adapter.
[/AD]

-Original Message-
From: u2-users-boun...@listserver.u2ug.org 
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Tony Gravagno
Sent: December-21-11 1:31 PM
To: u2-users@listserver.u2ug.org
Subject: [U2] Is there any ORM's for Universe. NHibernate, Entity Framework etc

From : Adrian Halid

 Has anybody tried or found an ORM for Universe.

 I am looking at something along the lines of NHibernate or Entity
 Framework.

[AD]

Yes, and to my knowledge there is only one.  mv.NET includes a component called 
Solution Objects.  You start with your standard dictionary defs.  You add 
details required for strongly typed properties to create Extended definitions.  
You then define business objects which aggregate files and BASIC rules, and 
define strongly typed collections and relationships amongst the various 
classes.  Then you generate C# or VB.NET code which you then compile into a 
DLL.  The new modules are as capable as those of NHibernate or EF for 
validating data, supporting read-only properties, managing cascading updates, 
etc.  You have all of the source and can walk through and change the 
functionality if required.  The code is generated off of templates (like
CodeSmith) which you can change to effect global changes to your apps.  Direct 
file read/write is managed for you, or you can choose to have I/O go through 
your BASIC code (which is more in-line with the way we all prefer to do it).

You can give your finalized library to clients or colleagues to represent their 
view into your platform.  Some VARs want to offer their more sophisticated 
clients a new advanced interface into the app - this is it.  Give them a DLL 
and support it just like any other component of your app (for free or fee).  As 
a service I offer to build and support SDKs like this for VARs.

Since you're in Australia, I recommend you contact T-Data Pty Ltd, as they are 
your regional resellers for mv.NET.  As a worldwide Distributor I'll also be 
happy to answer all questions, and to provide mv.NET and related development 
services.

Before Solution Objects, I created a MV provider for CSLA and ..netTiers, and I 
wrote my own Visual Studio plugin which generates strongly typed classes from a 
MV datasource.  I was also writing a plugin based on the FOSS SQLite provider, 
which allows all Database Explorer functionality from VS, so that we could 
create EF libraries from MV as easily as we could from SQL Server.  This was 
fun and the tools were very useful to me for that kind of work.  But given that 
there is almost no market in this community for such things, and my time for 
tool development was limited, I decided to direct all of my efforts in this 
area toward helping to make Solution Objects the kind of solution that we all 
want in this kind of tool.  There really isn't anything else like this in this 
market, so not only is mv.NET Solution Objects the only option, but it also 
happens to be a very good one.

HTH

Tony Gravagno
Nebula Research and Development
TG@ remove.pleaseNebula-RnD.com
Nebula RD sells mv.NET and other Pick/MultiValue products worldwide, and 
provides related development services remove.pleaseNebula-RnD.com/blog Visit 
PickWiki.com! Contribute!
http://Twitter.com/TonyGravagno


___
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] [UD] Corrupted compiled code

2011-12-21 Thread Wols Lists

On 21/12/11 20:59, Wally Terhune wrote:

I was actually thinking of my personal memory about UniData problems reported 
these past 21 years.


I got that. It just seemed a nice intro to what I thought was a 
possibility. But seeing as I was thinking of INFORMATION, I knew it was 
a long shot.


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


Re: [U2] Corrupted compiled code

2011-12-21 Thread Bill Haskett

The incredibly weird thing was the code would do:

TclLine  = {whatever}
TclLine := etc, etc, etc
ReportHeader  = CLIENT BANK ACCOUNT TOTALS: @AM
ReportHeader := FOR MONTH November 2011: @AM
ReportHeader := 
CALL BUILD.HEADING ( ReportHeader, AddLineInHdr, PrintSw )
TclLine := \HEADING \ : ReportHeader : \ FOOTING \ : ReportFooter : \\
EXECUTE TclLine

...the TclLine variable should look like:

sort BANKBOOK WHEN CLIENTNO.RSTR = 0 BY-EXP CLIENTNO BY ATYPE_ACCTNO 
BY ATYPE_DESC ID-SUPP BREAK.SUP  'DO' CLIENTNO CLIENT

 NO BNAMES ATYPE_DESCS ATYPE_ACCTNOS TOTAL CURRBAL HEADING
Run by-: WPHASKETT  CLIENT BANK ACCOUNT 
TOTALS  Page: 'PL'
Menu No: BANK 4.3.5   FOR MONTH November 
2011Date: 20 Dec 2011'L'
Account: CustomerAcct
Time: 12:40PM'L'
 FOOTING 'L'(C) Copyright 'D', Advantos Systems, Inc.  All Rights 
Reserved. NI-SUPP


...which they all did except, occasionally, on this one account.  The 
calculation of the amount of spaces to center the report heading data 
used SYSTEM(2) and GETPTR in the subroutine BUILD.HEADING.  For some 
reason the corrupted value was 1024 instead of actual value of 80.  
Thus, when I displayed the TclLine variable, it looked like the one 
above, except when everything failed, whereupon the variable looked like:


sort BANKBOOK WHEN CLIENTNO.RSTR = 0 BY-EXP CLIENTNO BY ATYPE_ACCTNO 
BY ATYPE_DESC ID-SUPP BREAK.SUP  'DO' CLIENTNO CLIENT
 NO BNAMES ATYPE_DESCS ATYPE_ACCTNOS TOTAL CURRBAL HEADING Run 
by-: WPHASKETT




CLIENT BANK ACCOUNT TOTALS



 Page: 'PL'Menu No: BANK 4.3.5



FOR MONTH November 2011



Date: 20 Dec 2011'L'Account: CustomerAcct







 Time: 12:40PM'L' FOOTING 'L'(C) Copyright 'D', Advantos 
Systems, Inc.  All Rights Reserved. NI-SUPP


...which wrecks havoc when executed and nowhere was the error logged; so 
it took me forever to find this.


Now, I've been known to follow the wrong path when programming, but 
you'd think, after 20 years, I could figure out how to build and execute 
a tcl command in BASIC, and what I build is what is executed.  A 
recompile of BUILD.HEADING fixed this problem, so I'm not sure what 
happened.  My only thought is the object got corrupted during a session.


Bill


- Original Message -
*From:* jhather...@hipco.com
*To:* U2 Users List u2-users@listserver.u2ug.org
*Date:* 12/21/2011 12:27 PM
*Subject:* Re: [U2] Corrupted compiled code

It sounds crazy but humor me. I have seen when commands are imbedded in a variable name 
in some systems it has problems. That's why I go out of my way not to put them in my 
variable names.  In this case CRT.  Rename the variable and see what happens? 
 It's a long shot but stranger things have happened.

John W Hatherill
-Original Message-
From: Bill Haskett [mailto:wphask...@advantos.net]
Sent: Tuesday, December 20, 2011 7:40 PM
To: U2 Mail List
Subject: [U2] [UD] Corrupted compiled code

I've been using UD for a number of years.  I'm currently using v7.2.7.
Occasionally, the compiled code gets corrupted.  I notice when a client
calls and indicates something doesn't work.  Today I couldn't create an
A/P check.  After a few hours I tracked down the following message:

In E:\Abo\BP\BP\_APCHECK at line 60 can not use debugger for background job
In E:\Abo\BP\BP\_M.APCHECK at line 343 Phantom run basic error, exit 4.

Line 60 of APCHECK looks like:

IF GUIMODE THEN SuppressCRT = 1 ELSE SuppressCRT = 0

I figured I'd left a DEBUG statement in APCHECK when I called
M.APCHECK (which executes APCHECK from a phantom).  I didn't!
Everything looked good.  I finally added a simple VOC
debug-record-writev to theAPCHECK program , recompiled it and reran
the process.  All worked fine!  I took out the debug code and everything
works fine.  So, recompiling was all it took because the object code was
corrupted somehow.

Yesterday, I spent 12 hours tracking down an intermittent browser crash
for one of our clients and finally came to a BUILD.HEADING program I've
been using since 1995.  What happened was that SYSTEM(2) was returning
the value 1024 instead of 80.  So, when I created a three line heading
and centered stuff on each line, instead of 30 (or so) spaces created on
each side of the heading line I had about 450.  When the heading info
was added to the ECL command the line was too long and barfed when it
was executed.  No error message appeared anywhere so it was with a lot
of effort I was able to track this down.  Upon adding a
writev-debug-line and recompiling, everything started working just
fine.  I removed the debug line and all is working well.

Naturally I've recompiled everything and rebooted the server, but this
is a major pain in 

Re: [U2] Corrupted compiled code

2011-12-21 Thread Allen Egerton

On 12/21/2011 4:45 PM, Bill Haskett wrote:

The incredibly weird thing was the code would do:

snip


...which they all did except, occasionally, on this one account. The
calculation of the amount of spaces to center the report heading data
used SYSTEM(2) and GETPTR in the subroutine BUILD.HEADING. For some
reason the corrupted value was 1024 instead of actual value of 80. Thus,
when I displayed the TclLine variable, it looked like the one above,
except when everything failed, whereupon the variable looked like:


snip

System(2) is set by the TERM command.  Perhaps it's getting reset under 
some obscure circumstances?


--
allen egerton; aeger...@pobox.com
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Corrupted compiled code

2011-12-21 Thread David A. Green
Maybe you could save off the compiled program before recompiling.

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 Bill Haskett
Sent: Wednesday, December 21, 2011 3:12 PM
To: U2 Users List
Subject: Re: [U2] Corrupted compiled code

The reason I suspected object corruption is I've also had a simple data
entry program fail to write one of a number of records, even though
100,000 writes occur fine.  The write code looked like, after files have
been read  locked  tested for locked status:

1274 WRITE INVOICEREC ON ARINVOICES, INVOICEID
1275 WRITE INVOICEREC ON ARHISTORY, INVOICEID
1276 WRITE CUSTREC ON ARCUSTOMER, CUSTID

...and the customer record was _NOT_ written.  There are no subroutines, or
anything else.  The 3rd write just didn't occur.  A recompile resolved the
problem.  It's possible the SYSTEM parameter was reset but it's set just
before the tcl command was built and the BUILD.HEADING subroutine is called.

Once things like this occur I have to fix them, thus my ability to
re-create the problem to U2, or any other vendor for that matter, is very
limited.

Bill


- Original Message -
*From:* aeger...@pobox.com
*To:* U2 Users List u2-users@listserver.u2ug.org
*Date:* 12/21/2011 1:59 PM
*Subject:* Re: [U2] Corrupted compiled code
 On 12/21/2011 4:45 PM, Bill Haskett wrote:
 The incredibly weird thing was the code would do:
 snip

 ...which they all did except, occasionally, on this one account. The 
 calculation of the amount of spaces to center the report heading data 
 used SYSTEM(2) and GETPTR in the subroutine BUILD.HEADING. For some 
 reason the corrupted value was 1024 instead of actual value of 80. 
 Thus, when I displayed the TclLine variable, it looked like the one 
 above, except when everything failed, whereupon the variable looked like:

 snip

 System(2) is set by the TERM command.  Perhaps it's getting reset 
 under some obscure circumstances?


___
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] Corrupted compiled code

2011-12-21 Thread David A. Green
ASSIGN will also modify SYSTEM(2).  Although I can't seem to find the
documentation for 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 Allen Egerton
Sent: Wednesday, December 21, 2011 3:00 PM
To: U2 Users List
Subject: Re: [U2] Corrupted compiled code

On 12/21/2011 4:45 PM, Bill Haskett wrote:
 The incredibly weird thing was the code would do:
snip

 ...which they all did except, occasionally, on this one account. The 
 calculation of the amount of spaces to center the report heading data 
 used SYSTEM(2) and GETPTR in the subroutine BUILD.HEADING. For some 
 reason the corrupted value was 1024 instead of actual value of 80. 
 Thus, when I displayed the TclLine variable, it looked like the one 
 above, except when everything failed, whereupon the variable looked like:

snip

System(2) is set by the TERM command.  Perhaps it's getting reset under some
obscure circumstances?

--
allen egerton; aeger...@pobox.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] Corrupted compiled code

2011-12-21 Thread Kevin King
This is a long shot, but Wally's mention of malloc made me wonder... could
there be any software (virus checking or otherwise) that's working on
memory objects, not disk files?

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


Re: [U2] Is there any ORM's for Universe. NHibernate, Entity Framework etc

2011-12-21 Thread Tony Gravagno
Robert, sincere apologies, and thanks for the correction.

To avoid misunderstandings, there is a huge difference between a
DataSet and a strongly typed business object.  They are sometimes
used alternatively but there are times when one or the other is
absolutely required.  If ORM was as simple as returning a dataset
we wouldn't have a need for ORM frameworks like NHibernate, CSLA,
or commercial offerings like the Telerik OpenAccess ORM.

Here is one excellent QA on the topic:
http://stackoverflow.com/questions/657327/is-dataset-an-orm

[Another obligatory AD tag here I guess]

The word proprietary may prompt some discussion: Every
framework does what it does in a unique fashion, that's what
differentiates it from others.  In this regard, all commercial
and FOSS frameworks are proprietary.  But I did mention that
the source which mv.NET generates is completely open, as are the
templates that it uses.  The generated classes are all partial
which means you can modify the generated code.  But preferred and
better, partial stub classes are also generated which allow
developers to hook into functionality at many key points.
Generate the base classes as many times as you want and never
lose your mods.  In the context of the request for an ORM, people
actually do want to generate DLLs which are proprietary to their
own application.  There's nothing wrong with that, that's the
goal, and that's exactly what mv.NET helps VARs to generate.  I
position this as a feature.

In addition to Solution Objects and the code generator component,
mv.NET also includes the Adapter Objects library which renders
collections of items as a strongly-typed DataSet, with Tables,
Rows, Columns, etc.  UO.NET has similar functionality.  All this,
yes, and much much more, are included in the same reasonably
priced offering.

Now, mv.NET does Not have any functionality related to Java.  If
you need to deploy over *nix or you're creating JARs for existing
Java clients, then I highly recommend investigation of
FusionWare's offerings as a valuable superset of UOJ.

As an independent developer, my position in this game of tool
sales is different from others.  I sell specific software
packages because I like them - I don't like them because I sell
them.  I won't sell software or services to a company if I know
there's a better solution for a specific need.  So I recommend
that anyone interested in connectivity above and beyond UO should
look at all of the options.  If it turns out that someone likes
the same tools I like, great, the commission earns me a cup of
coffee for my time.  If not, I hope to benefit by learning why
people made other choices.  It's all about solutions, not tools -
or should be anyway.

T

 From: Robert Houben
 
 [AD]
 Actually, there is another alternative.  FusionWare's 
 Managed Provider allows you to create a strongly typed 
 dataset, and you can use this to create a Data Access 
 Layer.  The strongly typed dataset is actually a 
 Microsoft DataSet object, not a proprietary object of 
 any sort.  To see more, view any of the Nothin' but 
 .NET series at http://www.youtube.com/fusionwareint
 
 We also provide similar functionality for Java 
 environments through our Java Data Adapter.

 [/AD]

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


Re: [U2] Corrupted compiled code

2011-12-21 Thread Bill Haskett
I don't know.  I compile a lot in development and have SEP installed.  
You'd think it would wreck havoc, but one never knows.  But, as Wally 
said, since I catalog locally sbcs shouldn't be involved.


I'm not familiar with memory management for Windows  UniData.  :-(

Bill


- Original Message -
*From:* precisonl...@gmail.com
*To:* dgr...@dagconsulting.com, U2 Users List u2-users@listserver.u2ug.org
*Date:* 12/21/2011 5:37 PM
*Subject:* Re: [U2] Corrupted compiled code

This is a long shot, but Wally's mention of malloc made me wonder... could
there be any software (virus checking or otherwise) that's working on
memory objects, not disk files?

-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


Re: [U2] Is there any ORM's for Universe. NHibernate, Entity Framework etc

2011-12-21 Thread Robert Houben
Hi Tony,

Within ADO.NET there is a concept called a Strongly Typed DataSet, which, if 
your Managed Provider supports the correct interfaces, Microsoft will 
auto-generate for you from a regular DataSet (which as you note is not strongly 
typed).  The resulting Strongly Typed DataSet is a strongly typed business 
object, which will reject passing a String to a Date type, for instance, and 
will reject it at compile-time, not run-time.  Wrap it with a simple DAL and 
you get a very powerful business object that can support a wide variety of 
clients.  The DAL allows you to customize your accessors and expose data 
directly or through SOAP or RESTful Web Services.

In order to support Silverlight, which does not support the System.Data 
assembly due to browser sandbox restrictions, we auto-generate classes for 
Silverlight, which can be used in other places, too, but we have found that the 
Strongly Typed DataSet and DAL are a very powerful combination, and where 
useable are more than adequate.

-Original Message-
From: u2-users-boun...@listserver.u2ug.org 
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Tony Gravagno
Sent: December-21-11 7:43 PM
To: u2-users@listserver.u2ug.org
Subject: Re: [U2] Is there any ORM's for Universe. NHibernate, Entity Framework 
etc

Robert, sincere apologies, and thanks for the correction.

To avoid misunderstandings, there is a huge difference between a DataSet and a 
strongly typed business object.  They are sometimes used alternatively but 
there are times when one or the other is absolutely required.  If ORM was as 
simple as returning a dataset we wouldn't have a need for ORM frameworks like 
NHibernate, CSLA, or commercial offerings like the Telerik OpenAccess ORM.

Here is one excellent QA on the topic:
http://stackoverflow.com/questions/657327/is-dataset-an-orm

[Another obligatory AD tag here I guess]

The word proprietary may prompt some discussion: Every framework does what it 
does in a unique fashion, that's what differentiates it from others.  In this 
regard, all commercial and FOSS frameworks are proprietary.  But I did 
mention that the source which mv.NET generates is completely open, as are the 
templates that it uses.  The generated classes are all partial
which means you can modify the generated code.  But preferred and better, 
partial stub classes are also generated which allow developers to hook into 
functionality at many key points.
Generate the base classes as many times as you want and never lose your mods.  
In the context of the request for an ORM, people actually do want to generate 
DLLs which are proprietary to their own application.  There's nothing wrong 
with that, that's the goal, and that's exactly what mv.NET helps VARs to 
generate.  I position this as a feature.

In addition to Solution Objects and the code generator component, mv.NET also 
includes the Adapter Objects library which renders collections of items as a 
strongly-typed DataSet, with Tables, Rows, Columns, etc.  UO.NET has similar 
functionality.  All this, yes, and much much more, are included in the same 
reasonably priced offering.

Now, mv.NET does Not have any functionality related to Java.  If you need to 
deploy over *nix or you're creating JARs for existing Java clients, then I 
highly recommend investigation of FusionWare's offerings as a valuable superset 
of UOJ.

As an independent developer, my position in this game of tool sales is 
different from others.  I sell specific software packages because I like them - 
I don't like them because I sell them.  I won't sell software or services to a 
company if I know there's a better solution for a specific need.  So I 
recommend that anyone interested in connectivity above and beyond UO should 
look at all of the options.  If it turns out that someone likes the same tools 
I like, great, the commission earns me a cup of coffee for my time.  If not, I 
hope to benefit by learning why people made other choices.  It's all about 
solutions, not tools - or should be anyway.

T

 From: Robert Houben

 [AD]
 Actually, there is another alternative.  FusionWare's Managed Provider
 allows you to create a strongly typed dataset, and you can use this to
 create a Data Access Layer.  The strongly typed dataset is actually a
 Microsoft DataSet object, not a proprietary object of any sort.  To
 see more, view any of the Nothin' but .NET series at
 http://www.youtube.com/fusionwareint

 We also provide similar functionality for Java environments through
 our Java Data Adapter.

 [/AD]

___
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