Greetings,

The Prompt condition in the Autopause toolbar basically says: is the
specified text behind (to the left) the current cursor position.

This is really nice because it is purely non-positional - the text is
the text, so Prompt can be used to detect being in a field based on its
label.

 

Now what it really does is this - for the examples below the cursor on
the screen is represented  by an X (trying to avoid sending pictures
here so bear with me)

 

Let's say the screen has a Row with only this field:

Patient Name:   X

 

Therefore, could detect that the cursor is "in this field" using prompt
conditions of:

Patient

Patient Name

:

e:

P

Etc.

Because in all of those cases, the letters are indeed on the same row as
the cursor, and are at least a single column less than the current
cursor position.

 

But what if my screen had this:

Patient Address:                                     Guarantor Address:
X                   

 

In a Rules script, you cannot have a Rule that JUST uses Prompts for
this situation because Prompt "Patient Address:" is also true in the
situation above!

 

However, I still can use a Prompt with Rules and take advantage of its
non positional nature in this situation - well non positional from a
practical standpoint anyway, by adding to the Rule a cursor Range
condition.

 

After all the cursor when it is in the Guarantor field isn't anywhere
near the Patient Address field, and the cursor will still be on the same
row as that field - even if the row is different, or the text shows up
in a slightly different place left to right

 

So in the above, if I wanted non positional Rules for the above fields,
I would use these two conditions for the Patient Address Field

Patient Address

@*, 16#25

 

This says look for the prompt - but also look for the cursor on any Row
(handles if the field moved) and within a range of columns starting from
where I believe the field should start. Note I don't need to be terribly
accurate with the range of columns or the starting point- the Range just
needs to be small enough to make sure it doesn't intrude with the other
field - so in the above I probably could have used a range of:

@*,1#40 

Basically the field is on the left hand side of the screen

And for the other field

@*,41#40 

It's shows up on the right hand side of the screen.

 

The only thing that would break this is if the field were moved from one
side of the screen all the way to the other and vice versa.

 

And sure I guess that's possible but in reality, if something like that
happened, it's a pretty darn good chance that something else is
different with the application that you'd have to script for anyway! 

 

Regards,

Thom

 

Thom C. Blackwell

Product Manager

Boston Software Systems

(866) 653-5105 ex 807

www.bossoft.com <http://www.bossoft.com/> 

 

Sign up for my weekly webinar!
<http://www.bostonworkstation.com/customer_center/special_events.aspx> 

 

LEGAL NOTICE Unless expressly stated otherwise, this message is
confidential and may be privileged. It is intended for the addressee(s)
only. Access to this E-mail by anyone else is unauthorized. If you are
not an addressee, any disclosure or copying of the contents of this
E-mail or any action taken (or not taken) in reliance on it is
unauthorized and may be unlawful. If you are not an addressee, please
inform the sender immediately, then delete this message and empty from
your trash.

 

 



---
To post a message to this list, send mail to: [email protected]

You are currently subscribed as: [email protected]

Unsubscribe in the customer center on our website: 
http://www.bostonworkstation.com/customer_center/virtual_user_group_talk.aspx

Reply via email to