[Openroad-users] App Server processing

Bodo.Bergmann at t-online.de Bodo.Bergmann at t-online.de
Fri Nov 24 10:27:58 EST 2006


Martin,

if I understand your problem  correctly, then what you want to have is:
1. Trigger a client-popup from within the processing of the OR image
running on the server.
2. Return value(s) after user input from the client to the server and
synchronously continue processing on the server according to the values
returned.

I would have used the same approach Kim mentioned, but there is another
solution for your problem, but it's a little tricky and it depends on
what connections the client can have:
- DCOM
- Ingres/Net
As you are using the AppServer I assume all SQL has been moved to the
server, so Ingres/Net is probably not installed on the client, but DCOM
is
as you are using the ORServer. 

To accomplish your desired behaviour, you could install a DCOM server
application (could be written in VB, C++, etc.) on the client.
This application will provide the popup dialogs for the user.
The ORServer application has registered the DCOM executable as an
external class library. The OR server app creates an object of the
client DCOM application class - this will start the DCOM executable on
the client. Whenever the OR server app requires user interaction, it
invokes an according method of the client DCOM object, which will open
the dialog on the client, requesting information from the user and
returning it back as return value of the method to the OR server.
This should only be done with RP_PRIVATE servers - otherwise one user
could block lots of others.

If you have Ingres/Net available on the clients an easier solution is
possible by using the Ingres database. The server app could raise a
DBEvent. On the client an application has registered for the DBEvent,
triggers the popup and writes the result into a table. The  server app
polls the table for the result (server app can't process events) and
continues execution, when the result has been inserted.
The receiving application on the client could also be another OpenROAD
application (not the same one that triggered the AppServer as it is
waiting for the return of the Call4GL).

Hope this helps,
Bodo.


-----Original Message-----
Date: Thu, 23 Nov 2006 00:37:28 +0100
Subject: Re: [Openroad-users] App Server processing
From: "Martin Pomej" 
To: "'Kim Ginnerup'" , "OpenROAD Users" 

      Hi Kim,   Thanks  for your reply. I'm happy that what I thought
was correct, is correct, but I'm  unhappy that I am correct 8-)   Main
issue is that the popup's appear in a number of locations, so
breaking it down  to two or more calls is going to be painful.  
Regards, 
Martin.    PS  Does  anybody have access to bulk supplies of 
aspirin?

-------------------------
FROM: Kim Ginnerup [mailto:kgi at bording.dk]  
SENT: Thursday, 23 November 2006 02:43
TO:  martin.pomej at myworkplace.com.au; International OpenROAD Users
SUBJECT:  SV: [Openroad-users] App Server processing

Hi  Martin, 

 

There is only one way  you can accomplish that. 

Split the server call  into two calls. 

You are already using a  stateful server, so keeping the state
between the two calls shouldn’t that big a  deal. 

 

On thing you will need  to handle is the situation that the user
bails out between the first and the  second call. 

But that is something  you will need to handle anyway with a
stateful  server. 

Hopefully you popup is  not in the middle of a transaction.  ;-) 

  

Kim   
-------------------------

FRA:  openroad-users-bounces at peerlessit.com 
[mailto:openroad-users-bounces at peerlessit.com] På VEGNE AF Martin
Pomej
SENDT: 22. november 2006 16:22
TIL: OpenROAD Users
EMNE: [Openroad-users] App Server  processing 

  

Hello OpenROAD  legends,  

  

We have a tough situation involving  App Server and some heavy
processing and I wanted to ask if anyone had  encountered anything
similar and how they handled  it.  

  

Scenario  

- existing app converted to  eClient / App Server  

- heavy processing moved to App  Server due to the massive amount of
data  involved  

- depending on variables, certain  processing will occur and then
the user will be prompted for a response (this is  how the fat client
currently works)  

  

Problem  

- the prompting involves a frame  popping up and requesting
information  

- the information gathered in the  prompting cant be requested prior
to calling App  Server  

  

Ideal  Solution  

- make a call to App Server and when  a certain point in the App
Server processing is reached, halt what's happening  and return
control back to eClient  

- prompt the user for the  required information  

- pass information and control  back to App Server and continue on
with processing from the point where App  Server was halted  

  

My question is can App Server be  dealt with in this way? If so how?


(With my limited App Server  experience I cant see this working, but
I want to ask to be  100%)  

  

If anyone has dealt with a  similar scenario whereby processing on
App Server was halted, control  returned to eClient and then control
again returned to App Server,  would you mind sharing the way you
went about  it.  

I've almost lost the 2 strands of  hair I have left just thinking
about handling this, and surely my hair is worth  saving 8-P.  

  

Regards,  
_MARTIN  POMEJ_ 
MyWorkplace Solutions Pty  Ltd 
Ph:     1300 733  731 
Mob:    0414 230  845 
Em:      martin.pomej at myworkplace.com.au 
_Making Service  our Priority_ 
www.myworkplace.com.au [1]    



Links:
------
[1] http://www.myworkplace.com.au/





More information about the Openroad-users mailing list