Re: (forte-users) Question-Minimizing Windows onstartup
I am not sitting in front of a Win95 machine currently, but I think I
remember a setting on the Shortcut tab in the Properties notebook about the
application, that allows you to Run the app either as 'Normal Window',
'Minimized', or 'Maximized.'
/\/\ark
----- Original Message -----
From: "Will Perkinson" <perkinson.willtowerautomotive.com>
To: "Forte Usergroup" <kamranaminyahoo.com>
Sent: Wednesday, March 01, 2000 10:31 AM
Subject: (forte-users) Question-Minimizing Windows on startup
How do you minimize the ftexec window when starting the client on a
Windows 95 platform?
The application starts but leaves the forte ftexec window open in the
background. Is there a way to hide this window or minimize it on
startup?
Thank you,
Will Perkinson
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 am not sitting in front of a Win95 machine currently, but I think I
remember a setting on the Shortcut tab in the Properties notebook about the
application, that allows you to Run the app either as 'Normal Window',
'Minimized', or 'Maximized.'
/\/\ark
----- Original Message -----
From: "Will Perkinson" <perkinson.willtowerautomotive.com>
To: "Forte Usergroup" <kamranaminyahoo.com>
Sent: Wednesday, March 01, 2000 10:31 AM
Subject: (forte-users) Question-Minimizing Windows on startup
How do you minimize the ftexec window when starting the client on a
Windows 95 platform?
The application starts but leaves the forte ftexec window open in the
background. Is there a way to hide this window or minimize it on
startup?
Thank you,
Will Perkinson
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
Similar Messages
-
Re: (forte-users) Question
This is a multi-part message in MIME format.
--------------4E6A4194374DC1BDF50CB1A1
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
I would set the completion event for the display method of the new window and
register to this event in the main window as you see in the attached .pex file.
With this solution it is possible to handle a failor in the new window in order
to bahave like the normal completion and cause the deletion of the input element
in the main window.
Best Regards,
Tamas Deak
"Zirney, Bobby" wrote:
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_01BEF4BD.83F24DA6
Content-Type: text/plain;
charset="iso-8859-1"
I have a frame with a button on it that will open up another frame. When I
close the second frame by pressing the X in the top right hand corner, I
want to clear all the data on the first screen. I have been trying all
sorts of things without success. Does anyone have any suggestions as to how
to do this?
------_=_NextPart_001_01BEF4BD.83F24DA6
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>Question</TITLE>
</HEAD>
<BODY>
<P><FONT SIZE=3D2 FACE=3D"Arial">I have a frame with a button on it =
that will open up another frame. When I close the second frame by =
pressing the X in the top right hand corner, I want to clear all the =
data on the first screen. I have been trying all sorts of things =
without success. Does anyone have any suggestions as to how to do =
this?</FONT></P>
</BODY>
</HTML>
------_=_NextPart_001_01BEF4BD.83F24DA6--
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]
--------------4E6A4194374DC1BDF50CB1A1
Content-Type: application/x-unknown-content-type-pex_auto_file;
name="Win.pex"
Content-Transfer-Encoding: base64
Content-Disposition: inline;
filename="Win.pex"
YmVnaW4gVE9PTCBUb3NzTWU7DQoNCmluY2x1ZGVzIERpc3BsYXlQcm9qZWN0Ow0KaW5jbHVk
ZXMgRnJhbWV3b3JrOw0KSEFTIFBST1BFUlRZIElzTGlicmFyeSA9IEZBTFNFOw0KDQotLSBT
VEFSVCBGT1JXQVJEIENMQVNTIERFQ0xBUkFUSU9OUw0KZm9yd2FyZCAgTmV3V2luIGlzIG1h
cHBlZDsNCmZvcndhcmQgIFdpbiBpcyBtYXBwZWQ7DQotLSBFTkQgRk9SV0FSRCBDTEFTUyBE
RUNMQVJBVElPTlMNCg0KLS0gU1RBUlQgRk9SV0FSRCBDVVJTT1IgREVDTEFSQVRJT05TDQot
LSBFTkQgRk9SV0FSRCBDVVJTT1IgREVDTEFSQVRJT05TDQoNCi0tIFNUQVJUIENPTlNUQU5U
IERFRklOSVRJT05TDQotLSBFTkQgQ09OU1RBTlQgREVGSU5JVElPTlMNCg0KLS0gU1RBUlQg
QyBEQVRBIFRZUEUgREVGSU5JVElPTlMNCi0tIEVORCBDIERBVEEgVFlQRSBERUZJTklUSU9O
Uw0KDQotLSBTVEFSVCBDTEFTUyBERUZJTklUSU9OUw0KDQpjbGFzcyBOZXdXaW4gaXMgbWFw
cGVkIGluaGVyaXRzIGZyb20gRGlzcGxheVByb2plY3QuVXNlcldpbmRvdw0KDQoNCg0KaGFz
IHB1YmxpYyAgbWV0aG9kIERpc3BsYXkgd2hlcmUgY29tcGxldGlvbiA9IChyZXR1cm4gPSBO
ZXdXaW5kb3dGaW5pc2hlZCwgZXhjZXB0aW9uID0gTmV3V2luZG93RmFpbGVkKTsNCmhhcyBw
dWJsaWMgIG1ldGhvZCBJbml0Ow0KDQpoYXMgcHJvcGVydHkNCglzaGFyZWQ9KGFsbG93PW9u
LCBvdmVycmlkZT1vbiwgZGVmYXVsdD1vZmYpOw0KCXRyYW5zYWN0aW9uYWw9KGFsbG93PW9u
LCBvdmVycmlkZT1vbiwgZGVmYXVsdD1vZmYpOw0KCW1vbml0b3JlZD0oYWxsb3c9b24sIG92
ZXJyaWRlPW9uLCBkZWZhdWx0PW9mZik7DQoJZGlzdHJpYnV0ZWQ9KGFsbG93PW9mZiwgb3Zl
cnJpZGU9b2ZmKTsNCg0KaGFzDQorNTE1MTQ2MzEwMDAwMDFiMTAwMDAwMTcyOWZlMzAxMDEw
MDAwMjEwMTAyMDAwMDAwMDAwMjAyMDYwMDk0MDgwMA0KKzFkMDA5ZmZmMDEwMTA0MjEwZjEw
MTExMjAxMDEwMTE3MDAwMDlmZmYwMDAwMDAwMDBkMDAwMDBiYjgwZmEwMDANCiswMDAwMDAw
MDAwMDAwMDAwMDAwMTAxNjA2MDAwMDAwMDAwMDAwMDAwMDAwMDlkMGJiODlkMGZhMDAwMDAw
MDAwDQorMDAwMDAxMDgwMzAzMDFmZmZkMDAwMDAwMDAwMDAwMDAwMDAyMDEwMDAwMDAwMDBm
MDQwNTAwMDYwMDAwMDIwMQ0KKzAwMDEwMDAwMGMwMDAwMDEwMDBiMDAwMTAwMDAwMDAwMDAw
MzAwMDAyMTAxMDIwMDAwMDAwMDA1MDQwMDAwMWMNCiswMjAwMTAwNTA2MDA3YTA4MDA0ZDAw
OWZmZjAxMDEwMTAxMGYxMDExMTIwMTAxMDExNzAwMDA5ZmZmMDEwMDAwDQorMDAwZDAwMDA1
ZGMwNWRiZjAwMDAwMDAwMDMwMzAzMDMwMDAyMDQwNGEwYTAwMDAwMDAwMDAwMDAwMDAwMDA5
ZA0KKzVkYzA5ZDVkYmYwMDAwMDAwMDAwMDAwMTA4MDY2ODAxMDAwMDAwNWRjMDVkYmYwMDAw
MDAwMjAxMDAwMDAwMDANCiswOTAwMDAwNjAwMDAyMTAxMDIwMDAwMDAwMDA3MDcwNjAwNzgw
ODAyMDEwMjBhMGE0NjYxNjk2YzQyNzU3NDc0DQorNmY2ZTAxMDIwNDIxMjEyMTIxMjEyMTIx
MjExNzAwMDE5ZmZmMGMwMDAwMDAwZDlkMDEyZTlkMDEyNDAwZTUwMQ0KKzQzMDAwMDAwMDAw
MzAzMDMwMzAwMDUwMTAxYTBhMDAwMDAwMDAwMDAwMDAwMDAwMDljZTU5ZDAxNDMwMDAwMDAN
CiswMDAwMDAwMTBiMDQwNDQ2NjE2OTZjMDAwMjAxMDAwMDAwMDAwNzFhOTE5YzljOWNhMzlk
MDEwMzlkMDEwZTlkDQorMDE3MjE2MTkxYTM4NjI2Mzc3OTE5YjljOWM5Y2EwOWNhMzljYzE5
Y2ViOWNlYzlkMDEwMDlkMDEwMzlkMDEwZA0KKzlkMDEwZTlkMDEzNjlkMDE2MzlkMDE2NDlk
MDE3MjAzMDENCi0wMDQ2ODRhMA0KDQoNCmVuZCBjbGFzczsNCg0KY2xhc3MgV2luIGlzIG1h
cHBlZCBpbmhlcml0cyBmcm9tIERpc3BsYXlQcm9qZWN0LlVzZXJXaW5kb3cNCg0KDQpoYXMg
cHVibGljICBtZXRob2QgRGlzcGxheTsNCmhhcyBwdWJsaWMgIG1ldGhvZCBJbml0Ow0KDQpo
YXMgcHVibGljICBldmVudCBoYW5kbGVyIFdpbkNsb3NlSGFuZGxlcihpbnB1dCBwV2luOiBU
b3NzTWUuTmV3V2luKTsNCg0KaGFzIHByb3BlcnR5DQoJc2hhcmVkPShhbGxvdz1vbiwgb3Zl
cnJpZGU9b24sIGRlZmF1bHQ9b2ZmKTsNCgl0cmFuc2FjdGlvbmFsPShhbGxvdz1vbiwgb3Zl
cnJpZGU9b24sIGRlZmF1bHQ9b2ZmKTsNCgltb25pdG9yZWQ9KGFsbG93PW9uLCBvdmVycmlk
ZT1vbiwgZGVmYXVsdD1vZmYpOw0KCWRpc3RyaWJ1dGVkPShhbGxvdz1vZmYsIG92ZXJyaWRl
PW9mZik7DQoNCmhhcw0KKzUxNTE0NjMxMDAwMDAyM2QwMDAwMDFlOTlmZTMwMTAxMDAwMDIx
MDEwMjAwMDAwMDAwMDIwMjA2MDA5NDA4MDANCisxZDAwOWZmZjAxMDEwNDIxMGYxMDExMTIw
MTAxMDExNzAwMDA5ZmZmMDAwMDAwMDAwZDAwMDAwYmI4MGZhMDAwDQorMDAwMDAwMDAwMDAw
MDAwMDAwMDEwMTYwNjAwMDAwMDAwMDAwMDAwMDAwMDA5ZDBiYjg5ZDBmYTAwMDAwMDAwMA0K
KzAwMDAwMTA4MDMwMzAxZmZmZDAwMDAwMDAwMDAwMDAwMDAwMjAxMDAwMDAwMDAwZjA0MDUw
MDA2MDAwMDAyMDENCiswMDAxMDAwMDBkMDAwMDAxMDAwYjAwMDEwMDAwMDAwMDAwMDMwMDAw
MjEwMTAyMDAwMDAwMDAwNTA0MDAwMDFjDQorMDIwMDEwMDUwNjAwN2EwODAwNGQwMDlmZmYw
MTAxMDEwMTBmMTAxMTEyMDEwMTAxMTcwMDAwOWZmZjAxMDAwMA0KKzAwMGQwMDAwNWRjMDVk
YmYwMDAwMDAwMDAzMDMwMzAzMDAwMjA0MDRhMGEwMDAwMDAwMDAwMDAwMDAwMDAwOWQNCis1
ZGMwOWQ1ZGJmMDAwMDAwMDAwMDAwMDEwODA2NjgwMTAwMDAwMDVkYzA1ZGJmMDAwMDAwMDIw
MTAwMDAwMDAwDQorMDkwMDAwMDYwMDAwMjEwMjAyMDAwMDAwMDAwNzA4MDcwNjAwZjYwODIw
ODkwMjA3MDc2NDYxNzQ2MTRmNmU2NQ0KKzAxMDIwYjIxMjEyMTIxMjEwMTAxMDExNzAwMDEw
ODA4NTQ2NTc4NzQ0NDYxNzQ2MTBjMDAwMDAwMGQ5ZDA2MWENCis5ZDA2MjUwMGM2MDUzNTAw
MDAwMDAwMDMwMzAzMDMwMDA1MDEwMjgwYTAwMDAwMDAwMDAwMDAwMDAwMDA5Y2M2DQorOWQw
NTM1MDAwMDAwMDAwMDAwMDEwMzAyMDEwNzAwMTMwMDAwMDlmZjgxMDAwMDllMDA0MDAwMTQw
MzAxMDAwOA0KKzA2MDA3ODA4MDIwMTAyMDcwNzYyNzQ2ZTRmNzA2NTZlMDEwMjA0MjEyMTIx
MjEyMTIxMjEyMTE3MDAwMjlmZmYNCiswZDAwMDAwMDBkOWQwOTEzOWQwOWVlMDBlNTAzOTUw
MDAwMDAwMDAzMDMwMzAzMDAwNTAxMDFhMGEwMDAwMDAwDQorMDAwMDAwMDAwMDAwOWNlNTlk
MDM5NTAwMDAwMDAwMDAwMDAxMGIwZDBkNGY3MDY1NmUyYzIwNTM2NTczNjE2ZA0KKzY1MjEw
MDAyMDEwMDAwMDAwMDA4MWE5MTljOWM5Y2EzOWQwMTAzOWQwMTBmOWQwMTdmOWQwMWU5MWMx
OTFhMzgNCis2MjYzNzc5MTliOWM5YzljYTA5Y2EzOWNjMTljZWI5Y2VjOWQwMTAwOWQwMTAz
OWQwMTBkOWQwMTBmOWQwMTNjDQorOWQwMTY5OWQwMTZhOWQwMTZkOWQwMTcyOWQwMTdmOWQw
MWE0OWQwMWQxOWQwMWQyOWQwMWU5MDMwMQ0KLTAwODg1MDI2DQoNCg0KZW5kIGNsYXNzOw0K
LS0gRU5EIENMQVNTIERFRklOSVRJT05TDQoNCi0tIFNUQVJUIFNFUlZJQ0UgT0JKRUNUIERF
RklOSVRJT05TDQotLSBFTkQgU0VSVklDRSBPQkpFQ1QgREVGSU5JVElPTlMNCg0KLS0gU1RB
UlQgQ1VSU09SIERFRklOSVRJT05TDQotLSBFTkQgQ1VSU09SIERFRklOSVRJT05TDQoNCi0t
IFNUQVJUIFRZUEVERUYgREVGSU5JVElPTlMNCi0tIEVORCBUWVBFREVGIERFRklOSVRJT05T
DQoNCi0tIFNUQVJUIE1FVEhPRCBERUZJTklUSU9OUw0KDQotLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCm1ldGhvZCBOZXdX
aW4uRGlzcGxheQ0KYmVnaW4NCnNlbGYuT3BlbigpOw0KZXZlbnQgbG9vcA0KICAgICAgICB3
aGVuIHRhc2suU2h1dGRvd24gZG8NCiAgICAgICAgICAgICAgICB0YXNrLmxnci5wdXRsaW5l
KCdzaHV0ZG93bicpOw0KICAgICAgICAgICAgICAgIGV4aXQ7DQogICAgICAgIHdoZW4gV2lu
ZG93LkFmdGVyRGVhY3RpdmF0ZSBkbw0KICAgICAgICAgICAgICAgIHRhc2subGdyLnB1dGxp
bmUoJ2RlYWN0Jyk7DQogICAgICAgICAgICAgICAgDQogICAgICAgIHdoZW4gPEZhaWxCdXR0
b24+LkNsaWNrIGRvDQovLwkJCWRvIGFuIGludmFsaWQgb3BlcmF0aW9uLiBsZXRgc2VlIHdo
YXQgaGFwcGVucw0KCQkJdCA6IFRleHREYXRhOw0KCQkJdC5TZXRWYWx1ZSgnTklMIGV4Y2Vw
dGlvbiBzaG91bGQgcmFpc2UgaGVyZScpOw0KCQkJICAgICAgICANCmVuZCBldmVudDsNCnNl
bGYuQ2xvc2UoKTsNCmVuZCBtZXRob2Q7DQoNCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KbWV0aG9kIE5ld1dpbi5Jbml0
DQpiZWdpbg0Kc3VwZXIuSW5pdCgpOw0KZW5kIG1ldGhvZDsNCg0KLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQptZXRob2Qg
V2luLkRpc3BsYXkNCmJlZ2luDQpkYXRhT25lLnNldFZhbHVlKCdTdHVmZicpOw0Kc2VsZi5P
cGVuKCk7DQpldmVudCBsb29wDQogICAgICAgIHdoZW4gdGFzay5TaHV0ZG93biBkbw0KICAg
ICAgICAgICAgICAgIGV4aXQ7DQogICAgICAgIHdoZW4gPGJ0bk9wZW4+LkNsaWNrIGRvDQog
ICAgICAgICAgICAgICAgdyA6IE5ld1dpbiA9IG5ldzsNCiAgICAgICAgICAgICAgICBzdGFy
dCB0YXNrIHcuRGlzcGxheSgpIHdoZXJlIGNvbXBsZXRpb249ZXZlbnQ7DQogICAgICAgICAg
ICAgICAgcmVnaXN0ZXIgV2luQ2xvc2VIYW5kbGVyKHcpOw0KZW5kIGV2ZW50Ow0Kc2VsZi5D
bG9zZSgpOw0KZW5kIG1ldGhvZDsNCg0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQptZXRob2QgV2luLkluaXQNCmJlZ2lu
DQpzdXBlci5Jbml0KCk7DQpkYXRhT25lID0gbmV3Ow0KZW5kIG1ldGhvZDsNCg0KLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
DQpldmVudCBoYW5kbGVyIFdpbi5XaW5DbG9zZUhhbmRsZXIoaW5wdXQgcFdpbjogVG9zc01l
Lk5ld1dpbikNCmJlZ2luDQp3aGVuIHBXaW4uTmV3V2luZG93RmluaXNoZWQgZG8NCglkYXRh
T25lID0gbmV3Ow0KCXRhc2sucGFydC5sb2dtZ3IucHV0bGluZSgnTmV3V2luZG93RmluaXNl
ZCcpOw0KCQ0Kd2hlbiBwV2luLk5ld1dpbmRvd0ZhaWxlZCBkbw0KCWRhdGFPbmUgPSBuZXc7
CQ0KZW5kIGV2ZW50Ow0KLS0gRU5EIE1FVEhPRCBERUZJTklUSU9OUw0KSEFTIFBST1BFUlRZ
DQoJQ29tcGF0aWJpbGl0eUxldmVsID0gMDsNCglQcm9qZWN0VHlwZSA9IEFQUExJQ0FUSU9O
Ow0KCVJlc3RyaWN0ZWQgPSBGQUxTRTsNCglNdWx0aVRocmVhZGVkID0gVFJVRTsNCglJbnRl
cm5hbCA9IEZBTFNFOw0KCUxpYnJhcnlOYW1lID0gJ3Rvc3NtZSc7DQoJU3RhcnRpbmdNZXRo
b2QgPSAoY2xhc3MgPSBXaW4sIG1ldGhvZCA9IERpc3BsYXkpOw0KDQoNCmVuZCBUb3NzTWU7
DQo=
--------------4E6A4194374DC1BDF50CB1A1--Bobby,
The simplest solution I think would be to use grids and map them to some business class - which I suppose you must be already using. In the event handler of the first window (button.click event) after you call the display method of the second window you can new the business class.
Kapil
From: Zirney, Bobby[SMTP:[email protected]]
Sent: Donnerstag, 2. September 1999 02:33
To: '[email protected]'
Subject: (forte-users) Question
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_01BEF4BD.83F24DA6
Content-Type: text/plain;
charset="iso-8859-1"
I have a frame with a button on it that will open up another frame. When I
close the second frame by pressing the X in the top right hand corner, I
want to clear all the data on the first screen. I have been trying all
sorts of things without success. Does anyone have any suggestions as to how
to do this?
------_=_NextPart_001_01BEF4BD.83F24DA6
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>Question</TITLE>
</HEAD>
<BODY>
<P><FONT SIZE=3D2 FACE=3D"Arial">I have a frame with a button on it =
that will open up another frame. When I close the second frame by =
pressing the X in the top right hand corner, I want to clear all the =
data on the first screen. I have been trying all sorts of things =
without success. Does anyone have any suggestions as to how to do =
this?</FONT></P>
</BODY>
</HTML>
------_=_NextPart_001_01BEF4BD.83F24DA6--
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] -
Question-Minimizing Windows on startup
How do you minimize the ftexec window when starting the client on a
Windows 95 platform?
The application starts but leaves the forte ftexec window open in the
background. Is there a way to hide this window or minimize it on
startup?
Thank you,
Will PerkinsonYou have to first use Disk Utility to partition and format your new drive. Partition it as one partition, set the format to Mac OS Extended (Journaled) and then click the Options button and select GUID as the Partition Table.
Once that is done try continueing with the install. If you either can't do the partitioninig and formatting or the new drive still doesn't show up as a place to install to then it is more than likely the cable that has failed. -
RE: (forte-users) Minimizing a Window when it lossesfocus...
This is an easy way of achieving what you want
self.window.displaystate=DS_ICONIZED; -- minimise calling window
ETUMainWin().display(); -- instanciate and pass modal
control to new widow
self.window.displaystate=DS_NORMAL; -- un-minimise calling window when
sub-window closed
Chris Will, DET, Sydney, AustraliaHi Sylvain
Try using window.smallIconImage =
ImageData(<TitleBarIcon>.ImageValue) ;
This should work.
Jairaj Rampershad
System Concultant
--- Sylvain_Porée <Sylvain.Poreesophia.sema.fr>
wrote:
Hi Forte Gurus,
I have tried to set an icon using this statement :
window.SmallIconImage =
aIconFile.<TitleBarIcon>.imagevalue;
where <TitleBarIcon> is a PictureGraphic in my
window workshop.
I have tried 16*16 16 colours as well as many other
arrangements. It does
not work. I use windows NT.
Any ideas ?
Thanks
Sylvain
PS : For info (forte help):
SmallIconImage
Data Type ImageData
Source Class Window
Settable? Yes
The SmallIconImage attribute (ImageData) provides
the small icon to be used
when the window is iconized, for example, in the
task bar. The image size
for a small icon should be 16 by 16 pixels. Although
the image will be
scaled if you provide one of a different size, for
best results, we
recommend that you create your icons in the same
size in which they will be
displayed.
Windows 95/NT only
This feature is available on Windows 95/NT only. On
other platforms, the
attribute is ignored.
For the archives, go to:
http://lists.xpedior.com/forte-users and use
the login: forte and the password: archive. To
unsubscribe, send in a new
email the word: 'Unsubscribe' to:
forte-users-requestlists.xpedior.com -
Re: (forte-users) Minimal Fusion
Thomas,
A response which may contain no answers...and may lead to more questions...
As a novice fusion user, one of the largest obstacles to using Fusion is the lack of XML API's in an application, be it a customer's in-house or vendor's software product. Corresponding to this is simply the lack of any API's in the application. As Forte (abet Sun, now iPlanet) says in their training manual 'A nontrivial task is to build new adapters for your programs if you wish to enable them to interact using XML documents over HTTP'. This is probably an understatement.
The question that come to mind is:
Does the warehouse have published API's their product?
If not, then, IMHO, you have steep hill to climb, not the least being communication, cooperation, and coordination from the warehouse vendor (another one of those 'nontrivial tasks') in trying to create the required API's
if so, then it is a matter of building an adapter, in a language that is compatible with the warehouse's API (hopefully C or some derivation of) , that contains (1) a DOM (Document Object Module) to API Translator, (2) an XML Parser (converts XML to DOM and visa-versa) , and (3) a HTTP server (again, another one of those 'nontrivial tasks').
Forte (abet Sun, now iPlanet) suggests, and I would concur (with reservations), that if you haven't done this before you should probably hire their services from the Forte Integration Services group. Their costs (admittible high) should be offset be the time it would take to develop one on your own. A side benefit is working with them, you learn the process for making other adapters in the future. If Fusion is a marketing success, then the benefits should out weigh the costs.
The Forte Integration Services group markets, or will market, a Fusion Adapter Designer, some sort of a SDK, which assists in the creation of Adapters. I do not know the availability of that product at this time.
As to your question "Is it reasonable to consider doing this project under Fusion as a
getting-feet-wet experience?" If you (or your customer) can afford the costs, and the warehouse has published API's, I would say that you gotta get-your-feet-wet somehow. If the warehouse doesn't have published API's and are not willing to put forth the effort and resources to do so, I would say your chances of success are considerably less.
In any case, IMHO, it will be a 'non trivial' undertaking.
-later
-labeaux
"Thomas Mercer-Hursh, Ph.D." <thomascintegrity.com> 10/31/00 04:49PM >>>This may be one of those questions which has no answer, but ...
Our long term plan is to develop XML APIs to each of the modules in our
suite of non-Forte applications and to integrate these under Fusion, thus
gaining Conductor management of the inter-module work flows and a cleaner
loose coupling of the applications along with other benefits such as the
ease of integration with other packages, a clean way to migrate to Forte
modules, and an ease of interconnecting "mini-applications" to address
specific customer needs.
I have an existing customer who has made a decision to migrate to a third
party warehouse from an in-house warehouse. I.e., were this transition to
the new structure complete, this would correspond to unhooking some of our
modules and replacing these with an adapter to the corresponding modules in
the third party warehouse.
In fact, as it looks now, I will need to build the logical equivalent of
these APIs anyway -- might as well do it in XML, right? And these APIs
will communicate with a daemon responsible for the message traffic to and
from. I tried to get this traffic to be XML and to use MQSeries or JMS as
the transport, but the folks at the warehouse end don't seem to be able to
handle such things, so I am stuck doing something fairly stupid for the
actual communication.
So, the question for those out there who have already paid their Fusion
dues, is it reasonable to consider doing this project under Fusion as a
getting-feet-wet experience. There are only half a dozen APIs to do and I
have to do those anyway and am inclined to make them XML regardless. There
will be one communication daemon to which all these connect and the
business processes originally implemented in Conductor will basically be
just point to point connects, except for routing traffic from the daemon to
the right API based on message type. That's really all I need it to do,
i.e., far too simple to actually need Fusion, but a possible opportunity
to get started and then to expand to other uses.
Crazy?
=========================================================================
Thomas Mercer-Hursh, Ph.D email: thomascintegrity.com
Computing Integrity, Inc. sales: 510-233-9329
550 Casey Drive - Cypress Point support: 510-233-9327
Point Richmond, CA 94801-3751 fax: 510-233-6950
For the archives, go to: http://lists.xpedior.com/forte-users and use
the login: forte and the password: archive. To unsubscribe, send in a new
email the word: 'Unsubscribe' to: forte-users-requestlists.xpedior.comAt 07:55 AM 11/1/00, Labeaux Schiek wrote:
As a novice fusion user, one of the largest obstacles to using Fusion is
the lack of XML API's in an application, be it a customer's in-house or
vendor's software product.In this case, the good news is that one of the applications in question is
our own, so whipping up an XML API to suit each required transaction on
that side is no more, probably less, work than importing or exporting a
flat file or whatever. Moreover, my current expectation of how this
interaction will work is something like this:
</pre>
---Fusion------
| |
WACS<-->WACS_Daemon<----VPN socket
connection---->IS_Daemon I/S
</pre>
I.e., I/S, our application, and the IS_Daemon which handles the connection
traffic across the internet link are both mine. For I/S, I will create XML
APIs to suit. For the IS_daemon, I might use the transform facilities to
convert this XML to the pipe-delimited format they are expected at the
other end and make the daemon a simple manager of the connection or, the
daemon could do the conversion, but the former seems like the more
appropriate approach. The API between the two daemons is something we are
defining now (unfortunately I lost the argument to make that XML).
Corresponding to this is simply the lack of any API's in the
application. As Forte (abet Sun, now iPlanet) says in their training
manual 'A nontrivial task is to build new adapters for your programs if
you wish to enable them to interact using XML documents over HTTP'.My neophyte understanding is that, since I am defining the API to I/S in
the diagram above and I can make this XML, then the adapter issue
disappears there. I might have to create an adapter for the daemon, but if
necessary, I could make that the same XML on a pass through and do the
translation in the daemon.
If not, then, IMHO, you have steep hill to climb, not the least being
communication, cooperation, and coordination from the warehouse vendor
(another one of those 'nontrivial tasks') in trying to create the required
API'sWe are well through this process anyway. ... which is not to say that it
has been or will be easy, but it must be done whether I use Fusion or
not. Given that the vote has gone in favor of simple messages of
pipe-delimited records, i.e., basically flat file, the technical issues
there are minimal.
if so, then it is a matter of building an adapter, in a language that is
compatible with the warehouse's API (hopefully C or some derivation of) ,
that contains (1) a DOM (Document Object Module) to API Translator, (2)
an XML Parser (converts XML to DOM and visa-versa) , and (3) a HTTP server
(again, another one of those 'nontrivial tasks').I'm not sure I quite understand what you are saying here. The HTTP part
won't be there since we will apparently be connecting via a VPN sockets
connection. But, how are you distinguishing DOM and XML since DOM is a
particular form of XML? The XML API I build for I/S will be DOM compliant.
Forte (abet Sun, now iPlanet) suggests, and I would concur (with
reservations), that if you haven't done this before you should probably
hire their services from the Forte Integration Services group. Their
costs (admittible high) should be offset be the time it would take to
develop one on your own. A side benefit is working with them, you learn
the process for making other adapters in the future. If Fusion is a
marketing success, then the benefits should out weigh the costs.I am familiar with the "party" line. If I were building a complete
interface to another major product (I/S is roughly equivalent to JDEC in
coverage) in the context of an EAI project, I would happily invite them in
and hope to pick up pointers. Here, though, there are only 8 or 9 total
transaction types and either all of the interfaces are XML, i.e., no
adapter required as I understand it, or only the daemon will need an
adapter and that will be a choice I can make depending on how things
go. One does wish it were possible to sample a small piece of that
knowledge store without having to buy the whole thing, though.
The Forte Integration Services group markets, or will market, a Fusion
Adapter Designer, some sort of a SDK, which assists in the creation of
Adapters. I do not know the availability of that product at this time.Last I checked, one couldn't get this without the consulting ... hence the
last sentence above.
Thanks for your input.
=========================================================================
Thomas Mercer-Hursh, Ph.D email: thomascintegrity.com
Computing Integrity, Inc. sales: 510-233-9329
550 Casey Drive - Cypress Point support: 510-233-9327
Point Richmond, CA 94801-3751 fax: 510-233-6950 -
RE: (forte-users) appdist copy from VMS to NT question...
Well, there are some graphic FTP clients for windows that allow
you to get files from FTP-servers using simple drag and drop.
Most of them even support the option of selecting a directory
and dragging it, with all its subdirectories, to your local drive
with a single mouse action.
The only problem might be with binary vs. text files. The appdist
directory has both filetypes. Getting text files as if they were
binary files may cause problems. Getting binary files as if they
were text certainly will cause problems. So, either get the
whole tree binary and hope for the best. Or get each file indi-
vidually and set the correct bin or asc setting. Or use a tool
that is smart enough to see if a file is binary or text and hope
it doesn't make any mistakes.
Pascal Rottier
STP - MSS Support & Coordination Group
Philip Morris Europe
e-mail: [email protected]
Phone: +49 (0)89-72472530
+++++++++++++++++++++++++++++++++++
Origin IT-services
Desktop Business Solutions Rotterdam
e-mail: [email protected]
Phone: +31 (0)10-2428100
+++++++++++++++++++++++++++++++++++
Don't meddle in the affairs of dragons
'cause you're crunchy and taste good with ketchup
-----Original Message-----
From: Haben, Dirk [SMTP:[email protected]]
Sent: Wednesday, December 08, 1999 6:32 AM
To: 'Soapbox Forte Users'
Subject: (forte-users) appdist copy from VMS to NT question ...
G'day Folxs
Does anyone here have a simple way to copy a whole appdist tree for myapp1
say from VMS to NT? I have created a new environment on a NT box and want
to
copy down all our application distributions.
eg:
On OpenVMS machine vmsbox1 the directory tree and files
vmsbox1::forte_root:[appdist.aenv_myapp_cl3...]*.*;
should go to NT machine ntbox1
[ntbox1] d:\temp\myapp\cl3\...
Even just to d:\temp\aenv_myapp_cl3\... will do.
ftp doesn't seem to do the trick here. Of cause I could write some routine
to put/get file by file - but before I do all that I thought I ask around
if
it's already been done.
Thanks,
Dirk
PS: Needless to say we still develop and makedist on VMS - for now (see
Bulletin 388)!
PPS: No I haven't forgotten about [appdist.aenv.myapp1]*.ace
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]Well, there are some graphic FTP clients for windows that allow
you to get files from FTP-servers using simple drag and drop.
Most of them even support the option of selecting a directory
and dragging it, with all its subdirectories, to your local drive
with a single mouse action.
The only problem might be with binary vs. text files. The appdist
directory has both filetypes. Getting text files as if they were
binary files may cause problems. Getting binary files as if they
were text certainly will cause problems. So, either get the
whole tree binary and hope for the best. Or get each file indi-
vidually and set the correct bin or asc setting. Or use a tool
that is smart enough to see if a file is binary or text and hope
it doesn't make any mistakes.
Pascal Rottier
STP - MSS Support & Coordination Group
Philip Morris Europe
e-mail: [email protected]
Phone: +49 (0)89-72472530
+++++++++++++++++++++++++++++++++++
Origin IT-services
Desktop Business Solutions Rotterdam
e-mail: [email protected]
Phone: +31 (0)10-2428100
+++++++++++++++++++++++++++++++++++
Don't meddle in the affairs of dragons
'cause you're crunchy and taste good with ketchup
-----Original Message-----
From: Haben, Dirk [SMTP:[email protected]]
Sent: Wednesday, December 08, 1999 6:32 AM
To: 'Soapbox Forte Users'
Subject: (forte-users) appdist copy from VMS to NT question ...
G'day Folxs
Does anyone here have a simple way to copy a whole appdist tree for myapp1
say from VMS to NT? I have created a new environment on a NT box and want
to
copy down all our application distributions.
eg:
On OpenVMS machine vmsbox1 the directory tree and files
vmsbox1::forte_root:[appdist.aenv_myapp_cl3...]*.*;
should go to NT machine ntbox1
[ntbox1] d:\temp\myapp\cl3\...
Even just to d:\temp\aenv_myapp_cl3\... will do.
ftp doesn't seem to do the trick here. Of cause I could write some routine
to put/get file by file - but before I do all that I thought I ask around
if
it's already been done.
Thanks,
Dirk
PS: Needless to say we still develop and makedist on VMS - for now (see
Bulletin 388)!
PPS: No I haven't forgotten about [appdist.aenv.myapp1]*.ace
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] -
Re: (forte-users) Forte and CORBA question
Hi,
The discarding the Java variable that references a distributed Forte object
doesn't cause that the distributed object will be reclaimed. In Forte client
you can use ReleaseDistReference() of the current partition (task.part) to
free the remote object. For Java client, you can implement the following
solution:
- define a method ReleaseMyObject() in the SO you are using to get the proxy
to the dist. object. As parameter for it use something that can identify
your object (attribute).
- your SO has an array or hashtable with your distributed objects, every new
object is added to it.
- in the implementation of ReleaseMyObject() find the object to release in
the array and call ReleaseDistReference() for it,
- from the Java client, call the ReleaseMyObject() for the object that is
not more needed.
Regards,
Zenon Adamek
----- Original Message -----
From: Joseph Mirwald <jomirweb.de>
To: Dave Ortman <dortmanyahoo.com>; 'Forte User Forum'
<forte-userslists.xpedior.com>
Sent: Wednesday, March 07, 2001 3:58 PM
Subject: Re: (forte-users) Forte and CORBA question
Hello Dave,
do you use a copy return or copy parameters in this method ?
If not, then maybe Forte is unable to garbage-collect this object because
it is forever
a proxy which only the server-partition may be able to drop it from memory
(object=NIL).
Try this and let us know what happens.
Hope this helps
Joseph Mirwald
At 11:49 07.03.01 -0800, Dave Ortman wrote:
We're attempting to use a Java client to access a
Forte server. In doing such, we've experienced a
problem which I hoped somebody could shed some light
on.
We've had a Java client calling Forte service objects
and passing Forte objects back and forth as CORBA
structs with no problem. However, we have experienced
some problem obtaining and using remote references to
distributed objects from the Java client.
The problem is memory utilization. Each time I obtain
a reference to a new object, the memory utilization on
the Forte server jumps up quite a bit (around 100k per
object on an NT box). Eventually, if I fetch enough
objects, the server will crash due to lack of memory.
It seems that Forte never reclaims the memory, even
though I'm not using (and don't have a handle to) this
remote objects.
The objects are very small. In fact, I created a test
Forte SO with one method, getObject(); which returns a
distributed object with a single attribute. I then
have a Java client access the getObject() method
repeatedly - discarding the reference to the object
after each iteration. After a short while, the box
will come down.
Any thoughts?
Thanks in advance,
-Dave Ortman
--- "Epari, Madhusudhan" <meparioxhp.com> wrote:
Hi All,
Following error occurs consistently on a router
partition for every call to
the service object but the partition doesn't die or
crash. I tried bumping
up the partition memory too. Any thoughts on why
it's happening?
Thanks in advance,
Madhu
SYSTEM ERROR: Failed to connect or lost connection
to the
environment manager
at FORTE_NS_ADDRESS = <Unknown>. Check that the
environment
manager is
installed at that location. If it is, then check
to be sure that
there are
enough system resources available to support this
partition.
Class: qqsp_SystemResourceException
Error #: [601, 201]
Detected at: qqdo_NsClient::FindObject at 1
Error Time: Wed Feb 21 09:30:56
Exception occurred (locally) on partition
"CSA_cl0_Part2-router",
(partitionId =
C61609A0-8270-11D3-88A9-F4D005D0AA77:0x10c5c:0x1,
taskId =
[C61609A0-8270-11D3-88A9-F4D005D0AA77:0x10c5c.8]) in
application
"MWRouting_cl1", pid 18937 on node forted1 in
environment
frtedev.
SYSTEM ERROR: Attempt to send from a partition
(C61609A0-8270-11D3-88A9-F4D005D0AA77:0x10c5c:0x1)
that no
longer exists.
Class: qqsp_DistAccessException
Error #: [601, 111]
Detected at: qqdo_PartitionMgr::SendMsg at
1
Error Time: Wed Feb 21 09:30:56
Distributed method called:
qqdo_NsServerProxy.FindObject
(object name
Unnamed) from partition
"CSA_cl0_Part2-router",
(partitionId =
C61609A0-8270-11D3-88A9-F4D005D0AA77:0x10c5c:0x1,
taskId =
[C61609A0-8270-11D3-88A9-F4D005D0AA77:0x10c5c.8]) in
application
"MWRouting_cl1", pid 18937 on node
forted1 in environment
frtedev
Exception occurred (locally) on partition
"CSA_cl0_Part2-router",
(partitionId =
C61609A0-8270-11D3-88A9-F4D005D0AA77:0x10c5c:0x1,
taskId =
[C61609A0-8270-11D3-88A9-F4D005D0AA77:0x10c5c.8])
in
application "MWRouting_cl1", pid 18937 on
node forted1 in
environment
frtedev.
LbRouter::FindMembers - CAUGHT EXCEPTION attaching
members from
For the archives, go to:
http://lists.xpedior.com/forte-users and use
the login: forte and the password: archive. To
unsubscribe, send in a new
email the word: 'Unsubscribe' to:
forte-users-requestlists.xpedior.com
For the archives, go to: http://lists.xpedior.com/forte-users and use
the login: forte and the password: archive. To unsubscribe, send in a new
email the word: 'Unsubscribe' to: forte-users-requestlists.xpedior.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.comWhy not this:
while myText.moveToString(' ') do
myText.ReplaceRange('-', myText.Offset, myText.Offset+1);
end while;
or if you prefer verbosity:
while myText.moveToString(source=' ') do
myText.ReplaceRange(source='-', startOffset=myText.Offset,
endOffset=myText.Offset+1);
end while;
-----Original Message-----
From: FatchJeBAM.com [mailto:FatchJeBAM.com]
Sent: Wednesday, January 12, 2000 2:51 PM
To: Troy.Burnsvacationclub.com; kamranaminyahoo.com
Subject: RE: (forte-users) search and replace within a TextData
How about this?? May have to play with start/end on ReplaceRange as I
didn't really test this
Anybody got a better way??
-- replace space with underscore
For x in 1 to myTextdata.LengthToEnd() do
If myTextData.IsSpace() then
MyTextdata.ReplaceRange('_'. Startoffset=myTextdata.offset,
endoffset=myTextdata.offset+1);
End if;
MyTextdata.MoveNext;
End for;
Jerry Fatcheric
-----Original Message-----
From: Burns, Troy [mailto:Troy.Burnsvacationclub.com]
Sent: Wednesday, January 12, 2000 9:40 AM
To: kamranaminyahoo.com
Subject: (forte-users) search and replace within a
TextData
Hello all,
I need to search within a textdata object, replacing all
occurrances of a
space
with another character. Can you give a quick code example
of how I would do
this?
Thanks in advance,
Troy
Troy Burns
Marriott Vacation Club Intl.
E-mail: troy.burnsvacationclub.com
Phone: (941) 688-7700 ext. 4408
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:
forte-users-requestlists.sageit.com
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: forte-users-requestlists.sageit.com -
Dirk:
I ran into a similar problem. I added an other flag to my fcompile script and
it seems to be working fine, your mileage may vary. The flag was
-cflags "-oldcxx only"
Dwayne Kryger
"Haben, Dirk" <[email protected]> on 08/25/99 02:09:16 AM
To: "'Soapbox Forte Users'" <[email protected]>
cc: (bcc: Dwayne Kryger/SEH)
Subject: (forte-users) C++ version compatibility question. Forte v30L2 on
Digital Unix 4 d and C++ version ???
G'day Folxs
Just installed Forte as a Simple Server on a Digital UNIX (v4.0d) box (being
a VMSbot it was much easier than I thought). We want to use it to interface
with an existing web client. The Forte part is to provide us a scalable
access path to Oracle DBs on the VMS machine; already running Forte.
I'm having trouble finding media that contains C++ v5.4.-006 for the Unix
box. Does anyone know of/has used higher versions of C++ without too much
drama? How about v5.7 or even v6.1? We will be using extensive C++
interfacing to existing web pages!
NB: The current web system client is compiled using EGCS 2.91.66.
TIA,
/[:-)irK
Dirk Haben, Perth WA
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]Dirk:
I ran into a similar problem. I added an other flag to my fcompile script and
it seems to be working fine, your mileage may vary. The flag was
-cflags "-oldcxx only"
Dwayne Kryger
"Haben, Dirk" <[email protected]> on 08/25/99 02:09:16 AM
To: "'Soapbox Forte Users'" <[email protected]>
cc: (bcc: Dwayne Kryger/SEH)
Subject: (forte-users) C++ version compatibility question. Forte v30L2 on
Digital Unix 4 d and C++ version ???
G'day Folxs
Just installed Forte as a Simple Server on a Digital UNIX (v4.0d) box (being
a VMSbot it was much easier than I thought). We want to use it to interface
with an existing web client. The Forte part is to provide us a scalable
access path to Oracle DBs on the VMS machine; already running Forte.
I'm having trouble finding media that contains C++ v5.4.-006 for the Unix
box. Does anyone know of/has used higher versions of C++ without too much
drama? How about v5.7 or even v6.1? We will be using extensive C++
interfacing to existing web pages!
NB: The current web system client is compiled using EGCS 2.91.66.
TIA,
/[:-)irK
Dirk Haben, Perth WA
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] -
Re: (forte-users) Express Question
Hi,
I've done it using a dynamic DBSession manager (and dynamic dbsession
instanciation). But, you need to customize the Express Framework
(ExpressService.BusinessDBMgr) and modify the select, update, delete, execute
methods. You need also to maintain the statement cache linked to the DBsession
and manage the link between a DBsession and a task or use explicit mutex (the
aim is to have only one task assigned to a DBsession at a time : this should be
done in the DBSession Manager). If you use Dynamic DBSessions, you will also
need to add a synchronization to the DBsession Manager.
If you want to suppress the default DBSession service object, you will need to
customize the code generation. You should ask the Forte Consulting I think...
Hope this helps,
Daniel Nguyen
Freelance Forte Consultant
Url : http://perso.club-internet.fr/dnguyen/
[email protected] a écrit:
Has anyone tried replicating the partitions that contain the DBService SOs
from the Business Model (ie. DBSessions)? We are attempting to do this to
avoid single-threading access to our database and wondered if anyone had
done this successfully. Thanks for your help.
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]Hi,
I've done it using a dynamic DBSession manager (and dynamic dbsession
instanciation). But, you need to customize the Express Framework
(ExpressService.BusinessDBMgr) and modify the select, update, delete, execute
methods. You need also to maintain the statement cache linked to the DBsession
and manage the link between a DBsession and a task or use explicit mutex (the
aim is to have only one task assigned to a DBsession at a time : this should be
done in the DBSession Manager). If you use Dynamic DBSessions, you will also
need to add a synchronization to the DBsession Manager.
If you want to suppress the default DBSession service object, you will need to
customize the code generation. You should ask the Forte Consulting I think...
Hope this helps,
Daniel Nguyen
Freelance Forte Consultant
Url : http://perso.club-internet.fr/dnguyen/
[email protected] a écrit:
Has anyone tried replicating the partitions that contain the DBService SOs
from the Business Model (ie. DBSessions)? We are attempting to do this to
avoid single-threading access to our database and wondered if anyone had
done this successfully. Thanks for your help.
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] -
RE: (forte-users) user name
Troy Burns wrote:
It would definitely be of interest to me, since this is an item on my
"to-do" list. If you can release the code, let me know.Here 'tiz.
The files you're getting are:
SFVosC.pex - "C" wrapper.
Vos.C - The "C" callout.
Vos.H - A header file for Vos.C, used by ...
VosCLI.C - A command-line-driven mainline to test Vos.C
VosObj.CEX - An object that provides a "nice" interface to the "C" wrapper.
We use this in two ways: instantiated as a local object to get the username
under VMS or NT, or as a service object partitioned to an NT server to do
username/password authentication on behalf of clients on other operating
systems.
The following changes have been made throughout the files in an attempt to
keep various people in DuPont happy:
"our_application_root" replaces the actual name of the root directory of
the application.
"our_vms_server" replaces the actual name of the system in question.
"our_nt_server" replaces the actual name of the system in question.
"our_application_name" replaces the actual name of the application.
A copyright notice, the usual disclaimer, and a "fair use" statement (which
is just a reference to the Perl Artistic License) have been inserted.
Except for the "ExternalObjectFiles" declaration in SFVosC.pex, all the
changes appear to have been in comments. But the files come with the usual
freeware warranty (i.e. "use at your own risk".)
Have fun with these!
Tom Wyant
(See attached file: SFvosC.pex)(See attached file: Vos.c)(See attached
file: Vos.h)(See attached file: Voscli.c)(See attached file: VosObj.cex)I would try going to the "lowest common denominator" between WindowsNT and
Windows95 - DOS. Both windowing OS's sort of have their roots in DOS, or at
least both are capable of opening a DOS session.
Therefore, from a DOS prompt type "set" to view the environment variables for
both OS types. Look for a common variable between the two that stores the
userID. If you can find one of these your application will be that much more
portable between these two Windows mutations.
I used "set" on my NT and found my userID assigned to a few variables. I haven't
done this on a Windows95 machine in quite some time, but if the machine is on
the network it should have at least one environment variable with the userID.
I'm just guessing that DOS has a variable to store the userID that will be
common to both machines.
Good luck....
Kelsey PetrychynSaskTel Technical Analyst
ITM - Technology Solutions - Distributed Computing
Tel (306) 777 - 4906, Fax (306) 359 - 0857
Internet:kelsey.petrychynSasktel.sk.ca
Quality is not job 1. It is the only job!
"Olivier Andrieux" <oandrieuxaxialog.fr> on 07/19/2000 09:12:41 AM
To: forte-userslists.xpedior.com
cc: (bcc: Kelsey Petrychyn/SaskTel/CA)
Subject: (forte-users) user name
Hi
I use this command to catch the username:
task.part.operatingsystem.getenv('username')
with NT, there is no problem
but with windows95 or 98 the command doesn't find the username.
Thanks in advance.
Olivier Andrieux
Axialog
Lille
For the archives, go to: http://lists.xpedior.com/forte-users and use
the login: forte and the password: archive. To unsubscribe, send in a new
email the word: 'Unsubscribe' to: forte-users-requestlists.xpedior.com -
Re: (forte-users) Oggetto: Re: (forte-users) mouseCursors
Luca,
Forte makes use of mouse settings on the machine on which
the app is being run.
You can ad custom cursors by making the default
cursor schemes use your bitmaps( Windows/Control Panel/ Mouse ).
But when you deploy your app, if the client machine(s)
has a different setting, you will not see your
custom cursors.
I don't know if there is a way in Forte to tweak
Mouse settings on client machines. Even if there was a
way, how would you add the the custom cursor(s) to
app distribution??
Ajith Kallambella M.
Forte Consultant.
From: Luca Gioppo <[email protected]>
To: [email protected]
CC: [email protected]
Subject: (forte-users) Oggetto: Re: (forte-users) mouse Cursors
Date: Tue, 19 Oct 1999 17:20:00 +0200
Aready tryed, but with 'sad' result.
My application run under win '95 and cursors look really .. lets say
umpleasant.
I'd like to have a bitmap of mine or something like that.
Hoped that things like that were not so difficult, even with some
costraint.
Luca
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]I went through the same process some time back. I
submitted a call to Forte and was informed that there
are hooks but they were intentionally undocumented
because Forte had plans to provide a interface to
Source Control Managers in future releases. If you
submit a call, they will send you a ZIP file
containing instructions on how to use the hooks. The
hooks have proven very useful.
--- Luca Gioppo <Luca.Gioppocsi.it> wrote:
>
>
I think that the topic is still open and alive.
In my case I have the need to integrate with PVCS
dimension.
The problem for me is that we develop both with java
and tool, and is
frustrating seeing java people smiling as tha
various tools give the chance to
integrate to various extends with source control
products.
I'm interested too in the problem, looking for a
solution since a bit, but no
satifactory solutions.
So count 2 on the problem.
Luca
"David Potts" <david.pottss1.com> il 23/11/2000
17.12.47
Per: forte-userslists.xpedior.com
cc: (ccr: Luca Gioppo/CSI/IT)
Oggetto: (forte-users) Source Control
Hello,
I'm looking how to do version control for forte
development, and have
done a search on the list archive. There are lots
of messages asking
how to do source control, but the answers all seem
to be "roll your
own". My questions are:
(1) Most of the postings seem to come from some
years ago. What is the
current state of play with source control for forte
4GL?
(2) There was some mention of "hooks". What are
these hooks?
(3) With Sun appearing on the scene, anyone got any
idea where source
control is going in future versions?
I'm very new to Forte, so sorry if this topic has
been closed.
Cheers,
Dave.
ATTACHMENT part 2 application/octet-streamname=david.potts.vcf
http://shopping.yahoo.com/ -
RE: forte-users-digest V1 #322
Re: "We wish to eliminate any object references to the service object's
partition. Any insight would be greatly appreciated." from Van Vuong
<[email protected]>
This was in regards to copying a set of object from a server to client.
An implicit clone is being done. This also copyies objects they want to
remain on the server.
I believe the normal method of doing this is to anchor the server side
objects. Then when the deep clone occurs, it stops at the anchored
objects generating a proxy. That can also have other affects you do not
want but will at least stop the copying.
From: owner-forte-users-digest
Sent: Tuesday, April 15, 1997 8:09 AM
To: forte-users-digest
Subject: forte-users-digest V1 #322
forte-users-digest Tuesday, 15 April 1997 Volume 01 :
Number 322
How does deep copy apply to arrays?
Re: Global Variables
Re: Global Variables
Using the Edit commands in a menu
Re: Global Variables
Re: How does deep copy apply to arrays?
From: Van Vuong <[email protected]>
Date: Mon, 14 Apr 1997 17:16:46 -0500
Subject: How does deep copy apply to arrays?
I have a service object that has a method that returns an array of
objects. The return type for the method is defined with the copy option.
I found documentation that states that the copy option creates a deep
copy of the return variable on the partition that called the method.
My question is: If the return type for the method is an array of
objects, will the copy option create copies of all objects/elements in
the array?
We wish to eliminate any object references to the service object's
partition. Any insight would be greatly appreciated.
Thanks in advance,
Van Vuong
Phone: 972.985.5289
Pager: 972.320.2232
VoiceNow Pager: 972.330.0822
E-mail: [email protected]
PAGE NET
From: David Bell <[email protected]>
Date: Mon, 14 Apr 1997 22:44:19 +0000
Subject: Re: Global Variables
I got so much mail about and the object location manager, so
I'll continue ...
To make the thing truly portable, regardless of partition,
you need to register the object with a name that is made
up on the fly.
The easisest way to do this is to make up a name composed of
nodename (hopefully unique) plus the process ID. This should
guarantee that you get to the correct object even if there are
several instances around.
Get the nodename from the operating system, then use the partition
agent to ask for the PID. Form a unique name by concatenating these
two piecies of information.
// set up this app's subdirectory namespace
ObjName : TextData = new(Value = '/MyApp/');
// add nodename
ObjName.Concat(task.part.operatingsystem.nodename);
// get PID
Partition : ActivePartitionAgent
= ActivePartitionAgent(task.part.ActPartAgent);
Instrument : ConfigValueInst
= ConfigValueInst(Partition.FindInstrument('ProcessID'));
// add PID to name
Objname.Concat(Instrument.GetData.TextValue);
Now register an anchored object with the object location
manager
// get the object location manager
olm : ObjectLocationMgr;
olm = task.Part.ObjectLocationMgr;
// register my object with the name
olm.RegisterObject(name = Objname, object = MyObj);
Once it's registered, ask the object location manager for a handle
so we can use it. Build the name, get hold of the object
location manager, as above, then invoke BindObject on it.
theObj =
(ClassOfMyObj)(olm.BindObject(name=Objname, classType=ClassOfMyObj));
If the names are formed in the same way, this call should return
a handle to the object of message duration - you can set up
session or transaction duration if required in the RegisterObject
call.
In some versions of Forte, before V.2.F.0, this call not work for
objects located in the same partition.
To get at the instruments, you will need to include the SystemMonitor
Library.
To come back to some other points, as Tom Wynant points out, you can
have a user visible service object in a server partition.
The problem comes when what you really want is the same user visible
service object in lots of different partitions so that you can offer
the same service - but locally.
Today there is no way to do this oustide of client partitions without
resorting to something similar to that presented above.
- David
David Bell Tel : +44 1344 482100
Voice mail : +44 1344 353716
Forte Software Limited Mobile : +44 378 300613
Apex House
London Road Email : mailto: [email protected]
Bracknell Web : http://www.forte.com
Berkshire
RG12 2XH
UK
From: Pierre Gelli <[email protected]>
Date: Tue, 15 Apr 1997 09:09:39 +0200
Subject: Re: Global Variables
Hello folks,
Here is my idea on the topic.
Although one normally doesn't need global variables in a OO system, there
are cases when it's useful : a read cache of data available in the local
active partition. This saves the overhead of accessing the data on a
remote=
SO.
I read the solutions described by David Bell (location manager) and David
Krieger (hack of the partition.appTitle).
There is another way I think is a bit cleaner.
It takes benefit of the fact that a custom system agent can be attached
an
object (in our case the local cache containing the global variables).
Any active partition of the application then contains one such custom
agent.
Any class needing a global variable instantiates a small object, which is
a
manager of the custom agent. Its purpose is to ask the active partition
for
the custom agent, and then for the cache. If the agent doesn't exist it
creates it as well has the local cache; if the agent exists, it returns
the
cache.
There is a cache class.
It is derived into one class to be the "cache server" broadcasting an
event
when some cache data changes. This class is used to create a cache
server=
SO.
The cache class is also derived into a "local cache" class. It knows how
to
initialize it from the cache server. It listens to the event for updating
its local data from the cache server SO when needed.
Enough for the machinery.
Then, for any instance of a class that needs a global variable,
only two lines of code are needed, at initialization time, to get a
reference to the local cache of the partition, then a global variable
isaccessed as if part of a local object. This is quite affordable.
This design guaranties that there is automatically one and only one
up-to-date cache object in any active partition (running on a client or
on a
server). The local cache is seen as a local object by all objects that
use
it (no SO there). This design makes no assumption on the partitioning
that
will take place later. Which is I think one key strength of Fort=E9.
If one is interested I can ship some code that illustrates these ideas.
Hope this helps.
Pierre Gelli
ADP GSI
Payroll and Human Resources Management
72-78, Grande Rue, F-92310 SEVRES
phone : +33 1 41 14 86 42 (direct) +33 1 41 14 85 00 (reception desk)
fax : +33 1 41 14 85 99
From: Bryan Gentile <[email protected]>
Date: Tue, 15 Apr 1997 09:01:35 -0400
Subject: Using the Edit commands in a menu
I was wondering if anyone knows how to code for the edit menu submenu
items
like cut, copy, and paste. I am trying to use these in my menu, but I
cannot find anything about how to code for them. Is there anything in
the
help or any examples to look at. I have been unsuccessful in finding
anything about this.
Thanks
From: [email protected]
Date: Tue, 15 Apr 1997 9:08:01 -0400 (EDT)
Subject: Re: Global Variables
[email protected] writes:
<Snip!>
Unfortunately all Forte Service Objects share a single name
space. I thought from the documentation that User Visible
Service Objects would work for me. However, when I tried User
Visible Service Objects, they didn't quite do the trick because
what I wanted was identically named service objects that resolve
to a different local instance for each partition.You're right. You can put the user-visible service object in any
partition you like, but it must go in one and only one
partition. Rats. I can see why it's this way (based on the
minimal implementation of the name server), but I can think of
some good reasons why it shouldn't be. In fact, I may need to
move some methods around based on this discussion. Again, rats!
Tom Wyant
"The greatest danger of communication is the illusion that it has
occurred." (wish I knew who said that!).
From: [email protected]
Date: Tue, 15 Apr 1997 09:54:10 -0500
Subject: Re: How does deep copy apply to arrays?
Copy option always copies deep. Remember, also if you pass the array
accross partitions, whether you specify copy or not, it is going to copy
and copy deep.
In an array, I am not sure if have the problem, because unless the array
in-turn holds a huge tree, the array object may be wide, but not deep.
Some thing to think about??
Venkat
End of forte-users-digest V1 #322
*********************************Re: "We wish to eliminate any object references to the service object's
partition. Any insight would be greatly appreciated." from Van Vuong
<[email protected]>
This was in regards to copying a set of object from a server to client.
An implicit clone is being done. This also copyies objects they want to
remain on the server.
I believe the normal method of doing this is to anchor the server side
objects. Then when the deep clone occurs, it stops at the anchored
objects generating a proxy. That can also have other affects you do not
want but will at least stop the copying.
From: owner-forte-users-digest
Sent: Tuesday, April 15, 1997 8:09 AM
To: forte-users-digest
Subject: forte-users-digest V1 #322
forte-users-digest Tuesday, 15 April 1997 Volume 01 :
Number 322
How does deep copy apply to arrays?
Re: Global Variables
Re: Global Variables
Using the Edit commands in a menu
Re: Global Variables
Re: How does deep copy apply to arrays?
From: Van Vuong <[email protected]>
Date: Mon, 14 Apr 1997 17:16:46 -0500
Subject: How does deep copy apply to arrays?
I have a service object that has a method that returns an array of
objects. The return type for the method is defined with the copy option.
I found documentation that states that the copy option creates a deep
copy of the return variable on the partition that called the method.
My question is: If the return type for the method is an array of
objects, will the copy option create copies of all objects/elements in
the array?
We wish to eliminate any object references to the service object's
partition. Any insight would be greatly appreciated.
Thanks in advance,
Van Vuong
Phone: 972.985.5289
Pager: 972.320.2232
VoiceNow Pager: 972.330.0822
E-mail: [email protected]
PAGE NET
From: David Bell <[email protected]>
Date: Mon, 14 Apr 1997 22:44:19 +0000
Subject: Re: Global Variables
I got so much mail about and the object location manager, so
I'll continue ...
To make the thing truly portable, regardless of partition,
you need to register the object with a name that is made
up on the fly.
The easisest way to do this is to make up a name composed of
nodename (hopefully unique) plus the process ID. This should
guarantee that you get to the correct object even if there are
several instances around.
Get the nodename from the operating system, then use the partition
agent to ask for the PID. Form a unique name by concatenating these
two piecies of information.
// set up this app's subdirectory namespace
ObjName : TextData = new(Value = '/MyApp/');
// add nodename
ObjName.Concat(task.part.operatingsystem.nodename);
// get PID
Partition : ActivePartitionAgent
= ActivePartitionAgent(task.part.ActPartAgent);
Instrument : ConfigValueInst
= ConfigValueInst(Partition.FindInstrument('ProcessID'));
// add PID to name
Objname.Concat(Instrument.GetData.TextValue);
Now register an anchored object with the object location
manager
// get the object location manager
olm : ObjectLocationMgr;
olm = task.Part.ObjectLocationMgr;
// register my object with the name
olm.RegisterObject(name = Objname, object = MyObj);
Once it's registered, ask the object location manager for a handle
so we can use it. Build the name, get hold of the object
location manager, as above, then invoke BindObject on it.
theObj =
(ClassOfMyObj)(olm.BindObject(name=Objname, classType=ClassOfMyObj));
If the names are formed in the same way, this call should return
a handle to the object of message duration - you can set up
session or transaction duration if required in the RegisterObject
call.
In some versions of Forte, before V.2.F.0, this call not work for
objects located in the same partition.
To get at the instruments, you will need to include the SystemMonitor
Library.
To come back to some other points, as Tom Wynant points out, you can
have a user visible service object in a server partition.
The problem comes when what you really want is the same user visible
service object in lots of different partitions so that you can offer
the same service - but locally.
Today there is no way to do this oustide of client partitions without
resorting to something similar to that presented above.
- David
David Bell Tel : +44 1344 482100
Voice mail : +44 1344 353716
Forte Software Limited Mobile : +44 378 300613
Apex House
London Road Email : mailto: [email protected]
Bracknell Web : http://www.forte.com
Berkshire
RG12 2XH
UK
From: Pierre Gelli <[email protected]>
Date: Tue, 15 Apr 1997 09:09:39 +0200
Subject: Re: Global Variables
Hello folks,
Here is my idea on the topic.
Although one normally doesn't need global variables in a OO system, there
are cases when it's useful : a read cache of data available in the local
active partition. This saves the overhead of accessing the data on a
remote=
SO.
I read the solutions described by David Bell (location manager) and David
Krieger (hack of the partition.appTitle).
There is another way I think is a bit cleaner.
It takes benefit of the fact that a custom system agent can be attached
an
object (in our case the local cache containing the global variables).
Any active partition of the application then contains one such custom
agent.
Any class needing a global variable instantiates a small object, which is
a
manager of the custom agent. Its purpose is to ask the active partition
for
the custom agent, and then for the cache. If the agent doesn't exist it
creates it as well has the local cache; if the agent exists, it returns
the
cache.
There is a cache class.
It is derived into one class to be the "cache server" broadcasting an
event
when some cache data changes. This class is used to create a cache
server=
SO.
The cache class is also derived into a "local cache" class. It knows how
to
initialize it from the cache server. It listens to the event for updating
its local data from the cache server SO when needed.
Enough for the machinery.
Then, for any instance of a class that needs a global variable,
only two lines of code are needed, at initialization time, to get a
reference to the local cache of the partition, then a global variable
isaccessed as if part of a local object. This is quite affordable.
This design guaranties that there is automatically one and only one
up-to-date cache object in any active partition (running on a client or
on a
server). The local cache is seen as a local object by all objects that
use
it (no SO there). This design makes no assumption on the partitioning
that
will take place later. Which is I think one key strength of Fort=E9.
If one is interested I can ship some code that illustrates these ideas.
Hope this helps.
Pierre Gelli
ADP GSI
Payroll and Human Resources Management
72-78, Grande Rue, F-92310 SEVRES
phone : +33 1 41 14 86 42 (direct) +33 1 41 14 85 00 (reception desk)
fax : +33 1 41 14 85 99
From: Bryan Gentile <[email protected]>
Date: Tue, 15 Apr 1997 09:01:35 -0400
Subject: Using the Edit commands in a menu
I was wondering if anyone knows how to code for the edit menu submenu
items
like cut, copy, and paste. I am trying to use these in my menu, but I
cannot find anything about how to code for them. Is there anything in
the
help or any examples to look at. I have been unsuccessful in finding
anything about this.
Thanks
From: [email protected]
Date: Tue, 15 Apr 1997 9:08:01 -0400 (EDT)
Subject: Re: Global Variables
[email protected] writes:
<Snip!>
Unfortunately all Forte Service Objects share a single name
space. I thought from the documentation that User Visible
Service Objects would work for me. However, when I tried User
Visible Service Objects, they didn't quite do the trick because
what I wanted was identically named service objects that resolve
to a different local instance for each partition.You're right. You can put the user-visible service object in any
partition you like, but it must go in one and only one
partition. Rats. I can see why it's this way (based on the
minimal implementation of the name server), but I can think of
some good reasons why it shouldn't be. In fact, I may need to
move some methods around based on this discussion. Again, rats!
Tom Wyant
"The greatest danger of communication is the illusion that it has
occurred." (wish I knew who said that!).
From: [email protected]
Date: Tue, 15 Apr 1997 09:54:10 -0500
Subject: Re: How does deep copy apply to arrays?
Copy option always copies deep. Remember, also if you pass the array
accross partitions, whether you specify copy or not, it is going to copy
and copy deep.
In an array, I am not sure if have the problem, because unless the array
in-turn holds a huge tree, the array object may be wide, but not deep.
Some thing to think about??
Venkat
End of forte-users-digest V1 #322
********************************* -
RE: (forte-users) RE: Forte' vs J2EE
Hi Alexandra,
1) Forte 4GL and FJEE (Forte for Jave Enterprise Edition) are tools.
2) TOOL and Java are languages.
3) TOOL is proprietary and Java is public.
4) J2EE is a proposed, Java-based achitecture. Not a tool, not a language,
not a standard.
5) J2EE looks a lot like the architecture already supported by Forte 4GL,
however J2EE is explicetaly based on Java, EJB, JSP, JDBC and Servlets.
There are 3 versions of Forte for Java. The "Consumer Edition (CE)", the
"Internet Edition (IE)" and the "Enterprise Edition (EE)". CE is really a
remake of "NetBeans" and can be downloaded for free. IE and EE do not exist
yet. However, EE should be a remake of SynerJ, Forte's first Java tool.
You quoted someone who was very negative about Forte. I don't think that's
deserved. He's probably someone who simply didn't manage to understand the
tool. However, he is right in complaining about the support of Forte 4GL.
And it's true that the version people are currently using is at least more
than 2 years old and outdated. Since this period, there have been some
bugfixes, but hardly any real improvements.
From the description of your application, I would really advise to use Forte4GL. However, the lack of improvements, new releases, press releases, etc.
has me worried about the future of that product.
One of the real disadvantages of Java is performance. Java is very slow and
requires very heavy hardware to perform acceptably. Swing is a GUI framework
based on Java, which is notoriously slow even by Java standards. FJCE
development GUI is based on Swing. Download this product, install it and run
it and you'll see what I mean.
Forte applications can run in 2 modes. Interpreted or compiled. If they're
compiled, they're turned into platform dependent executables, which perform
really well. If they're interpreted, they're running inside a Forte Virtual
Machine, which performs less well, but still very acceptable. Java
applications run only in Java Virtual Machines and perform far less.
I would use Forte server side and Forte client side. For the browsers, I
would simply use any available tool to build webpages and use CGI to
interface with Forte. I would not try to use a different client side tool
that should communicate to a Forte server side.
Express is a good tool for developing CRUD (Create Read Update Delete)
applications based on an existing, and relatively static, database model. I
don't know about Rapport. However, don't be fooled into believing that
Express makes it easier for unexperienced developers to build Forte
applications. If anything, it makes it harder. A common look and feel can
easily be achieved by agreeing on the look and feel of windows during the
design-phase, and have all developers conform to this standard. It really
isn't that hard. Just don't create very large window class trees. That
causes strange behaviour.
Pascal Rottier
Atos Origin Nederland (BAS/West End User Computing)
Tel. +31 (0)10-2661223
Fax. +31 (0)10-2661199
E-mail: Pascal.Rottiernl.origin-it.com
++++++++++++++++++++++++++++
Philip Morris (Afd. MIS)
Tel. +31 (0)164-295149
Fax. +31 (0)164-294444
E-mail: Rottier.Pascalpmintl.ch
-----Original Message-----
From: Alexandra Macedo [mailto:ammeasysoft.pt]
Sent: Tuesday, December 05, 2000 3:55 PM
To: forte-users
Subject: (forte-users) RE: Forte' vs J2EE
Alexandra I presume.
Excuse me for asking but isn't J2EE just a STANDARD? And Forte aprogramming
language that may or may not adhere to that standard?
Now to the question, if the C++ experience is good - what's wrong withusing
C++?
Do you need to build component based distributed systems? Then hire saytwo
experienced architects - to design a practical model (UML perhaps).
Are there already good systems around you could tailor for your needs?
Just a few questions that need to be addressed to make an informeddecision.
What business are you in (your team/company)? If it's not IT then ask
yourself why do it inhouse?
Regards,
Dirk
PS: What country and from where is the Forte support? You mean peoplecode
in a language other than English?----------------------------------------------------------------------
Well, Forté is certainly not a programming language, TOOL is the
language for the Forté 4GL environment.
J2EE is a standard, and there are already some Application servers
that
implement it (as I was told, webSphere, Iplanet and weblogic,
sorry if I am missing someone).
I really do not know the standard, and I am not sure it says it will
have to be implemented in Java, but all these 3 application servers
do it in Java...
The C++ experience is only from part of the team, and is not from
Database applications, the type of application we are doing is not
well suited to do in C++, we all agree, C++ is out of the question.
I have received many answers (not posted in this mailling list
unfortunatly) telling me that Java is best, others told me Forté is
good Java is just a promise, but they really did not know Java
very well, someone even said:
Forte 4GL sucks terribly. It is not supported well by what
is left of 'Forte the company'.
The tools for this proprietary environment suck.
No distributed debugging or profiling!
There is really no adequate profiling support at all
Avoid Forte like the plague that it is.
Any way, a Forté person told us that Forté is good, precisely, for
our kind of application, and as some people made more questions about
it, I am explaining better our application:
- We are doing this application because we are an IT company, our
job is to make and sell back-office applications for the finance
sector (accounting, third-party, bank management, credit
management), now we want to make one application with all of these.
In simple terms we can define it as an ERP for Credit Operations.
- The users will be in-house except for a small set of
functionalitty, which will be available through browsers.
The front-end should run in an ordinary PC running WINDOWS (we
were told that Java is too heavy and PC's should have at least 256Mb
RAM, which, I believe, is to much for all our clients)
If this is true, it puts Java clients (with Swing) or Java applets out,
HTML, we believe is not powerfull enough for all the interface.
The server, will have to work well with about 300 simultaneous
internal users, plus some Web ones (do not know how many)
The application must be multi-lingual, that is, it should be easy to
put it in any language.
The application is based on a big database, with more than 500
tables, some with about 100 columns, some with millions of records.
- We want to be sure that the application will have the same layout
(look and feel) in every screen, so it will be nice something to
generate code or to create similar functionality (table screens,
for instance) in an automatic way ( that is why we are considering
Express for it). Of course this will help also the maintenance of
the sources.
Our questions are:
FORTÉ or JAVA for the server-side.
Which tool for the client-side?
Which framework to use?
-Express or Rapport from albion if using Forté?
-Are there any good frameworks for Java ?
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.comGabriel,
I disagree with you on one very important point. You say it's nearly
impossible to predict anything about the future in ICT-world, so it's better
to not predict at all and only look at the here and now. Here and now, Forte
is better than Java. So, the best choice would be Forte.
But you also mention that Forte is best suited for big projects. Big
applications usually have a long lifetime. Many of the current Forte
applications are the legacy systems of tomorrow. While all the VB, Access,
ASP and Java crap that's being produced will be replaced within 6 to 18
months, Forte applications will live for years.
Migrating such large applications to a new environment, even if this
environment is using a similar technology, requires very high investments.
Companies will want to avoid this as much as possible. So, they'll want to
invest in technology that can evolve with the rest of the world. As
operatingsystems change, databases change, middleware architectures become
obsolete (DCE) and new ones are created (EJB), end user interfaces evolve
(from text to GUI to Web), requirements change (data-oriented,
process-oriented, eCommerce), etc.
Of course, flexibility is not only achieved through technology. A good
design is probably more important.
Managers, not developers, will have to make the strategic decisions about
where to spend their millions. So, they have to look at the future, no
matter how hard that is. At the moment, Forte is still superior, even though
it hasn't been truly improved for over 2 years and that's pretty impressive.
Java is still very "hyped" and no one knows what's going to happen to it.
But the future of Java looks much brighter than the future of Forte. If
Forte doesn't put some serious effort in product development and marketing,
like now, the future of this product suite looks very bleak indeed. And I
wouldn't want to spend my millions knowing I have to do it all over again 2
years from now.
Keeping an eye on the future, where the only certainty is change, I would
not focus on platform independance. I would focus on language independance.
CORBA seemed like a very good idea 2 years ago, but it turned out to be too
complex, technical and inflexible. I would definately go for a CBD
architecture, using XML as backbone. XML can be exchanged between components
using HTTP, CORBA, DCOM, FTP, file copy, DCE, C/C++ call in/out, RMI, IIOP,
E-mail, MQSeries, etc. etc. Or any mixture of these systems.
The role of the data architect will become much more important than the role
of the application architect. The choice for a language or tool is reduced
to "the best choice here and now" as long as you design your large
application as loosly coupled components. It's OK if all of these components
are Forte and they're all communicating using Forte native RMI's. As long as
the design is sound, it's not going to be very difficult to exchange
individual components by others, built in Java, VB, Perl, Cobol++, Fortran
for Windows, or what other monsters the future might bring. The only thing
that binds them, is the datamodel (NB: datamodel is not the same as
databasemodel)
I do worry about the trend to use very large, omni-present, closed,
non-component architectures, like the current ERP applications. This locks
organisations into a single, expensive and hard to maintain technology.
However, it is an opportunity for us, OO - C/S - CBD developers, to build
bridges, adapters, wrappers and gateways to hook these systems into the rest
of the organisation.
Pascal Rottier
Atos Origin Nederland (BAS/West End User Computing)
Tel. +31 (0)10-2661223
Fax. +31 (0)10-2661199
E-mail: Pascal.Rottiernl.origin-it.com
++++++++++++++++++++++++++++
Philip Morris (Afd. MIS)
Tel. +31 (0)164-295149
Fax. +31 (0)164-294444
E-mail: Rottier.Pascalpmintl.ch
-----Original Message-----
From: Gabriel, C200/Fa. GFT, DA [mailto:A.Gabriel3deutschepost.de]
Sent: Wednesday, December 06, 2000 5:44 PM
To: 'forte-userslists.xpedior.com'
Subject: Re: (forte-users) RE: Forte' vs J2EE
If I were you, I would also consider this very important issue ( I think
it's the same for all 4GL users ), WILL THERE BE FORTE 4GL 5.0?I wonder every time I see that... Why is this that important?
(my mail is long.. if you don't like long mails, delete it now :) )
Let's see from the business' point of view:
If you would like to have an application implemented now,
use now, then you choose an environment existing now.
Now Forte 4GL seems to be a better alternative than Java,
because of the issues mentioned by others already.
I seem to be short-sighted, but could anybody tell me
with 100% accuracy, what will happen to Java in two years?
I doubt...
Forte did not changed too much in the last two years, and
still rocks, at least compared to other existing enterprise
level alternatives. So, nothing has changed that dramatically.
If you look behind the marketing-hype, you will probably agree.
I think, for the next two years Forte will be good enough for us too.
And what then? We will find out then, not now. Anybody, who tries to
explain you what will be in two years in the IT, almost certainly lies :)
Of course, using a "two years old technology" is not that cool from the
marketing point of view, but you use a solid technology, most likely
bug-free,
or at least having only known bugs. That is technically important!
If you ask about investment protection ... ?
Forte is very good in this subject too. If you look at it, you will see, it
is
sold as an integration solution (Fusion, Conductor, etc...)
If something is sold as an integration tool, it should be not that difficult
to
integrate :) Forte supports the most important standards, existing now.
If your future system supports it (it should), it will be easy to upgrade to
it,
using the existing product,know-how, etc... Probably without noticeable
downtime.
Scalability issues: Forte scales well from big to very-big to ultra-big.
What is big, you have to decide :)
For example, one million mails per day is not big. :)
For small businesses Forte isn't good. Java is. And a lot of other
environments
are, for example Perl, Python, etc...
My personal opinion is that our future will be heavily influenced by free
software.
They are very good already, and will be only better.
As Forte evolves, one important step would be to port it to free (and thus
independent)
OS's and DB's like Linux or FreeBSD and Postgres or Mysql. Even without
warranty!
I can't see what Sun's goal is with Forte, maybe they wouldn't
like this idea at all, since that may be the market segment what their Java
is thought for.
But that would be the perfect investment production as the company grows,
they don't have
to do anything to the software, just buy machines, and play around in
Environment Console :)
From the personal point of view:Although I don't work with Forte in the moment, I did this till last year,
and I will do
that in the next year too :)
If you would like to protect your "investment" and/or "market value" then
try to learn
platform and language independent things. I think, knowing Forte is 25%
platform dependent
knowledge (so useless anywhere else) and 75% platform independent. Using,
analysing, designing,
programming, and living OO is absolutely platform independent.
Project (and self-) management, presentation techniques, design and
documentation practices, version
and revision management, and so on, they are all platform independent.
Furthermore if you quit the Forte world, and have to program f.e. Java, you
will learn it in weeks.
JFC, Swing, et. al. are nothing, if you know OO. You just need a book or
an online manual, and you
can write programs in the first week. You will have much more problems with
the working environment,
and you will wonder, how the others can use that crap... after the smart
Forte IDE :)
Back to business a bit:
One big advantage of Forte, that came to my mind right now is that you can't
(ok, you can, but it is
difficult) to write bad OO programs (and designs). In Java, it is too
easy... believe me, I saw some examples ... :)
Sorry for the bad english and the long mail...
Best regards,
Akos Gabriel
For the archives, go to: http://lists.xpedior.com/forte-users and use
the login: forte and the password: archive. To unsubscribe, send in a new
email the word: 'Unsubscribe' to: forte-users-requestlists.xpedior.com -
Re: (forte-users) Arrayfields & Tabbing
I believe Ctrl-Tab will take you forward out of the arrayfield and to the next widget. We have some accessability code in our base window class to handle various special keyboard commands, but I think Ctrl-Tab is standard in Forte. (of course I've been wrong before :-) )
Steven Barnes
"Burns, Troy" <Troy.Burnsvacationclub.com> 11/13/00 09:57AM >>>I've looked in the archive, and found the examples of tabbing into an
arrayfield. That is no problem. My question is, how do you tab out
of an arrayfield? Shift-Tab will "back-tab" out of the arrayfield. How
do you "forward-tab"?
TIA,
Troy Burns
MVCI
troy.burnsvacationclub.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.comCtrl+Tab works between tabsheets.
Jagadish
"Steve Barnes" <DHS9126dhs.state.il.us> on 11/13/2000 11:22:22
To: <forte-userslists.xpedior.com>, <Troy.Burnsvacationclub.com>
cc:
Fax to:
Subject: Re: (forte-users) Arrayfields & Tabbing
I believe Ctrl-Tab will take you forward out of the arrayfield and to the next
widget. We have some accessability code in our base window class to handle
various special keyboard commands, but I think Ctrl-Tab is standard in Forte.
(of course I've been wrong before :-) )
Steven Barnes
"Burns, Troy" <Troy.Burnsvacationclub.com> 11/13/00 09:57AM >>>I've looked in the archive, and found the examples of tabbing into an
arrayfield. That is no problem. My question is, how do you tab out
of an arrayfield? Shift-Tab will "back-tab" out of the arrayfield. How
do you "forward-tab"?
TIA,
Troy Burns
MVCI
troy.burnsvacationclub.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
For the archives, go to: http://lists.xpedior.com/forte-users and use
the login: forte and the password: archive. To unsubscribe, send in a new
email the word: 'Unsubscribe' to: forte-users-requestlists.xpedior.com -
RE: (forte-users) FW: central environment hanging
Doug,
We have our repository servers on Windows NT 4.0 (Alpha), however our
environment manager is on the same node as the repository servers, so our
experiences may not fit your case.
We use Windows NT services to start/stop the repository servers and have
defined them to start up as the appropriate Windows NT account so that its
registry is populated properly.
We use the Schedule service via WinAT for our nightly cleanups. We use the
Forte srvcinst.exe utility to shutdown the repository server before running
a batch script to perform the rpclean before starting up the repository
server within the same srvcinst.exe session.
We have never experienced environment console hangs, however this technique
doesn't cope with people leaving repository sessions active overnight as
rpstop -k would.
Sample srvcinst.exe Script
%FORTE_ROOT%\bin\srvcinst.exe
SetName "<Repositoty-Server-Name>"
Stop
Delay 10000
ExecCmd "cmd /c call RPClean_This.bat > RPClean_This.log 2>
RPClean_This_2.log"
Delay 10000
Start
Delay 10000
Exit
Mario Emmi
British Aerospace Australia
-----Original Message-----
From: Wheeler, Douglas CWT-MSP [SMTP:[email protected]]
Sent: Thursday, 23 September 1999 02:40
To: '[email protected]'
Subject: (forte-users) FW: central environment hanging
Our development environment consists of a SUN box as the environment
manager with an NT box acting as the host for all of the repositories.We
have a number of repositories and an NT service set up for each one.Each
night WinAT runs bat files the shutdown each of the rpserver, runrpclean
against each of the repositories, and then starts up each of therpserver.
The problem that we are seeing is the central environment hangs at some
point during this process. The central environment manager process is
still running under UNIX (via checkforte) but you cannot connect via
escript or econsole. In addition there are no log messages indicating
what is causing the environment to hang.
Does anybody have a similar development environment?
Some specific Forte questions:
1. Is it better to bring the repositories down via rpstop or anescript?
2. We are using rpstop -k could this be causing a problem?
3. Should we be bring down the node manager on the NT box also?
Some NT specific questions:
1. We use WinAT with a call to a batch file that calls a batch file the
runs the "rpstop ... -k" and "netsrv "name" \\machine /stop" Thisshould
work, right? Specifically, will the rpserver shut down gracefully?2. For the NT services that are set up for the Forte process should the
"Log On As" property be set to "System Account" or "This Account: forte"?
Thanks,
Doug Wheeler
Voice: (612) 594-2519
BORN Information Services voicemail: (612) 404-4379
[email protected]
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]Hi Douglas,
You experience problems after a nightly refresh of your repositories.
You do not mention this explicitely in your mail, but am I correct in
assuming you also reboot the NT-server? And, am I correct in
assuming the E-script and E-console that won't start, are being
started (or at least, trying to be started) on this same NT-server,
after the reboot?
If that is the case, then there is your problem. You stopped the
repositories correctly, cleaned them and then restarted the computer,
without first stopping the nodemgr correctly. If the same node is
started again, and de nodemgr is started, it is unable to re-attach
to the cental node. First, the central node must understand that
the original node is gone, which it will after a network timeout, which
usually is a TCP/IP timeout of about 1 hour.
Solutions.
1) Wait 1 hour after reboot before attempting any E-script.
2) Before rebooting the machine, use E-script to shutdown the
nodemgr.
3) Use the KEEP_ALIVE settings (see Forte docu), to bring this
timeout back to a few minutes, in stead of 1 hour.
Pascal Rottier
STP - MSS Support & Coordination Group
Philip Morris Europe
e-mail: [email protected]
Phone: +49 (0)89-72472530
+++++++++++++++++++++++++++++++++++
Origin IT-services
Desktop Business Solutions Rotterdam
e-mail: [email protected]
Phone: +31 (0)10-2428100
+++++++++++++++++++++++++++++++++++
/* All generalizations are false! */
-----Original Message-----
From: Wheeler, Douglas CWT-MSP [SMTP:[email protected]]
Sent: Wednesday, September 22, 1999 6:40 PM
To: '[email protected]'
Subject: (forte-users) FW: central environment hanging
Our development environment consists of a SUN box as the environment
manager with an NT box acting as the host for all of the repositories.We
have a number of repositories and an NT service set up for each one.Each
night WinAT runs bat files the shutdown each of the rpserver, runrpclean
against each of the repositories, and then starts up each of therpserver.
The problem that we are seeing is the central environment hangs at some
point during this process. The central environment manager process is
still running under UNIX (via checkforte) but you cannot connect via
escript or econsole. In addition there are no log messages indicating
what is causing the environment to hang.
Does anybody have a similar development environment?
Some specific Forte questions:
1. Is it better to bring the repositories down via rpstop or anescript?
2. We are using rpstop -k could this be causing a problem?
3. Should we be bring down the node manager on the NT box also?
Some NT specific questions:
1. We use WinAT with a call to a batch file that calls a batch file the
runs the "rpstop ... -k" and "netsrv "name" \\machine /stop" Thisshould
work, right? Specifically, will the rpserver shut down gracefully?2. For the NT services that are set up for the Forte process should the
"Log On As" property be set to "System Account" or "This Account: forte"?
Thanks,
Doug Wheeler
Voice: (612) 594-2519
BORN Information Services voicemail: (612) 404-4379
[email protected]
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]
Maybe you are looking for
-
DVD burned from a disk image won't work on different computers???
Under the directions for how to burn a DVD from an disk image, the Apple Help document (http://docs.info.apple.com/article.html?artnum=93006) says this: "Note: When burning a disc from a disk image, the burned disc will have the same format as the di
-
Oracle error "ORA-01843: not a valid month" when trying to run sqlldr
Hi all, I'm trying to load some data into a staging database via a CSV file using sqlldr, and am running into an issue where it doesn't like the date format I'm using. Here is my input data: 2012-01-09 16:28:12 -05:00Here is the entry in the .ctl fil
-
Hi, I create final scroll subtitles in my DVCPRO50 PAL anamorphic project. In previous projects I allways create final subtitles with using Video Generators->Boris->Title Crawl. Now I need insert some logo in to subtitles. I try create it using Motio
-
Binding for "File Content Repository Path" is returning null value
I have created a data control for file based content repository based on an existing file system path. *But when this data contol is invoked the command "#{bindings['getURI_returnURI'].inputValue}" is returning null.*+ Please advice what are possible
-
Yosemite - says "not enough application memory - and closes all open applications
Since the day I installed Yosemite I have had problems. First, some other file was downloaded when I did the Yosemite install which crashed the computer. It had to go in for repair. Once that was remedied, I frequently get an error message "Not enou