Jump to content
Server Maintenance This Week. ×

Passing a Find to another networked User


This topic is 7396 days old. Please don't post here. Open a new topic instead.

Recommended Posts

Hi everyone!

I have a Search db which will be local on every system. It will be attached to Customers (as well as other dbs). When a User searches for a Customer and brings up the Customer Main record (from the Customer db) as the Customer is on the phone, it is determined who the Sales Rep is. At that point, I need to 'pass' this information on to the SalesRep. This will take place in an FM pop-up window (activated via a plugin not yet determined). Although I could use input on what plugin could best accomplish this, my question is mainly as follows:

I want the User with the Customer info displayed, to pass this to the Rep. I want the Rep to be able to 'replicate' this find - and bring up the exact same Customer by clicking a Go To button. I assume I will need to capture the Status(CurrentFileName), Status(CurrentLayout) and CustomerID. Can you make suggestions on how this can best be passed (and scripted)? Since there are many such calls and Sales Reps, this would need to be handled mostly with globals, I believe. If need be, I can hard-code Customer db and Main layout, etc and just pass the CustomerID, but I'd like to keep it more open and 'on the fly' so it applies to several situations.

To extend this thinking further, if the Owner (or any Staff) is viewing ANY layout or group of records, and he wants someone to 'see the same thing' or say, "Hey! Take a look at this situation and fix it," how might this be handled and passed to someone else? I know these questions are a bit vague, but this portion of the design is still only on paper. I'd like to pull together all of your great suggestions before I start building it. smile.gif

LaRetta

Link to comment
Share on other sites

Going immediately to the complicated solution....

Build your own Internal messaging with FM.

Actually, it is VERY easy.

Based on my own system, you'd need one file with a few fields, say ;)

n_constant

t_MessageID

t_UserFrom

t_UserTo

t_Subject

n_AnswerRequested

d_date (auto-entered)

h_hour (auto-entered)

n_priority

t_message

n_CodeLink

t_hyperlink.

the n_CodeLink (a number) I use to determine what script would be triggered when the end user will click the hyperlink.

The g_MessageType (a number) I use to determine if it is a Message, an Alert or an Information (0 = message, 1 = Alert, 2= Information). In your case, you could set it to be an "Information" as a start.

"When a User searches for a Customer and brings up the Customer Main record (from the Customer db) as the Customer is on the phone, it is determined who the Sales Rep is. At that point, I need to 'pass' this information on to the SalesRep. "

As long as the Go To Related Record step, include a script that will create a new record in Messenger.fp5 fields through a constant relationship.

SetField[g_FromUser, CurrentUserName]

SetField[g_ToUser, SalesRep]

SetField[g_CodeLink, 1]

SetField[g_Subject, "No Subject"]

SetField[g_MessageType, 2]

SetField[g_Priority, "Normal"]

SetField[g_AnswerRequested, 0]

SetField[g_Message, "Hit the link"]

SetField[g_HyperLink, Status(CurrentFileName)&"

Link to comment
Share on other sites

So there's no shared db at all? Hmmm. It might be Troi has what you want:

http://www.troi.com/software/activatorplugin.html

I think you're on the right track with passing db / layout and record id info through globals. You can just as easily pass a group of records by setting the id's of the found group separated by carriage returns into a global. You can use a copy all records script for this, or a looping set field script.

Seems like you might need 2 files for each user, one to view data, and one to track incoming "alerts." I don't think a user would like her screen to be hijacked in the middle of a call.

(Wow, with alert and hijack in the same post, we're going to have the FBI tracking us now...)

Link to comment
Share on other sites

Wow Ugo! Way cool! Thank you! Yes, I have planned my own ePop db, but I figure I need a plugin to execute it. I want to have it display a red panel (calculation container) across the top of their layout and (when they click the Message icon) a small window will display the alert. They then can have the option of messaging back, "I'm busy, please take the order" or "Have them hold. I'll be right there." The link idea is great and I can't wait to play with this. smirk.gif

Hi Tom! I figured it would be Troi that I'd need (or ScriptIt?). And I need it to execute over other programs (Word, Excel) as well. I want to replace an existing program called ePop. It works well, but you have to manually type the info you are referring to, ie, CustomerID, yada yada - when, if this info already existed with FM, it could be linked instead. In addition, these notes would be attached to the Customer record (and regular notes history) which would be nice and ... the reason for my question ... it would allow the second Staff to quickly jump to where the first Staff is viewing the information! "Customer A is on the phone and is he pissed about his shipment!" Stuff like that! And UPS/FedEX tracking can be accessed directly also so that, while the SalesRep is 'cooling' the Customer, the original staff can track the shipment and send a message to the Rep with ArrivalDate/Time.

Tom said...So there's no shared db at all?

Well, I'm considering placing some static dbs (or dbs that relate only to each User) on their local system to (hopefully) lighten calls to the Server. Search and Parsing will be two such DBs. All of the data DBs will be networked via FM Server and Users will work in those DBs. Truthfully, I'm still a bit unclear on these structural issues and, although the majority of the DBs are 'finished', their proper location is still unclear (ie, they all exist on only my system, because FM is not networked yet and won't be for another few months.)

I'm attempting to finalize the flow and determine those file placements now, as I realise their placement will affect network performance. I also realise that, once networked (no matter much I plan), I'll probably be in for some shockers and have additional design changes before we go 'live.' But I want to be able to take a 'snapshot' of a current User's view and location and allow another Staff to quickly jump there. That's my goal. All ideas most appreciated. grin.gif

LaRetta

Link to comment
Share on other sites

Hi LaRetta,

This feature is currently daily implemented as a "Private Messaging" and the "Alert" only concern 2 parts of the db (To lock/unlock Customer accounts and give Special Prizes). I didn't implemented the Hyperlink thing, but I'm sure it would work with the multiline.

1. The 2 first lines would tell Line which GTRR to trigger

2. The script then GoTo the related Record and pass the 3rd line of the global through a constant for a GoTo Layout step.

Right now, the user would just hit either the Alert or the Enveloppe icon. If the Message is opened, the icon color changes. In order for this to happen though, the user would need to trigger a "Refresh" as it happens on Web pages.

If no answer is given, then he'd go for the old phone call trick, and tell the end user to open his Message.

I thought of adding one line to all the Main scripts that would just check If IsValid (;):MessageByEndUser), so that the icon gets updated and highlighted for a few seconds.

Ah Btw, this first idea (the very first draft) is available in the Sample section here.

Also, I discovered afterwards that Chopper had made one and I think there's another one at DataBasePros

Link to comment
Share on other sites

This topic is 7396 days old. Please don't post here. Open a new topic instead.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.