May 20, 201510 yr Newbies Hey guys. First time post here. I just purchased Filemaker Pro 14 for our company and am in the process of setting up a database for our call center to use in tracking customer contact, having notes on each contact and so on. I have the system basically setup and functional. But I am trying to expand the functionality of the database a bit. Below is what I am needing to do. I have a Database with Contact information in it. It has a related table for a number of diferent types of content. one being Notes for each contact. I currently am using the find feature for the girls in the call center to find the people they need to contact. What I would like however is to have a list inside a portal or equivalent of all the items that they return from their find. For example: 2000 Contacts They search for company name: Auto Sales That returns a list of records 100 of 2000 Records. the first Record is for: Spartanburg Auto Sales What I want to have along with all the standard contact information for that record is a portal that will display under the notes column showing all the other records with specific fields (Name, Company, Phone, Date Last contacted, etc.) that they can scroll through. Almost like a queue of what their upcoming calls will be in a way. Perhaps even highlighting the record they are currently on. But thats not a deal breaker. Any help for this noob would be great. Thanks in advance! Thanks,Nick Sanders
May 20, 201510 yr Just answering the question from the title: • create a (global) text field (g)FoundIDs from your layout context (TO) – let's assume this is Contact• create a relationship between Contact and a new Contact TO (table occurrence) where Contact::(g)FoundIDs = Contact_foundSet::primaryKey• add a summary field “List of: primaryKey” to the Contact table• place a portal (and the desired related fields) pointing at Contact_foundSet on the layoutWrite a script to:• perform a Find in Contact (could be performed in a new window)• capture the content of the summary field in a $var• return to your Layout TO (or close the new window)• set (g)FoundIDs to the $var If (as assumed above) you do this from a layout of the Contact table itself, then use this Conditional Formatting predicate Contact::primaryKey = Contact_foundSet::primaryKey to format (one or more fields in) the portal row that represents the active record.
May 20, 201510 yr Author Newbies eos, Thanks for the reply. Please pardon my ignorance. Still learning filemaker here. I have completed up through the portal and have a list of "all" the contacts in my database but I am having trouble understanding how to make the script that I am guessing will filter those results for me. How do I activate that script? Do I have to place a button on the layout somewhere or can I just have it always run on the refreshing of the database? I have created a script, trying to follow your instructions. But Like I say, still at a loss on how to execute it to eliminate the filtered records. Not sure I build to script correctly. It won't let me copy and past the script in this message so I am going to attach a screen shot of it. Nick Sanders
May 20, 201510 yr Please pardon my ignorance. Still learning filemaker here. […] Not sure I build to script correctly. I think you're doing fine. Note that among developers the pattern Enter Find Mode [ no pause ]Set Field [ YourTable::fieldToBeSearched ; criterion ]# { more criteria }Set Error Capture [ on ]Perform Find [] is preferred to Perform Find [ restore ], due to better readability and the not exactly intuitive interface of the restore dialog. But using that option is perfectly valid. Also note that the Set Field[] in your script will (probably) only work if gFoundIDs really is a global field, since otherwise it would be out of context. (Just prefixing a field with "g" will not set it automagically to global storage, contrary to some people's belief … ) How do I activate that script? Do I have to place a button on the layout somewhere or can I just have it always run on the refreshing of the database? There are lots of ways to launch/trigger a script. Which of them is optimal in a given situation/workflow is for you to decide. Maybe this link will help you. http://www.filemaker.com/help/14/fmp/en/html/create_script.14.1.html#1034729 It will help to describe your workflow(s) in real-world terms, then try to translate that into database operations.
May 21, 201510 yr Author Newbies EOS, Thanks again for the reply. I spent the day working on this project and trying my best not to abuse your help. I have succeeded at getting what I needed done. I think I did it the way you suggested however there some bits that I think I did differently. I just wasn't fully understanding. I am sure some of the ways that I accomplished this are probably a bit clunky but for now they seem to work. I did it through a use of various global fields and variables and then rite to another field in the contact sheet then filter out those fields in the portal view of my contacts TO. That was the only way I could find to resolve only showing the find results from contact in contact TO. I hope that makes since. It seems a bit clunky but I am sure I can refine the process in a future version of the database. I imagine I am slowing things down on processing in the database since I am doing so much writing and reading from it rather than sorting. Anyways. I still have much to learn I know. So thank you for all your help. If I get the chance I will post a full synopsis of what I did to for anyone else looking to do it in the future. or for other to critique it and help me make it work better. Nick Sanders
Create an account or sign in to comment