ActiveX in Forte v3
Hello,
I'm trying to manage a financial printer using an activex control to
access it.
My problem is passing the VersionRequired variant attribute, I dont know
exactly the type object to pass to this attribute.
Using a VariantDispatcher type, Forte execute a exception saying that the
object isn't set as OLE object.
Using another variant type, ocurr a exception saying that the CDispatcher
are not code.
How can I to do it?
Tank and excuse me by my little english.
Jose Antonio Zapata Rey
[email protected]
Hello,
I'm trying to manage a financial printer using an activex control to
access it.
My problem is passing the VersionRequired variant attribute, I dont know
exactly the type object to pass to this attribute.
Using a VariantDispatcher type, Forte execute a exception saying that the
object isn't set as OLE object.
Using another variant type, ocurr a exception saying that the CDispatcher
are not code.
How can I to do it?
Tank and excuse me by my little english.
Jose Antonio Zapata Rey
[email protected]
Similar Messages
-
Forte/ActiveX/OLE Data access
Hi folks,
We are hoping to use a Forte 4GL service-object to access some third-party
data in a proprietary database. The vendor has recently provided an ActiveX
Component with an OLE DB/ADO interface. The ADO interface and ActiveX
component reside on a web-server and they have demonstrated access via
Visual Basic script and ASP. From what I can see, languages such as VB, C
and C++ seem to be able to communicate with the ActiveX components directly,
so should I be attempting to use straight OLE commands from Forte ? I wasn't
sure whether I needed to get an OCX (or OLB?) created for the ADO interface
or the ActiveX component so I can analyse it with OLEGEN. (The vendor
doesn't
believe this is possible anyway !)
Any advice or help would be much appreciated !
Regards,
Justin
Justin Levis
Senior Systems Analyst
SEALCORP Holdings Limited
Perth, Western Australia
e-mail : justin.levissealcorp.com.au
================================================================================================
IMPORTANT INFORMATION
This message and any files transmitted with it are confidential and should be read only by those
persons to whom it is addressed.
If you have received this message in error, please notify us immediately by way of reply. Please
also destroy and delete the message from your computer. Any unauthorised form of reproduction
of this message is strictly prohibited.
It is the duty of the recipient to virus scan and otherwise test the information provided before
loading onto any computer system.
SEALCORP does not warrant that the information is free of a virus or any other defect or error.
SEALCORP is not liable for the proper and complete transmission of the information contained in
this communication, nor for any delay in its receipt.
Any views expressed in this message are those of the individual sender, except where the sender
specifically states them to be the views of SEALCORP.
================================================================================================Hi folks,
We are hoping to use a Forte 4GL service-object to access some third-party
data in a proprietary database. The vendor has recently provided an ActiveX
Component with an OLE DB/ADO interface. The ADO interface and ActiveX
component reside on a web-server and they have demonstrated access via
Visual Basic script and ASP. From what I can see, languages such as VB, C
and C++ seem to be able to communicate with the ActiveX components directly,
so should I be attempting to use straight OLE commands from Forte ? I wasn't
sure whether I needed to get an OCX (or OLB?) created for the ADO interface
or the ActiveX component so I can analyse it with OLEGEN. (The vendor
doesn't
believe this is possible anyway !)
Any advice or help would be much appreciated !
Regards,
Justin
Justin Levis
Senior Systems Analyst
SEALCORP Holdings Limited
Perth, Western Australia
e-mail : justin.levissealcorp.com.au
================================================================================================
IMPORTANT INFORMATION
This message and any files transmitted with it are confidential and should be read only by those
persons to whom it is addressed.
If you have received this message in error, please notify us immediately by way of reply. Please
also destroy and delete the message from your computer. Any unauthorised form of reproduction
of this message is strictly prohibited.
It is the duty of the recipient to virus scan and otherwise test the information provided before
loading onto any computer system.
SEALCORP does not warrant that the information is free of a virus or any other defect or error.
SEALCORP is not liable for the proper and complete transmission of the information contained in
this communication, nor for any delay in its receipt.
Any views expressed in this message are those of the individual sender, except where the sender
specifically states them to be the views of SEALCORP.
================================================================================================ -
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 -
RE: (forte-users) Reporting tools/components for ForteApplications?
Hi Robert,
A good place to start when it comes to reporting is Forte Consulting. They
have developed a tool called ReportKit, which is ActiveX integration with
Seagate Software's Crystal Reports tool. Crystal is not really a three-tier
tool (although, your Forte Consultant can probably set it up to mimic a
three-tier tool), but it is a quick, easy way to get quality reports from
your existing Forte applications. If you're interested, give your Forte
Sales Rep (or, better still, your Forte Regional Consulting Director) a
call. They can discuss pricing and scheduling. I've done several
integration projects with Crystal, and I highly recommend ReportKit for
small- to medium-sized reporting requirements. As for costs, I don't recall
how much CrystalReports runs, but I think there are developer licenses and
runtime licenses.
FYI, the actual integration of ReportKit is pretty quick. The more
time-consuming piece of any report tool integration is the design and
implementation of the reports to be used.
I hope this helps.
-Katie
Katie Tierney
Quality Management Analyst
Akili Systems Group
601 Jefferson, Suite 3975
Houston, Texas 77002
Office: (713) 655-1400
Cell: (409) 255-1643
"The bitterness of poor quality remains long after the sweetness of low
price is forgotten" --Larry Anderson
-----Original Message-----
From: Robert Brooke-N502365 [mailto:Robert.Brookeca.michelin.com]
Sent: Monday, February 14, 2000 8:17 AM
To: kamranaminyahoo.com
Subject: (forte-users) Reporting tools/components for Forte
Applications?
Hi all,
We are looking for what is currently in the marketplace to enhance the
reporting
capabilities of Forte. Ideally, we are looking for component libraries that
we
could import into our repository. Do these exist?
Currently, I have found six reporting tools that are out there. The
tools
are Actuate, Crystal Reports, Report Workshop from Indus Consultancy
Services, Brio Technologies (SQR) VisualBRIO, Visual CyberQuery from
Cyberscience Corp., and Beacon from Brahma Software Solutions FORTify
Components. Are there any others for Forte?
If anyone is currently using one of these Reporting Tools for Forte or
any
others, could you give me any indications as to the costs, training, type
of
application using the Reporting tool, would you recommend using the
product
again, does it use wrappering or API, or is it a component based tool, and
any
other relevant information on the product?
Thanks,
Robert Brooke
Application Developer
Michelin North America (Canada) Inc. CA0/CA1
PO Box 399
New Glasgow, Nova Scotia
B2H-3E6
Phone: (902) 753-1977
Fax: (902) 396-2180
Note: We are currently developing in Forte 3.0.L.2. However, we would
like
to select a reporting tool/component within the next month. We are in the
initial phases of our next project, an application to be developed
in-house.
Probably will have two databases, one for real-time data and another one
for
archived data. Probably will need reporting functionality and capabilities
for
both real-time data and archived data.
This email and any files transmitted with it are confidential and
intended solely for the use of the individual or entity to whom they
are addressed. If you have received this email in error please notify
the system manager.
This footnote also confirms that this email message has been swept by
MIMEsweeper for the presence of computer viruses.
The E-Mail System is to be used for business purposes only.
www.mimesweeper.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.comAt 09:33 AM 4/20/01, Rottier, Pascal wrote:
Forte 4GL is:
1) A language, TOOL (Compare to Java)
2) An IDE (Compare to e.g. JBuilder or FJCE)
3) A collaborative development environment, with central repository (Compare
to ????)
4) A distributed application server / object request broker (Compare to J2EE
servers and/or CORBA)Let's not forget WebEnterprise, Express, and especially Fusion.
I think, SUN is not al all interested in TOOL.If TOOL were just a language and had no market yet, you are probably
right. But, not only is TOOL the key to the Forte environment, but it has
an existing and profitable market. Sun still sells FORTRAN, after all, and
continues to put money into ADE development for all its language
products. The real kicker, though, is that I think iPlanet is very clear
that Fusion, now iIS, is a very key product for them. There may be those
who wish it were written in Java and who might lobby for doing a Java
version, but it was clear at the conference that the iPlanet management
recognize that Java just isn't up to the task at this point. It isn't as
if all the iPlanet tools are actually written in Java, after all.
They will only support them for as long as they need.Or, more likely, for as long as they make money.
Now, in response to Microsofts .NET stratagy. We have yet to see how
succesfull this will be, but I expect Microsoft to push this down the
throats of developers and companies quite succesfully.Like they did DCOM?
=========================================================================
Thomas Mercer-Hursh, Ph.D email: [email protected]
Computing Integrity, Inc. sales: 510-233-9329
550 Casey Drive - Cypress Point support: 510-233-9327
Point Richmond, CA 94801-3751 fax: 510-233-6950 -
ActiveX problems with 3.0.F.2 (fwd)
This is the message I sent to tech support. Has anyone else seen this
type of thing? Any suggestions (even half-baked) would be appreciated.
-- Adam
---------- Forwarded message ----------
Date: Tue, 17 Mar 1998 13:48:17 -0600 (CST)
From: Adam Mckee <[email protected]>
To: [email protected]
Subject: ActiveX problems
Product: Forte
Version of Forte: 3.0.F.2
Server OS: HPUX
Client OS: NT/Win 95
DBMS: Oracle
Reproducible(?): Yes
Brief description of issue:
I have experienced problems using ActiveX controls. I have tried several
controls, including:
o Microsoft Forms 2.0 SpinButton
o Microsoft Forms 2.0 CheckBox
o Microsoft Forms 2.0 EditBox
o AddSoft Gantt/OCX
o Sheridan MonthView
o Sheridan DayView
o Sheridan DateCombo
o Microsoft Calendar Control
(specifically mentioned in a Forte technote)
I have experienced problems with all of these controls. With the Sheridan
DateCombo, the Forte environment crashes when I attempt to drop the
control into a form using the "Insert Control..." button. Before the
environment crashes, I get a series of informational and error dialog
boxes as follows:
o error: unexpected exception -10737415717
o error: The Error Manager stack is empty (repeated 3 times)
o information: the workspace is now read-only because the
repository is disabled.
o error: Exception escaped from terminating task CW.Display
o ERROR: TMgr.Terminate: fatal error terminated partition
With all the other controls I tried, the ActiveX support appears to work
properly until I attempt to bind an instance of the olegen-generated
class to the control itself in the window's Init() method:
--- MyWindowClass.Init() ----
super.Init();
myActiveXControl = new();
After this has been done, the Forte environment may "hang" when I interact
with the control at run-time. For example, each time a generate a mouse
event inside the control, I risk hanging the Forte environment. I might
be able to interact with the control 50 times before the environment
hangs, or it might hang after a single mouse click. Until the crash/hang
occurs, the ActiveX support appears to work properly: I am able to trap
mouse events, and interact with the control using the provided interface.
Any help or advice you can offer would be appreciated. I would be happy
to provide any additional information you may require.
-- Adam McKeeI don’t recall any problems importing to “selected item’ which I always use so I define where it goes and what it’s called.
Do you have Aperture’s Activity Window open so you can see where it is hanging up? Is it just busy generating Previews etc.? I know it sounds more serious than just ‘busy’ but would be interesting to know what it’s doing then.
After these problems, assuming that previews and thumbnails are generated correctly, it may be a good precaution to restart Aperture while holding down the OPTION and COMMAND keys so you can Repair Permissions or Repair the database. Even rebuilding the database is fairly quick if those first two options are ineffective. -
Re: Crystal Reports 5.0 (32-Bit) and Forte 2.0H16 on NT3.51
Dear Silke,
Crystal's default for identifying a table in the report design is
<schema>.<table>. You can change that by going to the Database Location menu
item and cutting the schema prefix off. You should do that for every table in
the report. The PESetNthTableLogOnInfo function will, I believe, not change
the schema prefix of a table, since it assumes you really want that schema,
i.e., as an override. Also, if you are using the propagateAcrossAllTables
feature of the function make sure that every table has the schema prefix cut
off, otherwise those tables will be skipped, since the propagate feature applies
to all other similar tables only. For example, some of the tables could be
Sybase, etc.
I believe you can change the default behaviour of the CR Report Designer in the
File->Preferences menu, so that when reports are designed the schema prefix is
not automatically attached.
I have compiled some guidelines on designing reports to make them work properly
with Forte. I will try to send them to you next week. Crystal Reports and its
C API are a good product, and you will get good performance once the report
design is set up properly.
Yours very sincerely, John Hodgson.
Schulte, Silke (DVD) wrote:
The problem seems to be, that Crystal stores the database name in the
report. If you want to change the database you have to develop your
report new, although you give the connection-information via the API.
The hotline from Crystal told us, when using subreports you have to use
the PESetNthTableLogOnInfo and to go through all the subreports and
change the connect-string.
Our experience is, you have to do both: change the report and call the
other function for the subreports.
Thank you very much for all the tips.
Regards
Silke Schulte
Union-Investment, Frankfurt / Main, Germany
e-mail: [email protected]
From: Ajith Kallambella M[SMTP:[email protected]]
Sent: Mittwoch, 23. September 1998 15:17
To: [email protected]; ForteUsers; [email protected]
Subject: RE: Crystal Reports 5.0 (32-Bit) and Forte 2.0H16 on NT
3.51
Hi There,
Crystal reports stores Database name as a hard-coded
value in the
report template. So if you have to use an other
database, you will
have to open the report template and modify the
database name. I
think this is why you are getting Crystal API error.
Hope this helps!
Ajith Kallambella M
Forte systems Engineer,
International Business Corporation.
Hello,
I wonder if we have a similar problem.
We are using Crystal Reports 5 and Forte 3.0.F.2. For
the interface
between Forte and Crystal we have in Forte a Lib using
C-wrappering to
the C-API of Crystal.
We have developed a report on a database in our
development-environment. This report comes up with data
and works
correct. It's no different if we have saved the report
in Crystal with
data or without.
If we want to use the same report on another database
in our
test-environment the window from crystal reports comes
up and when
starting there is an error from the Crystal API
function.
Both environments use the same version of an Oracle
Database and are on
Open VMS. The client for the test is in this case
always the same.
From the C-API we use the method PEStartPrintJob after
we have specified
the rest for the report.
Is there a possibility that this is the same error you
mentioned? Or do
you have any other ideas?
Any help is appreciated.
Regards
Silke Schulte
Union-Investment Frankfurt (Germany)
email: [email protected]
From: Katie Carty[SMTP:[email protected]]
Reply To: Katie Carty
Sent: Montag, 21. September 1998 19:14
To: 'Tim Hagemann'; [email protected]
Subject: RE: Crystal Reports 5.0 (32-Bit) and Forte2.0H16 on NT
3.51
Tim,
You need to upgrade to CrystalReports 6.0. There isa bug in the
interaction between Forte and CrystalReports 5.0 (Idon't know on
which side the bug resides, but I think that it is onthe Crystal end,
since the problem occurs both through C-wrapperingand OLE
interaction), which does not allow you to invoke thePrintReport
method unless you have saved data with the report.
As far as I know, there is no workaround, and theonly solution is to
upgrade to CrystalReports 6.0.
FYI, there is no ActiveX control supplied withCrystalReports 5.0 -
you are actually using standard OLE integration.
Hope this helps...
Regards,
-Katie
-----Original Message-----
From: Tim Hagemann [SMTP:[email protected]]
Sent: Monday, September 21, 1998 11:27 AM
To: [email protected]
Subject: Crystal Reports 5.0 (32-Bit) and Forte2.0H16 on NT 3.51
Hi Forte-User !
We got a big problem here using the crystal active-xcontrol. On my
windows-nt 4.0 machine (with
crystal reports installed completely) all works well.On our test
machine (with only the crystal ActiveX
installed), the Forte runtime shuts down afterinvoking a special
method of the ocx (PrintReport).
The cause for shutting down (no stacktrace orsomething like that) is
a generated c++ exception in crystal -
but we don't know the cause of this exception.
Has anyone made the control work under nt 3.51 ? Doesanybody know
(exactly) what dll's we'll have
to use ?
TIA,
Tim Hagemann
Tim Hagemann
Ascom GmbH Email:
[email protected]
Charlottenburger Allee 61 Phone: +49241 96806 273
D-52068 Aachen Fax: +49241 96806 225
>
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/>
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/>-
To unsubscribe, email '[email protected]' with
'unsubscribe forte-users' as the body of the message.
Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>Dear Silke,
Crystal's default for identifying a table in the report design is
<schema>.<table>. You can change that by going to the Database Location menu
item and cutting the schema prefix off. You should do that for every table in
the report. The PESetNthTableLogOnInfo function will, I believe, not change
the schema prefix of a table, since it assumes you really want that schema,
i.e., as an override. Also, if you are using the propagateAcrossAllTables
feature of the function make sure that every table has the schema prefix cut
off, otherwise those tables will be skipped, since the propagate feature applies
to all other similar tables only. For example, some of the tables could be
Sybase, etc.
I believe you can change the default behaviour of the CR Report Designer in the
File->Preferences menu, so that when reports are designed the schema prefix is
not automatically attached.
I have compiled some guidelines on designing reports to make them work properly
with Forte. I will try to send them to you next week. Crystal Reports and its
C API are a good product, and you will get good performance once the report
design is set up properly.
Yours very sincerely, John Hodgson.
Schulte, Silke (DVD) wrote:
The problem seems to be, that Crystal stores the database name in the
report. If you want to change the database you have to develop your
report new, although you give the connection-information via the API.
The hotline from Crystal told us, when using subreports you have to use
the PESetNthTableLogOnInfo and to go through all the subreports and
change the connect-string.
Our experience is, you have to do both: change the report and call the
other function for the subreports.
Thank you very much for all the tips.
Regards
Silke Schulte
Union-Investment, Frankfurt / Main, Germany
e-mail: [email protected]
From: Ajith Kallambella M[SMTP:[email protected]]
Sent: Mittwoch, 23. September 1998 15:17
To: [email protected]; ForteUsers; [email protected]
Subject: RE: Crystal Reports 5.0 (32-Bit) and Forte 2.0H16 on NT
3.51
Hi There,
Crystal reports stores Database name as a hard-coded
value in the
report template. So if you have to use an other
database, you will
have to open the report template and modify the
database name. I
think this is why you are getting Crystal API error.
Hope this helps!
Ajith Kallambella M
Forte systems Engineer,
International Business Corporation.
Hello,
I wonder if we have a similar problem.
We are using Crystal Reports 5 and Forte 3.0.F.2. For
the interface
between Forte and Crystal we have in Forte a Lib using
C-wrappering to
the C-API of Crystal.
We have developed a report on a database in our
development-environment. This report comes up with data
and works
correct. It's no different if we have saved the report
in Crystal with
data or without.
If we want to use the same report on another database
in our
test-environment the window from crystal reports comes
up and when
starting there is an error from the Crystal API
function.
Both environments use the same version of an Oracle
Database and are on
Open VMS. The client for the test is in this case
always the same.
From the C-API we use the method PEStartPrintJob after
we have specified
the rest for the report.
Is there a possibility that this is the same error you
mentioned? Or do
you have any other ideas?
Any help is appreciated.
Regards
Silke Schulte
Union-Investment Frankfurt (Germany)
email: [email protected]
From: Katie Carty[SMTP:[email protected]]
Reply To: Katie Carty
Sent: Montag, 21. September 1998 19:14
To: 'Tim Hagemann'; [email protected]
Subject: RE: Crystal Reports 5.0 (32-Bit) and Forte2.0H16 on NT
3.51
Tim,
You need to upgrade to CrystalReports 6.0. There isa bug in the
interaction between Forte and CrystalReports 5.0 (Idon't know on
which side the bug resides, but I think that it is onthe Crystal end,
since the problem occurs both through C-wrapperingand OLE
interaction), which does not allow you to invoke thePrintReport
method unless you have saved data with the report.
As far as I know, there is no workaround, and theonly solution is to
upgrade to CrystalReports 6.0.
FYI, there is no ActiveX control supplied withCrystalReports 5.0 -
you are actually using standard OLE integration.
Hope this helps...
Regards,
-Katie
-----Original Message-----
From: Tim Hagemann [SMTP:[email protected]]
Sent: Monday, September 21, 1998 11:27 AM
To: [email protected]
Subject: Crystal Reports 5.0 (32-Bit) and Forte2.0H16 on NT 3.51
Hi Forte-User !
We got a big problem here using the crystal active-xcontrol. On my
windows-nt 4.0 machine (with
crystal reports installed completely) all works well.On our test
machine (with only the crystal ActiveX
installed), the Forte runtime shuts down afterinvoking a special
method of the ocx (PrintReport).
The cause for shutting down (no stacktrace orsomething like that) is
a generated c++ exception in crystal -
but we don't know the cause of this exception.
Has anyone made the control work under nt 3.51 ? Doesanybody know
(exactly) what dll's we'll have
to use ?
TIA,
Tim Hagemann
Tim Hagemann
Ascom GmbH Email:
[email protected]
Charlottenburger Allee 61 Phone: +49241 96806 273
D-52068 Aachen Fax: +49241 96806 225
>
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/>
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/>-
To unsubscribe, email '[email protected]' with
'unsubscribe forte-users' as the body of the message.
Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/> -
Re: Forte /FileNet integration
Hi Jelic,
We, at the County of Alameda, are using Forte and FileNet for some time
now.
As I was not clear on what specific interface issues you are dealing with I
thought it is a good idea to decribe what we are doing and hopefully that
may answer some of your questions.
For now, we are using FileNet's workflo language i.e. WFL scripts for
interfacing with FileNet.
The interfacing issues are :
1. Logon to FileNet on the client (Win95)
For logging on to FileNet we are currently using a C program which is
launched by our Forte application and is passed the Username, Password.
This program gets the window handle of the Logon Window and pokes in the
username and password in the respective fields and logs on. Its a hack but
it works well.
2. Display Images in FileNet's Image viewer - we use Windows DDE.
3. Indexing of documents both scanned and generated.
We have a document generation system which uses a FileNet macro for MS-Word
to save a document to FileNet. We also use FileNet's Scanning software to
scan documents. Both of these use a barcode to facilitate indexing. The
Indexer Program written in Forte launches a WFL script to get the
barcode/docID pairs from FileNet's distributor queues and indexes it with
the application database. It also laucnhes another WFL script which removes
the entries from the distributor queues and puts it into a error queue if
it was not indexed.
Going forward, we are now working on using WAL API to interface with
FileNet.
1. For FileNet Logon and Display : we plan to wrap C calls implemented as
DLL functions.
2. For the Indexer program too, we plan to wrap all calls we need in C
implemented as a DLL. Since the WAL API is available for Unix (HP_UX in our
case) we may create a library on Unix and run the Indexer Application as a
service object instead. This is one of the reasons we are not considering
using ActiveX.
Hope this helps.
Nitish Khanapure
Sage I.T. Partners
(415) 3927243 x313
Email : [email protected]
From: Jelic, Nenad <[email protected]>
To: 'Harry Richards' <[email protected]>; ', [email protected]'
<,[email protected]>
Cc: Ngai, Stuart <[email protected]>; Low, Louis
<[email protected]>; Jelic, Nenad <[email protected]>; Kapauan,
David <[email protected]>; '[email protected]'
Subject: RE: Forte /FileNet integration
Date: Tuesday, February 10, 1998 12:04 PM
Thank you for quick response. We are using
VB app with ActiveX controls and FileNet Image viewer(connected through
DDE) = CLIENT
accsessing FileNet IMS and Oracle DB = SERVER that is working very well
VB App + FileNet ActiveX Controls (client)
<------------TCP/IP-----------> FileNetIMS + ORACLE (server)
POINT 1:
Our intend is to replace VB App (written by somebody else) with Forte.
I've got tech. notes (SMALL prototype) from Forte consultant (Valerie
Limpan)how to implement ActiveX controls on server side because we don't
like to use ActiveX on each desktop, only on server side. But this is
not so common(Forte recommends using ActiveX controls with window
classes on client side) and I am afraid to go with a real BIG project
using something that is not proven very well ?
Forte(Client) <-----> Forte + FileNet ActiveX Controls(server1)
<------------TCP/IP-----------> FileNetIMS + ORACLE(server2)
POINT 2:
Probably, we can use WAL(C libraries) instead ActiveX controls, but from
pdf files I can not find any example. 1300 pages. Do I have to print all
of this to get better understandig ?
POINT 3:
Also, Is FileNet willing to support us using ActiveX controls inside
Forte dev. enviroment and other way round?
POINT 4:
Is FileNet Panagan suite of products will make any difference to our
problem ?
Sorry if some of this statement are wrong. My experience with both
products is limited, but not with ActiveX and OO.
Again, thank you for your quick response. May be this more detail
explanation will help you to find some answers.
Regards,
Dr. Nenad Jelic
(416)359-6560
From: Harry Richards[SMTP:[email protected]]
Sent: Tuesday, February 10, 1998 11:36 AM
To: Jelic, Nenad
Subject: Re: Forte /FileNet integration
I have just joined Forté from FileNET and so have a view on both
technologies, although I have not actually done any integration work.
Which
filenet products are you working with ?
You will find that both CSC and Sage, who host this mail forum are
involved
with or have already completed some integration with various filenet
products.
Regards,
Harry Richards
At 10:01 AM 2/10/98 -0500, you wrote:
We are trying to integrate Forte with FileNet software. Any experincein
real projects?
Using FileNet or any other ActiveX controls on server side ispossible,
but is not so common.
Regards,
Dr. Nenad Jelic(416)359-6560
[email protected]
----------Hi Satish
For information on Groupware Integration with CRM please refer to the link : http://help.sap.com/saphelp_crm50/helpdata/en/44/a0178800cd4f21e10000000a1553f6/frameset.htm
Also for integration of CRM Calendar with Groupware Calendar refer to the link : http://help.sap.com/saphelp_crm50/helpdata/en/bd/ad403d9e321d72e10000000a114084/frameset.htm
Regards
Note : Please award points if the answer is helpful. -
Re: ActiveX problems with 3.0.F.2 (fwd)
Forte has very specific requirements for ActiveX controls. We found out the
hard way that Forte does not support the use of all ActiveX controls.
Here is some information I received from Mark Cooper at Forte:
With a bit more digging I found that ActiveX controls are required to adhere
to two restrictions in the Forte environment. ActiveX controls are required
to provide a single interface (and cannot include irrelevant nested
interfaces) and must implement Apartment model threading (technote 11344).
You can use the OLE-Com Object Viewer to determine whether a control
fulfills both of these requirements.
Hope this helps. As I understand it, a future release (3G or 4???) will have
better support of ActiveX controls. But in the mean time you are stuck to
these limitations.
Regards,
Jason Carpenter
CSC Consulting & Systems Integration
[email protected]
3811 Turtle Creek Blvd.
20th Floor
Dallas, TX 75219
214.520.0555Forte has very specific requirements for ActiveX controls. We found out the
hard way that Forte does not support the use of all ActiveX controls.
Here is some information I received from Mark Cooper at Forte:
With a bit more digging I found that ActiveX controls are required to adhere
to two restrictions in the Forte environment. ActiveX controls are required
to provide a single interface (and cannot include irrelevant nested
interfaces) and must implement Apartment model threading (technote 11344).
You can use the OLE-Com Object Viewer to determine whether a control
fulfills both of these requirements.
Hope this helps. As I understand it, a future release (3G or 4???) will have
better support of ActiveX controls. But in the mean time you are stuck to
these limitations.
Regards,
Jason Carpenter
CSC Consulting & Systems Integration
[email protected]
3811 Turtle Creek Blvd.
20th Floor
Dallas, TX 75219
214.520.0555 -
Patrice,
We use several Controls in our systems, I am not going to say it was always
easy making them work but they all work fine. We have grid controls,
calendars, IE 4.0, home grown controls, etc.
Thanks,
Russ Engelhardt
IT Systems Consultant
ITCO Consulting Services / ADE Technical Center (Forte)
mailto:[email protected]
-----Original Message-----
From: BOURDON Patrice [mailto:[email protected]]
Sent: Friday, January 29, 1999 2:39 AM
To: 'forte-users'
Subject: Ocx / ActiveX
Hello world,
has someone heard about (or used) a good ocx or activex library working
well with Forté ?
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/>Hi,
I tested some OCX like Acrobat Reader, Ms Calendar and Internet Explorer
4.0.
The best was Acrobat Reader 3.0 : easy to use and working very well (but
needs memory).
The less stable is Internet Explorer 4.0 (it works now to view HTML files).
You can find samples and libraries on http://perso.club-internet.fr/dnguyen/
Hope this helps,
Daniel Nguyen
Freelance Forte Consultant
Url : http://perso.club-internet.fr/dnguyen/
BOURDON Patrice a écrit:
Hello world,
has someone heard about (or used) a good ocx or activex library working
well with Forté ?
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/> -
Hi Jagadish,
The OLE error code of 0x80020003 translates to "Member not found." This may
indicate that the parameter is not properly defined as a Parameter field in
the Crystal Report you're using.
Additionally, the date format you're using is wrong. Crystal requires that
you pass a date as "Date(yyyy, mm, dd)." Your example, then, should read:
l_tdParam : TextData = New();
l_tdParam.SetValue('Date(2000, 03, 15)');
l_CrystalRepObj.PutParameterFields(0, l_tdParam.Value);
I hope this helps.
-Katie
Katie Tierney
Akili Systems Group
601 Jefferson, Suite 3975
Houston, Texas 77002
Office: (713) 655-1400
Cell: (409) 255-1643
"The bitterness of poor quality remains long after the sweetness of low
price is forgotten" --Larry Anderson
-----Original Message-----
From: Jagadish_Kumarnacre.com [mailto:Jagadish_Kumarnacre.com]
Sent: Wednesday, March 15, 2000 9:11 PM
To: Katie Tierney; kamranaminyahoo.com
Subject: RE: (forte-users) Any inputs on PutFormulas(...) method of
Crystal Report's ActiveX object
Hi Katie,
I am thankful for your time and effort.
I have a problem here. I did exactly the way you have suggested, but I get
this
exception.
SYSTEM ERROR: Error during Invoke; status code: -2147352573(0x80020003)
Class: OLEException with ReasonCode: OLE_ER_RESOURCE
Last TOOL statement: method DebugState.RaiseException
The parameter I want to set is a date type. This is the only parameter in
the
report.
First trial:
l_tdParam : TextData = New();
l_tdParam.SetValue('03/15/2000');
l_CrystalRepObj.PutParameterFields(0, l_tdParam.Value);
Second Trail:
l_dtdParam : DateTimeData = New();
l_dtdParam.SetCurrent(DR_DAY);
l_CrystalRepObj.PutParameterFields(0, l_dtdParam.TextValue.Value);
Do you think I am going wrong somewhere here. Please suggest.
Once again, I am thankful for your time and effort.
Regards,
Jagadish K Kumar
May I suggest:
1. Talk to Forte Consulting and get ReportKit. It's inexpensive, and the
Forte Consultant can help you get it set up quickly. It's a great product.
2. The following code has worked for me in the past (I have no way of
testing it now, but think it should still work):
// ptd_Parameter_Array is an ARRAY of TextData containing the
// VALUES to be placed in the parameter fields.
// Since Crystal Reports uses a zero-based array numbering
// scheme, we need to set up a counter and set its initial
// value to 0.
li_Counter : integer = 0;
for eachParam in ptd_Parameter_Array do
self.PutParameterFields(index = li_counter, param2 =
eachParam.Value);
li_Counter = li_counter + 1;
end for;
The VariantVoidResult is NIL by default, and you shouldn't need to worry
about it at all. It's the result that the Crystal OCX sends back to Forte.
The Index starts at 0, and continues to the number of parameters - 1.
The Param2 value is the string that contains the actual parameter value.
For example, if I have defined a Crystal parameter called "Country," then I
would send "USA" as the string value for param2.
I hope this helps (and I STRONGLY suggest ReportKit).
Regards,
-Katie
Katie Tierney
Akili Systems Group
601 Jefferson, Suite 3975
Houston, Texas 77002
Office: (713) 655-1400
Cell: (409) 255-1643
"The bitterness of poor quality remains long after the sweetness of low
price is forgotten" --Larry Anderson
-----Original Message-----
From: Jagadish_Kumarnacre.com [mailto:Jagadish_Kumarnacre.com]
Sent: Wednesday, March 15, 2000 9:43 AM
To: kamranaminyahoo.com
Subject: (forte-users) Any inputs on PutFormulas(...) method of Crystal
Report's ActiveX object
Hi,
Could someone give me inputs on how to use PutFormulas(index: i2, param2:
string, _VariantVoidResult = NIL) method of Crystal ActiveX object.
I want to use this method to modify Crystal Report formulas. I would like to
know
1. index parameter - what is the domain, or expected values to this
parameter
2. param2 parameter - How to formulate this?; a sample template please;
3. _VariantVoidResult parameter - what is the significance of this
parameter?
A working example will help me a lot.
Thanks in advance.
Jagadish K KumarHi Katie,
I am thankful for your time and effort.
I have a problem here. I did exactly the way you have suggested, but I get this
exception.
SYSTEM ERROR: Error during Invoke; status code: -2147352573(0x80020003)
Class: OLEException with ReasonCode: OLE_ER_RESOURCE
Last TOOL statement: method DebugState.RaiseException
The parameter I want to set is a date type. This is the only parameter in the
report.
First trial:
l_tdParam : TextData = New();
l_tdParam.SetValue('03/15/2000');
l_CrystalRepObj.PutParameterFields(0, l_tdParam.Value);
Second Trail:
l_dtdParam : DateTimeData = New();
l_dtdParam.SetCurrent(DR_DAY);
l_CrystalRepObj.PutParameterFields(0, l_dtdParam.TextValue.Value);
Do you think I am going wrong somewhere here. Please suggest.
Once again, I am thankful for your time and effort.
Regards,
Jagadish K Kumar
May I suggest:
1. Talk to Forte Consulting and get ReportKit. It's inexpensive, and the
Forte Consultant can help you get it set up quickly. It's a great product.
2. The following code has worked for me in the past (I have no way of
testing it now, but think it should still work):
// ptd_Parameter_Array is an ARRAY of TextData containing the
// VALUES to be placed in the parameter fields.
// Since Crystal Reports uses a zero-based array numbering
// scheme, we need to set up a counter and set its initial
// value to 0.
li_Counter : integer = 0;
for eachParam in ptd_Parameter_Array do
self.PutParameterFields(index = li_counter, param2 =
eachParam.Value);
li_Counter = li_counter + 1;
end for;
The VariantVoidResult is NIL by default, and you shouldn't need to worry
about it at all. It's the result that the Crystal OCX sends back to Forte.
The Index starts at 0, and continues to the number of parameters - 1.
The Param2 value is the string that contains the actual parameter value.
For example, if I have defined a Crystal parameter called "Country," then I
would send "USA" as the string value for param2.
I hope this helps (and I STRONGLY suggest ReportKit).
Regards,
-Katie
Katie Tierney
Akili Systems Group
601 Jefferson, Suite 3975
Houston, Texas 77002
Office: (713) 655-1400
Cell: (409) 255-1643
"The bitterness of poor quality remains long after the sweetness of low
price is forgotten" --Larry Anderson
-----Original Message-----
From: Jagadish_Kumarnacre.com [mailto:Jagadish_Kumarnacre.com]
Sent: Wednesday, March 15, 2000 9:43 AM
To: kamranaminyahoo.com
Subject: (forte-users) Any inputs on PutFormulas(...) method of Crystal
Report's ActiveX object
Hi,
Could someone give me inputs on how to use PutFormulas(index: i2, param2:
string, _VariantVoidResult = NIL) method of Crystal ActiveX object.
I want to use this method to modify Crystal Report formulas. I would like to
know
1. index parameter - what is the domain, or expected values to this
parameter
2. param2 parameter - How to formulate this?; a sample template please;
3. _VariantVoidResult parameter - what is the significance of this
parameter?
A working example will help me a lot.
Thanks in advance.
Jagadish K Kumar -
RE: (forte-users) Forte SMTP and POP3 Support
Scaffolds includes in a protocol library an smtphandler which allows us to
send emails. It works great! You can try contacting someone at Metamor to
see if they can give you more information on this. I can't give you any
code as it is part of their package. Sorry!
-----Original Message-----
From: Rottier, Pascal [mailto:Rottier.Pascalpmintl.ch]
Sent: Wednesday, February 23, 2000 7:22 AM
To: 'edwardsmjwillis.com'; kamranaminyahoo.com
Subject: RE: (forte-users) Forte SMTP and POP3
Support
Mark,
Unfortunately, Forte doesn't offer any ready-to-use internet
protocoll
support libraries (like FTP, Telnet, SMTP, POP3, NNTP,
UU-code
or MIME). I think this would be a valuable enhancement of
Forte.
Does any one know if SUN plans to include this into Forte?
Does
any one know if there is any third-party set of Tool-classes
that
supports this?
Pascal
> -----Original Message-----
> From: edwardsmjwillis.com [SMTP:edwardsmjwillis.com]
> Sent: Wednesday, February 23, 2000 3:36 PM
> To: kamranaminyahoo.com
> Subject: (forte-users) Forte SMTP and POP3 Support
>
>
>
> Hi,
>
> Our Forte development team are currently investigating how
we can add
> internet
> mail capabilities to a Forte application. Our application
needs to
> send/receive
> mails from a mail server in an NT environment. Does forte
provide SMTP and
> POP3
> protocol support (libraries) so that we can use external
connection class
> to
> connect to the server and send/ receive mails or do we
have to use third
> party
> controls ?.
>
> Any help regarding code examples or third party solutions
would be
> appreciated.
>
> Thanks in advance
>
> Mark J Edwards
> Senior Technical Specialist
> Willis
>
> Email: edwardsmjwillis.com
>
>
>
>
>
> The information in this email and in any attachments is
confidential and
> may be
> privileged. If you are not the intended recipient, please
destroy this
> message,
> delete any copies held on your systems and notify the
sender immediately.
> You
> should not retain, copy or use this email for any purpose,
nor disclose
> all or
> any part of its content to any other person.
>
>
> --
> 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.comHi,
Unfortunatly, Forte does not provide SMTP and POP3 protocoles.
But, you can use External connections to do it if you need.
You can find a simple SMTP send mail sample code on
http://perso.club-internet.fr/dnguyen/ . The receive should be as easy as the send.
For MIME base 64 encoding and decoding, it should last one or two weeks of coding
(if you need optimization).
One advantage of coding this in Tool directly is the portability.
In your case, on NT, you could also interface with MAPI using for instance the
ActiveX interface.
By that way, you will already have SMTP, POP3 and MIME.
Hope this helps,
Daniel Nguyen
Freelance Forte Consultant
http://perso.club-internet.fr/dnguyen/
edwardsmjwillis.com a écrit:
Hi,
Our Forte development team are currently investigating how we can add internet
mail capabilities to a Forte application. Our application needs to send/receive
mails from a mail server in an NT environment. Does forte provide SMTP and POP3
protocol support (libraries) so that we can use external connection class to
connect to the server and send/ receive mails or do we have to use third party
controls ?.
Any help regarding code examples or third party solutions would be appreciated.
Thanks in advance
Mark J Edwards
Senior Technical Specialist
Willis
Email: edwardsmjwillis.com
The information in this email and in any attachments is confidential and may be
privileged. If you are not the intended recipient, please destroy this message,
delete any copies held on your systems and notify the sender immediately. You
should not retain, copy or use this email for any purpose, nor disclose all or
any part of its content to any other person.
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 -
Does anybody have any experience with Forte and MSMQ integration???
Here are the details:
We are currently deployed on Windows NT and Windows 3.1 for the Client
partition. Our server partitions are deployed on UNIX (AIX). We also
have WEB access built into the system using Forte's WEBsdk.
We must integrate with another (non-Forte) application that resides on
NT server. We want to use MSMQ as a means to communicate to this
application.
My preferred partitioning scheme is as follows:
I plan to create a new partition and move it to the NT Server. The
Service Object on the NT server will be accessible from both the client
partition and the server level (UNIX based) partitions. This is the
first time I am adding another server to the mix.
The new partition on the NT Server will serve as the interface to the
other application (via MSMQ). By the way, MSMQ is the only game in
town, because our vendor does not provide an open API. They rely on
MSMQ for everything...
At this time, I don't necessarily have a preference with regard to how
we link to MSMQ. However, I can say that performance is paramount. I
originally preferred OLE or ActiveX, but I think I can easily be talked
into C/C++ wrappering; especially now that Forte has C++ call-in
capability in version 3.0.
I'd appreciate hearing from anyone who has integrated Forte with MSMQ.
Thanks
James Krzeszowski
Project Manager
Advanta Business Services
[email protected]The SunWS_Cache directory must have write permission. The cache contains state information that must be locked when a compiler is being run, to avoid trashing the state information if another compilation runs in the same directory at the same time. (Sun C++ supports dmake and gmake for running multiple compilations in parallel.)
A non-writeable template cache is not an available option.
Starting with C++ 5.5 (Sun ONE Studio 8 Compiler Collection), the template cache is no longer required, and by default is not used. If you are having problems involving the cache, you should consider upgrading to this new release. -
RE: ActiveX control and Active Server Pages?
Martin, if it works in standalone VB program but not in an .asp page
through VBScript, I guess the reason may be the type mismatch on the
parameters of the ActiveX automation methods. VBScript is a subset of VB
and only supports the OLE data type VARIANT for calling the OLE
interface. The Conductor ActiveX control probably requires the actual
data types, such as long, BSTR, and so on, to be used on the parameters.
As a result, VBScript cannot call the methods on the control. One
workaround you can try is to create your own ActiveX control which is
simply a wrapper for calling the Conductor control. Its parameter types
use VARIANT and you do the data conversion in your wrapper code. Hope
this helps.
Lenny Hon
Descartes Systems Group
-----Original Message-----
From: Martin Peters [SMTP:[email protected]]
Sent: Monday, July 27, 1998 10:50 AM
To:
Subject: ActiveX control and Active Server Pages?
Hello Forte users,
Did anyone try to use the ActiveX control that ships with Conductor
1.0G in an Active Server Page?
I tried to use the ActiveX control without luck, so a sample would be
appreciated. The code
works fine in Visual Basic.
Below the code:
<HTML>
<BODY>
<%
Set thisDirectory =
Server.CreateObject("CONDUCTORCLIENT.WFDirectoryServiceCtl.1")
Set thisEngine = thisDirectory.WFFindEngine("ceengine", "centrale")
Set thisUser =
Server.CreateObject("CONDUCTORCLIENT.WFUserProfileDescCtrl.1")
thisUser.New
thisUser.ProfileName = "MiniUP"
thisUser.userName = "martin"
' The following call fails: Invalid procedure call or argument:
'thisEngine.OpenSession'
Set thisSession = thisEngine.OpenSession("CREATE", thisUser, "martin",
0)
Set thisProcess = thisSession.CreateProcess("MiniPD", Empty)
thisSession.CloseSession (WFSESSION_TERMINATED)
%>
</BODY>
</HTML>
Martin Peters
COMPAQ
NSIS - AD&I - Application Connect
email <[email protected]>
phone: +31 (30) 2834902
fax: +31 (30) 2834980
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/>I don't have 6.1 in front of me now. I came up with a workaround for my application when I encounted this problem. I created an attribute node for the container and the tab control. Whenever the tab control was not on the page with the control, I made the container invisible. This then hid the activeX control.
-
Using Crystal Reports 6.0 ActiveX control on Win 95 clients or Win 95
development machines I cannot insert the object into the ActiveX widget. In
distributed mode the Control cannot be 'Realized' and in development, the
Win 95 machine hangs up.
Complete description of problem or question:
We have been using the Crystal Reports version 6.0 ActiveX control on NT
4.0 machines for about 1 month with no problems.
When we made our latest distribution to our Win 95 client environment, the
window with the ActiveX control started
generating an error that the object could not be 'realized'. We then
proceeded to install Forte and Crystal on a Win 95
Development machine and found that we are not even able to insert the
control in the ActiveX widget. The Win 95 Development
machine hangs with no error message at all and you have to close down your
Forte session.
Any help would be appreciated.
Thanks,
Paul Nash
Sun Life of Canada (US)Just take a look at Tech Note n° 11181 and go to Micro$oft's site :
http://www.microsoft.com/com/dcom95/download-f.htm
You need DCOM for Windows 95 to use OCX's...
(We've had the same problem yesterday and now, it works fine...)
De :
[email protected][SMTP:[email protected]]
Répondre à : [email protected]
Date : jeudi 15 janvier 1998 16:39
A : [email protected]
Objet : Forte and Crystal OCX
Using Crystal Reports 6.0 ActiveX control on Win 95 clients or Win 95
development machines I cannot insert the object into the ActiveX
widget. In distributed mode the Control cannot be 'Realized' and in
development, the Win 95 machine hangs up.
Complete description of problem or question:
We have been using the Crystal Reports version 6.0 ActiveX control on
NT 4.0 machines for about 1 month with no problems.
When we made our latest distribution to our Win 95 client environment,
the window with the ActiveX control started generating an error that
the object could not be 'realized'. We then proceeded to install Forte
and Crystal on a Win 95 Development machine and found that we are not
even able to insert the control in the ActiveX widget. The Win 95
Development machine hangs with no error message at all and you have to
close down your Forte session.
Any help would be appreciated.
Thanks,
Paul Nash
Sun Life of Canada (US) -
Re: Sending a mail via Forté
Implement SMTP protocol using ExternalConnection object provided by forte.
Hope this helps.
Anand.
Alexis Hassler wrote:
Hi,
=09
We need to send a mail from a Fort=E9 program on NT platforms. Does =
anyone have any ideas or suggestions on how we can do this ?
Any help would be appreciated ! Thanks in advance.
Fran=E7ois LE ROLLAND
OOsphere
<[email protected]>
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/>Hi,
It should depend on where you need to send the mail : on the client or the
server.
On the client, you can use MAPI (there is an ActiveX which works with Forte). On
the server (and the client) you can use an external connection.
Hope this helps,
Daniel Nguyen
Freelance Forte Consultant
Url : http://perso.club-internet.fr/dnguyen/
Alexis Hassler a écrit:
Hi,
=09
We need to send a mail from a Fort=E9 program on NT platforms. Does =
anyone have any ideas or suggestions on how we can do this ?
Any help would be appreciated ! Thanks in advance.
Fran=E7ois LE ROLLAND
OOsphere
<[email protected]>
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/>
Maybe you are looking for
-
Hi. I'd like to run Linux on my MBP because I need it for work, but I'm having a bit of trouble. Currently I have Windows and SUSE 10.2 running under Parallels; I've tried to get Ubuntu Feisty Fawn on it, but the installation failed miserably. SUSE r
-
How do I identify a new type of virus?
This may not be a Firefox 4 problem specifically, but I was advised in another forum to post it here: Recently I got hit by the FakeRean virus that I downloaded via Firefox 4 Beta 6. The mechanism is that the web site opens a global modal dialog offe
-
How to invoke Matlab from Java
Hi, I want to pass some data generated from Java class to Matlab, then invoke Matlab from Java to run the computation program (file written in Matlab, myfile.m). I know Matlab can use classes generated from Java, how to drive Matlab from Java? I appr
-
Does anyone know why Yahoo is having problems with email on the iPhone 4? I just upgraded yesterday from a 3G and it was working then but has yet to work on the 4.
-
Missing photos from Ipod, how to get them back?
I have just bought Mac Book. My old computer Ibook G4 crashed and all my photos were only on the Ipod I had. I wanted to transfer them from the Ipod to the my new Mac Book. Unfortunately I only see my music but it is showing me 0 photos. Before conne