aldipalo Posted March 20, 2008 Posted March 20, 2008 I need some conceptual help. My contacts table has clients, sources and candidates. Candidates will have resume's in a separate table as well as saved as a pdf in a separate folder based on the client. When I send the client a resume I'd like to add the fact that the resume was sent and who's resume it was to a list. Right now I have it set up so I can send an email with an attachment to the client contact or their Assistant and my Activity record will note what file was sent and to whom. However, if I need to have a quick see of all resumes sent I have no way, that I can see, of viewing that data. I thought there were several ways of accomplishing this: Have one field 'Resumes_Sent' and append each file within the field. (Is this possible?) Set up a separate table 'Resumes_Sent' and create a new record every time a resumes is sent. Create a Filtered List Layout of "Resumes_sent' using the current field. I would also like to be able to send the resume to all interested parties with one click of the button. This way the Hiring Manager as well as their boss as well as the HR contact and the Hiring Manager's Assistant all get it at the same time. Right now I need to do it four times. BTW, I'm using SMTPit to send the emails. Any suggestions or other ideas? Which would be the easiest and/or most efficient way of dealing with this? Thanks for your help and ideas. Al
mr_vodka Posted March 20, 2008 Posted March 20, 2008 Hi Al, What is the purpose of your existing Activity table? Seems to me that the transaction would take place there. It would make sense to have a record for each transaction that took place. The clientID, the CandidateID, date and time sent, etc.
aldipalo Posted March 20, 2008 Author Posted March 20, 2008 Hi John: The Acivity Table tracks things like Phone Calls to be made, Interviews, Debriefs, etc. Then there is an Email Activity Table that tracks all emails sent. This is where I have the 'Documents Sent' and 'Documents Sent to' fields. These fields are set whenever I click the 'Send Email' button. I guess I could relate the Activity and Email Activity tables and show a portal with the 'Documents Sent' field in it. The problem then would be how do I have it show up in all the contact records. Candidate, Hiring Manager, Hiring managers manager, Hiring Managers Assistant and HR Contact? I tend to create my own complexities. But, after doing this business for 40+ years and hoping to one day package this application, I'm trying to think of every contingency. What's your thoughts? Al
Sunshein Posted March 20, 2008 Posted March 20, 2008 If I understand your challenge, you could add a related table for resumes sent. Whenever your script is activated to email one or more emails, it could add a record to this table. Then, add a portal for that table onto your main page to display by date, emails sent, to whom, and notes for individual emails if applicable. By doing this you could come back to individual records and send additional emails and keep track of each one. You should be able to do all of this using Send Mail rather than a plugin. You still may need to set it up four times for four emails, but it would be just a matter of selecting an email address from a pull-down menu each time, and click your script button to do the rest. Contact me if you have a problem.
aldipalo Posted March 20, 2008 Author Posted March 20, 2008 Thanks for the reply. I'm so invested in SMTPit that it would take me days to rewrite my 'Send Email' script. I've been using SMTPit for 2 years now and I'm very comfortable with it. When I first started using FM 8.0 Adv. the Send Email function was not as robust as the SMTPit plugin. Frankly, I haven't kept up with the advances FM has made to that function and I'm not sure it could handle all of the different things I currently use SMTPit for. As far as the separate 'Resumes Sent' table I have thought of that as one of my solutions. I already have a Tab for 'Emails Sent' on the Contact Record, so I guess I could add the portal. My main problem is I've just about run out of real estate on my layout. See attached Jpeg. I was also hoping someone had a solution for sending the email for all the concerned parties in one click and then have their contact record reflect that I sent the resume.
Sunshein Posted March 20, 2008 Posted March 20, 2008 Thanks for posting the screen shot of your layout. I don't know what's at the tab called Sent, but it could easily hold the portal to which I was referring. The portal could update using a Find routine, or my preference would be using a similars relationship which works as a calculation. By the way, your layout look great.
mr_vodka Posted March 20, 2008 Posted March 20, 2008 For each "job" I am going to assume that you have a record correct? So I am not following why you cant just have a related table of correspondence sent for a particular job. The user can choose between a candidate, hiring manager, whatever title they are for a particular job. Are these different types of people in the same table? You can have your mail script add an almost "log" effect after the SMTPit processing.
aldipalo Posted March 20, 2008 Author Posted March 20, 2008 John: Yes, I have a Job (Assignments) table. It includes the hiring manager as well as the HR contact. But, I must admit, the relationship is a little snafued. I get the contact names, but not their Title or Tele #. Still can't figure out why. All Contacts are in the Contacts Table. They are noted as 'Contact Type' (General type) e.g. Administrative, R&D, Marketing, etc. Then there is the sub-Type,they are flagged as Client, Source, Candidate, etc. When I flag a record as a candidate I create a separate related record with their personal data. ************************* SunShein: Thanks for the compliment on the layout. The sent tab is a portal of all emails sent to that contact. I do a lot of mass mail when I get a new assignment, so I track what notices were sent to what contacts. I guess I could add another tab or a tab within a tab, but, as I said I'm getting tight on real Estate. I think I'll try the 'Resumes_Sent' table and see how it works. *********************** To All: I'm still looking for an idea how I can send to multiple contacts with one click. TIA AL
Sunshein Posted March 20, 2008 Posted March 20, 2008 With the multiple contacts (emails) idea, I would use 2 buttons each having its own script. The one button could send to the multiple addresses you often use, and the other could send one at a time using a pull-down menu of email addresses. Both should enter new records in a related table for the portal I suggested above.
mr_vodka Posted March 20, 2008 Posted March 20, 2008 Cant you collect the user email addresses related to that assignment that you want to email at once in global field and then pass that to SMTPit?
aldipalo Posted March 20, 2008 Author Posted March 20, 2008 (edited) John: That's a great idea. How would you go about it. Set a field g_EmailAddress and then....? Let's say I flag each person that should get the resume from the assignments layout which is related to contacts. I'm not sure of the text calculation to gather the addresses in to one field. I THINK I can get the rest working. ***************************** Sunshein: Good thought, but first I have to collect those addresses and that's my problem. ****************************** Al Edited March 20, 2008 by Guest
mr_vodka Posted March 20, 2008 Posted March 20, 2008 Well you could have it be delinated by a pilcrow. Then you can use a loop with GetValue (n) to grab each email address and send it to SMTPit. Or if you want it to go as ONE email, you can use a Subsitite ( ) to change it into commas for either the To or BCC input of SMTPit. You could also create the log table as I was talking about earlier and have the record created for each sent tranaction. This would be good for trouble shooting in case 4 out of the 5 addresses are successful but one isnt.
aldipalo Posted March 21, 2008 Author Posted March 21, 2008 (edited) Hi John: Here's the script I came up with: It collects the email addresses just fine. I named the portal as an object so the script goes to the correct portal since there are several on the layout. My problem is that my relationship must be off since the portal is showing ALL contacts for the client rather than similar contacts. See below: I have the relationship < Sales Rep Email>> set to: fk_ClientID = fk_ClientID SalesRep Name <> SalesRep Name I thought that would give me the proper relationship. Can anyone tell me what I did wrong? I've used this type of relationship successfully in the past so I am at a loss. TIA Al ******************************* I finally fixed it. The layout was set to the wrong TO. Edited March 21, 2008 by Guest
mr_vodka Posted March 21, 2008 Posted March 21, 2008 See if this file helps. Its a modification of an old one that I posted a while ago. I think it is simpler to do it this way since you are passing the email addresses all at once. As for why your realted contacts are not showing up properly, I am not too sure. Are the data types the same on they key fields? Why are you not using the contactIDs? email_SMTPit.zip
aldipalo Posted March 24, 2008 Author Posted March 24, 2008 Very nice John. A few problems/questions. 1. Where do you get the check box from. I do not use them. 2. I keep getting the same ID in gSelectedContacts. It keeps giving me the first record in the portal clicked. 3. If gSelectedContacts is a global field doesn't that mean it will be the same on all records? If that's the case I guess we would chose who we want to send to when we are ready to send an email. The problem is we may have 200 - 300 contacts at any given client or company. There would only be 2 - max 8 contacts that are attached to any given assignment. It would be a little clumsy to have to go down a portal of say 150 - 300 names to chose the recipients. I thought I might be able to have another flag field that could narrow the list. I tried this kind of relational filter before and could not get it to work. Every record has a JobID field. Problem is I could be working on multiple assignments for the same group. Any thoughts on how I might efficiently filter the list? Thanks for all your help. Al
mr_vodka Posted March 24, 2008 Posted March 24, 2008 1. Where do you get the check box from. I do not use them. This is a wingding that displays as a checkmark if there is a value. Look under number format. 2. I keep getting the same ID in gSelectedContacts. It keeps giving me the first record in the portal clicked. In my example or in your file after you tried to incorporate it into your solution? If its in my file, then I can not replicate your issue. If it is in your solution, double check the script. (Make sure your script does not commit the record first or it will only give you the first related ID). If you want, you can pass the selected ContactID as a ScriptParameter. 3. If gSelectedContacts is a global field doesn't that mean it will be the same on all records? If that's the case I guess we would chose who we want to send to when we are ready to send an email. The problem is we may have 200 - 300 contacts at any given client or company. There would only be 2 - max 8 contacts that are attached to any given assignment. It would be a little clumsy to have to go down a portal of say 150 - 300 names to chose the recipients. I thought I might be able to have another flag field that could narrow the list. I tried this kind of relational filter before and could not get it to work. Every record has a JobID field. Problem is I could be working on multiple assignments for the same group. Any thoughts on how I might efficiently filter the list? It doesnt matter where you select the contacts to email. If you only want to display the contacts that have been assigned to that particular project, then you can add the members from there into your global. You can also add a step to capture the jobID into a global variable and if the current record's jobID it is not the same as the captured one, then clear the gSelectedContacts field. In case I have misunderstood that you have this portal of assigned team members working then that is different issue. How are you adding the team members to a project then?
aldipalo Posted March 24, 2008 Author Posted March 24, 2008 Thanks John: I'll play around with it and let you know if I have any further problems. Al
aldipalo Posted March 24, 2008 Author Posted March 24, 2008 Hi John: Well I THINK I have it working. What I did was set up a SelectedContacts and a gSelectedContacts field. I put the SelectedContactcs on the Assignments layout. Now when I enter an assignment I can choose who should get emails and/or resumes. Then in my send script I can go and get the SelectedContacts data set it in to gSelectedContacts where it can be inserted into the SMTPitTO: variable. I noticed that you have the emailaddress dialog box alphabetized. Is that a function of FM or have you set it that way? What I need to do now is set it up so when I am in a contact record and choose to send to all recipients the TO: field is filled with the current email address and the CC: field is filled with the others. I was thinking this could be where I use the GetValue function. But, if the list is always alphabetized this will not work. Any ideas/suggestions? Thanks Al
mr_vodka Posted March 24, 2008 Posted March 24, 2008 No its not alphabetized for a purpose. It returns in the order of creation of the related contact records. If you want to do a seperate list for TO, CC, BCC, perhaps you should allow the users to select the people that they want and then prompt them which field they want to set those people as. Then you can pass it to the different SMTPit fields.
aldipalo Posted March 24, 2008 Author Posted March 24, 2008 You mean use a dialog box with the choices TO:; CC; BCC. Then have 3 fields one for each. When the user clicks the dialog button I use the Get(LastMessageChoice) and set the specific field? That could work, but, then I need to make that choice just prior to sending the email, not in advance. Am I on the right track?
mr_vodka Posted March 24, 2008 Posted March 24, 2008 Yes, or you can just set globals with each type.
Søren Dyhr Posted March 25, 2008 Posted March 25, 2008 Your set flag script could be reduced down to two: A Set Field[ using this: http://www.briandunning.com/cf/39 ...and then the commit record step. --sd
mr_vodka Posted March 25, 2008 Posted March 25, 2008 Yes, but I dont see the point of creating a custom function for just this purpose.
Søren Dyhr Posted March 25, 2008 Posted March 25, 2008 Indeed, but when it finds it's use in several other instances, neither would we strain our solution for unused script-steps, not that it's possible ... it's like when geeks are compiling the core of an operating system usually linux, when the specific purpose of the system is established - to get rid of dead meat. I wouldn't argue that a certain set of CF'ed method always should be part of every solution we initiate, but some makes more sense to keep as inventory in our templates. Are clean slates productive enough, why do we not nail everything important in assembler? Building meta objects, doesn't improve the solution, but could often take out some time of the script debugging, the more punch put into autoenters and CF'es the simpler the scripting gets and the easier is it to eyeball a fault. Do you say ....for instance write RecordID in each of your tables, or have you established methods with crude models you can copy and paste or import from, when approaching the battlefield? It takes no exam from Westpoint to know the more you're prepared or drilled the better is result likely to be. Some development houses I know can't even stand the temptation to include functionality with plugins ... which they then sprincle with light hand though out their solutions. --sd
aldipalo Posted March 25, 2008 Author Posted March 25, 2008 I must be dense. I set up everything the way you laid it out. My script is a dup of yours. I copied the 'Flag' field. Set the format correctly in the numbers area. I click the button, the selectedcontacts get entered into the selectedcontacts field. Everything works EXCEPT the check box. What I don't understand, looking at the script and the field, is how the field goes from checked to unchecked to checked. What causes this to happen. Perhaps by understanding the process I'll understand the reason it is not working for me. I'm sure it is some dumb little something I'm missing. But, after many hours, I must understand it. I can not stand letting some program frustrate me. Thanks, Al
mr_vodka Posted March 25, 2008 Posted March 25, 2008 Here is is basics of it. The flag field acts as a boolean. So for any IDs that have been added to the global field it results as true. If you right click on a number field, there is an option for number format. Under there, there is an option to "Format as Boolean". This will take anything that is true which are non-zeros and display it as something you assign ( which in this case is the "þ" character; which is Wingdings font returns as a checkmark" Does this help?
aldipalo Posted March 26, 2008 Author Posted March 26, 2008 Ok, so I finally gave up on trying to get the flag field working properly and changed it to a Yes/No checkbox. Made the appropriate adjustments to the setflag script and it is working fine. Only problem is if I want to clear the 'SelectedContacts' field the Flag is still set to yes on the contacts that were selected. Also if I am working 2+ assignments for the same group the flag is already set to 'Yes' from the first assignment. See below. How would I select each contact in the list and reset the flag to 'No'? Any ideas? Al
Søren Dyhr Posted March 26, 2008 Posted March 26, 2008 Ok, so I finally gave up on trying to get the flag field working properly and changed it to a Yes/No checkbox. Yikes! ...and your field was formatted as a calc'field returning results as number?? Did you ever get to this dialog? Honestly this can't be so difficult! It's obvious you do not get the point in having all selections in stored in a global field only. It has to be a global, otherwise will more users of a system interact/tamper with each others selections - Your idea with having a set of radio buttons is plain and simple wrong ...although you by a GTRR(so) followed by a constrain found set to get the ones with Yes selected, then Copy All Records in a layout where each item-line records ID's are gathered and put into a global field. So yes it can be done without much elegance, but the multiuser aspect is frightning!!!!! --sd
aldipalo Posted March 26, 2008 Author Posted March 26, 2008 (edited) Yes, but, I had it set to a webding (a), as John had it. I had it set up as a global (Please see posts above) and followed John's file and his suggestions. I just could not get the flag field to check and uncheck within the graphic. When I did not get a response I continued forward the best I could do. The multi user problem was considered and I felt that was another question. The real problem is that even as a global when you go from one job to the next the flag will either be checked or unchecked. So, there has to be a way to uncheck the flag, especially when you want to clear the selectedcontacts field. If I have over 100 contacts at a particular company it is rather clumsy to go up and down the list to manually uncheck the Flag field. Unles I'm missing something? Edited March 26, 2008 by Guest
Søren Dyhr Posted March 26, 2008 Posted March 26, 2008 Yes, but, I had it set to a webding (a), as John had it. No his is wingdings and the 3rd last read from the end of the Icelandic alphabet - not an "a"! http://www.omniglot.com/writing/icelandic.htm --sd
aldipalo Posted March 26, 2008 Author Posted March 26, 2008 When you have the font for the field set to WebDings the check mark is a lowercase 'a' in the number format. Not a Text 'a'.
Recommended Posts
This topic is 6078 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 accountSign in
Already have an account? Sign in here.
Sign In Now