RE: Forte Versus PowerBuilder
Hi,
Though I didn't have the experience, I would like to add to this issue that,
Forte and Powerbuilder are two very different softwares. Forte, in
particular, is both your IDE and Production Management System. Powerbuilder
is just an IDE. Forte is totally OO, whereas PB, from my point of view, is
not. Forte is 3-tier while PB is not.
So when all the factors add up, it just means ... "WHAT DO YOU NEED ?" or
"WHAT IS YOUR TIME FRAME ?", "WHAT IS YOUR EXISTING SKILL SET ?", "WHAT IS
THE SCALE OF YOUR PRODUCTION ENVIRONMENT ?".
If you want something quick and small scale, use PB. Forte would need a
whole-hearted full embrace to OO multi-tier application. Skill set is very
important. A wrong turn at the design would be fatal.
Good luck.
Peter Sham.
-----Original Message-----
From: Burkhiser, C. Brian [SMTP:[email protected]]
Sent: Thursday, June 24, 1999 10:48 PM
To: '[email protected]'
Subject: Forte Versus PowerBuilder
We are in the process of consolidating information pertaining to the
benefits and draw-backs associated with moving from Powerbuilder to
Forte.
Has anyone made this transition?
What were the driving factors for this move?
What were the benefits?
What were the costs?
Were there any particular types of applications that you would recommend
Powerbuilder over Forte?
Were there any particular limitations that you discovered when moving to
Forte?
After applications were converted, what were your conclusions on the
overall
conversion process?
Did your conclusions validate that moving to Forte was the right choice?
Thanks for your help!
Brian
To unsubscribe, email '[email protected]' with
'unsubscribe forte-users' as the body of the message.
Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>-
To unsubscribe, email '[email protected]' with
'unsubscribe forte-users' as the body of the message.
Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>
Peggy,
1) Do you have experience with PowerBuilder and Forte' applications running at
the same time on the same (laptop) computer? Here I'm thinking
about any potential resource constraints? Memory Requirements?As log as you are using Win95 or NT you should not be concerned about WIN-resources. Memory depends more on what your 2 tier PB application requires than what your Forté would require.
Cheers,
Troels
Lindhard Forté Solutions
-----Original Message-----
From: Peggy Lynn Adrian [SMTP:[email protected]]
Sent: Thursday, January 15, 1998 10:31 PM
To: [email protected]
Subject: Forte and Powerbuilder Experience Needed
I sent this query to Forte support but maybe someone out there can help me
with practical experience
with the following?
---------------------- Forwarded by Peggy Lynn Adrian/AM/LLY on 01/15/98 04:30
PM ---------------------------
Peggy Lynn Adrian
01/14/98 03:55 PM
To: [email protected]
cc: Peggy Lynn Adrian/AM/LLY@Lilly
Subject: Forte and Powerbuilder Experience Needed
1) Do you have experience with PowerBuilder and Forte' applications running at
the same time on the same (laptop) computer? Here I'm thinking
about any potential resource constraints? Memory Requirements?
2) Can PowerBuilder and Forte' applications call and interact with one
another?
The Forte' application will need to interact with the PowerBuilder application
to pull out information maintained by the PB application.
Similar Messages
-
We are in the process of consolidating information pertaining to the
benefits and draw-backs associated with moving from Powerbuilder to Forte.
Has anyone made this transition?
What were the driving factors for this move?
What were the benefits?
What were the costs?
Were there any particular types of applications that you would recommend
Powerbuilder over Forte?
Were there any particular limitations that you discovered when moving to
Forte?
After applications were converted, what were your conclusions on the overall
conversion process?
Did your conclusions validate that moving to Forte was the right choice?
Thanks for your help!
Brian
To unsubscribe, email '[email protected]' with
'unsubscribe forte-users' as the body of the message.
Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>Peggy,
1) Do you have experience with PowerBuilder and Forte' applications running at
the same time on the same (laptop) computer? Here I'm thinking
about any potential resource constraints? Memory Requirements?As log as you are using Win95 or NT you should not be concerned about WIN-resources. Memory depends more on what your 2 tier PB application requires than what your Forté would require.
Cheers,
Troels
Lindhard Forté Solutions
-----Original Message-----
From: Peggy Lynn Adrian [SMTP:[email protected]]
Sent: Thursday, January 15, 1998 10:31 PM
To: [email protected]
Subject: Forte and Powerbuilder Experience Needed
I sent this query to Forte support but maybe someone out there can help me
with practical experience
with the following?
---------------------- Forwarded by Peggy Lynn Adrian/AM/LLY on 01/15/98 04:30
PM ---------------------------
Peggy Lynn Adrian
01/14/98 03:55 PM
To: [email protected]
cc: Peggy Lynn Adrian/AM/LLY@Lilly
Subject: Forte and Powerbuilder Experience Needed
1) Do you have experience with PowerBuilder and Forte' applications running at
the same time on the same (laptop) computer? Here I'm thinking
about any potential resource constraints? Memory Requirements?
2) Can PowerBuilder and Forte' applications call and interact with one
another?
The Forte' application will need to interact with the PowerBuilder application
to pull out information maintained by the PB application. -
Has anyone had experience in integrating PowerBuilder Applications into a
Forte environment?
To unsubscribe, email '[email protected]' with
'unsubscribe forte-users' as the body of the message.
Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>Peggy,
1) Do you have experience with PowerBuilder and Forte' applications running at
the same time on the same (laptop) computer? Here I'm thinking
about any potential resource constraints? Memory Requirements?As log as you are using Win95 or NT you should not be concerned about WIN-resources. Memory depends more on what your 2 tier PB application requires than what your Forté would require.
Cheers,
Troels
Lindhard Forté Solutions
-----Original Message-----
From: Peggy Lynn Adrian [SMTP:[email protected]]
Sent: Thursday, January 15, 1998 10:31 PM
To: [email protected]
Subject: Forte and Powerbuilder Experience Needed
I sent this query to Forte support but maybe someone out there can help me
with practical experience
with the following?
---------------------- Forwarded by Peggy Lynn Adrian/AM/LLY on 01/15/98 04:30
PM ---------------------------
Peggy Lynn Adrian
01/14/98 03:55 PM
To: [email protected]
cc: Peggy Lynn Adrian/AM/LLY@Lilly
Subject: Forte and Powerbuilder Experience Needed
1) Do you have experience with PowerBuilder and Forte' applications running at
the same time on the same (laptop) computer? Here I'm thinking
about any potential resource constraints? Memory Requirements?
2) Can PowerBuilder and Forte' applications call and interact with one
another?
The Forte' application will need to interact with the PowerBuilder application
to pull out information maintained by the PB application. -
Re: Forte and OrbixWeb call-back
We have created a business process manager (BPM) layer between our client GUI
and business model objects that supports Java call-in/call-out. This enables
switching out the Forte windows with Java windows for a web solution with
minimal code re-write.
We were able to get most functionality to work as per our design, which
included registering a call back function from a Java GUI in the BPM, but had
to make some sacrifices due to a Forte bug, at least under 3.0.D. We turned
in case #38434, detailing errors when we tried to fire a callback method with
parameters, example below ("callback" was the Java object passed in.)
method TestIIOPBackend.FireCallback(input message: Framework.string)
begin
if callback != nil then
task.part.logmgr.putline('Firing callback');
//WORKS
callback.CallMe();
//ERROR!
callback.CallMeString(message);
else
task.part.logmgr.putline('Callback not set');
end if;
end method;
This may have been fixed in 3.0.F, we found a way to work around it in our
design and haven't investigated since.
-DFR
Ngai* Stuart <[email protected]> on 01/20/98 09:14:28 AM
To: '[email protected]' <[email protected]> @ INTERNET
cc:
Subject: Forte and OrbixWeb call-back
Has anyone actually tried the tech note 11153 "Java call-in/call-out and
Forte
Anchored Objects"? I'm trying to verify the callback mechanism from
Forte to
an IIOP Java client. Thanks.
<<< Stuart Ngai (416)359-4306 [email protected] >>>
------ Message Header Follows ------
Received: from pebble.SageIT.com by notes.bsginc.com
(PostalUnion/SMTP(tm) v2.1.9c for Windows NT(tm))
id AA-1998Jan20.101336.1771.787915; Tue, 20 Jan 1998 10:13:36 -0600
Received: (from sync@localhost) by pebble.SageIT.com (8.6.10/8.6.9) id HAA03868
for forte-users-outgoing; Tue, 20 Jan 1998 07:25:41 -0800
Received: (from uucp@localhost) by pebble.SageIT.com (8.6.10/8.6.9) id HAA03862
for <[email protected]>; Tue, 20 Jan 1998 07:25:39 -0800
Received: from keeper.nesbittburns.ca(192.139.71.50) by pebble.sagesoln.com via
smap (V2.0)
id xma003860; Tue, 20 Jan 98 07:25:19 -0800
Received: from NesbittBurns.ca (tds223.nesbittburns.ca) by
keeper.NesbittBurns.ca (4.1/SMI-4.1)
id AA22591; Tue, 20 Jan 98 10:23:47 EST
Received: from nbtormail02.nesbittburns.ca by NesbittBurns.ca (5.x/SMI-SVR4)
id AA12961; Tue, 20 Jan 1998 10:26:54 -0500
Received: by nbtormail02.nesbittburns.ca with SMTP (Microsoft Exchange Server
Internet Mail Connector Version 4.0.995.52)
id <[email protected]>; Tue, 20 Jan 1998
10:27:52
-0500
Message-Id:
<c=CA%a=_%p=Nesbitt_Burns_In%[email protected]>
From: "Ngai, Stuart" <[email protected]>
To: "'[email protected]'" <[email protected]>
Subject: Forte and OrbixWeb call-back
Date: Tue, 20 Jan 1998 10:27:39 -0500
X-Mailer: Microsoft Exchange Server Internet Mail Connector Version 4.0.995.52
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: [email protected]
Precedence: bulk
Reply-To: "Ngai, Stuart" <[email protected]>Peggy,
1) Do you have experience with PowerBuilder and Forte' applications running at
the same time on the same (laptop) computer? Here I'm thinking
about any potential resource constraints? Memory Requirements?As log as you are using Win95 or NT you should not be concerned about WIN-resources. Memory depends more on what your 2 tier PB application requires than what your Forté would require.
Cheers,
Troels
Lindhard Forté Solutions
-----Original Message-----
From: Peggy Lynn Adrian [SMTP:[email protected]]
Sent: Thursday, January 15, 1998 10:31 PM
To: [email protected]
Subject: Forte and Powerbuilder Experience Needed
I sent this query to Forte support but maybe someone out there can help me
with practical experience
with the following?
---------------------- Forwarded by Peggy Lynn Adrian/AM/LLY on 01/15/98 04:30
PM ---------------------------
Peggy Lynn Adrian
01/14/98 03:55 PM
To: [email protected]
cc: Peggy Lynn Adrian/AM/LLY@Lilly
Subject: Forte and Powerbuilder Experience Needed
1) Do you have experience with PowerBuilder and Forte' applications running at
the same time on the same (laptop) computer? Here I'm thinking
about any potential resource constraints? Memory Requirements?
2) Can PowerBuilder and Forte' applications call and interact with one
another?
The Forte' application will need to interact with the PowerBuilder application
to pull out information maintained by the PB application. -
Re: How to call a Forte service from a Power Builderapplication
Ernesto,
There are two main ways that you can integrate PowerBuilder with a set
of Forte services:
First, you can use the tried-and-true ExternalConnection approach. This
would require some way of performing socket-level communication through
the PB application, which may be possible natively through PB (I'm rusty
on my PB skills), or you could get a third-party OCX to perform the
socket-level communication.
Second, you can, in Forte 3.0, set Forte services up as OLE servers,
into which your PowerBuilder application can call.
The OLE integration with Forte is discussed in the Integrating with
Windows and Macintosh manual, and ExternalConnections is discussed (I
think) in the Integrating with External Systems manual.
The best way to integrate Forte and PowerBuilder is ultimately up to
your team. You want to make sure that you choose the option that will
make your project successful, and determining which option best utilizes
you existing skill sets is an important consideration. Additionally,
you might want to perform some limited testing to determine which
approach will perform the best within your environment constraints. The
nice thing about Forte (and I know I've said this before) is that it is
relatively simple to integrate anything with anything! :)
I hope this helps.
-Katie
Ernesto Moscatelli wrote:
>
Hi,
we need to interface a PowerBuilder application (running under W/NT) to
a Forté service (running under Solaris): is there anybody who has
already done it? Which is the best (and most efficient) way to do it?
Thanks a lot,
Ernesto Moscatelli
EDS Italy
Banking Division--
Katie Carty
Senior Consultant
Forte Software, Inc.
http://www.forte.com
4801 Woodway Drive, Suite 300E
Houston, Texas 77056
vmail: (510) 986-3802
email: [email protected]
**************************************************Ernesto,
There are two main ways that you can integrate PowerBuilder with a set
of Forte services:
First, you can use the tried-and-true ExternalConnection approach. This
would require some way of performing socket-level communication through
the PB application, which may be possible natively through PB (I'm rusty
on my PB skills), or you could get a third-party OCX to perform the
socket-level communication.
Second, you can, in Forte 3.0, set Forte services up as OLE servers,
into which your PowerBuilder application can call.
The OLE integration with Forte is discussed in the Integrating with
Windows and Macintosh manual, and ExternalConnections is discussed (I
think) in the Integrating with External Systems manual.
The best way to integrate Forte and PowerBuilder is ultimately up to
your team. You want to make sure that you choose the option that will
make your project successful, and determining which option best utilizes
you existing skill sets is an important consideration. Additionally,
you might want to perform some limited testing to determine which
approach will perform the best within your environment constraints. The
nice thing about Forte (and I know I've said this before) is that it is
relatively simple to integrate anything with anything! :)
I hope this helps.
-Katie
Ernesto Moscatelli wrote:
>
Hi,
we need to interface a PowerBuilder application (running under W/NT) to
a Forté service (running under Solaris): is there anybody who has
already done it? Which is the best (and most efficient) way to do it?
Thanks a lot,
Ernesto Moscatelli
EDS Italy
Banking Division--
Katie Carty
Senior Consultant
Forte Software, Inc.
http://www.forte.com
4801 Woodway Drive, Suite 300E
Houston, Texas 77056
vmail: (510) 986-3802
email: [email protected]
************************************************** -
Can't retrieve data dictionary items in 8.0.5 DB from Powerbuilder
Hello all,
I'm using Powerbuilder 7.0 in an actual project.
The database is Oracle 8.0.5.1.0 for Linux (Distribution is SuSE 6.0)
There's some strange behaviour which prevents developing with the database:
- Connected as user system in Powerbuilder. No problems during connect. Trace activated.
- Appears grapical table list. When trying to retrieve column attributes of selected table Powerbuilder hangs. The grants on the selected dictionary views have been checked and user system has been granted role dba.
These are the traced statements Only the last one doesn't work - doesn't come back with a result.
WORKS: SELECT OWNER, TABLE_NAME, TABLE_TYPE
FROM SYS.ALL_CATALOG WHERE OWNER <> 'SYS'
AND TABLE_TYPE IN ('TABLE','VIEW') (0 MilliSeconds)
WORKS: SELECT S.OWNER, S.SYNONYM_NAME
FROM SYS.ALL_SYNONYMS S, SYS.ALL_OBJECTS O
WHERE (S.TABLE_OWNER <> 'SYS'
AND O.OBJECT_NAME = S.TABLE_NAME
AND O.OWNER = S.TABLE_OWNER
AND O.OBJECT_TYPE IN ('VIEW','TABLE'))
UNION SELECT Q.OWNER, Q.SYNONYM_NAME
FROM SYS.ALL_SYNONYMS Q
WHERE (Q.TABLE_OWNER <> 'SYS'
AND Q.DB_LINK IS NOT NULL) (0 MilliSeconds) (5518 MilliSeconds)
COLUMNS INFORMATION: TABLE=ac OWNER=geco2
WORKS: SELECT COLUMN_NAME, COLUMN_ID, DATA_TYPE_OWNER, DATA_TYPE, DATA_LENGTH, DATA_PRECISION, DATA_SCALE,
NULLABLE, DATA_DEFAULT
FROM SYS.ALL_TAB_COLUMNS
WHERE TABLE_NAME = 'AC'
AND OWNER = 'GECO2'
ORDER BY COLUMN_ID (0 MilliSeconds) (981 MilliSeconds)
WORKS: SELECT INDEX_NAME, UNIQUENESS
FROM SYS.ALL_INDEXES
WHERE TABLE_OWNER = 'GECO2'
AND TABLE_NAME = 'AC' (0 MilliSeconds)
WORKS: SELECT COLUMN_NAME, COLUMN_POSITION
FROM SYS.ALL_IND_COLUMNS
WHERE INDEX_NAME = 'GECO_ACC_MAIS_ID'
AND TABLE_NAME = 'AC'
AND TABLE_OWNER = 'GECO2' (0 MilliSeconds)
(29c0020): PRIMARY KEY RETRIEVE:
APPLICATION HANGS: SELECT SYS.ALL_CONS_COLUMNS.COLUMN_NAME, SYS.ALL_CONSTRAINTS.CONSTRAINT_NAME
FROM SYS.ALL_CONSTRAINTS,SYS.ALL_CONS_COLUMNS
WHERE SYS.ALL_CONSTRAINTS.CONSTRAINT_TYPE ='P'
AND SYS.ALL_CONSTRAINTS.TABLE_NAME = 'AC'
AND SYS.ALL_CONSTRAINTS.OWNER = 'GECO2'
AND SYS.ALL_CONSTRAINTS.CONSTRAINT_NAME = SYS.ALL_CONS_COLUMNS.CONSTRAINT_NAME
AND SYS.ALL_CONSTRAINTS.TABLE_NAME = SYS.ALL_CONS_COLUMNS.TABLE_NAME
AND SYS.ALL_CONSTRAINTS.OWNER = SYS.ALL_CONS_COLUMNS.OWNER
ORDER BY SYS.ALL_CONSTRAINTS.CONSTRAINT_NAME,SYS.ALL_CONS_COLUMNS.POSITION (0 MilliSeconds)
I've rerun CATALOG.SQL and CATPROC.SQL; I've installed an 8.0.5-Database under NT and had no problem.
A collegue working with the Java IDE Forti and connecting with JDBC has a very similar problem.
At the moment the project can't go on because of this problem.
Any hint would be welcome
Thanks
Juergen
nullHi all, thx for your reply, i have found where is my error :)
In dbSelectUniqueRow() method,
//put the attr value into arrayList
for(int j=1; j<=fieldList.size(); j++) {
columnValues.add((String)rs.getObject(j));
}i shouldn't put all the value into the arrayList, instead i should put in the primary key,
Then in client side, I can cast it to remoteInterface. After that, i can retrieve the value in client using
Staff s = (Staff)home.FindByName("XXX"); -
Service objects inside libraries (WAS: Interfaces in Forte -has anyon
The following message is actually not about interfaces, but libraries:
> From: Jeanne Hesler <[email protected]>
> To: [email protected] <[email protected]>
> Date: Thursday, July 30, 1998 11:12 AM
> Subject: RE: Interfaces in Forte - has anyone used them?
>>
> Just to clarify a few things:
>>
1) Just to be 100% correct -- it is actually Libraries that areloaded and
not Interfaces. The distinction is important because a librarycould
potentially implement many interfaces (or provide manyimplementations for a
single interface).
2) The code in a Library may reference a service object, but itmay not
define a service object. Of course any SO's referenced by thelibrary
must already be known to the loading partition. It is OK to havecode like
this in a library:
MySO.doSomething();
The documentation is a little vague on this point, but I haveconfirmed that
this is true through Tech Support and by experimentation.
Actually you CAN define and use service objects inside libraries
(compiled or interpreted) with two restrictions:
1) You can not define two service objects inside library in different
projects and call one of them from another. If you need that, both
service objects must be in the same project.
2) If service object is defined and used only by library (if it never
referenced directly by application code), than in order to be able to
partition application, you will need to create dummy method inside
application, which will reference this service object (you do not need
to execute this method - just have in the code).
WBR,
Nickolay Sakharov.
To unsubscribe, email '[email protected]' with
'unsubscribe forte-users' as the body of the message.
Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>The way stateful Web services are currently handled is through the use of cookies ... once your stub invokes a stateful Web service a cookie is created which routes subseqent requests back to the Web service.
In your scenario, the problem is given one client has creates Web service 1 and now Web service 2 would like to be able to use that state it really isn't possible unless you engineer a solution yourself ... you would need so somehow set the cookie on your Web service 2 client to that of the original client to Web service 1. State tends to be based around an individual client versus multiple clients for that state.
There are numerous ways around this but you would be engineering around the issue ... the easiest is to write the state out somewhere so that it can be shared.
This section of the doc gives a brief overview:
http://download-west.oracle.com/docs/cd/A97688_06/generic.903/b10004/javaservices.htm
Lastly be aware there is a bug with timeouts in stateful Web services in Oracle9iAS 9.0.3 that has been fixed in 9.0.4. I can't find the thread here that documents it but when I track it down I will post the link so you can see the workaround.
Mike. -
RE: (forte-users) MaxWaitDepth?
MessagesWaiting is the number of message/transaction currently waiting for a
free partition.
ka
-----Original Message-----
From: Brenda Cumming [mailto:brenda_cummingtranscanada.com]
Sent: Friday, August 11, 2000 1:36 PM
To: joe.wolfesasktel.sk.ca
Cc: forte usergroup
Subject: Re: (forte-users) MaxWaitDepth?
Thanks, what is the difference between that and MessagesWaiting?
joe.wolfesasktel.sk.ca wrote:
It is the maximum number of messages that were waiting for a replicated
partition to be available (not busy).
"Brenda Cumming" <brenda_cummingtranscanada.com> on 08/11/2000 11:24:28AM
>
To: forte usergroup <kamranaminyahoo.com>
cc: (bcc: Joe Wolfe/SaskTel/CA)
Subject: (forte-users) MaxWaitDepth?
Can someone tell me what MaxWaitDepth represents on a router partition
agent?
For the archives, go to: http://lists.xpedior.com/forte-users and use
the login: forte and the password: archive. To unsubscribe, send in a new
email the word: 'Unsubscribe' to: forte-users-requestlists.xpedior.com--
For the archives, go to: http://lists.xpedior.com/forte-users and use
the login: forte and the password: archive. To unsubscribe, send in a new
email the word: 'Unsubscribe' to: forte-users-requestlists.xpedior.comMessagesWaiting is the current number of messages waiting versus the high water
mark recorded by MaxWaitDepth.
"Brenda Cumming" <brenda_cummingtranscanada.com> on 08/11/2000 11:36:15 AM
To: Joe Wolfe/SaskTel/CASaskTel
cc: forte usergroup <kamranaminyahoo.com>
Subject: Re: (forte-users) MaxWaitDepth?
Thanks, what is the difference between that and MessagesWaiting?
joe.wolfesasktel.sk.ca wrote:
It is the maximum number of messages that were waiting for a replicated
partition to be available (not busy).
"Brenda Cumming" <brenda_cummingtranscanada.com> on 08/11/2000 11:24:28 AM
To: forte usergroup <kamranaminyahoo.com>
cc: (bcc: Joe Wolfe/SaskTel/CA)
Subject: (forte-users) MaxWaitDepth?
Can someone tell me what MaxWaitDepth represents on a router partition
agent?
For the archives, go to: http://lists.xpedior.com/forte-users and use
the login: forte and the password: archive. To unsubscribe, send in a new
email the word: 'Unsubscribe' to: forte-users-requestlists.xpedior.com -
How to call a Forte service from a Power Builderapplication
Hi,
we need to interface a PowerBuilder application (running under W/NT) to
a Forté service (running under Solaris): is there anybody who has
already done it? Which is the best (and most efficient) way to do it?
Thanks a lot,
Ernesto Moscatelli
EDS Italy
Banking DivisionHi,
we need to interface a PowerBuilder application (running under W/NT) to
a Forté service (running under Solaris): is there anybody who has
already done it? Which is the best (and most efficient) way to do it?
Thanks a lot,
Ernesto Moscatelli
EDS Italy
Banking Division -
RE: (forte-users) 3J= 3M new to me error
Hi Thomas,
Thanks for your email but I think it will be interesting for Brenda not me.
It is exactly what I have expected from Forte Support: detailed information
about bugs and workarounds. But what I cannot understand is that #53398 was
released without any information about possible reasons for this problem or
suggested workarounds. My first reaction after reading this bugreport was to
open a new case at CallCenter to get more information about it. Please
release more information with your bug reports !
Regards
Zenon Adamek
Information Services
Senior Programmer Analyst
Tel: 905 712-1084 ext. 3628
Fax: 905 712-6709
E-mail: zadamekpurolator.com
-----Original Message-----
From: Thomas Degen - Sun Germany Forte Tools - Bonn
[SMTP:thomas.degensun.com]
Sent: Wednesday, September 27, 2000 9:49 AM
To: Adamek, Zenon
Cc: 'Brenda Cumming'; Forte-userslists.xpedior.com
Subject: RE: (forte-users) 3J=>3M new to me error
Hi Zenon,
bug #53398 is not a bug which will likely get fixed, it's an informational
bugreport.
You might see an errorstack like Brenda has reported (and described in
informational
bugreport #53398) probably when you are doing something illegal that is
possible
via Forte Tool but Forte is not trapping it for performance reasons. Hence
you will see
the error coming from your illegal operation only at runtime, probably
only
while
running interpreted in the Forte IDE, but in worst case it might be even a
segmentation
violation.
Technotes 12448 'Sudden client partition crashes at runtime' and 11225
'Don't reparent
mapped Widgets between UserWindows at runtime' explain this matter . See
attached.
But maybe Brenda is much more experiencing a problem as described by Forte
Technote 11398 'Read Only Workspace Errors using ListViews or ActiveX
control'
that might get easily resolved via setting of FORTE_YIELD_THROTTLE=0.
Good Luck and Best Regards !
BTW: I've logged bug #53398, so I've felt responsible to explain its real
background.
Thomas
Thomas Degen
Sun Microsystems - Forte Tools
Forte CTE & Sustaining Group
Technical Support Germany
tel.:+49.228/91499-50
MailTo:thomas.degensun.com
Technote 11398 Read Only Workspace Errors using ListViews or ActiveX
control
SCENARIO:
Getting some unusual interpreter errors that result in an error stating
that
the workspace has been set to read only. Please see Enclosures for the
two
most common error stacks that have been encountered. The abbreviated
versions of the errors are:
- Can't read record (record size = -1)
- Id in index does not match id in record header in data file
- Recursive deserialization attempted.
- Unknown Mark type in deserialization
- Could not read record (64,74615) from repository data file.
Header
is corrupt.
These errors can be happening in either the development environment when
running from one of the development workshops, or with the deployed
application.
The bug outlined in this Technote may be the culprit if the errors above
are
seen when running a client on Windows NT or Motif and the user interface
incorporates ActiveX controls or ListView/TreeView widgets.
CAUSE:
Basically what is happening is that in rare circumstances Forte may invoke
a
nested copy of the interpreter while the first interpreter has yielded.
This
is not a problem in and of itself, but in the case where the original
interpreter was in the middle of a repository fetch when it yielded, and
the second interpreter needs to fetch code as well, we will get one of the
errors listed above, depending on the exact timing. The reason for the
errors is that the repository code at this level is thread-safe but not
re-entrant. It is protected by a mutex that is already owned by the
current task. Which, given the scenario outlined here, where the two
interpreters are running inside of the same task, results in the nested
interpreter being allowed to change data out from under the first.
While for every fetch one or more calls to WindowSystem.Yield will be made
(this is there to prevent the semblance of system lock-up on Win 3.1,
where
Yield is the only way other applications can be allowed to run), there is
a parameter which controls how often to actually yield, which by default
is
set to one out of every 100 calls. This is the reason the problem is
intermittent--you need a yield to occur during a repository fetch
which starts another interpreter which also needs to fetch code from
disk.
The reason this has only surfaced recently is that the nested interpreter
scenario can only happen in 2 cases that we know of:
- ActiveX controls which respond to events/Windows messages
- Outline fields/ListViews with column(s) mapped to virtual
attributes
In all other normal cases, the yield can process the message (typically a
paint message) without starting another interpreter, so regardless of
whether
the first interpreter yielded during a repository operation or not, there
is
no conflict.
SOLUTION:
The workaround is to prevent yields altogether by setting the
FORTE_YIELD_THROTTLE environment variable equal to 0 in the client's
environment. This should have no detrimental effects since the yield code
is in place solely for Windows 3.1x clients.
ERROR STACK 1
SYSTEM ERROR: Because of a prior error, your workspace was set to
read-only to
prevent the application from attempting to write to the repository. The
repository and work you have saved to the repository are safe. If your
workspace
contains unsaved work, you may use the following procedure to save this
work.
First, export the changed components. Then, shut down and restart this
application and reopen this workspace in read-write mode. Finally, import
the
changed components and save your workspace.
Class: qqrp_RepResourceException
Error #: [1101, 695]
Detected at: qqrp_Session::GetObjectById
Last TOOL statement: method EFWindowController.EFEventLoop
Error Time: Tue Nov 18 15:58:47
Exception occurred (locally) on partition "ConPlus_GUI_cl0_Client",
(partitionId = 7EFAE060-4AFA-11D1-A1C1-1FDC8A99AA77:0x446:0x1,
taskId =
[7EFAE060-4AFA-11D1-A1C1-1FDC8A99AA77:0x446:0x1.23]) in application
"ConPlus_GUI_cl0", pid 147 on node ISD060 in environment EdgeTest.
The remainder of the Error Manager stack is:
SYSTEM ERROR: Internal Error attempting to deserialize element (64,67470)
(fetch
bitmask is 0x20). Your workspace is now read-only to prevent the
application
from attempting to write to the repository. The repository and work you
have
saved to the repository are safe. If your workspace contains unsaved work,
you
may use the following procedure to save this work. First, export the
changed
components. Then, shut down and restart this application and reopen this
workspace in read-write mode. Finally, import the changed components and
save
your workspace.
Class: qqrp_RepResourceException
Error #: [1101, 61]
Detected at: qqrp_LogicalSession::MaterializeObject
Last TOOL statement: method EFTabManagerNew.EFNoteBookHandler
Error Time: Tue Nov 18 15:58:47
Exception occurred (locally) on partition "ConPlus_GUI_cl0_Client",
(partitionId = 7EFAE060-4AFA-11D1-A1C1-1FDC8A99AA77:0x446:0x1,
taskId =
[7EFAE060-4AFA-11D1-A1C1-1FDC8A99AA77:0x446:0x1.23]) in application
"ConPlus_GUI_cl0", pid 147 on node ISD060 in environment EdgeTest.
SYSTEM ERROR: Unknown Mark type in deserialization.
Class: qqsp_ImplementationException
Error #: [1101, 34]
Detected at: qqrp_DeSerializeObject::ProcessHdr
Error Time: Tue Nov 18 15:58:47
Exception occurred (locally) on partition "ConPlus_GUI_cl0_Client",
(partitionId = 7EFAE060-4AFA-11D1-A1C1-1FDC8A99AA77:0x446:0x1,
taskId =
[7EFAE060-4AFA-11D1-A1C1-1FDC8A99AA77:0x446:0x1.23]) in application
"ConPlus_GUI_cl0", pid 147 on node ISD060 in environment EdgeTest.
ERROR STACK 2
SYSTEM ERROR: A serious error has occurred in Repository
(c:\PROGRA~1\CSSPTEST\conplu0). Corrective action may be necessary.
Notify
your repository administrator.
Class: qqsp_ImplementationException
Error #: [1101, 198]
Detected at: qqrp_Repository::Fetch
Last TOOL statement: method
SalesDevelopment_NWC.DEVNotifyofTabSetCurrent
Error Time: Wed Dec 03 10:27:22
Exception occurred (locally) on partition "ConPlus_GUI_cl0_Client",
(partitionId = 769D4310-6B88-11D1-84FD-65BF87C8AA77:0x121:0x1,
taskId =
[769D4310-6B88-11D1-84FD-65BF87C8AA77:0x121:0x1.22]) in application
"ConPlus_GUI_cl0", pid 172 on node ISD42 in environment Edge.
SYSTEM ERROR: Could not read record (64,74615) from repository data file.
Header is corrupt.
Class: qqsp_ImplementationException
Error #: [1106, 612]
Detected at: qqbt_BtreeAccess::FetchDataFileRecord
Error Time: Wed Dec 03 10:27:22
Exception occurred (locally) on partition "ConPlus_GUI_cl0_Client",
(partitionId = 769D4310-6B88-11D1-84FD-65BF87C8AA77:0x121:0x1,
taskId =
[769D4310-6B88-11D1-84FD-65BF87C8AA77:0x121:0x1.22]) in application
"ConPlus_GUI_cl0", pid 172 on node ISD42 in environment Edge.
Technote 11225 Don't reparent mapped Widgets between UserWindows at
runtime
It is sometimes tempting to unparent a widget from one UserWindow and
reparent
it into another at runtime. However, this can cause crashes if the widget
(or
its decendants) are "mapped" to data. Here's why...
Suppose you have two UserWindows, UW1 and UW2. UW1 contains a DataField
(DF1)
which is mapped to a TextData. UW2 contains a RadioList (RL2) which is
mapped to
a scalar Integer. At compile time, every mapped attribute is internally
assigned
a "Map ID" (a small integer) which is used to tie the Widget to its
corresponding attribute. These Map IDs are used by the Widget to look up a
pointer to their data in a "Map" which is maintained by the UserWindow.
Each
UserWindow is assumed be to independent of the others, so there is nothing
wrong
with Widgets in different UserWindows being assigned the same Map IDs.
In
this
case, let's assume that DF1 and RL2 both got assigned the same Map ID of
3. No
problem so far, since each lives in a separate UserWindow with a separate
map.
Now suppose at runtime the application "detaches" or unparents DF1 from
its
UserWindow and reparents it somewhere into UW2. When it comes time for DF1
to
paint itself the Display System it must ask the Runtime System for the
value of
DF1's mapped attribute. To do that it says "give me the value of the
TextData
for DF1. You'll find it in the Map for this UserWindow (UW1), and its Map
ID is
3". When the runtime system goes to do this it expects to find a TextData
in
this "slot" of the map, but instead it picks up the integer which is
mapped to
RL2. At best this leads to bad data being returned; more likely you get a
segfault and a crash.
If DF1 was not a mapped attribute (say, a Rectangle) there would be no
problem
because there is no data mapped to a Rectangle. If instead of moving DF1
you
created a brand new DataField on the fly there would be no problem,
because the
dynamic DataField would not have any Map ID and so couldn't conflict with
any
IDs in UW2.
So how do you solve this problem? This is exactly what Nested Windows are
all
about. While you can't move DF1 into the middle of UW2, you can nest
UW1.
This
works because UW1 brings its map with it, and when you access DF1 it knows
to
look up its value in UW1's map.
UserWindows are intended to be the "unit of compilabilty" that can be
nested
inside other UserWindows. It is dangerous to "transplant" anything from
inside
one UserWindow into another at runtime.
(Note that you can't avoid this problem by cloning DF1 because the MapID
gets
copied along with it, and the clone will fail in the same way.)
Further details explained in related technote 12448 'Sudden client
partition
crashes at runtime.'
Technote 12448 Sudden client partition crashes at runtime
Scenario : You have two UserWindows, A and B. When Window A starts up, it
instantiates an instance of B and reparents some component of B into A's
window
hierarchy.
This is not allowed and almost always leads to an error at best or at
worse a
segmentation fault.
Here's why :
When you compile a UserWindow in Forte, each "mapped attribute" (whether a
form
element or menu element) is assigned an internal ID which represents an
offset into
that UserWindow's table of mapped attributes. This offset is only valid
in the
context of the UserWindow in which it was compiled. If you detach a
FieldWidget or
MenuWidget from one compiled Window ("tmpMenu" for example) and then
parent
into another compiled window ("tmpWindow") the internal ID comes with it.
When Forte tries to make use of that copied widget it uses the ID as an
offset
into tmpWindow's table of mapped attributes. But that copied offset is
meaningless in the context of tmpWindow's table, so you get some kind off
error.
In this case it found that the data type of the variable in the slot
wasn't
what
was expected. But you might even index off the end of the table and get a
segmentation fault.
There is nothing to prevent you from dynamically creating menu items and
adding
them to a window at runtime; that will work fine. Although of course you
can't
access them via mapped attributes, since those can only be created at
compile time.
But you are not allowed to reparent a widget from one compiled UserWindow
into
the hierarchy of another.
More information may be found in technote 11225 'Don't reparent mapped
Widgets
between UserWindows at runtime'.
Possible errorstacks seen at runtime instead of a complete crash or
segmentation
violation while you are illegally reparenting a widget or menuitem between
windows
at runtime:
Map::SetSubjectData: Invalid conversion from map type 0 to subject type 22
SYSTEM ERROR: Bad parameter at location 3 in method
qqrt_MapClassAccess::ProcessSubjectData.
Class: qqsp_Exception
Error #: [1001, 381]
Detected at: qqrt_MapClassAccess::ProcessSubjectData at 3
Error Time: Wed Aug 09 13:03:57
Exception occurred (locally) on partition "testproject_CL0_Client",
(partitionId = D4914A10-36C1-11D4-91B3-419AA33BAA77:0x208:0xd,
taskId =
[D4914A10-36C1-11D4-91B3-419AA33BAA77:0x208:0xd.68]) in application
"FTLaunch_cl0", pid 672 on node ONEWAY in environment Audi3M2Env.
At 13:14 26.09.00 -0400, Adamek, Zenon wrote:
Hi,
It is the unfixed defect 53398. Please contact Forte support.
Zenon
-----Original Message-----
From: Brenda Cumming [SMTP:brenda_cummingtranscanada.com]
Sent: Tuesday, September 26, 2000 1:15 PM
To: Forte User group
Subject: (forte-users) 3J=>3M new to me error
Hi,
We are in the process of going from 3J1 to 3.0.M.2, and I am getting
this error that I am unfamiliar with on a GUI that works fine in 3J.
It
does not happen all the time, and I have been unable to establish the
pattern that kicks it off. Has anyone seen this before?
PS- this error is not occurring in the deployed (non-compiled) app,but
when I am running locally from my workspace.
SYSTEM ERROR: Bad parameter at location 6 in method
qqrt_MapClassAccess::ProcessSubjectData.
Class: qqsp_Exception
Error #: [1001, 381]
Detected at: qqrt_MapClassAccess::ProcessSubjectData at 6
Error Time: Wed Sep 20 14:32:54
Exception occurred (locally) on partition
"ABSDevtStartUp_CL0_Client",
(partitionId = 36172000-5DA8-11D4-B1F0-14015EDAAA77:0x2da:0x2,
taskId =
[36172000-5DA8-11D4-B1F0-14015EDAAA77:0x2da:0x2.25]) in
application
"Forte_cl0", pid 93 on node T5621 in environment AbisDMEnv.
SYSTEM ERROR: Can't find scope 20070 for a class.
Class: qqsp_Exception
Error #: [201, 11]
Detected at: qqlo_ClassTableLoadScope at 1
Error Time: Wed Sep 20 14:32:54
Exception occurred (locally) on partition"ABSDevtStartUp_CL0_Client",
(partitionId = 36172000-5DA8-11D4-B1F0-14015EDAAA77:0x2da:0x2, taskId =
[36172000-5DA8-11D4-B1F0-14015EDAAA77:0x2da:0x2.25]) in
application
"Forte_cl0", pid 93 on node T5621 in environment AbisDMEnv.
SYSTEM ERROR: Because of a prior error, your workspace was set to
read-only to prevent the application from attempting to write to the repository.
The repository and work you have saved to the repository are safe. If
your
workspace contains unsaved work, you may use the following procedure
to save this work. First, export the changed components. Then, shut down and
restart this application and reopen this workspace in read-write mode.
Finally, import the changed components and save your workspace.
Class: qqrp_RepResourceException
Error #: [1101, 695]
Detected at: qqrp_Session::IsDistributed
Last TOOL statement: method PPMeasWin.
Error Time: Wed Sep 20 14:32:54
Exception occurred (locally) on partition
"ABSDevtStartUp_CL0_Client",
(partitionId = 36172000-5DA8-11D4-B1F0-14015EDAAA77:0x2da:0x2, taskId =
[36172000-5DA8-11D4-B1F0-14015EDAAA77:0x2da:0x2.25]) in
application
"Forte_cl0", pid 93 on node T5621 in environment AbisDMEnv.
SYSTEM ERROR: Internal Error attempting to deserialize element
(64,120684) (fetch bitmask is 0x20). Your workspace is now read-onlyto
prevent
the application from attempting to write to the repository. The
repository
and work you have saved to the repository are safe. If your workspace
contains unsaved work, you may use the following procedure to savethis
work.
First, export the changed components. Then, shut down and restart this
application and reopen this workspace in read-write mode. Finally, import the
changed components and save your workspace.
Class: qqrp_RepResourceException
Error #: [1101, 61]
Detected at: qqrp_LogicalSession::MaterializeObject
Error Time: Wed Sep 20 14:32:54
Exception occurred (locally) on partition
"ABSDevtStartUp_CL0_Client",
(partitionId = 36172000-5DA8-11D4-B1F0-14015EDAAA77:0x2da:0x2, taskId =
[36172000-5DA8-11D4-B1F0-14015EDAAA77:0x2da:0x2.25]) in
application
"Forte_cl0", pid 93 on node T5621 in environment AbisDMEnv.
SYSTEM ERROR: Recursive Deserialization attempted, Internal Error!
Class: qqsp_UsageException with ReasonCode: SP_ER_INVALIDSTATE
Error #: [301, 231]
Detected at: qqsp_DeSerializeDriver::Run at 1
Error Time: Wed Sep 20 14:32:54
Exception occurred (locally) on partition"ABSDevtStartUp_CL0_Client",
(partitionId = 36172000-5DA8-11D4-B1F0-14015EDAAA77:0x2da:0x2, taskId =
[36172000-5DA8-11D4-B1F0-14015EDAAA77:0x2da:0x2.25]) in
application
"Forte_cl0", pid 93 on node T5621 in environment AbisDMEnv.
For the archives, go to: http://lists.xpedior.com/forte-users and use
the login: forte and the password: archive. To unsubscribe, send in anew
email the word: 'Unsubscribe' to:forte-users-requestlists.xpedior.com
For the archives, go to: http://lists.xpedior.com/forte-users and use
the login: forte and the password: archive. To unsubscribe, send in a new
email the word: 'Unsubscribe' to: forte-users-requestlists.xpedior.comHi Thomas,
Thanks for your email but I think it will be interesting for Brenda not me.
It is exactly what I have expected from Forte Support: detailed information
about bugs and workarounds. But what I cannot understand is that #53398 was
released without any information about possible reasons for this problem or
suggested workarounds. My first reaction after reading this bugreport was to
open a new case at CallCenter to get more information about it. Please
release more information with your bug reports !
Regards
Zenon Adamek
Information Services
Senior Programmer Analyst
Tel: 905 712-1084 ext. 3628
Fax: 905 712-6709
E-mail: zadamekpurolator.com
-----Original Message-----
From: Thomas Degen - Sun Germany Forte Tools - Bonn
[SMTP:thomas.degensun.com]
Sent: Wednesday, September 27, 2000 9:49 AM
To: Adamek, Zenon
Cc: 'Brenda Cumming'; Forte-userslists.xpedior.com
Subject: RE: (forte-users) 3J=>3M new to me error
Hi Zenon,
bug #53398 is not a bug which will likely get fixed, it's an informational
bugreport.
You might see an errorstack like Brenda has reported (and described in
informational
bugreport #53398) probably when you are doing something illegal that is
possible
via Forte Tool but Forte is not trapping it for performance reasons. Hence
you will see
the error coming from your illegal operation only at runtime, probably
only
while
running interpreted in the Forte IDE, but in worst case it might be even a
segmentation
violation.
Technotes 12448 'Sudden client partition crashes at runtime' and 11225
'Don't reparent
mapped Widgets between UserWindows at runtime' explain this matter . See
attached.
But maybe Brenda is much more experiencing a problem as described by Forte
Technote 11398 'Read Only Workspace Errors using ListViews or ActiveX
control'
that might get easily resolved via setting of FORTE_YIELD_THROTTLE=0.
Good Luck and Best Regards !
BTW: I've logged bug #53398, so I've felt responsible to explain its real
background.
Thomas
Thomas Degen
Sun Microsystems - Forte Tools
Forte CTE & Sustaining Group
Technical Support Germany
tel.:+49.228/91499-50
MailTo:thomas.degensun.com
Technote 11398 Read Only Workspace Errors using ListViews or ActiveX
control
SCENARIO:
Getting some unusual interpreter errors that result in an error stating
that
the workspace has been set to read only. Please see Enclosures for the
two
most common error stacks that have been encountered. The abbreviated
versions of the errors are:
- Can't read record (record size = -1)
- Id in index does not match id in record header in data file
- Recursive deserialization attempted.
- Unknown Mark type in deserialization
- Could not read record (64,74615) from repository data file.
Header
is corrupt.
These errors can be happening in either the development environment when
running from one of the development workshops, or with the deployed
application.
The bug outlined in this Technote may be the culprit if the errors above
are
seen when running a client on Windows NT or Motif and the user interface
incorporates ActiveX controls or ListView/TreeView widgets.
CAUSE:
Basically what is happening is that in rare circumstances Forte may invoke
a
nested copy of the interpreter while the first interpreter has yielded.
This
is not a problem in and of itself, but in the case where the original
interpreter was in the middle of a repository fetch when it yielded, and
the second interpreter needs to fetch code as well, we will get one of the
errors listed above, depending on the exact timing. The reason for the
errors is that the repository code at this level is thread-safe but not
re-entrant. It is protected by a mutex that is already owned by the
current task. Which, given the scenario outlined here, where the two
interpreters are running inside of the same task, results in the nested
interpreter being allowed to change data out from under the first.
While for every fetch one or more calls to WindowSystem.Yield will be made
(this is there to prevent the semblance of system lock-up on Win 3.1,
where
Yield is the only way other applications can be allowed to run), there is
a parameter which controls how often to actually yield, which by default
is
set to one out of every 100 calls. This is the reason the problem is
intermittent--you need a yield to occur during a repository fetch
which starts another interpreter which also needs to fetch code from
disk.
The reason this has only surfaced recently is that the nested interpreter
scenario can only happen in 2 cases that we know of:
- ActiveX controls which respond to events/Windows messages
- Outline fields/ListViews with column(s) mapped to virtual
attributes
In all other normal cases, the yield can process the message (typically a
paint message) without starting another interpreter, so regardless of
whether
the first interpreter yielded during a repository operation or not, there
is
no conflict.
SOLUTION:
The workaround is to prevent yields altogether by setting the
FORTE_YIELD_THROTTLE environment variable equal to 0 in the client's
environment. This should have no detrimental effects since the yield code
is in place solely for Windows 3.1x clients.
ERROR STACK 1
SYSTEM ERROR: Because of a prior error, your workspace was set to
read-only to
prevent the application from attempting to write to the repository. The
repository and work you have saved to the repository are safe. If your
workspace
contains unsaved work, you may use the following procedure to save this
work.
First, export the changed components. Then, shut down and restart this
application and reopen this workspace in read-write mode. Finally, import
the
changed components and save your workspace.
Class: qqrp_RepResourceException
Error #: [1101, 695]
Detected at: qqrp_Session::GetObjectById
Last TOOL statement: method EFWindowController.EFEventLoop
Error Time: Tue Nov 18 15:58:47
Exception occurred (locally) on partition "ConPlus_GUI_cl0_Client",
(partitionId = 7EFAE060-4AFA-11D1-A1C1-1FDC8A99AA77:0x446:0x1,
taskId =
[7EFAE060-4AFA-11D1-A1C1-1FDC8A99AA77:0x446:0x1.23]) in application
"ConPlus_GUI_cl0", pid 147 on node ISD060 in environment EdgeTest.
The remainder of the Error Manager stack is:
SYSTEM ERROR: Internal Error attempting to deserialize element (64,67470)
(fetch
bitmask is 0x20). Your workspace is now read-only to prevent the
application
from attempting to write to the repository. The repository and work you
have
saved to the repository are safe. If your workspace contains unsaved work,
you
may use the following procedure to save this work. First, export the
changed
components. Then, shut down and restart this application and reopen this
workspace in read-write mode. Finally, import the changed components and
save
your workspace.
Class: qqrp_RepResourceException
Error #: [1101, 61]
Detected at: qqrp_LogicalSession::MaterializeObject
Last TOOL statement: method EFTabManagerNew.EFNoteBookHandler
Error Time: Tue Nov 18 15:58:47
Exception occurred (locally) on partition "ConPlus_GUI_cl0_Client",
(partitionId = 7EFAE060-4AFA-11D1-A1C1-1FDC8A99AA77:0x446:0x1,
taskId =
[7EFAE060-4AFA-11D1-A1C1-1FDC8A99AA77:0x446:0x1.23]) in application
"ConPlus_GUI_cl0", pid 147 on node ISD060 in environment EdgeTest.
SYSTEM ERROR: Unknown Mark type in deserialization.
Class: qqsp_ImplementationException
Error #: [1101, 34]
Detected at: qqrp_DeSerializeObject::ProcessHdr
Error Time: Tue Nov 18 15:58:47
Exception occurred (locally) on partition "ConPlus_GUI_cl0_Client",
(partitionId = 7EFAE060-4AFA-11D1-A1C1-1FDC8A99AA77:0x446:0x1,
taskId =
[7EFAE060-4AFA-11D1-A1C1-1FDC8A99AA77:0x446:0x1.23]) in application
"ConPlus_GUI_cl0", pid 147 on node ISD060 in environment EdgeTest.
ERROR STACK 2
SYSTEM ERROR: A serious error has occurred in Repository
(c:\PROGRA~1\CSSPTEST\conplu0). Corrective action may be necessary.
Notify
your repository administrator.
Class: qqsp_ImplementationException
Error #: [1101, 198]
Detected at: qqrp_Repository::Fetch
Last TOOL statement: method
SalesDevelopment_NWC.DEVNotifyofTabSetCurrent
Error Time: Wed Dec 03 10:27:22
Exception occurred (locally) on partition "ConPlus_GUI_cl0_Client",
(partitionId = 769D4310-6B88-11D1-84FD-65BF87C8AA77:0x121:0x1,
taskId =
[769D4310-6B88-11D1-84FD-65BF87C8AA77:0x121:0x1.22]) in application
"ConPlus_GUI_cl0", pid 172 on node ISD42 in environment Edge.
SYSTEM ERROR: Could not read record (64,74615) from repository data file.
Header is corrupt.
Class: qqsp_ImplementationException
Error #: [1106, 612]
Detected at: qqbt_BtreeAccess::FetchDataFileRecord
Error Time: Wed Dec 03 10:27:22
Exception occurred (locally) on partition "ConPlus_GUI_cl0_Client",
(partitionId = 769D4310-6B88-11D1-84FD-65BF87C8AA77:0x121:0x1,
taskId =
[769D4310-6B88-11D1-84FD-65BF87C8AA77:0x121:0x1.22]) in application
"ConPlus_GUI_cl0", pid 172 on node ISD42 in environment Edge.
Technote 11225 Don't reparent mapped Widgets between UserWindows at
runtime
It is sometimes tempting to unparent a widget from one UserWindow and
reparent
it into another at runtime. However, this can cause crashes if the widget
(or
its decendants) are "mapped" to data. Here's why...
Suppose you have two UserWindows, UW1 and UW2. UW1 contains a DataField
(DF1)
which is mapped to a TextData. UW2 contains a RadioList (RL2) which is
mapped to
a scalar Integer. At compile time, every mapped attribute is internally
assigned
a "Map ID" (a small integer) which is used to tie the Widget to its
corresponding attribute. These Map IDs are used by the Widget to look up a
pointer to their data in a "Map" which is maintained by the UserWindow.
Each
UserWindow is assumed be to independent of the others, so there is nothing
wrong
with Widgets in different UserWindows being assigned the same Map IDs.
In
this
case, let's assume that DF1 and RL2 both got assigned the same Map ID of
3. No
problem so far, since each lives in a separate UserWindow with a separate
map.
Now suppose at runtime the application "detaches" or unparents DF1 from
its
UserWindow and reparents it somewhere into UW2. When it comes time for DF1
to
paint itself the Display System it must ask the Runtime System for the
value of
DF1's mapped attribute. To do that it says "give me the value of the
TextData
for DF1. You'll find it in the Map for this UserWindow (UW1), and its Map
ID is
3". When the runtime system goes to do this it expects to find a TextData
in
this "slot" of the map, but instead it picks up the integer which is
mapped to
RL2. At best this leads to bad data being returned; more likely you get a
segfault and a crash.
If DF1 was not a mapped attribute (say, a Rectangle) there would be no
problem
because there is no data mapped to a Rectangle. If instead of moving DF1
you
created a brand new DataField on the fly there would be no problem,
because the
dynamic DataField would not have any Map ID and so couldn't conflict with
any
IDs in UW2.
So how do you solve this problem? This is exactly what Nested Windows are
all
about. While you can't move DF1 into the middle of UW2, you can nest
UW1.
This
works because UW1 brings its map with it, and when you access DF1 it knows
to
look up its value in UW1's map.
UserWindows are intended to be the "unit of compilabilty" that can be
nested
inside other UserWindows. It is dangerous to "transplant" anything from
inside
one UserWindow into another at runtime.
(Note that you can't avoid this problem by cloning DF1 because the MapID
gets
copied along with it, and the clone will fail in the same way.)
Further details explained in related technote 12448 'Sudden client
partition
crashes at runtime.'
Technote 12448 Sudden client partition crashes at runtime
Scenario : You have two UserWindows, A and B. When Window A starts up, it
instantiates an instance of B and reparents some component of B into A's
window
hierarchy.
This is not allowed and almost always leads to an error at best or at
worse a
segmentation fault.
Here's why :
When you compile a UserWindow in Forte, each "mapped attribute" (whether a
form
element or menu element) is assigned an internal ID which represents an
offset into
that UserWindow's table of mapped attributes. This offset is only valid
in the
context of the UserWindow in which it was compiled. If you detach a
FieldWidget or
MenuWidget from one compiled Window ("tmpMenu" for example) and then
parent
into another compiled window ("tmpWindow") the internal ID comes with it.
When Forte tries to make use of that copied widget it uses the ID as an
offset
into tmpWindow's table of mapped attributes. But that copied offset is
meaningless in the context of tmpWindow's table, so you get some kind off
error.
In this case it found that the data type of the variable in the slot
wasn't
what
was expected. But you might even index off the end of the table and get a
segmentation fault.
There is nothing to prevent you from dynamically creating menu items and
adding
them to a window at runtime; that will work fine. Although of course you
can't
access them via mapped attributes, since those can only be created at
compile time.
But you are not allowed to reparent a widget from one compiled UserWindow
into
the hierarchy of another.
More information may be found in technote 11225 'Don't reparent mapped
Widgets
between UserWindows at runtime'.
Possible errorstacks seen at runtime instead of a complete crash or
segmentation
violation while you are illegally reparenting a widget or menuitem between
windows
at runtime:
Map::SetSubjectData: Invalid conversion from map type 0 to subject type 22
SYSTEM ERROR: Bad parameter at location 3 in method
qqrt_MapClassAccess::ProcessSubjectData.
Class: qqsp_Exception
Error #: [1001, 381]
Detected at: qqrt_MapClassAccess::ProcessSubjectData at 3
Error Time: Wed Aug 09 13:03:57
Exception occurred (locally) on partition "testproject_CL0_Client",
(partitionId = D4914A10-36C1-11D4-91B3-419AA33BAA77:0x208:0xd,
taskId =
[D4914A10-36C1-11D4-91B3-419AA33BAA77:0x208:0xd.68]) in application
"FTLaunch_cl0", pid 672 on node ONEWAY in environment Audi3M2Env.
At 13:14 26.09.00 -0400, Adamek, Zenon wrote:
Hi,
It is the unfixed defect 53398. Please contact Forte support.
Zenon
-----Original Message-----
From: Brenda Cumming [SMTP:brenda_cummingtranscanada.com]
Sent: Tuesday, September 26, 2000 1:15 PM
To: Forte User group
Subject: (forte-users) 3J=>3M new to me error
Hi,
We are in the process of going from 3J1 to 3.0.M.2, and I am getting
this error that I am unfamiliar with on a GUI that works fine in 3J.
It
does not happen all the time, and I have been unable to establish the
pattern that kicks it off. Has anyone seen this before?
PS- this error is not occurring in the deployed (non-compiled) app,but
when I am running locally from my workspace.
SYSTEM ERROR: Bad parameter at location 6 in method
qqrt_MapClassAccess::ProcessSubjectData.
Class: qqsp_Exception
Error #: [1001, 381]
Detected at: qqrt_MapClassAccess::ProcessSubjectData at 6
Error Time: Wed Sep 20 14:32:54
Exception occurred (locally) on partition
"ABSDevtStartUp_CL0_Client",
(partitionId = 36172000-5DA8-11D4-B1F0-14015EDAAA77:0x2da:0x2,
taskId =
[36172000-5DA8-11D4-B1F0-14015EDAAA77:0x2da:0x2.25]) in
application
"Forte_cl0", pid 93 on node T5621 in environment AbisDMEnv.
SYSTEM ERROR: Can't find scope 20070 for a class.
Class: qqsp_Exception
Error #: [201, 11]
Detected at: qqlo_ClassTableLoadScope at 1
Error Time: Wed Sep 20 14:32:54
Exception occurred (locally) on partition"ABSDevtStartUp_CL0_Client",
(partitionId = 36172000-5DA8-11D4-B1F0-14015EDAAA77:0x2da:0x2, taskId =
[36172000-5DA8-11D4-B1F0-14015EDAAA77:0x2da:0x2.25]) in
application
"Forte_cl0", pid 93 on node T5621 in environment AbisDMEnv.
SYSTEM ERROR: Because of a prior error, your workspace was set to
read-only to prevent the application from attempting to write to the repository.
The repository and work you have saved to the repository are safe. If
your
workspace contains unsaved work, you may use the following procedure
to save this work. First, export the changed components. Then, shut down and
restart this application and reopen this workspace in read-write mode.
Finally, import the changed components and save your workspace.
Class: qqrp_RepResourceException
Error #: [1101, 695]
Detected at: qqrp_Session::IsDistributed
Last TOOL statement: method PPMeasWin.
Error Time: Wed Sep 20 14:32:54
Exception occurred (locally) on partition
"ABSDevtStartUp_CL0_Client",
(partitionId = 36172000-5DA8-11D4-B1F0-14015EDAAA77:0x2da:0x2, taskId =
[36172000-5DA8-11D4-B1F0-14015EDAAA77:0x2da:0x2.25]) in
application
"Forte_cl0", pid 93 on node T5621 in environment AbisDMEnv.
SYSTEM ERROR: Internal Error attempting to deserialize element
(64,120684) (fetch bitmask is 0x20). Your workspace is now read-onlyto
prevent
the application from attempting to write to the repository. The
repository
and work you have saved to the repository are safe. If your workspace
contains unsaved work, you may use the following procedure to savethis
work.
First, export the changed components. Then, shut down and restart this
application and reopen this workspace in read-write mode. Finally, import the
changed components and save your workspace.
Class: qqrp_RepResourceException
Error #: [1101, 61]
Detected at: qqrp_LogicalSession::MaterializeObject
Error Time: Wed Sep 20 14:32:54
Exception occurred (locally) on partition
"ABSDevtStartUp_CL0_Client",
(partitionId = 36172000-5DA8-11D4-B1F0-14015EDAAA77:0x2da:0x2, taskId =
[36172000-5DA8-11D4-B1F0-14015EDAAA77:0x2da:0x2.25]) in
application
"Forte_cl0", pid 93 on node T5621 in environment AbisDMEnv.
SYSTEM ERROR: Recursive Deserialization attempted, Internal Error!
Class: qqsp_UsageException with ReasonCode: SP_ER_INVALIDSTATE
Error #: [301, 231]
Detected at: qqsp_DeSerializeDriver::Run at 1
Error Time: Wed Sep 20 14:32:54
Exception occurred (locally) on partition"ABSDevtStartUp_CL0_Client",
(partitionId = 36172000-5DA8-11D4-B1F0-14015EDAAA77:0x2da:0x2, taskId =
[36172000-5DA8-11D4-B1F0-14015EDAAA77:0x2da:0x2.25]) in
application
"Forte_cl0", pid 93 on node T5621 in environment AbisDMEnv.
For the archives, go to: http://lists.xpedior.com/forte-users and use
the login: forte and the password: archive. To unsubscribe, send in anew
email the word: 'Unsubscribe' to:forte-users-requestlists.xpedior.com
For the archives, go to: http://lists.xpedior.com/forte-users and use
the login: forte and the password: archive. To unsubscribe, send in a new
email the word: 'Unsubscribe' to: forte-users-requestlists.xpedior.com -
Using Forte 3.0 to deploy web app to iPlanet Web Server
Is anyone familiar with using Forte 3.0 to develop/deploy a web application to an iPlanet Server?
All I need is a simple walkthrough to create/deploy a "Hello World" app (it could be just a JSP) or a link to some document that covers this topic.
ThanksFor anyone who cares
First make a web module, then make a web application and add the web module you made. When adding it the Mapping field should contain whatever context of the module is. Then deploy the application. -
Outputting DVI to HDMI input in LCD TV versus using the DVI to RGB ?
I am thinking of buying a mac mini to connect to a Toshiba 20HL85 TV in the lounge primarily to act as a "media server" and accessing Front Row for music, photo's, DVD watching etc. The question is which connection to use to go from the mini to the TV for Video (audio is fine as it will route into my AV Receiver)? The TV has an HDMI input, component video, s-video and a VGA port. The user manual for the TV says:
Note: The HDMI jack is not intended for connection to and should not be used with a personal computer. For PC connection, use VGA cable and connect to the VGA port. The VGA port allows the following resolutions:
Monitor Display modes:
VGA 640x480 60Hz
SVGA 800x600 56.3Hz
SVGA 800x600 60.3Hz
XGA 1024x768 60Hz
WXGA 1280x720 60Hz
WXGA 1280x768 60Hz
I wanted to know a few things as I have no experience with the MAC mini and HDMI:
1. Will I not get a better/crisper/sharper picture if I connect through a digital port like HDMI versus going through the VGA port?
2. I have checked a few LCD TV's user manuals and they all seem to say the same thing i.e. "Do not connect a PC to the HDMI port" - I fail to understand this when the Apple site specifically says under "accessories for the MAC mini" that "HDMI is electrically similar to DVI, but has a different physical connector that may include an audio signal. You’ll need a DVI to HDMI adapter, such as the Belkin PureAV HDMI to DVI cable to use these televisions".
3. What am I missing? Should I just go ahead and buy the DVI to HDMI cable and MAC mini and plug it in i.e. has anyone done this and had it work? Is it better than VGA (I would hope so)?
Bottom line is does the MAC mini connect to any TV with an HDMI port or are there different types of HDMI ports and hence I need to search for the right TV first? If so, what must I look for? Thanks for any help I can get.
Power Mac G5 Dual 2GHz Mac OS X (10.4.5)One word of advice. I just hooked up my mini to my 32" Lowe HD TV using a DVI to HDMI cable and it doesn't just work. The native resolution of the TV is not available for whatever reason so I have to bodge another resolution which looks terrible. When I plug my powerbook in via a DVI to VGA connector it just does work selecting the correct resolution automatically.
Either the problem lies with the mini or with connecting to the HDMI socket. As the HDMI is simply a dvi with audio I can't see why it would cause problems but who knows. Given all the other problems I am currently having with the mini I am pointing the finger in that direction currently. -
How to track the report calling from powerbuilder?
Suppose I have a powerbuilder application myapp. there are many reports created with pb. There are 2 possible for pb report:
datawindow get data from stored procedure
datawindow get date with sql.
myapp use a specific login mylogin to connect to sybase ase.
then I want to track who and when the report running. how to implement it? any way without modify myapp code?
I tried with sybase audit, but myapp connect with mylogin. So anyone run myapp will be same login.
what's the solution for this case?We did this with Proxy Authorization. That's where you connect to the database with one user, but you can assume the authorization rights of another user for specific purposes.
So your app would have to connect with a user's individual ID, but then you'd issue 'set proxy myLogin' to give them rights to run the reports and access those database tables. If they ever connect outside your application (with Crystal Reports or some other 3rd party tool), they'd be connecting as their unique login and wouldn't have rights to the underlying database tables unless they also knew to issue the 'set proxy myLogin' command. -
Hi All. I live outside of the USA and have an iPhone 4s. I'm going to Fort Lauderdale, FLA and want to data service for my iPhone ( navigation using google or imaps, browsing and voip ing when no wi fi available). I browsed the net but seems almost impossible. When I visited Toronto I was able to get data thru Koodo but I don't think this is offered in the USA. Anyone who has real experience with this please help. This is a situation that is best aided by persons who have experienced it. Thanks
Have a look here:
http://forums.macrumors.com/archive/index.php/t-982315.html -
Billing doc cost PCA versus GL
The billing doc cost should be different for the PCA posting versus the GL posting. We have transfer pricing activated as well as material ledger. On the material master the standard price for legal valuation is different than profit center valuation and that is fine. When the billing doc posts it uses standard price for legal valuation for the GL posting. It should use standard price for profit center valuation. It uses legal valuation instead. Goods issue does use the correct standard price for GL versus PCA though.
How do I make the billing doc use the correct standard price ( profit center valuation ) for PCA?Hi,
I am a bit confuesed on scenario explained by you and I am tring to restate the same:
1. You are using Transfer Pricing and Material Ledger is active.
2. You have different prices updated in Standard Price for Legal and Profit Center Valuations respectively.
3. When you make a goods issue, the system uses the Standard Price in the Legal Valuatoin for accounting.
4. You need the system to use Profit Center Valuation Price for accounting.
Opinion.
The Goods issue as updated in the Financial Accounting should use only the Legal Valuation values. The Profit Center Document anyhow will have the cost of sales based on the profit center valuation. This is by design and correct approach.
If your question is related to values posted in Profitability Analysis. You need to activate profit center valuation in PA and then you will see that both values flow to Profitability Analysis.
Hope this helps you.
Varadharajan
Maybe you are looking for
-
Native SQL "Table does not exist in database"
Hi Developers, I'm doing a database connection to an Oracle db and trying to read data using native SQL - I keep getting the runtime error "table does not exist in database" on the statement Fetch Next Cursor. The following is the code snippet (I've
-
How to increase the limit of "maximum open files" in C?
The default limit for the max open files on Mac OS X is 256 (ulimit -n) and my application needs about 400 file handlers. I tried to change the limit with setrlimit() but even if the function executes correctly, i'm still limited to 256. Here is the
-
I bought an iphone 5s from craigslist. I tried to activate it but didnt know what carrier it was locked to so I called apple and they told me it was iusacell, which is a carrier from MEXICO!!! i live in Chicago, so will I ever be able to use it with
-
I made some movies in iMovie with photos and video clips. I used the Ken Burns effect for the pictures. All looks good in iMovie. Once transferred to iDVD and burned though, there is a significant shimmering (like waves) of the photos, especially as
-
Help with configured receiver condition
I have 2 target structures which I have to handle through configured receivers. The condition i have to place is if LIFSK exists, route to Business service 1 if LIFSK doesnt exists, route to Business Service 2 I placed LIFSK EX -> service1 its worki