RE: Forte Email
<<email.txt>>
Please, find the attachment for examples.
Hope this helps...
Dariusz Rakowicz
Consultant
BORN Information Services (http://www.born.com)
8101 E. Prentice Ave, Suite 310
Englewood, CO 80111
303-846-8273
[email protected]
-----Original Message-----
From: [email protected] [SMTP:[email protected]]
Sent: Monday, December 07, 1998 1:16 PM
To: [email protected]
Subject: RE: Forte Email
You said you posted some samples. I can't seem to find the mail list
archive that used to be maintained by Sage. If you could point me to
where
I could find these, I would much appretiate it. Thanks.
-----Original Message-----
From: [email protected] [SMTP:[email protected]]
Sent: Thursday, December 03, 1998 3:42 PM
To: [email protected]; [email protected];
[email protected]
Subject: RE: Forte Email
Yes, using SMTP is the simplest solution. I have posted some sampleswhile
back (three monts maybe), so you should be able to find it.
Hope this helps.
Dariusz.
Born Information Services
(303) 846-8000
-----Original Message-----
From: Forte Consultants [SMTP:[email protected]]
Sent: Thursday, December 03, 1998 2:17 PM
To: [email protected]; [email protected]
Subject: Re: Forte Email
Hi,
I did this sometime back. I used forte externalconnection class to
implement
SMTP protocol.
Hope this helps,
Anand Ramaswamy
PSI Data Systems Ltd.
[email protected] wrote:
I have a Forte based application that needs to send an email messagefrom
the server partition. The application runs on NT and would need to
talk
to
MS Exchange Server. Has anyone done this already? I would be
grateful
for
any help, advice or general comments.
Eric Rasmussen
Online Resources &
Communications Corporation
(703) 394-5128
[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/>
To unsubscribe, email '[email protected]' with
'unsubscribe forte-users' as the body of the message.
Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>
begin 600 email.txt
M3F]T(&QO;F<@=&EM92!A9V\@22!W87,@=')Y:6YG('1O('-E;F0@86X@96UA
M:6P@9G)O;2!W:71H:6X@1F]R=&4@=7-I;F<@4TU44"X@06YD(&)E;&EE=F4@
M:70@;W(@;F]T(&ET('=O<FMS(&IU<W0@9FEN92X-"D9R;VT@=VAA="!)(&-A
M;B!T96QL+"!+96ET:"P@>6]U(&MN;W<@=&AE('-T97!S('1O('-E;F0@:70L
M(&)U="!M:7-S:6YG(&9E=R!C;VYC97!T<R!I;B!H;W<@=&AE(%--5%`@=V]R
M:W,N($ET(&ES('-I;7!L92P@8G5T(&YO="!T:&%T('-I;7!L92X-"@T*4V\@
M>6]U(&MN;W<@:&]W('1O(&-R96%T92!O=71B;W5N9"!C;VYN96-T:6]N("AU
M<VEN9R!%>'1E<FYA;$-O;FYE8W1I;VXI.@T*"6UY0V]N;F5C=&EO;BY/<&5N
M("@@<F-P=$UA:6Q397)V97(N8V]M+"`R-2P@3DE,+"!#35]!1$127TE.5$52
M3D547TY!344@*3L-"@DM+2!H97)E('EO=2!S:&]U;&0@<F5A9"!F:7)S="!R
M97-P;VYS90T*3VYC92!Y;W4@:&%V92!T:&%T(')E9F5R96YC92!Y;W4@=V]U
M;&0@<V5N9"!A("=(14Q/)R!S=')I;F<@86YD('=A:70@9F]R(')E<W!O;G-E
M+"!T:&4@=')I8VL@:&5R92!I<R!T;R!U<V4@;65M;W)Y0G5F9F5R('1O(&1O
M('1H870L(&%S('!R;V)A8FQY('EO=2!K;F5W('1H870Z#0H-"@EP5&5X=%1O
M4V5N9"`]('!497AT5&]396YD+F-O;F-A="@G7&XG*3L@+2T@8F4@<W5R92!T
M;R!A;'=A>7,@861D(&YE=R!L:6YE(&-H87)A8W1E<@T*"2TM('-E;F0@<W1R
M:6YG('1O('1H92!M86EL('-E<G9E<@T*"6%"=69F97(N3W!E;B@@4U!?04U?
M4D5!1%]74DE412P@5%)512`I.PT*"6%"=69F97(N5W)I=&5497AT*"!P5&5X
M=%1O4V5N9"`I.PT*"6QE;F=T:"`]('!497AT5&]396YD+F%C='5A;%-I>F4[
M#0H)84-O;FYE8W1I;VXN5W)I=&4H(&%"=69F97(L(&QE;F=T:"`I.PT*"6%"
M=69F97(N0VQO<V4H*3L-"@T*"2TM(')E8V5I=F4@<F5S<&]N<V4@9G)O;2!T
M:&4@;6%I;"!S97)V97(-"@EA0G5F9F5R+D]P96XH(%-07T%-7U)%041?5U))
M5$4L(%12544@*3L-"@EL96YG=&@@/2!C0G5F9F5R4VEZ93L-"@EW:&EL92!4
M4E5%(&1O#0H)"6%#;VYN96-T:6]N+E)E860@*"!A0G5F9F5R+"!L96YG=&@@
M*3L-"@D)84)U9F9E<BY296%D5&5X="@@;%1E;7!497AT("D[#0H)"6Q296-E
M:79E9%1E>'0N8V]N8V%T*"!L5&5M<%1E>'0@*3L-"@D):68@;&5N9W1H(#P@
M8T)U9F9E<E-I>F4@('1H96X-"@D)"65X:70[#0H)"65N9"!I9CL-"@EE;F0@
M=VAI;&4[#0H)84)U9F9E<BY#;&][email protected]*"0T*5&AE;B!U<VEN9R!S86UE
M('1E8VAN:7%U92`H86YD(&-O9&4@9F]R('-E;F0O<F5C96EV92D@<V5N9"!T
M:&4@9F]L;&]W:6YG("AI;B!T:&%T(&]R9&5R(2DZ#0H)<V5N9"@G34%)3"!&
M4D]-.B`\;7EA9&1R97-S0&UY36%I;%-E<G9E<BYC;VT^)RD[#0H)<F5C96EV
M95)E<W!O;G-E*"D[#0H)<V5N9"@G4D-05"!43SH@/&9R:65N9$!R8W!T36%I
M;%-E<G9E<CXG*3L-"@ER96-E:79E4F5S<&]N<V4H*3L-"@ES96YD*"`G1$%4
M02<@*3L-"@ER96-E:79E4F5S<&]N<V4H*3L-"@ES96YD*"!M>4US9U-T<FEN
M9R`I.PT*"0EW:&5R92!M>4US9U-T<FEN9R!I<R!S;VUE=&AI;F<@;&EK93H-
M"@D);7E-<V=3=')I;F<@.B!497AT1&%T82`](&[email protected]*"0EM>4US9U-T
M<FEN9R`N8V]N8V%T*"=&<F]M.B`G*2YC;VYC870H<$9R;VU!9&1R*2YC;VYC
M870H)UQN)RD[#0H)"6UY37-G4W1R:6YG("YC;VYC870H)U1O.B`G*2YC;VYC
M870H<%1O061D<BDN8V]N8V%T*"=<;B<I.PT*"0EM>4US9U-T<FEN9R`N8V]N
M8V%T*"=#8SH@)RDN8V]N8V%T*'!#8T%D9'(I+F-O;F-A="@G7&XG*3L-"@D)
M;7E-<V=3=')I;F<@+F-O;F-A="@G4W5B:F5C=#H@)RDN8V]N8V%T*'!3=6)J
M96-T*2YC;VYC870H)UQN7&XG*3L@+2T@=&AA="!I<R!H97)E(&9O<B!P=7)P
M;W-E#0H)"6UY37-G4W1R:6YG("YC;VYC870H<$US9RDN8V]N8V%T*"=<;B<I
M+F-O;F-A="@G+B<I.R`M+2!T:&4@1$]4(&ES(&AE<F4@9F]R('!U<G!O<V4@
M=&]O(0T*"7)E8V5I=F5297-P;[email protected]*"7-E;F0H("=154E4)R`I.PT*
M"7)E8V5I=F5297-P;[email protected]*86YD(&9I;F%L;'D-"@EA0V]N;F5C=&EO
M;BY#;&][email protected]*"0T*5V5L;"P@22!D;R!N;W0@=&AI;FL@=&AE<F4@:7,@
M86YY=&AI;FL@;&5F="P@:7,@=&AE<F4_("AW96QL('1H97)E(&ES(&UU;'1I
M<&QE(&%D9')E<W,L(&9I;&5S(&%T=&%C:&UE;G0L(&5T8RP@8G5T($D@=VEL
M;"!N;W0@9V\@:6YT;R!T:&%T*2X-"E-O+"!G;V]D(&QU8VLL(&AO<&4@:70@
&:&5L<',A
`
end
To unsubscribe, email '[email protected]' with
'unsubscribe forte-users' as the body of the message.
Searchable thread archive <URL:<a href=
"http://pinehurst.sageit.com/listarchive/">http://pinehurst.sageit.com/listarchive/</a>>
Yes, using SMTP is the simplest solution. I have posted some samples while
back (three monts maybe), so you should be able to find it.
Hope this helps.
Dariusz.
Born Information Services
(303) 846-8000
-----Original Message-----
From: Forte Consultants [SMTP:[email protected]]
Sent: Thursday, December 03, 1998 2:17 PM
To: [email protected]; [email protected]
Subject: Re: Forte Email
Hi,
I did this sometime back. I used forte externalconnection class to
implement
SMTP protocol.
Hope this helps,
Anand Ramaswamy
PSI Data Systems Ltd.
[email protected] wrote:
I have a Forte based application that needs to send an email messagefrom
the server partition. The application runs on NT and would need to talkto
MS Exchange Server. Has anyone done this already? I would be gratefulfor
any help, advice or general comments.
Eric Rasmussen
Online Resources &
Communications Corporation
(703) 394-5128
[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/>-
To unsubscribe, email '[email protected]' with
'unsubscribe forte-users' as the body of the message.
Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>
Similar Messages
-
Hello,
I copy and pasted some code from WACK coldfusion book and i
can insert and delete lines on the screen, but when i refresh the
screen the changes didnt apply.
Any suggestions?
Am i supposed to add an update button also?
<!---
Name: grid2.cfm
Author: Ben Forta ([email protected])
Description: Flash editable data grid example
Created: 12/22/04
--->
<cfquery datasource="vdinfo" name="tableinfo">
Select * from uos
order by cwpartnbr
</cfquery>
<!--- Display data grid --->
<cfform format="flash" action="formdump.cfm">
<!--- Data grid --->
<cfgrid name="uos2"
selectmode="edit"
query="tableinfo"
insert="yes"
delete="yes"
height="400" />
</cfform>I have a similar problem where the update only effects some
of the records in the database - there are 4 records in the
database and I am able to only modify the 2nd and 3rd record -
changes made to the other records are ignored. The code follows:
<cfif isDefined("Form.Update")><!--Have we been
asked to update the database? -->
<cfgridupdate datasource="GISdb"
tablename="DistrictContacts" grid="g_Contacts">
Update was done.
</cfif>
<cfquery name="GetData" datasource="GISdb">
SELECT *
FROM DistrictContacts
</cfquery>
<cfform name="grid_test" action="Contacts_admin.cfm"
style="text-align:center" method="post">
<cfgrid name="g_Contacts" query="GetData"
colheaderbold="yes" selectmode="edit" width="100%" picturebar="yes"
delete="yes" sort="yes" insert="yes" maxrows="30"
selectcolor="##FF0000">
</cfgrid>
<cfinput type="submit" name="Update" value="Update the
database" tabindex="1">
</cfform>
There does not appear to be anything unique about the records
that would exlplain this. The result applies to any of the fields.
Any ideas? -
Sivaram,
You will need to get the DLL into a LIB and wrapper it. Do this (in Win
3.1 & Borland) using the IMPLIB command. Then you can wrapper the lib.
Obviously, you will need to know the function prototype in order to wrapper.
The most common problem is that the functions will probably be defined
as using the PASCAL calling convention and Forte generates function
prototype without the PASCAL. If that happens, you need to modify the
generated *.cc files to add before compiling and linking.
Regards,
Tony Elmore
MSF&W
Springfield, IL
[email protected]
-----Original Message-----
From: Sivaram S Ghorakavi <[email protected]>
To: 'forte' <[email protected]>
Date: Monday, October 27, 1997 11:26 AM
Subject: Accessing DLL
Hello Guys,
Can anybody tell me is there any way to access DLLs from Forte ??
Through external system wrapping or Direct accessing!!!
Any clue will be very helpful
Thanx
Sivaram
International Business Corporation (IBC)Pascal calling convention is implemented in R3.
Please review technote 11183 to set it up.
linh ...
At 03:15 PM 10/29/97 -0600, Jeanne Hesler wrote:
Hi Stephen,
If your errors show all of your function statements with an underscore at
the beginning, then that function has most likely been defined using the
pascal calling convention. Unfortunately, Forte does not provide a way for
you to specify the pascal calling convention prior to generating its
wrapper code. This makes it a bit awkward to wrapper functions that use
that convention, since you must do the fcompile manually. After you make
the library distribution, but before you do the fcompile, you will need to
edit the *.cc files that were generated, and add the call convention on
each of your function statements. This is a bit ugly, especially if you
have 200+ function statements, but once you have everything wrappered,
hopefully you will not need to do it again for a while.
As a point of interest, using the underscore to decorate the function name
for the pascal call convention is not specific to the Microsoft compilers.
Call conventions specify what sequence is used to pass the parameters from
the caller to the callee, and whether the caller or the callee will reset
the stack upon return from the function call. It is imperative that both
caller and callee follow the same rules, or the results will be fairly
disastrous. Using the underscore to decorate the name helps prevent that
kind of mismatch by keeping them from linking accidentally.
On the other hand, you probably can blame Microsoft for the prevalence of
the pascal call convention. Even though cdecl is the default call
convention for the compiler, it is fairly common for developers in the
Windows realm to use the pascal convention instead. This is the convention
used by all of the Windows API's, and I think people just got used to
specifying them that way. In fact, the convention is so prevalent that
some development environments will only utilize external DLL's where the
call convention is pascal. This makes it a bit of a challenge for those of
us who are producing external DLL's to be used in more than one development
environment. When we created the Forte version of our Imaging Developer
product, we changed the call conventions to simplify the wrappering
process, but I suspect that most vendors will stick with the pascal
convention in their DLL's.
Jeanne--
Pardon me for butting in.
I am following this conversation with great interest
because I am trying to do the same thing and I lack
experience in working with the Microsoft build environment.
I have from vendor X the following: A.dll B.dll C.dll and
A.lib and block of about 200 Declare Function statements
all of which reference library A.dll.
So far our attempts to fcompile a Forte 3E0 wrapper have
failed to link due to unresolved symbols, specifically the
Forte wrapper calls, each prefixed in the linker error mssg
with "_". I have heard that the "_" prefix is a Microsoft
"decoration code" for something.
I've done TOOL wrappers for ANSI C callouts on UNIX but this
DLL stuff looks like it has more moving parts.
Are there any tools in the MSVC 5 environment that would
enable us to see the service interfaces that the DLL's
export or determine what is in the LIB?
Stephen Porterfield
Developer
[email protected]
===================================================================
linh pham | ... Do I dare
510.869.2153 | Disturb the universe?
http://www.forte.com | In a minute there is time
| For decisions and revisions
which a minute will reverse.
t.s.eliot -
We are currently developing a Forte eMail service that will send messages
together with attachments. File paths cannot be used to reference the attachment
files as the server the eMail server resides on, cannot see all network files.
Hence files need to be passed to the eMail service via objects. The File.
ReadText (target=TextData, length=integer) method, does not read Microsoft Word
.doc file correctly (encounters EOF before reading all of the file), The File
.ReadBinary (target=BinaryData, length=integer) method does read files
correctly, but how do we re-create a .doc file from a BinaryData object ?
In summary, we need to copy any file types from the client to the eMail service
without using file paths. The FileSystem object has been rejected as this would
not enable applications outside of Forte to use this service. All help and ideas
regarding this matter would be greatly appreciated.
Best regards
Mark J Edwards
Senior Technical Specialist
Willis
Information Services Division
Friars Street
Ipswich
Suffolk
IP1 1TA
UK
Tel: +44 (0)1473 222492
Fax: +44 (0)1473 222758
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.Mjdrapeau,
LurveLeif is correct, what you should be using are system requirements,
to make sure that the bundle only applies if the file exists
Shaun Pond -
NoClassDefFoundError after running setEnv.sh
I am running the setEnv.sh script, but all the classes that are sopposetly
added to the claspath, are not.
I can start the server with the startWebLogic.sh, but if I want to run
another class (an example) I run setEnv.sh and after that
when I try to run the class I get a NoClassDefFoundError.
I am using weblogic 5.1 on solaris sparc.
TIA
Ofer Fort
Manna Inc.
+972 3 6111231I don't think that the examples are in the classpath in setEnv.sh
Mike
"Ofer Fort" <[email protected]> wrote:
I am running the setEnv.sh script, but all the classes that are sopposetly
added to the claspath, are not.
I can start the server with the startWebLogic.sh, but if I want to run
another class (an example) I run setEnv.sh and after that
when I try to run the class I get a NoClassDefFoundError.
I am using weblogic 5.1 on solaris sparc.
TIA
Ofer Fort
Manna Inc.
+972 3 6111231 -
Hi guys,
Just a quick question. I am wanting to send email from our Forte
application and am wondering what is the easiest way to do this. Any
ideas appreciated!
Thanks,
Cameron Clark,
Melbourne, Australia.This message is in MIME format. Since your mail reader does not understand
this format, some or all of this message may not be legible.
------_=_NextPart_001_01BEFA14.F973DD04
Content-Type: text/plain;
charset="iso-8859-1"
Here is code that we have in one of our applications to send an email. Hope
this helps!
anSMTPHandler : SMTPHandler = new(theMailServer='email.wyle.com');
tdlist : array of textData = new ;
tdlist.AppendRow(__EmailAddress);
messageBody : Textdata = new ;
messageBody.Concat('*******************\n');
messageBody.Concat('RFQ# ').Concat(__RFQ.RFQNumber).Concat('\n');
messageBody.Concat('*******************\n');
messageBody.Concat('The following parts on this rfq are registerable but no
registration number was provided:\n');
messageBody.Concat(' \n');
messageBody.Concat(__EmailPartList).Concat('\n');
subject : TextData = new(value='RFQ Without Registration Numbers');
Sender : TextData = task.part.OperatingSystem.GetEnv('CCEmailFrom');
If Sender <> NIL Then
anSMTPHandler.SendMessage(tdlist,sender,subject,messageBody);
else
anSMTPHandler.SendMessage(tdlist,TextData('[email protected]'),subject,message
Body);
end if ;
messageBody.Clear ;
messageBody.SetAllocatedSize(0);
subject.clear ;
subject.setAllocatedSize(0);
anSMTPHandler = NIL ;
-----Original Message-----
From: Cameron Clark [mailto:[email protected]]
Sent: Wednesday, September 08, 1999 12:31 AM
To: Forte User Group
Subject: (forte-users) Sending Email from Forte
Hi guys,
Just a quick question. I am wanting to send email from our
Forte
application and am wondering what is the easiest way to do
this. Any
ideas appreciated!
Thanks,
Cameron Clark,
Melbourne, Australia.
For the archives, go to: http://lists.sageit.com/forte-users
and use
the login: forte and the password: archive. To unsubscribe,
send in a new
email the word: 'Unsubscribe' to:
[email protected]
------_=_NextPart_001_01BEFA14.F973DD04
Content-Type: text/html;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<DEFANGED-META HTTP-EQUIV=3D"Content-Type" CONTENT=3D"text/html; =
charset=3Diso-8859-1">
<DEFANGED-META NAME=3D"Generator" CONTENT=3D"MS Exchange Server version =
5.5.2448.0">
<DEFANGED-TITLE>RE: (forte-users) Sending Email from Forte</TITLE>
</HEAD>
<BODY>
<P><FONT SIZE=3D2 FACE=3D"Arial">Here is code that we have in one of =
our applications to send an email. Hope this helps!</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">anSMTPHandler : SMTPHandler =3D =
new(theMailServer=3D'email.wyle.com');</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">tdlist : array of textData =3D new =
;</FONT>
<BR><FONT SIZE=3D2 =
FACE=3D"Arial">tdlist.AppendRow(__EmailAddress);</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">messageBody : Textdata =3D new =
;</FONT>
<BR><FONT SIZE=3D2 =
FACE=3D"Arial">messageBody.Concat('*******************\n');</FONT>
<BR><FONT SIZE=3D2 FACE=3D"Arial">messageBody.Concat('RFQ# =
').Concat(__RFQ.RFQNumber).Concat('\n');</FONT>
<BR><FONT SIZE=3D2 =
FACE=3D"Arial">messageBody.Concat('*******************\n');</FONT>
<BR><FONT SIZE=3D2 FACE=3D"Arial">messageBody.Concat('The following =
parts on this rfq are registerable but no registration number was =
provided:\n');</FONT>
<BR><FONT SIZE=3D2 =
FACE=3D"Arial">messageBody.Concat(' =
\n');</FONT>
<BR><FONT SIZE=3D2 =
FACE=3D"Arial">messageBody.Concat(__EmailPartList).Concat('\n');</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">subject : TextData =3D =
new(value=3D'RFQ Without Registration Numbers');</FONT>
<BR><FONT SIZE=3D2 FACE=3D"Arial">Sender : TextData =3D =
task.part.OperatingSystem.GetEnv('CCEmailFrom');</FONT>
<BR><FONT SIZE=3D2 FACE=3D"Arial">If Sender <> NIL Then</FONT>
<BR> <FONT SIZE=3D2 =
FACE=3D"Arial">anSMTPHandler.SendMessage(tdlist,sender,subject,messageBo=
dy);</FONT>
<BR><FONT SIZE=3D2 FACE=3D"Arial">else</FONT>
<BR> <FONT SIZE=3D2 =
FACE=3D"Arial">anSMTPHandler.SendMessage(tdlist,TextData('[email protected]=
m'),subject,messageBody);</FONT>
<BR><FONT SIZE=3D2 FACE=3D"Arial">end if ;</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">messageBody.Clear ;</FONT>
<BR><FONT SIZE=3D2 =
FACE=3D"Arial">messageBody.SetAllocatedSize(0);</FONT>
<BR><FONT SIZE=3D2 FACE=3D"Arial">subject.clear ;</FONT>
<BR><FONT SIZE=3D2 FACE=3D"Arial">subject.setAllocatedSize(0);</FONT>
<BR><FONT SIZE=3D2 FACE=3D"Arial">anSMTPHandler =3D NIL ;</FONT>
</P>
<UL><UL>
<P><A NAME=3D"_MailData"><FONT SIZE=3D2 FACE=3D"Arial">-----Original =
Message-----</FONT></A>
<BR><B><FONT SIZE=3D2 FACE=3D"Arial">From: Cameron Clark =
[<A =
HREF=3D"<a href=
"mailto:[email protected]">mailto:[email protected]</a>"><a
href=
"mailto:[email protected]">mailto:[email protected]</a></A>]<=
/FONT></B>
<BR><B><FONT SIZE=3D2 FACE=3D"Arial">Sent: </FONT></B> <FONT =
SIZE=3D2 FACE=3D"Arial">Wednesday, September 08, 1999 12:31 AM</FONT>
<BR><B><FONT SIZE=3D2 =
FACE=3D"Arial">To: </FONT></B> <FONT SIZE=3D2 =
FACE=3D"Arial">Forte User Group</FONT>
<BR><B><FONT SIZE=3D2 =
FACE=3D"Arial">Subject: </FONT>=
</B> <FONT SIZE=3D2 FACE=3D"Arial">(forte-users) Sending Email from =
Forte</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">Hi guys,</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">Just a quick question. I am =
wanting to send email from our Forte</FONT>
<BR><FONT SIZE=3D2 FACE=3D"Arial">application and am wondering what is =
the easiest way to do this. Any</FONT>
<BR><FONT SIZE=3D2 FACE=3D"Arial">ideas appreciated!</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">Thanks,</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">Cameron Clark,</FONT>
<BR><FONT SIZE=3D2 FACE=3D"Arial">Melbourne, Australia.</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">--</FONT>
<BR><FONT SIZE=3D2 FACE=3D"Arial">For the archives, go to: <A =
HREF=3D"<a href=
"http://lists.sageit.com/forte-users">http://lists.sageit.com/forte-users</a>" =
TARGET=3D"_blank">http://lists.sageit.com/forte-users</A> and =
use</FONT>
<BR><FONT SIZE=3D2 FACE=3D"Arial">the login: forte and the password: =
archive. To unsubscribe, send in a new </FONT>
<BR><FONT SIZE=3D2 FACE=3D"Arial">email the word: 'Unsubscribe' to: =
[email protected]</FONT>
</P>
</UL></UL>
</BODY>
</HTML>
------_=_NextPart_001_01BEFA14.F973DD04-- -
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 -
I have an iPad 2, connecting via Wifi to an Actiontec Q1000 modem. The iMac (3.06 GHz Intel Core 2 Duo, 4 GB 1067 MHz RAM, running OS 10.8.2) is also hard wired to the same modem. Internet access is via CenturyLink. Main email is from Shaw cable in Calgary (Phoenix is a vacation property), not through CenturyLink.
Can receive email on the iMac, but every time I try to send, I get a pop up saying "Cannot send message using the server .......". Further prompts me to verify the address in the email, and SMTP settings in Mail preferences, or to select a different outgoing mail server. I've tried using a number of servers, always the same result.
Using same settings in both devices.Mail is not my forte, but what I noticed was that you have Centurylink and presumably have your Mail set up with their settings? But then you mention Shaw/vacation property/etc - you can send out email only through the server that you have set up as an account using the ISP you are using. If you switch places, do you have separate accounts set up with both Centurylink and Shaw so you can switch and use whichever one you're at? A Phoenix ISP won't work with a Mail POP account unless you're in your home - Phoenix - area.
Do you have a data plan with your iPad? That would explain why that works - it'll function sort of like a cellphone - works anywhere where there are signals. -
After more than a year of success, email will not sync
After more than a year of successfull syncs with iTunes, my iPhone GS will not sync with my Outlook Calendar. I get the message, "Either there is no default mail client or the current mail client cannot fulfill the messaging requrest. Pleae run Microsoft Outlook and set it as the default mail client."
The problem with complying with that message is that I DO NOT use Outlook as my default mail client on my PC. I DO use Outlook for my Calendar on the PC and have, in the past, been able to sync with the iPhone calendar.
On the iPhone, I can receive my email from GMail and another provider without problem. On my PC, I use Forte Agent as my email program.
I know of nothing that I have done to change settings an any program that would affect the ability to sync my calendar with outlook but NO NEW calendar entries are reaching my iPhone now. All other portions of the sync appear normal.
Any help would be greatly appreciated.Subject correction. It should read: After more than a year of success, Outlook Calendar will not sync.
It appears that there are a VERY large amount of problems with the calendar not performing sync correctly. Any answers...? -
Automated Testing of Forte Applications
Dear Jim,
This is a technical and education Forum and I want to make sure everyone is
"educated" to your options out there. Our company specific purposes is
delivering testing solutions for Forte Developed applications. (Primary
responsibility is to help developers and qa staff) I have tried to answer
you questions as follows and to educate fellow Forte people on solutions
available to them. If you need more discussion about our tools, please
contact me directly.
To anyone interested in testing Forte Applications:
1) What product are developers using to automate the process of testing
Forte applications?
IQTest- Unit Level Testing Tool that tests specific Forte methods and
saves them for automatic regression testing.
IQTrace: Unit Level Pathway Testing. Tests specific method level and
functional threads and saves them for automatic regression testing.
2) If there is a tool, how long does it take to create a typical test?
- Class I.Q. automatically generate the test classes and instantiates the
object under test. A typical setup for a developer is about 30 minutes
which is done once. The actual process of testing methods or traces takes
seconds. All tests are saved to any Forte database for automatic
regression testings.
3) Can the test include the testing of persistance to a database?
Yes, Our products are written to test persistance in a database and all
fully supported to test service objects which is currently a major issue
that most development teams are running into problems with.
4) What type of testing can be performed: black box testing, white box
testing, integration testing, UI testing, etc.?
Class I.Q. is considered a "White Box" approach to testing. It is
exercising the source code and creating an output for each method call.
The test cases then are dynamically linked into a trace.
Some of the features of Class I.Q. Products:
- Automatic Test Class Generation
- Saving of Test Cases and Test Traces
- Groups A queue for Different Testing Responsibilities
- Linking to Any Forte Supported Test Configuration Product
Thank you,
Any additional questions please call or email me directly.
Joe Burns
Class I.Q.
610-254-5151
[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/>We have used JMETER from Apache foundation. This is more a stress test tool, but you can also use it for unit testing, as it allows you to record a serie of HTTP requests.
Since your question is not related to JHeadstart, you better post this question on the JDeveloper forum.
Steven DAvelaar,
JHeadstart team. -
Hi,
Ben Forta shows in his video "ColdFusion9 exposed as Flex Services" how to send an Email using ColdFusion as a Service.
I tried out this example with Flashbuilder4 Beta2 but I got the following ActionSript-Error:
Error: Server is undefined to setup the connection
at coldfusion.service::BasicService/initializeConnection()[D:\p4\depot\ColdFusion\cf_main\to ols\AIRIntegration\Services\src\coldfusion\service\BasicService.as:278]
at coldfusion.service::BasicService/call()[D:\p4\depot\ColdFusion\cf_main\tools\AIRIntegrati on\Services\src\coldfusion\service\BasicService.as:226]
at coldfusion.service.mxml::Mail/execute()[D:\p4\depot\ColdFusion\cf_main\tools\AIRIntegrati on\Services\src\coldfusion\service\mxml\Mail.as:370]
at CFaaS/button1_clickHandler()[C:\Dokumente und Einstellungen\walter\Adobe Flash Builder Beta 2\CFaaS\src\CFaaS.mxml:18]
at CFaaS/___CFaaS_Button1_click()[C:\Dokumente und Einstellungen\walter\Adobe Flash Builder Beta 2\CFaaS\src\CFaaS.mxml:93]
Who has an idea what to do?
Thanks in advance,
WalterHi,
We tried this out and it works like a charm
Actually even we hit the issue you have mentioned but on further investigation we could get things working.
Please follow these settings, we are not sure if you have done all of these:
a) In CF9 administrator, under Mail section please type your server name, username and password. Check the ' Verify mail server connection'
checkbox and click 'Submit Changes'. Make sure you get the message 'Connection Verification Successful'.
b) Under Security-> 'User Manager' section in CF9 administration, add an user using 'Add User' with the following info:
username, password, confirm password , check both RDS and administrative access and add 'Exposed Services' by selecting the required services.
eg: Mail Service and click 'Add User'.
c) Go to 'Security->Allow IP Address in CF9 administrator and enter your IP address and say 'Add'.
d) After add the following tag in addition to CF:Mail,
<cf:Config cfServer="" cfPort="8501" servicePassword="" serviceUserName="" />(the values entered here should be same as the ones configured under 'Add User' and 'Allow IP address' section).
Please find attached the mxml file (TestCF.mxml) which has the Flex code.
Also, add the 'CFService.swc' into your project. Go to Project->Flex Build Path->Add SWC and point to D:\ColdFusionCentaur\wwwroot\CFIDE\scripts\air (subject to CF9 installed location).
Please try the workflow by following these steps and let us know if things work fine
Thanks,
Balaji
http://balajisridhar.wordpress.com -
How to delete email attachments from server
Hi,
I created an a CF template for sending e-mail which includes
attachments. It has been tested on my dev box and is functioning
fine as the attachment upload to a designated directory on the
server. I would like the attachments to be purged once the e-mail
has been forwarded to the recipent.
In Macromedia's ColdFuision 7MX web application construction
book page 913 "Interacting with Email" there is a CFC that will
delete the file when the user ends their session.
I am not sure how to write this to fit the code I am using.
Here is the eMail form
<!--- Mail_Form.cfm--->
<html>
<head>
<title>Please enter your message</title>
</head>
<body>
<form action="Send_Email.cfm" method="post"
enctype="multipart/form-data">
<table width="500" border="0" align="center">
<tr>
<td width = "500" colspan="2">Please enter your e-mail
message:</td>
</tr>
<tr>
<td width="250">To:</td>
<td width="250"><input type="text" name="to_addr"
value=""></td>
</tr>
<tr>
<td>Subject:</td>
<td><input type="text" name="subject"
value=""></td>
</tr>
<tr>
<td>Message:</td>
<td><input textarea name="message" rows="5"
cols="35"></textarea></td>
</tr>
<tr>
<td width="250">Attachment #1:</td>
<td width="250"><input type="file"
name="attachment_1" value=""></td>
</tr>
<tr>
<td width="250">Attachment #2:</td>
<td width="250"><input type="file"
name="attachment_2" value=""></td>
</tr>
<tr>
<td width="250">Attachment #3:</td>
<td width="250"><input type="file"
name="attachment_3" value=""></td>
</tr>
<tr>
<td width="250"> </td>
<td width="250"><input type="submit"
name="Send_Email" value="SendEmail"></td>
</tr>
</table>
</form>
Here is the form to send the attachment.
<!--- Send_Email.cfm --->
<!--- First make sure that the user uploaded attachments
--->
<cfif FORM.attachment_1 neq "">
<!--- first actually upload the file --->
<cffile action="upload"
destination="D:\uploadsTEST\"
filefield="attachment_1"
nameconflict="makeunique">
<!--- now create a temporary holder for the attachment
later on --->
<cfset attachment_local_file_1 =
"d:\uploadsTEST\#file.serverfile#">
</cfif>
<!---Now repeat the process for the second and third
attachment:--->
<cfif FORM.attachment_2 neq "">
<!--- first actually upload the file --->
<cffile action="upload"
destination="D:\uploadsTEST\"
filefield="attachment_2"
nameconflict="makeunique">
<!--- now create a temporary holder for the attachment
later on --->
<cfset attachment_local_file_2 =
"d\uploadsTEST\#file.serverfile#">
</cfif>
<cfif FORM.attachment_3 neq "">
<!--- forst actually upload the file --->
<cffile action="upload"
destination="D:\uploadsTEST\"
filefield="attachment_3"
nameconflict="makeunique">
<!--- now create a temporary holder for the attachment
late on --->
<cfset attachment_local_file_3 =
"d:\uploadsTEST\#file.serverfile#">
</cfif>
<!---OK, you have now uploaded the file the server, now
let's send
out the email with the attachments:--->
<cfmail FROM="[email protected]" to="#form.to_addr#"
subject="#subject#"
server="an001so-dby1c.pbi.global.pvt" port="25">
#message#
<cfsilent>
<!--- <cfsilent> tag used to kill the white space
in this area
so your email is not cluttered with white space.--->
<cfif FORM.attachment_1 neq "">
<cfmailparam file="#attachment_local_file_1#">
</cfif>
<cfif FORM.attachment_2 neq "">
<cfmailparam file="#attachment_local_file_2#">
</cfif>
<cfif FORM.attachment_3 neq "">
<cfmailparam file="#attachment_local_file_3#">
</cfif>
</cfsilent>
</cfmail>
Here is the session application code to delete the file upon
uploading
<!---
Filename: Application.cfc
Executes for every page request
--->
<cfcomponent output="false">
<!--- Name the application. --->
<cfset this.name="attachmentPurge">
<!--- Turn on session management. --->
<cfset this.sessionManagement=true>
<cfset this.clientMangment=true>
<cffunction name="onSessionEnd" output="false"
returnType="void">
<!--- Look for attachments to delete --->
<cfset var attachDir = expandPath("Attach")>
<cfset var getFiles = "">
<cfset var thisFile = "">
<!--- Get a list of all files in the directory --->
<cfdirectory directory="#attachDir#" name="getFiles">
<!--- For each file in the directory --->
<cfloop query="getFiles">
<!--- If it's a file (rather than a directory) --->
<cfif getFiles.type neq "Dir">
<!--- Get full filename of this file --->
<cfset thisFile =
expandPath("Attach\#getFiles.Name#")>
</cfif>
</cfloop>
</cffunction>
</cfcomponent>
The tutorial only explains how to delete the attachment when
the recipient checks there mail
in the POP server.
Assuming that the sender is in a session would the code be
written to delete the attached file from the directory on
the server one the e-mail is sent.
Can someone explain how to automatically delete email
attachments from a designated directory or provide me with the code
that would handle this after an email is sent with attachment.
Thanks,
TonyI don't know why your dos code didn't run. It could be
addressing. My limited experience with cfdirectory/cffile/cfexecute
is to type out the complete path at least once.
Good books?
Hard to say, depends on what else you are new at. If you are
new to html, then htmlgoodies.com has good tutorials. So does
webmonkey.com. If you have trouble with sql, I have heard good
things about the SAMS book, Teach Yourself SQL in 10 Minutes by Ben
Forta. I learned javascript by buying the book Teach Yourself
Javascript in 24 Hours. The O'Reilly books are also good. I learned
awk with one of those books.
Glad you liked the fish pics. The camera is specified on most
of the pages. If it says Reefmaster, I used an external strobe. If
it says Sony I either used the camera flash only or natural light.
By the way, that is not a Cold Fusion site. It's strictly html and
javascript. -
Re: Forte and Dialup PPP connections
Subject: Forte and Dialup PPP connections
Priority: normal
Reply-to: "Dexel Durban" <[email protected]>
We want to run Win 95 on our client forte machines. Currently we're
using Forte v2.0E and MS TCP/IP.
Everything works fine in the LAN enviroment, however these client
machines have to run at remote sites, and therefore will need to use
modems with dialup PPP links.
The catch with the dialup procedure is that they will dial into a box
which verifies their username/password and then dials them back (for
security reasons) and sets up the PPP conection.
The only software that seems capable of setting up a PPP connection
after someone dialing your machines, is a product called Fastlink which
we're using.
After we've set up the PPP connection and run forte it works 100%,
however if we come out and run forte again - it can't establish the
connection to the host.
What we've deduced from this is that possibly :
1) MS TCP/IP isn't cleaning up after itself after the first
connection
2) The problem lies with Fastlinks ODI driver.
My questions are :
1) Has anyone managed to get forte running over a modem using PPP,
with the call-back verification procedure outlined above ?
2) In the Forte doc's it says that Forte is only compatible with Win
95 and MS TP/IP no other TCP/IP stack - is this true, or has someone
managed to get another stack working ?
Any help would be greatly appreciated !
- Carl
I have some similiar problems that basically were solved by a fix to one of the
ip executables. For this particular situations I was using Lan Workplace for DOS
Version 5 and just visited their web site and looked for a description similiar
to the problem I was having to determine the right patch. It sounds like when
you let go of your connection that the com port is probably still being held and
not beig released. I could be wrong but.... are you getting any other type of message?Thank you for your answer, David.
We are considering the splitting of one VMS partition into several ones to
streamline some functionality. Currently the communication between the
implied components is handled within the existing partition. By splitting it
we are expecting some performance loss due to interpartition communication
overhead and, since the number of messages expected will be high, we were
wondering if they will be needlessly going through the whole network stack
or transferred directly via socket IPC, as can be done in the Unix boxes.
The answer would help us tune-up the system by focusing at the right
parameters during testing of the new setup.
Alberto Lamas
Datamed SA -
We have no problem using JDK 1.1.5. However, we are using Orbixweb. If
you are accessing the applet and the IOR file from the same host (exact
host name), then one other possibility is the JVM compatibility for your
browser. Using Javasoft's Activator or appletviewer should resolve
that.
-----Original Message-----
From: Kamran Amin [SMTP:[email protected]]
Sent: Tuesday, March 10, 1998 7:48 AM
To: '[email protected]'; '[email protected]'
Subject: RE: Java and Forte
Dan,
We had the same problem as you are having regarding question
one. Make
sure you are
using JDK 1.1.3 or 1.1.4. It did not work for me when I was using JDK
1.1.5. Also you have to
use the gatekeeper to make the applet work. Hope this help.
Kamran Amin
Forte Technical Leader, Software Engineering
[email protected]
203-459-7362
Oxford Health Plans
48 Monroe Turnpike
CT, Trumbull 06611
http://www.oxhp.com/
From: [email protected][SMTP:[email protected]]
Sent: Monday, March 09, 1998 7:49 PM
To: [email protected]
Subject: Re: Java and Forte
1. I have been able to make my Java client appllication call-in to a
Forte service object with success. However the tricky part beginswhen
I try to do the same with a Java applet. I get an exception returned
which is an AppletSecurityException. I understand that running a Java
applet in a browser has two limitations, one being the Java applet
sandbox and the firewall restriction. As I am only running my Java
applet and the Forte service object on the same node, this rules out
the latter.
I have tried running the Gatekeeper from the same directory as myJava
client application, which includes all the client stub files
(including stub files which are generated from Forte supplier plans
such as those in the Framework folder). However, I still receive the
AppletSecurityException.
How can I go about making this operation successful?
**AppletSecurityExceptions can be caused by many problems--trying toaccess
machines other than the class download machine, or trying to accessserver
side classes outside the defined directory structure in the webserver. I'd
look closely at the classes that are being brought into memory (forexample,
Visibroker's ORB shows you each file as it is loaded) and make sureyour web
server is defined correctly. If you follow the Forte technotesclosely, it
usually solves this problem.
2. Has anyone tried implementing a 'fat' client, one that combines a
Forte web application, JavaScript, and a Java applet client toperform
operations such as validation and a tiny bit of data processing allon
the client side, relieveing the application server from such
operations? If yes, how do I implement the solution, and are thereany
tech notes from Forte that specifically tell me how to do this?
**We have created a Java framework that follows many of the designpatterns
and naming conventions as our Forte framework. The Java classes canbe
extended to marshal and unmarshal scalar data structs passed acrossthe ORB
boundary to instantiate 'thick' functional objects on the client, andas much
processing and as many business rules as wanted can be developed inthe
client
Java objects.If you look at the exception information in the iiop manual it
discusses exteneded propties DefaultThrowsClause, ThrowsClause and
IsThrowable.
If you mark your exception class with IsThrowable it will show up in the
IDL as an exception. If you use either DefaultThrowsClause(project) or
ThrowsClause(method) you will get the appropriate raises in the idl.
This will cause the idl2java to produce code which will allow you to catch
the exception.
Tom.
At 09:41 AM 1/29/99 +0100, Giuseppe Sorce wrote:
>
Hi all,
I am currently working to an architecture to establish a communication
between a Forte' server and a Java client, using Visigenic's Visibroker and
IDL mode.
I have problems when I try to raise a Forte' exception from a method
invoked by the Java client; I would like the exception class
(ProductException) not to inherit from the class GenericException, because
the IDL I want to generate must have this structure:
exception ProductException {
string message;
Using this solution, the client application gets blocked waiting forever.
I am currently working with:
- Forte' 3.0.G.2 plus WebEnterprise 1.0.B
- JDK 1.1.5
- Visibroker 3.1
My question is: is it possible to raise an exception from the Forte' side
that is
compliant to the IDL mentioned above?
Of course it should be caught from the Java side.
Thank you in advance
Giuseppe Sorce
CSI Piemonte - C.so Unione Sovietica 216 - 10134 Torino - ITALY
tel. +39-011-3168736
fax +39-011-3168212
e-mail [email protected]
url http://www.csi.it
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: how can two Forte installtion communicate
Hi,
I have similar arrangement here but for "user acceptence test". However,
may I remind you that when some objects/codes got checked out --> overwrite
with new import --> integrate --> check out again. Some funny things ( I
would say corruption ) may happen. I have one time that a normal old piece
of code got compilation error and no one can find out why. The last resort
is that I deleted everything and start from scratch again. Then everything
works.
Thus, I would suggest that from time to time, you should start out with a
new repository instead of using it over and over again in this fashion.
Maybe you can archive the old one as a version backup.
Regards,
Peter Sham.
-----Original Message-----
From: Kalidindi, Ravi CWT-MSP [SMTP:[email protected]]
Sent: Tuesday, February 16, 1999 1:10 AM
To: 'Nick Delany'; 'Jim Rice'
Cc: [email protected]
Subject: RE: how can two Forte installtion communicate
Nick...
We have a similar situation here. We have about seven teams,
each
with their own repositories with interdependent code.
Let me give you a simple scenario to explain how you can
make it
work:
Problem
--Team A is responsible for projects 1,2,3 and use repository RepA
--Team B is responsible for projects 4,5,6 adn use repository RepB.
--Project 2 is a supplier plan to project 5 and project 3 is a
supplier plan
to project 6.
Solution
--each repository is reponsible for some projects and these projects
can be
changed only in that repository.
--each repository also has a workspace called "SlaveProjects"
--This workspace has all the projects that are needed but are not
developed
by this team.
--These projects are checked out so that no one else can change them
-- so, RepB's slaveProjects workspace will have projects 2 and 3
(and other
projects they need).
-- You can also password protect the slaveProjects workspace.
-- When team A thinks they have a new working(or atleast compilable)
"version" of projects 2 and 3, they can trigger of an fscript which
will
export the projects 1 and 2, possibly save it in version control.
-- team B can then trigger another fscript which will pull the code
from
version control, import the projects 1 and 2 into RepB's
slaveProjects
workspace, integrate it and recheck everything out.
Options
-- you can get fancy with the scripts
-- you can add the two scripts together to do the whole thing in one
shot.
However existense of many such repositories can cause integrate
failures and
you might not know where exactly it stopped. You need to log the
output to
keep track.
-- you should probably make the second script actually create a
temporary
workspace, and import projects there and integrate. This is in case
you had
many other projects in the slaveprojects workspace that need not be
integrated and rechecked out each time.
-- you could create an application in forte or VB etc.. to make this
process
more sophisticated.
Hope that gives you a start. Different locations definetly
adds more
complexity to this, but the concept should be the same. If you have
more
questions or need more help, I suggest you call Len Lopez at
612-594-2539
who has played around with this stuff a lot. He put in place a VB
app that
does most of the stuff for us and will probably make a presentation
at the
Forte Forum this year on the same topic.
Good Luck!
-Ravi Kalidindi
Born Info Svcs Group.
> -----Original Message-----
> From: Nick Delany [SMTP:[email protected]]
> Sent: Monday, February 15, 1999 10:27 AM
> To: 'Jim Rice'
> Cc: [email protected]
> Subject: RE: how can two Forte installtion communicate
>
>
> Jim,
>
> Rajiv may not be referring to scenario 1, but I'm involved in
something
> like
> that.
> We're a bi-located team, and while we are trying to split up the
work to
> minimise the geographical dependancies, I'd be interested in
anything you
> might have to say about the best way to share code/repositories.
>
> Nick
>
> -----Original Message-----
> From: Jim Rice [mailto:[email protected]]
> Sent: 08 February 1999 22:38
> To: Rajiv Srivastava
> Cc: [email protected]
> Subject: Re: how can two Forte installtion communicate
>
>
> Rajiv,
>
> Can you elaborate ? I can see your questions leading toward at
least the 3
> following scenarios....
>
> 1. Are you asking about 2 different independent developer groups
which
> have
> only the internet as a possible connection pipe between them,
> or
> 2. Are you asking about 2 deployed applications which are the same
> application but deployed to environment production1 and redeployed
to
> environment production2
> or
> 3. Are you asking about 2 deployed applications whic are different
> applications and each is deployed to either
> 3a. a common deployment environment using the same
"Forte_NS_ADDRESS"
> 3b. two seperate deployment environements using the different
> "Forte_NS_ADDRESS" and therefore may even be on sepearte LAN/WAN's
>
> -Jim
>
> At 11:33 AM 2/8/99 , Rajiv Srivastava wrote:
> >Can somebody tell me that what r the possible way where two
different
> >independent Forte Installation can communicate to each other.
> >and share certain the information.
> >
> >thanking you in anticipation.
> >
> >Rajeev
> >
> >-
> >To unsubscribe, email '[email protected]' with
> >'unsubscribe forte-users' as the body of the message.
> >Searchable thread archive
<URL:http://pinehurst.sageit.com/listarchive/>
> >
> Jim Rice mailto:[email protected]
> Partner ConCall @ Feb 17
> http://www.forte.com/events/frameset_partners.html
> Forte Usr Mtg @ May9-12 http://forum99.forte.com
> Partner Tech Specialist Work#: 301-721-1910
>
> -
> 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/>Hi,
I have similar arrangement here but for "user acceptence test". However,
may I remind you that when some objects/codes got checked out --> overwrite
with new import --> integrate --> check out again. Some funny things ( I
would say corruption ) may happen. I have one time that a normal old piece
of code got compilation error and no one can find out why. The last resort
is that I deleted everything and start from scratch again. Then everything
works.
Thus, I would suggest that from time to time, you should start out with a
new repository instead of using it over and over again in this fashion.
Maybe you can archive the old one as a version backup.
Regards,
Peter Sham.
-----Original Message-----
From: Kalidindi, Ravi CWT-MSP [SMTP:[email protected]]
Sent: Tuesday, February 16, 1999 1:10 AM
To: 'Nick Delany'; 'Jim Rice'
Cc: [email protected]
Subject: RE: how can two Forte installtion communicate
Nick...
We have a similar situation here. We have about seven teams,
each
with their own repositories with interdependent code.
Let me give you a simple scenario to explain how you can
make it
work:
Problem
--Team A is responsible for projects 1,2,3 and use repository RepA
--Team B is responsible for projects 4,5,6 adn use repository RepB.
--Project 2 is a supplier plan to project 5 and project 3 is a
supplier plan
to project 6.
Solution
--each repository is reponsible for some projects and these projects
can be
changed only in that repository.
--each repository also has a workspace called "SlaveProjects"
--This workspace has all the projects that are needed but are not
developed
by this team.
--These projects are checked out so that no one else can change them
-- so, RepB's slaveProjects workspace will have projects 2 and 3
(and other
projects they need).
-- You can also password protect the slaveProjects workspace.
-- When team A thinks they have a new working(or atleast compilable)
"version" of projects 2 and 3, they can trigger of an fscript which
will
export the projects 1 and 2, possibly save it in version control.
-- team B can then trigger another fscript which will pull the code
from
version control, import the projects 1 and 2 into RepB's
slaveProjects
workspace, integrate it and recheck everything out.
Options
-- you can get fancy with the scripts
-- you can add the two scripts together to do the whole thing in one
shot.
However existense of many such repositories can cause integrate
failures and
you might not know where exactly it stopped. You need to log the
output to
keep track.
-- you should probably make the second script actually create a
temporary
workspace, and import projects there and integrate. This is in case
you had
many other projects in the slaveprojects workspace that need not be
integrated and rechecked out each time.
-- you could create an application in forte or VB etc.. to make this
process
more sophisticated.
Hope that gives you a start. Different locations definetly
adds more
complexity to this, but the concept should be the same. If you have
more
questions or need more help, I suggest you call Len Lopez at
612-594-2539
who has played around with this stuff a lot. He put in place a VB
app that
does most of the stuff for us and will probably make a presentation
at the
Forte Forum this year on the same topic.
Good Luck!
-Ravi Kalidindi
Born Info Svcs Group.
> -----Original Message-----
> From: Nick Delany [SMTP:[email protected]]
> Sent: Monday, February 15, 1999 10:27 AM
> To: 'Jim Rice'
> Cc: [email protected]
> Subject: RE: how can two Forte installtion communicate
>
>
> Jim,
>
> Rajiv may not be referring to scenario 1, but I'm involved in
something
> like
> that.
> We're a bi-located team, and while we are trying to split up the
work to
> minimise the geographical dependancies, I'd be interested in
anything you
> might have to say about the best way to share code/repositories.
>
> Nick
>
> -----Original Message-----
> From: Jim Rice [mailto:[email protected]]
> Sent: 08 February 1999 22:38
> To: Rajiv Srivastava
> Cc: [email protected]
> Subject: Re: how can two Forte installtion communicate
>
>
> Rajiv,
>
> Can you elaborate ? I can see your questions leading toward at
least the 3
> following scenarios....
>
> 1. Are you asking about 2 different independent developer groups
which
> have
> only the internet as a possible connection pipe between them,
> or
> 2. Are you asking about 2 deployed applications which are the same
> application but deployed to environment production1 and redeployed
to
> environment production2
> or
> 3. Are you asking about 2 deployed applications whic are different
> applications and each is deployed to either
> 3a. a common deployment environment using the same
"Forte_NS_ADDRESS"
> 3b. two seperate deployment environements using the different
> "Forte_NS_ADDRESS" and therefore may even be on sepearte LAN/WAN's
>
> -Jim
>
> At 11:33 AM 2/8/99 , Rajiv Srivastava wrote:
> >Can somebody tell me that what r the possible way where two
different
> >independent Forte Installation can communicate to each other.
> >and share certain the information.
> >
> >thanking you in anticipation.
> >
> >Rajeev
> >
> >-
> >To unsubscribe, email '[email protected]' with
> >'unsubscribe forte-users' as the body of the message.
> >Searchable thread archive
<URL:http://pinehurst.sageit.com/listarchive/>
> >
> Jim Rice mailto:[email protected]
> Partner ConCall @ Feb 17
> http://www.forte.com/events/frameset_partners.html
> Forte Usr Mtg @ May9-12 http://forum99.forte.com
> Partner Tech Specialist Work#: 301-721-1910
>
> -
> 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/>
Maybe you are looking for
-
I can't find a way to change the color on my vertical line bars? Anyone know where these options are? Edited by: BISP on Jun 1, 2012 9:02 PM Found it. Format Chart Data. I didn't realize this was it because it was showing white in the menu but blue i
-
Master-Detail forms no longer work in Access
Hi We have migrated an Access 2000 application into an Oracle 9i database successully. However, the application has a master-detail form that functioned correctly before migration. Since migration the child form does not appear, thus preventing the e
-
Loading date different in SBOM Header and Child Material.
Hi All, We are implementing the SBOM Functionality for our Client. We are facing unusual issue while going through a Testing Phase. We are using the same SBOM Master data for all our testing purpose. I have created 4 Sales Orders for same SBOM Materi
-
Portable Home Directories usage
Hi, I think I see where portable home directory is good for laptop users that might be away from server at times. Would one sugget this for a remote home user that has an iMac who wants to connect to their server, hve it secure (VPN?), have access fi
-
In built Bluetooth for G5?
Currently my G5 does not have built in Bluetooth but rather... I am using a Bluetooth D-Link dongle. Works fine other than I have to use my wired Apple keyboard instead of my Bluetooth Apple keyboard for Single User mode. Also since Leopard (I'm at 1